pgodlews

Ihandclaw — AI skill for Claude Code

AI community

Let AI agents drive a real iPhone: an ESP32-C3/C5 acts as a Bluetooth keyboard + mouse, an AirPlay mirror is the agent's eyes.

How to install Ihandclaw

This entry records only its repository, not the path inside it, so there is no exact command to give. Open pgodlews/ihandclaw and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Ihandclaw does

Let AI agents drive a real iPhone: an ESP32-C3/C5 acts as a Bluetooth keyboard + mouse, an AirPlay mirror is the agent's eyes. MCP + HTTP API, droidclaw/LM Studio support, and the Benchy benchmark for comparing models. Proof of concept.

Alternatives in AI

  • CodeIsland — Real-time AI coding agent status panel in your MacBook notch — live status, approvals & replies for 13 AI tool 2.3k ★
  • Cc Mirror — Create multiple isolated Claude Code variants with custom providers (Z.ai, MiniMax, OpenRouter, LiteLLM) 2.1k ★
  • Agentboard — Web GUI for tmux optimized for AI agent TUIs, with support for iOS safari and mac w/ keyboard shortcuts 410 ★

README

ihandclaw

**Proof of concept.** Works end to end on one reference setup; expect rough edges.

An AI agent finishing the Benchy on an iPhone: the note shows the run title, the iOS version and the Calculator result, with the ESP32 board beside the phone

ihandclaw (Python package `iphone_hand`) lets an AI agent operate a real iPhone through an ESP32 acting as a Bluetooth keyboard and mouse, while the agent sees screenshots from a mirrored screen. The host turns agent requests into HID actions and uses visual feedback to position the pointer. You can build the hardware, compare agents and models on the Benchy benchmark, experiment with fine-tuned models, and contribute playbooks that teach agents how to navigate iOS apps. The current reference phone is an iPhone XS running iOS 18; this is an experimental project, not a universal iOS automation system.

Claude (MCP / Claude Code) or droidclaw + LM Studio model
                       |
             Python host / daemon HTTP API
                 |                    ^ screenshots / OCR
          USB serial or TCP           |
                 |             UxPlay AirPlay (Linux / macOS)
          ESP32-C3 or C5        or USB capture (macOS prototype)
                 | BLE HID            |
                 +---------------> iPhone

Read: the [design contract](docs/SPEC.md) defines the protocol and point coordinates. The [frame-source guide](docs/frame-sources.md) compares AirPlay, USB, and developer services; the original Portal+/ADB path also remains available.

Why ihandclaw

Read: most iPhone automation (XCUITest, WebDriverAgent, Appium) needs a Mac with Xcode, a signed helper app on the phone and Developer Mode. ihandclaw drives the phone from the outside, the way a person with a keyboard and mouse would:

  • No Mac. The host runs headless on Linux (the reference setup is a Linux mini PC); firmware bu