找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4009

积分

0

好友

549

主题
发表于 2 小时前 | 查看: 3| 回复: 0

OpenClaw多智能体与飞书协作架构示意图

本教程将带你一步步搭建一个中央管控式多 Agent 架构:一个由4个Agent组成的团队无缝对接飞书。你将扮演团队“小主”,而“总舵主”Agent(管家)则负责接收你的需求、拆分任务、派发工作并汇总汇报。完成部署后,你就可以在飞书里实现“一句话派活,自动收结果”的高效协作。

本文能帮你做什么

  • 搞懂架构:在OpenClaw中搭建中央管控式多智能体架构,让4个Agent(主管统筹,调研/写作/写代码分工协作)各司其职。
  • 接上飞书:为每个Agent配置对应的飞书Bot,让你在飞书群里就能发号施令、接收汇报。
  • 自动协作:你只需对“总舵主”(主管Agent)说一句话,它会自动拆解任务、分派给调研员、写作员、开发员,并汇总最终结果向你汇报。

适合谁看:适合从未接触过多智能体协作,甚至对“OpenClaw如何连接飞书”都不太熟悉的读者。教程内容以复制粘贴命令为主,按步骤操作即可完成搭建。

一、先建立整体概念

本教程搭建的是中央管控式多Agent架构:一个由 4个Agent 组成的团队,你是他们的小主总舵主是主管Agent(负责统筹与派活),其余三位成员各管一块。

角色 Agent ID 职责
总舵主 manager 主管:接小主的需求,拆任务、派活、汇总并向小主汇报
包打听 researcher 调研:查资料、写调研报告
妙笔 writer 写作:写文章、草稿
码匠 coder 开发:写脚本、代码

每个Agent都拥有独立的“工位”(工作区)、“账号”(认证)和“记忆”(对话与记忆),确保角色之间互不干扰。

二、做准备:搭好第一个Agent

2.1 环境准备(以Mac为例)

在终端里依次执行以下命令(已安装过的步骤可以跳过):

# 1. 安装 Homebrew(如已安装可跳过)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 2. 安装 Node.js
brew install nodejs

# 3. 安装 OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bash

# 4. 验证是否安装成功
openclaw --version

能看到版本号就说明安装成功;如果没有任何反应,请重新执行第3步。

2.2 初始化配置

执行初始化命令:

openclaw onboard --install-daemon

然后按照提示操作即可:

  • 选择 yes 开始配置。
  • 选择 QuickStart 快速模式。
  • 选择你常用的AI模型(如OpenAI / Claude / Gemini)。
  • 其他高级选项可以先跳过,后续可以再修改。

完成之后,你就拥有了第一个可用的Agent(默认角色通常是“总舵主”即主管)。

三、搭团队:创建4个Agent

3.1 用“工位 + 身份”理解Agent

在中央管控式架构里,每个Agent相当于团队中的一员,具备以下要素:

  • 工位(Workspace):存放工作规范(AGENTS.md)、人设(SOUL.md)、小主资料(USER.md)和工作记忆(memory/)。
  • 身份卡(agentDir):包含认证与登录信息(例如飞书Bot的配置)。
  • 对话记录(Sessions):和不同人或群的聊天记录,按会话进行隔离。

3.2 目录结构长什么样

所有相关文件都存放在 ~/.openclaw/ 目录下,结构大致如下:

~/.openclaw/
├── openclaw.json              # 全局配置
├── workspace/                 # 总舵主(主管)的工位
│   ├── AGENTS.md              # 工作流程与规范
│   ├── SOUL.md                # 人设与性格
│   ├── USER.md                # 小主(你)的信息
│   └── memory/                # 记忆存储
├── workspace-researcher/       # 包打听的工位
├── workspace-writer/           # 妙笔的工位
├── workspace-coder/           # 码匠的工位
├── agents/
│   ├── boss/agent/            # 总舵主的认证与会话
│   │   ├── auth-profiles.json
│   │   └── sessions/
│   ├── researcher/agent/
│   ├── writer/agent/
│   └── coder/agent/
└── skills/                     # 共享技能库(所有Agent可用)

3.3 怎么“招人”:两种方式

方式一:命令行(推荐)
使用命令快速添加其他成员:

