17c - 微任务执行与人工审查
本文是《AI Agent 实战手册》第 17 章第 3 节。 上一节:17b-15分钟瀑布规划法 | 下一节:17d-开发中的上下文工程
概述
微任务执行是 Spec-Driven Agentic Workflow 的核心执行环节——将规划阶段产出的任务列表逐个交给 AI Agent 实现,每完成一个任务都经过人工审查后再进入下一个。这种”一次一个任务”的节奏是 2025-2026 年生产级 AI 辅助开发的关键纪律。研究表明,AI 生成的代码约有 30% 更容易出现逻辑错误,因此人工审查不是可选项,而是质量保障的核心防线。本节详细讲解微任务执行模式、人工审查工作流、迭代策略,以及如何处理 AI 能力的”70/30 边界”。
1. 微任务执行模式
1.1 什么是微任务
微任务是将一个功能需求拆分为可独立实现、独立测试、独立审查的最小工作单元。每个微任务通常对应 1-2 小时的工作量,产出一个可验证的代码变更。
功能需求:"实现文件同步引擎"
❌ 作为单个任务交给 AI:
→ 生成数千行代码,质量不可控,上下文漂移严重
✅ 拆分为微任务:
Task 3.1: 实现文件哈希计算函数
Task 3.2: 实现文件差异比较模块
Task 3.3: 实现增量同步算法
Task 3.4: 实现冲突检测逻辑
Task 3.5: 实现冲突解决策略
→ 每个任务聚焦、可审查、可测试1.2 微任务的黄金标准
| 维度 | 标准 | 说明 |
|---|---|---|
| 范围 | 单一职责 | 一个任务只做一件事 |
| 时间 | 1-2 小时 | AI 生成 + 人工审查的总时间 |
| 可测试 | 有明确验收标准 | 能写出具体的测试用例 |
| 可审查 | 变更量可控 | 通常 50-200 行代码变更 |
| 独立性 | 最小依赖 | 尽量减少对未完成任务的依赖 |
| 可回滚 | 原子提交 | 一个任务对应一个 git commit |
1.3 任务执行的标准流程
每个微任务遵循严格的六步循环:
┌─────────────────────────────────────────────────────────────┐
│ 微任务执行循环(每个任务重复一次) │
├─────────────────────────────────────────────────────────────┤
│ │
│ ① 阅读任务 ② 指示 AI 执行 ③ AI 生成代码 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 读任务描述│ → │ 精确 Prompt│ → │ 代码 + 测试│ │
│ │ 读设计文档│ │ 限定范围 │ │ 文档变更 │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ ↓ │
│ ⑥ 标记完成 ⑤ 运行测试 ④ 人工审查 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ git commit│ ← │ 单元测试 │ ← │ 逐行审查 │ │
│ │ 进入下一个│ │ 集成测试 │ │ 安全/性能 │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ 如果审查不通过 → 回到 ② 让 AI 修正 → 再次审查(最多 2-3 轮) │
└─────────────────────────────────────────────────────────────┘工具推荐
| 工具 | 用途 | 价格 | 适用场景 |
|---|---|---|---|
| Kiro | Spec-Driven 任务执行 | 免费(预览期) | 内置 spec 工作流,自动关联任务与代码 |
| Claude Code (CLI) | 终端 AI Agent | $20/月(Claude Pro) | 精确的任务执行,Plan Mode 分析 |
| Cursor | AI-First 编辑器 | $20/月 | 强大的上下文管理,Composer 多文件编辑 |
| GitHub Copilot | 内联补全 + Agent | $10/月 | 深度 GitHub 集成,Copilot Workspace |
| Windsurf | AI 编辑器 | $15/月 | Cascade 多步骤 Agent |
| Augment Code | 代码库感知 AI | $30/月 | 大型代码库的上下文理解 |
| Traycer | Spec 验证工具 | 免费(Beta) | 自动验证代码是否符合 Spec |
操作步骤
步骤 1:阅读任务和设计文档
在执行任何任务之前,确保你理解:
- 任务的具体要求(tasks.md 中的描述)
- 相关的技术设计(design.md 中的对应部分)
- 验收标准(requirements.md 中的 Acceptance Criteria)
- 与其他任务的依赖关系
# 在 Kiro 中:
# 打开 Spec 面板,点击要执行的任务
# Kiro 自动加载相关的 requirements 和 design 上下文
# 在 Claude Code 中:
$ claude "请阅读 SPEC.md 中 Task 3.1 的描述和相关设计,
告诉我你理解的实现要求和验收标准"步骤 2:精确指示 AI 执行
关键原则——限定范围,明确边界:
# ❌ 错误的指示(范围太大)
"请实现整个同步引擎"
# ❌ 错误的指示(太模糊)
"帮我写个文件处理的功能"
# ✅ 正确的指示(精确、有边界)
"请执行 Task 3.1:实现文件哈希计算函数。
参考 design.md 中第 3 节的哈希算法设计。
要求:
- 使用 SHA-256 算法
- 支持大文件流式计算(不一次性读入内存)
- 包含单元测试
- 只实现这一个任务,不要做其他任务"提示词模板
请执行 Task [任务编号]:[任务标题]。
参考文档:
- design.md 中的 [相关章节]
- requirements.md 中的验收标准 [AC 编号]
具体要求:
1. [要求 1]
2. [要求 2]
3. [要求 3]
约束:
- 只实现这一个任务,不要修改其他模块
- 遵循项目的编码规范(参考 steering 文件)
- 包含单元测试,覆盖正常路径和边界情况
- 代码变更控制在 [N] 行以内
完成后请列出:
1. 修改了哪些文件
2. 新增了哪些函数/模块
3. 测试覆盖了哪些场景2. 人工审查工作流
2.1 为什么人工审查不可跳过
2026 年的研究数据清楚地表明了人工审查的必要性:
- 超过 60% 的企业代码提交现在包含 AI 生成的内容
- AI 生成的代码约有 30% 更容易出现逻辑错误
- 一项 METR 研究发现,使用 AI 工具的资深开发者实际完成任务的时间反而多了 19%,但他们自认为快了 20%——这种认知偏差正是审查的意义所在
人工审查的核心价值不是”检查 AI 有没有犯错”,而是确保你理解每一行进入代码库的代码。
2.2 审查清单(Review Checklist)
每次 AI 生成代码后,按以下清单逐项检查:
┌─────────────────────────────────────────────────────────┐
│ 人工审查清单 v2.0 │
├─────────────────────────────────────────────────────────┤
│ │
│ □ 1. 设计合规性 │
│ - 代码是否符合 design.md 中的架构设计? │
│ - 是否遵循了约定的设计模式? │
│ - 接口定义是否与设计文档一致? │
│ │
│ □ 2. 安全性 │
│ - 是否有 SQL 注入、XSS、CSRF 风险? │
│ - 密钥/凭证是否硬编码? │
│ - 输入验证是否充分? │
│ - 权限检查是否到位? │
│ │
│ □ 3. 性能 │
│ - 是否有 N+1 查询问题? │
│ - 是否有不必要的内存分配? │
│ - 算法复杂度是否合理? │
│ - 是否有潜在的阻塞操作? │
│ │
│ □ 4. 测试覆盖 │
│ - 是否覆盖了验收标准中的所有场景? │
│ - 边界条件是否测试? │
│ - 错误路径是否测试? │
│ - 测试是否真正验证了行为(而非实现细节)? │
│ │
│ □ 5. 依赖管理 │
│ - 是否引入了不必要的新依赖? │
│ - 新依赖是否活跃维护?是否有已知漏洞? │
│ - 依赖版本是否锁定? │
│ │
│ □ 6. 可读性与可维护性 │
│ - 命名是否清晰、一致? │
│ - 是否有充分的注释(特别是"为什么"而非"做什么")? │
│ - 代码结构是否符合项目约定? │
│ - 是否有重复代码可以提取? │
│ │
│ □ 7. 范围控制 │
│ - AI 是否只修改了任务要求的部分? │
│ - 是否有"顺手"做的额外改动? │
│ - 是否修改了不应该修改的文件? │
│ │
└─────────────────────────────────────────────────────────┘2.3 AI 辅助代码审查工具
除了人工审查,还可以用 AI 工具作为”第二双眼睛”辅助审查:
| 工具 | 审查方式 | 价格 | 特点 |
|---|---|---|---|
| CodeRabbit | PR 级自动审查 | 免费(开源)/ $15/用户/月(Pro) | 上下文感知,支持 GitHub/GitLab/Azure DevOps |
| Qodo Merge | RAG 增强审查 | 免费(开源)/ $19/用户/月(Teams) | 超越 PR 范围,理解整个代码库上下文 |
| Greptile | 全代码库审查 | 联系销售 | 分析整个代码库而非仅 PR 变更 |
| GitHub Copilot Code Review | PR 审查 | 包含在 Copilot 订阅中 | 深度 GitHub 集成 |
| SonarQube + MCP | 自主审查循环 | 社区版免费 / 企业版联系销售 | 与 Claude Code 集成,自动修复直到质量门通过 |
| Cursor Bugbot | 仓库级审查 | 包含在 Cursor 订阅中 | 检测逻辑 Bug,不仅是风格问题 |
| CodeAnt AI | 静态分析 + AI | 免费(开源)/ $8/用户/月 | 自动修复,支持 30+ 语言 |
2.4 审查的实际操作流程
# 步骤 1:查看 AI 的所有改动
git diff --stat # 概览改了哪些文件
git diff # 逐行查看变更
# 步骤 2:确认范围
# 检查是否只修改了任务要求的文件
# 如果 AI "顺手"改了其他文件,考虑是否需要回退
# 步骤 3:逐文件审查
git diff -- src/sync_engine.rs # 审查核心逻辑
git diff -- tests/ # 审查测试
# 步骤 4:运行测试
cargo test # Rust 项目
npm test # Node.js 项目
pytest # Python 项目
# 步骤 5:确认后提交
git add -p # 交互式暂存,逐块确认
git commit -m "feat: Task 3.1 - 实现文件哈希计算函数
- 使用 SHA-256 流式计算
- 支持大文件(>4GB)
- 包含 8 个单元测试
Refs: Task 3.1, AC 5.1"提示词模板
用 AI 辅助审查自己生成的代码(“自审”模式):
请审查你刚才为 Task [编号] 生成的代码,重点检查:
1. 安全性:是否有注入、泄露、权限绕过风险?
2. 边界情况:空输入、超大输入、并发访问是否处理?
3. 错误处理:是否所有错误路径都有合理处理?
4. 性能:是否有 O(n²) 或更差的算法?是否有不必要的内存拷贝?
5. 一致性:是否与项目现有代码风格一致?
对于每个发现的问题,请说明:
- 问题描述
- 严重程度(高/中/低)
- 建议的修复方案3. 迭代策略
3.1 审查-修正循环
当审查发现问题时,进入修正循环。关键原则:最多 2-3 轮修正,超过则需要重新思考方案。
┌──────────────────────────────────────────────────┐
│ 审查-修正循环 │
├──────────────────────────────────────────────────┤
│ │
│ 第 1 轮:AI 生成 → 人工审查 │
│ ├── 通过 → 提交,进入下一个任务 │
│ └── 不通过 → 记录问题,进入第 2 轮 │
│ │
│ 第 2 轮:AI 修正 → 人工审查 │
│ ├── 通过 → 提交 │
│ └── 不通过 → 进入第 3 轮 │
│ │
│ 第 3 轮:AI 修正 → 人工审查 │
│ ├── 通过 → 提交 │
│ └── 不通过 → ⚠️ 停止!需要人工介入 │
│ ├── 重新审视任务拆分是否合理 │
│ ├── 检查设计文档是否有歧义 │
│ ├── 考虑手动实现关键部分 │
│ └── 或者拆分为更小的子任务 │
│ │
└──────────────────────────────────────────────────┘3.2 修正指示的最佳实践
# ❌ 模糊的修正指示
"这个有 bug,修一下"
# ✅ 精确的修正指示
"Task 3.1 的代码有以下问题需要修正:
1. [高] sync_engine.rs 第 45 行:当文件大小为 0 时,
hash_file() 返回空字符串而非零字节的 SHA-256 哈希值。
修正:对空文件也应计算正确的哈希值。
2. [中] sync_engine.rs 第 78 行:缓冲区大小硬编码为 4096,
对于大文件效率低。
修正:使用 64KB 缓冲区,或从配置读取。
3. [低] 测试文件缺少对符号链接文件的测试。
修正:添加一个测试用例验证符号链接的处理。
请只修正以上问题,不要改动其他代码。"3.3 Git 工作流集成
微任务执行与 Git 工作流的最佳集成方式:
方式 A:主分支直接提交(个人项目/小团队)
─────────────────────────────────────────
main: ──●──●──●──●──●──●──
T1 T2 T3 T4 T5 T6
每个任务一个 commit
方式 B:功能分支 + PR(团队协作)
─────────────────────────────────────────
main: ──────────────●──────────────●──
↑ ↑
feature/sync: ──●──●──●┘ │
T1 T2 T3 │
feature/ui: ──────●──●──●──●──────┘
T4 T5 T6 T7
方式 C:Git Worktrees 并行开发(高级)
─────────────────────────────────────────
worktree-1/: AI 执行 Task A(独立目录)
worktree-2/: AI 执行 Task B(独立目录)
worktree-3/: 人工审查和修正(独立目录)
→ 三个目录共享同一个 .git,互不干扰Git Worktrees 并行模式详解
Git Worktrees 是 2025-2026 年 AI 辅助开发中的高效模式,允许多个 AI Agent 在隔离环境中并行工作:
# 创建 worktree 用于并行 AI 任务
git worktree add ../project-task-a feature/task-a
git worktree add ../project-task-b feature/task-b
# 在 worktree-a 中让 AI 执行 Task A
cd ../project-task-a
claude "执行 Task 3.1:文件哈希计算"
# 同时在 worktree-b 中让另一个 AI 执行 Task B
cd ../project-task-b
claude "执行 Task 3.2:文件差异比较"
# 在主目录中审查两个任务的结果
cd ../project
git diff main..feature/task-a
git diff main..feature/task-b
# 审查通过后合并
git merge feature/task-a
git merge feature/task-b
# 清理 worktree
git worktree remove ../project-task-a
git worktree remove ../project-task-b4. “70/30 问题”与人机协作边界
4.1 理解 70/30 分界线
AI 能高效处理约 70% 的编码工作,但剩余 30% 需要人类的专业判断。理解这条分界线是高效协作的关键。
┌─────────────────────────────────────────────────────────┐
│ 70/30 人机协作边界 │
├──────────────────────┬──────────────────────────────────┤
│ AI 擅长(~70%) │ 人类必须介入(~30%) │
├──────────────────────┼──────────────────────────────────┤
│ 样板代码 │ 架构决策 │
│ (CRUD, DTO, Schema) │ (选择哪种方案、权衡取舍) │
├──────────────────────┼──────────────────────────────────┤
│ 标准模式实现 │ 边缘场景处理 │
│ (认证、分页、缓存) │ (AI 容易遗漏的极端情况) │
├──────────────────────┼──────────────────────────────────┤
│ 测试用例生成 │ 性能优化 │
│ (单元测试、集成测试) │ (需要 profiling 和实测数据) │
├──────────────────────┼──────────────────────────────────┤
│ 文档生成 │ 安全审查 │
│ (API 文档、README) │ (AI 可能引入隐蔽漏洞) │
├──────────────────────┼──────────────────────────────────┤
│ 代码重构 │ 用户体验细节 │
│ (提取函数、重命名) │ (微交互、动画、手感) │
├──────────────────────┼──────────────────────────────────┤
│ 数据转换 │ 业务规则验证 │
│ (格式转换、序列化) │ (领域专家才能判断的逻辑) │
├──────────────────────┼──────────────────────────────────┤
│ 配置文件生成 │ 第三方集成调试 │
│ (CI/CD, Docker) │ (API 行为与文档不符时) │
└──────────────────────┴──────────────────────────────────┘4.2 识别”30% 区域”的信号
当遇到以下情况时,说明你进入了需要人类专业判断的”30% 区域”:
- AI 反复修改但问题不收敛 — 同一个问题修了 3 轮还没解决
- AI 给出多个方案但无法决策 — 需要权衡业务需求和技术约束
- 涉及外部系统的真实行为 — API 的实际响应与文档描述不一致
- 性能要求有具体数字 — “响应时间 < 100ms”需要实测验证
- 安全相关的关键路径 — 认证、授权、加密、数据脱敏
- 用户可感知的交互细节 — 动画时长、加载状态、错误提示文案
4.3 处理策略
当识别到"30% 区域"时:
策略 1:人工接管关键部分
─────────────────────────
让 AI 生成框架代码,人工填充关键逻辑。
例如:AI 生成认证中间件的结构,人工编写 token 验证逻辑。
策略 2:AI 生成 + 人工精调
─────────────────────────
让 AI 生成初版,人工基于实测数据调整。
例如:AI 生成缓存策略,人工根据 profiling 结果调整 TTL 和淘汰策略。
策略 3:人工设计 + AI 实现
─────────────────────────
人工做出关键决策并写入设计文档,AI 按设计实现。
例如:人工决定使用乐观锁处理并发,AI 实现具体的锁机制。
策略 4:拆分为更小的任务
─────────────────────────
将复杂任务拆分,让 AI 处理确定性部分,人工处理判断性部分。
例如:将"实现支付流程"拆分为"生成支付表单"(AI)和"实现风控规则"(人工)。5. 高级执行模式
5.1 SonarQube + AI Agent 自主审查循环
2025-2026 年出现的一种高级模式:将静态分析工具与 AI Agent 通过 MCP 连接,形成自主审查循环。
┌──────────────────────────────────────────────────┐
│ SonarQube + Claude Code 自主审查循环 │
├──────────────────────────────────────────────────┤
│ │
│ ① AI Agent 生成代码 │
│ ↓ │
│ ② 触发 SonarQube 扫描 │
│ ↓ │
│ ③ AI Agent 通过 MCP 获取扫描结果 │
│ ↓ │
│ ④ 质量门通过? │
│ ├── 是 → 提交代码 │
│ └── 否 → AI Agent 自动修复 → 回到 ② │
│ │
│ 人工审查点:质量门通过后,人工做最终确认 │
│ │
└──────────────────────────────────────────────────┘5.2 多 Agent 并行执行模式
对于独立性强的任务,可以使用多个 AI Agent 并行执行:
┌─────────────────────────────────────────────────────┐
│ 多 Agent 并行执行 │
├─────────────────────────────────────────────────────┤
│ │
│ Agent 1 (Worktree A) Agent 2 (Worktree B) │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ Task 3.1 │ │ Task 3.2 │ │
│ │ 文件哈希计算 │ │ 文件差异比较 │ │
│ └──────┬───────┘ └──────┬───────┘ │
│ ↓ ↓ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 人工审查 3.1 │ │ 人工审查 3.2 │ │
│ └──────┬───────┘ └──────┬───────┘ │
│ ↓ ↓ │
│ ┌──────────────────────────────────────┐ │
│ │ 合并到主分支 │ │
│ │ 解决可能的合并冲突 │ │
│ └──────────────────────────────────────┘ │
│ ↓ │
│ ┌──────────────────────────────────────┐ │
│ │ Agent 3: Task 3.3(依赖 3.1 + 3.2) │ │
│ └──────────────────────────────────────┘ │
│ │
│ 注意:有依赖关系的任务必须串行执行 │
│ │
└─────────────────────────────────────────────────────┘5.3 “人类引导,Agent 执行”模式
这是 2026 年最成熟的协作模式,核心理念来自 OpenAI 与 Harness 的实践——“人类掌舵,Agent 执行”:
开发者的角色转变:
─────────────────
从:逐行编写代码的"程序员"
到:指导 AI Agent 的"技术总监"
日常工作模式:
─────────────────
上午:
1. 审查昨天 AI 生成的代码(30 分钟)
2. 规划今天的任务(15 分钟)
3. 启动 AI 执行第一批任务
中午:
4. 审查上午的产出
5. 处理"30% 区域"的问题
6. 启动下午的任务
下午:
7. 审查并合并代码
8. 处理集成问题
9. 规划明天的任务实战案例:用微任务模式开发文件同步模块
背景
开发一个文件同步工具的核心同步引擎,需要实现文件监控、差异计算、增量同步和冲突处理。以下展示完整的微任务执行过程。
任务列表(来自 tasks.md)
- [ ] 3. 同步引擎核心
- [ ] 3.1 实现文件哈希计算函数
- [ ] 3.2 实现文件差异比较模块
- [ ] 3.3 实现增量同步算法
- [ ] 3.4 实现冲突检测逻辑
- [ ] 3.5 实现冲突解决策略Task 3.1 执行过程
第 1 步:给 AI 的指示
请执行 Task 3.1:实现文件哈希计算函数。
参考 design.md 第 3.1 节:
- 使用 SHA-256 算法
- 支持流式计算(文件可能 > 4GB)
- 返回十六进制字符串
验收标准:
- AC 5.1: 对相同文件内容始终返回相同哈希值
- AC 5.2: 对不同文件内容返回不同哈希值
- AC 5.3: 支持空文件
只实现这一个函数,不要实现差异比较或同步逻辑。第 2 步:AI 生成代码后的审查
审查发现:
✅ 算法正确,使用了 SHA-256
✅ 流式读取,64KB 缓冲区
✅ 包含 5 个单元测试
⚠️ 问题 1:缓冲区大小硬编码,建议改为可配置
⚠️ 问题 2:缺少对符号链接的处理
❌ 问题 3:错误处理使用了 unwrap(),不符合项目规范第 3 步:修正指示
Task 3.1 审查发现 3 个问题,请修正:
1. [低] 缓冲区大小硬编码为 65536
→ 改为从常量定义,方便后续调整
2. [中] 未处理符号链接文件
→ 添加对符号链接的处理:跟随链接计算目标文件的哈希
3. [高] 第 23 行和第 45 行使用了 unwrap()
→ 改为 ? 操作符,返回 Result<String, SyncError>
→ 参考项目的错误处理规范(steering 文件)
只修正以上问题,不要改动其他代码。第 4 步:修正后再次审查
✅ 所有问题已修正
✅ 测试全部通过(7 个测试)
✅ clippy 无警告
→ 提交并标记 Task 3.1 完成第 5 步:Git 提交
git add src/hash.rs tests/hash_test.rs
git commit -m "feat(sync): Task 3.1 - 实现文件哈希计算函数
- SHA-256 流式计算,支持大文件
- 处理符号链接(跟随链接)
- 处理空文件
- 7 个单元测试覆盖正常路径和边界情况
Refs: Task 3.1, AC 5.1, AC 5.2, AC 5.3"案例分析
这个案例展示了微任务执行的几个关键点:
- 精确的任务边界:只实现哈希计算,不涉及差异比较
- 审查发现真实问题:
unwrap()的使用是 AI 常犯的错误 - 修正指示具体明确:指出行号、严重程度、期望的修正方式
- 2 轮内收敛:第 1 轮生成 + 第 2 轮修正 = 完成
- 原子提交:一个任务对应一个有意义的 commit
避坑指南
❌ 常见错误
-
一次给 AI 太多任务
- 问题:AI 的上下文窗口有限,任务越大,后半部分的质量越差。上下文漂移导致 AI 忘记初始约束,生成不一致的代码
- 正确做法:严格遵循”一次一个任务”原则,每个任务 50-200 行代码变更
-
跳过人工审查直接提交
- 问题:AI 生成的代码可能包含隐蔽的逻辑错误、安全漏洞或不必要的依赖。研究表明 AI 代码的逻辑错误率比人工代码高约 30%
- 正确做法:每次都用审查清单逐项检查,特别关注安全性和边界情况
-
审查时只看”能不能跑”
- 问题:代码能运行不等于代码正确。AI 可能用错误的方式实现了看起来正确的结果
- 正确做法:审查设计合规性、安全性、性能、可维护性,而不仅仅是功能正确性
-
修正指示太模糊
- 问题:“这个有问题,修一下”会导致 AI 猜测你的意图,可能引入新问题
- 正确做法:指出具体的文件、行号、问题描述和期望的修正方式
-
无限修正循环
- 问题:反复让 AI 修改同一段代码,每次修正引入新问题,陷入死循环
- 正确做法:最多 2-3 轮修正。如果问题不收敛,停下来重新审视任务拆分或手动介入
-
不用 git 追踪 AI 的改动
- 问题:无法回溯 AI 做了什么改动,出问题时难以定位
- 正确做法:每个任务一个 commit,使用
git add -p交互式暂存,确认每个变更块
-
信任 AI 推荐的依赖库
- 问题:AI 可能推荐不存在的库(幻觉)、已废弃的库、或有已知安全漏洞的版本
- 正确做法:手动验证每个新依赖的存在性、活跃度和安全性
-
忽略 AI 的”顺手改动”
- 问题:AI 在执行任务时可能”顺手”重构了不相关的代码,引入意外的行为变更
- 正确做法:用
git diff --stat检查改动范围,对超出任务范围的改动要求回退
✅ 最佳实践
- Spec 是 source of truth — 代码是 Spec 的实现,不是反过来。当代码与 Spec 冲突时,以 Spec 为准
- 一次一个任务,完成后再进入下一个 — 这是最重要的纪律,没有例外
- 每个任务都要有测试 — 没有测试的任务不算完成
- 用
git diff审查所有改动 — 不要只看 AI 说它改了什么,要看它实际改了什么 - 保持 commit 的原子性 — 一个任务一个 commit,commit message 引用任务编号
- 记录审查中发现的模式 — 如果 AI 反复犯同一类错误,将其加入 Steering 规则
- 定期回顾 70/30 边界 — 随着项目推进,AI 擅长和不擅长的部分会变化
- 用 AI 辅助审查,但不替代人工审查 — AI 审查工具是”第二双眼睛”,不是唯一的眼睛
相关资源与延伸阅读
- Kiro — Spec-Driven Agentic IDE — 内置 spec 工作流的 AI IDE,自动关联任务与代码执行
- Claude Code 文档 — Claude Code CLI 的官方文档,包含 Plan Mode 和任务执行的详细指南
- Qodo — AI 代码审查最佳实践 — 2026 年 AI 代码审查工具的深度对比和选择指南
- SonarQube + Claude Code MCP 集成 — 构建自主代码审查循环的实战教程
- Git Worktrees 并行 AI 开发指南 — 使用 Git Worktrees 实现多 Agent 并行开发的策略
- Spec-Driven Development 实践 — 为什么 Spec-Driven 是 AI 辅助开发的未来
- CodeRabbit — AI 代码审查 — 开源的 PR 级 AI 代码审查工具
- Harness + OpenAI Codex 工程实践 — “人类掌舵,Agent 执行”模式的企业级实践案例
- Augment Code — 代码库感知 AI — 大型代码库的上下文理解和 AI 辅助开发
- Traycer — Spec 验证工具 — 自动验证代码变更是否符合 Spec 的工具
参考来源
- Vibe Coding, AI Code Review, and the Trust Gap in AI Code (2026 年 6 月)
- Why Spec-Driven Development is the Future of AI-Assisted Software Engineering (2026 年 6 月)
- How Spec-Driven Development at AWS Turned Two Weeks Into Two Days (2026 年 6 月)
- Top 7 AI Code Review Tools for DevOps Teams in 2026 (2026 年 6 月)
- Claude Code + SonarQube MCP: Building an Autonomous Code Review Workflow (2026 年 6 月)
- Harness Engineering: Leveraging Codex in an Agent-First World (2026 年 6 月)
- Augmenting Your Dev Org with Agentic Teams (2026 年 6 月)
- Parallel AI Development with Git Worktrees (2025 年 7 月)
- AI-Assisted Development in 2026: Best Practices, Risks, and the Evolution of Engineering (2026 年 2 月)
- The Uncomfortable Truth About Vibe Coding (2026 年 2 月)
Content was rephrased for compliance with licensing restrictions.
📖 返回 总览与导航 | 上一节:17b-15分钟瀑布规划法 | 下一节:17d-开发中的上下文工程