第 9 章 多智能体协作
- 解释 多智能体系统的组织架构与通信拓扑结构
- 说明 智能体路由在任务分流中的作用与触发条件
- 定义 子智能体角色边界与职责分工
- 运用 Claude Code 的 Task 工具实现子智能体工作流
- 设计 智能体间协作的层级结构或网络结构
- 评估 不同协作模式在金融场景中的适用性与成本权衡

在经济金融领域,复杂决策往往需要多方协作。投资银行的研报团队、对冲基金的分析师小组、风控委员会的多层审批,都是多角色协同的典型场景。本章介绍如何将这种协作模式迁移到 AI 智能体系统,构建能够分工协作的多智能体架构。
9.1 智能体路由
智能体路由(Agent Routing)是多智能体系统的任务调度中枢。它决定用户请求应该由哪个智能体处理,就像公司前台将来访者引导到正确的部门。
9.1.1 路由决策原理
路由的核心是关注点分离。每个智能体专注于自己擅长的领域,路由层负责将任务导向正确的处理者。
智能体路由 = 任务分类 + 智能体匹配 + 请求分发
好的路由设计能带来三个效益:
- 专业化水平提升:每个智能体深耕特定领域,积累专业知识
- 系统复杂度降低:避免单一智能体承担过多功能
- 可维护性增强:各智能体独立开发、测试和优化
Anthropic 在 Building Effective Agents 中强调,智能体系统应记录每一步决策过程。对于路由而言,这意味着记录路由决策依据、保留决策上下文、提供降级和回退机制的透明说明。
9.1.2 分流规则设计
路由分类可以基于三个维度:意图、风险和复杂度。
基于意图的分类
将用户输入映射到预定义的意图类别。金融客服场景示例:
| 意图类型 | 路由目标 | 示例请求 |
|---|---|---|
| 账户查询 | 账户服务智能体 | 我的余额是多少 |
| 资金转账 | 转账支付智能体 | 帮我转 1000 元给张三 |
| 理财咨询 | 理财顾问智能体 | 推荐适合我的基金 |
| 投诉建议 | 客户投诉智能体 | 我要投诉上次的服务 |
路由系统设计中需要注意三点:使用 LLM 或传统分类模型识别用户意图,为每个意图定义明确的触发特征,处理模糊或多意图请求的情况。
基于风险的分类
在金融等高风险领域,根据任务风险等级进行路由决策:
| 风险等级 | 判断条件 | 路由策略 |
|---|---|---|
| 低风险 | 查询余额、查看账单 | 自动化智能体处理 |
| 中风险 | 小额转账(<5000 元) | AI 智能体 + 详细日志 |
| 高风险 | 大额交易、修改密码 | 人在回路智能体 |
关键考量:定义清晰的风险评估标准,高风险操作必须包含人工审核环节,实施多层验证机制。
基于复杂度的分类
根据任务复杂度选择合适的处理模型,平衡成本与性能:
- 简单任务(事实查询、状态检查)→ 轻量级模型(Claude Haiku)
- 中等任务(简单计算、单一数据源)→ 标准模型(Claude Sonnet)
- 复杂任务(多步推理、多数据源整合)→ 强力模型(Claude Opus)
对经济金融专业学生来说,这就像银行的分级授权:柜员处理小额业务,主管审批中额业务,大额业务需要行长签字。
9.1.3 路由提示模板设计
路由器本质上是一个分类器,性能高度依赖于提示词设计。
基础路由提示模板
你是金融服务智能体路由系统。根据用户请求,选择最合适的处理智能体。
可用智能体:
1. 账户服务智能体 - 处理余额查询、交易记录、账户信息修改
2. 转账支付智能体 - 处理转账、支付、汇款等资金流动操作
3. 理财顾问智能体 - 提供投资建议、产品推荐、风险评估
4. 客户投诉智能体 - 处理投诉、建议、服务质量反馈
用户请求:{user_query}
分析步骤:
1. 识别请求的主要意图
2. 判断所需的专业领域
3. 考虑任务的复杂度和风险
选择的智能体:[在上述列表中选择一个]
选择理由:[简要说明为什么选择该智能体]增强型路由提示(包含上下文)
当需要考虑用户画像和历史交互时:
你是金融服务多智能体系统的路由协调器。
当前用户画像:
- 客户等级:{customer_tier}
- 历史交互:{interaction_history}
- 当前会话上下文:{conversation_context}
可用智能体及其专长:
{agent_descriptions}
路由决策准则:
1. VIP 客户的复杂请求优先分配给高级智能体
2. 涉及资金安全的操作必须路由到有安全审核能力的智能体
3. 重复问题可以路由到快速响应智能体
用户请求:{user_query}
请输出:
- 选中的智能体
- 置信度
- 决策依据9.1.4 静态路由与动态路由

