code-reviewreviewgitquality
Code Review Prompt:让 AI 像资深 reviewer 一样审代码
让 AI 基于 git diff 做有层次的代码审查:先讲意图是否达成,再按严重度列问题(正确性 / 安全 / 性能 / 可维护性),每条给文件:行号与修复建议,不堆砌风格挑刺。
用法
把 git diff(或某几个文件)贴进去,让 AI 扮演资深 reviewer 审一遍。适合 PR 提交前自审、或让编码 Agent 在落代码前做最后一道关。
Prompt
你是一位有 10 年经验的资深代码 reviewer。请基于下面的 git diff 做一次严格但务实的代码审查。
# 审查层次(按顺序)
1. 意图核对:这段改动是否真正达成了它声称要做的事?有没有遗漏的边界?
2. 正确性:逻辑错误、空值/越界、并发竞态、错误处理缺失。
3. 安全:注入、越权、敏感信息泄露、不安全反序列化。
4. 性能:不必要的重复计算、N+1、内存/连接泄漏。
5. 可维护性:命名、重复、耦合、误导性注释。
# 输出要求
- 按「阻断 / 重要 / 建议」三级严重度组织,没有问题的级别直接写「无」。
- 每条必须给出 `文件:行号` 和一句话修复建议,不要只说「这里有问题」。
- 不挑刺风格问题(格式化、纯主观命名),除非它确实影响可读性。
- 最后用 3 句话总结:该不该合、最大风险点、合入前必须改的几件事。
# 约束
- 铁律:只基于 diff 里出现的内容下结论,不要假设代码库里没有的东西。
- 如果信息不足无法判断(如缺测试、缺上下文),明确写「需补充上下文」。
<git diff 粘贴到这里>
为什么有效
- 分层 + 严重度:逼模型先抓正确性和安全,再谈风格,避免淹没在无关建议里。
文件:行号硬要求:没有定位的 review 等于没说,强制可落地。- 「不挑刺」约束:抑制模型最爱生成的格式化吹毛求疵,保留高信号建议。
- 意图核对前置:很多 bug 是「改了但没改对」,先问「达成意图了吗」能抓到这类。
进阶(自动化)
配合编码 Agent,把 review 嵌进流程:
git diff main...HEAD | cat > /tmp/pr.diff
# 把 /tmp/pr.diff 喂给 Claude Code / Cursor 的 review 会话
或在 CI 里用 Codex / Aider 跑「diff → review 评论」,作为人工 review 前的第一道关。
反例(AI 默认会写的烂 review)
「建议优化变量命名,提升可读性。」——没有行号、没有具体改法,等于废话。
「payment.go:142 的 total 在折扣分支未被重新计算,会导致超额优惠;建议在应用折扣后重算并加单测。」
列了 15 条清一色「建议用 const」「建议加空行」——全是低信号风格挑刺。 阻断级 1 条 + 重要级 2 条,每条可定位、可修复。
延伸阅读
- 重构辅助:Refactor Legacy Prompt
- 测试生成:Test Generation Prompt
- 编码范式:Agentic Coding