---
name: double6-deep-research
description: 面向开放全景、固定对象比较和有界决策问题，使用宿主已有搜索与网页读取能力完成多来源深度研究并交付完整、可读、可核验的报告。用于用户要求深入调研某一主题、比较多个对象、形成有证据的决策建议、梳理某领域截至当前的研究进展或核验一组复杂事实，也适用于英文 deep research、landscape review、evidence-based comparison 请求；不用于任务状态查询、简单事实查询、单页摘要、热点推送、PDF 翻译或基础搜索工具横评。
---

# Double6 Deep Research

目标是回答用户的问题并交付一份真正可读的完整报告。来源数量、ledger 大小、字段数量和
validator 通过都不能代替报告质量。

## 1. 冻结任务合同

把用户请求拆成明确的问题清单，记录：

- 研究对象、时间范围、地域和排除项；
- 每个必须回答的问题；
- 用户需要的输出形态、比较维度和决策用途；
- 哪些结论需要当前信息，哪些可以使用稳定历史材料。

有关键歧义且不同解释会改变报告时再提问；否则采用保守假设并在报告中说明。报告语言和
格式跟随用户请求；用户未指定时使用其提问语言。

成本、时延、部署、采用、风险等用户明确要求的维度必须分别成为可检查的问题，不能合并成
“应考虑这些因素”的泛化清单。

## 2. 制定自适应研究计划

为每个问题先冻结覆盖合同：需要哪些来源类型、是否必须有利益关系独立的证据、必须执行
哪些时效性／反证／遗漏检查，以及需要覆盖哪些对象和比较维度。优先一手来源；比较胜负、
行动建议、风险、真实采用等结论不能只依赖利益相关方自述。

不要预先规定统一来源总数。开放全景通常需要比固定比较更多来源，但是否充分取决于：

- 每个重要问题是否已经有证据；
- 关键对象和反例是否覆盖；
- 来源是否足以区分事实、厂商自述和推断；
- 继续搜索是否仍会改变主要结论。

不得把预设来源数量、搜索工具单批返回上限、耗时或完成若干轮当作充分性证明。

## 3. 研究并持续补最高缺口

只使用宿主已经提供且用户允许的搜索、网页、浏览器或材料读取能力。不要配置 provider、
读取 credential、启动自建 runtime，或执行与研究交付无关的外部操作。

按以下职责循环研究：

1. 按问题而不是按网站收集材料；
2. 打开正文，区分全文、实质章节、元数据和不可访问状态；
3. 记录来源标题、发布者、URL、访问日和支持范围；时效性来源同时记录发布日期；
4. 对日期、价格、百分比、排名和建议所依赖的事实保存精确证据；
5. 完成主体覆盖后，按覆盖合同检查缺少的来源角色、对象、维度、更新材料和反证；
6. 再用不同策略执行对抗性饱和检查，主动寻找会改变、收窄或推翻主要结论的证据；
7. 最后一轮仍改变主要结论时继续研究，直到新的饱和检查不再产生实质变化，或如实交付
   `partial`／`blocked`。

如果 WebFetch 或浏览器打开的只是导航页、目录页、登录页、脚本壳或错误页，不得标记为
`full_text`。优先寻找同一官方站点的正文子页、官方 PDF、仓库中的原始 LICENSE／文档或
其它能直接支持该 claim 的权威材料；替代来源只能支持它实际覆盖的较窄结论。搜索结果
摘要可以帮助定位正文，但不能补足正文证据。

不得把搜索 snippet、研究者摘要、导航页或自己写的“来源快照”冒充官方正文。需要保存
快照时，必须是宿主实际取得的页面或文档内容，并记录 SHA-256。

## 4. 先完成报告，再整理最小审计记录

报告结构由问题决定，但至少包括：

- 执行摘要：直接回答最重要的问题；
- 范围、时间点和方法；
- 按用户问题组织的主体分析；
- 必要的对象比较、冲突证据和决策建议；
- 不确定性、限制和仍未知事项；
- 可点击或可定位的来源。

不要把 source ledger、检索过程或内部字段机械展开成正文。每个章节都要形成读者可以理解
和使用的结论；建议要区分来源事实、跨来源推断和本报告的政策／行动判断。