静态路由
预先定义好任务类型与智能体的映射关系,通过规则或分类模型直接匹配。
适用场景: - 任务类型明确且有限 - 业务逻辑相对稳定 - 需要高度可预测性和可审计性
优势:响应速度快(无需 LLM 推理)、成本低、行为可预测。
劣势:难以处理复杂或模糊的请求、规则维护成本高、缺乏灵活性。
动态路由
使用 LLM 实时分析请求内容和上下文,动态决定路由目标。
适用场景: - 任务类型多样且难以穷举 - 需要考虑上下文和用户历史 - 对灵活性要求高于延迟
优势:能够处理复杂、多意图请求,考虑上下文和历史信息,适应性强。
劣势:增加延迟(需要 LLM 推理)、成本较高、行为不确定性增加。
混合路由策略
实践中推荐结合两者优势:先尝试静态规则,如果静态路由有明确结果且置信度高,直接返回;否则使用动态路由。
Anthropic 推荐的路由设计原则是「从简单到复杂」:先尝试基于规则的路由,再考虑 LLM 路由。
降级与升级策略
当智能体无法处理任务时,系统应该有清晰的降级路径:
- 第一层:专业智能体
- 第二层:通用智能体
- 第三层:人工客服
升级触发条件包括:高风险操作、多次失败、VIP 客户的复杂请求、涉及法律或合规问题、用户明确要求人工服务。
| 序号 | 知识点 | 重要度 |
|---|---|---|
| 9.1.1 | 路由决策原理 | ★★★ |
| 9.1.2 | 意图/风险/复杂度分流规则 | ★★★ |
| 9.1.3 | 路由提示模板设计 | ★★ |
| 9.1.4 | 动态路由与静态路由对比 | ★★ |
9.2 子智能体
子智能体(Subagent)是主智能体创建的专门化智能体,拥有独立的上下文空间、专属工具集和明确的职责边界。它们像是主智能体的「专家分身」,各自在独立的会话空间中执行特定任务。
9.2.1 角色定义原则
每个子智能体应专注于特定领域或任务。角色定义要回答三个问题:
- 谁:这个子智能体扮演什么角色(如:金融分析师、数据研究员)
- 做什么:它的核心职责是什么(如:财报分析、市场调研)
- 怎么做:它遵循什么方法论和质量标准(如:严格的数据验证流程)
子智能体 = 专业角色 + 独立上下文 + 受限工具 + 明确职责
金融领域子智能体角色示例
财报分析师(Financial Statement Analyzer)
角色定位:资深财务报表分析专家,擅长解读上市公司年报、季报中的财务数据
核心职责:
1. 提取三大财务报表关键指标(资产负债表、利润表、现金流量表)
2. 计算财务比率(ROE、资产负债率、流动比率等)
3. 进行同比/环比分析,识别异常波动
4. 评估财务健康状况和盈利能力
分析流程:
- Phase 1 数据提取:定位财务报表位置,提取关键科目数值,验证数据完整性
- Phase 2 指标计算:计算盈利能力、偿债能力、运营能力指标
- Phase 3 趋势分析:对比多期数据,识别显著变化,分析异常原因
质量标准:
- 所有数值已交叉验证(如:资产 = 负债 + 所有者权益)
- 计算公式准确无误
- 异常波动已标注并给出合理解释
- 结论基于数据,避免主观臆断市场舆情研究员(Market Sentiment Researcher)
角色定位:市场舆情分析专家,擅长从多源信息中提炼市场情绪和投资者预期
核心职责:
1. 收集特定主题(公司/行业/事件)的新闻和社交媒体讨论
2. 分类信息为正面/中性/负面
3. 识别关键舆论引导者(券商研报、KOL 观点)
4. 评估舆情对市场的潜在影响
信息来源优先级:
1. 官方公告(公司公告、监管文件)
2. 券商研报(头部券商分析师)
3. 财经媒体报道(Bloomberg、财新、21 世纪经济报道)
4. 社交媒体讨论(雪球、Twitter 财经话题)
情感分类标准:
- 强烈正面:重大利好消息(并购、业绩超预期)
- 正面:积极进展(新产品发布、市场份额提升)
- 中性:常规信息(日常运营更新)
- 负面:不利因素(监管处罚、业绩不及预期)
- 强烈负面:重大风险(财务造假、高管离职)9.2.2 输入输出规范设计
好的子智能体输入应该像「订单」一样明确。
标准输入模板
## 子智能体任务输入
### 任务目标
[一句话描述任务核心目标]
### 输入数据
- 数据源 1:[类型],路径/URL
- 数据源 2:[类型],路径/URL
- 背景信息:[相关上下文]
### 约束条件
- 时间限制:[X 分钟]
- 范围限制:[只分析某个方面]
- 工具限制:[只使用特定工具]
### 输出要求
- 格式:[Markdown/JSON/CSV]
- 结构:[包含哪些章节/字段]
- 长度:[字数/条目数限制]
### 质量标准
- [ ] 检查点 1
- [ ] 检查点 2结构化输出示例(JSON)
{
"task_id": "fin-analysis-001",
"status": "completed",
"timestamp": "2026-01-18T15:30:00Z",
"summary": "贵州茅台 2025 年财报分析完成,营收增长 12.3%",
"data": {
"revenue": {"value": 145.2, "unit": "亿元", "yoy_growth": 12.3},
"net_profit": {"value": 73.5, "unit": "亿元", "yoy_growth": 15.6}
},
"insights": [
"毛利率提升 2.1 个百分点,产品结构优化显著",
"应收账款周转天数减少 5 天,运营效率提升"
],
"risks": ["存货周转率下降 8%,需关注库存积压风险"],
"references": ["贵州茅台 2025 年年度报告.pdf,第 35-42 页"]
}输出过滤原则
汇总智能体应过滤冗余信息,只保留关键结论:
- 结果导向:只传递最终结论,不传递推理过程
- 结构化优先:传递 JSON/表格,而非长文本
- 异常放大:如果发现重要风险,即使不在预期输出中也要传递
9.2.3 工具权限分配
每个子智能体只应获得完成其任务所需的最小工具集。这遵循「最小权限原则」,避免越权风险、意外副作用和安全隔离问题。
工具权限分级
| 权限级别 | 工具类型 | 适用场景 | 示例工具 |
|---|---|---|---|
| 只读 | 信息获取 | 数据分析、研究任务 | Read, Grep, Glob |
| 受限写 | 本地文件操作 | 生成报告、保存结果 | Write(仅特定目录) |
| 计算执行 | 脚本运行 | 数据处理、指标计算 | Bash(禁止网络命令) |
| 网络访问 | 外部信息检索 | 市场调研、新闻抓取 | WebSearch |
| 高风险 | 系统级操作 | 部署、配置变更 | Bash(完整权限),需人工审批 |
金融场景工具权限配置示例
财报分析师(低风险): - 工具:Read, Grep, Bash(仅允许 Python 数据处理脚本) - 限制:禁止网络访问、禁止写文件
市场舆情研究员(中风险): - 工具:WebSearch, Read, Write - 限制:allowed_domains(仅允许访问特定网站)、write_path(只能写入特定目录)
自动交易执行器(高风险): - 工具:Read, Bash - 限制:human_in_the_loop(必须人工确认)、max_order_size(单笔订单金额上限)
自动交易执行器等高风险子智能体必须启用人在回路机制。任何涉及资金操作的智能体都应设置金额上限和双重确认流程。
9.2.4 上下文隔离策略
为什么需要上下文隔离
问题场景: - 主智能体的 context window 包含大量历史对话,新任务的信息被「稀释」 - 多个子任务共享上下文时,信息交叉污染 - 敏感信息泄露(财务数据在不相关的子任务中可见)
隔离的价值: - 专注力:子智能体只看到与当前任务相关的信息 - 并行性:多个子智能体可在独立空间中同时工作,互不干扰 - 安全性:敏感数据不会跨任务边界传播 - 可恢复性:单个子智能体失败不会污染主智能体上下文
在分析师团队协作中,财务分析师智能体不应看到技术分析师的图表数据。这种隔离避免基本面分析受到价格走势的心理锚定效应影响,保持分析的独立性。
上下文隔离的实现层次
Level 1 消息级隔离:每个子智能体启动时只接收必要的任务描述和输入数据,不共享主智能体的完整对话历史。
Level 2 工具调用隔离:子智能体的工具调用历史不会污染主智能体的上下文。主智能体只看到压缩后的结果摘要,不看到详细的执行过程。
Level 3 内存隔离:在复杂的多智能体系统中,每个子智能体有独立的「工作记忆」,只有显式传递的信息才能跨智能体共享。
| 序号 | 知识点 | 重要度 |
|---|---|---|
| 9.2.1 | 子智能体角色定义 | ★★★ |
| 9.2.2 | 输入输出规范设计 | ★★★ |
| 9.2.3 | 工具权限分配 | ★★ |
| 9.2.4 | 上下文隔离策略 | ★★ |
9.3 智能体并行化
并行化(Parallelization)是多智能体系统提高效率的关键技术。通过将独立任务分配给多个智能体同时执行,可以显著缩短整体处理时间。在金融场景中,这种能力尤为重要,比如同时收集多个市场的数据、并行分析不同资产的表现。
9.3.1 任务分解与并行策略
将一个大任务拆分为多个独立或弱依赖的子任务,是并行化的前提。
任务分解原则
- 独立性原则:子任务之间应尽量减少数据依赖。如果任务 A 必须等待任务 B 完成才能开始,那么它们无法真正并行。
- 粒度平衡:任务不能拆得太细,否则协调开销会抵消并行带来的收益。也不能太粗,否则无法充分利用并行能力。
- 负载均衡:各个子任务的工作量应该相对均衡,避免出现部分智能体空闲而部分智能体过载的情况。
并行执行策略
扇出-收集模式
这是最常见的并行模式。主智能体将任务扇出给多个子智能体并行执行,然后收集所有结果进行汇总。

