Skip to content

AI Code Review ​

工具页:复制 Prompt → 只 Review Diff → 人做最终判断。AI 初检 ≠ 最终 Review。

什么时候用? ​

AI 完成代码修改后(以及 PR 前自查、修 Bug / 重构后查副作用)。

目标 ​

在合并前拿到:分级问题清单 → 人工确认 → 最小修复 → 二次 Review → 测试验收。

最短路径 ​

text
AI 生成
  → AI Review(复制下方 Prompt,不改代码)
  → 人工检查(真问题 / 误报 / 可忽略)
  → 修复
  → 再次 Review
  → 测试
  → 验收

核心原则:

让 AI 扩大检查范围,人负责最终判断。不是所有 AI 建议都必须改。

可直接跳到:可复制 Review Prompt


什么时候使用(补充) ​

适合:

  • AI 生成代码后
  • 功能开发完成后
  • 提交 PR 前自查
  • Bug 修复后查副作用
  • 重构后检查行为是否被破坏
  • 人工 Review 前做第一轮扫描

不适合:

  • 一上来 Review 整个仓库
  • 把 AI 结论直接当合并条件
  • 用 Review 当借口做无关大重构

Review 流程(完整版) ​

与上方「最短路径」同一闭环,展开为:

text
Diff
  → AI 初检(只找问题,不改代码)
  → 人工判断(真问题 / 误报 / 可忽略)
  → 问题分级(P0~P3)
  → 修复(确认后再改)
  → 测试 / 运行验证
  → 二次 Review(再看 Diff)
  → 验收

更细的防误报与修复 Prompt 见下文「验证」与「修复」两节。


Review 检查维度 ​

扫描项即可,不必每项写长文。不确定标「需要确认」。

维度看什么
正确性业务逻辑是否按需求实现
边界条件空值、极值、空集合、非法输入
异常处理失败路径、错误码、是否吞异常
数据一致性事务、多表写入、状态机
并发竞态、重复提交、锁范围(若相关)
安全权限、注入、敏感信息、越权
性能明显 N+1、无界查询、热路径浪费
可维护性重复、命名混乱、无关大改
兼容性是否破坏已有接口 / 数据 / 调用方
测试关键路径有无覆盖或验收步骤

核心问题始终是:

这次修改有没有引入问题?


问题分级 ​

级别含义怎么处理
P0严重:功能错误、数据损坏、安全漏洞必须立即处理,不修不合并
P1高风险:易在边界/并发下出错本次尽量修;否则有明确风险说明
P2一般:稳定性 / 可维护性问题评估后决定本次或后续
P3优化建议可选;不为「看起来更好」硬改

明确:

  • AI 列出来的不一定是真问题
  • P3 多数可以不改
  • 风格偏好 ≠ 缺陷

使用前准备 ​

尽量提供:

  • Git Diff(优先)
  • 相关调用链 / 业务代码
  • 接口与表结构(若涉及)
  • 已知业务规则
  • 相关测试或验收步骤
  • 报错 / 现象(若有)

只丢孤立片段 → 结果只能当参考。


可复制:Review Prompt ​

直接复制。要求:只 Review 当前 Diff,不许改代码。

text
你现在作为我的 Code Reviewer。

请对下面「代码变更」做一次问题优先的 Code Review。

## 硬性约束

- 只 Review 本次 Diff / 我提供的变更,不要扩散到整仓无关代码
- 不要修改任何代码
- 不要为了「看起来更好」建议无意义重构
- 不要仅因代码风格不同提问题
- 不确定的问题明确标「需要确认」
- 不要假设不存在的业务规则
- 没有明显问题就直接说没有,不要硬凑

## 检查维度(扫描项)

正确性、边界条件、异常处理、数据一致性、并发、安全、性能、
可维护性、兼容性、测试遗漏、是否影响已有功能。

## 输出格式

先列问题,再解释。每个问题必须包含:

- 级别:P0 / P1 / P2 / P3
- 类型:真实问题 / 需要确认 / 优化建议
- 文件 / 位置
- 问题是什么
- 为什么可能存在
- 可能影响
- 建议(最小改动)

分组输出:

### P0 / P1
### P2
### P3
### 已检查但未发现问题的方面
### Review 结论
- 是否建议合并:是 / 否 / 需要确认
- 最重要的 1~3 个问题
- 还需要我人工确认什么

下面是本次代码变更:

[粘贴 Git Diff / 代码]

人工最终检查 ​

AI 初检之后,开发者必须自己回答:

  • 是不是真问题?
  • 要不要改?现在改还是以后改?
  • 是否影响真实业务 / 数据 / 权限?
  • 要不要补测试或手工验收?
  • 修复会不会扩大修改范围?

AI 初检 ≠ 最终 Review。业务正确性与合并责任在人。


验证问题(防误报) ​

AI 指出问题后,先验证,再动手:

text
你刚才指出了这个问题:

[粘贴问题]

现在不要修改代码。

请重新检查相关调用链、业务逻辑和上下文,判断这个问题是否真实存在。

请给出:
1. 问题是否真实存在
2. 判断依据
3. 如果是误报,为什么
4. 如果是真问题,最小修改方案
5. 修改后可能产生的副作用

不要为了证明之前的结论而强行支持它。

修复与二次 Review ​

确认真问题后:

text
请只修复已经确认的问题:

[问题列表,含级别]

要求:
1. 只进行必要修改
2. 不改变未确认的业务逻辑
3. 不进行无关重构
4. 不修改无关文件
5. 保持现有代码风格
6. 补充必要测试或说明如何验收
7. 修改前先给方案,我确认后再执行
8. 完成后说明改了什么、可能副作用

然后:

text
修复
  → 跑测试 / 手工验收
  → 再对「新 Diff」做一次 Review(可复用上面 Prompt)
  → 人验收通过再合并

Cursor / Agent 建议:分析与修改拆开;先只分析当前 Diff,确认后再逐个修。


完整闭环(可背) ​

text
Diff → AI 初检 → 人工判断 → 分级
  → 修复 → 测试 → 二次 Review → 验收

相关:


我的判断 ​

AI Code Review 最适合:

第一轮广泛扫描,而不是最终质量保证。

它提高发现问题的概率;业务正确性与最终责任仍由人承担。