ToolBB-0239Curator pick

ESP32 iPhone Agent: a vision model operates a real iPhone through an ESP32-S3

ESP32 iPhone Agent runs on an ESP32-S3 that presents itself to an iPhone as an AirPlay receiver, a USB mouse and a USB keyboard. A vision model watches the mirrored screen and taps, swipes and types through AssistiveTouch on an unmodified phone. README photos show the board and phone setting a repeating alarm in the Clock app.

Open original source github.com · Henry Yuan

Shown working
Why this evidence label?

README photos show the real iPhone beside the board and what the agent sees while it sets a repeating alarm; it links a YouTube demo.

How we check entries
Preview image for ESP32 iPhone Agent: a vision model operates a real iPhone through an ESP32-S3
The source's own preview image, from github.com.

Briefing

iOS accepts a USB mouse when AssistiveTouch is on, so a board that enumerates as a mouse and keyboard can tap, swipe and type. For the screen, the board opens its own Wi-Fi hotspot, joins the phone's Screen Mirroring list and passes the H.264 stream to the app over BLE without decoding it.

The first version needed a Mac or Linux machine running UxPlay and a Python server. The current one runs a planner and an actor in an app on the same phone, talking to any OpenAI-compatible vision model. The README names a Seeed XIAO ESP32S3 as the tested board; the phone needs iOS 18 and cellular data.

From the GitHub API

Repository facts

Repository facts for onehumanbeing/esp32-iphone-agent, from the GitHub API
Repositoryonehumanbeing/esp32-iphone-agent
Stars2,861
LicenseMIT Permissive
LanguageC
Last push16 Oct 2026 13 d ago

Tags

Board

Report a problem with this entry