1808 字
9 分钟
规格驱动开发:从需求到实现的新范式

🌱 规格驱动开发 (Spec-Driven Development)

更快地构建高质量软件

一种开源工具包,让AI专注于产品场景和可预测的结果,而不是从头开始的感觉编码。


hoppinzq按#

这个项目太强了,这是AI编码的新范式。它能让所有程序员失业,就连产品经理都不能置身事外
首先感谢Pankitgg的分享,这真的是一个令人吃惊的项目。
。。。
好了,不卖关子了,我先来简单的讲一下这个项目,正如你所见——”规格驱动开发“。你可能懂这个名词,我可以略微解释一下。如果你要开发一个项目, 通常你会先去写文档,描述需求,技术栈选型,制定开发流程,进行架构设计,宣贯开发的注意事项,明确接口、数据库和编码规范…
前人的总结和《人月神话》告诉我们,提前做好这些规划是非常重要的,因为它们直接影响到项目的成功。

这同样适用于AI智能体!我们知道,AI智能体已经可以干活了,AI智能体最牛逼的地方在于:它从光说不做,到能用工具干活。智能体已经可以直接参与代码的开发,而再不需要开发人员通过对话问AI,然后把AI给的代码粘过来。
然而,AI智能体在用工具调用时,会有一个现象,通俗的说,就是:干活不过脑子。什么意思呢?我们知道AI对话实际是基于LLM的,你问大模型1+1=?,实际大模型并不会思考,而是通过embedding去计算后一个token最相近、最高概率的文本,然后返回给你。这种感觉就像是我问你一个问题,你想都不想直接去百度,然后用百度到的东西回复我。是的,在聊天的情况下,这种做法并无不妥。但是在工具调用方面,却隐藏巨大的隐患。
我将有一篇博客来详细介绍这个问题,你只要知道,用户的提示词、MCP Server的工具定义、甚至是ReAct模式都能解决这个问题。目前你在使用的AI智能体普遍都采用了ReAct模式,这是一种非常好的模式,具体的表现是:它能让AI智能体在调用工具时,先思考一下,然后再调用工具。
OK,我们言归正传,现在

什么是规格驱动开发?#

规格驱动开发(Spec-Driven Development)彻底翻转了传统软件开发的脚本。几十年来,代码一直是王道——规格只是我们构建并在编码”真正工作”开始后丢弃的脚手架。规格驱动开发改变了这一点:规格变得可执行,直接生成可工作的实现,而不仅仅是指导它们。

核心理念#

规格驱动开发是一个结构化的过程,强调:

  • 意图驱动开发,规格在”如何做”之前定义”做什么”
  • 丰富的规格创建,使用护栏和组织原则
  • 多步细化而非一次性从提示生成代码
  • 高度依赖先进AI模型的规格解释能力

开发阶段#

阶段重点关键活动
0到1开发(“绿地”)从头生成
  • 从高级需求开始
  • 生成规格
  • 规划实施步骤
  • 构建生产就绪的应用程序
创意探索并行实现
  • 探索多样化解决方案
  • 支持多种技术栈和架构
  • 实验UX模式
迭代增强(“棕地”)棕地现代化
  • 迭代添加功能
  • 现代化遗留系统
  • 调整流程

开始使用#

1. 安装Specify CLI#

选择您喜欢的安装方式:

选项1:持久安装(推荐)#

一次性安装,随处使用:

Terminal window
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git

然后直接使用该工具:

Terminal window
specify init <项目名称>
specify check

升级specify:

Terminal window
uv tool install specify-cli --force --from git+https://github.com/github/spec-kit.git

选项2:一次性使用#

无需安装直接运行:

Terminal window
uvx --from git+https://github.com/github/spec-kit.git specify init <项目名称>

2. 建立项目原则#

在项目目录中启动AI助手。/speckit.*命令可在助手中使用。

使用**/speckit.constitution**命令创建项目的管理原则和开发指南,这些将指导所有后续开发。

Terminal window
/speckit.constitution 创建专注于代码质量、测试标准、用户体验一致性和性能要求的原则

3. 创建规格#

使用**/speckit.specify命令描述您想要构建的内容。专注于什么为什么**,而不是技术栈。

Terminal window
/speckit.specify 构建一个可以帮助我将照片整理到单独相册中的应用程序。相册按日期分组,可以在主页上通过拖放重新组织。相册永远不在其他嵌套相册中。在每个相册中,照片以平铺界面预览。

4. 创建技术实施计划#

使用**/speckit.plan**命令提供您的技术栈和架构选择。

Terminal window
/speckit.plan 应用程序使用Vite,使用最少数量的库。尽可能使用原生HTML、CSS和JavaScript。图像不上传到任何地方,元数据存储在本地SQLite数据库中。

5. 分解为任务#

使用**/speckit.tasks**从实施计划创建可操作的任务列表。

Terminal window
/speckit.tasks

6. 执行实施#

使用**/speckit.implement**执行所有任务,根据计划构建您的功能。

Terminal window
/speckit.implement

支持的AI代理#

规格驱动开发支持多种AI编码工具,包括:

  • Claude Code
  • GitHub Copilot
  • Gemini CLI
  • Cursor
  • Qwen Code
  • opencode
  • Windsurf
  • Kilo Code
  • Auggie CLI
  • CodeBuddy CLI
  • Roo Code
  • Codex CLI

实验目标#

我们的研究和实验重点是:

技术独立性#

  • 使用多样化的技术栈创建应用程序
  • 验证规格驱动开发是一个不依赖于特定技术、编程语言或框架的过程

企业约束#

  • 展示关键任务应用程序开发
  • 纳入组织约束(云提供商、技术栈、工程实践)
  • 支持企业设计系统和合规要求

以用户为中心的开发#

  • 为不同用户群体和偏好构建应用程序
  • 支持各种开发方法(从感觉编码到AI原生开发)

创造性和迭代过程#

  • 验证并行实现探索的概念
  • 提供强大的迭代功能开发工作流程
  • 将流程扩展到处理升级和现代化任务

先决条件#

结语#

规格驱动开发代表了软件开发的一种新范式,它将规格从辅助文档转变为开发过程的核心。通过将AI的能力与结构化的开发流程相结合,Spec Kit使开发者能够更快地构建高质量的软件,同时保持对业务需求的关注。

无论您是在开发新项目还是现代化遗留系统,规格驱动开发都提供了一个框架,帮助您将想法转化为可工作的软件,而无需陷入实现细节的早期决策中。

github
/
spec-kit
Waiting for api.github.com...
00K
0K
0K
Waiting...
规格驱动开发:从需求到实现的新范式
https://blog.hoppinzq.com/posts/spec-driven-development-guide/
作者
HOPPINZQ
发布于
2025-10-30
许可协议
CC BY-NC-SA 4.0

📝 记录笔记和心得 (0)

用户头像
游客
访客身份
加载笔记中...