典型应用场景:多市场数据采集、多维度风险分析、多策略回测。
流水线并行
将任务分解为多个阶段,每个阶段由专门的智能体处理。虽然单个数据项要经过多个阶段,但多个数据项可以同时处于不同阶段。
数据项 1 → 阶段A → 阶段B → 阶段C → 输出
数据项 2 → 阶段A → 阶段B → 阶段C → 输出
数据项 3 → 阶段A → 阶段B → 阶段C典型应用场景:数据预处理→特征提取→模型预测的流水线处理。
数据并行
对同质化的数据集进行分片,每个智能体处理一个分片,最后合并结果。这种模式类似于 MapReduce。
典型应用场景:大规模股票筛选、历史数据批量分析。
MapReduce 是 Google 提出的分布式计算模型。Map 阶段将任务分发给多个节点并行处理,Reduce 阶段汇总所有节点的结果。金融领域的多智能体并行化与此思想一脉相承。
9.3.2 结果聚合机制
聚合方式
简单合并:将各智能体的结果直接拼接或求和。适用于结果互不冲突的场景。
智能体1 → [股票A, 股票B]
智能体2 → [股票C, 股票D]
智能体3 → [股票E, 股票F]
↓
合并结果 = [股票A, 股票B, 股票C, 股票D, 股票E, 股票F]加权平均:根据智能体的可靠性或数据质量赋予不同权重。
智能体1 评分 85 (权重0.4)
智能体2 评分 90 (权重0.3)
智能体3 评分 75 (权重0.3)
↓
最终评分 = 85×0.4 + 90×0.3 + 75×0.3 = 83.5投票机制:对于分类或决策问题,采用多数投票或加权投票。
买入信号:智能体1, 智能体2, 智能体5
持有信号:智能体3, 智能体4
↓
最终决策 = 买入 (3票 vs 2票)时序聚合
对于有时间维度的数据,需要考虑时序一致性:
- 时间戳对齐:各智能体返回的数据可能有轻微时间差,需要对齐到统一时刻
- 增量更新:在实时场景中,各智能体持续产生增量数据,汇总智能体需要维护全局状态
9.3.3 一致性检查与冲突处理
数据一致性验证
交叉验证:如果多个智能体提供了相同维度的数据,需要检查一致性。
智能体A 报告:某股票价格 = 100.5
智能体B 报告:某股票价格 = 100.2
↓
差异 = |100.5 - 100.2| = 0.3
差异率 = 0.3/100.35 = 0.3%
↓
如果差异率 < 阈值(1%),取平均值 100.35
如果差异率 > 阈值,标记为异常需人工介入来源追溯:当检测到数据异常时,应能追溯到具体的智能体和数据来源。
冲突解决策略
- 最新优先:基于时间戳,采用最新的数据。适用于快速变化的市场数据。
- 可靠性优先:根据智能体的历史表现选择最可靠的来源。
- 人工介入:对于高风险决策,当智能体结果差异较大时,应标记并等待人工审核。
9.3.4 效率与成本权衡
并行度选择
并行智能体数量不是越多越好,需要考虑边际收益递减和协调开销。
1个智能体 → 2个智能体:时间减半,成本翻倍,性价比 = 1
2个智能体 → 4个智能体:时间再减半,成本再翻倍,性价比 = 1
4个智能体 → 8个智能体:时间减少有限(受最慢智能体制约),性价比 < 1协调开销包括:任务分发时间、结果汇总时间、冲突检测与解决时间、通信开销。
成本模型
如果每个智能体调用外部 API(如 LLM),成本会线性增加。以 Anthropic API 为例(2026 年 1 月价格):
- Haiku 模型:输入 $0.25/MTok,输出 $1.25/MTok
- Sonnet 模型:输入 $3/MTok,输出 $15/MTok
- Opus 模型:输入 $15/MTok,输出 $75/MTok
假设三个子智能体各处理 10K tokens: - 全部使用 Haiku:成本约 $0.08 - 全部使用 Sonnet:成本约 $0.90(11 倍) - 全部使用 Opus:成本约 $4.50(56 倍)
混合策略更经济:简单任务用 Haiku,复杂任务用 Sonnet,关键决策用 Opus。
不同应用场景的延迟容忍度不同:
- 实时交易决策:延迟敏感,愿意为低延迟付更高成本
- 每日报表生成:延迟不敏感,优先考虑成本优化
- 风险监控:需要平衡延迟和成本
Claude Code 的 Task 工具是顺序执行的,而非真正的并行执行。 这意味着:
- 多个 Task 调用会按创建顺序依次执行
- 不会出现多个子智能体同时运行的情况
- 总执行时间仍然是各任务时间的总和,而非最大值
尽管是顺序执行,Task 工具依然有重要价值:代码组织清晰、上下文隔离、可维护性好。如果需要真正的并行,可以使用 Git Worktree 方案或外部调度系统。
| 序号 | 知识点 | 重要度 |
|---|---|---|
| 9.3.1 | 任务分解与并行策略 | ★★★ |
| 9.3.2 | 结果聚合机制 | ★★★ |
| 9.3.3 | 一致性检查与冲突处理 | ★★ |
| 9.3.4 | 并行效率与成本权衡 | ★★ |
9.4 智能体间协作
多智能体系统通过将复杂任务分解为可管理的专门化组件,克服了单智能体的能力局限。协作架构可以分为两大类:中心化协调模式和去中心化对等模式。
9.4.1 协调者-执行者架构
这是最常见的多智能体架构,采用「管理者-执行者」结构。一个中心智能体负责任务分解和调度,多个专门化智能体负责执行子任务。

