
The TL;DR
role: "node" node.invoke. Those command families included canvas.*, camera.*, device.*, notifications.*again system.*. The documentation is explicit: 'Nodes are peripherals, not gateways.' On a local network, apps discover the Gateway via mDNS/Bonjour. For remote access, OpenClaw recommends Tailscale with a wss://
| Discuss | ||
Use Cases with examples
# On the Gateway host (macOS, Linux, or Windows via WSL2)
npm install -g openclaw@latest
openclaw onboard --install-daemon
role: "node"
openclaw devices list
openclaw devices approve
openclaw nodes status # confirm the node is paired and connected
camera.snap, camera.clipagain screen.record. You opt in explicitly through gateway.nodes.allowCommands
// ~/.openclaw/openclaw.json
{
gateway: {
nodes: {
allowCommands: ["camera.snap", "screen.record"],
},
},
}
gateway.nodes.denyCommands
ws:// .local wss://
Interactive Descriptor
Interactive Descriptor
node.invoke
finished
18789
1
openclaw onboard --install-daemon
2
wss://
3
role: "node"
4
openclaw devices list openclaw devices approve
5
openclaw nodes status exhibitions paired · connected. Privacy-heavy commands stay off until allowedlisted.
Check it out as well as . Also, feel free to follow us Twitter and don't forget to join our 150k+ML SubReddit and Subscribe to Our newspaper. Wait! are you on telegram? now you can join us on telegram too.
Need to work with us on developing your GitHub Repo OR Hug Face Page OR Product Release OR Webinar etc.? contact us



