
如果你的团队在用 AI 助手处理不同任务,可能会遇到一个常见问题:一个 AI 助手什么都能干,但什么都干不精。能不能让不同的 AI 助手各司其职?答案是可以的——通过 QQ 机器人多 Agent 配置...
如果你的团队在用 AI 助手处理不同任务,可能会遇到一个常见问题:一个 AI 助手什么都能干,但什么都干不精。能不能让不同的 AI 助手各司其职?答案是可以的——通过 QQ 机器人多 Agent 配置,实现"一个机器人一个角色"。
为什么要做多 Agent 配置?
OpenClaw QQ 机器人多 Agent 配置教程——一个机器人一个人格 - 内配图
简单来说:一个 QQ 机器人只能对应一个 AI 人格,但你可以有多个 QQ 机器人。
配置前,所有任务都由一个 AI 助手处理,容易"人格分裂"。配置后:
- QQ 机器人 1 → 统一指挥、任务分配、进度汇报
- QQ 机器人 2 → 专门写 SEO 文章,内容管理
- QQ 机器人 3、4 → 按需扩展,各管一摊
这样做的好处很明显:各司其职、可以单独私聊每个 Agent 分配任务、互不干扰。
准备工作
需要满足以下条件:
- OpenClaw 已安装并正常运行
- 至少 2 个 QQ 机器人账号(每个账号对应一个 appId 和 clientSecret)
- QQ 机器人可在 QQ 开放平台 申请,一个 QQ 号可以申请一个
第 1 步:备份配置文件
这是保命操作,改配置之前先备份:
# 备份主配置文件
cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.backup.$(date +%Y%m%d_%H%M%S)
# 备份 agents 目录
tar -czf ~/.openclaw/backups/agents-backup-$(date +%Y%m%d_%H%M%S).tar.gz -C ~/.openclaw agents/
配置错了可以恢复,不会出问题。
第 2 步:创建新 Agent 的工作区
假设要创建一个专门负责 SEO 内容管理的 Agent(比如"小云儿"):
# 创建工作区目录
mkdir -p ~/.openclaw/workspace-xiao-yuner-seo/skills
# 从主工作区复制所需技能
cp -r ~/.openclaw/workspace/skills/xiao-yuner-seo ~/.openclaw/workspace-xiao-yuner-seo/skills/
cp -r ~/.openclaw/workspace/skills/image-gen ~/.openclaw/workspace-xiao-yuner-seo/skills/
每个 Agent 有自己的工作区目录,技能文件需要复制到对应工作区的 skills 目录下。
第 3 步:创建 IDENTITY.md(Agent 身份证)
在新工作区下创建身份文件,定义 Agent 的基本信息:
# 小云儿 - 身份配置
{
"name": "小云儿",
"theme": "SEO 内容专家",
"emoji": "🤖"
}
这个文件让 OpenClaw 知道这个 Agent 是谁、负责什么。
第 4 步:修改 openclaw.json(核心配置)
编辑 OpenClaw 的主配置文件
~/.openclaw/openclaw.json,需要做三处修改。4.1 添加 Agent 列表
找到 agents 部分,添加新的 Agent:
"agents": {
"list": [
{
"id": "main",
"default": true,
"name": "主 Agent",
"workspace": "~/.openclaw/workspace",
"agentDir": "~/.openclaw/agents/main/agent"
},
{
"id": "xiao-yuner-seo",
"name": "小云儿",
"workspace": "~/.openclaw/workspace-xiao-yuner-seo",
"agentDir": "~/.openclaw/agents/xiao-yuner-seo/agent"
}
],
"defaults": {
"model": {
"primary": "qwencode/qwen3.5-plus"
}
}
}
每个 Agent 需要定义 id(唯一标识)、name(显示名)、workspace(工作区路径)和 agentDir(Agent 配置目录)。
4.2 添加路由绑定(bindings)
在 agents 后面添加 bindings,决定消息路由到哪个 Agent:
"bindings": [
{
"agentId": "main",
"match": { "channel": "qqbot", "accountId": "qq1" }
},
{
"agentId": "xiao-yuner-seo",
"match": { "channel": "qqbot", "accountId": "qq2" }
}
]
这里的 accountId(qq1、qq2)是自定义标识,需要和下一步的 QQ 账户配置保持一致。
4.3 配置 QQ 机器人多账户
在 channels 的 qqbot 部分,改用 accounts 对象定义多个 QQ 账户:
"channels": {
"qqbot": {
"accounts": {
"qq1": {
"appId": "你的AppID1",
"clientSecret": "你的ClientSecret1"
},
"qq2": {
"appId": "你的AppID2",
"clientSecret": "你的ClientSecret2"
}
}
}
}
注意:accounts 里的标识(qq1、qq2)必须和 bindings 中的 accountId 一致。
第 5 步:验证配置
修改完成后,先验证再重启:
检查 JSON 语法是否正确
cat ~/.openclaw/openclaw.json | python3 -m json.tool > /dev/null && echo "✅ JSON 正确" || echo "❌ JSON 错误"
检查 Agent 路由配置
openclaw agents list --bindings
正确输出应该显示每个 Agent 的路由规则,比如 qq1 对应主 Agent,qq2 对应小云儿。
第 6 步:重启 Gateway
systemctl --user restart openclaw-gateway
openclaw gateway status
状态显示 running 即表示重启成功。
验证是否成功
分别用两个 QQ 机器人私聊测试:
- 私聊机器人 1,应该由主 Agent 响应
- 私聊机器人 2,应该由小云儿响应
如果每个机器人回复的身份不同,说明配置成功。
常见问题
配置后还是同一个 Agent 响应?
检查 Gateway 是否重启,bindings 配置是否正确,QQ 账户标识是否一致。
新 Agent 没有技能?
确认技能文件已复制到新 Agent 的工作区 skills 目录下。
定时任务怎么给特定 Agent?
通过 Agent 自己的定时任务技能创建,每个 Agent 的定时任务是独立的。
配置总结
整个流程可以概括为:备份 → 创建工作区 → 复制技能 → 创建身份证 → 修改主配置 → 验证 → 重启。核心是通过 bindings 实现消息路由,让不同的 QQ 机器人对应不同的 Agent,各司其职,互不干扰。
💡 需要定制方案? 联系我们获取免费报价 →
📖 延伸阅读