用途
speckit-checklist 用于为当前功能生成自定义检查清单,其核心定位是“需求编写的单元测试”——检查清单验证的是需求文档本身的质量,而不是代码实现是否正确。它帮助团队在开发前发现需求中的模糊、缺失、冲突和不可度量之处。
主要能力
- 根据用户输入和功能上下文(spec.md、plan.md、tasks.md)生成针对特定领域的检查清单,如 ux.md、api.md、security.md、performance.md。
- 按需求质量维度组织检查项:完整性、清晰度、一致性、可度量性、场景覆盖、边界情况覆盖、非功能性需求、依赖与假设、歧义与冲突。
- 每个检查项以问题形式提出,聚焦需求文本本身,并尽量附带追溯引用(如 [Spec §X.Y])或标记([Gap]、[Ambiguity]、[Conflict]、[Assumption])。
- 支持检查清单文件的新建与追加:新文件从 CHK001 开始编号;已有文件则从最后一个编号继续追加,不删除或替换原有内容。
- 支持扩展钩子(.specify/extensions.yml)在生成前执行可选或强制的前置命令。
- 生成前会通过 Clarify 环节提出最多三个(必要时最多五个)澄清问题,以确定检查范围、风险优先级、深度、受众和边界排除。
使用方式
该技能以斜杠命令形式调用,可携带参数($ARGUMENTS)。执行时先运行 .specify/scripts/powershell/check-prerequisites.ps1 -Json 获取 FEATURE_DIR 和可用文档列表,再按需加载项目宪法(.specify/memory/constitution.md)、spec.md、plan.md、tasks.md。随后根据用户输入和澄清回答生成检查清单,写入 FEATURE_DIR/checklists/ 目录下的 [domain].md 文件。生成结果会报告文件完整路径、条目数量,以及是新建还是追加。
适用场景
- 在需求评审前对规格文档进行质量自检。
- 为 PR 评审准备与代码无关的需求检查项。
- 针对特定领域(UX、API、安全、性能)建立需求质量门禁。
- 在开发前发现需求中的歧义、缺失和冲突。
限制
检查清单不测试代码实现、不验证用户操作或系统行为,不包含“点击”“渲染”“返回 200”等实现级验证项。它不替代测试计划或 QA 流程。具体模板内容、钩子实现细节和脚本行为以项目实际文件为准;资料中未提供的细节暂未提供。