Open Code Review 在 GitHub Trending 2026 年 8 月第一週衝上前 15,一週內新增 4,700+ stars,目前已累計 17,000+ stars,是本週最炙手可熱的開源專案之一。
一、Open Code Review 是什麼?
Open Code Review(簡稱 OCR)是阿里巴巴開源的 AI 驅動程式碼審查 CLI 工具。它的前身是阿里集團內部官方 AI 程式碼審查助手,在過去兩年服務了數萬名開發者,識別了數百萬個程式碼缺陷。經過大規模生產環境驗證後,阿里將其正式開源。
與 Claude Code、Cursor 等通用 AI 編碼 Agent 不同,OCR 專注做一件事:程式碼審查,並且做得更好、更快、更省錢。
官方基準測試表明,使用相同的底層模型,OCR 的審查品質(F1 分數和 Precision)顯著高於通用 Agent,而 token 消耗僅為後者的 1/9,審查速度也更快。
🔗 GitHub: alibaba/open-code-review 🌐 官網: open-codereview.ai 📜 License: Apache-2.0
二、為什麼通用 AI Agent 做不好程式碼審查?
如果你試過用 Claude Code 或類似工具來做程式碼審查,大概率遇到過這些問題:
- 覆蓋不全 — 改動檔案較多時,Agent 容易「偷懶」,只審查部分檔案,遺漏重要變更
- 位置漂移 — 報告的問題行號與實際程式碼位置不符,開發者需要手動定位
- 品質不穩定 — 純自然語言驅動的 Skills 難以除錯,審查品質隨 prompt 微調劇烈波動
根本原因:純語言驅動的架構缺少對審查流程的硬性約束。
三、OCR 的混合架構:確定性工程 + LLM Agent
OCR 的核心設計理念是將「絕對不能出錯」的部分交給確定性工程,將「需要動態決策」的部分交給 Agent:
確定性工程層
- 精準檔案選擇 — 用工程邏輯確定哪些檔案需要審查、哪些應過濾,確保不錯過重要變更
- 智慧檔案分組 — 將相關檔案打包為審查單元(如
message_en.properties和message_zh.properties一組),每個分組由獨立子 Agent 審查,天然支援並行 - 細粒度規則匹配 — 根據檔案特徵匹配審查規則,讓模型注意力高度聚焦,消除資訊雜訊
- 外部定位與反思模組 — 獨立的位置定位和內容反思模組,系統性提高 AI 回饋的行號準確度和內容準確度
Agent 層
- 場景化 Prompt — 針對程式碼審查深度優化的 Prompt 範本,效果更好且更省 token
- 場景化工具集 — 從大規模生產資料中提煉的專用工具集,比通用 Agent 工具更穩定可靠
四、安裝
OCR 支援多種安裝方式,最簡單的是透過 npm 全域安裝:
npm install -g @alibaba-group/open-code-review
安裝完成後,ocr 命令即可在全域使用:
ocr --version
其他安裝方式包括:
- 安裝腳本 — 適合無 Node.js 環境
- GitHub Release 二進位 — 直接下載可執行檔案
- 從原始碼編譯 — 適合需要修改的貢獻者
詳情參考 官方安裝文件。
五、快速上手
5.1 設定 LLM
首次使用前,必須設定一個 LLM(除非使用委託模式):
# 選擇內建的模型供應商
ocr config provider
# 選擇模型
ocr config model
互動式 UI 會引導你完成供應商選擇、API Key 輸入和模型設定,並自動測試連通性。
內建支援的主流供應商包括 OpenAI、Anthropic、Google Gemini、通義千問等。你也可以新增自訂供應商:
ocr config provider add-custom
5.2 第一次審查
進入你的專案目錄,執行:
cd your-project
# 審查所有暫存、未暫存和未追蹤的變更
ocr review
OCR 會自動讀取 Git diff,將變更檔案發送給 LLM,生成帶行號精度的審查意見。
5.3 比較兩個分支
ocr review --from main --to feature-branch
5.4 審查單次提交
ocr review --commit abc123
5.5 全檔案掃描
不依賴 Git diff,直接掃描整個倉庫或指定目錄:
# 掃描整個倉庫
ocr scan
# 掃描指定目錄
ocr scan --path src/agent
這在審計不熟悉的程式碼庫時非常有用。
六、進階功能
6.1 委託模式(Delegation Mode)
OCR 支援「委託模式」——讓你的 AI 編碼 Agent 自己執行審查,OCR 負責檔案選擇和規則解析,無需單獨設定 LLM:
# 預覽委託審查
ocr delegate preview
# 對指定檔案執行委託審查
ocr delegate rule src/main.go src/handler.go
這對已經在使用 Claude Code、Cursor 等工具的團隊特別實用。
6.2 內建安全規則
OCR 內建了經過微調的安全規則集,能自動偵測:
| 規則類型 | 說明 |
|---|---|
| NPE(空指標例外) | Java/Kotlin 中潛在的空引用問題 |
| 執行緒安全 | 並行場景下的競態條件 |
| XSS 攻擊 | 前端跨站腳本漏洞 |
| SQL 注入 | 資料庫查詢中的注入風險 |
這些規則不是靠 prompt 提示,而是透過範本引擎驅動的規則匹配,更穩定、更可預測。
6.3 工作階段管理
如果一次大規模審查中途被打斷,可以恢復:
# 列出所有工作階段
ocr session list
# 恢復中斷的審查
ocr review --from main --to feature-branch --resume <session-id>
6.4 整合 CI/CD
OCR 適合接入 CI 流水線。在 GitHub Actions 中:
name: Code Review
on:
pull_request:
branches: [main]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install OCR
run: npm install -g @alibaba-group/open-code-review
- name: Run Review
run: ocr review --from main --to HEAD
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
6.5 多模型對比
你可以切換不同模型來對比審查效果:
# 切換到 GPT-4
ocr config model gpt-4
# 審查
ocr review
# 切換到 Claude
ocr config model claude-sonnet-4-20250514
# 再次審查,對比結果
ocr review
七、效能與成本
以下是官方基準測試的核心資料對比:
| 指標 | OCR | Claude Code (同模型) | 優勢 |
|---|---|---|---|
| F1 分數 | 更高 | 較低 | 綜合品質更好 |
| Precision | 更高 | 較低 | 誤報更少 |
| Recall | 較低 | 更高 | 有意取捨,優先減少雜訊 |
| 平均耗時 | 更短 | 更長 | CI 延遲更低 |
| Token 消耗 | ~1/9 | 基準 | 成本節省 89% |
OCR 的 Recall 略低於通用 Agent,但這是有意的設計取捨:與其報告一堆誤報讓開發者疲於奔命,不如確保報告的每個問題都是真實缺陷。
八、與其他程式碼審查工具對比
| 工具 | 類型 | AI 能力 | 成本 | 適用場景 |
|---|---|---|---|---|
| Open Code Review | CLI | ✅ 專用 | 低(1/9 token) | 自動化 CI 審查、本機快速審查 |
| GitHub Copilot Code Review | IDE 外掛 | ✅ 通用 | 中 | IDE 內即時回饋 |
| SonarQube | 靜態分析 | ❌ 規則引擎 | 低 | 規範檢查、覆蓋率 |
| Claude Code / Cursor | AI Agent | ✅ 通用 | 高 | 全功能開發 |
總結:如果你的核心需求是程式碼審查,OCR 是最優解。 如果你需要的是全面的 AI 編碼助手,Claude Code 等工具更合適。
九、總結
Open Code Review 代表了一個重要趨勢:專用 AI 工具正在超越通用 Agent。它不是又一個用 prompt 拼湊的「skill」,而是經過兩年阿里內部大規模驗證、真正解決生產痛點的工程化產品。
如果你每天要 review 多個 PR,OCR 能幫你: - ✅ 省時 — 自動化初步審查,聚焦真正重要的問題 - ✅ 省錢 — 比通用 Agent 節省約 89% 的 token 消耗 - ✅ 提質 — 確定性工程保證覆蓋率和位置精度 - ✅ CI 友好 — CLI 設計天然適合流水線整合
💡 下一步:安裝 OCR 後,在你的日常 PR 中試用
ocr review,體驗一下阿里內部驗證兩年的 AI 程式碼審查實力。
本文介紹的專案 alibaba/open-code-review 採用 Apache-2.0 授權條款開源,歡迎貢獻和使用。