iOS support
An iPhone connects one of two ways, and the app picks for you.
| Transport | What it needs | What you get |
|---|---|---|
| USB tunnel (iOS 27+, preferred) | Cable + Developer Mode | Live screen, input, ~0.7 s screenshots, full Unicode typing |
| AirPlay mirroring + Bluetooth dongle (iOS 26 and older) | Same Wi-Fi network + the Bluetooth input dongle | Screen, rotation, volume, and with the dongle: taps, typing, macros |
Connecting
- Unlock the phone and plug in the cable.
- Tap Trust This Computer.
- Pick the device in the app.
The screen, touch, screenshot and pasteboard services come from the developer image the device has mounted, and installing that image is what needs Developer Mode (the device refuses the mount without it) - the app downloads and mounts it for you (about 16 MB the first time on iOS 27+, cached afterwards). When Developer Mode is off, the app turns it on itself: it warns for 10 seconds first (unplug the cable to stop it), then switches it on and the iPhone restarts once - unlock it after the restart and connect again. Once the image is mounted you can turn Developer Mode off again and the tunnel keeps working (with it off, iOS 27 still publishes all five services). An iOS update invalidates the mounted image and takes those services with it; the app puts a current one back whenever they come up missing.
iOS 16 and older do not use the tunnel, but their screenshots need a developer image too: the classic screenshotr service only answers with Developer Mode on and a classic image mounted at /Developer (about 7 MB the first time). The app prepares both of those as well, so the first screenshot on an older phone may wait for it.
Typing non-ASCII text
The keyboard types ASCII only, so everything else takes one of two routes. Pick the default in Settings → iOS connection → non-ASCII input (clipboard):
| Method | Upside | Cost |
|---|---|---|
| Clipboard paste (default) | Nothing to install on the phone | Replaces the device clipboard; iOS asks to allow the paste the first time in each app |
| AgentInput keyboard | No alerts, and the clipboard is left alone | The AgentInput app must be installed and its keyboard active |
Agents can also choose per call: unicode-text "text" --method clipboard|agentinput. ASCII text is typed either way, so neither applies to it.
Why does “Allow Paste?” keep appearing?
With the clipboard method, typing non-ASCII text (Chinese, emoji, accented letters) goes through the phone's clipboard — over the tunnel that means setting the device pasteboard and pressing Cmd+V. iOS asks the first time each app pastes, and there is no protocol-level way around it.
What to do:
- Tap Allow Paste in the dialog — the agent can do this itself.
- To stop it for good: Settings → [that app] → Paste from Other Apps → Allow.
- Pure ASCII text is typed key by key and never triggers the alert at all.
The AgentInput keyboard
Install AgentInput and switch to its keyboard, and non-ASCII text arrives character by character: no prompts, and the clipboard stays yours. Older devices on the Bluetooth HID bridge (no USB tunnel) have no other route.
Once the app's non-ASCII input is set to AgentInput, agents take this route by default. If the keyboard is missing or not the active one, the app falls back to the clipboard and says so in its reply.
To check it is active: take a screenshot — the keyboard carries the word AgentInput.
What iOS cannot do
- No back gesture (
press backis Android-only) — tap the on-screen back button instead. - No rotation control and no audio forwarding.
- No UI tree, so
findandui-treeare unavailable: the agent works from screenshots, which costs more. launch,open-urland Wi-Fi debugging are Android-only (macros work here too).
If neither the USB tunnel nor the Bluetooth bridge is attached, an iPhone session is view-only.
When it will not connect
- Make sure the phone is unlocked and the cable actually carries data — many charging cables do not.
- Unplug and replug; watch whether the device list refreshes.
- Tap Trust This Computer again; on Windows make sure Apple Mobile Device Support is installed (the installer can add it).
- Still stuck: restart the phone and plug it back in.
Last updated 2026-09-17