适用场景:节点在状态中可见,但节点工具调用失败。

诊断命令梯队

# 第一步:基础状态检查
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
 
# 第二步:节点专项检查
openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw approvals get --node <idOrNameOrIp>

健康信号:

  • 节点已连接并以 node 角色配对
  • nodes describe 包含你要调用的能力
  • Exec 审批显示预期的 mode/allowlist

前台要求

canvas.*、camera.*、screen.* 在 iOS/Android 节点上仅前台可用。

遇到 NODE_BACKGROUND_UNAVAILABLE:将节点应用切到前台后重试。

权限矩阵

能力iOSAndroidmacOS典型错误码
camera.snap/clipCamera(+mic)Camera(+mic)Camera(+mic)*_PERMISSION_REQUIRED
screen.recordScreen RecordingScreen captureScreen Recording*_PERMISSION_REQUIRED
location.getWhile Using/Always前台/后台LocationLOCATION_PERMISSION_REQUIRED
system.runn/an/aExec 审批SYSTEM_RUN_DENIED

配对 vs 审批(三道门)

  1. 设备配对:节点能否连接到 Gateway?
  2. Gateway 节点命令策略:RPC 命令 ID 是否被 gateway.nodes.allowCommands/denyCommands 允许?
  3. Exec 审批:节点能否在本地运行特定 shell 命令?
openclaw devices list
openclaw nodes status
openclaw approvals get --node <idOrNameOrIp>
openclaw approvals allowlist add --node <idOrNameOrIp> "/usr/bin/uname"

常见错误码

错误码解决方案
NODE_BACKGROUND_UNAVAILABLE将应用切到前台
CAMERA_DISABLED节点设置中开启摄像头
*_PERMISSION_REQUIRED授予 OS 权限
LOCATION_DISABLED开启位置模式
SYSTEM_RUN_DENIED: approval required添加 exec 审批
SYSTEM_RUN_DENIED: allowlist miss添加 allowlist 条目

快速恢复循环

openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw approvals get --node <idOrNameOrIp>
openclaw logs --follow

仍卡住时:重新审批设备配对 → 重新打开节点应用(前台)→ 重新授予 OS 权限 → 重建 exec 审批策略。

相关页面