What your agent sees
observe returns every element on screen with its label, role and position, so the agent acts on names, not pixels.

phone-use observeOne CLI creates an iOS simulator or an Android emulator in the cloud. Your agent reads the screen as named elements and is told whether each action worked.
Works with
It works from the structure of the screen, hears back after every action and learns the way around an app as it goes.
observe returns every element on screen with its label, role and position, so the agent acts on names, not pixels.

phone-use observeAn open benchmark of 133 tasks across 26 apps, judged by its own checks.
| Tasks | Phone Use | Best published |
|---|---|---|
| Single app | 92.6 | 81.5 |
| Memory | 54.3 | 54.3 |
| Multi-app | 33.3 | 36.7 |
Each tap reports whether the screen changed, so one that did nothing never passes as done.
tap "Continue"no changetap "Agree to terms"changedtap "Continue"changedScreens and the paths between them are saved, so goto needs no model to get there.
phone-use goto "Fonts"Record a task once. Replays run without a model call, checking each step.
phone-use skill run send-reportopen_app "Mail"tap "Compose"fill "Weekly report"tap "Send"verify "Sent"One MCP server gives any MCP client the same tools on both platforms. Shell agents call the CLI.
Every phone gets its own token, and the token dies when the phone closes.
Your account key never leaves your machine.
create iostoken issuedclose <id>token revoked15 min idlecloses itselfphone-use task "…" with an Anthropic API key.--ttl. A phone closes itself after 15 minutes with no activity; change that with --idle, or pass --idle off. Close one any time with phone-use close <id>.phone-use install ./MyApp.app uploads a simulator build to the phone. These are simulators and emulators, not physical phones, so App Store apps and accounts that require a real device will not work.phone-use create prints a link to the phone in the console. iOS phones stream live video and you can tap along from the browser. Android phones show screenshots for now.