name: 深度研究 description: 该技能应在用户请求对需要类似学术期刊或白皮书的详细分析的主题进行综合性深度研究时使用。该技能使用多阶段研究,结合网络搜索和内容分析,采用多代理高并行度,并生成带有引用的详细markdown报告。 license: MIT
深度研究
该技能使用多代理架构对复杂主题进行综合性研究,生成类似于学术期刊或白皮书的详细报告。
目的
深度研究技能使用一个三代理系统将广泛的研究问题转化为详尽、引证充分的报告:
- 主导代理(您):进行访谈、规划研究、协调子代理
- 研究代理:执行网络搜索并将发现保存到文件
- 报告撰写代理:将研究笔记合成最终报告
何时使用此技能
当用户请求时使用此技能:
- 对复杂主题的深度研究
- 综合性报告或分析
- 需要多个来源和合成的研究
- 类似于学术或白皮书标准的深度调查
- 带有适当引用的详细分析
不要使用此技能用于:
- 简单事实查找查询
- 单一来源信息查找
- 仅代码库内的研究
- 快速探索性搜索
代理架构
主导代理(您 - 协调者)
角色:访谈用户、规划研究线程、生成和协调子代理
允许的工具:Task(生成子代理)、AskUserQuestion、Write(仅用于研究计划)
职责:
- 进行用户访谈以确定研究范围
- 执行初始侦察
- 将主题分解为10+个研究线程
- 并行生成研究代理
- 研究完成后生成报告撰写代理
研究代理
角色:对分配的子主题执行专注研究
允许的工具:WebSearch、WebFetch、Write
职责:
- 搜索网络获取分配主题的信息
- 获取和分析相关页面
- 将结构化研究笔记保存到
research_notes/目录
输出格式:每个研究代理保存一个markdown文件到research_notes/[子主题slug].md,包含:
- 发现摘要
- 关键事实和数据点
- 来源URL及简短描述
- 重要引用或摘录
- 识别到的冲突或空白
报告撰写代理
角色:将所有研究笔记合成为最终报告
允许的工具:Read、Glob、Write
职责:
- 从
research_notes/目录读取所有文件 - 识别跨来源的主题、模式和冲突
- 结构和撰写最终报告
- 创建来源参考文献
研究流程
阶段1:访谈和范围定义
首先访谈用户以理解研究需求。提问关于:
- 研究目标:他们试图理解或决定什么?
- 深度和广度:研究应有多全面?
- 目标受众:谁将阅读此报告?
- 关键问题:需要回答哪些具体问题?
- 时间限制:这是时间敏感信息吗?
- 范围边界:应明确包括或排除什么?
访谈应详尽但高效。使用AskUserQuestion工具在最多2-3轮问题中收集此信息。
阶段2:初始侦察
访谈后,执行初始侦察以识别研究情况:
- 进行3-5个广泛网络搜索以映射主题空间
- 识别关键子主题、领域和关注点
- 记录有前景的来源、权威声音和研究空白
- 创建一个研究计划,概述10+个具体研究线程
将研究计划保存到research_plan.md,记录:
- 识别到的研究线程
- 每个线程由哪个研究代理处理
- 每个研究代理的预期输出
阶段3:并行研究(研究代理)
使用Task工具并行启动10+个研究代理。每个代理接收一个专注研究任务。
生成研究代理:
Task工具带有:
- subagent_type: "general-purpose"
- prompt: 包括这些元素:
1. 清晰声明:"您是一个研究代理"
2. 具体子主题分配
3. 工具限制:"仅使用WebSearch、WebFetch和Write工具"
4. 输出指令:"将您的发现保存到research_notes/[子主题].md"
5. 研究笔记文件的格式要求
研究代理提示示例:
您是一个研究代理,调查:"量子纠错的技术实现"
您的工具:仅使用WebSearch、WebFetch和Write。
任务:
1. 使用WebSearch查找关于量子纠错实现的权威来源
2. 使用WebFetch从有前景的来源提取详细信息
3. 将您的发现保存到research_notes/quantum-error-correction.md
输出格式(保存到research_notes/quantum-error-correction.md):
# 量子纠错实现
## 摘要
[2-3段关键发现摘要]
## 关键发现
- [重要事实、数据、技术的项目符号]
## 来源
1. [URL] - [此来源贡献的简短描述]
2. [URL] - [简短描述]
...
## 重要引用
> "[相关引用]" - 来源
## 空白和冲突
- [任何冲突信息或需要更多研究的领域]
在单条消息中启动所有研究代理,使用多个Task工具调用实现真正并行。
阶段4:报告生成(报告撰写代理)
所有研究代理完成后,生成一个报告撰写代理:
生成报告撰写代理:
Task工具带有:
- subagent_type: "general-purpose"
- prompt: 包括这些元素:
1. 清晰声明:"您是一个报告撰写代理"
2. 工具限制:"仅使用Read、Glob和Write工具"
3. 从research_notes/读取所有文件的指令
4. 报告结构要求
5. 报告和来源的输出文件路径
报告撰写代理提示示例:
您是一个报告撰写代理,将研究发现合成为最终报告。
您的工具:仅使用Read、Glob和Write。
任务:
1. 使用Glob列出research_notes/中的所有文件
2. 使用Read加载每个研究笔记文件
3. 将发现合成为综合性报告
4. 将最终报告写入[topic]-report.md
5. 将来源参考文献写入[topic]-sources.md
报告结构:
- 执行摘要(2-3段)
- [基于主题的自适应中间部分]
- 批判性分析
- 结论
- 参考文献(编号引用)
来源文件结构:
# [主题]的研究来源
## [1] 来源标题
- **URL**:[url]
- **访问日期**:[日期]
- **类型**:[学术论文/博客文章/文档/新闻文章]
- **关键点**:[项目符号]
- **相关性**:[为何此来源重要]
撰写指南:
- 使用编号引用[1]、[2]等
- 跨多个研究笔记交叉引用发现
- 记录研究中的任何冲突或空白
- 使用清晰、精确的学术语言
- 在适当处包含比较表格
阶段5:输出和摘要
报告撰写代理完成后:
-
通知用户生成的文件:
[topic]-report.md:主要研究报告[topic]-sources.md:完整参考文献research_notes/:原始研究目录(可删除)
-
提供关键发现的简短口头摘要
-
提供回答后续问题或扩展任何部分的机会
文件结构
./
├── research_plan.md # 您的研究计划(阶段2)
├── research_notes/ # 研究代理输出(阶段3)
│ ├── subtopic-1.md
│ ├── subtopic-2.md
│ └── ...
├── [topic]-report.md # 最终报告(阶段4)
└── [topic]-sources.md # 参考文献(阶段4)
日志记录和可观察性
通过在research_plan.md中记录来跟踪研究进度:
- 分配的研究线程:列出每个子主题及其研究代理
- 状态跟踪:记录每个研究代理何时完成
- 遇到的问题:记录任何发现的空白或冲突
这提供了研究过程的透明度,并有助于后续调试或扩展研究。
最佳实践
代理分离
- 主导代理:仅生成代理和协调 - 无直接研究
- 研究代理:仅搜索、获取和写笔记 - 无合成
- 报告撰写代理:仅读取笔记和写报告 - 无新研究
这种分离确保清晰的交接和可重现的结果。
研究质量
- 优先选择权威、最近的来源(特别是时间敏感主题)
- 跨多个研究笔记交叉引用主张
- 记录冲突信息或观点
- 区分事实、专家意见和推测
- 对可用信息限制保持透明
效率
- 真正并行启动所有研究代理(单条消息,多个Task工具调用)
- 对研究代理使用model="haiku"以降低成本
- 对报告撰写代理使用model="sonnet"以更好合成
- 清晰任务划分防止冗余研究
常见模式
比较研究
当比较技术、方法或解决方案时:
- 为每个被比较的选项分配一个研究代理
- 为交叉关注点(性能、成本等)分配一个研究代理
- 报告撰写代理创建比较表格
技术深度探究
当研究技术主题时:
- 分配研究代理到:基础、实现、案例研究、限制
- 报告撰写代理从基础到高级结构
市场/情况研究
当调查领域或市场时:
- 分配研究代理到:主要参与者、新兴参与者、趋势、分析公司
- 报告撰写代理分类和评估情况
历史/进化研究
当调查某事物如何发展时:
- 分配研究代理到不同时间段或关键事件
- 报告撰写代理创建时间线并连接到当前