郑工长

OpenClaw 多 Agent 架构:从单兵作战到集团军,玩法的本质提升

发布于 2026年2月23日 | 分类: AI随心分享

OpenClaw 多 Agent 架构:从单兵作战到集团军,玩法的本质提升

你好,我是郑工长。

最近很多玩 OpenClaw 的朋友可能有这样的想法:主 agent 用得好好的,为什么还要搞多 agent?这不是给自己找麻烦吗?

我的回答很简单:如果你只是玩玩,一个 agent 够了。但如果你想把 OpenClaw 真正用到生产环境,多 agent 不是可选项,是必选项。

今天我把多 agent 架构的完整实现方案复盘一下,从为什么创建、怎么创建、到怎么使用,一次性讲透。看明白了吗?这背后,是从单兵作战到集团军作战的范式转变。

为什么需要多 agent?别把鸡蛋放在一个篮子里

很多人一开始都是一个 agent 走天下,配置、技能、记忆全在一起。用起来挺方便,但时间一长,问题就来了。

问题一:配置冲突

主 agent 要用便宜的模型跑定时任务,但你想用更好的模型写文章。改吧,怕影响现有任务;不改吧,内容质量上不去。这就是典型的配置耦合问题。

工程第一定律:不同的职责,应该有不同的配置。混在一起,早晚出问题。

问题二:技能污染

主 agent 装了各种技能,有的用来管理系统,有的用来写文章,有的用来查数据库。时间一长,自己都忘了哪些技能是干嘛的。想卸载一个,又怕影响其他功能。

问题三:记忆混乱

主 agent 的记忆文件里,既有系统配置记录,又有文章内容记录,还有日常对话记录。想找点什么东西,翻半天找不到。

记忆不是仓库,是索引。什么都有,等于什么都没有。

问题四:权限风险

主 agent 能访问所有资源,一旦某个技能出问题,可能影响整个系统。这就是权限过度集中的风险。

看明白了吗?多 agent 不是炫技,是工程演进的必然结果。就像公司大了要分部门一样,agent 多了要分职责。

怎么创建多 agent?三个核心配置文件

创建新 agent 不难,难的是理解每个配置的作用。我把多 agent 的配置结构拆解一下,你照着做就行。

目录结构

~/.openclaw/agents/
├── main/                    # 主 agent(系统管理)
│   ├── agent.json
│   └── models.json
│
└── content-creator/        # 内容创作 agent
    ├── agent.json
    └── models.json

agent.json:定义 agent 的身份和职责

{
  "name": "内容创作助手",
  "description": "专注于内容创作的 Agent,擅长文章生成、视频脚本、知识库管理",
  "identity": {
    "name": "内容助手",
    "emoji": "✍️",
    "style": "专业、高效、内容创作导向"
  },
  "workspace": "/Users/zhenggongzhang/.openclaw/workspace-content",
  "defaultModel": "dashscope/qwen3.5-plus",
  "skills": [
    "content-creation",
    "notion",
    "mysql"
  ],
  "capabilities": {
    "contentCreation": true,
    "articleGeneration": true,
    "videoScript": true,
    "hotTopicAnalysis": true
  },
  "constraints": {
    "readOnlyProjects": [
      "/Users/zhenggongzhang/Desktop/myproject/zgz-ai"
    ]
  }
}

关键字段说明

字段 作用 建议
name agent 名称,用于识别和切换 用中文,好记
workspace 独立工作空间 每个 agent 独立目录
defaultModel 默认使用的模型 根据用途选择
skills 加载的技能列表 只加载需要的技能
constraints 访问限制 最小权限原则

models.json:定义可用的模型和 API Key

{
  "providers": {
    "dashscope": {
      "baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
      "apiKey": "sk-xxx",
      "api": "openai-completions",
      "models": [
        {
          "id": "qwen3.5-plus",
          "name": "Qwen3.5 Plus (阿里)",
          "maxTokens": 8192
        }
      ]
    },
    "zhipu": {
      "baseUrl": "https://open.bigmodel.cn/api/paas/v4",
      "apiKey": "xxx",
      "api": "openai-completions",
      "models": [
        {
          "id": "glm-4.7-flash",
          "name": "GLM-4.7-Flash",
          "maxTokens": 4096
        }
      ]
    }
  },
  "defaultModel": "dashscope/qwen3.5-plus"
}