金融研报生成团队示例
- 研究主管(Supervisor):负责理解用户需求、分配任务、协调进度、质量把控
- 数据分析师(Data Analyst):收集市场数据、计算财务指标、生成图表
- 行业研究员(Industry Researcher):分析行业趋势、竞争格局、政策影响
- 报告撰写员(Report Writer):整合信息、撰写分析文本、格式化输出
当用户请求「生成某公司 Q3 财报分析报告」时:
- 研究主管将任务拆解为「数据收集」「行业分析」「报告撰写」三个子任务
- 数据分析师获取财务数据并计算关键指标
- 行业研究员分析宏观环境和竞争态势
- 报告撰写员整合两方信息形成结构化报告
- 研究主管审核并返回最终成果
优势: - 控制流程清晰,便于调试和监控 - 任务分配由中心统一决策,避免冲突 - 易于实现质量检查点和人工介入 - 便于审计和复现完整的任务分配日志
适用场景: - 任务结构相对固定,可预先定义分解策略 - 需要严格的质量管控和审批流程 - 子任务间依赖关系明确
9.4.2 对等协作模式
去中心化架构中,智能体地位平等,可以直接相互通信和协商。没有中央控制者,各智能体通过消息传递和协商机制达成协作。
工作原理
智能体 A ←→ 智能体 B
↕ ╳ ↕
智能体 C ←→ 智能体 D每个智能体: - 具有自主决策能力 - 可以主动向其他智能体发起请求 - 维护本地状态和任务队列 - 遵循共同的通信协议
协作式投资研究示例
场景设计:三个分析师智能体协作完成股票研究
- 基本面分析师:关注财务数据、估值模型
- 技术面分析师:关注价格走势、交易信号
- 宏观分析师:关注政策环境、市场情绪
协作流程: 1. 基本面分析师发现某股票估值偏低,向其他两位发起讨论 2. 技术面分析师检查图表,发现突破信号,表示认同 3. 宏观分析师评估政策环境,提出需关注的风险点 4. 三方协商达成一致:给出「谨慎买入」建议
优势: - 更强的灵活性和适应性 - 无单点故障风险 - 更接近真实团队协作模式 - 可处理动态变化的任务
挑战: - 需要明确的通信协议和消息格式 - 可能产生协调冲突 - 缺乏集中质量把控 - 调试和监控较为复杂
9.4.3 协作协议与消息格式
智能体间高效通信依赖于标准化的消息格式。
基础消息格式(JSON)
{
"msg_id": "uuid-v4",
"sender": "fundamental_analyst",
"receiver": "portfolio_manager",
"msg_type": "task_response",
"timestamp": 1717036800,
"content": {
"task": "分析某公司财务数据",
"status": "completed",
"result": {
"revenue_growth": 12.3,
"roe": 22.5,
"recommendation": "buy"
}
},
"metadata": {
"confidence": 0.85,
"processing_time": 45
}
}字段说明: - msg_id:全局唯一标识,用于追踪和去重 - sender/receiver:发送方和接收方智能体 ID - msg_type:消息类型(task_request/task_response/notification/error) - timestamp:时间戳,用于排序和超时判断 - content:消息主体内容,结构根据类型变化 - metadata:元数据,如置信度、处理时间等
9.4.4 状态同步与结果交接
Handoff 机制
Handoff(交接)是智能体间转移控制权的关键机制。一次完整的交接包含:
- 触发条件:什么情况下交接(任务完成、专业边界、用户请求)
- 目标智能体:交接给谁
- 上下文传递:传递哪些信息
- 状态更新:如何更新系统状态
- 确认机制:目标智能体是否成功接收
交接时的状态保存
关键是保存足够的上下文让下游智能体继续工作:
基础上下文(始终传递):
- conversation_history:对话历史
- original_request:原始请求
- timestamp:时间戳
根据目标智能体补充特定信息:
- 如果交接给分析师:附带 financial_data, data_sources
- 如果交接给撰写员:附带 analysis_results, key_findings可以将 Handoff 类比为接力赛跑的交接棒传递:前一位选手必须把接力棒稳稳交到下一位手中,传递过程要有明确的交接区域。智能体的上下文就是接力棒,协议规范就是交接区域。
| 序号 | 知识点 | 重要度 |
|---|---|---|
| 9.4.1 | 协调者-执行者架构 | ★★★ |
| 9.4.2 | 对等协作模式 | ★★ |
| 9.4.3 | 协作协议与消息格式 | ★★★ |
| 9.4.4 | 状态同步与结果交接 | ★★ |
9.5 Claude Code 多智能体协作实践
本节介绍如何在 Claude Code 中配置和使用多智能体系统。
9.5.1 智能体路由实现
在 Claude Code 中,路由通常通过系统提示词实现。主智能体根据用户输入判断应该调用哪个子智能体。
路由提示模板示例
你是金融服务协调智能体。根据用户请求,决定调用哪个专业子智能体。
可用子智能体:
1. fundamental-analyst:财务数据分析,适用于财报解读、财务指标计算
2. technical-analyst:技术面分析,适用于价格走势、交易信号
3. sentiment-analyst:市场情绪分析,适用于新闻舆情、社交媒体
用户请求:{user_query}
请分析用户意图,选择最合适的子智能体,并说明理由。基于意图的路由逻辑
当用户说「帮我分析茅台的财报」,主智能体识别出「财报分析」意图,调用 fundamental-analyst。
当用户说「茅台股价最近走势如何」,主智能体识别出「技术分析」意图,调用 technical-analyst。
9.5.2 子智能体配置
子智能体是带有 YAML frontmatter 的 Markdown 文件。
存储位置
项目级子智能体(推荐用于团队协作):
.claude/agents/fundamental-analyst.md
.claude/agents/technical-analyst.md用户级子智能体(适合个人跨项目使用):
~/.claude/agents/debugging-specialist.md配置文件结构
# .claude/agents/fundamental-analyst.md
---
name: fundamental-analyst
description: 当需要分析公司财务数据、解读财报时使用
tools: Read, Grep, Bash
model: sonnet
---
你是一位资深财务分析专家。
# 核心职责
1. 提取财务报表关键指标
2. 计算财务比率(ROE、资产负债率等)
3. 进行同比/环比分析
4. 评估财务健康状况
# 输出格式
## 财务健康度评分(1-10 分)
- 盈利能力:X 分
- 成长性:Y 分
- 财务安全:Z 分
## 关键发现
- [列举 2-3 个核心洞察]
## 估值判断
[低估/合理/高估]配置字段说明
| 字段 | 必需 | 说明 | 示例 |
|---|---|---|---|
| name | 是 | 唯一标识符,使用小写字母和连字符 | fundamental-analyst |
| description | 是 | 描述何时应该调用此子智能体 | 当需要分析财务数据时使用 |
| tools | 否 | 逗号分隔的工具列表 | Read, Grep, Bash |
| model | 否 | 指定使用的模型 | sonnet/haiku/opus |
description 字段是主智能体判断是否调用子智能体的关键。好的描述要清晰、具体、触发式。
好的示例:「当代码发生变更后,立即进行代码审查」
模糊的示例:「处理安全相关任务」
9.5.3 并行化实践
使用 Task 工具调用子智能体
Task 工具是 Claude Code 多智能体架构的核心入口点。
Task 工具参数: - description:任务的简短描述(3-5 个词) - prompt:子智能体需要执行的具体任务内容
执行流程: 1. 主智能体识别任务需要委派 2. 调用 Task 工具,传入任务描述和提示词 3. 系统创建子智能体实例(在独立上下文中运行) 4. 子智能体执行任务,返回结果给主智能体 5. 主智能体整合结果,继续主线对话
示例:多分析师协作选股
用户:请分析贵州茅台是否值得投资
Claude(主智能体):
我将组织分析师团队进行全方位评估。
[Task 1] fundamental-analyst 分析茅台财务数据
[Task 2] technical-analyst 分析茅台技术走势
[Task 3] sentiment-analyst 分析市场情绪
[等待三个子智能体完成]
[汇总分析结果]
基于三位分析师的报告,综合评估如下...真正的并行方案:Git Worktree
由于 Claude Code 的 Task 工具是顺序执行的,如果需要真正的并行,可以使用 Git Worktree:
# 创建两个独立的工作树
git worktree add ../project-analysis-A -b task/analysis-A
git worktree add ../project-analysis-B -b task/analysis-B
# 在第一个终端
cd ../project-analysis-A
claude
# 执行 A 股分析任务
# 在第二个终端
cd ../project-analysis-B
claude
# 执行港股分析任务两个 Claude Code 实例在完全隔离的环境中工作,不会相互干扰。
9.5.4 智能体间协作配置
基于文件的通信模式
在多智能体协作中,智能体之间不能直接「对话」,但可以通过文件传递信息。
任务状态文件
# tasks.md
## 待办任务
- [ ] 分析茅台财务数据(分配给:fundamental-analyst)
- [ ] 分析茅台技术走势(分配给:technical-analyst)
## 进行中
- [x] 收集基础数据(data-collector 完成)
## 已完成
- [x] 数据库表设计接口契约文件
# api-contract.md
## 子智能体输出格式
### fundamental-analyst 输出
{
"financial_score": 8.5,
"growth_rate": 12.3,
"recommendation": "buy/hold/sell"
}
### technical-analyst 输出
{
"trend": "up/down/sideways",
"signal": "buy/hold/sell",
"support_level": 1750,
"resistance_level": 2000
}审查反馈文件
# review-feedback.md
## 分析报告审查结果(2026-01-22)
### 需要修正
1. 财务数据缺少 2025 Q4 季报数据
2. 技术分析缺少成交量分析
### 建议改进
1. 增加同行业对比分析通过 CLAUDE.md 共享持久化信息。项目级的关键信息应该写入 CLAUDE.md,而不是依赖对话历史。所有 Claude Code 实例都会读取 CLAUDE.md,获得项目的全局知识。
上下文管理最佳实践
主对话保持高层次:主对话应该聚焦在高层次的规划和决策,把具体执行委派给子智能体
使用 /clear 和 /compact 管理上下文:当主对话上下文积累过多时,/clear 清空所有上下文重新开始,/compact 让 Claude 总结当前会话压缩上下文
通过 –continue 恢复会话:
claude --continue继续最近的对话,claude --resume选择恢复哪个历史会话
案例 9A:多市场并行数据采集
业务背景
全球金融市场 24 小时不间断运转,A 股、港股、美股处于不同时区。投资者需要同时监控多个市场的实时动态。传统的串行数据采集方式耗时长,可能错过关键的交易时机。
问题:如何在短时间内同时获取多个市场的行情数据、重要新闻和舆情信息?
案例简述
| 要素 | 说明 |
|---|---|
| 演示模式 | 智能体并行化(Parallelization) |
| 案例简述 | 同时采集 A 股、港股、美股三个市场的数据。使用多个子智能体分派任务,体验并行执行与结果聚合。 |
| 经济学映射 | 并行分工——同时执行提升整体效率 |
| 应用衔接 | 第 11 章金融舆情分析系统的多源数据采集采用相同模式 |
系统架构
采用扇出-收集模式,将数据采集任务分配给三个专门智能体。

