Open Code Review – 一款 AI 驱动的代码审查 CLI 工具
开源 AI 代码审查代理。English | 简体中文
什么是 Open Code Review?
Open Code Review 是一款 AI 驱动的代码审查 CLI 工具。它最初是阿里巴巴集团内部的官方 AI 代码审查助手——在过去两年中,它为数万名开发者提供服务,并识别了数百万个代码缺陷。经过大规模场景的充分验证后,我们将其孵化成一个面向社区的开源项目。
只需配置一个模型端点即可开始使用。它会读取 Git diff,通过一个具备工具调用能力的代理将变更文件发送给可配置的 LLM,并生成具有行级精度的结构化审查意见。该代理可以读取完整文件内容、搜索代码库、检查其他变更文件以获取上下文,从而产生深度审查——而不仅仅是表面层的 diff 反馈。
为什么选择 Open Code Review?
通用型代理的问题
如果你曾使用过像 Claude Code 这样的通用型代理配合 Skills 进行代码审查,很可能遇到过以下痛点:
- 覆盖不完整——在较大的变更集上,代理倾向于“偷工减料”,只选择性地审查部分文件而遗漏其他文件。
- 位置漂移——报告的问题经常与实际代码位置不匹配,行号或文件引用偏离目标。
- 质量不稳定——自然语言驱动的 Skills 难以调试,审查质量会因提示词的微小变化而显著波动。
根本原因在于:纯语言驱动的架构缺乏对审查过程的硬性约束。
核心设计:确定性工程 × 代理混合架构
Open Code Review 的核心理念是将确定性工程与代理相结合,各自发挥其最擅长的部分。
确定性工程——硬性约束
对于绝不可出错的审查步骤,由工程逻辑(而非语言模型)来保证正确性:
- 精确的文件选择——准确判断哪些文件需要审查、哪些应被过滤,确保不遗漏任何重要变更。
- 智能文件打包——将相关文件组合成一个审查单元(例如,
message_en.properties和message_zh.properties会被打包在一起)。每个单元作为一个子代理运行,拥有独立的上下文——这是一种分而治之的策略,在非常大的变更集上也能保持稳定,并天然支持并发审查。 - 细粒度规则匹配——将审查规则与每个文件的特性相匹配,使模型的注意力高度集中,从源头消除信息噪声。与纯语言驱动的规则引导相比,基于模板引擎的规则匹配更加稳定和可预测。
- 外部定位与反思模块——独立的评论定位和评论反思模块,系统性地提升了 AI 反馈的位置准确性和内容准确性。
代理——动态决策
代理的优势集中在最关键的领域——动态决策和动态上下文检索:
- 场景调优的提示词——为代码审查深度优化的提示词模板,在提升效果的同时减少 token 消耗。
- 场景调优的工具集——基于对大规模生产数据中工具调用轨迹的深入分析(包括调用频率分布、每个工具的重复率以及新工具对整个调用链的影响)提炼而成,从而形成一个专为代码审查设计的工具集,比通用代理工具包更加稳定和可预测。
如何使用 CLI
通过 NPM 安装(推荐)
npm install -g @alibaba-group/open-code-review
安装后,ocr 命令即可全局使用。
从 GitHub Release 安装
从 [GitHub Releases](https://github.com/alibaba/open-code-review/releases) 下载最新的二进制文件:
# macOS (Apple Silicon)
curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-darwin-arm64
chmod +x ocr && sudo mv ocr /usr/local/bin/ocr
# macOS (Intel)
curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-darwin-amd64
chmod +x ocr && sudo mv ocr /usr/local/bin/ocr
# Linux (x86_64)
curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-linux-amd64
chmod +x ocr && sudo mv ocr /usr/local/bin/ocr
# Linux (ARM64)
curl -Lo ocr https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-linux-arm64
chmod +x ocr && sudo mv ocr /usr/local/bin/ocr
# Windows (x86_64) — 将 ocr.exe 移动到 PATH 中的某个目录
curl -Lo ocr.exe https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-windows-amd64.exe
# Windows (ARM64) — 将 ocr.exe 移动到 PATH 中的某个目录
curl -Lo ocr.exe https://github.com/alibaba/open-code-review/releases/latest/download/opencodereview-windows-arm64.exe
从源码安装
git clone https://github.com/alibaba/open-code-review.git
cd open-code-review
make build
sudo cp dist/opencodereview /usr/local/bin/ocr
快速开始
1. 配置 LLM
在审查代码之前,你必须配置一个 LLM。
# 选项 A:交互式配置
ocr config set llm.url https://api.anthropic.com/v1/messages
ocr config set llm.auth_token your-api-key-here
ocr config set llm.model claude-opus-4-6
ocr config set llm.use_anthropic true
# 选项 B:环境变量(最高优先级)
export OCR_LLM_URL=https://api.anthropic.com/v1/messages
export OCR_LLM_TOKEN=your-api-key-here
export OCR_LLM_MODEL=claude-opus-4-6
export OCR_USE_ANTHROPIC=true
配置存储在 ~/.opencodereview/config.json 中。它也兼容 Claude Code 的环境变量(ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN、ANTHROPIC_MODEL),并会解析 ~/.zshrc / ~/.bashrc 中的相关导出。
CC-Switch 用户注意:如果你使用启用了路由服务的 CC-Switch,可以将 llm.url 指向 CC-Switch 代理地址,无需额外配置:
- 对于 Claude 提供商:将
llm.url设置为http://127.0.0.1:15721 - 对于 CodeX 提供商:将
llm.url设置为http://127.0.0.1:15721/v1 - 根据你的提供商设置
llm.model llm.auth_token可以设置为任意值extra_body设置仍然有效