Appearance
OpenClaw多Agent协作配置:让多个AI一起干活教程
本章你将了解:OpenClaw 多 Agent 的完整配置方法,包括 Agent 创建管理、SOUL.md 灵魂定义、USER.md 用户画像、AGENTS.md 工作方式配置,以及基于渠道/用户/关键词的路由规则设置,还有 Agent 间协作实战技巧。
什么是 OpenClaw 多 Agent?
简单说,OpenClaw 多 Agent 就是让多个 AI 同时为你工作,每个 Agent 有自己的"人设"和职责。你可以把它们想象成一个分工明确的 AI 团队——有人专门写代码,有人专门做 Code Review,有人负责客户支持,各司其职互不干扰。
每个 OpenClaw Agent 都是独立的"虚拟员工",拥有以下核心组件:
- Workspace(工作区):存储配置文件和长期记忆,相当于 Agent 的"办公室"
- SOUL(灵魂):定义性格、行为准则和能力边界,决定 Agent 的"人设"
- Memory(记忆):保持对话上下文和历史信息,让 Agent 不会健忘
- Skills(技能):可以调用的工具和能力,比如搜索、编程、数据分析等
说实话,这种架构设计真的很香。想象一下,你不再需要跟一个 AI 说"现在切换到编程模式",而是直接 @ 对应的人就行。
为什么需要多 Agent?
你可能会问:一个强一点的模型不就够了吗?其实不然。多个 Agent 配合有这几个明显好处:
专业化分工
不同任务交给不同的 Agent 处理,质量更高。比如:
- Coder Agent:专门处理代码审查、技术问题
- Support Agent:负责用户支持、问题解答
- PM Agent:管理项目进度、协调任务
每个 Agent 只专注自己的领域,输出质量自然比"全能型"AI 稳定得多。
隔离上下文
这点太重要了。工作项目和个人事务分开处理,不同客户的对话独立管理,测试环境和生产环境互不干扰——这些用单一 Agent 很难优雅地实现。
我之前就踩过这个坑:让一个 AI 同时处理公司项目和个人项目,结果它把两个项目的上下文搞混了,提了个牛头不对马嘴的方案。
性能优化
多个 Agent 可以并行处理任务,避免单个 Agent 过载。你可以让 Coder Agent 写代码的同时,Support Agent 回答用户问题,整体效率翻倍。
权限控制
不同 Agent 可以有不同的权限和能力——限制敏感操作访问范围、按需分配工具、实现细粒度安全控制。这在企业场景下尤为重要。
Agent 管理:增删改查
先从最基础的 Agent 管理说起,命令很简单。
查看所有 Agent
bash
# 列出所有 Agent
openclaw agents list
# 详细信息
openclaw agents list --verbose输出大概长这样:
Agents:
✓ main (default) - Workspace: ~/.openclaw/agents/main - Status: Active - Skills: 5
✓ coder - Workspace: ~/.openclaw/agents/coder - Status: Active - Skills: 8
✓ support - Workspace: ~/.openclaw/agents/support - Status: Active - Skills: 3创建新 Agent
bash
# 创建名为 coder 的 Agent
openclaw agents add coder
# 创建并指定工作区路径
openclaw agents add support --workspace ~/my-agents/support删除 Agent
bash
# 删除 Agent(会提示确认)
openclaw agents remove coder
# 强制删除(不提示确认)
openclaw agents remove coder --force切换默认 Agent
bash
# 设置默认 Agent
openclaw agents set-default coder
# 查看当前默认 Agent
openclaw agents default灵魂三件套:SOUL.md、USER.md、AGENTS.md
这是多 Agent 配置的核心,每个 Agent 的 Workspace 里有三个关键文件:
1. SOUL.md - 定义 Agent 的"灵魂"
SOUL.md 决定这个 Agent 的性格、行为准则和能力边界。用这个命令编辑:
bash
openclaw agents edit coder --soul示例内容:
markdown
# Coder Agent
## 核心原则
- 专注于代码审查、编写和技术问题解答
- 遵循最佳实践和代码规范
- 提供清晰的技术解释和示例
- 注重代码质量、性能和安全性
## 风格定位
- 技术专业、逻辑清晰
- 代码示例丰富
- 善于发现潜在问题
- 提供建设性的改进建议
## 能力范围
### 擅长领域
- 代码审查和重构建议
- Bug 诊断和修复方案
- 性能优化建议
- 安全漏洞识别
### 边界限制
- 不处理非技术问题
- 不提供项目管理建议
- 不涉及商业决策
## 交互风格
- 直接、简洁
- 提供代码示例
- 解释技术原理简单理解:SOUL.md 就是给 AI 写"岗位说明书",告诉它"你是谁"、"你能干什么"、"你不能干什么"。
2. USER.md - 用户画像
记录用户的基本信息、偏好和项目背景,让 Agent 更懂你:
bash
openclaw agents edit coder --user示例:
markdown
# 用户信息
## 基本信息
- 姓名:张三
- 角色:全栈开发工程师
- 团队:技术部
- 时区:Asia/Shanghai
## 技术栈
- 前端:React, Vue, TypeScript
- 后端:Node.js, Python, Go
- 数据库:PostgreSQL, MongoDB, Redis
## 偏好设置
- 代码风格:遵循 ESLint 规范
- 注释语言:中文
- 测试框架:Jest有了 USER.md,Coder Agent 就知道你用的是什么技术栈、喜欢什么代码风格,回答的问题自然更精准。
3. AGENTS.md - 工作方式
定义 Agent 的工作方式、记忆机制和协作规则:
bash
openclaw agents edit coder --agents示例:
markdown
# Agent 工作方式
## 会话管理
### 会话读取规则
- 读取最近 50 条消息作为上下文
- 优先读取标记为重要的消息
- 自动过滤无关的系统消息
### 会话写入规则
- 重要决策和结论写入长期记忆
- 代码片段和配置保存到知识库
## 心跳任务
### 每日任务(9:00)
- 检查 GitHub 新 PR
- 汇总未解决的 Issues
### 每周任务(周一 10:00)
- 生成周报
- 分析代码质量趋势
## 协作规则
### 与其他 Agent 协作
- 技术问题转给 Coder Agent
- 用户支持转给 Support Agent
- 项目管理转给 PM Agent路由配置:消息该发给谁?
有了多个 Agent 之后,核心问题就是:一条消息应该交给哪个 Agent 处理? OpenClaw 支持多种路由策略。
基于渠道路由
不同渠道的消息路由到不同 Agent:
json
{
"bindings": [
{ "agentId": "main", "match": { "channel": "telegram" } },
{ "agentId": "coder", "match": { "channel": "discord" } },
{ "agentId": "support", "match": { "channel": "feishu" } }
]
}基于用户路由
根据用户 ID 精准路由:
json
{
"bindings": [
{ "agentId": "main", "match": { "channel": "telegram", "userId": "123456" } },
{ "agentId": "support", "match": { "channel": "telegram", "userId": ["789", "101112"] } }
]
}基于群组路由
群组消息可以路由到专属 Agent:
json
{
"bindings": [
{ "agentId": "dev-team", "match": { "channel": "discord", "groupId": "dev-general" } },
{ "agentId": "pm-team", "match": { "channel": "discord", "groupId": "project-updates" } }
]
}基于关键词路由### 基于关键词路?
关键词触发路由,最灵活的方式:
json
{
"bindings": [
{ "agentId": "coder", "match": { "keywords": ["代码", "bug", "error", "代码审查", "重构"] } },
{ "agentId": "support", "match": { "keywords": ["问题", "反馈", "投诉", "咨询"] } },
{ "agentId": "pm", "match": { "keywords": ["进度", "排期", "需?, "任务"] } }
]
}基于时间路由
特定时间路由到特?Agent?
json
{
"bindings": [
{ "agentId": "support", "match": { "timeRange": "09:00-18:00" } },
{ "agentId": "night-bot", "match": { "timeRange": "18:00-09:00" } }
]
}路由优先?
当多个规则匹配时,按以下优先级处理:
- 精确匹配优先:userId + channel 的组合最优先
- **关键词匹配次?*:包含特定关键词的消?
- **时间规则最?*:基于时间段匹配
- 默认兜底:没有任何规则匹配时,交给默?Agent
json
{
"defaultAgent": "main",
"bindings": [
{ "agentId": "vip-support", "match": { "channel": "telegram", "userId": "VIP_USER" }, "priority": 1 },
{ "agentId": "support", "match": { "keywords": ["问题", "反馈"] }, "priority": 2 }
]
}Agent 间协作:消息转发与共?
?Agent 的精髓在于协作。OpenClaw 支持几种协作模式?
1. 消息转发
一?Agent 可以把任务转发给另一?Agent?
markdown
我无法直接处理这个性能问题,需?@coder 来帮忙分析?或者通过配置自动转发?
json
{
"forwarding": {
"main": {
"tech-questions": "coder",
"support-requests": "support"
}
}
}2. 共享记忆
多个 Agent 可以访问同一个记忆库?
json
{
"agents": {
"coder": {
"sharedMemory": ["team-knowledge", "coding-standards"]
},
"pm": {
"sharedMemory": ["team-knowledge", "project-status"]
}
}
}这样 Coder Agent ?PM Agent 都能访问团队知识库,保持信息同步?
3. 协作工作?
串联多个 Agent 完成复杂任务?
用户需??PM Agent 整理需??Coder Agent 写代??Review Agent 审查配置示例?
json
{
"workflows": {
"code-review": {
"steps": [
{ "agent": "coder", "action": "implement" },
{ "agent": "reviewer", "action": "review", "timeout": "10m" },
{ "agent": "coder", "action": "fix-issues" }
],
"onComplete": "notify-user",
"onFailure": "escalate"
}
}
}实战案例:配置一个技术团?
让我用一个实际例子把上面的内容串起来。假设你要配置一个技术团队,包含:Coder(写代码)、Reviewer(代码审查)、Support(技术支持)?
Step 1: 创建三个 Agent
bash
openclaw agents add coder
openclaw agents add reviewer
openclaw agents add supportStep 2: 配置 SOUL.md
coder/SOUL.md?
markdown
# Coder Agent
## 角色定位
专注于代码开发、技术问题解决?
## 核心原则
- 代码简洁、可维护
- 遵循项目代码规范
- 注重性能和安全?
- 提供可运行的代码示例
## 能力范围
- 后端开发(Node.js, Python, Go?
- 前端开发(React, Vue?
- 数据库设?
- API 设计
- DevOps 脚本编写reviewer/SOUL.md?
markdown
# Reviewer Agent
## 角色定位
严格把关代码质量,发现潜在问题?
## 核心原则
- 代码质量优先
- 严格遵循规范
- 发现潜在 Bug 和安全风?
- 提出建设性改进建?
## 审查重点
- 代码规范符合?
- 逻辑正确?
- 性能隐患
- 安全漏洞
- 测试覆盖?support/SOUL.md?
markdown
# Support Agent
## 角色定位
友好、高效的用户技术支持?
## 核心原则
- 耐心倾听用户问题
- 清晰、易懂的回答
- 无法解决时及时转?
## 能力范围
- 常见问题解答
- 使用引导
- Bug 反馈记录
- 需求收?Step 3: 配置路由规则
在配置文件中?
json
{
"agents": {
"list": [
{ "id": "coder", "workspace": "~/.openclaw/agents/coder" },
{ "id": "reviewer", "workspace": "~/.openclaw/agents/reviewer" },
{ "id": "support", "workspace": "~/.openclaw/agents/support" }
]
},
"bindings": [
{ "agentId": "coder", "match": { "keywords": ["写代?, "开?, "实现", "function", "class"] } },
{ "agentId": "reviewer", "match": { "keywords": ["审查", "review", "检查代?, "优化建议"] } },
{ "agentId": "support", "match": { "keywords": ["问题", "怎么?, "帮助", "报错", "bug"] } },
{ "agentId": "coder", "match": { "channel": "discord", "groupId": "code-review" } }
],
"defaultAgent": "coder"
}Step 4: 配置协作工作?
json
{
"workflows": {
"code-submission": {
"trigger": "keyword:提交代码",
"steps": [
{ "agent": "coder", "task": "prepare-code", "timeout": "5m" },
{ "agent": "reviewer", "task": "review-code", "timeout": "10m" }
],
"notifications": {
"onComplete": ["discord:dev-team"],
"onIssue": ["coder"]
}
}
}
}性能优化:让 Agent 高效运转
配置完了不是终点,还得优化性能?
资源分配
json
{
"agents": {
"coder": {
"maxConcurrency": 3,
"memoryLimit": "512MB",
"timeout": "30s"
},
"reviewer": {
"maxConcurrency": 1,
"memoryLimit": "1GB",
"timeout": "5m"
}
}
}上下文优?
json
{
"context": {
"maxMessages": 50,
"truncateOldMessages": true,
"preserveSystemPrompts": true
}
}缓存策略
json
{
"cache": {
"enabled": true,
"ttl": "1h",
"exclude": ["sensitive-data"]
}
}监控与调?
查看 Agent 状?
bash
# 查看所?Agent 状?
openclaw agents status
# 查看特定 Agent 日志
openclaw agents logs coder --tail 100
# 实时监控
openclaw agents monitor调试技?
bash
# 启用调试模式
openclaw agents debug coder --verbose
# 测试消息路由
openclaw agents test-route --message "帮我写个函数" --channel telegram
# 检查配?
openclaw agents validate常见问题
Q: Agent 之间如何通信?
Agent 之间主要通过消息转发和共享记忆通信。你可以在配置中设置自动转发规则,也可以在对话中手动 @ 其他 Agent?
Q: 多个 Agent 共享一个模型吗?
可以共享也可以独立配置。默认情况下所?Agent 共享同一个模型配置,但你也可以为特定 Agent 指定不同的模型?
Q: 如何避免 Agent 之间的冲突?
关键是做好职责划分和边界定义。SOUL.md 中的"边界限制"部分很重要,明确告诉每个 Agent "什么不该做"?
Q: Agent 崩溃了怎么办?
配置健康检查和自动重启?
json
{
"agents": {
"coder": {
"healthCheck": {
"enabled": true,
"interval": "30s",
"autoRestart": true,
"maxRestarts": 3
}
}
}
}总结
以上就是 OpenClaw ?Agent 协作配置 的核心内容。简单回顾下重点?
- Agent 管理:用命令行增删改查,多个 Agent 独立运行互不干扰
- **灵魂三件?*:SOUL.md 定人设、USER.md 懂用户、AGENTS.md 配工作方?
- 路由配置:基于渠道、用户、关键词、时间灵活路由消?
- 协作机制:消息转发、共享记忆、工作流串联?Agent 配合更紧?
说实话,配置好多 Agent 之后,你会发现工作效率提升非常明显。不过也要注意别?Agent 划分得太细——管理一?Agent 本身也是负担。一?3-5 个专?Agent 就够了,根据实际需求灵活调整?
有什么问题欢迎在评论区留言,我会尽量解答。下期再见!
