Agent skill

Phone Use

by pockebot in pockebot/openpocket

Use OpenPocket MCP tools to inspect or control an Android emulator, physical Android phone, Android TV, or ADB-backed app.

MITAuto-check passedMobile

Install Phone Use

skills CLI
$ npx skills add pockebot/openpocket --skill phone-use -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install pockebot/openpocket phone-use --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/pockebot/openpocket.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/openpocket-phone/shared/skills/phone-use .claude/skills/phone-use && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
phone-use
GitHub stars
847
Token cost
~1.1k tokens
SKILL.md length
570 words
Files
1
Skills in repo
23
Repo updated
First seen
Licence
MIT

At a glance

Use OpenPocket MCP tools to inspect or control an Android emulator, physical Android phone, Android TV, or ADB-backed app.

  • Works in 5 steps: Confirm the target belongs to the user… → Call target_status before taking any… → If the configured target is an emulator… → …
  • Android automation
  • SKILL.md covers Start Every Task, Interaction Loop, Tool Guide and Sensitive Boundaries, plus 1 more section
  • Calls node

What it does

Phone Use is an agent skill from pockebot/openpocket. Use OpenPocket MCP tools to inspect or control an Android emulator, physical Android phone, Android TV, or ADB-backed app. Trigger for phone use, Android automation, mobile UI testing, emulator control, physical-device control, app navigation, screenshots, tapping, typing, and requests that should not use desktop computer-use automation.

Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile, covering Mobile testing and debugging, Desktop control and Mobile UI design. It works with Android. The repository describes itself as: 🐹 An Intelligent Phone That Never Sleeps. The licence is MIT.

When your agent uses it

  • Android automation
  • Mobile UI testing
  • Emulator control
  • Physical-device control

Example prompts

  • “/phone-use”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Confirm the target belongs to the user or is authorized for testing.
  2. Call target_status before taking any action.
  3. If the configured target is an emulator and no booted emulator is online, call start_emulator when starting it will not disrupt other…
  4. If multiple devices are online, ask which serial to use and pass that deviceId to every subsequent tool.
  5. Never bypass Android trust prompts, lock screens, account prompts, or OS security controls.

What it can do on your machine

Read from SKILL.md and the folder at commit d4dae3d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Phone Use loads about 1.1k tokens when it runs. Until then it costs about 87 tokens; SKILL.md has 570 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~87
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from pockebot/openpocket at commit d4dae3d, republished under its MIT licence (© pockebot). 570 words, ~1,102 tokens.

