01-为什么AI写代码总跑偏

简介: 《SDD规范驱动开发实操手册》第1篇,直击AI编程落地三大卡点:不知首文件写什么、不知规范写多细、不知如何嵌入现有流程。提供30分钟最小闭环路径,覆盖工具安装、规范初始化与AI协同五步实操,适配技术负责人、开发者、测试、产品等四类角色,助你当天在项目中跑通首个SDD闭环。(239字)

SDD 规范驱动开发实操手册 · 第 1 篇 / 共 8 篇

全系列按「说明 → 介绍 → 使用 → 实操 → 排障 → 收益」推进,每篇都可独立阅读,收藏专栏后按序看不会断。

这一篇说明手册解决什么问题、四类读者各自该读到哪,并给出一条「只有 30 分钟」也能走完的最小闭环。如果你现在就想在项目里试一次,直接跳到 1.6 节。

第一章 说明:这本手册怎么用

1.1 这本手册要解决的具体问题

先说结论:大多数人听说 SDD(Spec-Driven Development,规范驱动开发)之后,卡住的不是"不懂概念",而是三个非常具体的问题——

第一,不知道第一个文件该写什么。看了一堆"规范即真源"的宣言,打开编辑器,光标在空白文件里闪了十分钟,最后还是回去跟 AI 聊天了。

第二,不知道写多细才算够。写少了 AI 自由发挥,写多了变成八股文,团队三天就放弃。

第三,不知道怎么塞进现有流程。需求在 Jira、设计在 Confluence、代码在 GitLab、评审在 PR 里,SDD 好像要在旁边再开一套体系,谁来维护?

这本手册就是按这三个问题组织的。全书有一条主线:一个真实需求,从一句话变成上线代码,中间每一步都留下可复制的文件、命令和判断标准。 读完第四章,你手上会有一份能直接搬进自己项目的完整素材。

1.2 谁该读,读到什么程度

角色 建议阅读 读完应当能做出的判断
技术负责人 / 架构师 全篇精读,重点 2.5、3.5、4.4、5.6、6.5 能决定团队用哪一档强度、哪些改动强制走 SDD、如何度量收益
一线开发 2.6、3.3、3.4、第四章跟做 能独立把一个需求写成 spec 并驱动 AI 实现到验收
测试 / QA 2.6、3.9、4.8 能把 EARS 验收标准直接翻译成测试用例,验收不再靠"感觉差不多了"
产品 / 项目经理 2.3、2.7、4.2、4.3、5.9 知道自己在 SDD 里要交付什么(问题陈述、验收标准、优先级),不需要懂技术方案
刚接触 AI 编程的个人开发者 1.6 → 第三章 → 第四章 Step 1-7 今天就能在自己的项目里跑通最小闭环

1.3 三条阅读路径

路径 A|30 分钟决策(管理者):1.4 → 2.1-2.4 → 2.8 → 6.2-6.4 → 6.6。目的是判断"我们团队要不要上、上多重的版本"。

路径 B|3 小时跟练(开发者):1.6 → 第三章全部 → 第四章 Step 0-8。跟着敲一遍,你会得到一个跑通的示例功能。

路径 C|两周落地(推动者):第三章 → 第五章全部 → 6.6 的 30/60/90 天路线图。按图施工,两周内团队能形成习惯。

