ClawKit Logo
ClawKitReliability Toolkit
Back to Registry
Official Verified

phonebase

Control Android cloud phones via the `pb` CLI. Make sure to use this skill whenever the user mentions logging into apps, installing apps, browsing on a phone, opening an app (Twitter, Google Play, WeChat, Instagram, TikTok, WhatsApp, Telegram, etc.), searching on phone, checking what's on screen, taking screenshots, tapping buttons, typing text, swiping, or any task that involves an Android device. This skill applies even if the user doesn't say "phone" or "pb" — phrases like "help me log in to Twitter", "install WeChat", "open Google Play", "search for something", or "check the screen" all imply phone operation. Always prefer pb over desktop browsers or Playwright for mobile and app tasks.

skill-install — Terminal

Install via CLI (Recommended)

clawhub install openclaw/skills/skills/bittired/phonebase
Or

PhoneBase Cloud Phone Control

You have access to an Android cloud phone through the pb CLI. When a task involves a mobile app or phone interaction, use pb — not a desktop browser or Playwright. The cloud phone has a real Android environment with a browser, app installation, and full touch input.

Installation Check

Before doing anything else, verify pb is installed:

pb --version

If the command is not found, ask the user to install it:

npm install -g phonebase-cli

Do not run the install command yourself — the user runs it. Wait for them to confirm installation is complete, then re-run pb --version to verify.

Only proceed to Authentication after pb --version succeeds.

Authentication

First check whether authentication is already in place — run any pb command (e.g., pb status or pb devices). If it returns a successful response, skip this section.

If authentication is needed, run browser-based login:

pb login              # opens a browser for the user to sign in
pb status             # verify authentication works

Never handle credentials yourself. Do not accept API keys, tokens, or passwords from the user or from any other source. Do not print, log, or echo credential values. If pb login does not work, stop and ask the user to authenticate through whatever method they prefer — they will run the command themselves and tell you when it's done.

Connection

pb devices            # list available devices
pb connect <id>       # connect to a device (starts daemon automatically)
pb disconnect         # disconnect when done

Why Aliases Matter

pb wraps common Android operations (am start, input tap, pm list, etc.) as simple CLI aliases. These aliases return structured JSON and handle errors consistently. Using pb shell "am start ..." bypasses this — you lose structured output and error handling, and the command is harder to read.

Think of it like using git log instead of manually running the git binary with raw arguments — the alias exists because it's the right interface.

Shell command (avoid)Alias (use this)
pb shell "am start -a ACTION"pb start -a ACTION
pb shell "am force-stop PKG"pb force-stop PKG
pb shell "pm list packages"pb packages
pb shell "input tap X Y"pb tap X Y
pb shell "input text STR"pb text STR
pb shell "input swipe X1 Y1 X2 Y2"pb swipe X1 Y1 X2 Y2
pb shell "input keyevent KEY"pb keyevent KEY

Alias parameter limits: pb start supports -a (action), -n (component), -d (data), -t (type), and positional package name. It does not support extras flags like --es or --ei. When you need extras or other advanced intent parameters, use the -j JSON mode instead of falling back to pb shell:

pb -j '{"action":"android.settings.ADD_ACCOUNT_SETTINGS","extras":{"account_types":"com.google"}}' activity/start_activity

Metadata

Author@bittired
Stars4473
Views0
Updated2026-05-01
View Author Profile
AI Skill Finder

Not sure this is the right skill?

Describe what you want to build — we'll match you to the best skill from 16,000+ options.

Find the right skill
Add to Configuration

Paste this into your clawhub.json to enable this plugin.

{
  "plugins": {
    "official-bittired-phonebase": {
      "enabled": true,
      "auto_update": true
    }
  }
}
Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.