Skip to content
Guides

OpenClaw on Android

A companion node, not a Gateway, and what the app can actually do

5 min read

The first thing the docs say about the Android app settles most of the questions people bring to it: it is a companion node, and Android does not host the Gateway. The Gateway runs on macOS, Linux or Windows through WSL2, and the phone pairs with it to chat, talk, and lend its camera, location, screen and notifications to the agent. Here is where the app comes from, how pairing and multiple Gateways work, what the settings surface does, and the operator-side trick for mirroring the phone from a remote Mac.

It is a companion node and requires a running OpenClaw Gateway.

Install and pair

  • Google Play, or a signed universal APK from a GitHub release that lists both the APK and its checksum file; not every release does, so pick a release by its assets, verify the checksum and the build attestation, and only then sideload.
  • Play and APK installs use different update channels and may carry different signing identities, so switching may require an uninstall that removes local app data; stay on one channel.
  • Pair each Gateway once through the pairing flow, then manage them under Settings, Gateway.

Several Gateways at once

A checkmark marks the focused Gateway, and a switch per Gateway decides whether its operator session stays connected while another has focus; enabled Gateways reconnect on their own while the app is in the foreground. Only the focused Gateway owns the Android node session and the device capabilities, which is what stops two Gateways from commanding the same camera or screen, and Android may suspend the secondary connections once the app leaves the foreground.

Settings, the assistant, and the watch

  • Select an agent in the sidebar to see its credential status under Providers and Models; the page updates when the Gateway publishes model, credential or config changes, with a refresh control for availability.
  • Settings, OpenClaw opens a dedicated Gateway settings assistant when the connection has operator admin and the Gateway supports it: a separate conversation from ordinary Chat, secret replies masked and redacted locally, and a jump into Chat only when you choose it.
  • The Wear OS companion rides the phone’s authenticated connection and never stores Gateway credentials: it selects agents and sessions, reads bounded transcripts, sends text or dictated replies, aborts a run, starts realtime Talk, and connects or disconnects the phone’s Gateway.

OpenClaw nodes and remote hands explains what a paired device gives the agent and what it does not.

Mirroring the phone from a Mac

The docs also describe an operator-side workflow that has nothing to do with the node connection: scrcpy mirrors the Android screen in a macOS window and forwards input through ADB, over a shared Tailscale network, with ADB switched to TCP once over USB and a narrow tailnet grant that lets only the controller Mac reach port 5555 on the phone. OpenClaw and Tailscale covers the network side.

On Diali

On Diali the Gateway is already running on the assistant’s instance, so the phone’s only job is to pair, and the dashboard is where you approve it. Hosted OpenClaw on Diali is the assistant; OpenClaw on iPhone and iPad is the iPhone side of the same story.

  • A node, not a Gateway: the Gateway runs elsewhere.
  • Play or a verified APK; one channel, not both.
  • Only the focused Gateway may use the camera, screen or location.
Get started

Stop reading about it, build one

Set up an agent, pick a channel, and have it working inside the app you already keep open.