对明确要求的量化或决策维度，给出可比数据及口径；公开数据未定位时逐项写明未知边界、
已检查的来源范围和可执行的本地测量方案，不能用模型单价或定性框架冒充任务成本、时延、
部署状态或真实采用证据。

交付目录只需：

```text
request_snapshot.md
final_report.md
research_record.json
snapshots/                 # 仅在实际保存正文时需要
validation_receipt.json    # 运行最小 validator 后生成
independent_review.json     # 完成独立审阅后生成
```

`research_record.json` 使用 schema v2，最小字段见
[report-quality.md](references/report-quality.md)。只登记问题、来源、关键 claim、研究轮次
和停止理由，不保存完整查询或候选全集。必须分别记录 `research_status`、
`research_as_of`、逐问题覆盖要求、来源材料类型和利益关系、各轮检查策略与结论影响；
不要用一个模糊的 `status` 同时表达研究完成度与独立复核结果。

## 5. 停止与完成

只有同时满足以下条件才可标记 `complete`：

- 原始问题清单全部在报告中得到明确回答；
- 每个问题要求的来源类型、独立证据、检查、对象和维度全部覆盖；
- 没有未关闭的高优先级证据缺口；
- 已执行覆盖缺口和对抗性饱和检查；
- 最后一次饱和检查没有再改变、收窄或推翻主要结论；
- 关键结论及引用出现在对应问题的论证章节中且可核验；
- 报告从头到尾完整可读；
- 能解释为什么继续搜索不太可能改变主要结论。

否则：

- 已有可用证据但问题未完全闭合时交付 `partial`，逐项列出缺失问题、当前证据和下一步；
- 授权、工具、访问或核心证据条件使研究无法继续时交付 `blocked`，列出阻塞条件和解除条件；
- 不要把诚实的 `partial`／`blocked` 伪装成完整报告，也不要把它们当作 validator 失败。

运行最小底线检查：

```bash
# macOS / Linux
python3 <skill-dir>/scripts/validate_research_bundle.py <bundle-dir>

# Windows PowerShell / CMD
py -3 "<skill-dir>\scripts\validate_research_bundle.py" "<bundle-dir>"
```

脚本需要 Python 3.10 或更高版本，只使用标准库；Windows 没有 `py` launcher 时把命令中的
`py -3` 换成可用的 `python`。它按 `complete`、`partial`、`blocked` 分别检查状态合同，
检查逐问题来源与检查覆盖、饱和停止、关键引用、候选文件哈希和独立复核记录。合法的部分
交付返回校验成功并保留 `partial`／`blocked` 标签；脚本不联网验证来源内容，也不判断
覆盖要求是否合理或报告是否优秀。

所有路径都使用宿主原生绝对路径或 bundle 内相对路径。不要假定 `/tmp`、POSIX 路径或
`cygpath` 一定存在；Windows 工具要求盘符路径时，先用宿主提供的路径转换能力取得
`C:\...` 形式，再读取文件。`snapshot_path` 必须留在 bundle 目录内。

## 6. 独立审阅

完整报告必须由未参与生成的 reviewer 从头到尾阅读。Reviewer 使用未继承生成对话的新鲜
上下文，只接收原始请求、候选产物和核验来源。Reviewer：

- 逐项核对原始问题是否回答；
- 核验全部关键结论，并抽检普通事实；
- 检查覆盖要求是否合理、是否提前停止，以及明显遗漏、过时信息、错误对象、错误价格和
  不受支持的建议；
- 只评价，不修补候选报告。

先运行 validator 并取得候选文件 SHA-256，再把复核结果和这些哈希保存为
`independent_review.json`，随后再次运行 validator。最小格式、独立性标准和宿主示例见
[report-quality.md](references/report-quality.md)。报告和 validator 完成但尚无独立审阅时，
交付标签只能是 `complete_draft`；只有独立 reviewer 给出 `0 blocker / 0 major`、确认研究
深度充分且饱和检查可信、全部问题覆盖和全部关键 claim 核验通过，并且候选文件哈希未变化时，validator 才会产生
`reviewed_pass`。宿主没有隔离 reviewer 时如实交付未复核草稿，不能由生成者自评为通过。

Validator 通过、来源很多或文件很大都不能替代独立审阅结论。

隐私、授权和失败关闭边界见
[privacy-and-fail-closed.md](references/privacy-and-fail-closed.md)。
