本文记录了我从零开始配置 OpenClaw 多 Agent 多 Discord 频道的完整过程,基于最新的 OpenClaw 2026.2.22-2 版本,包含实际配置文件和踩坑实录。

一、背景与需求
1.1 为什么要多 Agent?
当 AI Agent 的应用场景越来越丰富时,单一 Agent 很难同时胜任多种专业任务:
- 编程任务需要代码能力和技术深度
- 内容创作需要写作技巧和文案感觉
- 健康管理需要健身知识和营养学背景
- 投资分析需要金融市场理解和数据敏感性
让每个 Agent 专注一个领域,比让一个 Agent 什么都懂但什么都不精要好得多。
1.2 为什么要多 Discord 频道?
在 Discord 场景中,不同的频道有不同的氛围和用途:
| 频道 |
用途 |
对应 Agent |
| #🎯-指挥台 |
主沟通入口,任务分发 |
Cypher (主控) |
| #💻-编程 |
技术讨论、代码分享 |
Forge (开发专家) |
| #✍️-创作 |
文章写作、内容策划 |
Muse (创作专家) |
| #💪-健康 |
健身打卡、饮食记录 |
Vitality (健康专家) |
| #📈-投资 |
股市分析、交易记录 |
Sigma (投资顾问) |
每个频道有独立的 Agent 响应,用户体验更清晰。
1.3 最终架构
1 2 3 4 5 6 7 8
| 📋 指挥中心 └── #🎯-指挥台 → Cypher(调度中枢)
🛠️ 工作区 ├── #💻-编程 → Forge(开发专家) ├── #✍️-创作 → Muse(创作专家) ├── #💪-健康 → Vitality(健康专家) └── #📈-投资 → Sigma(投资顾问)
|
Cypher 作为总调度,可以在 #🎯-指挥台 接收任务,然后委托给对应的专家 Agent。

二、Discord 端准备工作
2.1 创建 Discord 服务器
如果你还没有 Discord 服务器,需要先创建一个:
- 打开 Discord(网页版或客户端)
- 点击左侧栏的「+」按钮
- 选择「创建我自己的服务器」
- 选择「仅供我和我的朋友使用」
- 输入服务器名称(如「AI 指挥中心」)
- 点击「创建」
2.2 创建频道结构
在服务器中创建以下频道结构:
1 2 3 4 5 6 7 8
| 📋 指挥中心 └── #🎯-指挥台 (ID: 1474332206905298955) → Cypher
🛠️ 工作区 ├── #💻-编程 (ID: 1474332097371046010) → Forge ├── #✍️-创作 (ID: 1474331895859777576) → Muse ├── #💪-健康 (ID: 1474331960770953334) → Vitality └── #📈-投资 (ID: 1474332013673578592) → Sigma
|
创建频道步骤:
- 右键服务器名称 → 创建频道
- 选择「文字频道」
- 输入频道名称(可包含 Emoji)
- 点击「创建频道」
2.3 获取 Guild ID 和 Channel ID
配置 Bot 需要服务器 ID 和频道 ID,获取方法:
开启开发者模式:
- 点击左下角「用户设置」(齿轮图标)
- 选择「高级」
- 开启「开发者模式」
复制服务器 ID(Guild ID):
- 右键服务器名称
- 点击「复制服务器 ID」
复制频道 ID:
- 右键频道名称
- 点击「复制频道 ID」
2.4 创建 5 个 Discord Bot
在 Discord Developer Portal 创建 5 个 Bot:
步骤 1:创建应用
- 访问 https://discord.com/developers/applications
- 点击「New Application」
- 输入应用名称(如「Cypher Bot」)
- 点击「Create」
步骤 2:获取 Bot Token
- 进入左侧「Bot」选项卡
- 点击「Reset Token」
- 复制 Token(只能查看一次,务必保存好)

步骤 3:开启 Privileged Gateway Intents
在同一页面,开启以下三个 Intent:
- ✅ Presence Intent
- ✅ Server Members Intent
- ✅ Message Content Intent(必需,否则无法读取消息内容)

