> nodes & devices
Nodes are companion apps — macOS, iOS, Android — that connect to the gateway with role: node and expose device capabilities: camera, screen, Canvas, location, notifications, and raw RPC. Pairing is a two-step approval (a pending request you approve with openclaw devices approve), and risky commands stay off until you opt in per command. Read-only actions are permissive; anything that captures or sends requires the app foregrounded and an explicit allowCommands entry.
// nodes & devices
5 commands$ openclaw nodes pending$ openclaw nodes status$ openclaw nodes camera snap --node my-phone --facing front$ openclaw nodes screen record --node my-phone --duration 10s --fps 10$ openclaw nodes location get --node my-phone// faq
How do I pair my phone as a node?
Install the node app and point it at your gateway; it creates a pending pairing request. Run openclaw nodes pending (or openclaw devices list) to see it, then openclaw devices approve <requestId>. Requests expire five minutes after the last retry, and reconnecting with changed auth creates a new requestId, so approve the current entry.
Why do camera and screen commands fail with NODE_BACKGROUND_UNAVAILABLE?
Capture commands only work with the node app in the foreground — a backgrounded phone returns NODE_BACKGROUND_UNAVAILABLE. Bring the app forward and retry. These commands also need an explicit opt-in (see the next answer).
How do I enable risky node commands like sms.send?
Sensitive commands (camera.snap, screen.record, contacts.add, calendar.add, sms.send) are refused unless you opt in via gateway.nodes.allowCommands in openclaw.json. gateway.nodes.denyCommands always overrides an allow, so a deny wins even if the command is also allowlisted. Read-only commands like device.status work without opt-in.
What can I do with the Canvas?
The Canvas is a controllable web surface on the node. openclaw nodes canvas present --target <url> shows a page, canvas navigate and canvas eval drive it (for example running document.title), and canvas snapshot captures an image. It is how agents show visual output or run browser workflows on a paired device.