关键建议

建议 说明
按用途选择模型 内容创作用好模型,系统管理用便宜模型
多个 provider 备份 防止单点故障
defaultModel 明确 避免意外使用错误模型

工作空间隔离:每个 agent 有自己的"家"

~/.openclaw/workspace-content/
├── SOUL.md              # agent 的灵魂和风格
├── USER.md              # 用户信息
├── IDENTITY.md          # 身份定义
├── TOOLS.md             # 工具配置笔记
├── MEMORY.md            # 长期记忆(可选)
├── memory/              # 每日记忆
│   └── 2026-02-23.md
├── skills/              # 专属技能
│   └── content-creation/

工作空间隔离的好处

  • ✅ 记忆独立,不会混淆
  • ✅ 技能独立,不会冲突
  • ✅ 配置独立,不会互相影响
  • ✅ 数据独立,便于备份和迁移

创建后如何使用?三种切换方式

方式一:命令切换

/agent content-creator   # 切换到内容创作 agent
/agent main              # 切换回主 agent
/agent                   # 查看当前 agent

方式二:定时任务指定 agent

{
  "id": "xxx",
  "agentId": "content-creator",  // ← 指定 agent
  "name": "内容创作 - 早间探索",
  "payload": {
    "model": "dashscope/qwen3.5-plus",
    "message": "请执行内容创作技能..."
  }
}

优点

  • ✅ 任务与 agent 绑定
  • ✅ 自动执行,无需人工切换
  • ✅ 使用正确的技能和配置

多 agent 的最佳实践:职责分离

主 agent(main)

职责 说明
系统管理 配置修改、Gateway 重启、cron 管理
通用对话 日常聊天、问题咨询
跨 agent 协调 管理多个 agent 的任务
系统监控 查看日志、状态检查

配置建议

  • 使用便宜模型(如 glm-4.7-flash)
  • 加载系统管理技能
  • 访问所有资源的权限

内容创作 agent(content-creator)

职责 说明
内容创作 写文章、生成视频脚本
IP 内容 需要特定风格的内容
Notion 管理 知识库管理、文档保存
数据库操作 MySQL 查询、数据管理

配置建议

  • 使用好模型(如 qwen3.5-plus)
  • 加载内容创作技能
  • 只读访问项目代码

常见问题解答

Q1:多 agent 会消耗更多资源吗?

A:不会。agent 只是配置隔离,不是进程隔离。多个 agent 共享同一个 Gateway 进程。

Q2:agent 之间能通信吗?

A:可以。通过 sessions_send 工具,一个 agent 可以发送消息给另一个 agent。但一般不需要,各自做好自己的事就行。

Q3:需要为每个 agent 配置不同的 API Key 吗?

A:不需要。多个 agent 可以共用同一个 API Key。但如果想分开计费或限制配额,可以配置不同的 Key。

Q4:切换 agent 后,之前的对话历史还在吗?

A:在。每个会话绑定到创建时的 agent,切换 agent 不影响已有会话。

Q5:多少个 agent 合适?

A:具体看需求。

  • 1 个主 agent(系统管理)
  • N 个专用 agent(内容创作、数据分析等)

总结

多 agent 不是炫技,是工程演进的必然结果。

当你只有一个 agent 时,所有东西都混在一起,配置、技能、记忆、权限。用起来方便,但时间一长,问题就来了。

当你有了多个 agent,每个 agent 有自己的职责、配置、技能、记忆。就像公司分部门一样,各司其职,互不干扰。

真正的工程进步,不是把功能堆得更多,而是把结构设计得更合理。

从单兵作战到集团军,不是数量变化,是玩法的本质提升。

强大的不是 agent,是你的架构设计。架构不对,再强也发挥不出来。