@alibaba-group/open-code-review 1.7.9 → 1.7.11

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.ja-JP.md CHANGED
@@ -219,7 +219,7 @@ ocr config set custom_providers.my-gateway.api_key your-api-key-here
219
219
  ocr config set custom_providers.my-gateway.model gpt-4o
220
220
  ```
221
221
 
222
- > カスタムプロバイダーでは`url`と`protocol`が必須です。サポートされるプロトコル:`anthropic`、`openai`。
222
+ > カスタムプロバイダーでは`url`と`protocol`が必須です。サポートされるプロトコル:`anthropic`、`openai`、`openai-responses`。
223
223
 
224
224
  オプション設定:
225
225
 
@@ -253,6 +253,17 @@ export OCR_LLM_MODEL=claude-opus-4-6
253
253
  export OCR_USE_ANTHROPIC=true
254
254
  ```
255
255
 
256
+ OpenAI Responses API(GPT-5.x / o-シリーズモデル)を使うには、`OCR_USE_ANTHROPIC` の代わりに `OCR_LLM_PROTOCOL` を設定してください:
257
+
258
+ ```bash
259
+ export OCR_LLM_URL=https://api.openai.com/v1
260
+ export OCR_LLM_TOKEN=your-openai-key
261
+ export OCR_LLM_MODEL=gpt-5.4
262
+ export OCR_LLM_PROTOCOL=openai-responses
263
+ ```
264
+
265
+ `OCR_LLM_PROTOCOL` は `anthropic`、`openai`、`openai-responses`を受け付け、`OCR_USE_ANTHROPIC` と同時に設定した場合は優先されます。
266
+
256
267
  Claude Codeの環境変数(`ANTHROPIC_BASE_URL`、`ANTHROPIC_AUTH_TOKEN`、`ANTHROPIC_MODEL`)とも互換性があり、`~/.zshrc` / `~/.bashrc`からこれらのexportをパースします。
257
268
 