1.4 全书约定

  • 工具基线:GitHub Spec Kit(CLI 名为 specify)、Amazon Kiro、OpenSpec 三类主流实现。三者理念一致、产物都是纯 Markdown,命令有差异。书中以 Spec Kit 为主线演示,关键处标注 Kiro / OpenSpec 的对应做法。
  • 两条命令通道,先分清再动手:全书只有两类命令,运行位置完全不同,混用一定报错。
    • 终端命令(代码块里以 $ 开头的那行):在项目根目录打开终端执行。Windows 用 PowerShell(在开始菜单搜 "PowerShell",普通权限即可,不需要管理员),不要用 CMD——|| 在 CMD 里不可用、curl 是系统自带的另一个程序,行为完全不同;macOS / Linux 用 Terminal。凡安装类命令 Windows 与 macOS 写法不同,书中分两套给出。
    • 斜杠命令(/speckit.specify 这类):在 AI 编程助手的对话窗口里输入,不是在终端里敲,也不写进任何代码文件。助手必须在项目根目录启动(cd 到项目后再启动),否则它读不到 .specify/ 目录,斜杠命令会提示不存在。
    • $ 是提示符、# 是注释,复制时都不要带上。
    • 判断标准一句话:要你按回车的、在终端;要 AI 干的、在对话框。
  • 版本提醒:SDD 工具迭代很快,斜杠命令的命名空间和 init 参数在不同版本间改过(--ai 与 --integration 都出现过)。凡命令报错,先跑 specify --help / specify init --help / specify integration list,以你本地实际安装的版本为准。 这不是手册的问题,是这个领域当下的常态。
  • 示例项目:一个 6 人团队的电商后台,Spring Boot 3.2 + MySQL 8.0 + Redis 7 + Vue 3,需求是"优惠券领取与核销"。选它的原因是:业务人人能懂,边界条件足够多(库存、限领、叠加、并发、过期、退款回滚),最能暴露"不写规范会漏什么"。
  • 代码片段:只保留说明问题的最小片段,标注文件路径;完整模板在附录 A。

1.5 一个必须先接受的判断

SDD 不是"写更多文档"。它是把决策从聊天记录里搬到仓库里。

区别在于:文档是给人看的旁证,规范是给人和 AI 共同执行的输入。判断你写的东西是文档还是规范,只有一个标准——它能不能被验证成"是/否"。"系统应尽量快速响应"是文档;"当库存大于 0 时,系统应在 300 毫秒内返回券码"是规范。后者可以写测试,前者只能吵架。

1.6 如果只有 30 分钟:最小闭环五步

不想读完整本手册,就做这五步。任何项目、任何语言都能跑。

先明确在哪儿敲。 第 0~2 步是终端命令,不是在你平时写代码的编辑器里敲,也不是在 AI 对话框里敲:

  • Windows:开始菜单搜 PowerShell,打开蓝色窗口,粘贴命令后回车。不要用 CMD(curl 是另一个程序、|| 不可用,会直接报错)。
  • macOS:打开「终端」(Terminal,按 Command+空格 搜 terminal)。
  • Linux:任意终端模拟器均可。

下面的命令逐行复制、逐行回车;# 开头是注释,不用输进去(本书后面有些代码块用 $ 表示提示符,同样不要复制)。按你的系统选一块:

▍Windows(PowerShell)

# 第 0 步:确认环境(Python 3.11+ / Git)
python --version
git --version

# uv 是包管理器;已装会打印版本号,报"无法识别"再执行下面这行
uv --version
irm https://astral.sh/uv/install.ps1 | iex

# 第 1 步:重新打开PowerShell,安装 SDD 命令行工具(全局装一次,之后所有项目通用)
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git

# 第 2 步:进入你的项目根目录,再就地初始化(--here = 不动现有目录结构)
cd C:\path\to\your-project
specify init --here

▍macOS / Linux(Terminal)

# 第 0 步:确认环境(Python 3.11+ / Git)
python3 --version
git --version

# uv 未安装时执行下面这行
uv --version
curl -LsSf https://astral.sh/uv/install.sh | sh

# 第 1 步:安装 SDD 命令行工具(全局装一次)
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git

# 第 2 步:进入你的项目根目录,再就地初始化
cd /path/to/your-project
specify init --here

装完先验证再往下走:specify --version 能打印版本号,才说明第 1 步成功。若提示 command not found,多半是 PATH 没刷新——把终端窗口关掉重开一次再试。

初始化完成后,项目里会多出 .specify/(模板、脚本、宪法)和 specs/(每个功能一个目录)。接下来换成 AI 编程助手的对话窗口(不是在终端里敲),确认它已在项目根目录启动,按顺序输入五条:

/speckit.constitution 建立本项目的基本法:代码质量标准、测试要求、错误处理约定、性能底线