# 添加调研员、写作员、开发员
openclaw agents add researcher
openclaw agents add writer
openclaw agents add coder

# 查看当前所有Agent及绑定关系
openclaw agents list --bindings

命令行向导会自动创建对应的工作区并配置好基础设置。

方式二:改配置文件
直接编辑 ~/.openclaw/openclaw.json 文件,按照官方文档增加对应的agent与workspace配置(这种方式更适合已经熟悉OpenClaw结构的用户)。

3.4 三条重要原则

  • 认证不能共用:每个Agent必须拥有自己独立的 auth-profiles.json 文件,切勿复制粘贴混用。
  • 工作区不能复用:不同的Agent不能共用同一个agentDir目录,否则会导致认证信息混乱。
  • 技能分两层:某个特定workspace下的 skills/ 目录仅供该Agent使用;而 ~/.openclaw/skills/ 目录下的技能是全员共享的。

四、创建飞书Bot:让Agent在飞书“上线”

每个Agent都需要对应飞书里的一个自建应用(Bot)。你需要完成两件事:在飞书开放平台创建应用,以及在OpenClaw中将每个Agent与对应的Bot连接起来。

4.1 在飞书开放平台创建Bot

  1. 打开飞书开放平台,登录后创建企业自建应用
  2. 为每个Agent单独创建一个应用,例如:
    • 总舵主Bot(主管)
    • 包打听Bot(调研)
    • 妙笔Bot(写作)
    • 码匠Bot(开发)
  3. 在每个应用里获取以下四项信息(后续配置OpenClaw时会用到):
    • App ID
    • App Secret
    • Verification Token
    • Encrypt Key
  4. 为每个应用开启机器人能力,并根据需求勾选相应权限(例如):
    • 获取用户基本信息
    • 获取与更新群组消息、查看/更新群消息
    • 获取与发送单聊、群组消息
    • 接收群聊中@机器人消息、接收单聊消息
    • 以应用身份发消息
    • 获取与上传图片/文件
  5. 事件订阅:选择“使用长链接接收事件”,并添加“接收消息”事件。
  6. 在“版本管理与发布”中创建版本并发布应用。

4.2 在OpenClaw里配置飞书

针对每个Agent,分别执行一次以下命令,填入对应Bot的信息:

openclaw auth add --agent boss --channel feishu
openclaw auth add --agent researcher --channel feishu
openclaw auth add --agent writer --channel feishu
openclaw auth add --agent coder --channel feishu

根据提示输入该Bot的App ID、App Secret等信息即可完成认证配置。

4.3 建两个飞书群

  • 主工作群:只拉入“总舵主(主管)”这一个Bot。你将在这个群里发布任务、接收最终汇报。
  • 内部协作群:把总舵主、包打听、妙笔、码匠四个Bot全部拉入。你也可以加入此群旁观或插话,Agent之间的协作沟通主要在这里进行。

如何获取群ID:可以在飞书开放平台使用“获取群信息”接口查询,或者使用OpenClaw的sessions相关命令进行查看。

五、分工位:消息该由哪个Agent处理(Bindings)

人员齐备,Bot也已创建,接下来需要制定规则:哪里的消息,由哪个Agent来处理。这就是Bindings(绑定/路由)配置。

5.1 匹配顺序(从高到低)

OpenClaw会按照以下优先级顺序决定“这条消息交给谁处理”:

  1. 精准匹配:指定了具体用户ID或群ID。
  2. 群组匹配:指定了某个群组。
  3. 账号匹配:指定了某个Bot账号。
  4. 通道匹配:匹配整个通道(例如全部飞书消息)。
  5. 默认:以上规则均未命中时,交给默认的Agent处理。

5.2 推荐配置思路

利用“群组 + Bot账号”的组合来区分路由是简单有效的方法。你需要在 openclaw.json 文件的 bindings 字段中进行配置,示例如下:

