iPhone Use is a tool that enables AI code assistants to control real iPhones connected via USB by sending natural language commands.
The tool solves the problem of automating iPhone interactions for AI-driven testing and task execution. It works by communicating with iPhones through WebDriverAgent, a service that runs on the device itself. Users describe tasks in natural language, and the AI assistant can open apps, read page content, tap, scroll, type text, and organize lists. The tool displays the phone screen in real time within the assistant's interface. When element detection fails, it guides the model to examine screenshots and attempt coordinate-based taps instead.
Adoption requires macOS with the Codex desktop client, a complete Xcode installation with initial configuration completed, an Apple account and development team usable in Xcode, a physical iPhone connected via USB with developer mode enabled, Python 3.9 or later, and Node.js 20.19 or newer with npm 10 or later. The critical prerequisite is installing and launching WebDriverAgent on the iPhone itself using your own Apple account and development team signature through Xcode. The tool uses a pinned version of WebDriverAgent and manages its dependencies, signing, and deployment through a setup process. No jailbreak is required, and no separate Appium Server needs to run.
The project sends anonymous usage statistics to an independent PostHog instance by default, including launches, tool calls, connection status, timing, and error categories, using a random installation identifier without uploading screen content, input data, or device identifiers; analytics can be disabled by setting environment variables. Development activity shows ongoing refinement of the core automation capabilities and integration with the Codex environment. The tool prioritizes reusing existing connections and builds rather than creating new ones for each operation.