iOS App (Node)
Availability: internal preview. The iOS app is not publicly distributed yet.What it does
- Connects to a Gateway over the bridge (LAN or tailnet).
- Exposes node capabilities: Canvas, Screen snapshot, Camera capture, Location, Talk mode, Voice wake.
- Receives
node.invokecommands and reports node status events.
Requirements
- Gateway running on another device (macOS, Linux, or Windows via WSL2).
- Bridge enabled (default).
- Network path:
- Same LAN via Bonjour, or
- Tailnet via unicast DNS-SD (
clawdbot.internal.), or - Manual host/port (fallback).
Quick start (pair + connect)
- Start the Gateway (bridge enabled by default):
- In the iOS app, open Settings and pick a discovered gateway (or enable Manual Bridge and enter host/port).
- Approve the pairing request on the gateway host:
- Verify connection:
Discovery paths
Bonjour (LAN)
The Gateway advertises_clawdbot-bridge._tcp on local.. The iOS app lists these automatically.
Tailnet (cross-network)
If mDNS is blocked, use a unicast DNS-SD zone (recommended domain:clawdbot.internal.) and Tailscale split DNS.
See docs/bonjour.md for the CoreDNS example.
Manual host/port
In Settings, enable Manual Bridge and enter the gateway host + port (default18790).
Canvas + A2UI
The iOS node renders a WKWebView canvas. Usenode.invoke to drive it:
- The Gateway canvas host serves
/__clawdbot__/canvas/and/__clawdbot__/a2ui/. - The iOS node auto-navigates to A2UI on connect when a canvas host URL is advertised.
- Return to the built-in scaffold with
canvas.navigateand{"url":""}.
Canvas eval / snapshot
Voice wake + talk mode
- Voice wake and talk mode are available in Settings.
- iOS may suspend background audio; treat voice features as best-effort when the app is not active.
Common errors
NODE_BACKGROUND_UNAVAILABLE: bring the iOS app to the foreground (canvas/camera/screen commands require it).A2UI_HOST_NOT_CONFIGURED: the Gateway did not advertise a canvas host URL; checkcanvasHostindocs/configuration.md.- Pairing prompt never appears: run
clawdbot nodes pendingand approve manually. - Reconnect fails after reinstall: the Keychain pairing token was cleared; re-pair the node.