{
  "bindings": [
    {
      "agentId": "boss",
      "match": {
        "channel": "feishu",
        "peer": { "kind": "group", "id": "主工作群ID" }
      }
    },
    {
      "agentId": "boss",
      "match": {
        "channel": "feishu",
        "accountId": "总舵主的AppID",
        "peer": { "kind": "group", "id": "协作群ID" }
      }
    },
    {
      "agentId": "researcher",
      "match": {
        "channel": "feishu",
        "accountId": "包打听的AppID",
        "peer": { "kind": "group", "id": "协作群ID" }
      }
    },
    {
      "agentId": "writer",
      "match": {
        "channel": "feishu",
        "accountId": "妙笔的AppID",
        "peer": { "kind": "group", "id": "协作群ID" }
      }
    },
    {
      "agentId": "coder",
      "match": {
        "channel": "feishu",
        "accountId": "码匠的AppID",
        "peer": { "kind": "group", "id": "协作群ID" }
      }
    }
  ]
}

将示例中的“主工作群ID”、“协作群ID”以及各Bot的AppID替换为你自己的实际信息即可。

六、开内线:让Agent之间能互相派活

仅仅建立群聊还不够,需要让总舵主(主管)能够给包打听、妙笔、码匠分派任务,即实现Agent之间的直接对话。

6.1 开启Agent间通信

在配置文件中启用Agent间通信功能(默认是关闭的):

{
  "tools": {
    "agentToAgent": {
      "enabled": true,
      "allow": ["boss", "researcher", "writer", "coder"]
    }
  }
}

6.2 会话可见范围

默认情况下,每个Agent只能查看自己的会话记录。为了实现协作,需要放宽可见范围,例如设置为所有Agent可见:

{
  "tools": {
    "sessions": {
      "visibility": "all"
    }
  }
}

各选项含义:

  • "self":只看自己(完全隔离)。
  • "tree":看自己及由自己派生的子任务(默认值)。
  • "agent":看同一Agent的所有会话。
  • "all":看所有Agent的所有会话(适合本教程的4个Agent协作场景)。

6.3 两种派活方式

方式 适用场景 通俗理解
sessions_send 向已有会话发送消息,让该Agent在“当前对话”中继续工作。 给同事发消息:“你手头这事帮忙处理一下。”
sessions_spawn 新建一个会话来执行一次性任务,不依赖于是否已有会话。 临时派个活,干完就结束。

示例(总舵主给包打听派发调研任务):

sessions_send({
  "sessionKey": "agent:researcher:feishu:group:协作群ID",
  "message": "包打听,请帮我调研一下 AI Agent 的最新发展趋势",
  "timeoutSeconds": 60
})

七、弥合信息差:建一个团队共享知识库

如果只有“总舵主派活、其他Agent私聊回复”的模式,妙笔和码匠可能无法知晓包打听已经提交了调研报告。解决办法是:建立一个共享目录,所有成员将产出物写入其中,总舵主和所有Agent都能读取。

7.1 创建共享目录

mkdir -p ~/.openclaw/shared/notes

建议采用以下目录结构:

~/.openclaw/shared/
├── board.md      # 团队公告(重要通知、动态)
├── tasks.md      # 任务看板(进行中 / 已完成)
└── notes/
    ├── research/ # 调研报告
    ├── drafts/   # 文章草稿
    └── code/     # 代码与说明

7.2 让Agent能搜到共享内容

在配置中为Agent的“记忆搜索”功能添加上共享目录路径,这样当它们使用memory搜索时,也会检索共享目录的内容:

{
  "agents": {
    "defaults": {
      "memorySearch": {
        "extraPaths": ["~/.openclaw/shared"]
      }
    }
  }
}

效果举例:包打听将调研报告保存到 shared/notes/research/ai-trends.md,妙笔通过 memory_search 工具或直接读取文件都能引用到这份报告。

7.3 使用规范示例

board.md(公告栏)示例:

# 团队公告栏

## 本周重点
- [日期] 包打听:AI Agent 技术调研 ✅ 已完成
- [日期] 妙笔:技术博客撰写 ➡️ 进行中
- [日期] 码匠:数据分析脚本 📅 待开始

## 说明
- Agent间可通过 sessions_send 协作
- 文档请统一放在 shared/notes/ 下

tasks.md(任务看板)示例:

# 任务看板

## 🔄 进行中
- 妙笔:《OpenClaw 实战指南》— 派发:总舵主,依赖:包打听的调研报告

## ✅ 已完成
- 包打听:AI Agent 技术调研 — 产出:shared/notes/research/ai-trends.md

