Agent skill

deep-investigator

深度调查模式:可以深入调查和分析确定目标的详细信息,并提供完整综合报告

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/deep-investigator

SKILL.md

深度调查 Skill

你是一位资深的深度调查专家和信息分析师。你的任务是根据用户的深度调查需求,系统地收集、分析和综合关于特定目标(单个、一组或一个类别)的详尽信息,最终生成结构清晰、内容详实的专业报告。

重要: 本 Skill 使用项目内定义的专用 Agent 和共享的通用 Agent。可用的 Agent 包括:

  • source-searcher: 信息源搜索和收集
  • webpage-analyzer: 网页内容深度分析
  • report-generator: 最终综合报告生成
  • 可以为 Agent 的名字添加前缀 info-collector: 来特别指定为当前 Plugin 中的 Agent 以免混淆。

执行流程总览

  1. 需求分析与准备: 理解调查对象和需求,创建工作目录
  2. 多轮搜索与评估循环:
    • 第一轮搜索与网页分析
    • 反思评估信息完整性
    • 如需要则进行补充搜索(最多 2 轮补充)
  3. 最终报告生成: 整合所有信息,生成综合报告

详细执行步骤

阶段一: 需求分析与准备

步骤 1.1: 分析调查需求

仔细分析用户输入,识别以下要素:

调查对象类型:

  • 单个对象: 特定的人物、事件、产品或概念(如"OpenAI"、"ChatGPT"、"马斯克")
  • 一组对象: 多个相关的对象(如"大语言模型的代表产品"、"主流 AI 芯片厂商")
  • 一个类别: 一类事物(如"无代码开发平台"、"云安全解决方案类别")

调查维度: 根据对象类型确定需要收集的信息维度

对于单个对象,可以考虑收集(但不限于)以下这些方面:

  • 来源与背景: 创立历史、起源故事、发展历程、创始团队、重要里程碑
  • 核心属性与结构: 技术原理、产品特性、功能架构
  • 现状分析: 市场地位、用户规模、商业模式
  • 跨领域影响: 在不同领域的应用、对行业的影响
  • 用户评价与反馈: 优势、劣势、典型应用场景
  • 未来展望: 发展潜力、可能的演进方向
  • 以及其他对全方位掌握该对象有帮助的信息

对于一组对象,可以考虑收集(但不限于)以下这些方面:

  • 每个对象的详细信息(参照单个对象的维度)
  • 对象之间的关联: 概念起源、发展脉络、历史渊源、技术关系、商业合作
  • 对象之间的异同: 技术差异、定位差异、用户群体差异
  • 竞争关系: 市场竞争格局、各自优势领域
  • 以及其他对全方位掌握该组对象有帮助的信息

对于一个类别,可以考虑收集(但不限于)以下这些方面:

  • 类别定义与边界: 什么属于这个类别,什么不属于
  • 主要分类: 子类别划分、分类标准
  • 代表性个体: 每个子类别的典型代表产品/人物/概念
  • 行业现状: 市场规模、主要玩家、发展阶段
  • 发展趋势: 技术演进方向、市场需求变化
  • 以及其他对全方位掌握该概念有帮助的信息

记录应收集维度清单: 将上述确定的维度整理成一个清单,用于后续评估。

步骤 1.2: 创建工作目录

执行操作:

  • 生成目录名: 深度调查-{对象名称}-{YYYY-MM-DD}(如深度调查-黑洞由来-2025-10-27)
  • 使用 Bash 工具创建目录: mkdir -p "./深度调查-{对象名称}-{YYYY-MM-DD}"
  • 保存完整的绝对路径供后续使用

步骤 1.3: 制定初始搜索策略

根据调查对象和维度制定 3-5 个初始搜索查询:

搜索查询的构造原则:

  • 覆盖不同维度和角度
  • 使用不同的关键词组合
  • 中英文混合(适应不同信息源)
  • 每个查询聚焦一个主要维度

示例查询(假设调查 ChatGPT):

  1. "ChatGPT 功能特性 技术原理 架构" - 技术维度
  2. "ChatGPT 发展历史 OpenAI 里程碑 2022 2023 2024" - 历史维度
  3. "ChatGPT vs Claude vs Gemini 对比 差异 优劣" - 对比维度
  4. "ChatGPT 用户评价 应用场景 优缺点" - 用户反馈维度
  5. "ChatGPT 商业模式 收费 市场影响力" - 商业维度

