Agent 编排要落地,关键是把审查子任务放进独立会话:sessions_spawn 配合 context: fork 继承必要转录又不拖垮主对话;网关 Bearer、深度上限与工具面一并收口,远程 Mac 才能准生产跑通宵。

读完多 Agent 网关路由篇后,本文聚焦子代理隔离:在远程 Mac 对齐 2026.4.x 发行说明中的 spawn 上下文选项,完成代码审查并用固定字段回传失败摘要

适用场景 · 隔离边界 · 复现步骤 · 回传模板 · 网关令牌 · 可引用句 · 转化

适用场景与痛点

  • 主会话污染:大 diff 与工具报错写进同一转录会拖累后续路由与成本。
  • 脉络取舍:审查要 PR 背景但不要无关指令史——用 fork 继承「当前请求方」片段,而非整段主记忆。
  • 鉴权可见性:Session 工具若被网关默认拒绝,spawn 会「消失」,须与租户 scope 一起设计。

适合:并行审分支、依赖/插件扫描、把可审计摘要交给 CI 或负责人,而不是整段聊天原文。

隔离边界怎么划

维度 主编排会话 子代理(fork) 子代理(isolated)
转录继承 保留路由与产品决策 继承与当前请求相关的片段,便于对齐 PR 空白起点,阻断无关或敏感历史
典型用途 分派、合并子结果、对外回复 需上下文的审查与 diff 解读 沙箱扫描、不可信输入实验
风险 限制 spawn 深度与 allowAgents 子节点禁递归 spawn 与高权写入 暴露最低上下文,仍受工具白名单约束

最小可复现步骤(2026.4.x)

安装 Node.js 22+,执行 node -v npm i -g [email protected](或锁定 2026.4.x),openclaw --version 对照说明。openclaw doctor,修正网关、证书、目录权限。 在 Dashboard 为租户签发短效 Bearer;若用 HTTP tools/invoke 触发 spawn,网关须将 sessions_spawn 最小放行 编排代理启用 Session 工具族,设置 maxSpawnDepthallowAgents;审查任务调用 sessions_spawn,按需 context: "fork"task 写明 PR、路径范围与禁止行为。 子轮次用 sessions_yield 或约定回调交结构化摘要,勿把整段转录灌回父会话。

失败摘要回传模板(JSON 信封)

父节点只合并字段,不保存完整提示词或工具 payload,便于稽核与对账:

{ "stage": "code_review", "result": "pass | fail | partial", "blocking_issues": ["阻断合并项"], "non_blocking": ["建议修正"], "tool_error_class": "auth | timeout | schema | upstream", "retry_hint_sec": 0, "child_session_key": "<spawn 返回键>", "correlation_id": "<与网关日志对齐>" }

与网关令牌的关系

对外仍用同一租户 Bearer打网关;子代理走 subagent lane,实际权限由网关与后续 sessions.patch 收成叶子行为,避免误升到所有者 scope。叶子代理应拒绝 gateway 类高权工具与再次 sessions_spawn,只保留审查所需的只读/静态分析工具。外部自动化若走 CLI,可参考 openclaw agent --spawn 获得零上下文串染的一次性子会话,与编排器内 spawn 互补而非互换。

可引用信息(签核用)

  • 官方 Session 工具将 sessions_spawn 标为非阻塞,返回 runIdchildSessionKey,便于网关追踪串联。
  • forkisolated 的取舍应写入 Runbook,并随 PR 模板迭代。
  • 编排落地靠深度上限工具 deny 列表,不单靠换小模型;建议与工具重试与 Schema 篇一起演练。

转化

在笔记本验证 spawn 与摘要链路后,把相同配置迁到常驻远程 Mac做浸泡,对齐长时审查与网关日志轮转。无需登录即可打开定价购买页;架构说明见帮助中心

小结:2026.4.x 为锚,用 Node 22openclaw doctor 与网关令牌收口,把代码审查派进带 fork/isolated 边界的子会话,用 JSON 信封回传失败摘要,完成可签核的 Agent 编排落地。