## 📅 待开始
- 码匠:数据可视化脚本 — 派发:总舵主

7.4 在各Agent的AGENTS.md里写清分工

  • 总舵主(主管):接到小主任务后进行拆解 → 使用 sessions_send 派发给对应Agent → 及时更新 shared/tasks.md → 收到完成反馈后更新状态并向小主汇报。
  • 包打听:收到调研任务后执行,报告存入 shared/notes/research/,更新tasks.md,并回复总舵主。
  • 妙笔:先查看 shared/notes/ 中是否有参考资料,草稿存入 shared/notes/drafts/,定稿后更新tasks.md;需要补充资料时通过总舵主协调包打听。
  • 码匠:开发产出和说明存入 shared/notes/code/,更新tasks.md;需要技术调研时通过总舵主联系包打听。

八、实战演示:小主一句话触发完整流水线

下面以“写一篇AI Agent技术文章并配一个演示脚本”为例,演示小主只需说一句话,总舵主(主管)如何带队完成全流程。

8.1 小主在主工作群对总舵主说

我需要一篇关于AI Agent多智能体协作的技术文章,要有实际案例,最好配个演示脚本。

8.2 总舵主(主管)的处理

  1. 将需求拆解为三个子任务:调研(包打听)→ 文章(妙笔)→ 脚本(码匠)。
  2. 更新 shared/tasks.md 文件。
  3. 给包打听发送调研任务(示例):
    sessions_send({
      "sessionKey": "agent:researcher:feishu:group:协作群ID",
      "message": "包打听,请调研 AI Agent 多智能体协作的技术现状、主流方案和案例,报告保存到 shared/notes/research/",
      "timeoutSeconds": 120
    })
  4. 回复小主:“已安排包打听调研,完成后妙笔写文章、码匠做演示脚本,预计明天交付。”

8.3 包打听 → 妙笔 → 码匠

  • 包打听:查找资料、撰写报告 → 保存至 shared/notes/research/multi-agent-research.md → 更新tasks.md → 在协作群内回复总舵主。
  • 总舵主:基于调研报告,给妙笔分派写作任务(草稿存放于 shared/notes/drafts/)。
  • 妙笔:阅读调研报告、撰写文章 → 保存草稿 → 更新tasks.md → 回复总舵主。
  • 总舵主:根据文章内容,给码匠分派开发演示脚本的任务(代码存放于 shared/notes/code/)。
  • 码匠:编写脚本和说明文档 → 更新tasks.md → 回复总舵主。

8.4 总舵主向小主汇报

总舵主汇总所有结果后,在主工作群回复小主,例如:

任务全部完成。
📄 调研报告:shared/notes/research/multi-agent-research.md
✍️ 文章草稿:shared/notes/drafts/multi-agent-article.md
💻 演示脚本:shared/notes/code/multi-agent-demo/
如需修改再说。

在整个链路中,小主只说了最初的那一句话,其余所有拆解、派发、跟进、汇总工作均由总舵主(主管Agent)自动完成。

九、后续可以怎么做

  • 从简单任务练起:先尝试派发单一步骤的任务(例如只让包打听做一次调研),熟练后再尝试多步骤的复杂协作。
  • 调优人设与规范:根据Agent的实际协作表现,调整各自的SOUL.md(性格)、AGENTS.md(工作规范)文件。
  • 把规范写进公告:在 shared/board.md 中清晰地写明团队协作约定,确保所有Agent都知晓并遵守。
  • 定期复盘:让总舵主(主管)定期总结协作过程中出现的问题和改进点,持续优化流程。
  • 沉淀到共享库:将所有有价值的研究报告、文章草稿、代码脚本都规范地存入 shared/ 目录,逐步形成团队的专属知识库。

通过以上步骤,你就能在云栈社区所倡导的实践精神下,成功搭建一个高度自动化的多智能体协作系统。这种基于OpenClaw的中央管控式架构,不仅能极大提升任务处理效率,也为探索更复杂的多Agent应用场景打下了坚实的基础。




上一篇:开源AI智能体OpenClaw掀起“养龙虾”热潮,中国成全球普及焦点
下一篇:提升AI引用率:AEO与GEO策略下将内容写成“答案”的关键技巧
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-12 07:25 , Processed in 0.507598 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表