Files
bot/docs/cli/nodes.md
zeekay 4bdc9ee3e4 chore: rebrand openclaw → hanzo-bot for bridge merge
Comprehensive rename of all openclaw references to hanzo-bot equivalents:
- Package: openclaw → @hanzo/bot
- Binary: openclaw → hanzo-bot
- Types: OpenClaw* → Bot*
- Env vars: OPENCLAW_* → BOT_*
- Android: ai.openclaw.android → ai.hanzo.bot.android
- iOS/macOS: ai.openclaw.* → ai.hanzo.*
- Swift modules: OpenClaw* → Bot*
- Plugins: openclaw.plugin.json → bot.plugin.json
- Paths: .openclaw/ → .hanzo/bot/
- URLs: github.com/openclaw → github.com/hanzoai
2026-02-26 22:36:01 -08:00

2.6 KiB
Raw Permalink Blame History

summary, read_when, title
summary read_when title
CLI reference for `hanzo-bot nodes` (list/status/approve/invoke, camera/canvas/screen)
You’re managing paired nodes (cameras, screen, canvas)
You need to approve requests or invoke node commands
nodes

hanzo-bot nodes

Manage paired nodes (devices) and invoke node capabilities.

Related:

Common options:

  • --url, --token, --timeout, --json

Common commands

hanzo-bot nodes list
hanzo-bot nodes list --connected
hanzo-bot nodes list --last-connected 24h
hanzo-bot nodes pending
hanzo-bot nodes approve <requestId>
hanzo-bot nodes status
hanzo-bot nodes status --connected
hanzo-bot nodes status --last-connected 24h

nodes list prints pending/paired tables. Paired rows include the most recent connect age (Last Connect). Use --connected to only show currently-connected nodes. Use --last-connected <duration> to filter to nodes that connected within a duration (e.g. 24h, 7d).

Invoke / run

hanzo-bot nodes invoke --node <id|name|ip> --command <command> --params <json>
hanzo-bot nodes run --node <id|name|ip> <command...>
hanzo-bot nodes run --raw "git status"
hanzo-bot nodes run --agent main --node <id|name|ip> --raw "git status"

Invoke flags:

  • --params <json>: JSON object string (default {}).
  • --invoke-timeout <ms>: node invoke timeout (default 15000).
  • --idempotency-key <key>: optional idempotency key.

Exec-style defaults

nodes run mirrors the model’s exec behavior (defaults + approvals):

  • Reads tools.exec.* (plus agents.list[].tools.exec.* overrides).
  • Uses exec approvals (exec.approval.request) before invoking system.run.
  • --node can be omitted when tools.exec.node is set.
  • Requires a node that advertises system.run (macOS companion app or headless node host).

Flags:

  • --cwd <path>: working directory.
  • --env <key=val>: env override (repeatable). Note: node hosts ignore PATH overrides (and tools.exec.pathPrepend is not applied to node hosts).
  • --command-timeout <ms>: command timeout.
  • --invoke-timeout <ms>: node invoke timeout (default 30000).
  • --needs-screen-recording: require screen recording permission.
  • --raw <command>: run a shell string (/bin/sh -lc or cmd.exe /c). In allowlist mode on Windows node hosts, cmd.exe /c shell-wrapper runs require approval (allowlist entry alone does not auto-allow the wrapper form).
  • --agent <id>: agent-scoped approvals/allowlists (defaults to configured agent).
  • --ask <off|on-miss|always>, --security <deny|allowlist|full>: overrides.