Node 故障排查
当节点在 status 中可见,但 node tools 调用失败时,请使用本页。
命令排查顺序
openclaw statusopenclaw gateway statusopenclaw logs --followopenclaw doctoropenclaw channels status --probe
然后执行节点专项检查:
openclaw nodes statusopenclaw nodes describe --node <idOrNameOrIp>openclaw approvals get --node <idOrNameOrIp>
健康信号:
- 节点已连接,并且以
node角色完成配对。 nodes describe中包含你正在调用的 capability。- Exec approvals 显示为符合预期的 mode/allowlist。
前台运行要求
在 iOS/Android 节点上,canvas.*、camera.* 和 screen.* 只能在前台使用。
快速检查与修复:
openclaw nodes describe --node <idOrNameOrIp>openclaw nodes canvas snapshot --node <idOrNameOrIp>openclaw logs --follow
如果你看到 NODE_BACKGROUND_UNAVAILABLE,请将节点 app 切到前台后再重试。
权限矩阵
| Capability | iOS | Android | macOS node app | 常见失败代码 |
|---|---|---|---|---|
camera.snap, camera.clip |
Camera(clip 音频还需要 mic) |
Camera(clip 音频还需要 mic) |
Camera(clip 音频还需要 mic) |
*_PERMISSION_REQUIRED |
screen.record |
Screen Recording(mic 可选) | screen capture prompt(mic 可选) | Screen Recording | *_PERMISSION_REQUIRED |
location.get |
While Using 或 Always(取决于 mode) | 前台/后台 location,取决于 mode | Location permission | LOCATION_PERMISSION_REQUIRED |
system.run |
n/a(node host path) | n/a(node host path) | 需要 Exec approvals | SYSTEM_RUN_DENIED |
Pairing 与 approvals 的区别
这是两个不同的关卡:
- Device pairing:这个节点能否连接到 gateway?
- Exec approvals:这个节点能否执行某条特定 shell command?
快速检查:
openclaw devices listopenclaw nodes statusopenclaw approvals get --node <idOrNameOrIp>openclaw approvals allowlist add --node <idOrNameOrIp> "/usr/bin/uname"
如果缺少 pairing,请先批准该 node device。
如果 pairing 正常但 system.run 失败,请修复 exec approvals/allowlist。
常见 node 错误码
NODE_BACKGROUND_UNAVAILABLE→ app 在后台;请切到前台。CAMERA_DISABLED→ 节点设置中 camera 开关被禁用。*_PERMISSION_REQUIRED→ 缺少或被拒绝了系统权限。LOCATION_DISABLED→ location mode 已关闭。LOCATION_PERMISSION_REQUIRED→ 请求的 location mode 未获授权。LOCATION_BACKGROUND_UNAVAILABLE→ app 在后台,但当前只有 While Using 权限。SYSTEM_RUN_DENIED: approval required→ exec 请求需要显式批准。SYSTEM_RUN_DENIED: allowlist miss→ 命令被 allowlist mode 拦截。 在 Windows node hosts 上,像cmd.exe /c ...这类 shell-wrapper 形式,在 allowlist mode 下如果没有通过 ask flow 批准,也会被视为 allowlist miss。
快速恢复循环
openclaw nodes statusopenclaw nodes describe --node <idOrNameOrIp>openclaw approvals get --node <idOrNameOrIp>openclaw logs --follow
如果仍然卡住:
- 重新批准 device pairing。
- 重新打开 node app(切到前台)。
- 重新授予系统权限。
- 重新创建或调整 exec approval policy。
