在之前的 OpenClaw 全攻略 中,我们介绍了如何从零搭建 OpenClaw 并绑定企业微信 Bot。有时候你可能需要在已有实例上创建多个 Agent,让它们各司其职:
- 一个 Agent 负责日常对话和规划(比如小岚)
- 一个 Agent 负责执行和监控(比如小曦)
- 一个 Agent 负责特定业务(比如处理客户咨询)
这篇文章就来讲解:如何在同一个 OpenClaw 实例上,创建第二个 Agent,并通过 pairing 机制让它通过同一个企业微信 Bot 与用户交互。
⚠️ 前置说明:本文假设你已经有一个运行中的 OpenClaw 实例,并且至少已经配置好了一个企业微信机器人(第一个 Bot)。如果还没有,请先阅读 OpenClaw 全攻略 完成基础配置。
1. 整体架构说明
在开始之前,先理解一下 OpenClaw 的多 Agent 架构:
1 | 企业微信 Bot (长连接) |
关键点:
- 多个 Agent 共享同一个 OpenClaw 实例(共用端口 18789、共用工具和 Skills)
- 通过企业微信的
pairing机制,不同用户可以配对到不同的 Agent - Agent 之间可以通过 OpenClaw 内部消息互相通信
- 每个 Agent 有独立的 Workspace、Memory 和 Skills
2. 腾讯企业微信插件:长连接 vs HTTP 回调
在深入配置之前,先搞清楚两种连接方式的区别:
| 对比项 | 长连接(WebSocket) | HTTP 回调 |
|---|---|---|
| 连接方向 | OpenClaw → WeCom 服务器 | WeCom 服务器 → OpenClaw |
| 公网要求 | 不需要公网访问 | 需要公网可访问的 Webhook URL |
| 域名备案 | 不需要 | 需要 |
| IP 白名单 | 不需要 | 需要配置可信 IP |
| 多 Bot 支持 | 一个实例一个 Bot | 一个实例多个 Bot |
| 稳定性 | 高(自动心跳重连) | 一般(依赖公网连通性) |
💡 腾讯官方推荐长连接方式。目前腾讯官方
@wecom/wecom-openclaw-pluginv1.0.13 默认使用 WebSocket 长连接,无需配置 Token、AES Key、回调 URL,配置简单很多。
3. 企业微信 Bot 创建:长连接方式
3.1 登录企业微信管理后台
- 访问 企业微信管理后台
- 登录你的企业账号(需要管理员权限)
3.2 创建应用(机器人)
- 进入 「应用管理」 → 「创建应用」
- 填写应用信息:
- 应用名称:例如
小曦助手 - 应用描述:例如
小曦 Agent,负责高效执行任务 - 应用 logo:上传一个图片
- 应用名称:例如
- 在 「企业微信开发者」 模式下,选择 「机器人」 类型
- 在连接方式中选择 「长连接」(WebSocket)
- 创建完成后,保存 Bot ID 和 Secret:
1 | 🔑 你需要记录以下信息: |
⚠️ 长连接方式只需要 Bot ID 和 Secret,不需要 corpId、agentId、token、encodingAesKey。
3.3 关注应用可见范围
确保你的测试账号在应用的可见范围内,否则 Bot 无法向你发送消息。
4. OpenClaw 配置:添加第二个 Agent
4.1 编辑 OpenClaw 配置文件
1 | vi ~/.openclaw/openclaw.json |
4.2 在 channels 中配置企业微信 Bot(长连接方式)
找到 channels 部分,添加 Bot 配置:
1 | "channels": { |
4.3 在 agents 中添加第二个 Agent
找到 agents.list 部分,在现有 Agent 之后添加新的 Agent:
1 | "agents": { |
4.4 关键参数说明
企业微信 Bot 配置参数:
| 参数 | 说明 | 长连接必填 |
|---|---|---|
botId |
企业微信机器人的 Bot ID | ✅ 必填 |
secret |
企业微信机器人的 Secret | ✅ 必填 |
dmPolicy |
私聊策略 | pairing(需配对)/ open / allowlist / disabled |
allowFrom |
允许访问的用户 ID 白名单 | 配合 dmPolicy: allowlist 使用 |
groupPolicy |
群聊策略 | open / allowlist / disabled |
sendThinkingMessage |
是否发送”思考中”占位消息 | true / false |
Agent 配置参数:
| 参数 | 说明 |
|---|---|
id |
Agent 唯一标识符,用于内部路由和 pairing |
name |
Agent 名称,用户可见 |
model |
使用的模型(可用不同的模型) |
workspace |
Agent 的独立工作目录(建议每个 Agent 独立) |
skills |
为该 Agent 加载的技能列表 |
💡 pairing 机制:
dmPolicy: "pairing"时,用户首次发消息给 Bot,Bot 会生成一个配对码,用户确认后绑定到对应的 Agent。这样不同用户可以配对到不同的 Agent。
5. 重启 OpenClaw Gateway
配置完成后,重启 Gateway 使配置生效:
1 | # 停止当前 Gateway |
6. 配对 Bot 与用户
长连接模式下,用户首次使用 Bot 需要配对。以下是配对流程:
6.1 用户发起配对
用户打开企业微信,向 Bot 发送任意消息。Bot 会回复一个配对码(Pairing Code)。
6.2 管理员审批配对请求
在终端中查看待配对列表:
1 | openclaw pairing list wecom |
批准配对请求:
1 | openclaw pairing approve wecom <PAIRING_CODE> |
6.3 完成配对
用户收到配对成功消息,即可开始与对应的 Agent 对话。
7. 验证是否正常工作
7.1 检查日志
1 | # 查看 Gateway 日志 |
7.2 测试第二个 Agent
- 打开企业微信,找到第二个机器人(小曦助手)
- 向它发送一条消息,比如:
1 | 你好小曦 |
- 如果一切配置正确,你应该会收到小曦的回复
7.3 常见问题排查
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| Bot 没有回复 | Bot 未启动或配置错误 | 检查 openclaw gateway status 和日志 |
| 消息发送失败 | 应用不在可见范围 | 在企业微信后台确认可见范围 |
| 配对失败 | 用户未发送配对码 | 执行 openclaw pairing list wecom 查看待配对列表 |
| WebSocket 断开 | 网络不稳定或 WeCom 服务器重连 | 插件有自动重连机制(最多 100 次),大多数情况能自动恢复 |
| Agent 没有独立回应 | Agent ID 配置错误 | 确认 agents.list[].id 与 pairing 路由配置匹配 |
8. 进阶:多 Agent 协作
当你的第二个 Agent 创建好后,可以让它和第一个 Agent 协同工作。比如:
- 小岚(Aris)负责对话和规划
- 小曦(Dawn)负责执行和监控
8.1 Agent 间通信
两个 Agent 在同一个 OpenClaw 实例内,可以通过内部消息互相通信:
1 | // 在小岚的对话中调用小曦 |
8.2 共享工具和技能
不同 Agent 可以共享相同的工具和技能:
1 | { |
8.3 不同模型配置
可以为不同 Agent 配置不同的模型:
1 | { |
9. 完整配置示例
以下是包含两个 Agent 的完整配置:
1 | { |
总结
通过以上步骤,你已经成功在同一个 OpenClaw 实例上创建了第二个 Agent。现在你的 Bot 可以同时服务多个 Agent,每个 Agent 可以有独立的模型、工作空间和技能。
下一步你可以尝试:
- 为不同的 Agent 配置不同的模型
- 为不同的 Agent 安装不同的 Skills
- 让两个 Agent 相互协作
- 通过 ClawPlaza 让不同实例的 Agent 之间相互通信
有任何问题,欢迎在评论区留言! 🚀
如果你觉得这篇文章有帮助,欢迎到 GitHub 点个 Star ⭐