步骤 4:邀请 Bot 加入服务器
- 进入左侧「OAuth2」→「URL Generator」
- 在「Scopes」中勾选「bot」
- 在「Bot Permissions」中勾选:
- Send Messages
- Read Messages/View Channels
- Use Slash Commands
- Embed Links
- Attach Files
- Read Message History
- Add Reactions
- 复制生成的 URL,在浏览器中打开
- 选择你的服务器,点击「继续」
- 确认权限后点击「授权」

重复以上步骤,创建 5 个 Bot:
| Bot 名称 |
用途 |
Token 占位符 |
| Cypher Bot |
主控 Bot |
YOUR_CYPHER_BOT_TOKEN |
| Forge Bot |
开发专家 |
YOUR_FORGE_BOT_TOKEN |
| Muse Bot |
创作专家 |
YOUR_MUSE_BOT_TOKEN |
| Vitality Bot |
健康专家 |
YOUR_VITALITY_BOT_TOKEN |
| Sigma Bot |
投资顾问 |
YOUR_SIGMA_BOT_TOKEN |
2.5 设置频道权限
为了安全起见,建议设置每个频道只允许对应的 Bot 发送消息:
设置步骤(以 #💻-编程 为例):
- 右键频道 → 频道设置
- 选择「权限」选项卡
- 点击「+」添加成员
- 选择「Forge Bot」
- 设置权限:
- 将 @everyone 的「发送消息」设为 ❌
重复以上操作,为每个频道设置对应 Bot 的专属权限。
三、配置多 Agent 工作区
3.1 创建 Agent 工作区
为每个 Agent 创建独立的工作区:
1 2 3 4
| openclaw agents add forge --workspace ~/.openclaw/workspace-forge openclaw agents add muse --workspace ~/.openclaw/workspace-muse openclaw agents add vitality --workspace ~/.openclaw/workspace-vitality openclaw agents add sigma --workspace ~/.openclaw/workspace-sigma
|
这会创建对应的目录结构:
1 2 3 4 5 6 7 8 9 10 11 12
| ~/.openclaw/ ├── workspace/ # Cypher (main) 主工作区 ├── workspace-forge/ # Forge 工作区 ├── workspace-muse/ # Muse 工作区 ├── workspace-vitality/ # Vitality 工作区 ├── workspace-sigma/ # Sigma 工作区 └── agents/ ├── main/ ├── forge/ ├── muse/ ├── vitality/ └── sigma/
|
3.2 配置多 Discord Bot
编辑 ~/.openclaw/openclaw.json,在 channels.discord 中配置多个账号:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
| { "channels": { "discord": { "enabled": true, "groupPolicy": "allowlist", "streaming": "block", "accounts": { "default": { "token": "YOUR_CYPHER_BOT_TOKEN", "groupPolicy": "allowlist", "blockStreaming": true, "streaming": "block", "guilds": { "YOUR_GUILD_ID": { "slug": "YourServer", "channels": { "🎯-指挥台": { "allow": true, "requireMention": false, "autoThread": true }, "📋-归档": { "allow": true, "requireMention": false, "autoThread": true } } } } }, "forge": { "token": "YOUR_FORGE_BOT_TOKEN", "groupPolicy": "allowlist", "blockStreaming": true, "streaming": "block", "guilds": { "YOUR_GUILD_ID": { "channels": { "1474332097371046010": { "allow": true, "requireMention": false, "autoThread": false } } } } }, "muse": { "token": "YOUR_MUSE_BOT_TOKEN", "groupPolicy": "allowlist", "blockStreaming": true, "streaming": "block", "guilds": { "YOUR_GUILD_ID": { "channels": { "1474331895859777576": { "allow": true, "requireMention": false, "autoThread": false } } } } }, "vitality": { "token": "YOUR_VITALITY_BOT_TOKEN", "groupPolicy": "allowlist", "blockStreaming": true, "streaming": "block", "guilds": { "YOUR_GUILD_ID": { "channels": { "1474331960770953334": { "allow": true, "requireMention": false, "autoThread": false } } } } }, "sigma": { "token": "YOUR_SIGMA_BOT_TOKEN", "groupPolicy": "allowlist", "blockStreaming": true, "streaming": "block", "guilds": { "YOUR_GUILD_ID": { "channels": { "1474332013673578592": { "allow": true, "requireMention": false, "autoThread": false } } } } } } } } }
|
关键配置说明:
| 字段 |
说明 |
accounts.default |
Cypher 主 Bot,使用 default 账号名 |
accounts.forge |
Forge 专家 Bot |
guilds |
服务器配置,用服务器 ID 作为 key |
channels |
频道权限配置,可用频道名或频道 ID |
allow: true |
允许该频道 |
requireMention: false |
不需要 @Bot 就能触发 |
autoThread: true |
自动创建线程回复 |
blockStreaming: true |
阻塞式流式输出(推荐) |
⚠️ 注意:建议使用频道数字 ID 而非名称,避免权限审计受限。
3.3 配置 Agent 路由绑定
在 openclaw.json 的 bindings 中配置路由规则:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| { "bindings": [ { "agentId": "main", "match": { "channel": "discord", "accountId": "default" } }, { "agentId": "forge", "match": { "channel": "discord", "accountId": "forge" } }, { "agentId": "muse", "match": { "channel": "discord", "accountId": "muse" } }, { "agentId": "vitality", "match": { "channel": "discord", "accountId": "vitality" } }, { "agentId": "sigma", "match": { "channel": "discord", "accountId": "sigma" } } ] }
|
路由逻辑:
- 当 Cypher Bot (
default) 收到消息 → 路由给 main Agent
- 当 Forge Bot 收到消息 → 路由给
forge Agent
- 以此类推…
四、Agent 间通信配置(重要:避坑指南)
4.1 ⚠️ 踩坑实录:配置位置错误导致 Gateway 启动失败
在配置 Agent 间通信时,我犯了一个致命错误:把 subagents 配置放在了 openclaw.json 的根级别。
❌ 错误配置(导致 Gateway 启动失败):
1 2 3 4 5
| { "subagents": { "allowAgents": ["forge", "muse", "vitality", "sigma"] } }
|
✅ 正确配置位置:subagents.allowAgents 必须在 agents.list[].subagents 下,每个 Agent 都需要单独配置:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| { "agents": { "list": [ { "id": "main", "subagents": { "allowAgents": ["main", "forge", "muse", "vitality", "sigma"] } }, { "id": "forge", "name": "forge", "workspace": "/root/.openclaw/workspace-forge", "agentDir": "/root/.openclaw/agents/forge/agent", "subagents": { "allowAgents": ["main", "forge", "muse", "vitality", "sigma"] } }, { "id": "muse", "name": "muse", "workspace": "/root/.openclaw/workspace-muse", "agentDir": "/root/.openclaw/agents/muse/agent", "subagents": { "allowAgents": ["main", "forge", "muse", "vitality", "sigma"] } }, { "id": "vitality", "name": "vitality", "workspace": "/root/.openclaw/workspace-vitality", "agentDir": "/root/.openclaw/agents/vitality/agent", "subagents": { "allowAgents": ["main", "forge", "muse", "vitality", "sigma"] } }, { "id": "sigma", "name": "sigma", "workspace": "/root/.openclaw/workspace-sigma", "agentDir": "/root/.openclaw/agents/sigma/agent", "subagents": { "allowAgents": ["main", "forge", "muse", "vitality", "sigma"] } } ] } }
|
踩坑总结:
- ❌ 不要把
subagents 放在根级别
- ✅ 必须在每个 Agent 的
agents.list[] 条目下添加
- ✅ 每个 Agent 的
allowAgents 要包含所有需要通信的 Agent ID(包括自己)
- 🔧 修改后必须重启 Gateway:
openclaw gateway restart
4.2 启用 Agent-to-Agent 通信
在 openclaw.json 中添加 tools.agentToAgent 配置:
1 2 3 4 5 6 7 8
| { "tools": { "agentToAgent": { "enabled": true, "allow": ["main", "forge", "muse", "vitality", "sigma"] } } }
|
注意:这是用于 sessions_send 的跨 Agent 通信,和上面的 subagents 配置是互补的。
4.3 验证配置是否生效
使用 CLI 检查允许的 Agent 列表:
输出应显示所有 5 个 Agent:
1 2 3 4 5 6 7 8 9 10 11
| { "requester": "main", "allowAny": false, "agents": [ { "id": "main", "configured": true }, { "id": "forge", "name": "forge", "configured": true }, { "id": "muse", "name": "muse", "configured": true }, { "id": "sigma", "name": "sigma", "configured": true }, { "id": "vitality", "name": "vitality", "configured": true } ] }
|
如果只看到 main,说明配置未生效,请检查配置位置。
4.4 测试 Agent 间通信
在配置完成后,可以通过 Cypher 测试向其他 Agent 发送消息:
1 2 3
| $ openclaw sessions_send \ --agent-id muse \ --task "写一篇关于 AI Agent 的短文"
|
或使用工具调用:
1 2 3 4 5 6 7
| { "tool": "sessions_send", "params": { "sessionKey": "muse", "message": "测试 Agent 通信" } }
|
4.5 Cypher 的调度逻辑
在 Cypher 的 SOUL.md 中定义工作流程:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| ## 工作流程
1. **收到 Channing 的请求后,先判断任务类型** 2. **简单闲聊和问答**:直接回复 3. **专业任务**:使用 `sessions_send` 委托给对应专家,并告知 Channing 已委托 4. **跨领域任务**:协调多个专家,汇总结果
## 任务委托规则
- **编程/技术问题** → `sessions_send` 给 `forge` - **写作/创作需求** → `sessions_send` 给 `muse` - **健康/健身/饮食** → `sessions_send` 给 `vitality` - **投资/股票/财经** → `sessions_send` 给 `sigma`
## 绝对禁止
- ❌ 不要将任务委托给自己(`agentId: main` 或 `cypher`) - ❌ 收到专家返回结果后,直接汇总,不要再次委托 - ❌ 不要创建超过 2 层的委托链
|
五、实际使用示例
5.1 场景一:直接联系专家
在 #💻-编程 频道发消息:
→ Forge 响应,提供代码实现
5.2 场景二:通过 Cypher 中转
在 #🎯-指挥台 频道发消息:
1
| @Cypher 帮我写篇文章,关于 AI Agent 架构的
|
→ Cypher 收到后,使用 sessions_send 委托给 Muse
→ Muse 完成文章后返回给 Cypher
→ Cypher 汇总后回复给用户
5.3 场景三:跨领域任务
在 #🎯-指挥台 频道发消息:
1
| 帮我分析一下 AI 行业的投资机会,需要技术趋势和市场数据
|
→ Cypher 同时委托给 Forge(技术趋势)和 Sigma(市场分析)
→ 收到两者结果后,Cypher 综合汇总
→ 给出完整的投资分析报告
六、常见问题
6.1 Bot 没有响应?
检查清单:
- ✅ Bot 已加入服务器
- ✅ Bot 有频道读取/发送权限
- ✅ Message Content Intent 已开启
- ✅ Token 配置正确
- ✅ Gateway 已重启:
openclaw gateway restart
6.2 消息路由错误?
检查 bindings 配置中的 accountId 是否和 channels.discord.accounts 中的 key 匹配。
6.3 Agent 间通信失败?
确保以下两处配置都正确:
- 每个 Agent 的
subagents.allowAgents 包含目标 Agent ID
tools.agentToAgent.allow 包含所有需要通信的 Agent ID
6.4 流式输出卡顿?
建议使用 blockStreaming: true 和 streaming: "block" 配置,获得更稳定的输出体验。
七、配置版本信息
本文基于以下版本配置:
- OpenClaw 版本:2026.2.22-2
- Node.js:v22.22.0
- 模型:Kimi Code (kimi-for-coding)
- 更新日期:2026-02-28
八、总结
通过 OpenClaw 的多 Agent 多频道配置,我们可以:
- 专业化分工 - 每个 Agent 专注一个领域
- 清晰的交互边界 - 不同频道对应不同 Agent
- 灵活的调度机制 - Cypher 作为总控,可单可群
- 可扩展的架构 - 随时添加新的专家 Agent
这种架构让 AI 助手从”全能但平庸”进化为”专业且协同”,每个任务都能找到最适合的专家来处理。
文章封面:AI 生成
编辑:Cypher
配置时间:2026-02-28
更新版本:v2.0 (基于 OpenClaw 2026.2.22-2)