258
269
  > **CC-Switchユーザー向けの注意**: [CC-Switch](https://github.com/farion1231/cc-switch)を[ルーティングサービス](https://www.ccswitch.io/en/docs?section=proxy&item=service)有効で使用している場合、プロバイダーの`url`をCC-Switchのプロキシアドレスに向けることで、追加設定なしで利用できます:
@@ -287,6 +298,11 @@ ocr review --from main --to feature-branch --resume <session-id>
287
298
  # フルファイルスキャン — diffではなくファイル全体をレビュー(git履歴不要)
288
299
  ocr scan # リポジトリ全体をスキャン
289
300
  ocr scan --path internal/agent # ディレクトリまたは特定のファイルをスキャン
301
+
302
+ # デリゲートモード — AI コーディングエージェントが自らレビューを実行
303
+ # OCR はファイル選択とルール解決を担当。LLM 設定不要
304
+ ocr delegate preview
305
+ ocr delegate rule src/main.go src/handler.go
290
306
  ```
291
307
 
292
308
  ### コーディングエージェントとの統合
@@ -303,6 +319,14 @@ npx skills add alibaba/open-code-review --skill open-code-review
303
319
 
304
320
  これにより、[skillsレジストリ](skills/open-code-review/SKILL.md)から`open-code-review`スキルがインストールされ、コーディングエージェントにコードレビューのための`ocr`の呼び出し方、優先度による問題の分類、必要に応じた修正の適用を教えます。
305
321
 
322
+ **デリゲートモード** — コーディングエージェント自身がレビューを実行する場合(OCR はファイル選択とルール解決のみを担当、OCR 側の LLM 設定不要):
323
+
324
+ ```bash
325
+ npx skills add alibaba/open-code-review --skill open-code-review-delegate
326
+ ```
327
+
328
+ 詳細は [skills/open-code-review-delegate/SKILL.md](skills/open-code-review-delegate/SKILL.md) を参照。
329
+
306
330
  #### オプション2: Claude Codeプラグインとしてインストール
307
331
 
308
332
  [Claude Code](https://docs.anthropic.com/en/docs/claude-code)の場合、Claude Code内で以下のコマンドを実行してコマンドプラグインをインストールします:
@@ -312,7 +336,7 @@ npx skills add alibaba/open-code-review --skill open-code-review
312
336
  /plugin install open-code-review@open-code-review
313
337
  ```
314
338
 
315
- これにより`/open-code-review:review`スラッシュコマンドが登録され、OCRを実行して問題を自動的にフィルタリング・修正します。
339
+ これにより`/open-code-review:review`スラッシュコマンドが登録され、OCRを実行して問題を自動的にフィルタリング・修正します。また、`/open-code-review:delegate-review` デリゲートモードコマンドも提供されます(エージェントが自身の能力でレビューを実行し、OCR はファイル選択とルール解決を担当)。
316
340
 
317
341
  #### オプション3: Codexプラグインとしてインストール
318
342
 
@@ -402,7 +426,21 @@ curl -o ~/.claude/commands/open-code-review.md \
402
426
  https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/review.md
403
427
  ```
404
428
 
405
- > **前提条件**: すべての統合方法において、`ocr` CLIのインストールとLLMの設定が必要です。上記の[インストール](#インストール)と[LLMの設定](#1-llmの設定)を参照してください。
429
+ デリゲートモード(OCR 側の LLM 設定不要):
430
+
431
+ ```bash
432
+ # プロジェクトレベル
433
+ mkdir -p .claude/commands
434
+ curl -o .claude/commands/open-code-review-delegate.md \
435
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
436
+
437
+ # ユーザーレベル
438
+ mkdir -p ~/.claude/commands
439
+ curl -o ~/.claude/commands/open-code-review-delegate.md \
440
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
441
+ ```
442
+
443
+ > **前提条件**:すべての統合方法には `ocr` CLI のインストールが必要です。標準モードではさらに LLM の設定が必要です — 上記の[インストール](#インストール)と[LLM の設定](#1-llm-の設定)を参照。デリゲートモードでは OCR 側の LLM 設定は**不要**です。
406
444
 
407
445
  ### CI/CD統合
408
446
 
@@ -455,6 +493,8 @@ GitHub 向けに、本リポジトリはリポジトリルートにすぐ使え
455
493
  |---------|-------|-------------|
456
494
  | `ocr review` | `ocr r` | diffベースのコードレビューを開始 |
457
495
  | `ocr scan` | `ocr s` | ファイル全体をレビュー(diff不要) |
496
+ | `ocr delegate preview` | `ocr d preview` | レビュー対象ファイル一覧をモード/参照メタデータ付きで出力(LLM 不要) |
497
+ | `ocr delegate rule <path...>` | `ocr d rule` | 内容別にグループ化されたレビュールールを出力(LLM 不要) |
458
498
  | `ocr rules check <file>` | — | ファイルパスに適用されるレビュールールをプレビュー |
459
499
  | `ocr config provider` | — | 対話的プロバイダーセットアップ(ビルトイン、カスタム、手動) |
460
500
  | `ocr config model` | — | アクティブなプロバイダーの対話的モデル選択 |
@@ -546,6 +586,31 @@ ocr review --commit abc123 --resume <session-id>
546
586
 
547
587
  各実行前に、`ocr scan` はおおまかなトークンコスト見積もりを表示します。`--preview` でまずファイルリストを確認し、`--max-tokens-budget` で大規模リポジトリの支出を制限できます。
548
588
 
589
+ ### `ocr delegate` フラグ
590
+
591
+ `ocr delegate` は AI コーディングエージェント向けのデリゲートモードです。LLM を呼び出さずに
592
+ 確定的なファイル選択とルール解決を提供します — 実際のレビューはホストエージェントが
593
+ 自身の能力で実行します。
594
+
595
+ | サブコマンド | 説明 |
596
+ |-------------|------|
597
+ | `ocr delegate preview` | レビュー対象ファイル一覧をモード/参照メタデータ付きで出力 |
598
+ | `ocr delegate rule <path...>` | 内容別にグループ化されたレビュールールを出力 |
599
+
600
+ 両サブコマンドは以下のフラグを共有します:
601
+
602
+ | フラグ | 短縮形 | デフォルト | 説明 |
603
+ |--------|--------|-----------|------|
604
+ | `--repo` | — | カレントディレクトリ | Git リポジトリルート |
605
+ | `--from` | — | — | ソース参照(例:`main`) |
606
+ | `--to` | — | — | ターゲット参照(例:`feature-branch`) |
607
+ | `--commit` | `-c` | — | 単一コミット |
608
+ | `--exclude` | — | — | カンマ区切りの gitignore スタイルの除外パターン |
609
+ | `--rule` | — | — | カスタム JSON レビュールールのパス |
610
+ | `--background` | `-b` | — | オプションの要件/ビジネスコンテキスト |
611
+ | `--background-file` | `-B` | — | Markdown ファイルからのビジネスコンテキスト |
612
+ | `--max-git-procs` | — | `16` | 最大並行 git サブプロセス数 |
613
+
549
614
  ## 例
550
615
 
551
616
  ```bash
@@ -611,6 +676,12 @@ ocr scan --repo /path/to/plain/dir --format json
611
676
  # 最速スキャン:プランニング、重複排除、プロジェクトサマリーをスキップ
612
677
  ocr scan --no-plan --no-dedup --no-summary
613
678
 
679
+ # デリゲートモード — AI エージェントがレビューを実行(LLM 設定不要)
680
+ ocr delegate preview
681
+ ocr delegate preview --from main --to feature-branch
682
+ ocr delegate preview --commit abc123
683
+ ocr delegate rule internal/handler.go internal/service.go cmd/main.go
684
+
614
685
  # ブラウザでレビューセッション履歴を表示
615
686
  ocr viewer
616
687
  ocr viewer --addr :3000
@@ -752,7 +823,7 @@ OCRは4層の優先度チェーンを使ってレビュールールを解決し
752
823
  | `provider` | string | `anthropic` \| `openai` \| `dashscope` \| `deepseek` \| `z-ai` |
753
824
  | `providers.<name>.api_key` | string | プロバイダー固有のAPIキー |
754
825
  | `providers.<name>.url` | string | プロバイダーのベースURLオーバーライド |
755
- | `providers.<name>.protocol` | string | `anthropic` \| `openai` |
826
+ | `providers.<name>.protocol` | string | `anthropic` \| `openai` \| `openai-responses` |
756
827
  | `providers.<name>.model` | string | プロバイダーのモデル名 |
757
828
  | `providers.<name>.models` | array | 対話的選択に使う任意のプロバイダーモデル一覧 |
758
829
  | `providers.<name>.auth_header` | string | `x-api-key` \| `authorization` |
@@ -767,7 +838,8 @@ OCRは4層の優先度チェーンを使ってレビュールールを解決し
767
838
  | `llm.timeout_sec` | integer | リクエストごとのHTTPタイムアウト(秒)、デフォルト `300` |
768
839
  | `llm.extra_headers` | string | カンマ区切りの `key=value` HTTPヘッダー |
769
840
  | `llm.model` | string | `claude-opus-4-6` |
770
- | `llm.use_anthropic` | boolean | `true` \| `false` |
841
+ | `llm.protocol` | string | `anthropic` \| `openai` \| `openai-responses`;`llm.use_anthropic` より優先 |
842
+ | `llm.use_anthropic` | boolean | `true` \| `false`(レガシー;`llm.protocol` を推奨) |
771
843
  | `mcp_servers.<name>.command` | string | MCPサーバーを起動するコマンド |
772
844
  | `mcp_servers.<name>.args` | array | MCPサーバーのコマンドライン引数 |
773
845
  | `mcp_servers.<name>.env` | array | 環境変数(`KEY=VALUE`形式) |
@@ -827,9 +899,9 @@ ocr config set mcp_servers.codegraph.setup 'codegraph init && codegraph index'
827
899
  | `OCR_LLM_AUTH_HEADER` | Anthropic認証ヘッダー(`x-api-key`または`authorization`) |
828
900
  | `OCR_LLM_EXTRA_HEADERS` | カンマ区切りの `key=value` HTTPヘッダー |
829
901
  | `OCR_LLM_MODEL` | モデル名 |
902
+ | `OCR_LLM_PROTOCOL` | プロトコル:`anthropic` \| `openai` \| `openai-responses`;`OCR_USE_ANTHROPIC` より優先 |
830
903
  | `OCR_LLM_TIMEOUT` | リクエストごとのHTTPタイムアウト(秒)、設定ファイルの `timeout_sec` を上書き |
831
- | `OCR_USE_ANTHROPIC` | `true` = Anthropic、`false` = OpenAI |
832
-
904
+ | `OCR_USE_ANTHROPIC` | `true` = Anthropic、`false` = OpenAI Chat Completions(レガシー;`OCR_LLM_PROTOCOL` を推奨) |
833
905
 
834
906
  ## テレメトリー
835
907
 
package/README.ko-KR.md CHANGED
@@ -219,7 +219,7 @@ ocr config set custom_providers.my-gateway.api_key your-api-key-here
219
219
  ocr config set custom_providers.my-gateway.model gpt-4o
220
220
  ```
221
221
 
222
- > 커스텀 provider에서는 `url`과 `protocol`이 필수입니다. 지원 프로토콜: `anthropic`, `openai`.
222
+ > 커스텀 provider에서는 `url`과 `protocol`이 필수입니다. 지원 프로토콜: `anthropic`, `openai`, `openai-responses`
223
223
 
224
224
  선택 설정:
225
225
 
@@ -253,6 +253,17 @@ export OCR_LLM_MODEL=claude-opus-4-6
253
253
  export OCR_USE_ANTHROPIC=true
254
254
  ```
255
255
 
256
+ OpenAI Responses API(GPT-5.x / o-시리즈 모델)를 사용하려면 `OCR_USE_ANTHROPIC` 대신 `OCR_LLM_PROTOCOL`을 사용하세요:
257
+
258
+ ```bash
259
+ export OCR_LLM_URL=https://api.openai.com/v1
260
+ export OCR_LLM_TOKEN=your-openai-key
261
+ export OCR_LLM_MODEL=gpt-5.4
262
+ export OCR_LLM_PROTOCOL=openai-responses
263
+ ```
264
+
265
+ `OCR_LLM_PROTOCOL`은 `anthropic`, `openai`, `openai-responses`를 허용하며, `OCR_USE_ANTHROPIC`과 함께 설정하면 우선 적용됩니다.
266
+
256
267
  Claude Code 환경 변수(`ANTHROPIC_BASE_URL`, `ANTHROPIC_AUTH_TOKEN`, `ANTHROPIC_MODEL`)와도 호환되며, `~/.zshrc` / `~/.bashrc`의 export도 파싱합니다.
257
268
 
258
269
  > **CC-Switch 사용자 참고**: [CC-Switch](https://github.com/farion1231/cc-switch)를 [routing service](https://www.ccswitch.io/en/docs?section=proxy&item=service)와 함께 사용한다면, provider의 `url`을 CC-Switch proxy 주소로 지정하여 추가 설정 없이 사용할 수 있습니다:
@@ -287,6 +298,11 @@ ocr review --from main --to feature-branch --resume <session-id>
287
298
  # 전체 파일 스캔 — diff 대신 파일 전체를 리뷰 (git 이력 불필요)
288
299
  ocr scan # 전체 repository 스캔
289
300
  ocr scan --path internal/agent # 디렉터리 또는 특정 파일 스캔
301
+
302
+ # 위임 모드 — AI 코딩 에이전트가 직접 리뷰 수행
303
+ # OCR은 파일 선택과 규칙 해석만 담당; LLM 설정 불필요
304
+ ocr delegate preview
305
+ ocr delegate rule src/main.go src/handler.go
290
306
  ```
291
307
 
292
308
  ### Coding Agent와 통합
@@ -303,6 +319,14 @@ npx skills add alibaba/open-code-review --skill open-code-review
303
319
 
304
320
  이 명령은 [skills registry](skills/open-code-review/SKILL.md)의 `open-code-review` skill을 설치합니다. 이 skill은 coding agent가 `ocr`을 호출해 코드 리뷰를 수행하고, issue를 우선순위별로 분류하며, 필요한 경우 fix를 적용하는 방법을 알려줍니다.
305
321
 
322
+ **위임 모드** — 코딩 에이전트가 직접 리뷰를 수행하길 원하는 경우 (OCR은 파일 선택과 규칙 해석만 담당, OCR 측 LLM 설정 불필요):
323
+
324
+ ```bash
325
+ npx skills add alibaba/open-code-review --skill open-code-review-delegate
326
+ ```
327
+
328
+ 자세한 내용은 [skills/open-code-review-delegate/SKILL.md](skills/open-code-review-delegate/SKILL.md)를 참조하세요.
329
+
306
330
  #### Option 2: Claude Code Plugin으로 설치
307
331
 
308
332
  [Claude Code](https://docs.anthropic.com/en/docs/claude-code)에서는 Claude Code 안에서 다음 명령으로 command plugin을 설치합니다.
@@ -312,7 +336,7 @@ npx skills add alibaba/open-code-review --skill open-code-review
312
336
  /plugin install open-code-review@open-code-review
313
337
  ```
314
338
 
315
- 이렇게 하면 OCR을 실행하고 issue를 자동으로 필터링 및 수정하는 `/open-code-review:review` slash command가 등록됩니다.
339
+ 이렇게 하면 OCR을 실행하고 issue를 자동으로 필터링 및 수정하는 `/open-code-review:review` slash command가 등록됩니다. 또한 `/open-code-review:delegate-review` 위임 모드 명령도 제공됩니다 (에이전트가 자체 능력으로 리뷰를 수행하고, OCR은 파일 선택과 규칙 해석을 담당).
316
340
 
317
341
  #### Option 3: Codex Plugin으로 설치
318
342
 
@@ -402,7 +426,21 @@ curl -o ~/.claude/commands/open-code-review.md \
402
426
  https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/review.md
403
427
  ```
404
428
 
405
- > **전제 조건**: 모든 통합 방식은 `ocr` CLI가 설치되어 있고 LLM 설정되어 있어야 합니다. 위의 [설치](#설치)와 [LLM 설정](#1-llm-설정)을 참고하세요.
429
+ 위임 모드 (OCR LLM 설정 불필요):
430
+
431
+ ```bash
432
+ # 프로젝트 수준
433
+ mkdir -p .claude/commands
434
+ curl -o .claude/commands/open-code-review-delegate.md \
435
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
436
+
437
+ # 사용자 수준
438
+ mkdir -p ~/.claude/commands
439
+ curl -o ~/.claude/commands/open-code-review-delegate.md \
440
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
441
+ ```
442
+
443
+ > **전제 조건**: 모든 통합 방식은 `ocr` CLI 설치가 필요합니다. 표준 모드는 추가로 LLM 설정이 필요합니다 — 위의 [설치](#설치) 및 [LLM 설정](#1-llm-설정)을 참조하세요. 위임 모드는 OCR 측 LLM 설정이 **필요 없습니다**.
406
444
 
407
445
  ### CI/CD 통합
408
446
 
@@ -455,6 +493,8 @@ GitHub의 경우, 이 리포지터리는 루트에 바로 사용할 수 있는 c
455
493
  |---------|-------|-------------|
456
494
  | `ocr review` | `ocr r` | diff 기반 코드 리뷰 시작 |
457
495
  | `ocr scan` | `ocr s` | 전체 파일 리뷰 (diff 불필요) |
496
+ | `ocr delegate preview` | `ocr d preview` | 리뷰 대상 파일 목록을 모드/참조 메타데이터와 함께 출력 (LLM 불필요) |
497
+ | `ocr delegate rule <path...>` | `ocr d rule` | 내용별로 그룹화된 리뷰 규칙 출력 (LLM 불필요) |
458
498
  | `ocr rules check <file>` | - | 파일 경로에 적용될 리뷰 rule 미리보기 |
459
499
  | `ocr config provider` | - | 대화형 provider 설정 (built-in, custom, 수동) |
460
500
  | `ocr config model` | - | 활성 provider의 대화형 model 선택 |
@@ -546,6 +586,31 @@ Resume은 의도적으로 엄격합니다. branch range와 단일 commit review
546
586
 
547
587
  각 실행 전에 `ocr scan`은 대략적인 토큰 비용 추정치를 출력합니다. `--preview`로 먼저 파일 목록을 확인하고, `--max-tokens-budget`으로 대규모 repository의 비용을 제한할 수 있습니다.
548
588
 
589
+ ### `ocr delegate` 플래그
590
+
591
+ `ocr delegate`는 AI 코딩 에이전트를 위한 위임 모드입니다. LLM을 호출하지 않고
592
+ 결정론적인 파일 선택과 규칙 해석을 제공합니다 — 실제 리뷰는 호스트 에이전트가
593
+ 자체 능력으로 수행합니다.
594
+
595
+ | 하위 명령 | 설명 |
596
+ |-----------|------|
597
+ | `ocr delegate preview` | 리뷰 대상 파일 목록을 모드/참조 메타데이터와 함께 출력 |
598
+ | `ocr delegate rule <path...>` | 내용별로 그룹화된 리뷰 규칙 출력 |
599
+
600
+ 두 하위 명령은 다음 플래그를 공유합니다:
601
+
602
+ | 플래그 | 축약형 | 기본값 | 설명 |
603
+ |--------|--------|--------|------|
604
+ | `--repo` | — | 현재 디렉터리 | Git 저장소 루트 |
605
+ | `--from` | — | — | 소스 참조 (예: `main`) |
606
+ | `--to` | — | — | 대상 참조 (예: `feature-branch`) |
607
+ | `--commit` | `-c` | — | 단일 커밋 |
608
+ | `--exclude` | — | — | 쉼표로 구분된 gitignore 스타일 제외 패턴 |
609
+ | `--rule` | — | — | 커스텀 JSON 리뷰 규칙 경로 |
610
+ | `--background` | `-b` | — | 선택적 요구사항/비즈니스 컨텍스트 |
611
+ | `--background-file` | `-B` | — | Markdown 파일에서 비즈니스 컨텍스트 로드 |
612
+ | `--max-git-procs` | — | `16` | 최대 동시 git 하위 프로세스 수 |
613
+
549
614
  ## Examples
550
615
 
551
616
  ```bash
@@ -611,6 +676,12 @@ ocr scan --repo /path/to/plain/dir --format json
611
676
  # 가장 빠른 스캔: planning, 중복 제거, 프로젝트 요약 건너뛰기
612
677
  ocr scan --no-plan --no-dedup --no-summary
613
678
 
679
+ # 위임 모드 — AI 에이전트가 리뷰 수행 (LLM 설정 불필요)
680
+ ocr delegate preview
681
+ ocr delegate preview --from main --to feature-branch
682
+ ocr delegate preview --commit abc123
683
+ ocr delegate rule internal/handler.go internal/service.go cmd/main.go
684
+
614
685
  # browser에서 review session history 보기
615
686
  ocr viewer
616
687
  ocr viewer --addr :3000
@@ -710,7 +781,7 @@ Config file: `~/.opencodereview/config.json`
710
781
  | `provider` | string | `anthropic` \| `openai` \| `dashscope` \| `deepseek` \| `z-ai` |
711
782
  | `providers.<name>.api_key` | string | Provider별 API key |
712
783
  | `providers.<name>.url` | string | Provider base URL override |
713
- | `providers.<name>.protocol` | string | `anthropic` \| `openai` |
784
+ | `providers.<name>.protocol` | string | `anthropic` \| `openai` \| `openai-responses` |
714
785
  | `providers.<name>.model` | string | Provider의 model 이름 |
715
786
  | `providers.<name>.models` | array | 대화형 선택에 사용할 optional provider model 목록 |
716
787
  | `providers.<name>.auth_header` | string | `x-api-key` \| `authorization` |
@@ -725,7 +796,8 @@ Config file: `~/.opencodereview/config.json`
725
796
  | `llm.timeout_sec` | integer | 요청당 HTTP timeout(초), 기본값 `300` |
726
797
  | `llm.extra_headers` | string | 쉼표로 구분된 `key=value` HTTP 헤더 |
727
798
  | `llm.model` | string | `claude-opus-4-6` |
728
- | `llm.use_anthropic` | boolean | `true` \| `false` |
799
+ | `llm.protocol` | string | `anthropic` \| `openai` \| `openai-responses`; `llm.use_anthropic`보다 우선 |
800
+ | `llm.use_anthropic` | boolean | `true` \| `false` (레거시; `llm.protocol` 권장) |
729
801
  | `mcp_servers.<name>.command` | string | MCP 서버를 시작하는 명령어 |
730
802
  | `mcp_servers.<name>.args` | array | MCP 서버의 커맨드라인 인수 |
731
803
  | `mcp_servers.<name>.env` | array | 환경 변수 (`KEY=VALUE` 형식) |
@@ -785,8 +857,9 @@ ocr config set mcp_servers.codegraph.setup 'codegraph init && codegraph index'
785
857
  | `OCR_LLM_AUTH_HEADER` | Anthropic auth header (`x-api-key` 또는 `authorization`) |
786
858
  | `OCR_LLM_EXTRA_HEADERS` | 쉼표로 구분된 `key=value` HTTP 헤더 |
787
859
  | `OCR_LLM_MODEL` | Model name |
860
+ | `OCR_LLM_PROTOCOL` | 프로토콜: `anthropic` \| `openai` \| `openai-responses`; `OCR_USE_ANTHROPIC`보다 우선 |
788
861
  | `OCR_LLM_TIMEOUT` | 요청당 HTTP timeout(초), config file의 `timeout_sec`를 override |
789
- | `OCR_USE_ANTHROPIC` | `true` = Anthropic, `false` = OpenAI |
862
+ | `OCR_USE_ANTHROPIC` | `true` = Anthropic, `false` = OpenAI Chat Completions (레거시; `OCR_LLM_PROTOCOL` 권장) |
790
863
 
791
864
  ## Telemetry
792
865
 
package/README.md CHANGED
@@ -219,7 +219,7 @@ ocr config set custom_providers.my-gateway.api_key your-api-key-here
219
219
  ocr config set custom_providers.my-gateway.model gpt-4o
220
220
  ```
221
221
 
222
- > `url` and `protocol` are required for custom providers. Supported protocols: `anthropic`, `openai`.
222
+ > `url` and `protocol` are required for custom providers. Supported protocols: `anthropic`, `openai`, `openai-responses`.
223
223
 
224
224
  Optional settings:
225
225
 
@@ -253,6 +253,17 @@ export OCR_LLM_MODEL=claude-opus-4-6
253
253
  export OCR_USE_ANTHROPIC=true
254
254
  ```
255
255
 
256
+ To use the OpenAI Responses API (GPT-5.x / o-series), set `OCR_LLM_PROTOCOL` instead of `OCR_USE_ANTHROPIC`:
257
+
258
+ ```bash
259
+ export OCR_LLM_URL=https://api.openai.com/v1
260
+ export OCR_LLM_TOKEN=your-openai-key
261
+ export OCR_LLM_MODEL=gpt-5.4
262
+ export OCR_LLM_PROTOCOL=openai-responses
263
+ ```
264
+
265
+ `OCR_LLM_PROTOCOL` accepts `anthropic`, `openai`, `openai-responses`, and takes priority over `OCR_USE_ANTHROPIC` when both are set.
266
+
256
267
  Also compatible with Claude Code environment variables (`ANTHROPIC_BASE_URL`, `ANTHROPIC_AUTH_TOKEN`, `ANTHROPIC_MODEL`) and parses `~/.zshrc` / `~/.bashrc` for those exports.
257
268
 
258
269
  > **Note for CC-Switch Users**: If you are using [CC-Switch](https://github.com/farion1231/cc-switch) with [routing service](https://www.ccswitch.io/en/docs?section=proxy&item=service) enabled, you can point the provider's `url` to the CC-Switch proxy address without additional configuration:
@@ -287,6 +298,11 @@ ocr review --from main --to feature-branch --resume <session-id>
287
298
  # Full-file scan — review whole files instead of a diff (no git history needed)
288
299
  ocr scan # scan the entire repository
289
300
  ocr scan --path internal/agent # scan a directory or specific files
301
+
302
+ # Delegation mode — let your AI coding agent perform the review itself
303
+ # OCR handles file selection and rule resolution; no LLM configuration needed
304
+ ocr delegate preview
305
+ ocr delegate rule src/main.go src/handler.go
290
306
  ```
291
307
 
292
308
  ### Integrate with Coding Agents
@@ -303,6 +319,14 @@ npx skills add alibaba/open-code-review --skill open-code-review
303
319
 
304
320
  This installs the `open-code-review` skill from the [skills registry](skills/open-code-review/SKILL.md), which teaches your coding agent how to invoke `ocr` for code review, classify issues by priority, and optionally apply fixes.
305
321
 
322
+ **Delegation mode** — if you want your coding agent to perform the review itself (using OCR only for file selection and rule resolution, no LLM configuration needed on the OCR side):
323
+
324
+ ```bash
325
+ npx skills add alibaba/open-code-review --skill open-code-review-delegate
326
+ ```
327
+
328
+ See [skills/open-code-review-delegate/SKILL.md](skills/open-code-review-delegate/SKILL.md) for details.
329
+
306
330
  #### Option 2: Install as a Claude Code Plugin
307
331
 
308
332
  For [Claude Code](https://docs.anthropic.com/en/docs/claude-code), install the command plugin through the following command in Claude Code:
@@ -312,7 +336,7 @@ For [Claude Code](https://docs.anthropic.com/en/docs/claude-code), install the c
312
336
  /plugin install open-code-review@open-code-review
313
337
  ```
314
338
 
315
- This registers the `/open-code-review:review` slash command, which runs OCR and automatically filters and fixes issues.
339
+ This registers the `/open-code-review:review` slash command, which runs OCR and automatically filters and fixes issues. It also provides `/open-code-review:delegate-review` for delegation mode (the agent reviews using its own capabilities while OCR handles file selection and rules).
316
340
 
317
341
  #### Option 3: Install as a Codex Plugin
318
342
 
@@ -402,7 +426,21 @@ curl -o ~/.claude/commands/open-code-review.md \
402
426
  https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/review.md
403
427
  ```
404
428
 
405
- > **Prerequisite**: All integration methods require the `ocr` CLI to be installed and an LLM configured. See [Install](#install) and [Configure LLM](#1-configure-llm) above.
429
+ For delegation mode (no LLM configuration needed on OCR side):
430
+
431
+ ```bash
432
+ # Project-level
433
+ mkdir -p .claude/commands
434
+ curl -o .claude/commands/open-code-review-delegate.md \
435
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
436
+
437
+ # User-level
438
+ mkdir -p ~/.claude/commands
439
+ curl -o ~/.claude/commands/open-code-review-delegate.md \
440
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
441
+ ```
442
+
443
+ > **Prerequisite**: All integration methods require the `ocr` CLI to be installed. Standard mode additionally requires an LLM configured — see [Install](#install) and [Configure LLM](#1-configure-llm) above. Delegation mode does **not** require LLM configuration on the OCR side.
406
444
 
407
445
  ### CI/CD Integration
408
446
 
@@ -457,6 +495,8 @@ Pin to a version tag or commit SHA for reproducibility. See the [`examples/githu
457
495
  |---------|-------|-------------|
458
496
  | `ocr review` | `ocr r` | Start a diff-based code review |
459
497
  | `ocr scan` | `ocr s` | Review whole files (no diff required) |
498
+ | `ocr delegate preview` | `ocr d preview` | Preview reviewable files with mode/ref metadata (no LLM required) |
499
+ | `ocr delegate rule <path...>` | `ocr d rule` | Output resolved review rules grouped by content (no LLM required) |
460
500
  | `ocr rules check <file>` | — | Preview which review rule applies to a file path |
461
501
  | `ocr config provider` | — | Interactive provider setup (built-in, custom, or manual) |
462
502
  | `ocr config model` | — | Interactive model selection for the active provider |
@@ -553,6 +593,31 @@ non-git directories too (it falls back to a filesystem walk that honors `.gitign
553
593
  Before each run, `ocr scan` prints a rough token-cost estimate. Use `--preview` to see the
554
594
  file list first, and `--max-tokens-budget` to cap spend on large repositories.
555
595
 
596
+ ### `ocr delegate` Flags
597
+
598
+ `ocr delegate` is the delegation mode for AI coding agents. It provides deterministic
599
+ file selection and rule resolution without calling any LLM — the host agent performs
600
+ the actual review using its own capabilities.
601
+
602
+ | Sub-command | Description |
603
+ |-------------|-------------|
604
+ | `ocr delegate preview` | Output reviewable file list with mode/ref metadata |
605
+ | `ocr delegate rule <path...>` | Output resolved review rules grouped by content |
606
+
607
+ Both sub-commands share these flags:
608
+
609
+ | Flag | Shorthand | Default | Description |
610
+ |------|-----------|---------|-------------|
611
+ | `--repo` | — | current dir | Git repository root |
612
+ | `--from` | — | — | Source ref (e.g., `main`) |
613
+ | `--to` | — | — | Target ref (e.g., `feature-branch`) |
614
+ | `--commit` | `-c` | — | Single commit to review |
615
+ | `--exclude` | — | — | Comma-separated gitignore-style patterns to skip |
616
+ | `--rule` | — | — | Path to custom JSON review rules |
617
+ | `--background` | `-b` | — | Optional requirement/business context |
618
+ | `--background-file` | `-B` | — | Business context from a Markdown file |
619
+ | `--max-git-procs` | — | `16` | Max concurrent git subprocesses |
620
+
556
621
  ## Examples
557
622
 
558
623
  ```bash
@@ -618,6 +683,12 @@ ocr scan --repo /path/to/plain/dir --format json
618
683
  # Fastest scan: skip planning, dedup, and the project summary
619
684
  ocr scan --no-plan --no-dedup --no-summary
620
685
 
686
+ # Delegation mode — let your AI agent drive the review (no LLM config needed)
687
+ ocr delegate preview
688
+ ocr delegate preview --from main --to feature-branch
689
+ ocr delegate preview --commit abc123
690
+ ocr delegate rule internal/handler.go internal/service.go cmd/main.go
691
+
621
692
  # View review session history in browser
622
693
  ocr viewer
623
694
  ocr viewer --addr :3000
@@ -759,7 +830,7 @@ Config file: `~/.opencodereview/config.json`
759
830
  | `provider` | string | `anthropic` \| `openai` \| `dashscope` \| `deepseek` \| `z-ai` |
760
831
  | `providers.<name>.api_key` | string | Provider-specific API key |
761
832
  | `providers.<name>.url` | string | Provider base URL override |
762
- | `providers.<name>.protocol` | string | `anthropic` \| `openai` |
833
+ | `providers.<name>.protocol` | string | `anthropic` \| `openai` \| `openai-responses` |
763
834
  | `providers.<name>.model` | string | Model name for the provider |
764
835
  | `providers.<name>.models` | array | Optional provider model list for interactive selection |
765
836
  | `providers.<name>.auth_header` | string | `x-api-key` \| `authorization` |
@@ -774,7 +845,8 @@ Config file: `~/.opencodereview/config.json`
774
845
  | `llm.timeout_sec` | integer | Per-request HTTP timeout in seconds (default: `300`) |
775
846
  | `llm.extra_headers` | string | Comma-separated `key=value` HTTP headers |
776
847
  | `llm.model` | string | `claude-opus-4-6` |
777
- | `llm.use_anthropic` | boolean | `true` \| `false` |
848
+ | `llm.protocol` | string | `anthropic` \| `openai` \| `openai-responses`; takes priority over `llm.use_anthropic` |
849
+ | `llm.use_anthropic` | boolean | `true` \| `false` (legacy; prefer `llm.protocol`) |
778
850
  | `mcp_servers.<name>.command` | string | Command to start the MCP server |
779
851
  | `mcp_servers.<name>.args` | array | Command-line arguments for the MCP server |
780
852
  | `mcp_servers.<name>.env` | array | Environment variables in `KEY=VALUE` format |
@@ -834,9 +906,9 @@ ocr config set mcp_servers.codegraph.setup 'codegraph init && codegraph index'
834
906
  | `OCR_LLM_AUTH_HEADER` | Anthropic auth header (`x-api-key` or `authorization`) |
835
907
  | `OCR_LLM_EXTRA_HEADERS` | Comma-separated `key=value` HTTP headers |
836
908
  | `OCR_LLM_MODEL` | Model name |
909
+ | `OCR_LLM_PROTOCOL` | Protocol: `anthropic` \| `openai` \| `openai-responses`; takes priority over `OCR_USE_ANTHROPIC` |
837
910
  | `OCR_LLM_TIMEOUT` | Per-request HTTP timeout in seconds (overrides config file `timeout_sec`) |
838
- | `OCR_USE_ANTHROPIC` | `true` = Anthropic, `false` = OpenAI |
839
-
911
+ | `OCR_USE_ANTHROPIC` | `true` = Anthropic, `false` = OpenAI Chat Completions (legacy; prefer `OCR_LLM_PROTOCOL`) |
840
912
 
841
913
  ## Telemetry
842
914
 
package/README.ru-RU.md CHANGED
@@ -219,7 +219,7 @@ ocr config set custom_providers.my-gateway.api_key your-api-key-here
219
219
  ocr config set custom_providers.my-gateway.model gpt-4o
220
220
  ```
221
221
 
222
- > Для пользовательских провайдеров `url` и `protocol` обязательны. Поддерживаемые протоколы: `anthropic`, `openai`.
222
+ > Для пользовательских провайдеров `url` и `protocol` обязательны. Поддерживаемые протоколы: `anthropic`, `openai`, `openai-responses`.
223
223
 
224
224
  Дополнительные настройки:
225
225
 
@@ -253,6 +253,17 @@ export OCR_LLM_MODEL=claude-opus-4-6
253
253
  export OCR_USE_ANTHROPIC=true
254
254
  ```
255
255
 
256
+ Чтобы использовать OpenAI Responses API (модели GPT-5.x / o-series), задайте `OCR_LLM_PROTOCOL` вместо `OCR_USE_ANTHROPIC`:
257
+
258
+ ```bash
259
+ export OCR_LLM_URL=https://api.openai.com/v1
260
+ export OCR_LLM_TOKEN=your-openai-key
261
+ export OCR_LLM_MODEL=gpt-5.4
262
+ export OCR_LLM_PROTOCOL=openai-responses
263
+ ```
264
+
265
+ `OCR_LLM_PROTOCOL` принимает значения `anthropic`, `openai`, `openai-responses` и имеет приоритет над `OCR_USE_ANTHROPIC`, если заданы обе переменные.
266
+
256
267
  Также совместим с переменными окружения Claude Code (`ANTHROPIC_BASE_URL`, `ANTHROPIC_AUTH_TOKEN`, `ANTHROPIC_MODEL`) и разбирает `~/.zshrc` / `~/.bashrc` в поисках соответствующих export'ов.
257
268
 
258
269
  > **Примечание для пользователей CC-Switch**: если вы используете [CC-Switch](https://github.com/farion1231/cc-switch) с включённым [routing service](https://www.ccswitch.io/en/docs?section=proxy&item=service), можно указать в `url` провайдера адрес прокси CC-Switch без дополнительной настройки:
@@ -287,6 +298,11 @@ ocr review --from main --to feature-branch --resume <session-id>
287
298
  # Полнофайловое сканирование — ревью целых файлов вместо диффа (история git не нужна)
288
299
  ocr scan # сканировать весь репозиторий
289
300
  ocr scan --path internal/agent # сканировать каталог или конкретные файлы
301
+
302
+ # Режим делегирования — AI-агент сам выполняет ревью
303
+ # OCR отвечает за выбор файлов и разрешение правил; настройка LLM не требуется
304
+ ocr delegate preview
305
+ ocr delegate rule src/main.go src/handler.go
290
306
  ```
291
307
 
292
308
  ### Интеграция с кодинг-агентами
@@ -303,6 +319,14 @@ npx skills add alibaba/open-code-review --skill open-code-review
303
319
 
304
320
  Это установит скилл `open-code-review` из [реестра скиллов](skills/open-code-review/SKILL.md), который объясняет вашему кодинг-агенту, как вызывать `ocr` для код-ревью, классифицировать найденные проблемы по приоритету и при необходимости применять исправления.
305
321
 
322
+ **Режим делегирования** — если вы хотите, чтобы AI-агент сам выполнял ревью (OCR отвечает только за выбор файлов и разрешение правил, настройка LLM на стороне OCR не требуется):
323
+
324
+ ```bash
325
+ npx skills add alibaba/open-code-review --skill open-code-review-delegate
326
+ ```
327
+
328
+ Подробнее см. [skills/open-code-review-delegate/SKILL.md](skills/open-code-review-delegate/SKILL.md).
329
+
306
330
  #### Вариант 2: установка как плагин Claude Code
307
331
 
308
332
  Для [Claude Code](https://docs.anthropic.com/en/docs/claude-code) установите плагин с командой, выполнив в Claude Code:
@@ -312,7 +336,7 @@ npx skills add alibaba/open-code-review --skill open-code-review
312
336
  /plugin install open-code-review@open-code-review
313
337
  ```
314
338
 
315
- Это зарегистрирует slash-команду `/open-code-review:review`, которая запускает OCR и автоматически фильтрует и исправляет найденные проблемы.
339
+ Это зарегистрирует slash-команду `/open-code-review:review`, которая запускает OCR и автоматически фильтрует и исправляет найденные проблемы. Также предоставляется команда `/open-code-review:delegate-review` для режима делегирования (агент выполняет ревью своими силами, OCR отвечает за выбор файлов и разрешение правил).
316
340
 
317
341
  #### Вариант 3: установка как плагин Codex
318
342
 
@@ -402,7 +426,21 @@ curl -o ~/.claude/commands/open-code-review.md \
402
426
  https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/review.md
403
427
  ```
404
428
 
405
- > **Требование**: для всех способов интеграции необходим установленный CLI `ocr` и настроенная LLM. См. разделы [Установка](#установка) и [Настройте LLM](#быстрый-старт) выше.
429
+ Режим делегирования (настройка LLM на стороне OCR не требуется):
430
+
431
+ ```bash
432
+ # Уровень проекта
433
+ mkdir -p .claude/commands
434
+ curl -o .claude/commands/open-code-review-delegate.md \
435
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
436
+
437
+ # Уровень пользователя
438
+ mkdir -p ~/.claude/commands
439
+ curl -o ~/.claude/commands/open-code-review-delegate.md \
440
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
441
+ ```
442
+
443
+ > **Требования**: Все способы интеграции требуют установки CLI `ocr`. Стандартный режим дополнительно требует настройки LLM — см. [Установка](#установка) и [Настройка LLM](#1-настройка-llm) выше. Режим делегирования **не требует** настройки LLM на стороне OCR.
406
444
 
407
445
  ### Интеграция с CI/CD
408
446
 
@@ -457,6 +495,8 @@ ocr review \
457
495
  |---------|-------|----------|
458
496
  | `ocr review` | `ocr r` | Запустить код-ревью на основе диффа |
459
497
  | `ocr scan` | `ocr s` | Ревью целых файлов (дифф не нужен) |
498
+ | `ocr delegate preview` | `ocr d preview` | Предварительный просмотр файлов для ревью с метаданными режима/ссылок (LLM не требуется) |
499
+ | `ocr delegate rule <path...>` | `ocr d rule` | Вывод правил ревью, сгруппированных по содержимому (LLM не требуется) |
460
500
  | `ocr rules check <file>` | — | Показать, какое правило ревью применяется к пути файла |
461
501
  | `ocr config provider` | — | Интерактивная настройка провайдера (встроенный, пользовательский или ручной) |
462
502
  | `ocr config model` | — | Интерактивный выбор модели для активного провайдера |
@@ -550,6 +590,31 @@ ocr review --commit abc123 --resume <session-id>
550
590
 
551
591
  Перед каждым запуском `ocr scan` выводит приблизительную оценку стоимости в токенах. Используйте `--preview`, чтобы сначала посмотреть список файлов, и `--max-tokens-budget`, чтобы ограничить расход на больших репозиториях.
552
592
 
593
+ ### Флаги `ocr delegate`
594
+
595
+ `ocr delegate` — режим делегирования для AI-агентов. Он обеспечивает детерминированный
596
+ выбор файлов и разрешение правил без вызова LLM — фактическое ревью выполняет
597
+ хост-агент своими силами.
598
+
599
+ | Подкоманда | Описание |
600
+ |------------|----------|
601
+ | `ocr delegate preview` | Вывод списка файлов для ревью с метаданными режима/ссылок |
602
+ | `ocr delegate rule <path...>` | Вывод правил ревью, сгруппированных по содержимому |
603
+
604
+ Обе подкоманды используют общие флаги:
605
+
606
+ | Флаг | Сокращение | По умолчанию | Описание |
607
+ |------|-----------|--------------|----------|
608
+ | `--repo` | — | текущий каталог | Корень Git-репозитория |
609
+ | `--from` | — | — | Исходная ссылка (например, `main`) |
610
+ | `--to` | — | — | Целевая ссылка (например, `feature-branch`) |
611
+ | `--commit` | `-c` | — | Один коммит |
612
+ | `--exclude` | — | — | Паттерны исключения в стиле gitignore через запятую |
613
+ | `--rule` | — | — | Путь к файлу с пользовательскими JSON-правилами |
614
+ | `--background` | `-b` | — | Необязательный контекст требований/бизнеса |
615
+ | `--background-file` | `-B` | — | Бизнес-контекст из Markdown-файла |
616
+ | `--max-git-procs` | — | `16` | Макс. параллельных подпроцессов git |
617
+
553
618
  ## Примеры
554
619
 
555
620
  ```bash
@@ -615,6 +680,12 @@ ocr scan --repo /path/to/plain/dir --format json
615
680
  # Самое быстрое сканирование: пропустить планирование, дедупликацию и сводку проекта
616
681
  ocr scan --no-plan --no-dedup --no-summary
617
682
 
683
+ # Режим делегирования — AI-агент выполняет ревью (настройка LLM не требуется)
684
+ ocr delegate preview
685
+ ocr delegate preview --from main --to feature-branch
686
+ ocr delegate preview --commit abc123
687
+ ocr delegate rule internal/handler.go internal/service.go cmd/main.go
688
+
618
689
  # Открыть историю сессий ревью в браузере
619
690
  ocr viewer
620
691
  ocr viewer --addr :3000
@@ -756,7 +827,7 @@ OCR разрешает правила ревью по цепочке приор
756
827
  | `provider` | string | `anthropic` \| `openai` \| `dashscope` \| `deepseek` \| `z-ai` |
757
828
  | `providers.<name>.api_key` | string | API-ключ провайдера |
758
829
  | `providers.<name>.url` | string | Переопределение base URL провайдера |
759
- | `providers.<name>.protocol` | string | `anthropic` \| `openai` |
830
+ | `providers.<name>.protocol` | string | `anthropic` \| `openai` \| `openai-responses` |
760
831
  | `providers.<name>.model` | string | Имя модели провайдера |
761
832
  | `providers.<name>.models` | array | Необязательный список моделей для интерактивного выбора |
762
833
  | `providers.<name>.auth_header` | string | `x-api-key` \| `authorization` |
@@ -771,7 +842,8 @@ OCR разрешает правила ревью по цепочке приор
771
842
  | `llm.timeout_sec` | integer | Таймаут HTTP-запроса в секундах, по умолчанию `300` |
772
843
  | `llm.extra_headers` | string | HTTP-заголовки `key=value` через запятую |
773
844
  | `llm.model` | string | `claude-opus-4-6` |
774
- | `llm.use_anthropic` | boolean | `true` \| `false` |
845
+ | `llm.protocol` | string | `anthropic` \| `openai` \| `openai-responses`; имеет приоритет над `llm.use_anthropic` |
846
+ | `llm.use_anthropic` | boolean | `true` \| `false` (устаревшее; предпочтительнее `llm.protocol`) |
775
847
  | `mcp_servers.<name>.command` | string | Команда для запуска MCP-сервера |
776
848
  | `mcp_servers.<name>.args` | array | Аргументы командной строки для MCP-сервера |
777
849
  | `mcp_servers.<name>.env` | array | Переменные окружения в формате `KEY=VALUE` |
@@ -831,9 +903,9 @@ ocr config set mcp_servers.codegraph.setup 'codegraph init && codegraph index'
831
903
  | `OCR_LLM_AUTH_HEADER` | Заголовок авторизации Anthropic (`x-api-key` или `authorization`) |
832
904
  | `OCR_LLM_EXTRA_HEADERS` | HTTP-заголовки `key=value` через запятую |
833
905
  | `OCR_LLM_MODEL` | Имя модели |
906
+ | `OCR_LLM_PROTOCOL` | Протокол: `anthropic` \| `openai` \| `openai-responses`; имеет приоритет над `OCR_USE_ANTHROPIC` |
834
907
  | `OCR_LLM_TIMEOUT` | Таймаут HTTP-запроса в секундах (переопределяет `timeout_sec` из файла конфигурации) |
835
- | `OCR_USE_ANTHROPIC` | `true` = Anthropic, `false` = OpenAI |
836
-
908
+ | `OCR_USE_ANTHROPIC` | `true` = Anthropic, `false` = OpenAI Chat Completions (устаревшее; предпочтительнее `OCR_LLM_PROTOCOL`) |
837
909
 
838
910
  ## Телеметрия
839
911
 
package/README.zh-CN.md CHANGED
@@ -219,7 +219,7 @@ ocr config set custom_providers.my-gateway.api_key your-api-key-here
219
219
  ocr config set custom_providers.my-gateway.model gpt-4o
220
220
  ```
221
221
 
222
- > 自定义供应商的 `url` 和 `protocol` 为必填项。`protocol` 支持 `anthropic` 和 `openai` 两种。
222
+ > 自定义供应商的 `url` 和 `protocol` 为必填项。`protocol` 支持 `anthropic`、`openai`、`openai-responses`。
223
223
 
224
224
  可选配置项:
225
225
 
@@ -253,6 +253,17 @@ export OCR_LLM_MODEL=claude-opus-4-6
253
253
  export OCR_USE_ANTHROPIC=true
254
254
  ```
255
255
 
256
+ 若要走 OpenAI Responses API(GPT-5.x / o-系列模型),请改用 `OCR_LLM_PROTOCOL`:
257
+
258
+ ```bash
259
+ export OCR_LLM_URL=https://api.openai.com/v1
260
+ export OCR_LLM_TOKEN=your-openai-key
261
+ export OCR_LLM_MODEL=gpt-5.4
262
+ export OCR_LLM_PROTOCOL=openai-responses
263
+ ```
264
+
265
+ `OCR_LLM_PROTOCOL` 接受 `anthropic`、`openai`、`openai-responses`,与 `OCR_USE_ANTHROPIC` 同时设置时优先使用前者。
266
+
256
267
  同时兼容 Claude Code 环境变量(`ANTHROPIC_BASE_URL`、`ANTHROPIC_AUTH_TOKEN`、`ANTHROPIC_MODEL`),并解析 `~/.zshrc` / `~/.bashrc` 中的相关导出。
257
268
 
258
269
  > **CC-Switch 用户特别提醒**:如果你使用 [CC-Switch](https://github.com/farion1231/cc-switch) 并开启了[路由服务](https://www.ccswitch.io/zh/docs?section=proxy&item=service),可以将供应商的 `url` 配置成 CC-Switch 启动的代理地址,无需额外配置:
@@ -287,6 +298,11 @@ ocr review --from main --to feature-branch --resume <session-id>
287
298
  # 全量文件扫描 —— 审查整个文件而非 diff(无需 git 历史)
288
299
  ocr scan # 扫描整个仓库
289
300
  ocr scan --path internal/agent # 扫描指定目录或文件
301
+
302
+ # 委托模式 — 让你的 AI 编程 agent 自己执行评审
303
+ # OCR 负责文件选择和规则解析;无需配置 LLM
304
+ ocr delegate preview
305
+ ocr delegate rule src/main.go src/handler.go
290
306
  ```
291
307
 
292
308
  ### 集成到编程 Agent
@@ -303,6 +319,14 @@ npx skills add alibaba/open-code-review --skill open-code-review
303
319
 
304
320
  此命令从 [skills 注册表](skills/open-code-review/SKILL.md)安装 `open-code-review` skill,教会你的编程 Agent 如何调用 `ocr` 进行代码审查、按优先级分类问题,并可选择性地应用修复。
305
321
 
322
+ **委托模式** — 如果你希望编程 agent 自身执行评审(OCR 仅负责文件选择和规则解析,OCR 侧无需配置 LLM):
323
+
324
+ ```bash
325
+ npx skills add alibaba/open-code-review --skill open-code-review-delegate
326
+ ```
327
+
328
+ 详见 [skills/open-code-review-delegate/SKILL.md](skills/open-code-review-delegate/SKILL.md)。
329
+
306
330
  #### 方式二:作为 Claude Code Plugin 安装
307
331
 
308
332
  对于 [Claude Code](https://docs.anthropic.com/en/docs/claude-code),在 Claude Code 中通过以下命令安装命令插件:
@@ -312,7 +336,7 @@ npx skills add alibaba/open-code-review --skill open-code-review
312
336
  /plugin install open-code-review@open-code-review
313
337
  ```
314
338
 
315
- 此命令注册 `/open-code-review:review` 斜杠命令,运行 OCR 并自动过滤和修复问题。
339
+ 此命令注册 `/open-code-review:review` 斜杠命令,运行 OCR 并自动过滤和修复问题。同时提供 `/open-code-review:delegate-review` 委托模式命令(agent 使用自身能力进行评审,OCR 负责文件选择和规则解析)。
316
340
 
317
341
  #### 方式三:作为 Codex Plugin 安装
318
342
 
@@ -402,7 +426,21 @@ curl -o ~/.claude/commands/open-code-review.md \
402
426
  https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/review.md
403
427
  ```
404
428
 
405
- > **前置条件**:所有集成方式都需要安装 `ocr` CLI 并配置 LLM。参见上方[安装](#安装)和[配置 LLM](#1-配置-llm)。
429
+ 委托模式(OCR 侧无需配置 LLM):
430
+
431
+ ```bash
432
+ # 项目级
433
+ mkdir -p .claude/commands
434
+ curl -o .claude/commands/open-code-review-delegate.md \
435
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
436
+
437
+ # 用户级
438
+ mkdir -p ~/.claude/commands
439
+ curl -o ~/.claude/commands/open-code-review-delegate.md \
440
+ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
441
+ ```
442
+
443
+ > **前提条件**:所有集成方式都需要安装 `ocr` CLI。标准模式还需要配置 LLM — 参见上文[安装](#安装)和[配置 LLM](#1-配置-llm)。委托模式 OCR 侧**不需要** LLM 配置。
406
444
 
407
445
  ### CI/CD 集成
408
446
 
@@ -455,6 +493,8 @@ ocr review \
455
493
  |------|------|------|
456
494
  | `ocr review` | `ocr r` | 开始基于 diff 的代码审查 |
457
495
  | `ocr scan` | `ocr s` | 审查整个文件(无需 diff) |
496
+ | `ocr delegate preview` | `ocr d preview` | 预览可评审文件列表及模式/引用元数据(无需 LLM) |
497
+ | `ocr delegate rule <path...>` | `ocr d rule` | 输出按内容分组的评审规则(无需 LLM) |
458
498
  | `ocr rules check <file>` | — | 预览某个文件路径生效的审查规则 |
459
499
  | `ocr config provider` | — | 交互式供应商设置(内置、自定义或手动) |
460
500
  | `ocr config model` | — | 为当前供应商交互式选择模型 |
@@ -545,6 +585,29 @@ ocr review --commit abc123 --resume <session-id>
545
585
 
546
586
  每次运行前,`ocr scan` 会打印粗略的 token 费用估算。使用 `--preview` 先查看文件列表,使用 `--max-tokens-budget` 限制大型仓库的开销。
547
587
 
588
+ ### `ocr delegate` 参数
589
+
590
+ `ocr delegate` 是面向 AI 编程 agent 的委托模式。它提供确定性的文件选择和规则解析,不调用任何 LLM — 由宿主 agent 使用自身能力执行实际评审。
591
+
592
+ | 子命令 | 说明 |
593
+ |--------|------|
594
+ | `ocr delegate preview` | 输出可评审文件列表及模式/引用元数据 |
595
+ | `ocr delegate rule <path...>` | 输出按内容分组的评审规则 |
596
+
597
+ 两个子命令共享以下参数:
598
+
599
+ | 参数 | 缩写 | 默认值 | 说明 |
600
+ |------|------|--------|------|
601
+ | `--repo` | — | 当前目录 | Git 仓库根目录 |
602
+ | `--from` | — | — | 源引用(如 `main`) |
603
+ | `--to` | — | — | 目标引用(如 `feature-branch`) |
604
+ | `--commit` | `-c` | — | 单次提交 |
605
+ | `--exclude` | — | — | 逗号分隔的 gitignore 风格排除模式 |
606
+ | `--rule` | — | — | 自定义 JSON 评审规则路径 |
607
+ | `--background` | `-b` | — | 可选的需求/业务上下文 |
608
+ | `--background-file` | `-B` | — | 从 Markdown 文件读取业务上下文 |
609
+ | `--max-git-procs` | — | `16` | 最大并发 git 子进程数 |
610
+
548
611
  ## 示例
549
612
 
550
613
  ```bash
@@ -610,6 +673,12 @@ ocr scan --repo /path/to/plain/dir --format json
610
673
  # 最快扫描:跳过规划、去重和项目总结
611
674
  ocr scan --no-plan --no-dedup --no-summary
612
675
 
676
+ # 委托模式 — 让 AI agent 驱动评审(无需 LLM 配置)
677
+ ocr delegate preview
678
+ ocr delegate preview --from main --to feature-branch
679
+ ocr delegate preview --commit abc123
680
+ ocr delegate rule internal/handler.go internal/service.go cmd/main.go
681
+
613
682
  # 在浏览器中查看审查会话历史
614
683
  ocr viewer
615
684
  ocr viewer --addr :3000
@@ -741,7 +810,7 @@ OCR 通过四层优先级链解析评审规则。每层采用首次匹配原则
741
810
  | `provider` | string | `anthropic` \| `openai` \| `dashscope` \| `deepseek` \| `z-ai` |
742
811
  | `providers.<name>.api_key` | string | 供应商 API 密钥 |
743
812
  | `providers.<name>.url` | string | 供应商 Base URL 覆盖 |
744
- | `providers.<name>.protocol` | string | `anthropic` \| `openai` |
813
+ | `providers.<name>.protocol` | string | `anthropic` \| `openai` \| `openai-responses` |
745
814
  | `providers.<name>.model` | string | 供应商模型名称 |
746
815
  | `providers.<name>.models` | array | 用于交互式选择的可选供应商模型列表 |
747
816
  | `providers.<name>.auth_header` | string | `x-api-key` \| `authorization` |
@@ -756,7 +825,8 @@ OCR 通过四层优先级链解析评审规则。每层采用首次匹配原则
756
825
  | `llm.timeout_sec` | integer | 每次请求的 HTTP 超时时间(秒),默认 `300` |
757
826
  | `llm.extra_headers` | string | 逗号分隔的 `key=value` HTTP 头 |
758
827
  | `llm.model` | string | `claude-opus-4-6` |
759
- | `llm.use_anthropic` | boolean | `true` \| `false` |
828
+ | `llm.protocol` | string | `anthropic` \| `openai` \| `openai-responses`;优先级高于 `llm.use_anthropic` |
829
+ | `llm.use_anthropic` | boolean | `true` \| `false`(兼容字段,推荐改用 `llm.protocol`) |
760
830
  | `mcp_servers.<name>.command` | string | 启动 MCP 服务器的命令 |
761
831
  | `mcp_servers.<name>.args` | array | MCP 服务器的命令行参数 |
762
832
  | `mcp_servers.<name>.env` | array | 环境变量,`KEY=VALUE` 格式 |
@@ -816,9 +886,9 @@ ocr config set mcp_servers.codegraph.setup 'codegraph init && codegraph index'
816
886
  | `OCR_LLM_AUTH_HEADER` | Anthropic 认证头(`x-api-key` 或 `authorization`) |
817
887
  | `OCR_LLM_EXTRA_HEADERS` | 逗号分隔的 `key=value` HTTP 头 |
818
888
  | `OCR_LLM_MODEL` | 模型名称 |
889
+ | `OCR_LLM_PROTOCOL` | 协议:`anthropic` \| `openai` \| `openai-responses`;优先级高于 `OCR_USE_ANTHROPIC` |
819
890
  | `OCR_LLM_TIMEOUT` | 每次请求的 HTTP 超时时间(秒),覆盖配置文件中的 `timeout_sec` |
820
- | `OCR_USE_ANTHROPIC` | `true` = Anthropic,`false` = OpenAI |
821
-
891
+ | `OCR_USE_ANTHROPIC` | `true` = Anthropic,`false` = OpenAI Chat Completions(兼容字段,推荐改用 `OCR_LLM_PROTOCOL`) |
822
892
 
823
893
  ## 遥测
824
894
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alibaba-group/open-code-review",
3
- "version": "1.7.9",
3
+ "version": "1.7.11",
4
4
  "description": "OpenCodeReview CLI — AI-powered code review tool",
5
5
  "bin": {
6
6
  "ocr": "bin/ocr.js"
@@ -28,12 +28,12 @@
28
28
  "checksumPattern": "https://github.com/alibaba/open-code-review/releases/download/v{version}/sha256sum.txt"
29
29
  },
30
30
  "optionalDependencies": {
31
- "@alibaba-group/ocr-darwin-arm64": "1.7.9",
32
- "@alibaba-group/ocr-darwin-x64": "1.7.9",
33
- "@alibaba-group/ocr-linux-arm64": "1.7.9",
34
- "@alibaba-group/ocr-linux-x64": "1.7.9",
35
- "@alibaba-group/ocr-win32-arm64": "1.7.9",
36
- "@alibaba-group/ocr-win32-x64": "1.7.9"
31
+ "@alibaba-group/ocr-darwin-arm64": "1.7.11",
32
+ "@alibaba-group/ocr-darwin-x64": "1.7.11",
33
+ "@alibaba-group/ocr-linux-arm64": "1.7.11",
34
+ "@alibaba-group/ocr-linux-x64": "1.7.11",
35
+ "@alibaba-group/ocr-win32-arm64": "1.7.11",
36
+ "@alibaba-group/ocr-win32-x64": "1.7.11"
37
37
  },
38
38
  "engines": {
39
39
  "node": ">=14"