AI 优先开发工作流
围绕 AI 重构开发循环:规格、提示、审查、发布,人类作为审查者。
工作流进阶
为什么
GitHub 2024 年对 2000 名开发者的企业调查发现 97% 在工作中用过 AI 编程工具,Stack Overflow 2024 调查显示 76% 的开发者正在或计划使用 AI 工具(上年为 70%)。AI 优先反转了传统循环:AI 编写大部分代码,人类审查 diff 而非从零编写。
这在规格清晰的工作上可提升 5-10 倍吞吐量,但前提是规格精确、审查严格,并通过类型和测试及早发现偏差。缺乏这种纪律,你会比以往更快地发布幻觉代码。
何时使用
在以下情况采用 AI 优先:开始具有明确验收标准的新模块或功能;团队有审查能力和强类型系统;工作使用 AI 熟悉的语言(TS/Python/Go)。避免用于安全关键加密、无参考实现的新颖算法,或审查者无法有效评估输出时。
如何做
1. 先写规格(验收标准 + 约束)。一句话不够。
示例:"添加 POST /api/books,用 zod 验证 {title, author},持久化到 Books 表,返回 201 和创建的行。拒绝空 title。记录失败。"
2. 用规格加相关文件引用提示 AI:
Cursor:@file src/api/router.ts @file src/data/books.ts "实现上述规格"
Claude Code:"按此规格实现 POST /api/books;遵循 src/api/ 中现有路由模式"
3. 像 PR 一样审查 diff,不是建议。检查:
- 是否满足每条验收标准?
- 是否有无法解析的导入?(幻觉包)
- 是否触及范围外文件?(git diff --stat)
4. 立即运行门禁:npm run check && npm test && npm run build
红表示拒绝并附上具体错误重新提示。不要手动修复 AI 错误。
5. 绿后才提交。使用约定式提交以便 AI 读取历史:
git commit -m "feat(api): add POST /api/books with zod validation"
6. 失败时循环:将精确的 tsc/测试错误贴回 AI 要求修复。
保持循环紧凑。三次失败意味着规格有歧义,重写它。
示例
Claude Code 中的规格驱动循环:
$ claude
> 按此规格实现限流中间件:
- 令牌桶:每 IP 100 req/min,突发 20
- 存入 Redis(key: ratelimit:{ip})
- 超限时返回 429 和 Retry-After 头
- 遵循 src/middleware/auth.ts 中现有中间件模式
每步后提交。
Claude 产生 3 个 commit:
feat(middleware): add token-bucket rate limiter
feat(redis): wire rate limiter to redis client
test(middleware): add rate limiter unit tests
门禁:npm run check && npm test -> 绿。发布。
常见问题
- ⚠Error: Cannot find module 'xxx' → 运行 `npm install xxx`(或 `pnpm add xxx`);确认已写入 package.json 依赖。
- ⚠错误:"Command not found: claude" 或 "cursor" → 确认二进制在 PATH 上:`which claude` / `which cursor`;缺失则全局重装。
- ⚠TypeError: Cannot read properties of undefined (reading 'x') → 加空值守卫或可选链 `obj?.x`;通过堆栈追溯 undefined 来源。
- ⚠手动修复 AI 错误打破循环。始终带错误重新提示,让 AI 学习代码库真实约束。
最佳实践
- ✓将规格写为验收标准(Given/When/Then),人和 AI 都可测试。
- ✓保持 AI 循环紧凑:规格、生成、门禁、提交。循环内绝不手动编辑。
- ✓维护 .cursorrules 或 CLAUDE.md,让 AI 继承项目约定而无需重复说明。
- ✓在真实 diff 查看器中审查 AI diff 且测试为绿,绝不在聊天窗审查。
- ✓追踪 AI 作者 commit 比例。超过 80% 且无审查异议意味着审查在橡皮图章。
常见问题解答
'AI 优先开发'到底是什么意思?
指 AI 从规格生成大部分代码,人类审查 diff,而非人类从零编写、AI 辅助。循环是规格、提示、审查、门禁、发布——人类作为审查者而非打字员。
什么时候不该用 AI 优先工作流?
安全关键加密、无参考实现的新颖算法、或审查者无法有效评估输出时避免使用。它在规格清晰、有类型、可测试且门禁能捕获 AI 错误的工作上表现最佳。
如何写出 AI 能遵循的规格?
写验收标准(Given/When/Then)加硬约束(不添加依赖、命名导出、遵循 X.ts 模式)。一句话不够。规格是杠杆最高的输入——模糊规格产生模糊代码。
循环中应该手动修复 AI 错误吗?
不应该。将精确的 tsc/测试错误贴回 AI 让它修。手动修复打破循环,并对 AI 隐藏代码库真实约束。三次失败意味着规格有歧义——重写它。
如何衡量 AI 优先是否有效?
追踪 AI 作者 commit 比例和审查异议率。若超 80% commit 由 AI 作者且零审查异议,审查在橡皮图章。健康采用表现为高门禁通过率加每 PR 有意义的人工修正。