原文: OpenClaw多agents配置(语雀) 参考: 多 Agent 配置 | OpenClaw 中文教程 · OpenClaw 多 Agent 配置指南 — EasyClaw
一、核心概念
多 Agent 是 OpenClaw 的核心特性。每个 Agent 是一个独立的「虚拟员工」,拥有:
| 维度 | 说明 |
|---|---|
| Skills | 可调用的工具和能力 |
| Memory | 对话上下文与历史 |
| SOUL | 性格、行为准则与能力边界 |
| Workspace | 配置与长期记忆存储 |
二、为什么需要多 Agent
- 专业化分工:PM / Support / Coder 等不同角色各司其职
- 隔离上下文:测试与生产、不同客户、工作与个人分离
- 性能优化:分散负载、多 Agent 并行
- 权限控制:按 Agent 分配 Skills 与敏感操作范围
三、基本管理命令
openclaw agents list # 列出所有 Agent
openclaw agents list --verbose # 详细信息
openclaw agents add <name> # 创建新 Agent
openclaw agents add <name> --workspace ~/.openclaw/workspace-<name> # 指定工作区
openclaw agents remove <name> # 删除
openclaw agents remove <name> --force # 强制删除(非交互)
openclaw agents set-default <name> # 设置默认 Agent
openclaw agents default # 查看当前默认
openclaw agents status <name> # 状态
openclaw agents stats # 统计
注意:每个 Agent 必须有独立 workspace,不能与主 Agent 共用。
四、灵魂三件套(Workspace 核心配置)
每个 Agent 的工作区包含三个核心文件:
| 文件 | 作用 |
|---|---|
| SOUL.md | 性格、行为准则、能力边界(擅长/不擅长) |
| USER.md | 用户信息、技术栈、项目背景、偏好 |
| AGENTS.md | 工作方式、记忆机制、协作与路由规则 |
重要:子 Agent 的 AGENTS.md 不能直接复制主 Agent,否则会以「主 Agent」自居;必须为子 Agent 写专属 AGENTS.md,明确「我是主 Agent 的 xxx 助手」。
五、路由配置(bindings)
在 openclaw.json 中通过 bindings 将消息路由到不同 Agent,常见方式:
- 渠道路由:
channel(如 telegram / discord / feishu) - 用户路由:
channel+userId - 群组路由:
channel+serverId+channelId - 关键词路由:
keywords - 时间路由:
timeRange(如工作时间 / 夜间值班) - 飞书多账号(方案 B) :
channel: feishu+accountId,对应channels.feishu.accounts下多应用
六、主 Agent 调度子 Agent 的方式
| 方式 | 适用场景 | 特点 |
|---|---|---|
| sessions_spawn | 一次性独立任务(调研、写作) | 最常用,完成后结果自动回传 |
| sessions_send | 持续对话、传递上下文 | 向已有 session 发消息 |
| 共享文件读写 | 异步协作、数据共享 | 多 Agent 读写同一文件 |
示例:sessions_spawn(agentId="researcher", task="帮我调研2026年AI行业最新动态") 主 Agent 需在 agents.list 中配置 subagents.allowAgents 才能 spawn 对应子 Agent。
七、配置文件核心结构(openclaw.json)
-
agents.list:定义所有 Agent(执行
openclaw agents add后才会生成,此前config get agents.list会报 path not found)。- 主 Agent:可配置
subagents.allowAgents: ["researcher", "writer"] - 子 Agent:可单独设置
model(如轻量模型省成本)、workspace、agentDir
- 主 Agent:可配置
-
bindings:将
agentId与match(channel / accountId / userId 等)绑定。 -
channels.feishu.accounts(方案 B):多飞书应用时,每个 account 下放
appId、appSecret、botName;迁移时不要删原有顶层字段(如allowFrom、dmPolicy、groupPolicy),否则易出现 Bot 反复重启或 "terminated"。
八、配置步骤摘要
- 确认状态:
openclaw agents list、openclaw gateway status - 添加子 Agent:
openclaw agents add <id> --workspace ~/.openclaw/workspace-<id> - 初始化人设:在子 Agent workspace 下写专属 SOUL.md 与 AGENTS.md(勿复制主 Agent 的 AGENTS.md)
- 主 Agent 调度权限:
openclaw config set agents.list[0].subagents.allowAgents '["researcher","writer"]' --json(索引以实际 list 为准) - (可选)子 Agent 模型:
openclaw config set agents.list[1].model 'deepv-easyclaw/claude-haiku-4-5' --json - (方案 B)多飞书账号:在
channels.feishu.accounts增加账号,并在顶层配置bindings;改完后用脚本校验 JSON 与字段完整性。 - 验证:多 Agent 与 bindings 支持热重载,无需重启 Gateway;用
openclaw agents list、openclaw channels status与 spawn 测试验证。
九、注意事项与常见坑
- 多 Agent 配置涉及系统配置与 Gateway,建议使用高智能模型(如 Claude Sonnet)执行,避免轻量模型误操作。
- 子 Agent 若自称「我是主 Agent」→ 检查并重写 AGENTS.md,不要复制主 Agent。
- 子 Agent 总反问、不执行 → 在 AGENTS.md 中写明「收到任务直接执行,不反问」。
openclaw agents bind不存在,绑定只能通过编辑bindings完成。- 先执行
agents add再执行config set agents.list[0].subagents...,否则 path not found。 - 迁移飞书多账号时误删
allowFrom等字段会导致 Bot 异常或每 30 分钟重启,需从备份恢复并补全字段。 - 不要依赖
gateway restart应用多 Agent 配置;热重载即可,重启会影响当前会话。