Skip to main content
ClaudeWave
Skill4.5k repo starsupdated yesterday

agent-device

agent-device automates interaction with iOS, tvOS, macOS, and Android apps through CLI commands for navigation, screenshotting, UI element inspection, and event simulation. Use this skill to plan and execute device automation workflows, troubleshoot app behavior, collect performance or network diagnostics, and route commands through the version-matched CLI documentation before execution.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/callstack/agent-device /tmp/agent-device && cp -r /tmp/agent-device/skills/agent-device ~/.claude/skills/agent-device
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# agent-device

For a normal app-driving task, start immediately. Do not probe first with `--help`, `--version`, `devices`, `appstate`, `snapshot`, or `screenshot`:

```bash
agent-device open <app> --foreground
```

That starts the session and returns the initial interactive snapshot with `@refs`.

Loop: act with `press|click|fill|longpress <target> ... --settle`, `scroll <direction> --settle`, or `back --settle`; continue from the printed diff, verify the named expectation (`wait text "..."`, `is`, `get`, or `find`), then run `agent-device close`.

Copy refs byte-for-byte: `@e12`, `@e12~s4` — keep the `@` and any `~sN`. Prefer current refs, then `id`/`label`/`role` selectors; coordinates are a last resort. If snapshot reports sparse/AX-unavailable, its refs and selectors are invalid: run `agent-device screenshot`, inspect the image, use coordinates, then retry `snapshot -i` after navigating. Otherwise run `snapshot -i` only when the diff lacks the next target.

Error output includes corrective hints; follow them instead of re-planning. Only when the task is specialized (for example gestures, scripting, TV, macOS, remote, or debugging) or a command shape is unclear, run `agent-device help <topic>`. `agent-device --help` lists topics, but is not a startup step.