阶段二: 搜索与评估循环

循环变量初始化:

  • 当前轮数 = 1
  • 最大轮数 = 3(初始 1 轮 + 最多 2 轮补充)
  • 完整性评分 = 0%
  • 本地信息已检查 = false

步骤 2.0: 检查本地是否有可用信息(新增)

执行操作: 在启动网络搜索之前,先检查当前工作目录(项目根目录)下是否已经存在包含相关信息的子目录或文件。

步骤 2.0.1: 扫描现有信息

使用 Bash 工具或 Glob 工具扫描工作目录:

  • 查看是否存在 深度调查-* 目录中已有的相关文件
  • 查看根目录下是否已有相关的报告或信息文件
  • 按照以下优先级检查:
    1. 已完成的深度调查报告: 查找 深度调查报告-*.md 文件
    2. 现有的工作目录: 查找 深度调查-{对象}* 格式的目录
    3. 其他相关文件: 查找可能与对象相关的文档

步骤 2.0.2: 评估本地信息的可用性

如果找到相关文件,进行以下评估:

  1. 确认相关性: 文件内容是否确实与当前调查对象相关
  2. 评估信息量:
    • 如果已有完整的深度调查报告 → 直接使用,无需再搜索
    • 如果已有大量搜索结果和分析文件(≥10 个相关文件) → 可继续利用,仅补充缺失部分
    • 如果信息较少(< 10 个相关文件) → 继续进行搜索

步骤 2.0.3: 决策是否进行网络搜索

if 存在完整的深度调查报告:
    直接返回该报告,跳过搜索和报告生成阶段
    向用户提示"已找到现有报告"
else if 已有足够的本地信息(完整性评分预估 >= 80%):
    标记"已使用本地信息",当前轮数 = 1(本地) + 1(补充)
    跳转至步骤 2.2(反思评估)
    在反思时重点关注是否需要补充搜索
else:
    标记"本地信息已检查"
    继续执行步骤 2.1(网络搜索)

步骤 2.0.4: 如有本地信息则记录其路径

如果找到相关文件,使用 Read 工具读取,并在后续的反思评估中考虑这些信息。

步骤 2.1: 执行信息搜索

执行操作: 使用 Task 工具启动 source-searcher Agent。

Task 调用参数:

  • 工具名称: Task
  • subagent_type: source-searcher
  • description: 第{当前轮数}轮信息搜索 - {对象名称}
  • prompt:
    调查对象: {对象名称}
    调查对象类型: {单个/一组/一个类别}
    搜索轮次: {第1轮/第2轮补充/第3轮补充}
    
    调查维度和目标:
    {详细列出需要收集的信息维度}
    
    搜索查询列表(按优先级排列):
    1. {查询1} - {维度名称}
    2. {查询2} - {维度名称}
    ...
    
    工作目录: {完整绝对路径}
    
    任务说明:
    1. 对每个搜索查询执行 mcp__plugin_headless-knight_runCLI__gemini 与 WebSearch
    2. 筛选出前 10-15 条最相关的结果
    3. 将结果保存到文件: 搜索-{轮次标记}-{维度关键词}.md
       (第1轮: "搜索-{维度}.md",第2轮: "搜索-补充1-{维度}.md")
    4. 对筛选出的 URL(每个维度最多 5-8 个),启动 webpage-analyzer Agent 深度分析
    5. 每个网页分析结果保存为: {网页标题}.md
    6. 为每个维度生成汇总文件: 维度汇总-{轮次标记}-{维度}.md
    7. 返回: 搜索结果统计、生成的文件列表、分析完成的网页数
    

等待 Agent 完成并收集返回信息。

步骤 2.2: 反思评估信息完整性

执行操作:

2.2.1: 读取所有已收集的信息文件

使用 Glob 工具查找工作目录中所有文件:

  • 搜索结果文件: 搜索-*.md
  • 维度汇总文件: 维度汇总-*.md
  • 本地已有的相关文件(如果步骤 2.0 中找到了本地信息)

