需围绕角色定义、独立配置、通信路由与权限控制四方面构建openclaw多agent团队:一、创建coordinator/coder/researcher三类agent并隔离工作空间;二、通过agent.md固化各角色行为边界;三、在openclaw.json中注册agent、启用受限agenttoagent通信、绑定用户入口至coordinator;四、为子agent设deny agenttoagent权限,仅coordinator允许调用;五、通过telegram指令验证“用户→coordinator→coder→coordinator→用户”闭环。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望在OpenClaw中构建一个具备明确分工、稳定协作能力的多Agent团队,则需围绕角色定义、独立配置、通信路由与权限控制四方面展开。以下是搭建该协作体系的具体步骤:
一、创建职责分明的Agent成员
每个Agent必须拥有唯一ID与专属定位,避免功能重叠或职责模糊。通过CLI命令初始化不同角色的智能体,确保其工作空间、模型与技能集相互隔离。
1、执行命令添加编排者Agent(如名为coordinator):
openclaw agents add coordinator
2、执行命令添加执行者Agent(如名为coder):
openclaw agents add coder
3、执行命令添加另一类执行者Agent(如名为researcher):
openclaw agents add researcher
4、为每个Agent指定独立工作目录,防止记忆与文件交叉污染:
--workspace ~/.openclaw/workspace-coordinator
二、定义各Agent的角色灵魂(agent.md)
通过修改各自目录下的agent.md文件,固化其行为边界与协作语言规范,这是实现“不越界、不抢答、不废话”的关键约束。
1、进入coordinator/agent.md,写入:
"你是一个协调官。只接收用户原始指令,拆解为子任务,@coder或@researcher分配执行,禁止自行编码或调研,最终整合结果输出。"
2、进入coder/agent.md,写入:
"你是一个代码专家。仅响应@coder的调用,直接输出可运行代码、修复方案或技术实现,不解释原理,不参与非编程类讨论。"
3、进入researcher/agent.md,写入:
"你是一个深度研究员。仅响应@researcher的调用,提供结构化分析、竞品对比、API文档摘要等信息,拒绝生成文案或写代码。"
4、保存全部agent.md后,所有Agent将严格按此身份描述响应,不再出现角色漂移
三、配置openclaw.json实现精准路由与互信通信
该文件是多Agent协同的中枢神经,需同时完成Agent注册、通道绑定、跨Agent通信授权三项配置,缺一不可。
1、在agents.list中声明全部Agent及其模型:
{"id":"coordinator","model":"gemini-1.5-pro"},{"id":"coder","model":"groq-llama-3"},{"id":"researcher","model":"claude-3-haiku"}
2、在tools.agentToAgent节点中启用通信并限定范围:
"enabled": true,
"allow": ["coder", "researcher"],
"maxRecursion": 2
3、在bindings中将用户消息入口(如Telegram私聊)固定指向coordinator:
{"agentId":"coordinator","chatId":"your-personal-id"}
4、务必删除任何未声明在allow列表中的Agent ID,否则将触发通信拒绝错误
四、设置子Agent权限隔离(deny/allow机制)
防止执行者Agent擅自响应用户或反向调度编排者,必须通过显式权限策略建立主从关系,确保流程单向可控。
1、为coder和researcher分别添加deny节点:
"tools": {"deny": ["agentToAgent"]}
2、为coordinator添加allow agent节点:
"tools": {"allow": ["agentToAgent"]}
3、验证权限生效:向coder直接发送“写个Python脚本”,应返回“我仅响应协调官的调用”类提示
4、deny节点必须存在于所有子Agent配置中,否则将破坏协作秩序
五、启动并验证协作闭环
启动服务后,通过真实消息触发完整链路,观察是否形成“用户→coordinator→coder→coordinator→用户”的自动流转,而非跳步或卡死。
1、在Telegram中向个人ID发送:“用Python生成一个斐波那契数列前20项”
2、观察coordinator是否输出类似:“已将任务分配给@coder,请稍候”
3、检查coder是否在后台执行代码生成,并将结果回传至coordinator
4、确认最终回复是否为纯代码块,且无额外解释或追问
5、若任意环节缺失回应,需立即检查openclaw.json中bindings.chatId与实际Telegram ID是否完全一致










