将此页面用于 Gateway 网关服务的第 1 天启动和第 2 天运维。Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
深度故障排除
以症状为起点的诊断,包含精确的命令步骤和日志特征。
配置
面向任务的设置指南 + 完整配置参考。
密钥管理
SecretRef 契约、运行时快照行为,以及迁移/重载操作。
密钥计划契约
精确的
secrets apply 目标/路径规则,以及仅 ref 的 auth-profile 行为。5 分钟本地启动
验证服务健康状态
Runtime: running、Connectivity probe: ok,以及与你预期一致的 Capability: ...。当你需要读作用域的 RPC 证明,而不仅仅是可达性时,请使用 openclaw gateway status --require-rpc。Gateway 网关配置重载会监视活动配置文件路径(从 profile/state 默认值解析,或在设置时使用
OPENCLAW_CONFIG_PATH)。
默认模式为 gateway.reload.mode="hybrid"。
首次成功加载后,运行中的进程会提供当前内存中配置快照;成功重载时会以原子方式切换该快照。运行时模型
- 一个始终运行的进程,用于路由、控制平面和渠道连接。
- 单一复用端口用于:
- WebSocket 控制/RPC
- HTTP API,兼容 OpenAI(
/v1/models、/v1/embeddings、/v1/chat/completions、/v1/responses、/tools/invoke) - 控制 UI 和 hooks
- 默认绑定模式:
loopback。 - 默认需要身份验证。共享密钥设置使用
gateway.auth.token/gateway.auth.password(或OPENCLAW_GATEWAY_TOKEN/OPENCLAW_GATEWAY_PASSWORD),而非 loopback 的反向代理设置可以使用gateway.auth.mode: "trusted-proxy"。
兼容 OpenAI 的端点
OpenClaw 现在最具杠杆效应的兼容性接口是:GET /v1/modelsGET /v1/models/{id}POST /v1/embeddingsPOST /v1/chat/completionsPOST /v1/responses
- 大多数 Open WebUI、LobeChat 和 LibreChat 集成会先探测
/v1/models。 - 许多 RAG 和记忆流水线依赖
/v1/embeddings。 - 原生面向智能体的客户端越来越倾向于使用
/v1/responses。
/v1/models以智能体为先:它返回openclaw、openclaw/default和openclaw/<agentId>。openclaw/default是稳定别名,始终映射到已配置的默认智能体。- 当你想要后端提供商/模型覆盖时,请使用
x-openclaw-model;否则,所选智能体的常规模型和嵌入设置仍会保持控制。
端口和绑定优先级
| 设置 | 解析顺序 |
|---|---|
| Gateway 网关端口 | --port → OPENCLAW_GATEWAY_PORT → gateway.port → 18789 |
| 绑定模式 | CLI/override → gateway.bind → loopback |
--port。更改 gateway.port 后,请运行 openclaw doctor --fix 或 openclaw gateway install --force,这样 launchd/systemd/schtasks 才会在新端口上启动进程。
Gateway 网关启动时,在为非 loopback 绑定预填充本地
控制 UI origins 时,会使用相同的生效端口和绑定。例如,--bind lan --port 3000
会在运行时验证之前预填充 http://localhost:3000 和 http://127.0.0.1:3000。请将任何远程浏览器 origins,例如 HTTPS 代理 URL,显式添加到
gateway.controlUi.allowedOrigins 中。
热重载模式
gateway.reload.mode | 行为 |
|---|---|
off | 不重载配置 |
hot | 仅应用可安全热更新的更改 |
restart | 在需要重启的更改上执行重启 |
hybrid (default) | 安全时热应用,需要时重启 |
操作员命令集
gateway status --deep 用于额外的服务发现(LaunchDaemons/systemd system
units/schtasks),而不是更深入的 RPC 健康探测。
多个 Gateway 网关(同一主机)
大多数安装应当每台机器运行一个 Gateway 网关。单个 Gateway 网关可以托管多个 智能体和渠道。 只有在你有意需要隔离或救援机器人时,才需要多个 Gateway 网关。 有用的检查:gateway status --deep可能报告Other gateway-like services detected (best effort)并在仍存在陈旧的 launchd/systemd/schtasks 安装时打印清理提示。- 当多个目标都有响应时,
gateway probe可能警告multiple reachable gateways。 - 如果这是有意行为,请为每个 Gateway 网关隔离端口、配置/状态和工作区根目录。
- 唯一的
gateway.port - 唯一的
OPENCLAW_CONFIG_PATH - 唯一的
OPENCLAW_STATE_DIR - 唯一的
agents.defaults.workspace
VoiceClaw 实时大脑端点
OpenClaw 在/voiceclaw/realtime 暴露了一个兼容 VoiceClaw 的实时 WebSocket 端点。当 VoiceClaw 桌面客户端应当直接连接到实时 OpenClaw 大脑,而不是经过单独的 relay
进程时,请使用它。
该端点使用 Gemini Live 处理实时音频,并通过将 OpenClaw 工具直接暴露给 Gemini Live,调用 OpenClaw 作为大脑。工具调用会立即返回
working 结果,以保持语音轮次响应迅速;然后 OpenClaw 会异步执行实际工具,并将结果注入回实时会话。请在 Gateway 网关进程环境中设置 GEMINI_API_KEY。如果
Gateway 网关身份验证已启用,桌面客户端会在其第一个 session.config 消息中发送 Gateway 网关 token 或 password。
实时大脑访问会运行由所有者授权的 OpenClaw 智能体命令。请将
gateway.auth.mode: "none" 限制为仅 loopback 的测试实例。非本地
实时大脑连接需要 Gateway 网关身份验证。
对于隔离的测试 Gateway 网关,请运行一个具有独立端口、配置
和状态的单独实例:
远程访问
首选:Tailscale/VPN。 备选:SSH 隧道。ws://127.0.0.1:18789。
参见:Remote Gateway、Authentication、Tailscale。
监督与服务生命周期
对于接近生产环境的可靠性,请使用受监督运行。- macOS (launchd)
- Linux (systemd user)
- Windows (native)
- Linux (system service)
openclaw gateway restart。不要将 openclaw gateway stop 和 openclaw gateway start 串联使用;在 macOS 上,gateway stop 会先有意禁用 LaunchAgent,然后再停止它。LaunchAgent 标签是 ai.openclaw.gateway(默认)或 ai.openclaw.<profile>(命名 profile)。openclaw doctor 会审计并修复服务配置漂移。开发 profile 快速路径
19001。
协议快速参考(操作员视图)
- 第一个客户端帧必须是
connect。 - Gateway 网关返回
hello-ok快照(presence、health、stateVersion、uptimeMs、limits/policy)。 hello-ok.features.methods/events是保守的发现列表,而不是 每个可调用 helper route 的生成式转储。- 请求:
req(method, params)→res(ok/payload|error)。 - 常见事件包括
connect.challenge、agent、chat、session.message、session.tool、sessions.changed、presence、tick、health、heartbeat、pairing/approval 生命周期事件,以及shutdown。
- 立即接受确认(
status:"accepted") - 最终完成响应(
status:"ok"|"error"),其间会流式传输agent事件。
运维检查
存活性
- 打开 WS 并发送
connect。 - 预期收到带有快照的
hello-ok响应。
就绪状态
缺口恢复
事件不会重放。出现序列缺口时,请先刷新状态(health、system-presence),再继续。
常见故障特征
| 特征 | 可能问题 |
|---|---|
refusing to bind gateway ... without auth | 非 loopback 绑定,但没有有效的 Gateway 网关身份验证路径 |
another gateway instance is already listening / EADDRINUSE | 端口冲突 |
Gateway start blocked: set gateway.mode=local | 配置被设置为 remote mode,或损坏配置中缺少 local-mode 标记 |
unauthorized during connect | 客户端与 Gateway 网关之间的身份验证不匹配 |
安全保证
- 当 Gateway 网关不可用时,Gateway 网关协议客户端会快速失败(不会隐式回退到直连渠道)。
- 无效的首帧或非
connect首帧会被拒绝并关闭连接。 - 优雅关闭会在 socket 关闭前发出
shutdown事件。
相关内容: