# 机器人 @机器人（Bot @Bot/Agent @Agent）完成复杂任务

飞书支持群聊中的多个 Bot（Agent) 相互 @，让多个 Agent 在同一个飞书群里分工协作、接力完成任务。你不需要把所有事情都交给一个 Agent，也不需要在不同工具之间来回转述需求。

它适合把一个多环节任务拆成多个明确角色，例如搜索、分析、写作、审核。你只需要发出第一条指令，后续的 @ 交接由 Agent 自动完成，协作过程对你可见，你也可以随时插话、打断和纠偏。

## 实现效果

假设你有一个专业调研的多 Agent 团队，通过 Agent @Agent 可以实现以下效果：

## 为什么需要 Agent @Agent

### 从单 Agent 到多 Agent：工作方式的升级

| 维度    | 单 Agent 模式         | Agent @Agent 多智能体协作             |
| --- | ---------------- | -------------- |
| 分工  | 一个 Agent 什么都做      | 每个 Agent 只专门负责一件事：搜索、分析、写作、审核 |
| 可见性 | 后台处理，你不知道中间发生了什么 | 所有协作在群里发生，每一步你都看得见          |
| 可控性 | 结果出来才能判断好不好      | 任何环节你都能插话、打断、纠偏             |
| 质量  | 自说自话，没有校验        | 角色之间互相传递、互相校验               |
| 扩展性 | 一个 Agent 能力有上限     | 可以不断加入新的专业 Agent              |

### 和后台多 Agent 调用的区别

很多多 Agent 框架是后台黑盒协作，前台看不到消息。
飞书 Agent @Agent 的差异化在于 **协作过程显性化**，而不是后台黑盒的 Agent-to-Agent 调用。
- 能看到 Agent 在和谁交接
- 知道当前卡在哪个 Agent
- 可以中途打断
- 能判断最终结果是谁产出的、问题出在哪

## 适合的任务类型

Agent @Agent 适合那些需要跑多个环节的任务：

| 场景     | 角色拆分               | 效果         |
| ------ | ------------------ | ---------- |
| 行业调研   | 搜索 → 分析 → 写报告 → 审核 | 一句话出一份专业简报 |
| 社媒内容生产 | 调研 → 文案 → 配图       | 全自动内容工作流   |
| 竞品监控   | 抓取 → 分析 → 报告       | 定期自动输出     |
| 用户反馈处理 | 采集 → 分类 → 总结报告     | 自动化反馈闭环    |
| 项目周报   | 信息收集 → 汇总 → 排版     | 免手动整理

## 搭建教程

下面以“产出一份国内新能源车 Q1 市场趋势简报”为例，演示如何搭建一套多 Agent 协作链路。

### Agent 团队搭建思路

不管你做什么任务，搭建多 Agent 协作的通用套路是：

- **拆角色**：把任务拆成几个明确分工（谁搜、谁分析、谁写、谁审）。
- **建群拉人**：把所有 Agent 拉进同一个群。
- **定总调度**：指定一个 Agent 当"项目经理"，负责接收需求、启动链条和最终交付。
- **写 Memory**：给每个 Agent 写清身份、流程、输出格式。
- **一句话触发**：@ 总调度说需求，后面全自动。

### 步骤一：设计 Agent 角色与协作流程

定义每个 Agent 负责什么，角色越清楚，协作越稳定。

#### 角色设计

| Agent 名称 | 角色   | 职责                |
| -------- | ---- | ------------------ |
| 总调度      | 项目经理 | 接需求、拆任务、最终交付       |
| 智能调研助手   | 搜索员  | 搜集公开数据和信息          |
| 数据分析师    | 分析师  | 对原始数据做结构化分析，提炼趋势、形成判断 |
| 报告撰写专家   | 报告手  | 将分析结论组织成可交付简报      |
| 调研审核员    | 审核员  | 检查数据准确性、表达清晰性、格式规范性

#### 协作流程

你只需要发出第一条指令，后面的 @ 交接建议全部由 Agent 自动完成。

```markdown
你 @总调度
→ 总调度 @智能调研助手
→ 智能调研助手 @数据分析师
→ 数据分析师 @报告撰写专家
→ 报告撰写专家 @调研审核员
→ 调研审核员 @总调度
→ 总调度 向你交付终稿
``` 

### 步骤二：创建 Agent 并建群

1. 创建一个 Agent 作为总调度。
    > 推荐使用 [飞书 aily](https://apaas.feishu.cn/ai/projects)。如有更深度的使用需求，可尝试 Claude Code、Codex、Cursor 工具，再配合 [飞书 CLI](https://open.larkoffice.com/document/mcp_open_tools/feishu-cli-let-ai-actually-do-your-work-in-feishu)。

2. 前往 [飞书开发者后台](https://open.larkoffice.com/app) 创建 4 个专业角色 Bot，并开启以下应用身份权限：
    - **获取群组中其他机器人和用户@当前机器人的消息**（im:message.group_at_msg.include_bot:readonly）
    - **获取机器人的基本信息** （application:bot.basic_info:read）

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/19c24e44d855d0f79741286669e84619_z9kl6nW0pf.png?height=1046&lazyload=true&maxWidth=400&width=3418)

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/29fc56a626124f036fe8e6c7d3eae073_ajgSjVOsPl.png?height=411&lazyload=true&maxWidth=400&width=1280)

3. 创建一个飞书群，例如“新能源车调研”，把所有 Agent 全部拉进群里。

### 步骤三：给每个 Agent 写 Memory

可直接复用以下内容：

- **总调度 Memory：**
```
你是"新能源车调研"群的总调度，负责接收用户需求，拆解任务，启动协作链条。
群内协作成员：
- @智能调研助手：数据搜索
- @数据分析师：趋势分析
- @报告撰写专家：写简报
- @调研审核员：质量审核
工作流程：
1. 用户@你发需求 → 回复确认 → @智能调研助手下达搜索指令（写清搜什么、时间范围、维度）
2. 后续环节由各 Bot 自动接力（智能调研助手→数据分析师→报告撰写专家→调研审核员）
3. 调研审核员审核通过后会@你，你把终稿发给用户
4. 用户中途追加需求时，判断该交给谁，直接@对应的人
规则：
- 你负责启动链条和最终交付
- 给智能调研助手的指令要具体明确（搜什么、时间范围、维度）
- 你自己不搜索、不分析、不写报告
```

- **智能调研助手 Memory：**
```
你是数据搜索员。被@时按指令搜集公开信息（行业报告、新闻、社媒讨论、官方数据）。按维度分类列出，每条标注来源。某维度没有可靠数据就明确说没有，不编造。
搜完后@数据分析师，把数据交给他，并告诉他按哪几个维度做分析。
```
- **数据分析师 Memory：**
```
你是趋势分析师。被@时对收到的数据按维度做结构化分析，每个维度给1-2条关键判断+数据支撑。判断只能基于收到的数据，不能编造。
分析完后@报告撰写专家，把结论交给他，并告诉他格式要求：标题→核心结论→分维度详情→启示建议。
```
- **报告撰写专家 Memory：**
```
你是报告手。被@时把收到的分析结论写成简报。格式：标题→核心结论（3句话）→分维度详情→对我们的启示（2-3条建议）。语言简洁专业，适合给管理层看。
写完后@调研审核员，请他确认质量。
```
- **调研审核员 Memory：**
```
你是审核员。被@时确认报告质量，请严谨地从数据准确性，表达清晰性，格式规范性三个角度做出审核
审核通过后@总调度，告诉他报告可以交付。
```

### 步骤四：一句话触发任务

你只需要在飞书群里发送：`@总调度 帮我做一份国内新能源车 Q1 的市场趋势简报`
，然后等待，agent 全程自动接力完成。

各 agent 根据自身职责完成任务，并最终交付高质量的产物。示意图如下：

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/469c3a087df2bd8975c5eb9f79b47cb1_6zdt5d3x4s.png?height=2160&lazyload=true&width=1700) | ![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/f6eda3a7f329ca8c4ce4331a9893320d_HwlJVMkLth.png?height=2160&lazyload=true&width=1700) | ![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/8979869239d7d7573f7fd5fb84170c92_RPs49zv8HY.png?height=2160&lazyload=true&width=1700)
---|---|---
![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/860e80059e8b1e3f51bb198ac0dd37bb_ufkLjGIPW2.png?height=2160&lazyload=true&width=1700) | ![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/f1f6de5b7057fe37e9b3c6967d1d2689_wy51Uj2gdF.png?height=2160&lazyload=true&width=1700) | ![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/42cc1baa4cdb597a52e705238922e56c_p7vpa8JVWQ.png?height=2160&lazyload=true&width=1700)

### 步骤五：收到终稿

调研审核员确认通过后，总调度会把终稿交付给你。如需调整或补充要求，你可以在群里直接追加指令，总调度会判断交给谁处理。

## 常见问题

### @了 Agent 但对方没有回复

**原因**： 智能体输出的 @ 是 Markdown 格式，没有以富文本方式发出，导致对方 Agent 没有收到触发信号。

**解决方案**：
- 确认 Agent 在群里（不在群里收不到 @）
- 检查 Agent 是否有接收群消息的权限
- 在智能体的提示词 / Memory 中要求它以富文本格式输出 @ mention

### 如果 Agent 不会 @ 怎么办

在 Memory 里强调必须 @ 某位智能体。可以把下面这段发给 Bot 让它学习：

```json 
📢 飞书群艾特格式教程
核心规则
在飞书群里艾特他人，必须使用富文本 post 类型，切勿用 text 类型。
✅ 正确格式模板
发送消息时使用以下格式：
action: send
msg_type: post
target: {"chat_id": "群ID"}
text: 内容 + <at user_id="对方的open_id"></at>
示例：
<at user_id="ou_081e49c7470890454e611eea70b2e9dd"></at> 报告已审核完成，请查收！
❌ 常见错误
错误写法: text 类型里写 @xxx, 正确写法: 用 post 类型
错误写法: <at id="ou_xxx">, 正确写法: <at user_id="ou_xxx">
错误写法: <at user_id=ou_xxx>, 正确写法: <at user_id="ou_xxx">
错误写法: <at user_id=""ou_xxx"">, 正确写法: <at user_id="ou_xxx">---
关键点
消息类型：必须用 post（富文本）
属性名：必须是 user_id（不是 id）
ID 格式：双引号包住 "ou_xxxxxx"
艾特标签：<at user_id="ou_xxxxxx"></at> 或带显示名 <at user_id="ou_xxxxxx">姓名</at>
``` 

