Lets AI agents like Claude Code or Codex read the screen, tap, type and swipe on a real iPhone over USB or Wi-Fi via MCP.
onehumanbeing/esp32-iphone-agent
Lets an AI vision model operate a real iPhone using a $7 ESP32-S3 board that acts as an AirPlay screen receiver and USB HID mouse, with no computer needed at run time.
- Stars
- 3,302
- Forks
- 440
- Open issues
- 14
- Last commit
- 11 hours ago
What is it?
ESP32 iPhone Agent is a system that lets an AI model control a physical iPhone. The ESP32-S3 board works as an AirPlay receiver, so the phone's screen is mirrored to it over Wi-Fi, and it also appears to the phone as a standard USB mouse and keyboard. An iPhone app on the same device decodes the mirrored stream, sends screenshots to an OpenAI-compatible vision model, and carries out taps, swipes, typing and key presses based on the model's replies.
The project targets setups where no Mac, developer account or jailbreak is available. Flashing the board and building the app require a Mac with Xcode once, but running the agent does not. Each run is saved on the phone so it can be replayed step by step, and traces can be exported for analysis by another agent.
The project is MIT-licensed, except for a firmware component ported from UxPlay that is GPL-3.0. Requirements include iOS 18 or later and cellular data, because the phone's Wi-Fi is occupied by the board's hotspot while the agent runs.
Key features
- 01Receives the iPhone screen over AirPlay Screen Mirroring, with H.264 passed through to the app over BLE.
- 02Acts as a USB HID mouse and keyboard, using AssistiveTouch for pointer-based taps and swipes.
- 03Works with any OpenAI-compatible vision model, including self-hosted servers such as vLLM and Ollama.
- 04Runs planner and actor steps in the background and pauses or resumes when the board or mirroring link drops.
- 05Saves every run for step-by-step replay and export of screenshots and actions.
Use cases
- Prototyping an AI agent that operates iOS apps without a Mac or developer account.
- Automating repetitive tasks on an iPhone you own, such as setting alarms or changing settings.
- Researching computer-use agents on a physical device rather than a simulator.
- Collecting run traces of phone interactions for analysis by another agent.
Topics
FAQ
- What is esp32-iphone-agent?
- Lets an AI vision model operate a real iPhone using a $7 ESP32-S3 board that acts as an AirPlay screen receiver and USB HID mouse, with no computer needed at run time. ESP32 iPhone Agent is a system that lets an AI model control a physical iPhone. The ESP32-S3 board works as an AirPlay receiver, so the phone's screen is mirrored to it over Wi-Fi, and it also appears to the phone as a standard USB mouse and keyboard. An iPhone app on the same device decodes the mirrored stream, sends screenshots to an OpenAI-compatible vision model, and carries out taps, swipes, typing and key presses based on the model's replies.
- Is esp32-iphone-agent free to use? What license does it have?
- esp32-iphone-agent is open source under the MIT license. Check the license terms before using it in commercial products.
- Is esp32-iphone-agent still maintained?
- Actively maintained. The last commit to esp32-iphone-agent was on Oct 19, 2026.
- What can I use esp32-iphone-agent for?
- Prototyping an AI agent that operates iOS apps without a Mac or developer account. Automating repetitive tasks on an iPhone you own, such as setting alarms or changing settings. Researching computer-use agents on a physical device rather than a simulator. Collecting run traces of phone interactions for analysis by another agent.
- Where can I get esp32-iphone-agent?
- The source code and installation instructions are on GitHub: https://github.com/onehumanbeing/esp32-iphone-agent
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A self-improving AI agent that creates and refines skills from experience, runs on many model providers, and works through CLI and messaging apps.
A framework for autonomous Android and computer use, letting a planner and finder LLM operate phones and desktops from natural-language tasks.
An AI agent that controls Windows at the GUI level by reading the UI Automation tree and letting any LLM choose clicks, typing and commands.
A native macOS app that creates software virtual displays so visual AI agents can work in desktop apps while physical monitors stay off.
Open-source AI coworker for your desktop that completes everyday tasks and security reviews, using your own model keys and approval-gated actions.