Claude Code 实现步骤
步骤 1:定义 A 股数据采集子智能体
创建文件 .claude/agents/china-market-collector.md:
---
name: china-market-collector
description: 专门负责采集 A 股市场实时数据和重要新闻
tools: Bash, WebSearch, Read
model: haiku
---
你是 A 股市场数据采集专家。
# 采集任务
1. 获取上证指数、深证成指最新行情
2. 抓取沪深 300 成分股涨跌幅前 10 名
3. 搜集近 1 小时内的重要市场新闻
# 输出格式
以 JSON 格式返回:
{
"market": "A股",
"timestamp": "2026-01-22T10:00:00",
"indices": {"上证指数": 3200.5, "深证成指": 11500.2},
"top_gainers": [...],
"top_losers": [...],
"news": [...]
}步骤 2:定义港股数据采集子智能体
创建文件 .claude/agents/hk-market-collector.md:
---
name: hk-market-collector
description: 专门负责采集港股市场实时数据
tools: Bash, WebSearch, Read
model: haiku
---
你是港股市场数据采集专家。
# 采集任务
1. 获取恒生指数、恒生科技指数最新行情
2. 抓取港股通北向资金流向
3. 搜集港股重要新闻
# 输出格式
以 JSON 格式返回,结构同 A 股智能体步骤 3:定义美股数据采集子智能体
创建文件 .claude/agents/us-market-collector.md:
---
name: us-market-collector
description: 专门负责采集美股市场实时数据
tools: Bash, WebSearch, Read
model: haiku
---
你是美股市场数据采集专家。
# 采集任务
1. 获取道琼斯、标普 500、纳斯达克指数
2. 抓取科技股七巨头(FAANG + 微软、英伟达)表现
3. 搜集美股重要新闻和美联储动态
# 输出格式
以 JSON 格式返回,结构同 A 股智能体步骤 4:定义汇总智能体
创建文件 .claude/agents/market-aggregator.md:
---
name: market-aggregator
description: 整合多市场数据,生成全球市场概览报告
tools: Read, Write
model: sonnet
---
你是全球市场数据分析师。
# 任务流程
1. 读取三个市场数据采集智能体的输出文件
2. 识别全球市场的联动效应
3. 标注重大异动(指数波动超过 2%)
4. 生成结构化市场概览报告
# 报告结构
## 全球市场概览
- A 股市场:[指数表现、热点板块]
- 港股市场:[恒指走势、南向资金流向]
- 美股市场:[三大指数、科技股表现]
## 联动分析
- 跨市场相关性
- 潜在套利机会
## 风险提示
- 重大异动警示步骤 5:主智能体编排任务
在 Claude Code 对话中执行:
用户:请同时采集 A 股、港股、美股的最新数据,并生成全球市场概览报告
Claude(主智能体):
我将启动三个市场数据采集智能体,然后汇总分析。
[Task 1] 调用 china-market-collector 采集 A 股数据...
完成:上证指数 3200.5,深证成指 11500.2
[Task 2] 调用 hk-market-collector 采集港股数据...
完成:恒生指数 18500.3,北向资金净流入 25 亿
[Task 3] 调用 us-market-collector 采集美股数据...
完成:道指 42000.5,标普 5800.2,纳指 18500.8
[Task 4] 调用 market-aggregator 汇总分析...
完成:全球市场概览报告已生成
报告已保存至 reports/global-market-snapshot.md效率对比分析
串行执行: - A 股采集 3 分钟 + 港股采集 2.5 分钟 + 美股采集 3.5 分钟 = 总计 9 分钟
并行执行(如果使用 Git Worktree 方案): - 三个智能体同时运行,总耗时 = max(3, 2.5, 3.5) = 3.5 分钟 - 效率提升 61%
在 Claude Code 中,Task 工具是顺序执行的。上述示例中,三个 Task 实际上是依次执行。
如果需要真正的并行加速,可以使用 Git Worktree 在不同终端同时启动多个 Claude Code 实例(参见 9.5.3 节)。
数据一致性保障
时间戳对齐:各市场数据获取时间可能有几秒差异,汇总智能体需对齐时间基准。
智能体 A:数据时间戳 10:00:02
智能体 B:数据时间戳 10:00:05
智能体 C:数据时间戳 10:00:03
对齐策略:统一标记为 10:00:00(取整到分钟)数据校验:如果两个智能体报告了相同指标但数值不同,取最新时间戳的数据或标记异常。
扩展场景
- 实时监控系统:配置定时任务每 5 分钟执行一次数据采集,当检测到异常波动时触发告警
- 跨资产数据采集:扩展为股票、债券、外汇、商品期货的全市场监控系统
案例 9B:分析师团队协作选股
业务背景
投资决策需要综合基本面、技术面、宏观面、市场情绪等多维度信息。单一分析师难以兼顾所有领域,容易产生片面判断。
目标:模拟投资公司的分析师团队,从不同专业视角评估某只股票,最后由投资经理整合意见做出决策。
案例简述
| 要素 | 说明 |
|---|---|
| 演示模式 | 智能体间协作(Inter-Agent Collaboration) |
| 案例简述 | 主智能体先路由任务到「基本面分析师」和「技术面分析师」子智能体,再汇总输出投资建议。体验路由分派、子智能体协作与结果整合。 |
| 经济学映射 | 专业化分工——不同角色智能体协同工作 |
| 应用衔接 | 第 12 章交易信号分析系统的四智能体团队、第 16 章多智能体实验均扩展此模式 |
团队结构
采用协调者-执行者(Coordinator-Executor)模式:

