{"data":{"slug":"phone-harness","name":"Phone Harness","tagline":"MIT CLI that lets coding agents drive a real phone","category":"agents","categoryName":"AI Agents","url":"https://phone-harness.com","github":"https://github.com/ShawnPana/phone-harness","pricing":"open-source","hook":"Phone Harness gives Claude Code, Codex or any shell-capable agent a phone it can see, tap and type on — an iPhone through the Mac's iPhone Mirroring window or an Android over adb — with no jailbreak, no Xcode and nothing installed on the phone.","whatsGood":"MIT (ShawnPana/phone-harness), release 0.3.2 on PyPI, installed with uv. The agent writes short Python against pre-imported helpers (open_app, tap_text, type_text, screen), and a bundled SKILL.md teaches it the loop. On iPhone it reads the screen with Apple's Vision OCR, and on Android it uses the accessibility tree. Android works from macOS, Linux or Windows, phone-harness doctor checks the setup, and there is a Hermes Agent plugin. ★~3.7k.","theCatch":"Young (first released Aug 2026). The iPhone path needs a Mac with iPhone Mirroring plus Accessibility and Screen Recording permissions, and unlocking the phone pauses mirroring. OCR sees text, not icons, and there is no multi-touch, camera or Face ID. The README pushes Phone Harness Cloud, a paid service with rented phones billed by the minute after 100 free minutes. Handing an agent your real phone also hands it your payments, messages and 2FA, so keep a human watching. Stars have climbed fast for a two-month-old repo (about 370 a week), so don't read the count as proof of maturity.","verdict":"The simplest way to let an agent test or operate a mobile app on a real device — on a spare phone, not your daily one.","addedAt":"2026-10-16","featured":false,"domain":"AI Agents","subSpecialty":"Agents","subcategory":"Coding Agents","tags":["cli","self-host","permissive","coding-agents","active","young-repo"],"capabilities":["cli"],"surfaces":["CLI","Self-host"],"ecosystem":["Multi-platform"],"licenseModel":"OSS/MIT","githubStars":3808,"starsPerWeek":362,"access":"free","archived":false,"repo":{"createdAt":"2026-08-07","pushedAt":"2026-10-17","license":"MIT","archived":false,"checkedAt":"2026-10-19"}},"related":[{"slug":"claude-code","name":"Claude Code","tagline":"Terminal-first coding agent with deep repository context"},{"slug":"cursor","name":"Cursor","tagline":"The AI-first code editor that understands your codebase"},{"slug":"devin","name":"Devin","tagline":"Autonomous AI engineer for defined engineering tasks"},{"slug":"stagehand","name":"Stagehand","tagline":"AI-native browser automation that mixes code and natural language"},{"slug":"browser-use","name":"Browser Use","tagline":"Open-source framework for LLM-driven browser agents"}],"links":{"self":"/api/gems/phone-harness","html":"/gems/phone-harness","markdown":"/gems/phone-harness.md","category":"/api/gems?category=agents","categoryPage":"/stacks/agents"}}