你有没有遇到过这种情况:让 AI Agent 帮你 review 代码,结果它给的注释要么定位错行,要么大量误报,要么碰到大 PR 就开始"偷懒"只看几个文件。
这不是模型的问题,是架构问题。
纯语言驱动的 Agent 没有硬约束,执行过程完全依赖提示词,一旦 changeset 变大或者规则变复杂,质量就开始抖。
阿里开源了他们内部跑了两年的 AI 代码审查工具 open-code-review,核心思路是把"必须做对的事"交给确定性工程,把"需要推理的事"交给 LLM Agent。这两年它在阿里内部服务了数万名开发者,识别了数百万条代码缺陷。
基础介绍
open-code-review 是阿里集团内部 AI 代码审查助手开源后的版本,CLI 工具形态,兼容 OpenAI 和 Anthropic API 端点。
它读取 Git diff,把变更文件发给 LLM Agent 做深度审查,生成精确到代码行的结构化注释。除了 diff 模式,它还支持全文件扫描(ocr scan),适合审计没有 diff 的存量代码库。
解决什么问题
用通用 AI Agent 做代码审查通常有三个痛点:
覆盖不完整 — 大 changeset 里 Agent 容易"切角",只看部分文件,漏掉重要变更。
定位漂移 — 给出的注释行号对不上,或者文件引用偏移,实际定位很难用。
质量不稳 — 提示词换一换,结果差距很大,debug 困难。
open-code-review 的解法是混合架构:
Git diff
↓
确定性层:精确文件筛选 → 文件分组 → 规则匹配
↓
LLM Agent:场景优化 Prompt + 工具集(读文件 / 搜代码库)
↓
独立定位模块 + 反思模块 → 行级注释 + 结构化 Review
"必须不出错"的步骤(文件筛选、分组、规则匹配)用工程代码保证正确性;"需要推理"的步骤(跨文件 context、深度分析)才交给 LLM。
README 里有一份 benchmark 数据,测试集是 50 个开源仓库、200 个真实 PR、10 种编程语言,由 80+ 高级工程师交叉标注出 1505 个 ground-truth 问题。对比 Claude Code 同底层模型的结果:Precision 和 F1 显著更高,token 消耗约为 1/9,速度也更快。Recall(召回率)低于通用 Agent — 官方说这是有意选择,优先精准度而非全覆盖。
内置规则集包含 NPE、线程安全、XSS、SQL 注入等常见质量和安全问题,不需要从零写规则。
接入方式
最小可跑路径:
# 安装
npm install -g @alibaba-group/open-code-review
# 配置模型端点(在项目根目录创建配置文件)
# 支持 OpenAI / Anthropic 兼容端点
# 审查最近一次 commit
ocr review --diff HEAD~1..HEAD
# 全文件扫描指定目录
ocr scan ./src
支持平台:GitHub、GitLab、本地 CLI。 支持接入的 Agent 平台:Claude Code、Cursor、Copilot 等。 配置好 API 端点后就能跑,不需要额外搭服务。
为什么值得收藏
适合这类场景:中大型团队跑 CI/CD pipeline,需要降低 PR review 噪音;或者 token 成本比较敏感,想把 AI 代码审查的 API 费用压下来。
有几点值得注意:Recall 低于通用 Agent,意味着漏检率相对高,如果你的场景是"宁可多报也不能漏",单纯用这个工具可能不够。需要自己配置 LLM API 端点,暂时没有 SaaS 版本。Go 实现,对 Go 生态熟悉的团队二次开发会更顺手。
这个工具的价值不只是"AI 帮你 review 代码",而是它把阿里两年积累的规则集和审查流程工程化地沉淀出来了,即便你只是拿来参考架构设计,也有值得借鉴的地方。
alibaba/open-code-review
阿里开源的 AI 代码审查 CLI,精准行级注释,token 消耗约为通用 Agent 的 1/9。
夜雨聆风