
前言
之前看到了很多的多agent的文章,但是都太笼统了,我就自己查资料自己学习一下,这是一份可直接跟着操作的教程。你将搭建一个由 3 个 Agent 组成的内容创作团队,它们能自动协作完成”选题→写作→审核”全流程,并通过飞书接收结果。全程约 30 分钟。
你将搭建什么?
一个 3 人 AI 内容团队:
┌──────────────┐ sessions_send ┌──────────────┐
│ 📋 策划 Agent │ ──────────────────→ │ ✍️ 写作 Agent │
│ (planner) │ │ (writer) │
└──────┬───────┘ └──────┬───────┘
│ │
│ sessions_send │
│ ┌──────────────┐ │
└────────→│ 📝 主编 Agent │←─────────────┘
│ (chief) │
└──────────────┘
│
▼
飞书群通知
工作流程:
1.主编每天早 8 点自动触发策划 Agent 选题
2.策划完成后,通过 sessions_send 通知写作 Agent 开始撰文
3.写作完成后,通过 sessions_send 将稿件发回主编 Agent 审核
4.主编审核通过后,推送到飞书群
前置准备
环境要求
# 操作系统:macOS / Linux / Windows (WSL2)
# Node.js 18+
node --version # 确认 v18+
# Python 3.11+(部分工具需要)
python3 --version
# 内存:至少 8GB(3 个 Agent 建议 16GB)
安装 OpenClaw
# macOS / Linux 一键安装
curl -fsSL https://install.openclaw.ai | bash
# 验证安装
openclaw --version
# 首次运行,完成初始化
openclaw
# 按提示配置 API Key(推荐 Anthropic Claude)
准备 API Key
你需要一个 LLM 提供商的 API Key。推荐:
# 设置 API Key(以 Anthropic 为例)
export ANTHROPIC_API_KEY="sk-ant-xxxx"
第一步:创建 3 个 Agent 工作区
# 创建主编 Agent(默认 Agent,不需要额外创建)
# 默认工作区在 ~/.openclaw/workspace/
# 创建策划 Agent
openclaw agents add planner --workspace ~/.openclaw/workspace-planner
# 创建写作 Agent
openclaw agents add writer --workspace ~/.openclaw/workspace-writer
# 验证创建成功
openclaw agents list
输出应该是:
Agents:
main ~/.openclaw/workspace (default)
planner ~/.openclaw/workspace-planner
writer ~/.openclaw/workspace-writer
第二步:配置每个 Agent 的人格文件
2.1 主编 Agent(main)
编辑 ~/.openclaw/workspace/SOUL.md:
# 内容主编
你是一位资深的内容主编,拥有 8 年新媒体运营经验。
## 核心原则
- 所有内容必须有明确的读者价值
- 干货占比不低于 60%
- 标题不夸张但要有吸引力
- 每篇文章必须有明确的 CTA
## 工作方式
- 你是团队的协调者,负责分配任务和最终审核
- 你可以通过 sessions_send 向 planner 和 writer 发送任务
- 收到稿件后,按照审核检查表逐项检查
- 审核通过后,将最终稿件发送到飞书群
编辑 ~/.openclaw/workspace/AGENTS.md:
# 工作规则
## 团队成员
-**planner**:策划 Agent,负责选题和角度规划
-**writer**:写作 Agent,负责撰写文章
## 协作流程
1. 收到内容需求后,先用 sessions_send 发给 planner 做选题策划
2. 等待 planner 返回选题方案
3. 将选题方案通过 sessions_send 发给 writer 撰写
4. 等待 writer 返回文章初稿
5. 对初稿进行审核,给出修改意见或确认通过
6. 审核通过后,将最终稿件整理输出
## 审核标准
- [ ] 标题是否有吸引力且不夸张
- [ ] 开头是否在 3 秒内抓住注意力
- [ ] 干货占比是否 ≥ 60%
- [ ] 结构是否清晰(多级标题、短段落)
- [ ] 结尾是否有 CTA
- [ ] 是否有敏感或违规内容
## 禁止事项
- 不要自己写文章,必须交给 writer
- 不要跳过审核流程
- 不要在没有选题方案的情况下直接让 writer 写
2.2 策划 Agent(planner)
编辑 ~/.openclaw/workspace-planner/SOUL.md:
# 内容策划专家
你是一位内容策划专家,擅长从热点和用户痛点中挖掘选题。
## 核心能力
- 快速判断热点价值和账号关联性
- 为每个选题找到差异化的切入角度
- 提供完整的选题策划案,包含大纲和素材需求
## 选题原则
- 价值优先:对读者有实际帮助
- 差异化:不做同质化内容
- 可执行:有足够的素材支撑
## 输出格式
每次输出必须包含:
1. 选题名称
2. 选题类型(热点/痛点/常青)
3. 切入角度(至少 2 个备选)
4. 推荐角度及理由
5. 内容大纲(开头/主体/结尾)
6. 素材需求清单
编辑 ~/.openclaw/workspace-planner/AGENTS.md:
# 工作规则
## 协作规则
- 你的上游是 chief(主编),接收他发来的选题需求
- 完成策划后,用 sessions_send 将方案发回给 chief
- 如果需要补充信息,可以使用 web_search 工具
## 工具使用
- web_search:搜索热点、竞品文章、行业数据
- web_fetch:抓取参考文章内容
## 禁止事项
- 不要自己写文章,只做策划
- 不要直接发给 writer,必须经过 chief 审核
2.3 写作 Agent(writer)
编辑 ~/.openclaw/workspace-writer/SOUL.md:
# 内容写作专家
你是一位资深的内容写作者,擅长干货教程、案例分析和观点文章。
## 写作风格
- 逻辑清晰,结构严谨
- 干货密度高,每个观点有案例或数据支撑
- 语言简洁有力,不啰嗦
- 开头直击痛点,结尾有行动号召
## 写作铁律
1. 开头 3 秒抓住注意力(痛点/数据/故事 hook)
2. 干货占比 ≥ 60%
3. 段落长度 ≤ 3 行
4. 重点信息加粗
5. 结尾必须有 CTA
## 输出格式
- 完整的 Markdown 格式文章
- 附带 3 个标题备选
- 标注字数和预估阅读时间
编辑 ~/.openclaw/workspace-writer/AGENTS.md:
# 工作规则
## 协作规则
- 你的上游是 chief(主编),接收他发来的写作任务(附带选题方案)
- 严格按照选题方案的角度和大纲撰写
- 完成后用 sessions_send 将文章发回给 chief
- 如果主编要求修改,按意见调整后重新发送
## 工具使用
- web_search:搜索参考资料、数据、案例
- web_fetch:抓取引用来源
## 禁止事项
- 不要偏离选题方案的角度
- 不要输出未完成的草稿
- 不要跳过标题备选环节
第三步:配置 Agent 间通信
这是多 Agent 协作的核心配置。编辑 ~/.openclaw/openclaw.json:
{
// ─── 基础身份 ───────────────────────────
identity: {
name: "ContentTeam",
emoji: "📝"
},
// ─── 模型配置 ───────────────────────────
agent: {
workspace: "~/.openclaw/workspace",
model: {
primary: "anthropic/claude-sonnet-4-5"
}
},
// ─── 多 Agent 定义 ─────────────────────
agents: {
planner: {
workspace: "~/.openclaw/workspace-planner",
model: { primary: "anthropic/claude-sonnet-4-5" }
},
writer: {
workspace: "~/.openclaw/workspace-writer",
model: { primary: "anthropic/claude-sonnet-4-5" }
}
},
// ─── Agent 间通信权限(关键!)────────
tools: {
agentToAgent: {
enabled: true,
allow: ["main", "planner", "writer"]
}
},
// ─── 消息路由(Bindings)────────────────
bindings: [
{
// 飞书私聊消息 → 主编 Agent 处理
agentid: "main",
match: {
channel: "feishu",
accountid: "main"
}
},
{
// 如需让策划 Agent 独立接收消息,可配置
agentid: "planner",
match: {
channel: "feishu",
accountid: "main",
peerid: "planner-group-id"
}
}
],
// ─── 飞书频道配置 ──────────────────────
channels: {
feishu: {
enabled: true,
accounts: {
main: {
appid: "cli_你的飞书AppID",
appsecret: "你的飞书AppSecret"
}
}
}
},
// ─── 会话配置 ──────────────────────────
session: {
scope: "per-sender",
reset: {
mode: "daily",
atHour: 4,
idleMinutes: 120
}
},
// ─── 成本控制 ──────────────────────────
limits: {
maxTokensPerTurn: 50000,
budgetPerDay: 5.00
}
}
通信机制详解
在 OpenClaw 里,多 Agent 之间不会像 IM 那样直接互发私信,而是通过「会话(Session)+ 工具」来间接协作。你可以理解为:所有对话都经过 Gateway,由 Session 层统一路由。
1. Session 工具家族:多 Agent 协作的底座
官方提供了一组 Session 工具,用来列出会话、发送消息、拉历史、创建子任务:
sessions_list | ||
sessions_history | ||
sessions_send | ||
sessions_spawn |
这几个工具都跑在 Gateway 的 Session 层之上,本质上是在不同 Session 之间转消息,而不是直接在两个 Agent 对象之间打 API。
2. sessions_send:最常用的 Agent→Agent 协作方式
在多 Agent 内容团队里,最直观的协作方式就是:主编 Agent 把任务通过 sessions_send 丢给策划或写作 Agent。
可以类比成这样一条消息链:
┌─────────┐ sessions_send("agent:planner", "请为 AI 工具主题做选题策划") ┌─────────┐
│ chief │ ─────────────────────────────────────────────────────────────→ │ planner │
│ (main) │ │ │
│ │ ←───────────────────────────────────────────────────────────── │ │
└─────────┘ sessions_send("agent:main", "选题方案如下:...") └─────────┘
更准确地说:
•sessions_send 的目标是某个 Session(通常与你为某个 Agent 配置的会话 key 绑定)
•工具会在目标 Session 里触发一次「像用户发来一条新消息」那样的处理流程
•处理完成后,可以通过 announce / 后续消息把结果再路由回主编的 Session
重要:这是一种「通过 Session 转发指令」的机制,不是两个 Agent 直接互相调用函数。
3. A2A 行为调优:Session 配置而不是「全局开关」
Agent 间的通信行为(例如 ping–pong 往返轮数),主要通过 Session / 工具相关配置来调优,例如:
•session.agentToAgent.maxPingPongTurns:限制一次 A2A 对话最多往返几轮
•sessions_send 的 timeoutSeconds:控制是「等待对方回复」还是「fire‑and‑forget」
这意味着:
•官方并没有提供一个叫 tools.agentToAgent.allow 的白名单开关
•真正的安全与边界控制,更多是通过:
给不同 Agent 暴露不同的工具集合(工具白名单)
•在各自的 AGENTS.md 中明确「你可以对哪些 Agent 使用 sessions_send,在什么场景下使用」
•以及上层工作流(workflow.yaml)中写死协作顺序
4. 实战建议:统一由「主控 Agent + 工作流」发起通信
为了避免 A2A 乱成「Agent 群聊」,推荐的实践是:
•选一个 主控 Agent(例如本文中的主编 / controller)
•约定:只有主控 Agent 可以对其他 Agent 使用 sessions_send / sessions_spawn
•其他 Agent(planner / writer 等)只对主控回复,不主动互相抛任务
这样你的通信拓扑永远是「星型」而不是「网状」,排错和成本控制都会简单很多。
第四步:配置定时任务(自动触发)
OpenClaw 支持两种定时机制。对于内容团队,我们组合使用:
4.1 Heartbeat(心跳巡检)
创建 ~/.openclaw/workspace/HEARTBEAT.md:
# 每日巡检清单
每次心跳时检查以下内容:
- [ ] 是否有 planner 或 writer 发来的新消息需要处理
- [ ] 今日是否已完成内容发布计划
- [ ] 飞书群是否有需要回复的用户留言
如果没有待处理事项,回复 HEARTBEAT_OK。
4.2 Cron(定时任务)
# 每天早 8 点自动触发选题流程
openclaw cron add
--name "daily-content"
--schedule "0 8 * * *"
--agent main
--message "开始今日内容生产流程:请向 planner 发送选题需求,主题方向为 AI 工具推荐领域的最新热点"
# 每周一早 10 点触发数据复盘
openclaw cron add
--name "weekly-review"
--schedule "0 10 * * MON"
--agent main
--message "请复盘上周内容数据,总结表现最好和最差的文章,给出本周优化建议"
# 查看已配置的定时任务
openclaw cron list
第五步:启动并测试
5.1 启动网关
# 启动 OpenClaw 网关(后台运行)
openclaw gateway start
# 查看运行状态
openclaw gateway status
# 查看实时日志
openclaw gateway logs --follow
5.2 手动测试完整流程
打开一个新的终端窗口,手动触发一次完整流程:
# 方式一:通过 CLI 直接对话
openclaw chat --agent main
# 然后输入:
> 帮我启动今天的内容生产流程,选题方向是"2026年最值得关注的AI Agent框架"
你应该看到的执行过程:
📝 chief (main): 收到任务,正在联系策划...
→ sessions_send("agent:planner", "请为以下主题做选题策划:
2026年最值得关注的AI Agent框架。
要求:提供2-3个差异化角度...")
📋 planner: 收到选题需求,开始策划...
→ web_search("2026 AI Agent 框架 最新")
→ 输出选题方案
→ sessions_send("agent:main", "选题方案如下:
推荐角度:从'程序员实际体验'切入,横评5个框架...")
📝 chief (main): 收到选题方案,审核中...
→ 审核通过 ✅
→ sessions_send("agent:writer", "请根据以下选题方案撰写文章:
[附带完整的选题方案]...")
✍️ writer: 收到写作任务,开始撰写...
→ web_search("CrewAI vs LangGraph vs OpenClaw 对比 2026")
→ 撰写文章(约 3-5 分钟)
→ sessions_send("agent:main", "文章初稿如下:
[完整文章 + 3个标题备选]...")
📝 chief (main): 收到初稿,进行最终审核...
→ 审核检查表逐项确认
→ 输出最终稿件 + 审核意见
5.3 验证 Agent 间通信
# 查看各 Agent 的会话状态
openclaw sessions list
# 查看策划 Agent 的对话历史
openclaw sessions history --agent planner
# 查看写作 Agent 的对话历史
openclaw sessions history --agent writer
第六步:接入飞书通知(可选)
让审核通过的稿件自动推送到飞书群。
6.1 创建飞书机器人
1.打开 飞书开放平台
2.创建企业自建应用
3.开启”机器人”能力
4.获取 App ID 和 App Secret
5.将机器人添加到目标飞书群
6.2 更新配置
将 openclaw.json 中的飞书配置替换为你的真实凭证:
channels: {
feishu: {
enabled: true,
accounts: {
main: {
appid: "cli_你的真实AppID",
appsecret: "你的真实AppSecret"
}
}
}
}
6.3 重启生效
openclaw gateway stop && openclaw gateway start
现在,主编 Agent 审核通过的稿件会自动推送到飞书群。
完整文件清单
搭建完成后,你的文件结构如下:
~/.openclaw/
├── openclaw.json # 全局配置(路由、通信、频道)
├── workspace/ # 主编 Agent 工作区
│ ├── SOUL.md # 主编人格定义
│ ├── AGENTS.md # 主编工作规则
│ └── HEARTBEAT.md # 心跳巡检清单
├── workspace-planner/ # 策划 Agent 工作区
│ ├── SOUL.md # 策划人格定义
│ └── AGENTS.md # 策划工作规则
└── workspace-writer/ # 写作 Agent 工作区
├── SOUL.md # 写作人格定义
└── AGENTS.md # 写作工作规则
常见问题排查
Agent 间消息发不出去
# 检查 agentToAgent 是否开启
# openclaw.json 中必须有:
{
"tools": {
"agentToAgent": {
"enabled": true,
"allow": ["main", "planner", "writer"]
}
}
}
# 检查 Agent 是否正常注册
openclaw agents list
# 检查网关日志
openclaw gateway logs --follow
Agent 回复太慢
# 检查 API Key 是否有效
openclaw doctor
# 考虑给不同 Agent 用不同模型
# 策划和写作用 claude-sonnet(性价比),主编审核用 claude-opus(高质量)
成本超出预期
# 查看今日用量
openclaw usage today
# 降低成本的方法:
# 1. 设置每日预算上限
# 2. 策划/写作用更便宜的模型
# 3. 减少 Heartbeat 频率(从 30 分钟改为 60 分钟)
配置不生效
# 验证配置文件语法
openclaw doctor
# 重启网关
openclaw gateway stop && openclaw gateway start
# 注意:修改 SOUL.md/AGENTS.md 不需要重启
# 修改 openclaw.json 需要重启
进阶:扩展到 6 人团队
当 3 人团队跑通后,你可以按同样的方式扩展:
# 添加设计 Agent
openclaw agents add designer --workspace ~/.openclaw/workspace-designer
# 添加数据 Agent
openclaw agents add analyst --workspace ~/.openclaw/workspace-analyst
# 添加运营 Agent
openclaw agents add operator --workspace ~/.openclaw/workspace-operator
扩展后的协作拓扑:
┌──────────┐
│ 📝 chief │
└────┬─────┘
┌─────────────┼─────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌──────────┐
│ planner │ │ analyst │ │ operator │
└────┬────┘ └─────────┘ └──────────┘
│
▼
┌─────────┐
│ writer │
└────┬────┘
│
▼
┌──────────┐
│ designer │
└──────────┘
更新 openclaw.json 的通信权限:
tools: {
agentToAgent: {
enabled: true,
allow: ["main", "planner", "writer", "designer", "analyst", "operator"]
}
}
成本参考
| ¥200 | ||||
| ¥500 | ||||
| ¥900 |
以上基于 Claude Sonnet 模型估算。使用国产模型(如通义千问)成本可降低 60-80%。国内的其他模型也可以考虑的
总结
你现在拥有了一个可以 7×24 小时运行的 AI 内容团队:
•主编 Agent:协调全局,审核质量
•策划 Agent:挖掘选题,规划角度
•写作 Agent:撰写文章,打磨内容
它们通过 Gateway,由 Session 层统一路由,自动传递任务和成果,通过 Cron 定时触发每日工作流,通过飞书推送最终结果。
开发第一步行动:
1.按本教程搭建 3 Agent 团队
2.跑通一次完整的选题→写作→审核流程
3.配置 Cron 定时任务,实现每日自动化
4.根据效果扩展到 6 Agent 完整团队