@alibaba-group/open-code-review 1.12.1 → 1.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/imgs/benchmark-ko.png +0 -0
- package/imgs/highlights-en.png +0 -0
- package/imgs/highlights-ja.png +0 -0
- package/imgs/highlights-ko.png +0 -0
- package/imgs/highlights-ru.png +0 -0
- package/imgs/highlights-zh.png +0 -0
- package/package.json +7 -7
- package/README.ja-JP.md +0 -199
- package/README.ko-KR.md +0 -199
- package/README.ru-RU.md +0 -199
- package/README.zh-CN.md +0 -199
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
<a href="#supported-agents"><img alt="Cursor" src="https://img.shields.io/badge/Cursor-supported-blueviolet.svg" /></a>
|
|
30
30
|
</p>
|
|
31
31
|
<p align="center">
|
|
32
|
-
English | <a href="README.zh-CN.md">简体中文</a> | <a href="README.ja-JP.md">日本語</a> | <a href="README.ko-KR.md">한국어</a> | <a href="README.ru-RU.md">Русский</a>
|
|
32
|
+
English | <a href="docs/i18n/README.zh-CN.md">简体中文</a> | <a href="docs/i18n/README.ja-JP.md">日本語</a> | <a href="docs/i18n/README.ko-KR.md">한국어</a> | <a href="docs/i18n/README.ru-RU.md">Русский</a>
|
|
33
33
|
</p>
|
|
34
34
|
|
|
35
35
|
---
|
|
Binary file
|
package/imgs/highlights-en.png
CHANGED
|
Binary file
|
package/imgs/highlights-ja.png
CHANGED
|
Binary file
|
|
Binary file
|
package/imgs/highlights-ru.png
CHANGED
|
Binary file
|
package/imgs/highlights-zh.png
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alibaba-group/open-code-review",
|
|
3
|
-
"version": "1.12.
|
|
3
|
+
"version": "1.12.2",
|
|
4
4
|
"description": "OpenCodeReview CLI — AI-powered code review tool",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ocr": "bin/ocr.js"
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
"checksumPattern": "https://github.com/alibaba/open-code-review/releases/download/v{version}/sha256sum.txt"
|
|
32
32
|
},
|
|
33
33
|
"optionalDependencies": {
|
|
34
|
-
"@alibaba-group/ocr-darwin-arm64": "1.12.
|
|
35
|
-
"@alibaba-group/ocr-darwin-x64": "1.12.
|
|
36
|
-
"@alibaba-group/ocr-linux-arm64": "1.12.
|
|
37
|
-
"@alibaba-group/ocr-linux-x64": "1.12.
|
|
38
|
-
"@alibaba-group/ocr-win32-arm64": "1.12.
|
|
39
|
-
"@alibaba-group/ocr-win32-x64": "1.12.
|
|
34
|
+
"@alibaba-group/ocr-darwin-arm64": "1.12.2",
|
|
35
|
+
"@alibaba-group/ocr-darwin-x64": "1.12.2",
|
|
36
|
+
"@alibaba-group/ocr-linux-arm64": "1.12.2",
|
|
37
|
+
"@alibaba-group/ocr-linux-x64": "1.12.2",
|
|
38
|
+
"@alibaba-group/ocr-win32-arm64": "1.12.2",
|
|
39
|
+
"@alibaba-group/ocr-win32-x64": "1.12.2"
|
|
40
40
|
},
|
|
41
41
|
"engines": {
|
|
42
42
|
"node": ">=14"
|
package/README.ja-JP.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<a href="https://open-codereview.ai">
|
|
3
|
-
<img src="imgs/logo-core.svg" alt="OpenCodeReview logo" width="180" />
|
|
4
|
-
</a>
|
|
5
|
-
<h1>OpenCodeReview</h1>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<p align="center">
|
|
9
|
-
<a href="https://trendshift.io/repositories/41087?utm_source=repository-badge&utm_medium=badge&utm_campaign=badge-repository-41087" target="_blank" rel="noopener noreferrer">
|
|
10
|
-
<img src="https://trendshift.io/api/badge/repositories/41087" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
11
|
-
</a>
|
|
12
|
-
<a href="https://trendshift.io/repositories/41087" target="_blank">
|
|
13
|
-
<img src="https://trendshift.io/api/badge/trendshift/repositories/41087/weekly?language=Go" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
14
|
-
</a>
|
|
15
|
-
</p>
|
|
16
|
-
<p align="center">
|
|
17
|
-
<a href="https://www.npmjs.com/package/@alibaba-group/open-code-review"><img alt="npm" src="https://img.shields.io/npm/v/@alibaba-group/open-code-review?style=flat-square" /></a>
|
|
18
|
-
<a href="https://github.com/alibaba/open-code-review/actions/workflows/release.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/alibaba/open-code-review/release.yml?style=flat-square" /></a>
|
|
19
|
-
<a href="https://github.com/alibaba/open-code-review/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/alibaba/open-code-review?style=flat-square" /></a>
|
|
20
|
-
<a href="https://deepwiki.com/alibaba/open-code-review"><img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg" /></a>
|
|
21
|
-
<a href="https://www.bestpractices.dev/projects/13328"><img alt="OpenSSF Best Practices" src="https://img.shields.io/badge/OpenSSF-Gold-D4AF37?style=flat-square" /></a>
|
|
22
|
-
</p>
|
|
23
|
-
<p align="center">
|
|
24
|
-
<a href="#supported-platforms"><img alt="Windows" src="https://img.shields.io/badge/Windows-supported-blue.svg" /></a>
|
|
25
|
-
<a href="#supported-platforms"><img alt="macOS" src="https://img.shields.io/badge/macOS-supported-blue.svg" /></a>
|
|
26
|
-
<a href="#supported-platforms"><img alt="Linux" src="https://img.shields.io/badge/Linux-supported-blue.svg" /></a>
|
|
27
|
-
<a href="#supported-agents"><img alt="Claude Code" src="https://img.shields.io/badge/Claude_Code-supported-blueviolet.svg" /></a>
|
|
28
|
-
<a href="#supported-agents"><img alt="Codex" src="https://img.shields.io/badge/Codex-supported-blueviolet.svg" /></a>
|
|
29
|
-
<a href="#supported-agents"><img alt="Cursor" src="https://img.shields.io/badge/Cursor-supported-blueviolet.svg" /></a>
|
|
30
|
-
</p>
|
|
31
|
-
<p align="center">
|
|
32
|
-
<a href="README.md">English</a> | <a href="README.zh-CN.md">简体中文</a> | 日本語 | <a href="README.ko-KR.md">한국어</a> | <a href="README.ru-RU.md">Русский</a>
|
|
33
|
-
</p>
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Open Code Reviewとは?
|
|
38
|
-
|
|
39
|
-
Open Code ReviewはAIを活用したコードレビューCLIツールです。もともとはAlibaba Group社内の公式AIコードレビューアシスタントとして誕生し、過去2年間で数万人の開発者にサービスを提供し、数百万件のコード欠陥を発見してきました。大規模な環境で徹底的に検証された後、コミュニティ向けのオープンソースプロジェクトとして公開されました。モデルのエンドポイントを設定するだけで使い始められます。
|
|
40
|
-
|
|
41
|
-
Gitのdiffを読み取り、変更されたファイルをツール利用機能を持つエージェント経由で設定可能なLLMに送信し、行レベルの精度で構造化されたレビューコメントを生成します。エージェントはファイル全体の内容を読み取り、コードベースを検索し、コンテキストのために他の変更ファイルを参照し、深いレビューを生成できます — 単なる表面的なdiffへのフィードバックではありません。diffレビュー以外にも、`ocr scan` はファイル全体をレビューできます。不慣れなコードベースの監査や、意味のあるdiffがないディレクトリの検査に便利です。
|
|
42
|
-
|
|
43
|
-
詳細は[公式サイト](https://open-codereview.ai)をご覧ください。
|
|
44
|
-
|
|
45
|
-

|
|
46
|
-
|
|
47
|
-
## ベンチマーク
|
|
48
|
-
|
|
49
|
-
> 汎用エージェント(Claude Code)と比較して、Open Code Reviewは同じ基盤モデルで有意に高い**精度(Precision)**と**F1スコア**を達成し、トークン消費量は**約1/9**にとどまり、レビューもより高速です。ただし、リコール(Recall)は汎用エージェントより低くなります——これはノイズを抑え精度を優先する設計上のトレードオフです。
|
|
50
|
-
|
|
51
|
-
実際のコードレビューに基づくベンチマーク。**50**の人気オープンソースリポジトリから**200**の実際のPull Requestを厳選し、**10**のプログラミング言語をカバー——80人以上のシニアエンジニアによるクロスバリデーション(**1,505**件のアノテーション済み欠陥)。
|
|
52
|
-
|
|
53
|
-
<a href="https://huggingface.co/datasets/Alibaba-Aone/aacr-bench"><img src="https://huggingface.co/favicon.ico" alt="Hugging Face" width="20" height="20" /> Hugging FaceでAACR-Benchデータセットを見る</a>。
|
|
54
|
-
|
|
55
|
-
| 指標 | 測定内容 | 重要性 |
|
|
56
|
-
|------|----------|--------|
|
|
57
|
-
| **F1** | 精度とリコールの調和平均 | レビュー品質を示す最良の単一指標 |
|
|
58
|
-
| **精度 (Precision)** | 報告された問題のうち実際の欠陥の割合 | 高い = 確認すべき偽陽性が少ない |
|
|
59
|
-
| **リコール (Recall)** | 実際の欠陥のうち発見された割合 | 高い = 見逃しが少ない |
|
|
60
|
-
| **平均時間 (Avg Time)** | レビューあたりの実時間 | CIパイプラインの待機時間に影響 |
|
|
61
|
-
| **平均トークン (Avg Token)** | レビューあたりの総トークン消費量 | APIコストに直接影響 |
|
|
62
|
-
|
|
63
|
-

|
|
64
|
-
|
|
65
|
-
## なぜOpen Code Reviewなのか?
|
|
66
|
-
|
|
67
|
-
### 汎用エージェントの問題点
|
|
68
|
-
|
|
69
|
-
Claude CodeのSkillsのような汎用エージェントをコードレビューに使ったことがあれば、次のような課題に直面したことがあるはずです:
|
|
70
|
-
|
|
71
|
-
- **不完全なカバレッジ** — 大きな変更セットでは、エージェントが「手を抜き」、一部のファイルだけを選択的にレビューして他を見落としがちです。
|
|
72
|
-
- **位置のずれ** — 報告された問題が実際のコード位置と一致せず、行番号やファイル参照がターゲットからずれることが頻繁にあります。
|
|
73
|
-
- **不安定な品質** — 自然言語駆動のSkillsはデバッグが難しく、わずかなプロンプトの違いでレビュー品質が大きく変動します。
|
|
74
|
-
|
|
75
|
-
根本原因は、純粋に言語駆動のアーキテクチャにはレビュープロセスに対するハードな制約が欠けていることです。
|
|
76
|
-
|
|
77
|
-
### コア設計: 決定論的エンジニアリング × エージェントのハイブリッド
|
|
78
|
-
|
|
79
|
-
Open Code Reviewのコア哲学は、決定論的エンジニアリングとエージェントを組み合わせ、それぞれが得意とする領域を担当させることです。
|
|
80
|
-
|
|
81
|
-
**決定論的エンジニアリング — ハードな制約**
|
|
82
|
-
|
|
83
|
-
*絶対に間違えてはならない*レビューステップについては、言語モデルではなくエンジニアリングロジックが正しさを保証します:
|
|
84
|
-
|
|
85
|
-
- **正確なファイル選択** — どのファイルをレビューし、どのファイルをフィルタリングすべきかを正確に決定し、重要な変更が見落とされないようにします。
|
|
86
|
-
- **スマートなファイルバンドル** — 関連するファイルを単一のレビューユニットにグループ化します(例:`message_en.properties`と`message_zh.properties`はまとめてバンドルされます)。各バンドルは分離されたコンテキストを持つサブエージェントとして実行されます — 非常に大きな変更セットでも安定する分割統治戦略で、自然に並行レビューもサポートします。
|
|
87
|
-
- **きめ細かなルールマッチング** — 各ファイルの特性に応じてレビュールールをマッチングし、モデルの注意を鋭く集中させ、情報ノイズを発生源から排除します。純粋に言語駆動のルール誘導と比べて、テンプレートエンジンベースのルールマッチングはより安定的で予測可能です。
|
|
88
|
-
- **外部の位置特定・リフレクションモジュール** — 独立したコメント位置特定モジュールとコメントリフレクションモジュールにより、AIフィードバックの位置精度と内容精度の両方を体系的に向上させます。
|
|
89
|
-
|
|
90
|
-
**エージェント — 動的な意思決定**
|
|
91
|
-
|
|
92
|
-
エージェントの強みは、最も重要な領域 — 動的な意思決定と動的なコンテキスト取得 — に集中させています:
|
|
93
|
-
|
|
94
|
-
- **シナリオに最適化されたプロンプト** — コードレビュー向けに深く最適化されたプロンプトテンプレートにより、効果を高めつつトークン消費を削減します。
|
|
95
|
-
- **シナリオに最適化されたツールセット** — 大規模な本番データにおけるツール呼び出しトレースの詳細な分析 — 呼び出し頻度の分布、ツールごとの繰り返し率、新しいツールが呼び出しチェーン全体に与える影響など — から抽出された、汎用エージェントツールキットよりもコードレビューにおいて安定的で予測可能な専用ツールセットです。
|
|
96
|
-
|
|
97
|
-
## 使い方
|
|
98
|
-
|
|
99
|
-
### 前提条件
|
|
100
|
-
|
|
101
|
-
- **Git >= 2.41** — Open Code Review は diff 生成、コード検索、リポジトリ操作に Git を利用します。
|
|
102
|
-
|
|
103
|
-
### CLI
|
|
104
|
-
|
|
105
|
-
#### インストール
|
|
106
|
-
|
|
107
|
-
```bash
|
|
108
|
-
npm install -g @alibaba-group/open-code-review
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
インストール後、`ocr`コマンドがグローバルに利用可能になります。
|
|
112
|
-
|
|
113
|
-
その他のインストール方法(インストールスクリプト、GitHub Release バイナリ、ソースビルド)については、[インストールガイド](https://open-codereview.ai/docs/installation)を参照してください。
|
|
114
|
-
|
|
115
|
-
#### クイックスタート
|
|
116
|
-
|
|
117
|
-
**1. LLMの設定**
|
|
118
|
-
|
|
119
|
-
コードレビューの前にLLMの設定が必要です。[デリゲートモード](https://open-codereview.ai/docs/delegate)を使用する場合は不要です。
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
ocr config provider # ビルトインプロバイダーを選択またはカスタムプロバイダーを追加
|
|
123
|
-
ocr config model # アクティブなプロバイダーのモデルを選択
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-

|
|
127
|
-
|
|
128
|
-
対話的UIがプロバイダーの選択、APIキーの入力、モデル設定をガイドし、完了後に自動的に接続テストを行います。
|
|
129
|
-
|
|
130
|
-
CLIセットアップ、環境変数、カスタムプロバイダーなどの高度な設定については、[設定ガイド](https://open-codereview.ai/docs/configuration)を参照してください。
|
|
131
|
-
|
|
132
|
-
**2. レビュー**
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
cd your-project
|
|
136
|
-
|
|
137
|
-
# ワークスペースモード — ステージ済み・未ステージ・未追跡のすべての変更をレビュー
|
|
138
|
-
ocr review
|
|
139
|
-
|
|
140
|
-
# ブランチ範囲 — main から分岐した後の feature-branch の変更をレビュー(マージベースモード)
|
|
141
|
-
ocr review --from main --to feature-branch
|
|
142
|
-
|
|
143
|
-
# 単一コミット
|
|
144
|
-
ocr review --commit abc123
|
|
145
|
-
|
|
146
|
-
# 中断した範囲または単一 commit レビューを再開
|
|
147
|
-
ocr session list
|
|
148
|
-
ocr review --from main --to feature-branch --resume <session-id>
|
|
149
|
-
|
|
150
|
-
# フルファイルスキャン — diffではなくファイル全体をレビュー(git履歴不要)
|
|
151
|
-
ocr scan # リポジトリ全体をスキャン
|
|
152
|
-
ocr scan --path internal/agent # ディレクトリまたは特定のファイルをスキャン
|
|
153
|
-
ocr scan --resume <session-id> # 中断したフルファイルスキャンを再開
|
|
154
|
-
|
|
155
|
-
# 結果をファイルに出力(AI ホストエージェント推奨)
|
|
156
|
-
ocr review --format json --output result.json
|
|
157
|
-
|
|
158
|
-
# デリゲートモード — AI コーディングエージェントが自らレビューを実行
|
|
159
|
-
# OCR はファイル選択とルール解決を担当。LLM 設定不要
|
|
160
|
-
ocr delegate preview
|
|
161
|
-
ocr delegate rule src/main.go src/handler.go
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
## ドキュメント
|
|
165
|
-
|
|
166
|
-
完全なドキュメントは **[open-codereview.ai/docs](https://open-codereview.ai/docs)** にあります:
|
|
167
|
-
|
|
168
|
-
- [クイックスタート](https://open-codereview.ai/docs/quickstart) — インストールして最初のレビューを実行
|
|
169
|
-
- [インストール](https://open-codereview.ai/docs/installation) — すべてのプラットフォームとパッケージマネージャー
|
|
170
|
-
- [CLI リファレンス](https://open-codereview.ai/docs/cli-reference) — すべてのコマンドとフラグ
|
|
171
|
-
- [レビュールール](https://open-codereview.ai/docs/review-rules) — レビュールールのカスタマイズ、パスフィルタリングとターゲティング
|
|
172
|
-
- [設定](https://open-codereview.ai/docs/configuration) — 設定キーと環境変数
|
|
173
|
-
- [MCP サーバー](https://open-codereview.ai/docs/mcp) — 外部ツールでレビューエージェントを拡張
|
|
174
|
-
- コーディングエージェント連携 — 使用するプラットフォームを選択
|
|
175
|
-
- [Claude Code](plugins/open-code-review/README.md#claude-code) — レビュー用スラッシュコマンドを含むプラグインをインストール
|
|
176
|
-
- [Codex](plugins/open-code-review/README.md#codex) — 呼び出し可能なレビュースキルを含むプラグインをインストール
|
|
177
|
-
- [Cursor](plugins/open-code-review/README.md#cursor) — 移植可能なレビュースキルを含むプラグインをインストール
|
|
178
|
-
- [OpenCode](plugins/open-code-review/opencode/README.md) — ネイティブレビュー・ツールとスラッシュコマンドをインストール
|
|
179
|
-
- [QCA Forward](plugins/open-code-review/qca/README.md) — QCA ホストモデルと公開可能なテンプレートで委任モードを実行
|
|
180
|
-
- [Skill 対応エージェント](https://open-codereview.ai/docs/agent-skill) — 移植可能なエージェントスキルをインストール
|
|
181
|
-
- レビュー実行モード — 連携後、どの LLM がレビューを実行するかを選択
|
|
182
|
-
- [デフォルト(OCR が管理)](https://open-codereview.ai/docs/configuration) — OCR が設定済みの LLM を使用してレビューを実行
|
|
183
|
-
- [デリゲートモード](https://open-codereview.ai/docs/delegate) — コーディングエージェントが自身の LLM を使用してレビューを実行。OCR の API キーは不要
|
|
184
|
-
- [CI/CD 連携](https://open-codereview.ai/docs/cicd) — GitHub Actions、GitLab CI、GitFlic CI、Gerrit との統合
|
|
185
|
-
- [セッションビューアー](https://open-codereview.ai/docs/viewer) — ブラウザでレビューセッションを閲覧・再生、コメントを修正済み/無視としてマークして非表示にできます
|
|
186
|
-
- [テレメトリー](https://open-codereview.ai/docs/telemetry) — 可観測性のためのOpenTelemetry統合
|
|
187
|
-
- [FAQ](https://open-codereview.ai/docs/faq) — よくある質問とトラブルシューティング
|
|
188
|
-
|
|
189
|
-
## コントリビューション
|
|
190
|
-
|
|
191
|
-
このプロジェクトは、貢献してくださるすべての方々のおかげで成り立っています。開発環境のセットアップ、コーディングガイドライン、プルリクエストの提出方法については[CONTRIBUTING.ja-JP.md](CONTRIBUTING.ja-JP.md)を参照してください。
|
|
192
|
-
|
|
193
|
-
<a href="https://github.com/alibaba/open-code-review/graphs/contributors">
|
|
194
|
-
<img src="https://contrib.rocks/image?repo=alibaba/open-code-review" />
|
|
195
|
-
</a>
|
|
196
|
-
|
|
197
|
-
## ライセンス
|
|
198
|
-
|
|
199
|
-
[Apache-2.0](LICENSE) — Copyright 2026 Alibaba
|
package/README.ko-KR.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<a href="https://open-codereview.ai">
|
|
3
|
-
<img src="imgs/logo-core.svg" alt="OpenCodeReview logo" width="180" />
|
|
4
|
-
</a>
|
|
5
|
-
<h1>OpenCodeReview</h1>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<p align="center">
|
|
9
|
-
<a href="https://trendshift.io/repositories/41087?utm_source=repository-badge&utm_medium=badge&utm_campaign=badge-repository-41087" target="_blank" rel="noopener noreferrer">
|
|
10
|
-
<img src="https://trendshift.io/api/badge/repositories/41087" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
11
|
-
</a>
|
|
12
|
-
<a href="https://trendshift.io/repositories/41087" target="_blank">
|
|
13
|
-
<img src="https://trendshift.io/api/badge/trendshift/repositories/41087/weekly?language=Go" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
14
|
-
</a>
|
|
15
|
-
</p>
|
|
16
|
-
<p align="center">
|
|
17
|
-
<a href="https://www.npmjs.com/package/@alibaba-group/open-code-review"><img alt="npm" src="https://img.shields.io/npm/v/@alibaba-group/open-code-review?style=flat-square" /></a>
|
|
18
|
-
<a href="https://github.com/alibaba/open-code-review/actions/workflows/release.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/alibaba/open-code-review/release.yml?style=flat-square" /></a>
|
|
19
|
-
<a href="https://github.com/alibaba/open-code-review/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/alibaba/open-code-review?style=flat-square" /></a>
|
|
20
|
-
<a href="https://deepwiki.com/alibaba/open-code-review"><img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg" /></a>
|
|
21
|
-
<a href="https://www.bestpractices.dev/projects/13328"><img alt="OpenSSF Best Practices" src="https://img.shields.io/badge/OpenSSF-Gold-D4AF37?style=flat-square" /></a>
|
|
22
|
-
</p>
|
|
23
|
-
<p align="center">
|
|
24
|
-
<a href="#supported-platforms"><img alt="Windows" src="https://img.shields.io/badge/Windows-supported-blue.svg" /></a>
|
|
25
|
-
<a href="#supported-platforms"><img alt="macOS" src="https://img.shields.io/badge/macOS-supported-blue.svg" /></a>
|
|
26
|
-
<a href="#supported-platforms"><img alt="Linux" src="https://img.shields.io/badge/Linux-supported-blue.svg" /></a>
|
|
27
|
-
<a href="#supported-agents"><img alt="Claude Code" src="https://img.shields.io/badge/Claude_Code-supported-blueviolet.svg" /></a>
|
|
28
|
-
<a href="#supported-agents"><img alt="Codex" src="https://img.shields.io/badge/Codex-supported-blueviolet.svg" /></a>
|
|
29
|
-
<a href="#supported-agents"><img alt="Cursor" src="https://img.shields.io/badge/Cursor-supported-blueviolet.svg" /></a>
|
|
30
|
-
</p>
|
|
31
|
-
<p align="center">
|
|
32
|
-
<a href="README.md">English</a> | <a href="README.zh-CN.md">简体中文</a> | <a href="README.ja-JP.md">日本語</a> | 한국어 | <a href="README.ru-RU.md">Русский</a>
|
|
33
|
-
</p>
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Open Code Review란?
|
|
38
|
-
|
|
39
|
-
Open Code Review는 AI 기반 코드 리뷰 CLI 도구입니다. Alibaba Group의 내부 공식 AI 코드 리뷰 어시스턴트에서 시작했으며, 지난 2년 동안 수만 명의 개발자에게 제공되어 수백만 건의 코드 결함을 찾아냈습니다. 대규모 환경에서 충분히 검증한 뒤 커뮤니티를 위해 오픈 소스 프로젝트로 공개했습니다. 모델 endpoint만 설정하면 바로 사용할 수 있습니다.
|
|
40
|
-
|
|
41
|
-
이 도구는 Git diff를 읽고, 변경 파일을 tool-use 기능을 가진 agent를 통해 설정 가능한 LLM으로 전달한 뒤, 라인 단위 위치 정보가 포함된 구조화된 리뷰 코멘트를 생성합니다. agent는 전체 파일 내용 읽기, 코드베이스 검색, 다른 변경 파일 확인 등을 통해 맥락을 확보하고 표면적인 diff 피드백이 아닌 깊이 있는 리뷰를 수행할 수 있습니다. diff 리뷰 외에도 `ocr scan`은 전체 파일을 리뷰할 수 있어, 익숙하지 않은 코드베이스를 감사하거나 의미 있는 diff가 없는 디렉터리를 검토하는 데 유용합니다.
|
|
42
|
-
|
|
43
|
-
자세한 내용은 [공식 웹사이트](https://open-codereview.ai)를 참조하세요.
|
|
44
|
-
|
|
45
|
-

|
|
46
|
-
|
|
47
|
-
## 벤치마크
|
|
48
|
-
|
|
49
|
-
> 범용 Agent(Claude Code)와 비교할 때, Open Code Review는 동일한 기반 모델에서 유의미하게 높은 **정밀도(Precision)**와 **F1 점수**를 달성하며, 토큰 소비량은 **약 1/9** 수준이고 리뷰 속도도 더 빠릅니다. 다만 재현율(Recall)은 범용 Agent보다 낮습니다 — 이는 노이즈를 줄이고 정밀도를 우선하는 설계적 트레이드오프입니다.
|
|
50
|
-
|
|
51
|
-
실제 코드 리뷰 기반 벤치마크. **50**개 인기 오픈소스 저장소에서 **200**개 실제 Pull Request를 엄선하고, **10**개 프로그래밍 언어를 커버 — 80명 이상의 시니어 엔지니어가 교차 검증(**1,505**개 어노테이션된 결함).
|
|
52
|
-
|
|
53
|
-
<a href="https://huggingface.co/datasets/Alibaba-Aone/aacr-bench"><img src="https://huggingface.co/favicon.ico" alt="Hugging Face" width="20" height="20" /> Hugging Face에서 AACR-Bench 데이터셋 살펴보기</a>.
|
|
54
|
-
|
|
55
|
-
| 지표 | 측정 내용 | 중요한 이유 |
|
|
56
|
-
|------|-----------|-------------|
|
|
57
|
-
| **F1** | 정밀도와 재현율의 조화 평균 | 리뷰 품질을 나타내는 최적의 단일 지표 |
|
|
58
|
-
| **정밀도 (Precision)** | 보고된 이슈 중 실제 결함 비율 | 높을수록 확인할 오탐이 적음 |
|
|
59
|
-
| **재현율 (Recall)** | 실제 결함 중 발견된 비율 | 높을수록 놓치는 이슈가 적음 |
|
|
60
|
-
| **평균 시간 (Avg Time)** | 리뷰당 실제 소요 시간 | CI 파이프라인 대기 시간에 영향 |
|
|
61
|
-
| **평균 토큰 (Avg Token)** | 리뷰당 총 토큰 소비량 | API 비용에 직접 영향 |
|
|
62
|
-
|
|
63
|
-

|
|
64
|
-
|
|
65
|
-
## 왜 Open Code Review인가?
|
|
66
|
-
|
|
67
|
-
### 범용 Agent의 문제
|
|
68
|
-
|
|
69
|
-
Claude Code Skills 같은 범용 agent로 코드 리뷰를 해봤다면 다음 문제를 경험했을 수 있습니다.
|
|
70
|
-
|
|
71
|
-
- **불완전한 커버리지**: 큰 changeset에서는 일부 파일만 선택적으로 리뷰하고 중요한 파일을 놓치기 쉽습니다.
|
|
72
|
-
- **위치 드리프트**: 지적된 문제가 실제 코드 위치와 맞지 않거나 라인 번호와 파일 참조가 어긋나는 일이 자주 발생합니다.
|
|
73
|
-
- **불안정한 품질**: 자연어 기반 Skill은 디버깅이 어렵고, 작은 prompt 변화에도 리뷰 품질이 크게 흔들릴 수 있습니다.
|
|
74
|
-
|
|
75
|
-
근본 원인은 순수 언어 중심 아키텍처가 리뷰 프로세스에 강한 제약을 제공하지 못한다는 점입니다.
|
|
76
|
-
|
|
77
|
-
### 핵심 설계: 결정적 엔지니어링과 Agent의 하이브리드
|
|
78
|
-
|
|
79
|
-
Open Code Review의 핵심 철학은 결정적 엔지니어링과 agent를 결합해 각자가 가장 잘하는 일을 맡기는 것입니다.
|
|
80
|
-
|
|
81
|
-
**결정적 엔지니어링: 강한 제약**
|
|
82
|
-
|
|
83
|
-
반드시 정확해야 하는 리뷰 단계는 언어 모델이 아니라 엔지니어링 로직이 보장합니다.
|
|
84
|
-
|
|
85
|
-
- **정확한 파일 선택**: 어떤 파일을 리뷰하고 어떤 파일을 필터링할지 결정해 중요한 변경이 누락되지 않도록 합니다.
|
|
86
|
-
- **스마트 파일 번들링**: 관련 파일을 하나의 리뷰 단위로 묶습니다. 예를 들어 `message_en.properties`와 `message_zh.properties`를 함께 묶습니다. 각 번들은 독립된 context를 가진 sub-agent로 실행되며, 대규모 changeset에서도 안정적인 divide-and-conquer 전략과 동시 리뷰를 지원합니다.
|
|
87
|
-
- **세밀한 rule 매칭**: 각 파일의 특성에 맞는 리뷰 rule을 매칭해 모델의 주의를 집중시키고 정보 노이즈를 줄입니다. 순수 자연어 기반 rule 안내보다 template engine 기반 rule 매칭이 더 안정적이고 예측 가능합니다.
|
|
88
|
-
- **외부 위치 지정 및 reflection 모듈**: 독립적인 comment positioning과 comment reflection 모듈이 AI 피드백의 위치 정확도와 내용 정확도를 체계적으로 개선합니다.
|
|
89
|
-
|
|
90
|
-
**Agent: 동적 의사결정**
|
|
91
|
-
|
|
92
|
-
agent의 강점은 동적 판단과 동적 context 검색이 중요한 지점에 집중됩니다.
|
|
93
|
-
|
|
94
|
-
- **시나리오 최적화 prompt**: 코드 리뷰에 깊이 최적화된 prompt template으로 효과를 높이고 token 사용량을 줄입니다.
|
|
95
|
-
- **시나리오 최적화 toolset**: 대규모 production 데이터의 tool-call trace를 분석해 도출했습니다. 호출 빈도 분포, tool별 반복률, 신규 tool이 전체 call chain에 미치는 영향 등을 반영해 범용 agent toolkit보다 코드 리뷰에 더 안정적이고 예측 가능한 전용 toolset을 제공합니다.
|
|
96
|
-
|
|
97
|
-
## 사용 방법
|
|
98
|
-
|
|
99
|
-
### 사전 요구 사항
|
|
100
|
-
|
|
101
|
-
- **Git >= 2.41** — Open Code Review는 diff 생성, 코드 검색, 저장소 작업에 Git을 사용합니다.
|
|
102
|
-
|
|
103
|
-
### CLI
|
|
104
|
-
|
|
105
|
-
#### 설치
|
|
106
|
-
|
|
107
|
-
```bash
|
|
108
|
-
npm install -g @alibaba-group/open-code-review
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
설치 후 `ocr` 명령을 전역에서 사용할 수 있습니다.
|
|
112
|
-
|
|
113
|
-
기타 설치 방법(설치 스크립트, GitHub Release binary, 소스 빌드)은 [설치 가이드](https://open-codereview.ai/docs/installation)를 참조하세요.
|
|
114
|
-
|
|
115
|
-
#### Quick Start
|
|
116
|
-
|
|
117
|
-
**1. LLM 설정**
|
|
118
|
-
|
|
119
|
-
코드 리뷰 전에 LLM 설정이 필요합니다. [위임 모드](https://open-codereview.ai/docs/delegate)를 사용하는 경우에는 불필요합니다.
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
ocr config provider # built-in provider 선택 또는 custom provider 추가
|
|
123
|
-
ocr config model # 활성 provider의 model 선택
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-

|
|
127
|
-
|
|
128
|
-
대화형 UI가 provider 선택, API key 입력, model 설정을 안내하며, 완료 후 자동으로 연결 테스트를 수행합니다.
|
|
129
|
-
|
|
130
|
-
CLI 설정, 환경 변수, 커스텀 provider 등 고급 설정은 [설정 가이드](https://open-codereview.ai/docs/configuration)를 참조하세요.
|
|
131
|
-
|
|
132
|
-
**2. 리뷰 실행**
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
cd your-project
|
|
136
|
-
|
|
137
|
-
# Workspace mode: staged, unstaged, untracked 변경을 모두 리뷰
|
|
138
|
-
ocr review
|
|
139
|
-
|
|
140
|
-
# 브랜치 범위 — main에서 분기된 이후 feature-branch의 변경 사항을 리뷰합니다 (머지베이스 모드)
|
|
141
|
-
ocr review --from main --to feature-branch
|
|
142
|
-
|
|
143
|
-
# 단일 commit
|
|
144
|
-
ocr review --commit abc123
|
|
145
|
-
|
|
146
|
-
# 중단된 range 또는 단일 commit review 재개
|
|
147
|
-
ocr session list
|
|
148
|
-
ocr review --from main --to feature-branch --resume <session-id>
|
|
149
|
-
|
|
150
|
-
# 전체 파일 스캔 — diff 대신 파일 전체를 리뷰 (git 이력 불필요)
|
|
151
|
-
ocr scan # 전체 repository 스캔
|
|
152
|
-
ocr scan --path internal/agent # 디렉터리 또는 특정 파일 스캔
|
|
153
|
-
ocr scan --resume <session-id> # 중단된 전체 파일 스캔 재개
|
|
154
|
-
|
|
155
|
-
# 결과를 파일로 저장 (AI 호스트 에이전트 권장)
|
|
156
|
-
ocr review --format json --output result.json
|
|
157
|
-
|
|
158
|
-
# 위임 모드 — AI 코딩 에이전트가 직접 리뷰 수행
|
|
159
|
-
# OCR은 파일 선택과 규칙 해석만 담당; LLM 설정 불필요
|
|
160
|
-
ocr delegate preview
|
|
161
|
-
ocr delegate rule src/main.go src/handler.go
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
## Documentation
|
|
165
|
-
|
|
166
|
-
전체 문서는 **[open-codereview.ai/docs](https://open-codereview.ai/docs)** 에서 확인할 수 있습니다:
|
|
167
|
-
|
|
168
|
-
- [빠른 시작](https://open-codereview.ai/docs/quickstart) — 설치하고 첫 리뷰 실행하기
|
|
169
|
-
- [설치](https://open-codereview.ai/docs/installation) — 모든 플랫폼 및 패키지 매니저
|
|
170
|
-
- [CLI 레퍼런스](https://open-codereview.ai/docs/cli-reference) — 모든 명령어와 플래그
|
|
171
|
-
- [리뷰 규칙](https://open-codereview.ai/docs/review-rules) — 리뷰 규칙 커스터마이징, 경로 필터링 및 타겟팅
|
|
172
|
-
- [설정](https://open-codereview.ai/docs/configuration) — 설정 키와 환경 변수
|
|
173
|
-
- [MCP 서버](https://open-codereview.ai/docs/mcp) — 외부 도구로 리뷰 에이전트 확장
|
|
174
|
-
- 코딩 에이전트 연동 — 사용하는 플랫폼 선택
|
|
175
|
-
- [Claude Code](plugins/open-code-review/README.md#claude-code) — 리뷰 슬래시 명령이 포함된 플러그인 설치
|
|
176
|
-
- [Codex](plugins/open-code-review/README.md#codex) — 호출 가능한 리뷰 스킬이 포함된 플러그인 설치
|
|
177
|
-
- [Cursor](plugins/open-code-review/README.md#cursor) — 이식 가능한 리뷰 스킬이 포함된 플러그인 설치
|
|
178
|
-
- [OpenCode](plugins/open-code-review/opencode/README.md) — 네이티브 리뷰 도구와 슬래시 명령 설치
|
|
179
|
-
- [QCA Forward](plugins/open-code-review/qca/README.md) — QCA 호스트 모델과 게시 가능한 템플릿으로 위임 모드 실행
|
|
180
|
-
- [Skill 호환 에이전트](https://open-codereview.ai/docs/agent-skill) — 이식 가능한 에이전트 스킬 설치
|
|
181
|
-
- 리뷰 실행 모드 — 연동 후 리뷰를 수행할 LLM 선택
|
|
182
|
-
- [기본 모드(OCR 관리)](https://open-codereview.ai/docs/configuration) — OCR이 설정된 LLM을 사용해 리뷰 수행
|
|
183
|
-
- [위임 모드](https://open-codereview.ai/docs/delegate) — 코딩 에이전트가 자체 LLM을 사용해 리뷰 수행; OCR API 키 불필요
|
|
184
|
-
- [CI/CD 연동](https://open-codereview.ai/docs/cicd) — GitHub Actions, GitLab CI, GitFlic CI, Gerrit 통합
|
|
185
|
-
- [세션 뷰어](https://open-codereview.ai/docs/viewer) — 브라우저에서 리뷰 세션 탐색 및 재생, 코멘트를 수정됨/무시됨으로 표시하고 숨길 수 있습니다
|
|
186
|
-
- [텔레메트리](https://open-codereview.ai/docs/telemetry) — 관측성을 위한 OpenTelemetry 통합
|
|
187
|
-
- [FAQ](https://open-codereview.ai/docs/faq) — 자주 묻는 질문과 문제 해결
|
|
188
|
-
|
|
189
|
-
## Contributing
|
|
190
|
-
|
|
191
|
-
이 프로젝트는 기여해 주신 모든 분들 덕분에 존재합니다. 개발 환경 설정, coding guideline, pull request 제출 방법은 [CONTRIBUTING.ko-KR.md](CONTRIBUTING.ko-KR.md)를 참고하세요.
|
|
192
|
-
|
|
193
|
-
<a href="https://github.com/alibaba/open-code-review/graphs/contributors">
|
|
194
|
-
<img src="https://contrib.rocks/image?repo=alibaba/open-code-review" />
|
|
195
|
-
</a>
|
|
196
|
-
|
|
197
|
-
## License
|
|
198
|
-
|
|
199
|
-
[Apache-2.0](LICENSE) Copyright 2026 Alibaba
|
package/README.ru-RU.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<a href="https://open-codereview.ai">
|
|
3
|
-
<img src="imgs/logo-core.svg" alt="OpenCodeReview logo" width="180" />
|
|
4
|
-
</a>
|
|
5
|
-
<h1>OpenCodeReview</h1>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<p align="center">
|
|
9
|
-
<a href="https://trendshift.io/repositories/41087?utm_source=repository-badge&utm_medium=badge&utm_campaign=badge-repository-41087" target="_blank" rel="noopener noreferrer">
|
|
10
|
-
<img src="https://trendshift.io/api/badge/repositories/41087" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
11
|
-
</a>
|
|
12
|
-
<a href="https://trendshift.io/repositories/41087" target="_blank">
|
|
13
|
-
<img src="https://trendshift.io/api/badge/trendshift/repositories/41087/weekly?language=Go" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
14
|
-
</a>
|
|
15
|
-
</p>
|
|
16
|
-
<p align="center">
|
|
17
|
-
<a href="https://www.npmjs.com/package/@alibaba-group/open-code-review"><img alt="npm" src="https://img.shields.io/npm/v/@alibaba-group/open-code-review?style=flat-square" /></a>
|
|
18
|
-
<a href="https://github.com/alibaba/open-code-review/actions/workflows/release.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/alibaba/open-code-review/release.yml?style=flat-square" /></a>
|
|
19
|
-
<a href="https://github.com/alibaba/open-code-review/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/alibaba/open-code-review?style=flat-square" /></a>
|
|
20
|
-
<a href="https://deepwiki.com/alibaba/open-code-review"><img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg" /></a>
|
|
21
|
-
<a href="https://www.bestpractices.dev/projects/13328"><img alt="OpenSSF Best Practices" src="https://img.shields.io/badge/OpenSSF-Gold-D4AF37?style=flat-square" /></a>
|
|
22
|
-
</p>
|
|
23
|
-
<p align="center">
|
|
24
|
-
<a href="#supported-platforms"><img alt="Windows" src="https://img.shields.io/badge/Windows-supported-blue.svg" /></a>
|
|
25
|
-
<a href="#supported-platforms"><img alt="macOS" src="https://img.shields.io/badge/macOS-supported-blue.svg" /></a>
|
|
26
|
-
<a href="#supported-platforms"><img alt="Linux" src="https://img.shields.io/badge/Linux-supported-blue.svg" /></a>
|
|
27
|
-
<a href="#supported-agents"><img alt="Claude Code" src="https://img.shields.io/badge/Claude_Code-supported-blueviolet.svg" /></a>
|
|
28
|
-
<a href="#supported-agents"><img alt="Codex" src="https://img.shields.io/badge/Codex-supported-blueviolet.svg" /></a>
|
|
29
|
-
<a href="#supported-agents"><img alt="Cursor" src="https://img.shields.io/badge/Cursor-supported-blueviolet.svg" /></a>
|
|
30
|
-
</p>
|
|
31
|
-
<p align="center">
|
|
32
|
-
<a href="README.md">English</a> | <a href="README.zh-CN.md">简体中文</a> | <a href="README.ja-JP.md">日本語</a> | <a href="README.ko-KR.md">한국어</a> | Русский
|
|
33
|
-
</p>
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Что такое Open Code Review?
|
|
38
|
-
|
|
39
|
-
Open Code Review — это CLI-инструмент для код-ревью на основе ИИ. Он появился как внутренний официальный ИИ-ассистент код-ревью Alibaba Group: за последние два года им воспользовались десятки тысяч разработчиков, и он выявил миллионы дефектов в коде. После тщательной проверки в огромных масштабах мы превратили его в open-source-проект для сообщества. Чтобы начать работу, достаточно настроить эндпоинт модели.
|
|
40
|
-
|
|
41
|
-
Инструмент читает git-диффы, отправляет изменённые файлы настраиваемой LLM через агента с поддержкой вызова инструментов (tool use) и генерирует структурированные ревью-комментарии с точностью до строки. Агент может читать полное содержимое файлов, искать по кодовой базе, заглядывать в другие изменённые файлы за контекстом и выполнять глубокое ревью — а не только давать поверхностные замечания по диффу. Помимо ревью диффов, `ocr scan` позволяет проверять файлы целиком — удобно для аудита незнакомой кодовой базы или каталогов без значимого диффа.
|
|
42
|
-
|
|
43
|
-
Подробнее на [официальном сайте](https://open-codereview.ai).
|
|
44
|
-
|
|
45
|
-

|
|
46
|
-
|
|
47
|
-
## Бенчмарк
|
|
48
|
-
|
|
49
|
-
> По сравнению с агентами общего назначения (Claude Code), Open Code Review при той же базовой модели достигает значительно более высоких показателей **Precision** и **F1**, потребляя лишь **~1/9 токенов** и выполняя ревью быстрее. При этом показатель Recall ниже, чем у агентов общего назначения — это осознанный компромисс в пользу точности и минимального шума.
|
|
50
|
-
|
|
51
|
-
Бенчмарк собран на основе реальных код-ревью и включает **50** популярных open-source-репозиториев, **200** реальных пул-реквестов и **10** языков программирования. Разметку из **1 505** дефектов перекрёстно проверили более 80 ведущих инженеров.
|
|
52
|
-
|
|
53
|
-
<a href="https://huggingface.co/datasets/Alibaba-Aone/aacr-bench"><img src="https://huggingface.co/favicon.ico" alt="Hugging Face" width="20" height="20" /> Открыть датасет AACR-Bench на Hugging Face</a>.
|
|
54
|
-
|
|
55
|
-
| Метрика | Что измеряет | Почему важна |
|
|
56
|
-
|---------|-------------|--------------|
|
|
57
|
-
| **F1** | Гармоническое среднее precision и recall | Лучший единый показатель качества ревью |
|
|
58
|
-
| **Precision** | Доля найденных проблем, являющихся реальными дефектами | Выше = меньше ложных срабатываний |
|
|
59
|
-
| **Recall** | Доля реальных дефектов, которые были найдены | Выше = меньше пропущенных проблем |
|
|
60
|
-
| **Avg Time** | Время выполнения одного ревью | Влияет на задержки в CI-пайплайне |
|
|
61
|
-
| **Avg Token** | Суммарное потребление токенов за ревью | Прямо влияет на стоимость API |
|
|
62
|
-
|
|
63
|
-

|
|
64
|
-
|
|
65
|
-
## Почему Open Code Review?
|
|
66
|
-
|
|
67
|
-
### Проблема агентов общего назначения
|
|
68
|
-
|
|
69
|
-
Если вы использовали для код-ревью агентов общего назначения, например Claude Code со Skills, вы наверняка сталкивались с такими проблемами:
|
|
70
|
-
|
|
71
|
-
- **Неполное покрытие** — на крупных ченджсетах агенты склонны «срезать углы»: выборочно проверяют часть файлов и пропускают остальные.
|
|
72
|
-
- **Дрейф позиций** — найденные проблемы часто не совпадают с реальным местом в коде: номера строк и ссылки на файлы «уезжают» от цели.
|
|
73
|
-
- **Нестабильное качество** — Skills, управляемые естественным языком, трудно отлаживать, и качество ревью заметно колеблется при небольших изменениях промпта.
|
|
74
|
-
|
|
75
|
-
Первопричина: чисто языковая архитектура не накладывает жёстких ограничений на процесс ревью.
|
|
76
|
-
|
|
77
|
-
### Ключевая идея: детерминированная инженерия × агент
|
|
78
|
-
|
|
79
|
-
Ключевая философия Open Code Review — сочетать детерминированную инженерию и агента так, чтобы каждый занимался тем, что у него получается лучше всего.
|
|
80
|
-
|
|
81
|
-
**Детерминированная инженерия — жёсткие гарантии**
|
|
82
|
-
|
|
83
|
-
Для тех шагов ревью, где *нельзя ошибаться*, корректность гарантирует инженерная логика, а не языковая модель:
|
|
84
|
-
|
|
85
|
-
- **Точный отбор файлов** — точно определяет, какие файлы нуждаются в ревью, а какие следует отфильтровать, гарантируя, что ни одно важное изменение не будет упущено.
|
|
86
|
-
- **Группировка связанных файлов** — объединяет связанные файлы в одну единицу ревью (например, `message_en.properties` и `message_zh.properties`). Каждая группа обрабатывается отдельным субагентом в изолированном контексте. Подход «разделяй и властвуй» сохраняет стабильность при очень больших изменениях и позволяет выполнять ревью параллельно.
|
|
87
|
-
- **Точное сопоставление правил** — подбирает правила ревью с учётом особенностей каждого файла, удерживая внимание модели на задаче и устраняя лишний информационный шум. Сопоставление по шаблонам работает стабильнее и предсказуемее, чем управление правилами только на естественном языке.
|
|
88
|
-
- **Внешние модули позиционирования и рефлексии** — независимые модули позиционирования комментариев и рефлексии над комментариями системно повышают точность как расположения, так и содержания замечаний ИИ.
|
|
89
|
-
|
|
90
|
-
**Агент — динамические решения**
|
|
91
|
-
|
|
92
|
-
Сильные стороны агента сосредоточены там, где они важнее всего, — в динамических решениях и динамическом доборе контекста:
|
|
93
|
-
|
|
94
|
-
- **Промпты, заточенные под сценарий** — шаблоны промптов, глубоко оптимизированные под код-ревью: выше качество при меньшем расходе токенов.
|
|
95
|
-
- **Специализированный набор инструментов** — создан на основе анализа вызовов инструментов в реальных проектах: частоты вызовов, доли повторных обращений к каждому инструменту и влияния новых инструментов на всю цепочку. Такой набор работает при код-ревью стабильнее и предсказуемее, чем универсальные инструменты агента.
|
|
96
|
-
|
|
97
|
-
## Как использовать
|
|
98
|
-
|
|
99
|
-
### Предварительные требования
|
|
100
|
-
|
|
101
|
-
- **Git >= 2.41** — Open Code Review использует Git для генерации diff, поиска по коду и операций с репозиторием.
|
|
102
|
-
|
|
103
|
-
### CLI
|
|
104
|
-
|
|
105
|
-
#### Установка
|
|
106
|
-
|
|
107
|
-
```bash
|
|
108
|
-
npm install -g @alibaba-group/open-code-review
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
После установки команда `ocr` доступна глобально.
|
|
112
|
-
|
|
113
|
-
Другие способы установки (скрипт установки, бинарный файл из GitHub Release, сборка из исходников) описаны в [руководстве по установке](https://open-codereview.ai/docs/installation).
|
|
114
|
-
|
|
115
|
-
#### Быстрый старт
|
|
116
|
-
|
|
117
|
-
**1. Настройте LLM**
|
|
118
|
-
|
|
119
|
-
Перед запуском ревью необходимо настроить LLM, если только вы не используете [режим делегирования](https://open-codereview.ai/docs/delegate).
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
ocr config provider # Выбрать встроенного провайдера или добавить пользовательский
|
|
123
|
-
ocr config model # Выбрать модель для активного провайдера
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-

|
|
127
|
-
|
|
128
|
-
Интерактивный UI проведёт вас через выбор провайдера, ввод API-ключа и настройку модели, после чего автоматически проверит подключение.
|
|
129
|
-
|
|
130
|
-
Настройка через CLI, переменные окружения, пользовательские провайдеры и другие расширенные параметры описаны в [руководстве по конфигурации](https://open-codereview.ai/docs/configuration).
|
|
131
|
-
|
|
132
|
-
**2. Запустите ревью**
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
cd your-project
|
|
136
|
-
|
|
137
|
-
# Режим рабочей копии — ревью всех staged, unstaged и untracked изменений
|
|
138
|
-
ocr review
|
|
139
|
-
|
|
140
|
-
# Диапазон веток — просматривает изменения feature-branch с момента её отделения от main (режим merge-base)
|
|
141
|
-
ocr review --from main --to feature-branch
|
|
142
|
-
|
|
143
|
-
# Один коммит
|
|
144
|
-
ocr review --commit abc123
|
|
145
|
-
|
|
146
|
-
# Возобновить прерванное ревью диапазона или одного коммита
|
|
147
|
-
ocr session list
|
|
148
|
-
ocr review --from main --to feature-branch --resume <session-id>
|
|
149
|
-
|
|
150
|
-
# Полнофайловое сканирование — ревью целых файлов вместо диффа (история git не нужна)
|
|
151
|
-
ocr scan # сканировать весь репозиторий
|
|
152
|
-
ocr scan --path internal/agent # сканировать каталог или конкретные файлы
|
|
153
|
-
ocr scan --resume <session-id> # возобновить прерванное полнофайловое сканирование
|
|
154
|
-
|
|
155
|
-
# Сохранить результаты в файл (рекомендуется для хост-агентов ИИ)
|
|
156
|
-
ocr review --format json --output result.json
|
|
157
|
-
|
|
158
|
-
# Режим делегирования — ИИ-агент сам выполняет ревью
|
|
159
|
-
# OCR отвечает за выбор файлов и разрешение правил; настройка LLM не требуется
|
|
160
|
-
ocr delegate preview
|
|
161
|
-
ocr delegate rule src/main.go src/handler.go
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
## Документация
|
|
165
|
-
|
|
166
|
-
Полная документация доступна на **[open-codereview.ai/docs](https://open-codereview.ai/docs)**:
|
|
167
|
-
|
|
168
|
-
- [Быстрый старт](https://open-codereview.ai/docs/quickstart) — установка и запуск первого ревью
|
|
169
|
-
- [Установка](https://open-codereview.ai/docs/installation) — все платформы и менеджеры пакетов
|
|
170
|
-
- [Справочник CLI](https://open-codereview.ai/docs/cli-reference) — все команды и флаги
|
|
171
|
-
- [Правила ревью](https://open-codereview.ai/docs/review-rules) — кастомизация правил ревью, фильтрация и таргетинг по путям
|
|
172
|
-
- [Конфигурация](https://open-codereview.ai/docs/configuration) — ключи конфигурации и переменные окружения
|
|
173
|
-
- [MCP-сервер](https://open-codereview.ai/docs/mcp) — расширение агента ревью внешними инструментами
|
|
174
|
-
- Интеграции с кодинг-агентами — выберите используемую платформу
|
|
175
|
-
- [Claude Code](plugins/open-code-review/README.md#claude-code) — установка плагина со slash-командами для ревью
|
|
176
|
-
- [Codex](plugins/open-code-review/README.md#codex) — установка плагина с вызываемыми навыками ревью
|
|
177
|
-
- [Cursor](plugins/open-code-review/README.md#cursor) — установка плагина с переносимыми навыками ревью
|
|
178
|
-
- [OpenCode](plugins/open-code-review/opencode/README.md) — установка нативных инструментов ревью и slash-команд
|
|
179
|
-
- [QCA Forward](plugins/open-code-review/qca/README.md) — запуск режима делегирования с хост-моделью QCA и готовым к публикации шаблоном
|
|
180
|
-
- [Агенты с поддержкой Skill](https://open-codereview.ai/docs/agent-skill) — установка переносимого навыка агента
|
|
181
|
-
- Режимы выполнения ревью — после интеграции выберите, какая LLM выполняет ревью
|
|
182
|
-
- [По умолчанию (под управлением OCR)](https://open-codereview.ai/docs/configuration) — OCR выполняет ревью с помощью настроенной LLM
|
|
183
|
-
- [Режим делегирования](https://open-codereview.ai/docs/delegate) — кодинг-агент выполняет ревью с помощью собственной LLM; API-ключ для OCR не требуется
|
|
184
|
-
- [Интеграция с CI/CD](https://open-codereview.ai/docs/cicd) — GitHub Actions, GitLab CI, GitFlic CI и Gerrit
|
|
185
|
-
- [Просмотр сессий](https://open-codereview.ai/docs/viewer) — просмотр и воспроизведение сессий ревью в браузере, отметка комментариев как исправленных/игнорируемых и их скрытие
|
|
186
|
-
- [Телеметрия](https://open-codereview.ai/docs/telemetry) — интеграция с OpenTelemetry для наблюдаемости
|
|
187
|
-
- [FAQ](https://open-codereview.ai/docs/faq) — частые вопросы и устранение неполадок
|
|
188
|
-
|
|
189
|
-
## Участие в разработке
|
|
190
|
-
|
|
191
|
-
Этот проект существует благодаря всем, кто вносит свой вклад. В [CONTRIBUTING.ru-RU.md](CONTRIBUTING.ru-RU.md) описаны настройка окружения разработки, рекомендации по коду и порядок отправки пул-реквестов.
|
|
192
|
-
|
|
193
|
-
<a href="https://github.com/alibaba/open-code-review/graphs/contributors">
|
|
194
|
-
<img src="https://contrib.rocks/image?repo=alibaba/open-code-review" />
|
|
195
|
-
</a>
|
|
196
|
-
|
|
197
|
-
## Лицензия
|
|
198
|
-
|
|
199
|
-
[Apache-2.0](LICENSE) — Copyright 2026 Alibaba
|
package/README.zh-CN.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<a href="https://open-codereview.ai">
|
|
3
|
-
<img src="imgs/logo-core.svg" alt="OpenCodeReview logo" width="180" />
|
|
4
|
-
</a>
|
|
5
|
-
<h1>OpenCodeReview</h1>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<p align="center">
|
|
9
|
-
<a href="https://trendshift.io/repositories/41087?utm_source=repository-badge&utm_medium=badge&utm_campaign=badge-repository-41087" target="_blank" rel="noopener noreferrer">
|
|
10
|
-
<img src="https://trendshift.io/api/badge/repositories/41087" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
11
|
-
</a>
|
|
12
|
-
<a href="https://trendshift.io/repositories/41087" target="_blank">
|
|
13
|
-
<img src="https://trendshift.io/api/badge/trendshift/repositories/41087/weekly?language=Go" alt="alibaba%2Fopen-code-review | Trendshift" style="width: 280px; height: 60px;" width="280" height="60" />
|
|
14
|
-
</a>
|
|
15
|
-
</p>
|
|
16
|
-
<p align="center">
|
|
17
|
-
<a href="https://www.npmjs.com/package/@alibaba-group/open-code-review"><img alt="npm" src="https://img.shields.io/npm/v/@alibaba-group/open-code-review?style=flat-square" /></a>
|
|
18
|
-
<a href="https://github.com/alibaba/open-code-review/actions/workflows/release.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/alibaba/open-code-review/release.yml?style=flat-square" /></a>
|
|
19
|
-
<a href="https://github.com/alibaba/open-code-review/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/alibaba/open-code-review?style=flat-square" /></a>
|
|
20
|
-
<a href="https://deepwiki.com/alibaba/open-code-review"><img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg" /></a>
|
|
21
|
-
<a href="https://www.bestpractices.dev/projects/13328"><img alt="OpenSSF Best Practices" src="https://img.shields.io/badge/OpenSSF-Gold-D4AF37?style=flat-square" /></a>
|
|
22
|
-
</p>
|
|
23
|
-
<p align="center">
|
|
24
|
-
<a href="#supported-platforms"><img alt="Windows" src="https://img.shields.io/badge/Windows-supported-blue.svg" /></a>
|
|
25
|
-
<a href="#supported-platforms"><img alt="macOS" src="https://img.shields.io/badge/macOS-supported-blue.svg" /></a>
|
|
26
|
-
<a href="#supported-platforms"><img alt="Linux" src="https://img.shields.io/badge/Linux-supported-blue.svg" /></a>
|
|
27
|
-
<a href="#supported-agents"><img alt="Claude Code" src="https://img.shields.io/badge/Claude_Code-supported-blueviolet.svg" /></a>
|
|
28
|
-
<a href="#supported-agents"><img alt="Codex" src="https://img.shields.io/badge/Codex-supported-blueviolet.svg" /></a>
|
|
29
|
-
<a href="#supported-agents"><img alt="Cursor" src="https://img.shields.io/badge/Cursor-supported-blueviolet.svg" /></a>
|
|
30
|
-
</p>
|
|
31
|
-
<p align="center">
|
|
32
|
-
<a href="README.md">English</a> | 简体中文 | <a href="README.ja-JP.md">日本語</a> | <a href="README.ko-KR.md">한국어</a> | <a href="README.ru-RU.md">Русский</a>
|
|
33
|
-
</p>
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Open Code Review 是什么?
|
|
38
|
-
|
|
39
|
-
Open Code Review 是一款 AI 驱动的代码审查 CLI 工具。它的前身是阿里集团内部官方 AI 代码审查助手,过去两年在内部服务了数万开发者,识别了数百万个代码缺陷。经过大规模充分验证后,我们将其孵化为开源项目,对社区开放。只需配置一个模型端点即可使用。
|
|
40
|
-
|
|
41
|
-
它读取 Git diff,通过具备工具调用能力的 Agent 将变更文件发送至可配置的 LLM,生成具有行级精度的结构化审查意见。Agent 可以读取完整文件内容、搜索代码库、检查其他变更文件以获取上下文,从而进行深度审查——而非仅停留在表面的 diff 反馈。除了 diff 审查,`ocr scan` 可以审查整个文件,适用于审计不熟悉的代码库或没有有意义 diff 的目录。
|
|
42
|
-
|
|
43
|
-
访问[官方网站](https://open-codereview.ai)了解更多信息。
|
|
44
|
-
|
|
45
|
-

|
|
46
|
-
|
|
47
|
-
## 基准测试
|
|
48
|
-
|
|
49
|
-
> 相比通用 Agent(Claude Code),Open Code Review 在相同底层模型下取得了显著更高的 **准确率(Precision)** 与 **F1 综合得分**,同时仅消耗 **约 1/9 的 token**、审查更快。但召回率(Recall)低于通用 Agent——这是以精准度换取低噪声的设计取舍。
|
|
50
|
-
|
|
51
|
-
基于真实场景的代码审查基准测试,从 **50** 个热门开源仓库中精选 **200** 个真实的 Pull Request,覆盖 **10** 种编程语言——由 80+ 位资深工程师交叉标注验证(共 **1,505** 个标注缺陷)。
|
|
52
|
-
|
|
53
|
-
<a href="https://huggingface.co/datasets/Alibaba-Aone/aacr-bench"><img src="https://huggingface.co/favicon.ico" alt="Hugging Face" width="20" height="20" /> 在 Hugging Face 上探索 AACR-Bench 数据集</a>。
|
|
54
|
-
|
|
55
|
-
| 指标 | 含义 | 为什么重要 |
|
|
56
|
-
|------|------|-----------|
|
|
57
|
-
| **F1** | 准确率与召回率的调和均值 | 综合衡量审查质量的最佳单一指标 |
|
|
58
|
-
| **准确率 (Precision)** | 报告的问题中真正有效的比例 | 越高 = 误报越少,减少人工确认成本 |
|
|
59
|
-
| **召回率 (Recall)** | 真实缺陷中被发现的比例 | 越高 = 漏报越少,更多问题不会遗漏 |
|
|
60
|
-
| **平均耗时 (Avg Time)** | 每次审查的实际耗时 | 决定 CI 流水线的等待时间 |
|
|
61
|
-
| **平均 Token (Avg Token)** | 每次审查消耗的总 token 数 | 直接影响 API 使用成本 |
|
|
62
|
-
|
|
63
|
-

|
|
64
|
-
|
|
65
|
-
## 为什么选择 Open Code Review?
|
|
66
|
-
|
|
67
|
-
### 通用 Agent 的局限
|
|
68
|
-
|
|
69
|
-
如果你深度用过 Claude Code 等通用 Agent + Skills 方案做代码审查,可能对以下问题深有同感:
|
|
70
|
-
|
|
71
|
-
- **覆盖不全** —— 变更较大时,Agent 倾向于"偷懒",选择性地审查部分文件,导致遗漏。
|
|
72
|
-
- **位置漂移** —— 报告的问题与实际代码位置常常对不上,出现行号或文件偏移。
|
|
73
|
-
- **效果不稳定** —— 基于自然语言驱动的 Skills 难以调试,审查质量因提示词的细微差异而大幅波动。
|
|
74
|
-
|
|
75
|
-
这些问题的根源在于:纯语言驱动的架构缺乏对审查流程的强约束。
|
|
76
|
-
|
|
77
|
-
### 核心设计:确定性工程 × Agent 混合驱动
|
|
78
|
-
|
|
79
|
-
Open Code Review 的核心设计理念是将确定性工程与 Agent 结合,各司其职。
|
|
80
|
-
|
|
81
|
-
**确定性工程——负责强约束**
|
|
82
|
-
|
|
83
|
-
对代码审查场景中"不能出错"的环节,由工程逻辑而非语言模型来保证:
|
|
84
|
-
|
|
85
|
-
- **精准的文件筛选** —— 明确哪些文件需要审查、哪些应当过滤,确保真正重要的改动一个不漏。
|
|
86
|
-
- **智能的文件打包** —— 将关联文件归并为同一审查单元(例如 `message_en.properties` 与 `message_zh.properties` 会被打包在一起)。每个包会作为 sub-agent 进行任务,它们之间的上下文是隔离的——这一分治策略在超大变更场景下表现更为稳定,同时天然支持并发审查。
|
|
87
|
-
- **精细化规则匹配** —— 针对不同文件的特征,匹配对应的审查规则,确保模型的注意力足够聚焦,从源头规避信息噪声的干扰。相比纯语言驱动的规则引导,基于模板引擎的规则匹配行为更稳定、结果更可预期。
|
|
88
|
-
- **外挂的定位与反思组件** —— 独立的评论定位模块与评论反思模块,系统性地提升 AI 反馈的位置准确性与内容准确性。
|
|
89
|
-
|
|
90
|
-
**Agent——负责动态决策**
|
|
91
|
-
|
|
92
|
-
将 Agent 的优势集中发挥在它真正擅长的地方——动态决策、动态召回上下文:
|
|
93
|
-
|
|
94
|
-
- **场景化提示词调优** —— 针对代码审查场景深度优化提示词模板,在提升效果的同时有效降低 Token 消耗。
|
|
95
|
-
- **场景化工具集沉淀** —— 基于对大量线上数据中工具调用轨迹的深入分析,包括不同工具的调用频率分布、单一工具的重复调用率、新增工具对整体调用链路的影响等多维度分析,从而对通用 Agent 工具集进行取舍与拆分,最终沉淀出一套在代码审查场景下效果更稳定、行为更可预期的专属工具集。
|
|
96
|
-
|
|
97
|
-
## 如何使用
|
|
98
|
-
|
|
99
|
-
### 前置条件
|
|
100
|
-
|
|
101
|
-
- **Git >= 2.41** — Open Code Review 依赖 Git 进行 diff 生成、代码搜索和仓库操作。
|
|
102
|
-
|
|
103
|
-
### CLI
|
|
104
|
-
|
|
105
|
-
#### 安装
|
|
106
|
-
|
|
107
|
-
```bash
|
|
108
|
-
npm install -g @alibaba-group/open-code-review
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
安装后,`ocr` 命令即可全局使用。
|
|
112
|
-
|
|
113
|
-
其他安装方式(安装脚本、GitHub Release 二进制、源码构建),详见[安装指南](https://open-codereview.ai/docs/installation)。
|
|
114
|
-
|
|
115
|
-
#### 快速开始
|
|
116
|
-
|
|
117
|
-
**1. 配置 LLM**
|
|
118
|
-
|
|
119
|
-
在审查代码之前,必须先配置 LLM。除非你使用[委托模式](https://open-codereview.ai/docs/delegate)。
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
ocr config provider # 选择内置供应商或添加自定义供应商
|
|
123
|
-
ocr config model # 为当前供应商选择模型
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-

|
|
127
|
-
|
|
128
|
-
交互式界面会引导你完成供应商选择、API Key 输入和模型配置,完成后自动测试连通性。
|
|
129
|
-
|
|
130
|
-
命令行设置、环境变量、自定义供应商等高级配置,详见[配置指南](https://open-codereview.ai/docs/configuration)。
|
|
131
|
-
|
|
132
|
-
**2. 开始审查**
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
cd your-project
|
|
136
|
-
|
|
137
|
-
# 工作区模式 —— 审查所有暂存、未暂存和未跟踪的变更
|
|
138
|
-
ocr review
|
|
139
|
-
|
|
140
|
-
# 分支范围 —— 评审 feature-branch 与 main 分叉后的变更(合并基准模式)
|
|
141
|
-
ocr review --from main --to feature-branch
|
|
142
|
-
|
|
143
|
-
# 单个提交
|
|
144
|
-
ocr review --commit abc123
|
|
145
|
-
|
|
146
|
-
# 恢复中断的区间或单 commit 评审
|
|
147
|
-
ocr session list
|
|
148
|
-
ocr review --from main --to feature-branch --resume <session-id>
|
|
149
|
-
|
|
150
|
-
# 全量文件扫描 —— 审查整个文件而非 diff(无需 git 历史)
|
|
151
|
-
ocr scan # 扫描整个仓库
|
|
152
|
-
ocr scan --path internal/agent # 扫描指定目录或文件
|
|
153
|
-
ocr scan --resume <session-id> # 恢复中断的全量文件扫描
|
|
154
|
-
|
|
155
|
-
# 将结果输出到文件(AI 宿主 agent 推荐)
|
|
156
|
-
ocr review --format json --output result.json
|
|
157
|
-
|
|
158
|
-
# 委托模式 — 让你的 AI 编程 agent 自己执行评审
|
|
159
|
-
# OCR 负责文件选择和规则解析;无需配置 LLM
|
|
160
|
-
ocr delegate preview
|
|
161
|
-
ocr delegate rule src/main.go src/handler.go
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
## 文档
|
|
165
|
-
|
|
166
|
-
完整文档见 **[open-codereview.ai/docs](https://open-codereview.ai/docs)**:
|
|
167
|
-
|
|
168
|
-
- [快速开始](https://open-codereview.ai/docs/quickstart) —— 安装并运行你的第一次评审
|
|
169
|
-
- [安装](https://open-codereview.ai/docs/installation) —— 覆盖各平台与包管理器
|
|
170
|
-
- [CLI 参考](https://open-codereview.ai/docs/cli-reference) —— 所有命令与参数
|
|
171
|
-
- [评审规则](https://open-codereview.ai/docs/review-rules) —— 深度定制规则进行评审,过滤路径、指定路径等
|
|
172
|
-
- [配置](https://open-codereview.ai/docs/configuration) —— 配置项与环境变量
|
|
173
|
-
- [MCP 服务器](https://open-codereview.ai/docs/mcp) —— 用外部工具扩展评审 agent
|
|
174
|
-
- 编程 Agent 集成 —— 选择你使用的平台
|
|
175
|
-
- [Claude Code](plugins/open-code-review/README.md#claude-code) —— 安装包含评审斜杠命令的插件
|
|
176
|
-
- [Codex](plugins/open-code-review/README.md#codex) —— 安装包含可调用评审 Skill 的插件
|
|
177
|
-
- [Cursor](plugins/open-code-review/README.md#cursor) —— 安装包含可移植评审 Skill 的插件
|
|
178
|
-
- [OpenCode](plugins/open-code-review/opencode/README.md) —— 安装原生评审工具和斜杠命令
|
|
179
|
-
- [QCA Forward](plugins/open-code-review/qca/README.md) —— 使用 QCA 宿主模型运行委托模式,并提供可发布的模板
|
|
180
|
-
- [兼容 Skill 的 Agent](https://open-codereview.ai/docs/agent-skill) —— 安装可移植的 Agent Skill
|
|
181
|
-
- 评审执行模式 —— 完成集成后,选择由哪个 LLM 执行评审
|
|
182
|
-
- [默认模式(OCR 驱动)](https://open-codereview.ai/docs/configuration) —— OCR 使用其已配置的 LLM 执行评审
|
|
183
|
-
- [委托模式](https://open-codereview.ai/docs/delegate) —— 编程 Agent 使用自身的 LLM 执行评审;无需 OCR API Key
|
|
184
|
-
- [CI/CD 集成](https://open-codereview.ai/docs/cicd) —— 支持 GitHub Actions、GitLab CI、GitFlic CI、Gerrit 集成
|
|
185
|
-
- [会话查看器](https://open-codereview.ai/docs/viewer) —— 在浏览器中浏览和回放评审会话,可将评审意见标记为已修复/已忽略并在处理时隐藏
|
|
186
|
-
- [遥测](https://open-codereview.ai/docs/telemetry) —— OpenTelemetry 集成,用于可观测性
|
|
187
|
-
- [FAQ](https://open-codereview.ai/docs/faq) —— 常见问题与故障排查
|
|
188
|
-
|
|
189
|
-
## 贡献
|
|
190
|
-
|
|
191
|
-
感谢所有为本项目做出贡献的人。参见 [CONTRIBUTING.zh-CN.md](CONTRIBUTING.zh-CN.md) 了解开发环境搭建、编码规范以及如何提交 Pull Request。
|
|
192
|
-
|
|
193
|
-
<a href="https://github.com/alibaba/open-code-review/graphs/contributors">
|
|
194
|
-
<img src="https://contrib.rocks/image?repo=alibaba/open-code-review" />
|
|
195
|
-
</a>
|
|
196
|
-
|
|
197
|
-
## 许可证
|
|
198
|
-
|
|
199
|
-
[Apache-2.0](LICENSE) — Copyright 2026 Alibaba
|