Download SKILL.mdSave it as .claude/skills/phone-use/SKILL.md (or your agent's skills folder).
name
phone-use
description
Use OpenPocket MCP tools to inspect or control an Android emulator, physical Android phone, Android TV, or ADB-backed app. Trigger for phone use, Android automation, mobile UI testing, emulator control, physical-device control, app navigation, screenshots, tapping, typing, and requests that should not use desktop computer-use automation.

Phone Use With OpenPocket

Use the plugin-provided openpocket-phone MCP server for Android work. Do not use desktop computer-use automation to operate an emulator window unless the MCP server is unavailable and the user explicitly accepts that fallback.

OpenPocket is Android-first. This plugin does not control iOS Simulator or iPhone targets.

Start Every Task

  1. Confirm the target belongs to the user or is authorized for testing.
  2. Call target_status before taking any action.
  3. If the configured target is an emulator and no booted emulator is online, call start_emulator when starting it will not disrupt other local work.
  4. If multiple devices are online, ask which serial to use and pass that deviceId to every subsequent tool.
  5. Never bypass Android trust prompts, lock screens, account prompts, or OS security controls.

Interaction Loop

  1. Read state with ui_snapshot, visible_text, or current_app.
  2. Open apps with open_app when only the label is known, or launch_app when the package name is exact.
  3. Locate controls with find_text and prefer tap_text or tap_element over raw coordinates.
  4. After navigation, launch, search, or scrolling, use wait_for_text instead of repeatedly polling screenshots.
  5. Use screenshot when visual layout, imagery, canvas content, or uncertain text extraction matters.
  6. Read the metadata returned by screenshot or ui_snapshot, including currentApp, deviceId, uiElements, visibleTextLines, secureSurfaceDetected, capture metrics, and screen dimensions.
  7. Use type_text only after the intended input field is focused.
  8. Use key_event for BACK, HOME, ENTER, SEARCH, and similar Android keys.
  9. Use swipe, drag, and long_press_drag for gestures.
  10. Use adb_shell only for narrow Android inspection or deterministic setup. Avoid broad or destructive commands.
  11. Re-read the screen after every state-changing action and stop when the user goal is complete or the state becomes ambiguous.

Tool Guide

  • target_status: configured target type, online devices, booted devices, and resolved device.
  • ui_snapshot: default text-only UI state with element metadata.
  • visible_text: lightweight visible and accessibility text extraction.
  • find_text: locate elements by text, content description, resource ID, or class.
  • tap_text: tap a labeled control without coordinates.
  • wait_for_text: wait for a known screen state.
  • screenshot: visual evidence plus current app, text, elements, and capture metadata.
  • open_app: discover and open an app by label or package.
  • list_apps: list launchable app labels and package names.
  • adb_shell: narrow Android inspection only.
Show full SKILL.md (194 more words)Show less

Sensitive Boundaries

Pause for explicit user confirmation before:

  • submitting a purchase or payment
  • sending a message, post, like, follow, bid, or other irreversible social action
  • changing account, security, privacy, or payment settings
  • entering a password, OTP, 2FA code, recovery code, card detail, government ID, or private health or finance data
  • using camera, microphone, photos, contacts, files, location, biometric, NFC, or SMS capabilities

If OpenPocket Human Auth is configured and the user asks for an approval-driven flow, prefer the OpenPocket human-auth path. Otherwise ask the user to provide the required data or approve the action in chat.

If a secure surface produces a black or incomplete screenshot, use returned UI metadata only. Do not infer hidden sensitive content.

Recovery

If tools are missing immediately after installation or update, restart the client and open a new task. Plugin-provided MCP tools are loaded per client task and an existing task may retain the previous tool surface.

Run node plugins/openpocket-phone/scripts/doctor.mjs from an OpenPocket checkout to validate both host bundles. If a UI element disappears, capture a fresh snapshot before trying again. If a physical device is unavailable, ask the user to authorize USB debugging or Wi-Fi ADB first.

© pockebot, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/openpocket-phone/shared/skills/phone-use of pockebot/openpocket.

Open the folder on GitHubat commit d4dae3d

Compare with similar skills

Phone Use next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Phone Use compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Phone Use this skillpockebot/openpocket847—~1.1kAutomated safety check: PassMIT
Phoneagentrounak/PhoneAgent799—~2.2kAutomated safety check: PassMIT
Phone Harnessmilind-soni/OpenMausBot4.2k—~364Automated safety check: PassApache-2.0
Scrcpy GotchasJuanCF/scrcpy-mcp113—~5.8kAutomated safety check: PassMIT
Argent Device Interactbbplayer-app/BBPlayer1.2k—~6kAutomated safety check: WarnMIT
Phone HarnessShawnPana/phone-harness3.2k—~4.3kAutomated safety check: PassMIT

Similar skills

  • Phoneagent

    rounak/PhoneAgent

    Control a connected iPhone, iOS simulator, Android emulator, or Android device from macOS through PhoneAgent's JSON-RPC bridge.

    799 GitHub stars~2.2k tokensUpdated 1 mo ago
    MobileAuto-check passed
  • Phone Harness

    milind-soni/OpenMausBot

    Control, inspect, test, or automate a physical Android phone connected to OpenMausBot over authorized USB debugging.

    4.2k GitHub stars~364 tokensUpdated today
    MobileAuto-check passed
  • Scrcpy Gotchas

    JuanCF/scrcpy-mcp

    A skill your agent uses when interacting with Android devices via scrcpy-mcp tools (tap, swipe, inputtext, keyevent, uidump, uifindelement, appstart, etc.).

    113 GitHub stars~5.8k tokensUpdated 16 days ago
    MobileAuto-check passed
  • Argent Device Interact

    bbplayer-app/BBPlayer

    Interact with an iOS simulator, Android emulator, or Chromium (CDP) app using argent MCP tools.

    1.2k GitHub stars~6k tokensUpdated yesterday
    MobileAuto-check: warnings
  • Phone Harness

    ShawnPana/phone-harness

    Control the user's phone — an iPhone through the Mac's iPhone Mirroring window, an Android over adb, or a rented cloud Android: open apps, tap, type, swipe, read the screen.

    3.2k GitHub stars~4.3k tokensUpdated today
    MobileAuto-check passed
  • Mobile QA

    tloncorp/tlon-apps

    Run a mobile QA checklist on a physical Android device over adb for tlon-apps, then triage what fails into fixes.

    107 GitHub stars~2.4k tokensUpdated today
    MobileAuto-check passed

More from pockebot/openpocket

All 23 skills in this repo
  • Capcut Edit

    pockebot/openpocket

    Edit videos and beautify photos in CapCut on mobile. An agent skill from pockebot/openpocket.

    847 GitHub stars~1.3k tokensUpdated 3 mo ago
    Auto-check passed
  • Clash Of Clans Play

    pockebot/openpocket

    Play Clash of Clans on mobile with autonomous tactical decisions.

    847 GitHub stars~1.5k tokensUpdated 3 mo ago
    Auto-check passed
  • Duolingo Play

    pockebot/openpocket

    Help users complete Duolingo language lessons. An agent skill from pockebot/openpocket.

    847 GitHub stars~1.1k tokensUpdated 3 mo ago
    Auto-check passed
  • Human Auth Biometric

    pockebot/openpocket

    Handle biometric authentication delegation (fingerprint, face recognition) when the Agent Phone lacks biometric hardware.

    847 GitHub stars~506 tokensUpdated 3 mo ago
    Auto-check passed
  • Human Auth Camera

    pockebot/openpocket

    Handle camera photo capture delegation from Human Phone. An agent skill from pockebot/openpocket.

    847 GitHub stars~569 tokensUpdated 3 mo ago
    Auto-check passed
  • Human Auth Contacts Data

    pockebot/openpocket

    Handle contacts, calendar, files, and notification data delegation from Human Phone.

    847 GitHub stars~669 tokensUpdated 3 mo ago
    Auto-check passed

Works with

Categories

Questions about Phone Use

What does Phone Use do?

Use OpenPocket MCP tools to inspect or control an Android emulator, physical Android phone, Android TV, or ADB-backed app. Phone Use is an agent skill from pockebot/openpocket. Use OpenPocket MCP tools to inspect or control an Android emulator, physical Android phone, Android TV, or ADB-backed app.

When should I use Phone Use?

Phone Use fits situations like: android automation; mobile UI testing; emulator control; physical-device control.

How do I install Phone Use in Claude Code?

Run `npx skills add pockebot/openpocket --skill phone-use -a claude-code`. Or copy the skill folder (plugins/openpocket-phone/shared/skills/phone-use in pockebot/openpocket) into .claude/skills/phone-use in your project. Claude Code loads it when a task matches its description.

How do I install Phone Use in Codex?

Run `npx skills add pockebot/openpocket --skill phone-use -a codex`. Or copy the skill folder (plugins/openpocket-phone/shared/skills/phone-use in pockebot/openpocket) into .agents/skills/phone-use in your project. Codex loads it when a task matches its description.

Can I use Phone Use in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pockebot/openpocket --skill phone-use -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/phone-use, .gemini/skills/phone-use, .github/skills/phone-use and .opencode/skills/phone-use in your project.

What does Phone Use need to run?

Going by SKILL.md and its folder, Phone Use needs the command-line tools its instructions call (node).

Does Phone Use access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Phone Use safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Phone Use use?

Phone Use is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Phone Use use?

About 1.1k tokens (SKILL.md is roughly 4.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Phone Use?

Skills that share tags, products or a category with Phone Use: Phoneagent (rounak/PhoneAgent, 799 stars), Phone Harness (milind-soni/OpenMausBot, 4.2k stars), Scrcpy Gotchas (JuanCF/scrcpy-mcp, 113 stars) and Argent Device Interact (bbplayer-app/BBPlayer, 1.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Phone Use?

pockebot (a GitHub organization) maintains it in pockebot/openpocket, which has 847 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on July 9, 2026.

Source: pockebot/openpocket on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.