OpenClaw多Agent快速上手指南
OpenClaw多Agent快速上手指南(从入门到实战)
一、核心概念
1.1 什么是Agent?
一个Agent是一个完整隔离的"大脑",包含:
- 独立工作区:AGENTS.md、SOUL.md、USER.md等个性化文件
- 状态目录:存储认证配置、模型注册和会话数据
- 会话存储:每个Agent独立的聊天历史记录
1.2 多Agent的价值
- 多用户隔离:不同用户使用不同Agent,数据不共享
- 多场景分离:个人助手、工作助手、编码助手等各司其职
- 安全隔离:限制每个Agent的工具和权限
二、快速开始
2.1 创建Agent(使用向导)
openclaw agents add work # 创建工作Agent
openclaw agents add coding # 创建编码Agent
openclaw agents add family # 创建家庭Agent
每个Agent自动获得独立的工作区和配置目录。
2.2 手动创建Agent
// ~/.openclaw/openclaw.json
{
agents: {
list: [
{
id: "main",
default: true,
name: "主助手",
workspace: "~/.openclaw/workspace-main",
agentDir: "~/.openclaw/agents/main/agent",
},
{
id: "work",
name: "工作",
workspace: "~/.openclaw/workspace-work",
agentDir: "~/.openclaw/agents/work/agent",
},
],
},
}
2.3 添加Binding(路由规则)
bindings: [
// WhatsApp个人账号路由到main Agent
{ agentId: "main", match: { channel: "whatsapp", accountId: "personal" } },
// WhatsApp工作账号路由到work Agent
{ agentId: "work", match: { channel: "whatsapp", accountId: "biz" } },
],
2.4 验证配置
openclaw agents list --bindings # 查看所有Agent和绑定
openclaw gateway restart # 重启应用配置
三、常见配置场景
3.1 多账号WhatsApp分离
场景:一个WhatsApp个人号码用于日常聊天,另一个工作号码用于商务沟通。
配置:
# 链接两个WhatsApp账号
openclaw channels login --channel whatsapp --account personal
openclaw channels login --channel whatsapp --account biz
{
agents: {
list: [
{ id: "home", workspace: "~/.openclaw/workspace-home" },
{ id: "work", workspace: "~/.openclaw/workspace-work" },
],
},
bindings: [
{ agentId: "home", match: { channel: "whatsapp", accountId: "personal" } },
{ agentId: "work", match: { channel: "whatsapp", accountId: "biz" } },
],
}
3.2 按渠道分离(WhatsApp快聊 + Telegram深度工作)
场景:WhatsApp用于日常快速交流(Sonnet模型),Telegram用于深度思考任务(Opus模型)。
{
agents: {
list: [
{
id: "chat",
name: "日常聊天",
workspace: "~/.openclaw/workspace-chat",
model: "anthropic/claude-sonnet-4-5",
},
{
id: "opus",
name: "深度工作",
workspace: "~/.openclaw/workspace-opus",
model: "anthropic/claude-opus-4-6",
},
],
},
bindings: [
{ agentId: "chat", match: { channel: "whatsapp" } },
{ agentId: "opus", match: { channel: "telegram" } },
],
}
3.3 家庭群组专用Agent
场景:为家庭WhatsApp群创建一个安全、隔离的助手,限制工具权限。
{
agents: {
list: [
{
id: "family",
name: "家庭助手",
workspace: "~/.openclaw/workspace-family",
identity: { name: "家庭机器人" },
groupChat: {
mentionPatterns: ["@family", "@familybot", "@家庭机器人"],
},
sandbox: {
mode: "all", // 始终沙盒运行
scope: "agent",
},
tools: {
allow: ["read", "sessions_list", "sessions_history"],
deny: ["write", "edit", "exec", "browser", "canvas", "nodes"],
},
},
],
},
bindings: [
{
agentId: "family",
match: {
channel: "whatsapp",
peer: { kind: "group", id: "120363999999999999@g.us" },
},
},
],
}
安全措施:
- 沙盒隔离:所有操作在容器中运行
- 工具限制:只允许读取,禁止写入和执行
- 提及触发:只响应特定@提及
3.4 单个DM路由到Opus(优先级匹配)
场景:大部分消息走快速Agent,但特定号码的对话路由到Opus进行深度思考。
关键原则:Peer绑定优先级最高,必须放在上面。
{
agents: {
list: [
{
id: "chat",
model: "anthropic/claude-sonnet-4-5",
workspace: "~/.openclaw/workspace-chat",
},
{
id: "opus",
model: "anthropic/claude-opus-4-6",
workspace: "~/.openclaw/workspace-opus",
},
],
},
bindings: [
// Peer绑定优先级最高(精确匹配特定号码)
{
agentId: "opus",
match: { channel: "whatsapp", peer: { kind: "direct", id: "+15551234567" } },
},
// 渠道级备用规则
{ agentId: "chat", match: { channel: "whatsapp" } },
],
}
四、路由规则详解
4.1 匹配优先级(从高到低)
- peer匹配:精确的DM/group/channel id
- parentPeer匹配:线程继承
- guildId + roles:Discord角色路由
- guildId:Discord服务器
- teamId:Slack工作区
- accountId匹配:特定渠道账号
- 渠道级匹配:
accountId: "*" - fallback到默认Agent
4.2 多账号匹配
- 绑定省略
accountId时,只匹配默认账号 - 使用
accountId: "*"作为渠道级回退 - 如果后续添加同agent的显式accountId绑定,OpenClaw会升级现有绑定而非重复创建
下一篇预告:安全与沙盒配置详解(进阶篇)