开源代码评审

alibaba/open-code-review 访问 GitHub ↗
🔤 Go ★ 18423 ⑂ 0 weekly #12 (+3881) 抓取 2026-08-04

一句话简介

阿里巴巴开源的代码评审工具,基于Go语言构建,支持自动化代码审查、质量检测与协作,帮助团队提升代码规范与开发效率。

标签

  • 代码评审
  • Go
  • 自动化
  • 质量检测
  • 阿里巴巴

适用应用场景

  • 团队协作中的代码规范审查
  • CI/CD流水线集成自动质量检测
  • Pull Request自动化评审与反馈
  • 开源项目贡献者代码合规检查

README 中文摘要

Open Code Review 简介

Open Code Review(命令 ocr)是一款基于 AI 的代码评审 CLI 工具,最初源自阿里集团内部使用的官方 AI 评审助手,在大规模生产环境中已服务数万名开发者并识别出数百万个代码缺陷。完成内部验证后被开源,开发者只需配置模型端点即可启动。

工具读取 Git diff,将改动文件交给具备工具调用能力的 Agent,再由 Agent 调用可配置的大语言模型生成行级精度的结构化评审意见。Agent 可读取完整文件、检索代码库、查阅其他改动文件以获取上下文,从而输出深度评审而非仅限于 diff 表面的反馈。除 diff 评审外,ocr scan 支持对整个文件进行审查,适用于审计陌生代码库或没有有效 diff 的目录。

性能基准

项目提供基于 50 个开源仓库、200 个真实 Pull Request、跨越 10 种编程语言、并由 80 多位资深工程师交叉标注的真实基准(1,505 条真值问题)。在相同底层模型下,Open Code Review 相较通用 Agent 在 PrecisionF1 上显著领先,仅消耗约 1/9 的 Token,评审耗时也更短。Recall 略低于通用 Agent,属于有意取舍——优先降低误报而非追求覆盖率。

核心设计

通用 Agent 的痛点

将 Claude Code 等通用 Agent 配合 Skills 用于代码评审时,常遇到三类问题:覆盖不全(大变更集下文件被遗漏)、位置漂移(行号或文件引用错位)、质量不稳定(自然语言驱动的 Skill 难以调试)。根本原因在于纯语言驱动架构缺乏对评审流程的硬约束。

确定性工程 + Agent 混合架构

  • 确定性工程(硬约束):由工程逻辑而非语言模型保证关键步骤的正确性。包含精准文件选型、相关文件智能打包(如将 message_en.propertiesmessage_zh.properties 合并为一个评审单元,每包以子 Agent 隔离上下文以支持大型变更集的并发评审)、基于模板引擎的细粒度规则匹配、独立外部定位与反思模块。
  • Agent(动态决策):聚焦场景化提示词模板与依据大规模生产数据工具调用轨迹蒸馏出的专用工具集,相比通用 Agent 工具更稳定、更可预测。

安装与使用

前置条件

  • Git >= 2.41:依赖 Git 生成 diff、检索代码与执行仓库操作。

安装

npm install -g @alibaba-group/open-code-review
# 安装完成后 ocr 命令全局可用

配置 LLM

ocr config provider  # 选择内置提供商或自定义
ocr config model     # 选择当前提供商下的模型

交互式界面会引导完成提供商选择、API Key 输入、模型配置,并自动测试连通性。

评审命令

cd your-project

# 工作区模式:评审已暂存、未暂存与未跟踪的变更
ocr review

# 分支范围:对比两个引用
ocr review --from main --to feature-branch

# 单次提交
ocr review --commit abc123

# 恢复中断的范围或提交评审
ocr session list
ocr review --from main --to feature-branch --resume <session-id>

# 打印已保存会话中的评审意见
ocr session comments <session-id>
ocr session comments --severity critical,high --json <session-id>

# 全文件扫描:评审整个文件而非 diff(无需 Git 历史)
ocr scan
ocr scan --path internal/agent
ocr scan --resume <session-id>

# 委派模式:交由 AI 编程 Agent 自行完成评审
# OCR 仅负责文件选型与规则解析,无需配置 LLM
ocr delegate preview
ocr delegate rule src/main.go src/handler.go

集成与文档

完整文档位于官方站点,涵盖:快速开始、安装方式、CLI 参考、评审规则、配置项、MCP Server、Claude Code/Codex/Cursor/OpenCode 等编程 Agent 插件、旁路模式(Default 与 Delegation)选择、GitHub Actions/GitLab CI/GitFlic CI/Gerrit 等 CI/CD 集成、会话查看器、OpenTelemetry 可观测性、常见问题。

许可证

Apache-2.0,Copyright 2026 Alibaba。

摘要更新于 2026-08-04 00:32:53 · 原文 12268 字符 · md5 2fe485d4b091…