遵循GitHub Spec Kit项目编写一份好的规范,核心是遵循其定义的四步结构化工作流,并深刻理解每一步的意图和输入要求。Spec Kit提供了一套从"想法"到"代码"的标准化框架,让规范真正成为"可执行的真相源"。

下面是基于Spec Kit的最佳实践,分为前置准备、核心四步和关键原则三个部分来阐述。
一、前置准备:建立项目"宪法" (Constitution)在编写任何具体功能规范之前,第一步是确立项目的根本大法。使用 /constitution 命令来创建。
它是什么:constitution.md 文件是项目的内存指令和治理原则,类似于 CLAUDE.md 或 AGENTS.md。它为所有后续的AI决策设定了不可违背的"护栏"。
包含什么:
核心原则:例如"每个功能必须作为独立的Flask Blueprint实现"、"禁止过度工程化"、"必须遵循TDD(测试驱动开发)"等。技术栈与约束:明确指定编程语言、框架版本(如"Python 3.13, Flask 3.1")、包管理工具(如"uv")、代码规范(如"使用ruff进行格式化和静态分析")。测试要求:例如"使用pytest,并为每个Blueprint编写对应的测试文件"、"必须通过所有单元测试"等。为何重要:宪法确保了AI生成代码的风格、质量和架构与团队标准保持一致,避免了" vibe coding"可能带来的随意性和不一致性。
二、核心四步:编写可执行的规范Spec Kit的核心工作流由四个斜杠命令驱动,每一步都产出结构化的Markdown文档,存储在 specs/ 目录下,与代码一起进行版本化管理。这正是编写一份好规范的具体实践。
三、编写好规范的关键原则除了遵循流程,还需要把握以下原则,才能让规范发挥最大价值:
从模糊到精确,拥抱[NEEDS CLARIFICATION]:Spec Kit的设计鼓励精确。当AI发现规范中有模糊之处时,它会主动要求澄清。不要跳过这些环节,这正是将隐性知识显性化的过程,是避免后期返工的关键。保持规范的"活性":规范不是一成不变的文档。当需求变更时,应先修改规范,再调整计划和代码。让规范始终作为"真相源"。通过Git进行版本控制,决策变得"可追溯"和"可比较"。宪法要短小精悍:宪法应聚焦于几条不可妥协的硬性规则,而不是长篇大论、无人阅读的教条。它是指引,不是束缚。善用Checklists(清单):Spec Kit 2025更新后,更加强调在规范中使用清单,以确保覆盖所有关键要素:业务目标是否被理解?风险是否被评估?验收标准是否明确?利益相关者是否已参与?清单是早期QA的有效手段。
遵循GitHub Spec Kit的这套方法论,你编写的将不再是一份会被丢弃的文档,而是一份能够精确指导人类和AI协同工作的"活"的契约和蓝图。