鉴权、退避与健康若拆成三份脚本,长期必在深夜互相甩锅。下文把最小权限 Bearer、统一重试与探针合并告警串成一条流水线。编排见《LangGraph checkpoint 与沙箱验收》;探针骨架见《IDE 桥接与健康探针》;重试参数见《JSON Schema 与重试模板》。入口:帮助中心、技术博客、购买页。
| 组件 | 职责 | 失败时优先看什么 |
|---|---|---|
| Dashboard | 签发与吊销令牌;最小 scope | TTL、scope 与 skill |
| OpenClaw 网关 | 验令牌、执行工具、统一 retry | access 中 401 / trace_id |
| 合并探针 | /health + 下游 → 一条告警 |
语义失败是否被 PID 掩盖 |
可复现步骤
1)固定网关与沙箱。可写根目录(如 ~/openclaw-runtime)+ launchd 写死端口;密钥 0600,manifest 只引用路径不写明文。
2)Dashboard 最小权限令牌。仅 tools.invoke 等必要 scope 并限定 skill_id;短 TTL,Notebook/CI/生产分桶以便吊销。
3)LangGraph 工具节点。在 HTTP/ToolNode 包装层统一 Authorization: Bearer,thread_id 与 trace_id 进 X-Request-ID,与网关 access 对齐。
4)网关统一重试。共享 retry_policy(指数退避 + jitter、限定可重试码),写路径幂等键;熔断按远端 RTT/p95,勿照搬本机延迟。
5)探针合并告警。/health 与关键下游合成一条检查,失败进同一告警组;launchd ThrottleInterval 防探针风暴;PID 绿与语义绿分开验。
6)验收。openclaw doctor;吊销令牌、占端口、慢下游各测一轮,错误码与告警根因应单一。
curl -sf -H "Authorization: Bearer $OC_TOKEN" \
http://127.0.0.1:<port>/health && curl -sf https://api.example.com/ready排错 FAQ
端口已被占用?lsof -i :<port>;旧网关先 launchctl unload 再启;开发/生产端口写同一运维页。
鉴权总失败?查过期、scope、NTP;反代勿剥 Authorization,base URL 与路径前缀一致,勿把 404 当密钥错。
小结:Dashboard 管权限面,网关管重试与熔断,合并探针管「真能用」;图侧只编排与透传上下文。