阿里开源的代码审查工具,结合确定性规则引擎和 LLM Agent,内置 NPE、线程安全、XSS、SQL 注入等防护,支持 OpenAI 和 Claude。
Open Code Review 是一款 AI 驱动的代码审查 CLI 工具。它源自阿里巴巴集团的内部官方 AI 代码审查助手——过去两年来,已服务数万开发者,发现数百万个代码缺陷。经过大规模验证后,我们将其孵化为开源项目回馈社区。只需配置一个模型端点就可以开始使用。
它读取 Git diff,将变更文件通过具备工具使用能力的 agent 发送给可配置的 LLM,并生成具有行级精确度的结构化审查意见。该 agent 可以读取完整文件内容、搜索代码库、检查其他变更文件以获取上下文,进行深度审查——而不仅仅是表面层的 diff 反馈。除了 diff 审查外,ocr scan 还可以审查整个文件,用于审计陌生代码库或没有有意义 diff 的目录。
访问官方网站了解更多详情。
与通用 agent(如 Claude Code)相比,Open Code Review 用相同的底层模型实现了显著更高的准确率和 F1 分数,同时仅消耗约 1/9 的 token,审查速度更快。注意其召回率低于通用 agent——这是有意的权衡,优先考虑精确度而非覆盖面。
基于 50 个热门开源仓库、200 个真实 Pull Request 和 10 种编程语言构建的实际代码审查基准——由 80+ 名资深工程师交叉验证(1,505 个标注的真值问题)。
如果你使用过 Claude Code 等通用 agent 及其代码审查 Skills,你可能遇到过这些痛点:
覆盖不完整——在较大的变更集上,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 生成、代码搜索和仓库操作。
npm install -g @alibaba-group/open-code-review
安装后,ocr 命令在全局可用。
有关其他安装方法(安装脚本、GitHub Release 二进制文件、从源代码构建),见安装。
除非使用委托模式,否则你必须在审查代码前配置一个 LLM。
ocr config provider # 选择内置提供商或添加自定义提供商
ocr config model # 为活跃提供商选择一个模型
交互式 UI 将引导你完成提供商选择、API 密钥输入和模型配置,然后自动测试连接。
有关 CLI 设置、环境变量、自定义提供商和其他高级配置,见配置。
cd your-project
# Workspace mode — review all staged, unstaged, and untracked changes
ocr review
# Branch range — compare two refs
ocr review --from main --to feature-branch
# Single commit
ocr review --commit abc123
# Resume an interrupted range or commit review
ocr session list
ocr review --from main --to feature-branch --resume <session-id>
# Full-file scan — review whole files instead of a diff (no git history needed)
ocr scan # scan the entire repository
ocr scan --path internal/agent # scan a directory or specific files
# Delegation mode — let your AI coding agent perform the review itself
# OCR handles file selection and rule resolution; no LLM configuration needed
ocr delegate preview
ocr delegate rule src/main.go src/handler.go
完整文档位于 open-codereview.ai/docs:
Quickstart——安装并运行你的第一次审查
Installation——所有平台和包管理器
CLI Reference——每条命令和标志
Review Rules——使用路径过滤和定向自定义审查规则
Configuration——配置密钥和环境变量
MCP Server——用外部工具扩展审查 agent
Coding Agent Integrations——选择你使用的平台
集成后,选择哪个 LLM 执行审查:
CI/CD 集成——GitHub Actions、GitLab CI、GitFlic CI 和 Gerrit 集成
Session Viewer——在浏览器中浏览和重放审查会话
Telemetry——OpenTelemetry 集成用于可观测性
FAQ——常见问题和故障排除
本项目的存在离不开所有贡献者。见 CONTRIBUTING.md 了解开发设置、编码指南以及如何提交 pull request。
Apache-2.0——版权所有 2026 阿里巴巴