OpenClaw 多智能体协作配置完全指南:从单兵作战到 AI 团队(2026)
为什么需要多智能体协作
单个 AI Agent 虽然强大,但在实际场景中往往力不从心:
- 写代码的 Agent 需要同时处理前端、后端和测试,上下文频繁切换
- 客服 Agent 需要同时对接多个渠道,各渠道话术风格不同
- 研究 Agent 既要搜索信息,又要分析数据,还要撰写报告
OpenClaw 在 v2026.3.22 版本中全面升级了多智能体架构,支持在一个 Gateway 进程中运行多个完全隔离的 Agent,还能让 Agent 之间相互协作。本文将从零开始,带你搭建一个完整的多智能体协作系统。
核心概念:三种 Agent 类型
在动手之前,先理解 OpenClaw 的三种 Agent 类型:
| 类型 | 生命周期 | 适用场景 | 典型例子 |
|---|---|---|---|
| Persistent Agent | 常驻运行 | 长期驻守某个频道或场景 | 客服 Bot、编程助手、运营助理 |
| Sub-Agent | 任务完成即归档 | 临时并行处理子任务 | 搜索信息、运行测试、生成报告 |
| ACP Agent | 按协议通信 | 跨平台、跨服务的标准化协作 | 微服务间的 Agent 调用 |
本文重点讲前两种,这是最常用的场景。
第一步:配置多个 Persistent Agent
基础配置
在 openclaw.json(或 settings.json)中定义多个 Agent:
{
"agents": {
"list": [
{
"id": "coordinator",
"name": "协调员",
"workspace": "~/.openclaw/workspace-coordinator",
"model": "claude-opus-4",
"systemPrompt": "你是团队协调员,负责分配任务和汇总结果。"
},
{
"id": "coder",
"name": "程序员",
"workspace": "~/.openclaw/workspace-coder",
"model": "claude-sonnet-4",
"systemPrompt": "你是一个高效的程序员,专注于代码实现和 Bug 修复。"
},
{
"id": "researcher",
"name": "研究员",
"workspace": "~/.openclaw/workspace-researcher",
"model": "gpt-5.4-mini",
"systemPrompt": "你是一个信息研究员,擅长搜索、对比和总结信息。"
}
]
}
}
为 Agent 绑定频道
每个 Agent 需要绑定到具体的消息频道才能接收消息:
{
"agents": {
"bindings": [
{
"agentId": "coordinator",
"channelType": "slack",
"channelId": "#general"
},
{
"agentId": "coder",
"channelType": "slack",
"channelId": "#dev"
},
{
"agentId": "researcher",
"channelType": "discord",
"channelId": "research-channel"
}
]
}
}
也可以用 CLI 快速添加:
# 添加一个新 Agent
openclaw agents add --id "writer" \
--workspace "~/.openclaw/workspace-writer" \
--model "claude-sonnet-4" \
--system-prompt "你是技术写手,擅长把复杂概念讲得简单易懂。"
# 查看所有 Agent
openclaw agents list
# 修改 Agent 配置
openclaw agents config set coder model gpt-5.4
第二步:配置 Sub-Agent 子智能体
Sub-Agent 是 OpenClaw 多智能体的精髓——让主 Agent 能够自主”派活”给后台工作单元。
全局配置
{
"agents": {
"defaults": {
"subagents": {
"maxConcurrent": 8,
"maxSpawnDepth": 2,
"maxChildrenPerAgent": 5,
"runTimeoutSeconds": 600,
"thinking": "medium",
"cleanup": "delete"
}
}
}
}
参数说明:
| 参数 | 默认值 | 说明 |
|---|---|---|
maxConcurrent | 8 | 最大并发子 Agent 数 |
maxSpawnDepth | 2 | 允许的嵌套深度(0=主 Agent,1=子 Agent,2=孙 Agent) |
maxChildrenPerAgent | 5 | 每个 Agent 最多创建的子 Agent 数 |
runTimeoutSeconds | 600 | 超时自动终止(秒),0 表示不限 |
thinking | medium | 子 Agent 的思考级别(none/low/medium/high) |
cleanup | delete | 任务完成后处理方式(delete 清除 / keep 保留) |
层级限制
OpenClaw 对子 Agent 的嵌套有明确限制,避免无限递归:
Depth 0(主 Agent) → 始终可以创建子 Agent
↓ spawn
Depth 1(子 Agent) → 仅当 maxSpawnDepth ≥ 2 时可创建孙 Agent
↓ spawn
Depth 2(孙 Agent) → 永远不能再创建子 Agent(纯执行者)
手动触发子 Agent
通过 /subagents 命令管理:
# 派生一个子 Agent 执行任务
/subagents spawn "搜索最近一周关于 Claude Opus 4 的评测文章,整理成表格"
# 查看所有子 Agent 状态
/subagents list
# 查看某个子 Agent 的日志
/subagents log <agent-id>
# 向运行中的子 Agent 发送消息
/subagents send <agent-id> "重点关注性能对比数据"
# 停止子 Agent
/subagents stop <agent-id>
跨 Agent 派生(Cross-Agent Spawning)
一个 Agent 可以在另一个 Agent 的上下文中创建子 Agent,但需要显式授权:
{
"agents": {
"list": [
{
"id": "coordinator",
"subagents": {
"allowAgents": ["coder", "researcher", "writer"]
}
},
{
"id": "coder",
"subagents": {
"allowAgents": ["coordinator"]
}
}
]
}
}
这样 coordinator 可以在 coder、researcher、writer 的工作区中派生子 Agent,子 Agent 将继承目标 Agent 的工具集、认证配置和工作区权限。
第三步:为不同 Agent 分配最优模型
多智能体的核心优势之一是按任务分配模型——复杂推理用旗舰模型,简单任务用轻量模型,大幅降低成本。
模型分配策略
{
"agents": {
"list": [
{
"id": "architect",
"model": "claude-opus-4",
"description": "系统架构设计,需要最强推理能力"
},
{
"id": "coder",
"model": "claude-sonnet-4",
"description": "日常编码,速度与质量的平衡"
},
{
"id": "reviewer",
"model": "gpt-5.4-mini",
"description": "代码审查,快速定位问题"
},
{
"id": "translator",
"model": "gemini-3-pro",
"description": "多语言翻译,Google 模型多语言表现更好"
},
{
"id": "data-analyst",
"model": "deepseek-v4",
"description": "数据分析,性价比最高"
}
]
}
}
通过聚合平台统一管理多模型
如果每个模型都单独配置 API Key,管理成本很高。用 Ofox 等 API 聚合平台可以一个 Key 接入所有模型:
{
"providers": {
"ofox": {
"type": "openai",
"baseUrl": "https://api.ofox.ai/v1",
"apiKey": "sk-your-ofox-api-key"
}
},
"agents": {
"list": [
{
"id": "architect",
"provider": "ofox",
"model": "anthropic/claude-opus-4"
},
{
"id": "coder",
"provider": "ofox",
"model": "anthropic/claude-sonnet-4"
},
{
"id": "reviewer",
"provider": "ofox",
"model": "gpt-5.4-mini"
}
]
}
}
通过 OpenAI 兼容接口调用非 OpenAI 模型时,model 字段需要加 provider/ 前缀(如 anthropic/claude-opus-4),OpenAI 模型(如 gpt-5.4-mini)不需要前缀。
Sub-Agent 的模型覆盖
主 Agent 派生子 Agent 时,可以临时指定不同的模型:
# 用更强的模型执行复杂子任务
/subagents spawn --model claude-opus-4 "分析这段代码的安全漏洞"
# 用轻量模型执行简单子任务
/subagents spawn --model gpt-5.4-mini "把这个函数的注释翻译成英文"
第四步:实战——搭建研发团队
下面用一个完整的例子,搭建一个 3 人研发团队:
完整配置文件
{
"providers": {
"ofox": {
"type": "openai",
"baseUrl": "https://api.ofox.ai/v1",
"apiKey": "sk-your-ofox-api-key"
}
},
"agents": {
"defaults": {
"provider": "ofox",
"subagents": {
"maxConcurrent": 6,
"maxSpawnDepth": 2,
"runTimeoutSeconds": 300,
"thinking": "medium"
}
},
"list": [
{
"id": "pm",
"name": "产品经理",
"model": "anthropic/claude-opus-4",
"workspace": "~/.openclaw/team/pm",
"systemPrompt": "你是产品经理。收到需求后,拆解为具体的技术任务,分配给 coder 和 tester。输出格式:任务列表 + 验收标准。",
"subagents": {
"allowAgents": ["coder", "tester"]
}
},
{
"id": "coder",
"name": "开发工程师",
"model": "anthropic/claude-sonnet-4",
"workspace": "~/.openclaw/team/coder",
"systemPrompt": "你是全栈开发工程师。接到任务后直接编码实现,代码写完后通知 pm。遇到不确定的需求细节,问 pm 确认。",
"subagents": {
"allowAgents": ["pm"]
},
"tools": ["bash", "read", "write", "edit", "glob", "grep"]
},
{
"id": "tester",
"name": "测试工程师",
"model": "gpt-5.4-mini",
"workspace": "~/.openclaw/team/tester",
"systemPrompt": "你是测试工程师。收到代码后编写测试用例并执行,发现 Bug 直接反馈给 coder,测试通过后通知 pm。",
"subagents": {
"allowAgents": ["pm", "coder"]
},
"tools": ["bash", "read", "glob", "grep"]
}
],
"bindings": [
{
"agentId": "pm",
"channelType": "slack",
"channelId": "#product"
},
{
"agentId": "coder",
"channelType": "slack",
"channelId": "#dev"
},
{
"agentId": "tester",
"channelType": "slack",
"channelId": "#qa"
}
]
}
}
工作流演示
- 在
#product频道对 PM Agent 说:
开发一个用户注册 API,要求:
- POST /api/register
- 接收 email 和 password
- 密码至少 8 位,包含大小写和数字
- 返回 JWT token
- 用 Express + TypeScript
- PM Agent 拆解任务后,自动 spawn 子 Agent 到 coder 工作区:
→ [PM] 任务已拆解,正在分配给开发...
→ [PM → Coder Sub-Agent] 实现用户注册 API(附详细规格)
→ [PM → Tester Sub-Agent] 准备注册 API 的测试用例(附验收标准)
- Coder 和 Tester 的子 Agent 并行工作,完成后结果自动汇报给 PM。
常见问题排查
1. Sub-Agent 权限拒绝
Error: sessions_spawn permission denied for agent "coder"
原因:目标 Agent 的 allowAgents 没有包含请求者。
解决:在目标 Agent 的配置中添加授权:
{
"id": "coder",
"subagents": {
"allowAgents": ["pm", "coordinator"]
}
}
或者用通配符允许所有 Agent:
{
"subagents": {
"allowAgents": ["*"]
}
}
2. 子 Agent 超时被杀
Error: Sub-agent exceeded runTimeoutSeconds (600s)
解决:增大超时时间,或在 spawn 时单独指定:
/subagents spawn --timeout 1200 "执行完整的集成测试套件"
3. 内存不足
多个 Agent 同时运行会占用大量内存。建议:
- 8GB 内存:最多 3-5 个 Persistent Agent
- 16GB 内存:可支撑 8-10 个 Agent
- 及时清理不需要的子 Agent:
/subagents stop --all
4. Agent 之间消息丢失
原因:跨 Agent 通信走的是 sessions_send,不是 sessions_spawn。
区别:
sessions_spawn:创建新的子 Agent 会话sessions_send:向已存在的 Agent 会话发送消息
确保用对了命令:
# 向已有 Agent 发消息(不创建新会话)
/subagents send <agent-id> "你的消息"
# 创建新的子 Agent(新会话)
/subagents spawn "任务描述"
成本优化:多模型分层策略
合理分配模型,可以在不牺牲质量的前提下大幅降低 API 开销:
| 任务类型 | 推荐模型 | 价格参考 | 说明 |
|---|---|---|---|
| 架构设计 / 复杂推理 | Claude Opus 4 | $15 / 1M tokens | 需要最强推理能力 |
| 日常编码 / 重构 | Claude Sonnet 4 | $3 / 1M tokens | 速度与质量平衡 |
| 代码审查 / 简单任务 | GPT-5.4 Mini | $0.4 / 1M tokens | 快速响应,成本极低 |
| 信息搜索 / 摘要 | Gemini 3.1 Flash | $0.15 / 1M tokens | 超低成本,大上下文窗口 |
| 数据分析 | DeepSeek V4 | $0.27 / 1M tokens | 数学推理强,性价比高 |
一个典型的研发团队(3 Agent),每天处理 50 个任务,月成本大约在 $30-80 之间,远低于为每个 Agent 都使用旗舰模型的方案。
总结
OpenClaw 多智能体的三个核心能力:Persistent Agent 常驻不同场景各司其职;Sub-Agent 自主拆解任务并行执行;跨 Agent 派生让 Agent 之间互相调用对方的能力。配合多模型分配,每个 Agent 用最合适的模型而不是最贵的。