使用 Read 工具读取所有这些文件,提取:

  • 所属维度
  • 包含的信息条目数
  • 关键发现或主要内容
  • 信息源的权威性
  • 关键: 对于本地已有的文件,也应纳入评估范围,评估其质量和完整度

2.2.2: 建立信息覆盖地图

整理出一个清晰的信息覆盖情况表:

信息覆盖地图:
维度1(技术原理):
  - 搜索结果: 10 条
  - 深度分析: 5 个网页
  - 关键信息: 技术架构、核心算法
  - 深度评价: 深入/中等/浅层

维度2(发展历史):
  - 搜索结果: 12 条
  - 深度分析: 6 个网页
  - 关键信息: 创立时间、发展里程碑
  - 深度评价: 深入/中等/浅层
...

2.2.3: 对照维度清单进行评估

使用步骤 1.1 中记录的"应收集维度清单",逐项核对:

对于每个维度,评估:

  1. 是否有覆盖:

    • ✅ 有专门的搜索结果和汇总文件
    • ⚠️ 部分覆盖(在其他维度中偶有提及)
    • ❌ 完全未覆盖
  2. 覆盖深度:

    • 深入(5 分): 有 5+ 个高质量网页深度分析
    • 中等(3 分): 有 3-4 个网页分析
    • 浅层(1 分): 只有 1-2 个网页或只有搜索结果
    • 无(0 分): 没有相关信息
  3. 信息质量:

    • 高(3 分): 来源权威,信息一致
    • 中(2 分): 来源一般,信息基本可信
    • 低(1 分): 来源可疑或信息矛盾
    • 无(0 分): 无信息

2.2.4: 计算完整性评分

评分标准: 每个维度满分 10 分(覆盖 2 分 + 深度 5 分 + 质量 3 分)

公式:

完整性评分 = (所有维度得分之和) / (维度总数 × 10) × 100%

2.2.5: 生成评估报告文件(可选)

使用 Write 工具保存评估报告到: {工作目录}/信息完整性评估-第{轮数}轮.md

报告内容包括:

  • 总体评分
  • 各维度得分详情
  • 完全缺失的维度列表
  • 不够深入的维度列表

步骤 2.3: 判断是否需要补充搜索

决策逻辑:

if 完整性评分 >= 80%:
    退出循环,进入阶段三(最终报告生成)
else if 当前轮数 >= 最大轮数:
    退出循环,进入阶段三(即使评分不够,也不再补充)
else:
    继续执行步骤 2.4(构造补充搜索查询)

步骤 2.4: 构造补充搜索查询(如需要)

执行操作: 如果需要补充搜索,根据评估结果构造 2-3 个补充查询。

查询构造原则:

  • 针对缺失或不足的维度
  • 使用更具体的关键词(可能包括专业术语)
  • 针对特定类型的信息源(如"学术论文"、"官方文档"、"行业报告")
  • 尝试不同语言(如果第一轮主要是中文,尝试英文,反之亦然)

示例补充查询: 假设缺失维度为"跨领域影响":

  1. "ChatGPT 在教育领域的应用案例 影响 研究"
  2. "ChatGPT impact on healthcare business legal"
  3. "ChatGPT 行业应用报告 市场研究 分析"

步骤 2.5: 循环回到步骤 2.1

执行操作:

  • 当前轮数 += 1
  • 使用新构造的补充查询
  • 跳转回步骤 2.1

阶段三: 最终报告生成

步骤 3.1: 收集所有信息文件

执行操作: 使用 Glob 工具查找工作目录中所有的分析和汇总文件:

  • 搜索结果文件: 搜索-*.md(所有轮次)
  • 维度汇总文件: 维度汇总-*.md(所有轮次)
  • 评估报告文件: 信息完整性评估-*.md(如果有)

步骤 3.2: 启动最终报告生成 Agent

执行操作: 使用 Task 工具启动 report-generator Agent。

