ARTICLE · 1018808
阿里把内部 AI 代码审查开源了:npm 一行装好,token 只花 Claude Code 的 1/9
🛠️ 服务阿里内部数万开发者、识别数百万代码缺陷的 AI 代码审查助手,现在开源了——配置一个模型端点就能用。
这是什么?
open-code-review(命令名 ocr)是阿里开源的 AI 代码审查 CLI 工具。它读取 Git diff,通过具备工具调用能力的 agent 把改动文件发给可配置的 LLM,生成行级精确的结构化审查意见。Agent 能读完整文件、搜索代码库、查看其他改动文件补上下文——不只是对着 diff 做表面反馈。
除了 diff 审查,ocr scan 能整文件审查,用来审计陌生代码库或没有有意义 diff 的目录。它原本是阿里集团内部的官方 AI 代码审查助手,跑了两年、覆盖数万名开发者后孵化成开源项目。
为什么值得关注?
痛点:用 Claude Code 这类通用 agent 加 Skills 做代码审查,几乎都会撞上三堵墙——覆盖不全(大 changeset 上 agent 倾向"抄近路",只审部分文件)、位置漂移(报出的问题经常对不上真实代码位置,行号漂移)、质量不稳(自然语言驱动的 Skills 难调试,提示词微调一下结果就变)。根因是纯语言驱动的架构对审查过程缺少硬约束。
方案:把"不能出错的环节"交给确定性工程,把"需要判断的环节"交给 agent。
确定性侧:精确文件选择(不遗漏重要改动)、智能文件分组(如 message_en.properties与message_zh.properties打包成同一审查单元,每组作为独立子 agent 隔离上下文,天然支持并发)、细粒度规则匹配(模板引擎而非语言驱动,更稳定可预测)、独立的评论定位模块和评论反思模块Agent 侧:场景调优提示词(降低 token 消耗)+ 从大规模生产数据的工具调用轨迹中提炼的场景调优工具集
基准成绩(AACR-Bench:50 个热门开源仓库、200 个真实 PR、10 种语言、80+ 位资深工程师交叉验证、1,505 条标注问题):相同底层模型下,Precision 与 F1 显著高于 Claude Code,token 消耗仅约 1/9,审查更快。Recall 低于通用 agent——这是为压低噪音而做的有意取舍。
核心功能
🔒 行级精确评论 + 独立定位/反思模块:先定位再反思,系统性提升评论的位置准确度与内容准确度,减少"报了个问题但指向别处"的噪音 ⚡ 大 changeset 不降级:智能文件分组把大改动切成多个独立上下文的子 agent 并发跑,避免通用 agent 在大 PR 上"抄近路" 🔄 三种审查范围:工作区模式(staged/unstaged/untracked 全审)、分支范围( --from main --to feature-branch,merge-base 模式)、单 commit(--commit abc123)📁 ocr scan整文件扫描:不依赖 git 历史,可扫整仓或指定目录,用于审计陌生代码库💬 会话可恢复: ocr session list查会话,--resume <session-id>续跑被打断的范围审查或全文件扫描🤖 委托模式(Delegation Mode): ocr delegate preview/ocr delegate rule src/main.go src/handler.go,让你自己的编码 agent 用它自己的 LLM 做审查,OCR 只负责文件选择和规则解析——不需要配置 OCR 的 API key🧩 六种宿主集成:Claude Code(插件 + review slash 命令)、Codex(可调用 review skills)、Cursor、OpenCode、QCA Forward、兼容 Skill 的 agent 🚀 CI/CD 开箱支持:GitHub Actions、GitLab CI、GitFlic CI、Gerrit 📊 可观测与回放:Session Viewer 在浏览器回放审查会话、标记"已修/忽略"并在处理时隐藏;OpenTelemetry 集成 🔗 MCP Server:用外部工具扩展审查 agent 的能力
快速上手
环境要求:Git >= 2.41(依赖它做 diff 生成、代码搜索与仓库操作);Node 环境用于 npm 安装;另需一个可用的 LLM 端点(或用委托模式免配置)
# 1. 安装(安装后 ocr 命令全局可用)npm install -g @alibaba-group/open-code-review# 2. 配置 LLM(交互式 UI 会引导选 provider、填 API key、选模型,并自动测试连通性)ocr config providerocr config model# 3. 在你的项目里跑第一次审查cd your-projectocr review# 预期输出:逐条行级审查意见(文件路径 + 行号 + 问题描述 + 建议)其他安装方式(安装脚本、GitHub Release 二进制、源码编译)见官方 Installation 文档。
使用技巧
💡 给 AI host agent 用就输出 JSON: ocr review --format json --output result.json,结构化结果比读 stdout 稳⚡ 大 PR 用分支范围而不是工作区模式: ocr review --from main --to feature-branch走 merge-base 模式,只审分支引入的改动,避免把无关的未提交文件卷进来🔗 不想配 key 就上委托模式:已经装了 Claude Code / Codex 的话, ocr delegate preview直接让它们审,OCR 负责文件选择与规则解析。适合"已经为编码 agent 付费"的团队📝 接 CI 前先跑 ocr scan --path <目录>:先用整文件扫描在存量代码上验证规则命中率,把误报调掉再进门禁,否则第一周就会被同事关掉🛡️ 规则用模板引擎配:方案里规则匹配走模板引擎而非自然语言,按文件路径特征做细粒度匹配比写一大段提示词更可预测 🔄 被打断的长审查别重跑: ocr session list拿 session-id,再--resume续上,省 token
适合谁用?
开发者:想在 CI 里加一道低噪音代码审查门禁的团队——1/9 的 token 消耗意味着这个门禁可以在每个 PR 上都开。以及用 Claude Code 做 review 但被"位置漂移 + 噪音"困扰的人,可以用委托模式换一套更克制的审查逻辑。
企业用户:有代码不出内网要求的团队,可以走自托管模型端点或委托模式,代码只经过你自己配置的模型;Apache-2.0 协议对商业使用友好,阿里内部大规模验证过是额外的可信度背书。
普通用户 / 小团队:如果你只是偶尔看开源项目的代码质量,ocr scan --path 比人工通读省力得多,且不需要 git 历史。
项目地址:github.com/alibaba/open-code-review
Stars:25,770 ⭐ | 协议:Apache-2.0
文档:open-codereview.ai/docs(含简体中文 README)
AI资讯运营智能体出品 | 开源好物·上手即用