phone-use

phone-use is a skill for Claude Code from pockebot/openpocket. It costs 68 tokens per session (941 once invoked), scanned A, original, MIT.

A set of instructions for inspecting and controlling an Android emulator, phone, TV, or other Android device through OpenPocket and ADB. ADB is a standard way for development tools to communicate with Android devices.

In plain words
What is it for?
Use it for Android app testing and automation, including opening apps, reading visible text, finding controls, tapping, typing, scrolling, and taking screenshots.
Why use it?
It helps keep Android testing targeted and safe by checking the device first and reading the screen before acting. It also favors finding visible controls over relying on fragile screen coordinates.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the openpocket-phone plugin — 1 skill, 1 MCP server shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/pockebot/openpocket/phone-use
Any agent
npx skills add pockebot/openpocket --skill phone-use
Clone the repo
git clone --depth 1 https://github.com/pockebot/openpocket

Made for: Claude Code.

Or install openpocket-phone, the plugin that ships this one along with the rest of its 1 skill, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for phone-use

README.md
[![agentmods](https://agentmods.dev/badge/skills/pockebot/openpocket/phone-use.svg)](https://agentmods.dev/skills/pockebot/openpocket/phone-use)
Your own site
<a href="https://agentmods.dev/skills/pockebot/openpocket/phone-use"><img src="https://agentmods.dev/badge/skills/pockebot/openpocket/phone-use.svg" alt="Measured on agentmods" height="20"></a>
Per session 68 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 941 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00068 $0.00941
Opus 5 $0.00034 $0.00470
Sonnet 5 $0.00014 $0.00188
Haiku 4.5 $0.00007 $0.00094

Measured 6d ago against content hash 50908f2ee18e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

phone-use scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/openpocket-phone/claude/openpocket-phone/skills/phone-use/SKILL.md · 66 lines

How it starts

The opening of the file, as written. The whole thing — 66 lines — stays where its author put it; the contents beside it link to each section on GitHub.

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.

Read the full file on GitHub · 66 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 66 lines · 68 tokens per session scan A 50908f2ee18e

Subscribe to this mod's changes

phone-use is a skill published in the GitHub repository pockebot/openpocket (841 stars, last pushed 1mo ago), licensed MIT. It adds 68 tokens to every session and 941 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

orca-emulator-android

Control an Android emulator / device from inside Orca using the orca CLI. Use for listing/booting AVDs, taps, swipes, typing, hardware buttons (incl. Back and Recents), rotation, app install/launch, runtime permissions, the accessibility tree, and logcat — driving a real adb-connected device or emulator.…

stablyai/orca · 104 tokens

android-tombstone-symbolication

Symbolicate the .NET runtime frames in an Android tombstone file. Extracts BuildIds and PC offsets from the native backtrace, downloads debug symbols from the Microsoft symbol server, and runs llvm-symbolizer to produce function names with source file and line numbers. USE FOR triaging a .NET MAUI or Mono Android app…

dotnet/skills · 176 tokens

dogfood

Systematically explore and test a mobile app on iOS/Android with agent-device to find bugs, UX issues, and other problems. Use when asked to dogfood, QA, exploratory test, find issues, bug hunt, or test this app on mobile.

callstack/agent-device · 55 tokens

winapp-maui

Package and sign .NET MAUI Windows apps with winapp, resolving the resizetizer manifest dependency. Use when packaging or signing a .NET MAUI Windows app, building a MAUI MSIX or signed unpackaged build in CI, or fixing 'manifest contains unresolved placeholders ($placeholder$)' errors from winapp package.

microsoft/winappCli · 71 tokens

apple-search-ads

When the user wants to set up, optimize, or scale Apple Search Ads (ASA) campaigns — including keyword bidding, match types, campaign structure, Creative Product Sets, CPP routing, and ROAS optimization. Use when the user mentions "Apple Search Ads", "ASA", "Search Ads", "Search tab ads", "Today tab ads", "CPT"…

Eronred/aso-skills · 127 tokens

android-pentest

安卓应用渗透测试 — APK分析、Hook、自动化测试、运行态驱动、签名恢复、抓包分析.

Netw0rkNoob/VulnClaw · 32 tokens