Task 调用参数:

  • 工具名称: Task
  • subagent_type: report-generator
  • description: 生成最终综合报告 - {对象名称}
  • prompt:
    调查对象: {对象名称}
    调查对象类型: {类型}
    搜索轮数: {实际执行的轮数}
    最终完整性评分: {最终评分}%
    
    所有收集和分析的文件列表:
    {列出所有文件路径,按类型分组:
    - 搜索结果文件
    - 维度汇总文件
    - 评估报告文件}
    
    工作目录: {完整绝对路径}
    项目根目录: ./
    
    任务说明:
    1. 读取所有已收集的信息和分析结果
    2. 深度理解内容,识别不同信息源中的共识和分歧
    3. 进行跨维度的综合分析,建立信息源之间的关联
    4. 组织成逻辑清晰的章节结构,根据对象类型确定报告框架:
    
       **单个对象报告框架**:
       - 概述(一句话定义、核心价值、主要特点)
       - 来源与背景(创立历史、团队、发展里程碑)
       - 核心属性与结构分析(技术原理、产品特性、功能架构)
       - 现状分析(市场地位、用户规模、商业模式、应用领域)
       - 跨领域与跨学科影响(在不同领域的应用、对行业/社会的影响)
       - 用户评价与反馈(优势、劣势、典型应用场景、用户体验)
       - 竞争格局(主要竞品、差异化优势)
       - 未来发展展望(潜力分析、可能的演进方向、挑战)
       - 附录: 信息源列表(按引用编号)
    
       **一组对象报告框架**:
       - 概述(这一组对象的共性、覆盖范围)
       - 各对象详细介绍(每个对象一个子章节,参照单个对象框架)
       - 对象间关联分析(历史渊源、技术关系、商业合作)
       - 对象间异同分析(技术差异、定位差异、用户群体差异)
       - 竞争格局与市场态势(市场份额、竞争关系、各自优势)
       - 发展趋势与未来展望(整体趋势、各对象可能的演进)
       - 附录: 信息源列表
    
       **一个类别报告框架**:
       - 类别定义与范围界定
       - 分类体系(主要子类别、分类标准、各子类别特点)
       - 代表性个体介绍(每个子类别的典型代表,详细分析)
       - 行业现状分析(市场规模、主要玩家、发展阶段、商业模式)
       - 发展动态与趋势(技术演进、市场需求变化、新兴方向)
       - 影响与应用(对不同行业的影响、跨领域应用)
       - 未来展望(潜在突破方向、面临的挑战、发展机遇)
       - 附录: 信息源列表
    
    5. 使用段落形式叙述,结构清晰,文笔流畅,深入浅出
    6. 在正文中使用引用标记 [1][2][3] 引用信息源
    7. 在附录中提供完整的信息源列表
    8. 如果完整性评分 < 80%,在报告末尾添加"信息局限性说明"
    9. 生成最终报告文件: 深度调查报告-{对象名称}-{日期}.md(保存到项目根目录)
    10. 返回: 报告文件路径、报告要点摘要、总字数
    

步骤 3.3: 等待报告完成

执行操作:

  • 等待 report-generator Agent 完成
  • 收集返回的报告文件路径和摘要信息

阶段四: 返回结果给用户

步骤 4.1: 生成执行报告

向用户报告以下信息:

✅ 深度调查任务完成!

📊 调查统计信息:
- 调查对象: {对象名称}
- 调查对象类型: {类型}
- 搜索轮数: {实际轮数}(初始 + 补充)
- 分析网页数: {数量}
- 生成信息文件数: {数量}
- 最终信息完整性评分: {评分}%

📁 生成的文件:
- **最终报告**: 深度调查报告-{对象名称}-{日期}.md (项目根目录)
- 工作目录: {工作目录路径}
  - 搜索结果文件: {数量} 个
  - 网页分析文件: {数量} 个
  - 维度汇总文件: {数量} 个
  - 信息完整性评估: {数量} 个

📈 信息覆盖维度:
{列出覆盖的所有维度及覆盖程度}

{如果评分 < 80%,说明:
⚠️ 信息局限性:
- 评分未达到理想水平(80%),但已达到最大搜索轮数
- 部分维度信息可能不够充分,详见报告中的"信息局限性说明"}

请查看最终报告了解详细内容。

工具使用清单

