agent-device (Callstack)

Browser & Desktop 💻 TypeScript ⚖️ MIT 🟢 Actively maintained
4.4k stars

agent-device is a CLI, MCP server, and Node.js API that gives AI coding agents the ability to inspect, control, and verify mobile and desktop apps on iOS, Android, HarmonyOS, TV, web, macOS, and Linux. It solves the problem of agents lacking a live app feedback loop by providing accessibility snapshots, actions, and evidence capture. It is for developers building or using AI coding agents that need to automate and verify app behavior.

Giving AI Agents Hands: Mobile Feedback Loops with Agent Device | Mike Grabowski | React Summit 2026

🎬 Giving AI Agents Hands: Mobile Feedback Loops with Agent Device | Mike Grabowski | React Summit 2026 · Callstack

agent-device (Callstack) demo
🎞️ Demo from the project README

✨ Key features

  • Inspect app state via accessibility snapshots and refs
  • Act on UI with taps, fills, scrolls, gestures, and waits
  • Diagnose failures with screenshots, video, logs, and traces
  • Save workflows as .ad scripts for replay in CI
  • Coordinate device access across parallel agent worktrees
  • Connect to remote device clouds like BrowserStack and AWS

🎯 Use cases

  • Implement a feature and verify it on simulators
  • Reproduce crashes and capture logs for debugging
  • Check for unnecessary React Native re-renders
  • Record a checkout flow and run it as a CI replay
  • Verify pull requests on physical devices with evidence

📦 Installation

🧰 Requirements: Requires Node.js 22.12 or newer (24+ for web automation). No API keys required for local use; device clouds may need credentials.

npm install -g agent-device@latest
agent-device doctor
agent-device help workflow

🚀 Usage

Start a session.
agent-device open Contacts --platform ios
Inspect the screen.
agent-device snapshot -i
Use the ref and wait for the UI to settle.
agent-device press @e2 --settle
agent-device fill @e7 "Ada" --settle
Capture evidence and close.
agent-device screenshot ./contact-form.png
agent-device close

⚠️ Good to know

Support depth varies by target; newer backends like HarmonyOS and Vega OS cover a subset of commands, and web support is basic.

❓ FAQ

What is agent-device?

agent-device is a CLI and MCP server that lets AI agents inspect, control, and verify mobile apps and save evidence. It supports iOS, Android, HarmonyOS, TV, web, macOS, and Linux.

Does it work with React Native, Expo, Flutter, and native apps?

Yes, it supports native iOS and Android apps plus React Native, Expo, and Flutter apps on supported targets, though commands and evidence vary by target.

Can I build my own agent on agent-device?

Yes, the typed Node.js client is a public surface, so you can build custom agents using the Node.js API, AI SDK, or Eve integration guides.

Can agent-device run in CI?

Yes, you can record a run as an .ad script and replay it in CI, keeping screenshots and logs as artifacts. An EAS workflow template is available.

📊 Repository

Stars★ 4,373
Forks🍴 272
Open issues🐛 43
Last commit🕒 Sep 4, 2026
Created📅 Jan 2026
Language💻 TypeScript
License⚖️ MIT

🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.