Claude Code 实现步骤
步骤 1:创建基本面分析师
创建文件 .claude/agents/fundamental-analyst.md:
---
name: fundamental-analyst
description: 分析公司财务报表,评估盈利能力、成长性和估值水平
tools: WebSearch, Bash, Read
model: sonnet
---
你是资深基本面分析师,擅长解读财务数据。
# 分析流程
1. 搜索公司最新财报(季报或年报)
2. 提取关键财务指标:
- 营收、净利润、同比增长率
- ROE、ROA、毛利率、净利率
- 资产负债率、流动比率
3. 计算估值指标:P/E、P/B、PEG
4. 对比行业平均水平
# 输出格式
## 财务健康度评分(1-10 分)
- 盈利能力:X 分
- 成长性:Y 分
- 财务安全:Z 分
## 关键发现
- [列举 2-3 个核心洞察]
## 估值判断
[低估/合理/高估]步骤 2:创建技术分析师
创建文件 .claude/agents/technical-analyst.md:
---
name: technical-analyst
description: 基于价格走势和技术指标提供买卖时机建议
tools: Bash, WebSearch
model: sonnet
---
你是技术分析专家。
# 分析任务
1. 获取近 3 个月的日线数据
2. 计算技术指标:
- 移动平均线:MA5、MA20、MA60
- MACD、RSI、布林带
3. 识别价格形态(头肩顶、双底等)
4. 确定支撑位和阻力位
# 输出格式
## 趋势判断
[上升趋势/下降趋势/震荡整理]
## 技术信号
- MACD:[金叉/死叉/中性]
- RSI:[超买/超卖/正常]
## 操作建议
[买入/卖出/观望],建议买入价位:XXX步骤 3:创建宏观分析师
创建文件 .claude/agents/macro-analyst.md:
---
name: macro-analyst
description: 分析宏观经济、行业政策对公司的影响
tools: WebSearch, Read
model: sonnet
---
你是宏观经济和行业研究专家。
# 分析维度
1. 宏观经济环境
- 利率政策(央行动态)
- 经济增长预期(GDP、PMI)
2. 行业政策
- 产业政策支持或限制
- 监管变化
3. 供应链和原材料
- 上游原材料价格
- 供应链稳定性
# 输出格式
## 宏观环境评分(1-10 分)
利好程度:X 分
## 关键风险
- [列举 1-2 个主要风险]
## 政策机会
- [列举可能的政策红利]步骤 4:创建情绪分析师
创建文件 .claude/agents/sentiment-analyst.md:
---
name: sentiment-analyst
description: 分析社交媒体、新闻的市场情绪
tools: WebSearch, Bash
model: haiku
---
你是市场情绪分析师。
# 分析任务
1. 搜索近一周的公司新闻
2. 统计正面/负面/中性新闻比例
3. 抓取社交媒体(如雪球、同花顺)的讨论
4. 计算散户情绪指数
# 输出格式
## 情绪得分(-5 到 +5)
当前得分:+X(偏乐观/偏悲观/中性)
## 新闻摘要
- 正面新闻 X%
- 负面新闻 Y%
- 中性新闻 Z%
## 关键事件
[列举重大事件,如产品发布、高管变动]步骤 5:创建投资经理(协调者)
创建文件 .claude/agents/portfolio-manager.md:
---
name: portfolio-manager
description: 整合分析师意见,做出最终投资决策
tools: Read, Write
model: opus
---
你是投资经理,负责最终决策。
# 决策流程
1. 接收四位分析师的报告
2. 识别一致性意见和分歧点
3. 权衡各方面因素:
- 基本面质量(权重 40%)
- 技术面信号(权重 25%)
- 宏观环境(权重 20%)
- 市场情绪(权重 15%)
4. 考虑风险收益比
5. 给出明确的操作建议
# 输出格式
## 综合评分(1-10 分)
投资价值:X 分
## 最终决策
[强烈买入/买入/持有/减仓/卖出]
## 决策依据
[解释决策的核心逻辑]
## 风险提示
[列举主要风险点]
## 操作计划
建议买入价位、仓位比例、止损位步骤 6:主智能体编排工作流
在 Claude Code 对话中执行:
用户:请分析贵州茅台(600519.SH)是否值得投资
Claude(主智能体):
我将组织分析师团队进行全方位评估。
[Task 1] fundamental-analyst 分析茅台财务数据...
完成:财务健康度 9 分,估值合理偏高
[Task 2] technical-analyst 分析茅台技术走势...
完成:上升趋势,MACD 金叉,RSI 接近超买
[Task 3] macro-analyst 分析行业和政策环境...
完成:宏观环境 6 分,消费复苏利好但需关注估值压力
[Task 4] sentiment-analyst 分析市场情绪...
完成:情绪得分 +2,市场偏乐观
[Task 5] portfolio-manager 综合决策...
完成:综合评分 7 分,建议「持有」
# 最终投资建议
- 投资价值:7 分
- 决策:持有(已持有者继续持有,未持有者等待回调买入)
- 核心逻辑:基本面优秀但估值偏高,技术面短期超买
- 操作计划:等待回调至 1750-1800 元区间分批买入
报告已保存至 reports/600519-analysis.md执行结果示例
基本面分析师报告:
## 财务健康度评分
- 盈利能力:9 分(ROE 22%,毛利率 91%)
- 成长性:7 分(营收同比增长 15%)
- 财务安全:10 分(零负债,现金充沛)
## 关键发现
- 品牌护城河深厚,提价能力强
- 库存周转放缓,需关注渠道库存
## 估值判断
P/E 35 倍,略高于行业平均,估值合理偏高技术分析师报告:
## 趋势判断
上升趋势,当前价格接近前高
## 技术信号
- MACD:金叉,买入信号
- RSI:68(接近超买区)
## 操作建议
观望,等待回调至 1800 元支撑位再买入投资经理最终决策:
## 综合评分
投资价值:7 分
## 最终决策
持有
## 决策依据
1. 基本面优秀,品牌价值和盈利能力强
2. 技术面显示短期进入超买,可能回调
3. 宏观环境中性偏利好
4. 市场情绪乐观但不过热
## 风险提示
- 估值偏高,短期上涨空间有限
- 消费疲软可能拖累业绩增长
## 操作计划
- 未持有者:等待回调至 1750-1800 元区间分批买入
- 已持有者:继续持有,设置止盈位 2100 元
- 建议仓位:不超过投资组合的 15%协作机制优化
Bullish vs Bearish 对立辩论
可以增加两个研究员智能体,模拟多空对决:
# .claude/agents/bullish-researcher.md
职责:挖掘所有利好因素,构建看涨逻辑
# .claude/agents/bearish-researcher.md
职责:揭示所有风险点,提出看跌观点投资经理在听取双方辩论后,做出更全面的决策。
人在回路审批
在投资经理给出决策后,暂停工作流,等待人工审批:
Claude:投资经理建议「买入」,是否批准执行?
用户:批准 / 拒绝并说明理由对于经济金融专业学生,这个案例展示了如何将投资公司的分析师团队协作模式数字化。学生可以思考:如何调整各分析师的权重?如何加入风险偏好设置?如何处理分析师意见冲突?
本章小结
本章介绍了多智能体协作的核心概念和 Claude Code 实践方法。主要内容包括:
智能体路由是任务分配的核心机制,通过意图、风险、复杂度三个维度进行分流,支持静态路由和动态路由两种模式。
子智能体是专门化的执行单元,需要明确定义角色、输入输出规范、工具权限和上下文隔离策略。
并行化模式包括扇出-收集、流水线并行和数据并行,需要设计结果聚合和一致性检查机制。Claude Code 的 Task 工具是顺序执行的,真正的并行需要使用 Git Worktree 方案。
协作架构分为中心化的协调者-执行者模式和去中心化的对等协作模式,需要设计标准化的通信协议和 Handoff 机制。
Claude Code 实践通过子智能体配置文件、Task 工具调用和基于文件的通信模式实现多智能体协作。
通过本章学习,你已经掌握了构建多智能体系统的基本方法。在后续的应用篇中,我们将把这些原理应用到金融舆情分析、交易信号分析、研报生成等实战场景。