关于 research
为软件切片工作流设计的研究技能,会并行整理治理约束与代码地图,并汇总为持久化的 research.md。它强调引用来源、消费方核验及研究结果的新鲜度检查。
主要功能
- 01并行研究治理约束与代码地图
- 02汇总交叉发现与设计影响
- 03生成 research.md 证据文档
- 04为主张附加实体或代码行引用
- 05检查研究资料是否过时
适用场景
- 01切片设计前调查约束与代码热点
- 02规划阶段读取并核验研究结果
- 03代码变更后刷新相关研究章节
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ davidlee/ doctrine --skill research安装后在 Claude Code 中输入/research确认已加载。
详细介绍
研究
设计前研究阶段会生成一份持久化的证据文档——
research.md,供后续阶段引用,而不是重新推导。两个只读线程(治理适用性;代码映射)加上跨线程综合分析,由负责协调的 Agent 汇编为一份文档。
该文档位于 .doctrine/slice/NNN/research/——直接放在切片文件夹中,并在原处加入 git 忽略。运行时级别:可丢弃的工作证据;持久性发现会在切片结束时提取。
动词: doctrine slice research <id>——在研究阶段开始时运行(此命令会创建研究文件夹并记录时效性基线 baseline.toml),每次使用该文档时也要运行,以检查其是否仍然有效。该命令仅提供建议,绝不会充当门禁:
偏差输出是刷新提示,命令始终成功。标志和机制:参阅 CLI 的帮助。
证据文档——research.md
规定的骨架;刷新研究阶段会就地修订各章节,额外章节可自由编写:
- 页眉——执行者(运行各线程的人或工具)、基线指针。
- 验证图例——下文的 ✓ 规则。
- 线程 1——治理适用性——约束性要求; 经核查后认定不适用的内容及说明理由;修订候选项。
- 线程 2——代码映射——热点区域(可能会变更的文件)、附引用的事实、 命名先例。
- 跨线程发现——线程交集或冲突之处;通常是价值最高的章节。
- 设计输入增量——本研究对预期设计的影响。
同时保存:raw/<thread>.md(线程输出原文)和 baseline.toml(由上述动词记录)。
引用格式
- 治理声明引用持久化实体 ID。
- 代码声明引用
file:line。 - 按定义,未附引用的声明无法验证。
验证规则
- ✓ = 该声明已由使用该文档的 Agent 独立验证(对引用位置执行 grep 或阅读)。未标记 = 研究者的声明:已附引用,但未经核查。
- 设计和计划只能以带 ✓ 的条目为依据,或在使用时对条目进行验证。
- 验证是非对称的——验证你所依赖的内容(每条承载依据的声明大约执行一次 grep),而不是验证所有内容。
运行研究阶段
- 启动项目的研究 Agent,每个线程各一个,均设为只读;将每个线程的标准输出保存到
research/raw/<thread>.md——绝不要将大量输出直接写入对话。 - 研究 Agent 的定义(命令、模型、预期)由项目自行决定——参阅项目治理文档中的 研究 Agent 一节。Doctrine 不附带运行器。
- **平稳降级:**若项目未定义研究 Agent,则自行运行各线程,或跳过研究阶段,并在证据文档页眉中说明。
- 研究者绝不写入文件或记忆。负责协调的 Agent 将
raw/中的内容提炼成精编证据文档——文档会指向 raw 文件以供查看大量内容。
提示词要求
每个线程的提示词都必须要求:
- 使用上述引用格式;
- 按结构化格式说明不适用项(逐一列出判定不适用的权威依据,并说明理由);
- 输出须符合证据文档的章节结构;
- 不要写前言(轻量模型常会添加;汇编者会将其删除)。
调用者
此处为唯一来源;调用它的技能仅携带简短的建议性指引:
/slice— 确定范围后,在/design之前运行研究阶段。/design— 使用该证据文档;线程 1 可替代大部分治理审查工作;设计断言引用research.md。/plan— 检查时效性建议;根据线程 2 的热点映射起草选择器。/phase-plan— 检查建议;若有偏差,仅刷新受影响的章节,然后重新记录基线。
评论
支持 Markdown