/speckit.specify 我要给订单列表加"按交付日期筛选"。用户可以选择起止日期,
只填一端时按开区间处理,清空则恢复全量。筛选状态要能分享给同事(URL 带参数)。

/speckit.plan 后端 Spring Boot 3.2,前端 Vue 3,日期参数用 ISO-8601,走现有 /api/orders 接口增加查询参数

/speckit.tasks

/speckit.implement

验收标准:specs/ 下出现一个以功能命名的目录,里面有 spec.md、plan.md、tasks.md。打开 spec.md,如果你能指着某一条说"这条可以写成一个测试",最小闭环就成了。

⚠️ 注意:如果 specify init 报参数错误,去掉 --here 看帮助,或改用 specify init my-project 新建目录。参数在不同版本间变过,以 --help 为准。



下一篇:SDD 到底是什么?它和瀑布、敏捷、TDD 的差别在哪,为什么「写清楚需求」这句话在 AI 时代突然变得可执行。

系列目录见专栏。如果这篇对你有用,点个赞让更多被 AI 写崩过项目的人看到

相关文章
|
14天前
|
Linux 开发工具 iOS开发
Codex保姆级教程(下载+安装+登录+使用,含所有版本,2026最新)
Codex是OpenAI推出的开源AI编程智能体,本地运行,可理解整个代码库,支持自然语言指令改代码、执行命令、跑测试、修Bug,兼容Win/macOS/Linux。(239字)
6217 45
|
3天前
|
云安全 人工智能 安全
|
15天前
|
JavaScript API iOS开发
DeepSeek Harness下载、安装、配置一篇搞定(2026整理,送常用插件)
DeepSeek Harness(DSH)是DeepSeek于2026年开源的MIT协议AI Agent框架,支持插件化组装模型、工具、沙箱与UI,兼容主流大模型。本文提供免Node.js的桌面端安装包(Win/macOS),含详细图文教程及热门插件推荐。
5139 60
|
9天前
|
Linux 开发工具 iOS开发
2026最新codex下载安装保姆级使用教程(下载+安装+登录+使用,含所有历史版本)
本文详解OpenAI Codex国内快速上手指南:提供Win/macOS/Linux全平台免安装包、npm/Homebrew等多方式安装、账号/API Key双登录、简体中文切换,覆盖下载、安装、汉化、使用及高频避坑(如微软商店失败、npm超时等),10分钟即可跑通。
2492 6
|
2天前
|
JSON 前端开发 API
阿里云最新Qwen4-Max大模型介绍:模型定位、特征、能力、适用场景解析
2026 年 11 月 11 日,阿里发布第四代旗舰模型Qwen4-Max预览版,首发千问 AI 平台 Token Plan,并同步接入千问办公、Qoder 等入口。该版本聚焦知识理解、世界感知、编程与 Agentic 四项升级,主打复杂编程、专业办公、前端设计与专业软件操作。预览期至 11 月 25 日 24:00,到期后模型标识下线;限时 2 折、新用户再享 5 折,最低 1 折可体验。
|
7天前
|
人工智能 安全 API
DeepSeek Harness下载、安装、配置一篇搞定(2026整理,送常用插件)
DeepSeek Harness(dsh)是DeepSeek AI于2026年开源的轻量级Agent运行框架,基于Cordis内核,践行“一切皆插件”理念。支持Web/桌面双端,开箱即用;内置多模型接入、丰富插件生态(超3.5万),适配编程、办公、创作等场景。(239字)
1573 1
|
2天前
|
人工智能 前端开发 API
阿里云Qwen4-Max 大模型详解:定位、特征、能力、适用场景与相对Qwen3-Max差异解析
2026年11月11日,阿里发布第四代旗舰模型Qwen4-Max预览版,首发千问AI平台Token Plan并接入千问办公、Qoder等入口。该版本聚焦知识理解、世界感知、编程与Agentic四项升级,主打复杂编程、专业办公、前端设计与专业软件操作等真实任务。预览期为11月11日10:00至11月25日24:00,仅支持Token Plan调用,到期后模型标识下线;限时2折、新用户再享5折,最低1折可体验。

热门文章

最新文章