Use when 需要在 Spec 级设计阶段执行 D1 research(产出 `{FEATURE_DIR}/design/research.md`),或面对关键不确定性/高风险点需要先验证而不是直接进入 D2;常见症状包括缺少证据支撑取舍、未知项被写成 TODO/待确认问题、在压力下想猜 FEATURE_DIR 或把调研写成实现细节。
From sdlc-dev-skillsnpx claudepluginhub zixun-github/aisdlcThis skill uses the workspace's default tool permissions.
assets/research-template.md本技能用于执行 Spec 级设计阶段的 D1 research(可选):从 requirements/solution.md 的技术背景中系统提取未知项,把“NEEDS CLARIFICATION / 依赖 / 集成”转成可分发的研究任务并完成调研,在 design/research.md 中以 Decision / Rationale / Alternatives considered 的结构沉淀结论,使 D2 可以直接引用而无需重复解释。
本技能既可独立使用(只做 D1),也可在 using-aisdlc 的路由判定为“需要 D1”时被调用(本技能不做 D0/D1/D2 分流判断)。
开始时宣布:「我正在使用 spec-design-research 技能进行设计调研并落盘 research.md。」
requirements/solution.md):先完成 R1(见 spec-product-clarify)solution.md 已经把关键约束与验收口径证据化:可跳过 D1 直接进入 D2{FEATURE_DIR}/design/research.md<本SKILL.md目录>/assets/research-template.mdNEEDS CLARIFICATION 都有对应研究任务,并在 research.md 内给出结论(以 Decision/Rationale/Alternatives 结构)FEATURE_DIR / 手写 .aisdlc/specs/... 路径design/research.md;若需要更新 project/contracts/ 或 project/adr/,在 research 里写“需要更新的入口 + 要点”,把实际落盘留给 D2(或用户明确要求的操作){FEATURE_DIR}(必须)REQUIRED SUB-SKILL:正在执行 spec-context 获取上下文,并在对话中回显 FEATURE_DIR=...(允许 (reuse))。
{FEATURE_DIR}/requirements/solution.md{FEATURE_DIR}/requirements/prd.md、{FEATURE_DIR}/requirements/prototype.mdproject/memory/*、相关 project/contracts/、project/adr/ 索引停止条件(不得脑补继续):
requirements/solution.mdsolution.md 中的 In/Out、验收口径、关键约束不可追溯/不可测试(需要先回到 R1 补齐)本技能作为 D1 worker skill:进入本技能即表示“路由已判定需要 D1”,因此本技能不再做“要不要做 D1”的判断。
若你在执行中发现:关键不确定性已经被证据化且无需继续 research,则应 停止并回到 using-aisdlc 重新路由,而不是在本技能内部改写路由结论。
硬规则:research.md 不出现“待确认问题清单 / TODO”。未知一律转成研究任务并给出结论;无法在本轮关闭的,再进入“验证清单”。
从 requirements/solution.md 中(尤其是“技术背景/现状/架构/依赖/集成/约束/风险”相关段落)提取三类条目,并为每条生成研究任务:
研究任务生成规则(写入 research.md 的“任务清单”并编号):
对于技术背景中的每个未知项:
任务:"针对 {feature context} 研究 {unknown}"
对于每个技术选择/依赖项:
任务:"查找 {domain} 中 {tech} 的最佳实践"
对于每个集成点:
任务:"梳理 {systemA} ↔ {systemB} 的集成模式与失败处理"
建议在 research.md 里保留“未知项 → 研究任务编号”的映射表,避免漏项与重复。
把第 3 步生成的任务按“可并行、低耦合”原则分发给多个研究 Agent(每个 Agent 对应 1 个任务或 1 组强相关任务),产出可引用的结论要点与证据入口。
分发时要给足上下文:feature 背景、约束、现状证据入口(solution.md 的段落/链接)、以及需要回答的明确问题清单。
每个研究任务的最小产出要求:
{FEATURE_DIR}/design/research.md(最小结构)必须使用最小化模板生成 research.md(避免结构漂移):
<本SKILL.md目录>/assets/research-template.md 的内容{FEATURE_DIR}/design/research.md写作约束:
NEEDS CLARIFICATION 必须在“研究任务”中出现,并在对应小节被关闭(或进入验证清单并解释原因)对仍无法在本轮关闭的未知项(例如需要 PoC、访问权限、外部确认、压测窗口等),必须转入“风险与验证清单”,并明确:
在 research.md 里确保以下内容可被 D2 直接引用:
solution.md、contracts/ADR 索引、研究任务编号或验证清单条目编号完成后:立即调用 using-aisdlc 路由下一步(通常进入 D2:spec-design)。
research.md 落盘后,必须完成以下动作(按顺序,不可省略):
ROUTER_SUMMARY:
stage: D1
artifacts:
- "{FEATURE_DIR}/design/research.md"
needs_human_review: true
blocked: false
block_reason: ""
notes: "research 结论建议评审;通常下一步进入 D2(spec-design)"
立即执行 using-aisdlc:将上述 ROUTER_SUMMARY 作为路由输入传递给 using-aisdlc,由 Router 判定下一步并自动推进(无需等待用户说「继续」)。
对话输出:在调用 using-aisdlc 前,可简短说明「本阶段产物已落盘,正在调用 using-aisdlc 路由下一步。」
FEATURE_DIR=... 就开始写/改 design/research.mdrequirements/solution.md 仍继续写 research(=脑补)| 常见借口 | 对应规则 / 动作 |
|---|---|
| “先写到仓库根目录,回头再挪到 spec 里” | 禁止猜路径:先 spec-context 拿到 FEATURE_DIR,否则停止 |
| “没有 solution.md 也能先 research,缺的后补” | 禁止脑补:缺 solution.md 直接停止,先回到 R1 补齐 SSOT |
| “来不及写验证清单,先列 TODO” | TODO 违规:把每条 TODO 改写为验证清单(含 Owner/截止/信号/动作) |
| “PM 要求写细(字段/DDL/脚本)给开发” | 拒绝混层:research 只写结论/证据/验证;在 research 里写“需要更新的 project/contracts/ / project/adr/ 入口 + 要点”,不在 D1 写字段/DDL/脚本 |
| “我已经写了很多实现草稿,不想浪费” | 沉没成本无效:把草稿迁出 research;research 正文只保留可引用结论与取舍依据 |
project/contracts/ / project/adr/ 入口)”,字段/DDL/脚本留给 D2 或 implementation。