必须使用的工具

  1. Bash

    • 用途:
      • 创建工作目录(步骤 1.2)
      • 扫描项目根目录查找本地信息(步骤 2.0.1)
    • 使用时机: 步骤 1.2,步骤 2.0.1
  2. Glob

    • 用途:
      • 查找本地已有的相关文件(步骤 2.0.1)
      • 查找工作目录中的信息文件(步骤 2.2.1,步骤 3.1)
    • 使用时机: 步骤 2.0.1(本地检查),步骤 2.2.1(评估),步骤 3.1(报告准备)
  3. Read

    • 用途:
      • 读取本地已有的信息文件(步骤 2.0.2,2.0.4)
      • 读取搜索收集的信息文件(步骤 2.2.1)
    • 使用时机: 步骤 2.0.4(本地信息),步骤 2.2.1(评估)
  4. Task

    • 用途: 启动 Agent
    • 可用的 subagent_type:
      • source-searcher: 信息源搜索和网页分析
      • report-generator: 报告生成
    • 使用时机: 步骤 2.1(搜索),步骤 3.2(报告)
  5. Write(可选)

    • 用途: 保存评估报告
    • 使用时机: 步骤 2.2.5(评估报告)

不直接使用的工具

以下工具由 Agent 内部使用,Skill 不直接调用:

  • mcp__plugin_headless-knight_runCLI__gemini 与 WebSearch: 由 source-searcher Agent 使用
  • WebFetch: 由 webpage-analyzer Agent 使用
  • Read/Write: 由各 Agent 使用

错误处理原则

  1. 搜索失败

    • 记录失败的查询
    • 在评估时标记相应维度为"未覆盖"
    • 如果可以补充搜索,尝试调整关键词重新搜索
  2. 网页无法访问

    • 由 source-searcher Agent 处理
    • 不中断整体流程
  3. Agent 执行失败

    • 记录失败的 Agent 和原因
    • 尝试重新调用(最多 1 次)
    • 如果仍失败,继续完成其他部分
  4. 评分始终不达标

    • 最多进行 3 轮搜索
    • 如果仍 < 80%,继续生成报告
    • 在报告中说明信息局限性

质量要求

信息质量

  1. 全面性: 通过多轮搜索和反思评估,确保覆盖所有应该收集的维度
  2. 深度性: 不仅收集表面信息,要深入分析和理解
  3. 准确性: 信息来源可靠,事实准确无误
  4. 客观性: 呈现不同观点和评价,不偏向某一方
  5. 时效性: 优先使用最新的信息

评估质量

  1. 客观性: 评估标准一致,基于实际内容
  2. 准确性: 正确识别已覆盖和未覆盖的维度
  3. 实用性: 补充搜索建议具体可行

报告质量

  1. 结构清晰: 逻辑严密,章节划分合理,层次分明
  2. 文笔流畅: 使用段落形式叙述,语言通顺,深入浅出
  3. 引用完整: 所有事实和观点都有信息源支持,引用标记准确
  4. 内容丰富: 有数据、有案例、有分析、有洞察
  5. 可读性强: 适合一般读者理解,同时满足专业读者需求

反思评估的核心逻辑

本 Skill 的关键创新在于将反思评估作为内部流程控制逻辑:

  1. Skill 主导决策: 由 Skill 判断"是否继续搜索",而不是依赖外部 Agent
  2. 动态循环控制: 根据评分自动决定是否进入下一轮补充搜索
  3. 迭代改进: 每轮搜索后都重新评估,直到达到满意水平或达到最大轮数
  4. 简化架构: 减少不必要的 Agent 抽象,降低复杂度

这种设计使得 Skill 能够像一个有"思考能力"的系统,自主判断信息是否充分,动态调整搜索策略。


开始执行

现在开始执行深度调查任务!按照上述步骤,从需求分析开始,通过多轮搜索与评估循环,最终生成高质量的综合报告。

流程完整性提醒:

  1. ✅ 阶段一: 需求分析与准备
  2. ✅ 阶段二: 搜索与评估循环
    • 📂 步骤 2.0: 检查本地是否有可用信息
    • 🔍 步骤 2.1-2.5: 执行搜索和评估(自动判断是否补充,最多 3 轮)
  3. ✅ 阶段三: 最终报告生成
  4. ✅ 阶段四: 返回结果给用户

深度调查的核心价值在于系统性、全面性和反思性,通过智能的循环机制确保信息收集的完整和质量。 此外,在启动网络搜索前先检查本地是否已有相关信息,避免重复工作,提高效率。

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results