Dive 是一个面向项目调查的技能,用于回答从业务逻辑到技术实现的各种问题。它强调“证据优先于直觉”,核心不是“如何找到答案”,而是“如何确认答案是真的”,因为记忆不可靠、代码演进快于文档,只有当前代码库代表当前事实。
主要能力:按三层顺序检索——第一层文档(项目声称做什么,读得快、提供检索词汇、与代码的差异本身即发现);第二层代码(实际做什么,是 ground truth,测试体现预期行为、类型揭示契约);第三层深度分析(各部分如何连接,成本高,仅在前两层不收敛或需跨组件追踪时使用)。收集证据时要求带 file:line 引用,并综合多来源给出直接答案、证据与不确定性。
证据分层:运行中的代码最高,测试与实现次高,类型定义中高,注释与文档中,提交信息中低。多来源一致即高置信,单一来源需另一层验证。
用法:依据问题类型选择搜索方式,如“X 如何工作”从代码入手并以测试验证,“为何这样设计”从文档/ADR 与历史入手,“谁调用了 X”从 grep 追踪引用,“X 何时改变”从 git log 找提交。调查循环为:理解问题→分层搜索→收集带引用的证据→综合→作答。文档与代码冲突时两者都报告,由上下文决定行动;找不到证据时说明搜索了什么、找到什么、缺什么,并标注假设。
参考文件按需加载:reference/search-strategies.md、reference/code-search-patterns.md、reference/evidence-collection.md。
限制:资料未提供具体安装命令、收费方式、支持平台与运行环境;也未提供示例输出或集成方式。