open-code-review
阿里开源的AI代码审查CLI工具,采用确定性工程+LLM Agent混合架构,能对Git diff精准定位行级问题,内置NPE、线程安全等规则集。相比通用agent,在相同模型下实现更高精确度和F1,token消耗仅约1/9,且支持分支、提交、全文件扫描等多种审查模式。已在阿里内部经数万开发者验证,开源免费且兼容OpenAI/Anthropic。
README
OpenCodeReview
English | 简体中文 | 日本語 | 한국어 | Русский
什么是 Open Code Review?
Open Code Review 是一个 AI 驱动的代码审查 CLI 工具。它最初作为阿里巴巴集团内部的官方 AI 代码审查助手——在过去两年中,它为数万名开发者提供了服务,并识别了数百万个代码缺陷。经过大规模充分验证后,我们将其孵化成一个开源项目,供社区使用。只需配置一个模型端点即可开始使用。
它会读取 Git diff(差异快照),通过一个具备工具使用能力的 agent(代理)将变更的文件发送给可配置的 LLM,并生成带有行级精度的结构化审查评论。agent 可以读取完整文件内容、搜索代码仓库、检查其他变更文件以获取上下文,从而生成深度审查——而不仅仅是表面的 diff 反馈。除了 diff 审查外,ocr scan 还可以审查整个文件,用于审计不熟悉的代码库或没有有意义 diff 的目录。
访问官方网站获取更多详情。

基准测试
与通用 agent(Claude Code)相比,在相同底层模型下,Open Code Review 实现了显著更高的 精确率 (Precision) 和 F1,同时仅消耗约 1/9 的 token,并且审查速度更快。请注意,其召回率 (Recall) 低于通用 agent——这是有意在设计上偏向于精确率而非噪声的权衡。
一个基于 50 个流行开源仓库、200 个真实 Pull Request 和 10 种编程语言构建的真实代码审查基准——由 80 多名资深工程师交叉验证(1,505 个标注的真实问题)。
| 指标 | 衡量内容 | 为何重要 |
|---|---|---|
| F1 | 精确率和召回率的调和平均值 | 衡量整体审查质量的最佳单一数值 |
| Precision | 报告问题中实际缺陷的比例 | 越高意味着需要排查的误报越少 |
| Recall | 被发现的实际缺陷比例 | 越高意味着漏掉的问题越少 |
| Avg Time | 每次审查的挂钟时间 | 影响 CI 流水线延迟 |
| Avg Token | 每次审查消耗的总 token 数 | 直接影响 API 成本 |

为什么选择 Open Code Review?
通用 Agent 的问题
如果你使用过带 Skills 的通用 agent(如 Claude Code)进行代码审查,很可能遇到过以下痛点:
- 覆盖率不完整——在较大的变更集上,agent 倾向于“偷工减料”,只选择性审查部分文件,遗漏其他文件。
- 位置漂移——报告的问题经常与实际代码位置不匹配,行号或文件引用偏离目标。
- 质量不稳定——基于自然语言驱动的 Skills 难以调试,审查质量随提示词的微小变化而显著波动。
根本原因:纯语言驱动的架构缺乏对审查过程的硬约束。
核心设计:确定性工程 × 智能体混合架构
Open Code Review 的核心思想是将确定性工程与 agent 相结合,各司其职。
确定性工程——硬约束
对于绝对不能出错的审查步骤,由工程逻辑(而非语言模型)保证正确性:
- 精确的文件选择——准确判断哪些文件需要审查、哪些应被过滤,确保不遗漏任何重要变更。
- 智能文件捆绑——将相关文件分组到单个审查单元中(例如,
message_en.properties和message_zh.properties捆绑在一起)。每个捆绑包作为一个子 agent 运行,拥有独立的上下文——这是一种分治策略,在非常大的变更集上也能保持稳定,并自然支持并发审查。 - 细粒度规则匹配——将审查规则与每个文件的特性匹配,使模型的注意力保持高度集中,从源头消除信息噪声。与纯语言驱动的规则引导相比,基于模板引擎的规则匹配更稳定、更可预测。
- 外部定位与反思模块——独立的评论定位模块和评论反思模块系统地提高了 AI 反馈的位置准确性和内容准确性。
Agent——动态决策
agent 的优势集中在最能发挥作用的地方——动态决策和动态上下文检索:
- 场景调优的提示词——针对代码审查深度优化的提示词模板,在提高效果的同时减少 token 消耗。
- 场景调优的工具集——基于对大规模生产数据中工具调用轨迹(包括调用频率分布、每个工具的重复率、新工具对整个调用链的影响)的深入分析提炼而成,形成了比通用 agent 工具集更稳定、更可预测的专用于代码审查的工具集。
如何使用
前置条件
- Git >= 2.41——Open Code Review 依赖 Git 进行 diff 生成、代码搜索和仓库操作。
CLI
安装
npm install -g @alibaba-group/open-code-review
安装后,ocr 命令在全局可用。
其他安装方式(安装脚本、GitHub Release 二进制文件、从源码构建)请参见安装文档。
快速开始
1. 配置 LLM
在审查代码之前必须配置 LLM,除非你使用委托模式。
ocr config provider # 选择内置提供商或添加自定义提供商
ocr config model # 为当前活跃的提供商选择模型

交互式 UI 会引导你完成提供商选择、API 密钥输入和模型配置,然后自动测试连接性。
对于 CLI 设置、环境变量、自定义提供商和其他高级配置,请参见配置文档。
2. 审查
cd your-project
# 工作区模式——审查所有暂存、未暂存和未跟踪的变更
ocr review
# 分支范围——比较两个 ref
ocr review --from main --to feature-branch
# 单个提交
ocr review --commit abc123
# 恢复中断的范围或提交审查
ocr session list
ocr review --from main --to feature-branch --resume <session-id>
# 全文件扫描——审查整个文件而非 diff(无需 git 历史)
ocr scan # 扫描整个仓库
ocr scan --path internal/agent # 扫描目录或特定文件
# 委托模式——让你的 AI 编码 agent 自行执行审查
# OCR 负责文件选择和规则解析;无需配置 LLM
ocr delegate preview
ocr delegate rule src/main.go src/handler.go
文档
完整文档位于 open-codereview.ai/docs:
- 快速开始 — 安装并运行你的第一次审查
- 安装 — 所有平台和包管理器
- CLI 参考 — 所有命令和参数
- 审查规则 — 使用路径过滤和定位自定义审查规则
- 配置 — 配置键和环境变量
- MCP 服务器 — 用外部工具扩展审查 agent
- 编码 Agent 集成 — 将 OCR 集成到 Claude Code、Codex、Cursor 等中
- CI/CD 集成 — GitHub Actions、GitLab CI、GitFlic CI 和 Gerrit 集成
- 会话查看器 — 在浏览器中浏览和回放审查会话
- 遥测 — OpenTelemetry 集成以实现可观测性
- 常见问题 — 常见问题与故障排除
贡献
本项目感谢所有贡献者。请参见 CONTRIBUTING.md 了解开发环境搭建、编码指南以及如何提交 Pull Request。
许可证
Apache-2.0 — 版权所有 2026 Alibaba