OpenClaw 多 Agent 配置方案封面图

OpenClaw 多 Agent Blog Generator 配置方案

🎧 收听播客版本

⏱️ 时长约 1 分 28 秒 | 📥 也可以在通勤、运动时收听


📋 问题来源

背景

在 OpenClaw 多 Agent 系统中,不同 Agent 承担着不同的职责:

  • Work Agent 💼 - 专注于工作相关任务,如行业动态整理、周报生成
  • Main Agent 🎯 - 处理个人博客、技术文章写作
  • Life Agent 🌱 - 负责生活记录、日程管理(暂未启用博客功能)

最初,blog-generator 技能设计为单一模式,所有 Agent 调用时都使用相同的配置和行为。这导致了一系列问题。

遇到的问题

1. 内容类型混淆

Work Agent 需要发布行业动态industry-news 集合,而 Main Agent 需要发布个人博客blog 集合。单一配置无法区分这两种需求。

2. 作者身份混乱

  • Work Agent 发布的行业周报作者应该是工作身份(如 <工作身份>
  • Main Agent 发布的个人博客作者应该是个人身份(如 <个人身份>

单一配置导致作者身份无法正确区分。

3. 分类体系冲突

个人博客使用 4 个标准分类:

  • OpenClaw
  • AI Agent
  • 技术实践
  • 技术思考

行业动态使用行业分类:

  • 光伏
  • 锂电
  • 储能

4. 功能需求差异

功能Work AgentMain Agent
数据引用链接✅ 必需⚠️ 可选
播客音频✅ 必需✅ 必需
行业周报格式✅ 必需❌ 不需要
4 个标准分类❌ 不需要✅ 必需

5. 代码维护困难

如果为每个 Agent 创建独立的技能副本,会导致:

  • 代码重复
  • 维护成本增加
  • 通用功能更新需要同步多处

💡 解决方案

方案 C:核心 Skill + Agent 配置覆盖

经过对比分析,选择了方案 C:保持 blog-generator 在全局 skills 目录共享,通过各 Agent 的 TOOLS.md 进行定制配置。

文件结构

<OpenClaw 安装目录>/skills/
└── blog-generator/
    ├── SKILL.md                          # 全局共享技能
    └── scripts/
        └── get-agent-config.sh           # Agent 配置读取脚本

<用户配置目录>/agents/
├── work/
│   └── workspace/
│       └── TOOLS.md                      # Work Agent 配置
└── main/
    └── workspace/
        └── TOOLS.md                      # Main Agent 配置

配置实现

1. Work Agent 配置

文件位置<用户配置目录>/agents/work/workspace/TOOLS.md

核心配置

### 内容发布规范

- **内容集合**`industry-news`
- **默认作者**`<工作身份>`
- **内容类型**:行业动态周报(光伏、锂电、储能)
- **禁用类型**`blog`(不发布个人博客)

### 必需功能

- ✅ 数据引用:所有数据必须标注来源,链接到具体页面
- ✅ 播客音频:每篇周报生成音频版本
- ✅ 行业周报格式:7 个标准章节

2. Main Agent 配置

文件位置<用户配置目录>/agents/main/workspace/TOOLS.md

核心配置

### 内容发布规范

- **内容集合**`blog`
- **默认作者**`<个人身份>`
- **内容类型**:技术博客(4 个标准分类)
- **禁用类型**`industry-news`(不发布行业动态)

### 博客分类规范

只使用以下 4 个标准分类:
1. OpenClaw - OpenClaw 平台相关实践
2. AI Agent - 大模型、智能体技术探索
3. 技术实践 - 开发工具、自动化
4. 技术思考 - AI 文明、技术趋势

3. SKILL.md 配置读取机制

blog-generator/SKILL.md 中添加 Agent 配置读取章节:

## Agent 配置读取

### 配置读取顺序

1. 读取当前 agent 的 `TOOLS.md` 中的 `Blog Generator 定制配置`
2. 如果没有配置,使用默认值

### 配置优先级

1. **Agent TOOLS.md 配置**(最高优先级)
2. **用户明确指定的参数**
3. **默认配置**(最低优先级)

✨ 方案优势

1. 代码复用

通用功能(播客生成、音频处理、Git 操作)只维护一份,所有 Agent 自动继承。

对比方案 B(拆分多个 Skill):

  • ❌ 方案 B:每个 Agent 一个 Skill 副本,代码重复 3 倍
  • ✅ 方案 C:只有 1 份 SKILL.md,维护成本降低 66%

2. 职责清晰

不同 Agent 处理不同类型内容,互不干扰:

Agent职责内容集合作者
Work行业动态周报industry-news<工作身份>
Main个人博客/技术文章blog<个人身份>
Life暂不处理 Blog--

3. 易于扩展

添加新 Agent 只需创建配置文件,无需修改核心技能:

# 为新 Agent 添加配置
mkdir -p <用户配置目录>/agents/new-agent/workspace
cat > <用户配置目录>/agents/new-agent/workspace/TOOLS.md << 'EOF'
# New Agent 配置
内容集合:blog
默认作者:<作者名>
EOF

4. 灵活定制

每个 Agent 可以有自己的行为规范:

  • Work Agent:强制数据引用、行业周报格式
  • Main Agent:4 个标准分类、SVG 封面图
  • Life Agent:未来可配置生活记录格式

5. 集中维护

修改通用功能(如播客音频生成逻辑)只需更新 SKILL.md,所有 Agent 自动生效。


🛠️ 实践总结

实施步骤

1. 创建 Agent 配置文件

为每个需要定制行为的 Agent 创建 TOOLS.md

# Work Agent
cat > <用户配置目录>/agents/work/workspace/TOOLS.md

# Main Agent
cat > <用户配置目录>/agents/main/workspace/TOOLS.md

2. 更新 SKILL.md

添加 Agent 配置读取机制和数据引用规范:

## Agent 配置读取
## 行业动态文章数据引用规范

3. 创建配置读取脚本

cat > <OpenClaw 安装目录>/skills/blog-generator/scripts/get-agent-config.sh

4. 测试验证

  • Work Agent 创建行业周报 → 发布到 industry-news/
  • Main Agent 创建个人博客 → 发布到 blog/

使用示例

Work Agent 调用

# 用户请求
"创建一篇光伏行业周报"

# 自动行为
- 发布到:src/content/industry-news/光伏/pv-weekly-20260301.md
- 作者:<工作身份>
- 包含:数据引用、播客音频、行业周报格式

Main Agent 调用

# 用户请求
"写一篇 OpenClaw 多 Agent 配置方案的博客"

# 自动行为
- 发布到:src/content/blog/openclaw/multi-agent-config.md
- 作者:<个人身份>
- 分类:OpenClaw
- 包含:SVG 配图、播客音频

注意事项

1. 配置优先级

确保配置读取顺序正确:

Agent TOOLS.md > 用户指定参数 > 默认配置

2. 数据引用规范

Work Agent 发布行业动态时:

  • ✅ 链接到具体页面(新闻文章、报告页面)
  • ❌ 不链接网站首页

3. 敏感信息脱敏

所有 Agent 创建内容时都需要脱敏:

  • API Token、密钥 → cli_xxxxxxxxxxxxxxxx
  • 用户 ID → ou_xxx
  • 公司名称 → 某中型锂电企业
  • 具体金额 → 数百万元

📊 效果对比

实施前

问题影响
内容类型混淆Work/Main Agent 发布内容混在一起
作者身份混乱无法区分工作/个人身份
分类体系冲突行业分类 vs 标准分类
代码维护困难需要多处同步更新

实施后

改进效果
内容隔离Work 发布 industry-news,Main 发布 blog
身份清晰Work=<工作身份>,Main=<个人身份>
分类独立各自使用合适的分类体系
集中维护通用功能只维护一份

🎯 总结

多 Agent 配置方案成功解决了 OpenClaw 系统中不同 Agent 的内容发布需求差异问题。通过核心 Skill 共享 + Agent 配置定制的方式,实现了:

  1. 代码复用 - 通用功能集中维护
  2. 职责分离 - 不同 Agent 处理不同类型内容
  3. 易于扩展 - 新 Agent 只需添加配置文件
  4. 灵活定制 - 每个 Agent 有自己的行为规范

这个方案为 OpenClaw 多 Agent 系统的技能共享和定制提供了一个可参考的模式。


Related Posts

OpenClaw 记忆管理原理:从文件结构到语义搜索的深度解析

OpenClaw 的记忆系统如何工作?MEMORY.md 和 memory 目录有什么区别?memory-search 是如何实现语义检索的?本文深入解析 OpenClaw 的记忆管理架构,从文件组织、搜索原理到最佳实践。

多 Agent 协作实战:从理论到实践的深度对比分析

通过五子棋游戏开发对比 Multi-Agent 与单 Agent 的工作流程,分析各自优劣势、适用场景,并探讨 OpenClaw 多 Agent 架构在实际应用中的技术挑战与解决方案。