用途
specs-kit-brainstorm 是一个用于引导式头脑风暴的技能,目标是把新的功能想法转化为纯功能规格说明(Functional Specification),即描述系统“做什么”(WHAT),而不是“如何实现”(HOW)。它聚焦于业务逻辑、用例和验收标准,不涉及代码、框架或技术模式。
主要能力
- 引导式提问:一次只问一个问题,等待回答后再继续,并始终附带推荐答案,方便用户用“是”确认。
- 上下文收集:自动收集当前 git 分支、状态、最近提交和改动等信息(仓库有历史时可用)。
- 探索优先:如果答案已在代码库、ADR、文档中,会先阅读再确认,只提问用户头脑中独有的信息。
- 范围评估:早期验证想法范围,如果过大,引导用户拆分为多个聚焦的规格说明。
- 增量验证:分节呈现规格并逐节确认。
- EARS 语法要求:所有功能需求必须使用 EARS(Easy Approach to Requirements Syntax)语法,并带有 REQ-ID 前缀,禁止模糊词汇。
- 非目标(Non-Goals):每个规格必须包含明确的非目标章节,至少列出 3 项不包含的功能,防止范围蔓延。
- 负面需求(Negative Requirements):可包含系统不得表现的行为约束,如安全、数据完整性、可靠性等方面的反模式预防。
- 文档输出:生成到
docs/specs/[id]/YYYY-MM-DD--feature-name.md,其中[id]格式为NNN-feature-name(如001-hotel-search-aggregation)。如果已有旧版*-specs.md文件,则保持现有约定,不混用格式。 - 规格生命周期管理:规格在实现完成后会被归档(不删除),作为历史记录。
使用方式
命令:/skill:specs-kit-brainstorm [idea-description]
参数 idea-description 可选,用于描述初始想法或功能;如果不提供,命令会交互式询问。
生成功能规格后,可继续执行:/skill:specs-kit-spec-to-tasks docs/specs/[id]/
归档命令(功能完成后):
mv docs/specs/[id]/YYYY-MM-DD--feature-name.md \
docs/specs/[id]/archived/YYYY-MM-DD--feature-name.md
并在 archived/README.md 中添加记录。
适用场景
- 开始新功能时,在做出任何技术决策之前定义清晰的功能需求。
- 需要将模糊想法系统化地转化为可验证、可测试的规格说明。
- 需要确保规格包含明确的非目标和负面需求,防止实现偏离范围。
- 输入为 ADR、RFC 或技术分析文档时,可将其中的架构决策作为不可变约束来生成功能规格。
限制
- 仅文档:该命令不得实现、修补、重构或修改应用/源代码,只能创建或更新
docs/specs/下的规格产物及相关文档文件。 - 不适用于修改现有行为:如果用户要求修复 bug、修改现有行为、重构现有代码或“直接改一下”,应停止并说明该技能仅生成新的功能规格。
- 不替用户决策:每个改变范围、验收标准或约束的选择都必须询问,不能假设。
- 不提供时间估算:不得提供或请求时间估算。
- 提问规则:一次只问一个问题,不得批量提问;结束提问前需总结所有回答并让用户确认。
暂未提供
- 具体收费、价格信息暂未提供。
- 支持的操作系统或平台要求暂未提供。
- 安装步骤暂未提供(资料中未给出安装命令)。