Claude Code の GitHub コードレビュー:ボット版とローカル版の比較
Claude Code のネイティブな GitHub Code Review は GitHub App のボットで、Team/Enterprise 限定、現在は research preview、1回のレビューあたり平均 $15〜25 かかり、マージをブロックすることはありません。これはローカルの /code-review コマンド(無料、すべてのプランで利用可、REVIEW.md は読み込まない)とはまったくの別物です。この記事では、実際に選べる3つの本当の選択肢 - マネージドなボット、ローカルコマンド、そしてキットに同梱されたカスタマイズ可能なレビューエージェント - を並べて、どれがいつ合うのかを整理します。
- 料金、research preview のステータス、そして下記の重大度テーブルは、執筆時点(2026-08-20)で code.claude.com/docs/en/code-review と直接照合しました。Anthropic はこの機能を変化の速いものだと明記しているため、正確な数値に依存する前にライブのドキュメントを確認してください。
ネイティブな GitHub Code Review ボットの正体
これは Owner が組織レベルでインストールする GitHub App で、どのリポジトリに適用するかを選びます。有効化すると、PR が開かれたとき、プッシュのたび、あるいは誰かが PR に @claude review とコメントしたときに、各リポジトリのトリガー設定に応じてレビューが自動的に走ります。
レビューが走ると、複数のエージェントが差分を並列で分析し、それぞれがコードベース全体の文脈のなかで異なる種類の問題を探します。続いて検証ステップが、候補を実際のコードの挙動と照らし合わせて誤検知を取り除きます。結果は重複が排除され、重大度で順位付けされ、問題が見つかった正確な行にインラインコメントとして投稿され、先頭にサマリーが付きます。それと並んで Claude Code Review という名前の check run が、ほかの CI チェックの隣に表示されます。何も見つからなければ、その check run もその旨を表示するよう更新されます。出典: code.claude.com/docs/en/code-review。
インラインコメントに加えて、check run の Details ビューには、すべての指摘が重大度順に一箇所にまとめて並びます。たとえば src/auth/session.ts:142 を指す 🔴 Important の行のすぐ下に 🟡 Nit の行がある、といった具合で、差分をスクロールする代わりに PR 全体の指摘を1画面で見たいときに便利です。同じ指摘は Files changed タブ上にもアノテーションとして直接表示されます。レビューが古い差分を分析している最中に新しいコミットをプッシュした場合、移動してしまったフラグ付きの行はただ消えるのではなく、代わりにレビュー本文の Additional findings という見出しの下に再表示されます。
ボット vs ローカルの /code-review - 誰もやらない比較
この機能に関するほとんどの記事は、ボット単体を説明するか、サードパーティの SaaS ツールと比較するかのどちらかです。Claude Code にすでに同梱されている無料のレビューコマンドと横並びで比べているものは、ほとんどありません。ここで直接比較します:
| ネイティブな GitHub ボット | ローカルの /code-review | |
|---|---|---|
| 実行場所 | GitHub App、Anthropic のインフラ上 | 自分のターミナル、必要なときに |
| プラン | Team/Enterprise 限定(research preview) | すべてのプラン(Pro/Max/Team/Enterprise) |
| 料金 | 1回あたり平均 $15〜25、usage credits で別途課金 | 既存プランの使用量に含まれる |
| カスタマイズ用ファイル | REVIEW.md(最優先)+ CLAUDE.md | CLAUDE.md のみ - REVIEW.md は読み込まない |
| マージをブロックする? | しない(check run の結論は常に neutral) | 該当なし - プッシュ前に自分で実行する |
| 有効化できる人 | 組織の Owner が一度だけ、選んだリポジトリに組織全体で適用 | すべての Claude Code ユーザー、いつでも |
Codex も使っているなら、その同等のレビューコマンドは /review です - プリセットもセットアップも異なります - 詳しくは別記事の Codex Code Review (/review) で解説しています。
重大度のティア(severity tiers)を解説
すべての指摘には、ドキュメントの表記そのままの3つのタグのうち、ちょうど1つが付きます:
| マーカー | 重大度 | 意味 |
|---|---|---|
| 🔴 | Important | マージ前に修正すべきバグ |
| 🟡 | Nit | ささいな問題。修正する価値はあるがブロッカーではない |
| 🟣 | Pre-existing | コードベースに既に存在するが、この PR で持ち込まれたわけではないバグ |
各指摘には、Claude がなぜそれをフラグしたか、そしてどのように問題を検証したかを説明する、折りたたみ可能な推論セクションも付いています。コメントには 👍/👎 で直接リアクションでき - Anthropic は PR のマージ後にそれらを集計してレビュアーを調整しますが、リアクションが再レビューをトリガーしたり、PR 自体に何かを変えたりすることはありません。
REVIEW.md - フラグされる内容をチューニングする方法
REVIEW.md はリポジトリのルートに置かれ、レビューパイプラインの すべての エージェントのシステムプロンプトに、最優先の指示ブロックとしてそのまま注入され、デフォルトのレビューガイダンスを上書きします。そのまま貼り付けられるため、@path のインポート構文は内部で展開されません - レビュアーに知っておいてほしいことは、すべてファイルに直接書き込む必要があります。
CLAUDE.md も併せて読み込まれますが、あくまでプロジェクトのコンテキストとしてであり、新しく持ち込まれた違反はせいぜい Nit までのタグ付けで、それより高くはなりません。これは双方向にも働きます: あなたの PR によって CLAUDE.md の記述が古くなった場合、Claude はドキュメントも更新が必要だとフラグします。
見落としやすいポイント: ローカルの /code-review コマンドは REVIEW.md を読み込みません。 通常の Claude Code セッションと同じく、CLAUDE.md だけに従います。マネージドなボットを特に調整したいなら、そこで効果があるのは REVIEW.md だけです。
ドキュメントを言い換えた簡略な例です(Important を再定義し、nit に上限を設け、生成ファイルをスキップ):
# Review instructions
## What Important means here
Reserve Important for findings that would break behavior, leak data,
or block a rollback. Style/naming/refactor suggestions are Nit at most.
## Cap the nits
Report at most 5 Nits per review; roll up the rest as "plus N similar items"
in the summary.
## Do not report
- Anything CI already enforces: lint, formatting, type errors
- Generated files under src/gen/ and any *.lock file
セットアップ - Owner が有効にする手順
claude.ai/admin-settings/claude-code にアクセスし、Code Review セクションを開きます - Claude の組織で Owner または Primary Owner のロールと、GitHub の組織で GitHub App をインストールする権限が必要です。Setup をクリックして GitHub App のインストールフローを開始します: リポジトリを所有する GitHub の組織を選び、アクセスできるリポジトリを選択し、要求された権限を承認します。インストールが完了したら、有効にするリポジトリを選び、それぞれについて Review Behavior を選びます: Once after PR creation、After every push、または Manual(誰かが @claude review とコメントしたときだけ実行)。
重要な条件: これは Pro/Max の個人開発者が自分で有効化できるものでは ありません - Team/Enterprise の組織が必要で、誰かが Owner ロールを持っている必要があります。
稼働し始めると、Owner は claude.ai/analytics/code-review の analytics ダッシュボードで導入状況を追跡できます: 1日あたりにレビューされた PR 数、週ごとの支出、そしてフラグされた問題を誰かが修正したことでレビューコメントが自動解決された件数が、リポジトリごとに分かれて表示されます。ダッシュボードの数値はトレンドを把握するための目安として扱ってください - 請求と一致する正確な支出は、実際の Anthropic の請求書で確認してください。
料金 - 実際にいくらかかるか
各レビューは平均 $15〜25 で、実際のトークン使用量に基づいて課金され、PR のサイズやコードベースの複雑さに応じてスケールします。このコストは usage credits を通じて別途課金され、Team/Enterprise プランに含まれる使用量には カウントされません。トリガーの選択によって合計は目に見えて変わります: Once after PR creation は PR ごとにちょうど1回、Manual は誰かがコメントしたときだけ、After every push はプッシュのたびに再実行され - 3つのなかで最も高くつきます。組織は admin settings で月ごとの支出上限を設定でき、上限に達するとレビューは一時停止し、次の請求期間で自動的に再開します(または管理者が上限を引き上げれば即座に再開します)。
比較として: ローカルの /code-review コマンドは、すでに支払っている使用量を超えて費用がかかることはありません。
マージをブロックするのか?
いいえ - 決してしません。check run は常に neutral な結論で完了するため、たとえそうしたくても branch protection でそれを直接ゲートにすることはできません。これは、これをハードなマージゲートとして評価しているチームにとって本当に意外なポイントです: 実際に強制するには、check run の出力の末尾にある機械可読な重大度の内訳を、自分の CI で自分でパースする必要があります。例:
gh api repos/OWNER/REPO/check-runs/CHECK_RUN_ID \
--jq '.output.text | split("bughunter-severity: ")[1] | split(" -->")[0] | fromjson'
# => {"normal": 2, "nit": 1, "pre_existing": 0}
normal キーは Important の指摘件数です。ゼロでない値は、マージ前に修正する価値のあるバグが少なくとも1つあることを意味します。
もう1つ知っておくと良い細かい点: レビューはベストエフォートです。実行が内部エラーに当たったりタイムアウトしたりすると、check run のタイトルは Code review encountered an error または Code review timed out に変わりますが - いずれにせよ結論は neutral のままなので、失敗した実行がクリーンな実行以上にあなたをブロックすることはありません。再試行するには @claude review とコメントしてください。GitHub 自身の Checks タブにある Re-run ボタンでは Code Review は再トリガーされません。
3つめの選択肢 - ローカルでカスタマイズできるレビュアー
マネージドなボットと無料のローカルコマンドに加えて、正直に名前を挙げる価値のある3つめの道があります: AgentKit の Engineer Kit には、ローカルのレビューエージェント(code-reviewer)が同梱されていて、/ak:review 経由で呼び出せます - /code-review を実行するのに似ていますが、キットのほかのエージェントやワークフローと一緒にまとめられ、あなたが定義したプロセスに合わせてカスタマイズでき、Team/Enterprise に限定されず、レビューごとの課金もありません - 代わりにキットの1回きりの価格です。これは Anthropic 自身のボットに対する機能同等の主張ではなく - 他の2つのどちらも望まない読者のための、正直な3つめの比較ポイントにすぎません。ローカルコマンドの詳細は ローカル /code-review の詳しい解説 をご覧ください。製品の概要は AgentKit レビュー をお読みください。
どれを使うべきか?
相互排他ではありません - 多くのチームは複数を併用しています:
- 個人開発者、どのプランでも: ローカルの
/code-reviewコマンド - 無料で十分。 - コマンドを教えずにすべての PR で自動的にカバーしたいチーム: マネージドなボット - 1回あたり $15〜25 の予算を。
- レビューごとの課金なしで、どのプランでもカスタマイズ可能なレビュアーが欲しい: キットベースのレビューエージェント。
よくある質問(FAQ)
Claude Code のネイティブな GitHub Code Review とは?
組織の Owner が有効化する GitHub App のボットで、GitHub 上のプルリクエストを自動的にレビューし、重大度でタグ付けしたインラインコメントを投稿します。現在は research preview です。
無料ですか?
いいえ。1回のレビューあたり平均 $15〜25 で、usage credits を通じて別途課金され、プランに含まれる使用量にはカウントされません。無料の選択肢はローカルの /code-review コマンドです。
どのプランで Code Review が使えますか?
Team と Enterprise のみ(research preview)で、Zero Data Retention が有効な組織では利用できません。Pro/Max はボットを自分で有効化できませんが、ローカルの /code-review コマンドはすべてのプランで使えます。
マージをブロックしますか?
決してしません。check run は常に neutral な結論で完了するため、branch protection でそれを直接ゲートにすることはできません - ハードなゲートには、機械可読な重大度の内訳を自分で CI でパースする必要があります。
REVIEW.md と CLAUDE.md の違いは?
REVIEW.md はレビュー専用で、すべてのレビューエージェントに最優先の指示として注入されます。CLAUDE.md は一般的なプロジェクトのコンテキストで、そこでの新しい違反は Nit までしかタグ付けされません。ローカルの /code-review コマンドは CLAUDE.md を読みますが REVIEW.md は読みません。
代わりにローカルの /code-review コマンドを使えますか?
はい、しかもすべてのプランで無料です。トレードオフ: 自分で実行する必要があり、ボットが提供するようなすべての PR での自動カバーは得られず、REVIEW.md も読み込みません。
まとめ
3つの選択肢、3つの状況: GitHub Code Review ボットは Team/Enterprise での research preview で、1回あたり $15〜25、そして決してマージをブロックしません。ローカルの /code-review コマンドはすべてのプランで無料ですが、自分で実行します。キットベースのレビューエージェントは、カスタマイズ可能で1回きりの価格の選択肢です。ローカルコマンドの詳細を知りたいですか? /code-review による AI コードレビュー をご覧ください。セキュリティに絞った、まったく別のレビュー層が必要ですか? /security-review によるセキュリティ監査 をご覧ください。
レビューごとではなく1回きりの価格で、カスタマイズ可能なローカルレビュアーが欲しいですか? AgentKit の Engineer Kit は、code-reviewer エージェント(/ak:review で実行)を、その他の開発ワークフロー用エージェントとまとめて、Claude Code と Codex の両方に提供します。