首屏摘要:三类误判与你要先对齐的前提
误判 1:把「模型不回消息」当成「spawn 工具丢了」。若提供方返回 401/429 或模型标识写错,网关可能根本不会进入工具协商阶段;此时应先跑 openclaw models status 与最小对话探针,再查工具白名单。
误判 2:把 allowAgents 写在 agents.defaults 顶层。社区 issue 类问题里常见症状是日志显示 allowed: none:子代理列表未被读取。修正方式是把策略挂到正确的 subagents 节点下,保存后重启网关进程让配置热区生效。
误判 3:选用不支持 function calling 的模型。部分扩散/非对话式端点不会暴露工具接口;此时列表里看不到 sessions_spawn 是能力边界而非配置笔误。换用明确支持工具调用的模型做对照实验。
分层顺序与《网关运维》一致:先进程与端口,再外连 API,再通道;本文把工具注册嵌进同一套节奏,避免在反向代理层和 JSON 层之间来回空转。
痛点拆解:spawn、allowAgents 与模型能力如何串起来
痛点 1:升级后 schema 迁移未完成。大版本可能调整 openclaw.json 字段位置;若你合并分支时只改了镜像 tag,旧字段会被静默忽略。应对:对照发行说明做配置 diff,并在预发用同一份 JSON 跑一遍 doctor。
痛点 2:HTTPS 终止在 Nginx/Caddy 后工具正常但事件偶发断。WebSocket 与长轮询路径若未按《反向代理》放通,会在用户侧表现为「有时能 spawn 有时不能」;需在边缘日志与网关日志间做 request id 对齐。
痛点 3:生产加固与最小权限收紧过头。《生产加固》中的出站与 Webhook 策略若与内网工具回调冲突,会在 doctor 全绿的情况下仍拦截子会话创建;要单独为工具 HTTP 回调建立允许列表与审计字段。
痛点 4:安装路径混用导致 CLI 与网关版本不一致。同一台远程 Mac上既有全局 npm 又有 Docker Compose 时,容易 which openclaw 指向 A、systemd 跑的是 B。先按《安装路径对比》统一入口,再谈 spawn。
痛点 5:缺少结构化日志字段。排障应记录:配置哈希、模型名、工具枚举结果、拒绝原因码;否则复盘只能依赖截图。
决策矩阵:症状到动作
| 症状 | 优先检查 | 动作 | 站内延伸 |
|---|---|---|---|
| 工具列表无 sessions_spawn | 模型是否支持 tools | 换对照模型;读 models status | 网关运维 |
| allowed: none | allowAgents 嵌套 | 移到 subagents;重启网关 | 安装路径 JSON 备份 |
| doctor 报错配置 | JSON 与权限 | 修路径、chmod、快照回滚 | 安装对比 |
| 仅公网失败 | 反代与 CORS | 对齐 allowedOrigins 与 WS 头 | 反向代理 |
| 出站工具 HTTP 被拒 | SSRF 策略 | 加显式允许与审计 | 生产加固 |
矩阵强调:工具可见性是模型与策略的交集,不是单一开关。
实操步骤:最小可复现排查(How-to)
在预发执行;修改生产 openclaw.json 前先快照(见安装文)。
# 1) 网关与 CLI 是否同源
openclaw status
openclaw models status
# 2) 配置与 doctor
openclaw doctor
# 3) 对照:用已知支持 tools 的模型跑一条需 spawn 的任务
# 4) 若仍无工具:检查 agents.list[].subagents 下 allowAgents 片段
# 5) 查看日志中工具枚举与拒因(勿粘贴密钥)
openclaw logs --follow
Docker 路径下注意卷挂载是否指向你编辑的那份 JSON;裸机路径注意 launchd/systemd 工作目录。
基线与可观测:写进值班手册的三行
(1)每次变更记录 openclaw.json 的 sha256 与镜像 tag。(2)告警区分「鉴权失败」「工具未注册」「通道无回包」三类,对应不同值班级别。(3)与《2026.3 多通道生产》并联时,为 PDF/Teams 与 spawn 分流线程池,避免互相饿死。
在团队同时维护构建产物 SFTP与AI 网关时,把远程 Mac当作统一宿主可降低上下文切换成本;但若自建多实例,值班手册与配置漂移成本会快速上升。
FAQ、内链与为何考虑托管远程 Mac
能否完全禁用子代理只保留主会话?
可以,但需评估工作流是否仍满足自动化范围;禁用后相关工具应从白名单移除以免误报。
多租户共享一台网关时如何隔离 allowAgents?
按实例拆分配置与 Unix 用户,结合加固文中的令牌与出站策略;避免混用同一份 openclaw.json。
总结:sessions_spawn 消失优先查模型工具能力与 allowAgents 嵌套;用 status、models status、doctor、logs 顺序压缩排障时间。
局限:自建多环境网关要持续跟进 schema 与安全基线;SFTPMAC 托管远程 Mac可把长驻网关与文件投递入口打包,让你专注模型与工作流而非深夜比对 JSON diff。
若要在稳定远程 Mac 上统一跑 OpenClaw 网关与 SFTP 交付,可了解 SFTPMAC 套餐与节点区域。
