最初的六十秒
按顺序运行此梯级检查:openclaw status显示已配置的渠道,没有凭证错误。openclaw status --all生成一份完整、可共享的报告。openclaw gateway probe显示Reachable: yes。Capability: ...是探测已证明的凭证级别;Read probe: limited - missing scope: operator.read表示诊断降级,不是连接失败。openclaw gateway status显示Runtime: running、Connectivity probe: ok,以及合理的Capability: ...。添加--require-rpc还会要求读权限范围的 RPC 证明。openclaw doctor报告没有阻塞性的配置/服务错误。openclaw channels status --probe在 Gateway 网关可达时返回实时的按账号传输状态(works/audit ok);不可达时回退为仅配置摘要。openclaw logs --follow显示稳定活动,没有重复的致命错误。
助手感觉受限或缺少工具
检查实际生效的工具配置文件:tools.profile: "minimal"只允许session_status。tools.profile: "messaging"范围较窄,用于仅聊天的智能体。tools.profile: "coding"是新本地配置的默认值(仓库、文件、shell 和运行时工作)。tools.profile: "full"移除配置文件限制;仅限受信任的操作员控制智能体使用。- 按智能体配置的
agents.list[].tools会为某个智能体收窄或扩展根配置文件。
openclaw status --all 重新检查。完整配置文件/组表:工具配置文件。
Anthropic 长上下文 429
HTTP 429: rate_limit_error: Extra usage is required for long context requests
→ Anthropic 429 长上下文需要额外用量。
本地 OpenAI 兼容后端可直接工作,但在 OpenClaw 中失败
你的本地/自托管/v1 后端会响应直接的 /v1/chat/completions 探测,但在 openclaw infer model run 或普通智能体轮次中失败:
- 错误提到
messages[].content需要字符串:设置models.providers.<provider>.models[].compat.requiresStringContent: true。 - 仍然只在 OpenClaw 智能体轮次中失败:设置
models.providers.<provider>.models[].compat.supportsTools: false并重试。 - 微型直接调用可工作,但较大的 OpenClaw prompt 会让后端崩溃:这是上游模型/服务器限制,不是 OpenClaw bug。继续阅读本地 OpenAI 兼容后端通过直接探测,但智能体运行失败。
插件安装失败并提示缺少 openclaw extensions
package.json missing openclaw.extensions 表示插件包使用了 OpenClaw 不再接受的形状。
在插件包中修复:
- 将
openclaw.extensions添加到package.json,指向已构建的运行时文件(通常是./dist/index.js)。 - 重新发布,然后再次运行
openclaw plugins install <package>。
安装策略阻止插件安装或更新
更新完成,但插件过旧、被禁用,或显示blocked by install policy、install policy failed closed,或 Disabled "<plugin>" after plugin update failure:检查 security.installPolicy。
安装策略会在插件安装和更新时运行。@openclaw/* 插件版本通常随 OpenClaw 发布版本推进,因此 OpenClaw 更新可能需要在更新后同步期间进行匹配的插件更新。
避免使用这些策略形状,除非你也维护匹配的升级规则:
- 将 OpenClaw 自有插件冻结到某个精确的旧版本(例如只允许
@openclaw/*@2026.5.3)。 - 仅按来源类型阻止(每个 npm、网络,或
request.mode: "update"请求)。 - 将策略命令视为可选:启用
security.installPolicy后,缺失、缓慢、不可读或因权限被阻止的策略可执行文件都会失败关闭。 - 批准版本时不检查请求的
openclawVersion与插件候选元数据是否匹配。
@openclaw/* 更新并与当前宿主兼容的规则,而不是永久固定到一个发布版本。如果你默认阻止 npm,请为你使用的插件 ID 添加窄范围例外,并对 request.mode: "update" 应用与安装相同的信任规则。
恢复:
openclaw plugins update --all,然后恢复更严格的规则。如果更新失败禁用了插件,请先检查再重新启用:
插件存在但被可疑所有权阻止
openclaw doctor、设置或启动警告显示:
node(uid 1000)运行。修复宿主机绑定挂载:
决策树
No replies
No replies
Runtime: runningConnectivity probe: okCapability: read-only、write-capable或admin-capable- 渠道显示传输已连接,并且在支持的地方,
channels status --probe中有works或audit ok - 发送者已获批准(或私信策略为开放/允许列表)
drop guild message (mention required→ Discord 提及门控阻止了消息。pairing request→ 发送者未获批准,正在等待私信配对批准。- 渠道日志中的
blocked/allowlist→ 发送者、房间或群组被过滤。
Dashboard or Control UI will not connect
Dashboard or Control UI will not connect
openclaw gateway status中显示Dashboard: http://...Connectivity probe: okCapability: read-only、write-capable或admin-capable- 日志中没有凭证循环
device identity required→ HTTP/非安全上下文无法完成设备凭证。origin not allowed→ 浏览器Origin不允许用于 Control UI Gateway 网关目标。AUTH_TOKEN_MISMATCH且带有canRetryWithDeviceToken=true→ 可能会自动发生一次受信任的设备令牌重试,复用已配对令牌缓存的权限范围。- 此后重复出现
unauthorized→ 令牌/密码错误、凭证模式不匹配,或已配对设备令牌过期。 too many failed authentication attempts (retry later)→ 来自该浏览器Origin的重复失败会被临时锁定;其他 localhost 来源使用独立桶。关于 Tailscale Serve 并发重试细节,请参阅 Dashboard/Control UI 连接。gateway connect failed:→ UI 指向错误的 URL/端口,或 Gateway 网关不可达。
Gateway will not start or service installed but not running
Gateway will not start or service installed but not running
Service: ... (loaded)Runtime: runningConnectivity probe: okCapability: read-only、write-capable或admin-capable
Gateway start blocked: set gateway.mode=local或existing config is missing gateway.mode→ Gateway 网关模式为远程,或配置缺少本地模式标记,需要修复。refusing to bind gateway ... without auth→ 在没有有效凭证路径(令牌/密码,或已配置的受信任代理)的情况下绑定到非 loopback。another gateway instance is already listening或EADDRINUSE→ 端口已被占用。
Channel connects but messages do not flow
Channel connects but messages do not flow
- 渠道传输已连接。
- 配对/允许列表检查通过。
- 在需要的地方检测到提及。
mention required→ 群组提及门控阻止了处理。pairing/pending→ 私信发送者尚未获批准。not_in_channel、missing_scope、Forbidden、401/403→ 渠道权限令牌问题。
Cron or heartbeat did not fire or did not deliver
Cron or heartbeat did not fire or did not deliver
cron status显示调度器已启用,并有下一次唤醒。cron runs显示最近的ok条目。- Heartbeat 已启用,并且处于活跃时段内。
cron: scheduler disabled; jobs will not run automatically→ cron 已禁用。heartbeat skippedreasonquiet-hours→ 不在配置的活跃时段内。heartbeat skippedreasonempty-heartbeat-file→HEARTBEAT.md存在,但只包含空白、注释、标题、围栏或空检查清单脚手架。heartbeat skippedreasonno-tasks-due→ 任务模式处于活跃状态,但尚未到任何任务间隔。heartbeat skippedreasonalerts-disabled→showOk、showAlerts和useIndicator都已关闭。requests-in-flight→ 主通道繁忙;Heartbeat 唤醒已延后。unknown accountId→ Heartbeat 递送目标账号不存在。
节点已配对但工具 camera canvas screen exec 失败
节点已配对但工具 camera canvas screen exec 失败
- 节点列为已连接,并且已为角色
node配对。 - 你正在调用的命令具备对应能力。
- 该工具的权限状态为已授予。
NODE_BACKGROUND_UNAVAILABLE→ 将节点应用置于前台。*_PERMISSION_REQUIRED→ OS 权限被拒绝或缺失。SYSTEM_RUN_DENIED: approval required→ Exec 审批待处理。SYSTEM_RUN_DENIED: allowlist miss→ 命令不在 Exec 允许列表中。
Exec 突然要求审批
Exec 突然要求审批
- 未设置的
tools.exec.host默认值为auto;当沙箱运行时处于活跃状态时,它会解析为sandbox,否则解析为gateway。 host=auto只负责路由;无提示行为来自 Gateway 网关/节点上的security=full加ask=off。- 未设置的
tools.exec.security在gateway/node上默认值为full。 - 未设置的
tools.exec.ask默认值为off。 - 如果你看到了审批,说明某些主机本地或按会话配置的策略 将 Exec 收紧到了这些默认值之外。
- 只设置
tools.exec.host=gateway,以获得稳定的主机路由。 - 对主机 Exec 使用
security=allowlist和ask=on-miss,在 允许列表未命中时进行审查。 - 启用沙箱模式,让
host=auto重新解析为sandbox。
Approval required.→ 命令正在等待/approve ...。SYSTEM_RUN_DENIED: approval required→ 节点主机 Exec 审批待处理。exec host=sandbox requires a sandbox runtime for this session→ 已隐式/显式选择沙箱,但沙箱模式已关闭。
浏览器工具失败
浏览器工具失败
- 浏览器状态显示
running: true以及已选择的浏览器/配置文件。 openclaw配置文件会启动,或user配置文件可以看到本地 Chrome 标签页。
unknown command "browser"→ 已设置plugins.allow,且其中排除了browser。Failed to start Chrome CDP on port→ 本地浏览器启动失败。browser.executablePath not found→ 配置的二进制文件路径错误。browser.cdpUrl must be http(s) or ws(s)→ 配置的 CDP URL 使用了不受支持的 scheme。browser.cdpUrl has invalid port→ 配置的 CDP URL 端口错误或超出范围。No Chrome tabs found for profile="user"→ Chrome MCP 附加配置文件没有已打开的本地 Chrome 标签页。Remote CDP for profile "<name>" is not reachable→ 此主机无法访问配置的远程 CDP 端点。Browser attachOnly is enabled ... not reachable→ 仅附加配置文件没有可用的实时 CDP 目标。- 仅附加或远程 CDP 配置文件上存在陈旧的视口/深色模式/区域设置/离线覆盖 → 运行
openclaw browser stop --browser-profile <name>关闭控制会话,并在不重启 Gateway 网关的情况下释放模拟状态。
相关内容
- 常见问题 — 常见问题
- Gateway 网关故障排查 — Gateway 网关特定问题
- Doctor — 自动健康检查和修复
- 渠道故障排查 — 渠道连接问题
- 定时任务:故障排查 — cron 和 Heartbeat 问题