OpenClaw Releases iOS and Android Companion Node Apps That Connect a Phone to a Self-Hosted AI Agent Gateway
OpenClaw simply launched native companion apps for iOS and Android. The iOS app is listed as ‘OpenClaw – AI that does issues.’ Both apps are free to obtain. They are usually not standalone chatbots. Each telephone turns into a node in a self-hosted agent community. The assistant itself runs on a separate Gateway. That separation is the entire design.
TL;DR
- OpenClaw’s iOS and Android apps are companion nodes, not standalone assistants.
- The Gateway runs the agent; telephones add digital camera, location, voice, and Canvas.
- Nodes pair over WebSocket on port 18789 and require express approval.
- Privacy-heavy instructions keep off till you allowlist them.
- A Gateway on macOS, Linux, or Windows (WSL2) is required.
What is OpenClaw?
OpenClaw is an open-source private AI assistant/agent. It was created by Peter Steinberger with neighborhood contributors. The undertaking is unbiased and not affiliated with Anthropic. Its core is written in TypeScript. The runtime is Node 24 (really helpful) or Node 22.19+. The Gateway runs on macOS, Linux, or Windows by way of WSL2. You speak to it from chat apps you already use. Supported channels embody WhatsApp, Telegram, Discord, Slack, Signal, and iMessage. The agent can browse the online, run shell instructions, and learn and write recordsdata. It works with hosted, subscription-backed, gateway, or native fashions. You convey an API key out of your chosen supplier. It retains persistent reminiscence and helps neighborhood expertise and plugins.
How the Gateway-and-Nodes Architecture Works?
The Gateway is the only management airplane. It owns periods, routing, channels, instruments, and occasions. You run one Gateway course of by yourself machine or server. Chat messages all the time land on the Gateway, by no means on a telephone. A node is a companion gadget that connects to that Gateway. Nodes join over a WebSocket on default port 18789. Each node registers with position: "node" throughout pairing. Nodes expose a command floor via node.invoke. Those command households embody canvas.*, digital camera.*, gadget.*, notifications.*, and system.*. The documentation is express:’Nodes are peripherals, not gateways.’ On a native community, apps uncover the Gateway by way of mDNS/Bonjour. For distant entry, OpenClaw recommends Tailscale with a wss:// endpoint.
What does Mobile Apps Add?
The telephone provides the agent a physique. It grants device-specific {hardware} to your workflows. The iOS app pairs by QR code or setup code. It helps chat, realtime and background Talk mode, and approvals. You can share textual content, hyperlinks, and media from iOS into OpenClaw. Optional capabilities embody digital camera, display, location, photographs, contacts, calendar, and reminders. The Android app is a companion node, not a standalone gateway. It presents streaming chat replies, picture attachments, and full session historical past. Talk Mode makes use of ElevenLabs or system TTS. A stay Canvas floor lets the agent render dashboards and instruments. Android grants permissions one after the other. A foreground service retains the Gateway connection alive.
iOS Node vs Android Node
| Capability | iOS — OpenClaw – AI that does issues | Android — OpenClaw’ node |
|---|---|---|
| Role | Companion node | Companion node |
| Pairing | QR code or setup code | Setup code or guide host/port |
| Chat | Chat from iPhone | Streaming replies, picture attachments, full session historical past |
| Voice | Realtime and background Talk mode | Talk Mode (ElevenLabs or system TTS) |
| Canvas | Canvas floor | Live Canvas floor |
| Device capabilities | Camera, display, location, photographs, contacts, calendar, reminders | Camera, photographs, display seize, location, notifications, contacts, calendar, SMS, movement sensors |
| Action approvals | Reviewable from the iPhone | Managed on the Gateway |
| Data assortment | None declared (App Store) | None declared (Google Play) |
| Requirement | iOS 18.0+ and a working Gateway | A working Gateway on macOS, Linux, or Windows (WSL2) |
Use Cases With Examples
Consider subject knowledge assortment on a job web site. The agent makes use of iOS digital camera seize to {photograph} situations. Location tags every picture with GPS coordinates. Consider a context-aware reminder. The agent triggers a process once you attain a place. Consider an incoming notification on Android. The agent reads it and drafts a reply. Consider a stay dashboard. The agent pushes a Canvas floor to your display. Consider hands-free use. Talk Mode holds a steady voice dialog. One caveat applies to digital camera and display seize. They require the app within the foreground. Background calls return an error.
Pairing a Phone: A Minimal Walk-Through
First, run the Gateway on a supported host.
# On the Gateway host (macOS, Linux, or Windows by way of WSL2)
npm set up -g openclaw@newest
openclaw onboard --install-daemon
Next, open the app and choose a found Gateway. Or enter the host and port manually. The app connects with position: "node" and sends a gadget pairing request. Approve it from the Gateway CLI.
openclaw units listing
openclaw units approve <requestId>
openclaw nodes standing # verify the node is paired and linked
Privacy-heavy instructions keep off by default. Examples embody digital camera.snap, digital camera.clip, and display.report. You choose in explicitly via gateway.nodes.permitCommands in your config.
// ~/.openclaw/openclaw.json
{
gateway: {
nodes: {
permitCommands: ["camera.snap", "screen.record"],
},
},
}
A deny listing (gateway.nodes.denyCommands) all the time wins over the allowlist.
Security and Approvals
Pairing credentials are saved on the gadget. Every node connection requires approval earlier than it reaches the Gateway. The gadget pairing report is the sturdy position contract. Token rotation can’t improve a node into a completely different position. Camera and display seize are permission-gated and run solely within the foreground. Cleartext ws:// is restricted to LAN and .native hosts. Public or Tailscale endpoints require a actual wss:// TLS endpoint.
Interactive Explainer
OpenClaw: how a telephone turns into a node in your AI agent community
Explore the Gateway-and-Nodes structure, simulate a chat command flowing to a telephone’s {hardware}, and stroll via gadget pairing — all in your browser.
The Gateway is the only supply of reality
Click any block to see its position. Messages all the time land on the Gateway — by no means instantly on a telephone.
Simulate a command reaching your telephone’s {hardware}
Pick a channel and a process, then run it. Watch the request circulation via the Gateway to a node’s node.invoke command floor.
accomplished
requires foreground / opt-in
Pair a telephone as a node
Nodes join over WebSocket on port 18789 and require express approval. Press play to step via the handshake.
openclaw onboard --install-daemon on macOS, Linux, or Windows (WSL2).wss:// Tailscale endpoint.position: "node" and a gadget identification.openclaw units listing → openclaw units approve <requestId>openclaw nodes standing reveals paired · linked. Privacy-heavy instructions keep off till allowlisted.