openclaw
搭建openclaw的多agent
本文档使用 MrDoc 发布
-
+
搭建openclaw的多agent
将多个独立的 Telegram Bot 组建成一个分工协作的 Agent 团队。通过合理的架构配置,你可以让不同的 Bot 扮演不同的角色(如主脑、程序员、研究员等),实现复杂任务的自动化流转。 提前设计好框架,如下 【架构设计】 一主三副,各司其职: • 🦞 龙虾总管 = 调度中枢,监听群消息,分发任务 • 📊 大饼 = 市场分析 + 每日晨报(定时稳定) • 🎨 冰冰 = 推文润色 + PPT + 信息图(按需创作) • 💻 姨太 = 代码 + 量化 + 自动化(技术执行) 每个 Agent → 独立 TG Bot → 独立 workspace → 共享 skills 库 【TG 群组配置核心步骤】 1. @BotFather 创建 4 个独立 Bot,拿到 4 个 token,再对每个子 Bot 执行 /setprivacy → 选 Disable,让 Bot 能读取群内所有消息(否则只能读到 @ 自己的消息) 2. openclaw.json 里配置 主要是要修改channels 部分,再创建agents,绑定 bindings,最后进行微调,关键配置如下: ``` { "agents": { "list": [ { "id": "main", "workspace": "~/.openclaw/workspace-main", "agentDir": "~/.openclaw/agents/main/agent" }, { "id": "coder", "workspace": "~/.openclaw/workspace-coder", "agentDir": "~/.openclaw/agents/coder/agent", "tools": { "deny": ["browser", "nodes"] } }, { "id": "researcher", "workspace": "~/.openclaw/workspace-researcher", "agentDir": "~/.openclaw/agents/researcher/agent", "tools": { "deny": ["exec", "write", "edit"] } }, { "id": "writer", "workspace": "~/.openclaw/workspace-writer", "agentDir": "~/.openclaw/agents/writer/agent", "tools": { "deny": ["exec", "browser", "nodes"] } } ] }, "session": { "dmScope": "main" }, "tools": { "agentToAgent": { "enabled": true, "allow": ["main", "coder", "researcher", "writer"] } }, "bindings": [ { "agentId": "main", "match": { "channel": "telegram", "accountId": "main" } }, { "agentId": "coder", "match": { "channel": "telegram", "accountId": "coder" } }, { "agentId": "researcher", "match": { "channel": "telegram", "accountId": "researcher" } }, { "agentId": "writer", "match": { "channel": "telegram", "accountId": "writer" } } ], "channels": { "telegram": { "accounts": { "main": { "botToken": "111111:TOKEN_MAIN", "dmPolicy": "pairing" }, "coder": { "botToken": "222222:TOKEN_CODER", "dmPolicy": "allowlist", "commands": { "native": false, "nativeSkills": false }, "allowFrom": ["tg:你的数字ID"] }, "researcher": { "botToken": "333333:TOKEN_RESEARCHER", "dmPolicy": "allowlist", "commands": { "native": false, "nativeSkills": false }, "allowFrom": ["tg:你的数字ID"] }, "writer": { "botToken": "444444:TOKEN_WRITER", "dmPolicy": "allowlist", "commands": { "native": false, "nativeSkills": false }, "allowFrom": ["tg:你的数字ID"] } } } } } ``` 权限设计:主机器人设 requireMention: false(可主动回复群消息),子机器人设 requireMention: true(被艾特才回复) userid和群id可以把 4 个 Bot 全部拉进同一个群,再用 TG @userinfobot 去获取该群组 ID 3. 配置各 Agent 的 SOUL.md 为确保团队成员各司其职,你需要为它们设定人设(SOUL.md)。 主脑 SOUL.md(放在 workspace/SOUL.md): **markdown** ```markdown # SOUL.md - 主脑 你是团队的协调者和对外入口。 ## 职责 - 理解用户意图,判断任务复杂度 - 简单任务直接自己处理,不必每次派发 - 编码类 → 派给 coder(sessions_send) - 调研/搜索类 → 派给 researcher - 写作/文案类 → 派给 writer - 收集专才结果,整合后回复用户(不是简单转发) ## 原则 - 派发任务时说清楚背景和期望输出格式 - 等专才完成后再整合,不要催 - 汇总时做真正的整合,给用户一个完整的答案 ``` 专才 SOUL.md(放在 workspace-各目录/SOUL.md 或各自 agentDir 下): **markdown** ```markdown # SOUL.md - 专才 你是团队的专业成员,可能被主脑派发任务,也可能被用户直接联系。 ## 共享记忆规范 - 读 MEMORY.md 了解团队整体上下文 - 写记忆时标明身份,格式:`[coder] 今天完成了...` - 不要覆盖其他 agent 写的记忆条目 ## 原则 - 专注自己的领域 - 任务完成后,清晰地返回结果 - 感知到其他专才已经做过的工作,避免重复 ``` 4. 启验证 > 使用以下命令确保所有配置生效并正常运行: **bash** ```bash # 重启 gateway 使配置生效 openclaw gateway restart # 验证 agent 列表和 bindings openclaw agents list --bindings # 验证各 channel 状态 openclaw channels status --probe # 实时日志(调试用) openclaw logs --follow ``` 【💥 最容易踩的坑 TOP 5】 坑 1:代码尽量喂给主机器人,让他自己修改,防止你手动改配置文件,遇到一些空格类型错误导致整体报错,每次修改 Json 文件前,务必备份,出现错误可以及时回复!! 坑 2:私聊调教 ≠ 群聊记忆 同一个 Agent 的私聊/群聊/cron 是完全独立的 session 在私聊调教好的格式,群里完全不知道 → 解决:把所有规范写进 SOUL.md,每个 session 启动都加载,实在不行让私聊机器人出一份教程,再发进群聊里。 坑 3:子 Agent 默认不能互相通信 龙虾总管想给大饼发调度指令 → 报 forbidden 需要在 openclaw.json 开启: **markdown** ```markdown "tools": { "sessions": { "visibility": "all" }, "agentToAgent": { "enabled": true } } ``` 坑 4:Gateway 重启 = 缓存清空 = 高成本 重启后所有 170k tokens 以原价重新加载 → 避免频繁重启,改配置务必一次到位 坑 5:skills 目录最好设置为软链接共享,自然语言告诉主机器人,让他设置装一,其他机器人就自动都有,如果子机器人说没有,让主机器人写个教程教子机器人即可。 坑 6:Subagent 容易超时 因为主机器人调取 Subagent 的默认响应时间可能只有几秒,时间不够 Subagent 完成任务,结果主机器人就以为没有响应, 正确做法:让主机器人把和 Subagent 的等待响应时间设置长一些。 ─── 【多 Agent 协作省 Token 的核心:STATE.yaml 模式】 错误做法: 龙虾总管把大饼的研究结果(2000 字)原文转发给冰冰 → 每份内容被读 3 次,Token 翻 3 倍 正确做法: **markdown** ```markdown 龙虾总管建项目目录 /tmp/oc-projects/{项目名}/ └── STATE.yaml ← 任务状态清单 └── research.md ← 大饼写入研究结果 └── output.pptx ← 冰冰生成成果 龙虾总管 → sessions_send 给大饼:只传任务描述 + 目录路径 大饼写完 research.md → 更新 STATE.yaml → 通知龙虾总管 龙虾总管 → sessions_send 给冰冰:直接读那个目录 冰冰读文件 → 做PPT → 更新 STATE.yaml ``` 龙虾总管全程只传路径,省 Token 80% ─── 【最终成果】 ✅ 4 个 Bot 同时在线于同一 TG 群 ✅ 龙虾总管调度,子 Agent 独立完成任务 ✅ STATE.yaml 去中心化协作,省 Token 80% 彩蛋: 可以把以下案例文档发到群聊里,让主机器人学习借鉴,快速理解多 Agent 协作模式: [https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/multi-agent-team.md](https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/multi-agent-team.md) [https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/autonomous-project-management.md](https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/autonomous-project-management.md) [https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/content-factory.md](https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/content-factory.md) [https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/overnight-mini-app-builder.md](https://github.com/hesamsheikh/awesome-openclaw-usecases/blob/main/usecases/overnight-mini-app-builder.md)
admin
2026年3月8日 16:41
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码