ultrareview でバグを見つける
/code-review ultra でクラウド上で深い複数エージェント型のコードレビューを実行し、マージ前にバグを見つけて検証します。
Ultrareview はリサーチプレビュー機能です。機能、価格、および利用可能性はフィードバックに基づいて変更される可能性があります。コマンドは /code-review ultra です。ultrareview がアカウントで利用可能な場合、/ultrareview はエイリアスです。
Ultrareview は クラウドセッション として Anthropic のインフラストラクチャ上で実行される深いコードレビューです。/code-review ultra を実行すると、Claude Code はクラウドサンドボックスでレビュアーエージェントのフリートを起動し、ブランチまたはプルリクエストのバグを見つけます。
ローカルの /code-review と比較して、ultrareview は以下を提供します。
- より高いシグナル: 報告されたすべての検出結果は独立して再現および検証されるため、結果はスタイル提案ではなく実際のバグに焦点を当てています
- より広いカバレッジ: より大規模なレビュアーエージェントのフリートが並行して変更を探索するため、ローカルレビューでは見落とされる可能性のある問題が浮かび上がります
- ローカルリソースの使用なし: レビューはクラウドサンドボックスで完全に実行されるため、実行中はターミナルが他の作業に使用可能なままです
Ultrareview は Anthropic のインフラストラクチャ上でクラウドセッションとして実行されるため、claude.ai アカウントでの認証が必要です。API キーのみで署名している場合は、/login を実行して claude.ai で認証してください。Ultrareview は Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry で Claude Code を使用する場合は利用できず、Zero Data Retention を有効にしている組織でも利用できません。ultrareview が利用できない場合、/code-review ultra はセッション内でローカルレビューを実行します。
CLI から ultrareview を実行する
任意の git リポジトリからレビューを開始します。
/code-review ultra
引数なしの場合、ultrareview は現在のブランチとデフォルトブランチ間の差分をレビューします。これには、コミットされていない変更とステージされた変更が含まれます。.env や *.tfvars ファイルなど、認証情報やキーのような名前のファイルに対するコミットされていない変更については、Claude Code は ローカルリポジトリをクラウドセッションにアップロードするためのルールに従います。
ブランチレビューの場合、Claude Code はリポジトリの状態をバンドルしてクラウドサンドボックスにアップロードします。プルリクエストをレビューする場合、Claude Code はマシンから何もアップロードしません。
起動前に、Claude Code はレビュー範囲、残りの無料実行回数、および推定コストを含む確認ダイアログを表示します。ブランチレビューの場合、スコープにはファイルと行数が含まれます。確認後、レビューはバックグラウンドで続行され、セッションを引き続き使用できます。
コマンドは /code-review ultra で呼び出すときのみ実行されます。Claude は ultrareview を自動的に開始しません。
異なるベースに対してレビューする
デフォルトブランチ以外のベースと比較するには、ブランチ名を渡します。この例では、現在のブランチを develop と比較してレビューします。
/code-review ultra develop
ベースブランチはローカルクローンに存在する必要はありません。Claude Code は origin からそれをフェッチします。名前にタイプミスがある場合、Claude Code はエラーで最も近いブランチ名を提案します。
コミット ID またはタグもベースとして機能し、レビューはそのコミット以降のブランチ上の変更をカバーします。
プルリクエストをレビューする
GitHub プルリクエストをレビューするには、PR 番号を渡します。
/code-review ultra 1234
このコマンドは #1234、PR 1234、および貼り付けられた PR URL も受け入れます。貼り付けられた URL は現在のディレクトリ内のリポジトリを指す必要があります。
PR モードでは、クラウドサンドボックスはローカルの作業ツリーをバンドルするのではなく、ホストから直接プルリクエストをクローンします。PR モードは github.com 上のリポジトリおよび Claude Code に接続されている Owner が設定した GitHub Enterprise Server インスタンスで機能します。
github.com 上のリポジトリの場合、サンドボックスは Claude アカウントに接続された GitHub アカウントでクローンするため、そのアカウントは PR のリポジトリを読み取ることができる必要があります。Claude Code は CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC を設定していない限り、クラウドセッションを作成する前にこれをチェックし、アカウントが接続されていない場合または アカウントがリポジトリを見ることができない場合に起動を拒否します。拒否は修正を名前付けします。v2.1.248 より前では、Claude Code は起動前にこれをチェックしませんでした。
/web-setup を実行して、GitHub CLI ログインを Claude アカウントに接続します。
プルリクエストに検出結果を投稿する
Claude Code v2.1.227 以降では、github.com 上のプルリクエストをレビューするときに、Claude が完成した検出結果を PR に自分の GitHub アカウントからの単一のプレーンコメントとして投稿するようにできます。コメントはレビューまたは承認ではなく、「Generated by Claude Code」という注記で終わります。ブランチまたは GitHub Enterprise Server プルリクエストをレビューする場合、Claude Code はセッションにのみ検出結果を表示します。
Claude Code は選択しない限り投稿しません。--no-post がデフォルトです。投稿は実行ごとに行う選択です。
- インタラクティブ: 起動ダイアログで Run and post the findings to the PR as me を選択します。コマンドに
/code-review ultra 1234 --postのように--postを追加すると、Claude Code はその選択を事前選択し、起動前に確認を求めます。 - 非インタラクティブ:
--postフラグを使用して claude ultrareview サブコマンドを実行します。フラグを使用してサブコマンドを実行することで投稿に同意するため、Claude Code は確認なしに投稿します。claude -p '/code-review ultra'実行では、Claude Code は検出結果が到着する前に終了するため、何も投稿しません。代わりにサブコマンドを使用してください。
Claude Code はマシンから投稿しません。レビューのセッション ID を Anthropic API に送信し、API は Claude に接続した GitHub アカウントを通じてレビューの保存された検出結果をコメントとして投稿します。投稿にはレビュー自体と同じ claude.ai サインインが必要です。投稿はサードパーティプロバイダーでは利用できず、CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC を設定した場合も利用できません。
インタラクティブセッションでは、Claude Code は検出結果が到着したときに投稿を開始するため、レビューが完了するまでセッションを開いたままにしてください。Claude Code は投稿の選択をそのセッションにのみ保持します。セッションがレビューの完了前に終了した場合、後で会話を再開しても、Claude Code は何も投稿しません。
投稿が完了すると、Claude は結果を通知します。
- 投稿済み: Claude はコメントへのリンクを提供します。
- 既に投稿済み: 同じレビューの以前の投稿が既に PR にコメントを配置しているため、Claude は再度投稿する代わりにプルリクエストへのリンクを提供します。
- 失敗: Claude は理由を通知し、検出結果はターミナルに留まるため、手動で投稿できます。
プレーンな言葉でリクエストを渡す
Claude Code v2.1.218 以降では、プレーンな言葉で作業内容を説明することもできます。
/code-review ultra check my auth changes
レビューは引き続き現在のブランチをカバーし、引数なしで実行するのと同じスコープです。Claude はテキストをメモとして保持し、起動ダイアログに表示され、検出結果が到着したときにそれに関連付けます。
Claude Code はテキストが複数の単語を持ち、ブランチ名または PR 参照ではない場合にのみ、テキストをメモとして扱います。単一の単語を読み取ると、ブランチ名または PR 参照として読み取られるため、タイプミスされたブランチ名は 異なるベースに対してレビューするからの最も近いブランチエラーを取得します。テキストが check PR 123 again などの PR 参照と他の単語を組み合わせる場合、Claude Code も起動しません。PR 番号のみで再実行してその PR をレビューするか、参照なしで現在のブランチをレビューするよう求めます。
リポジトリが大きすぎてバンドルできない場合、Claude Code は代わりに PR モードを使用するよう促します。ブランチをプッシュしてドラフト PR を開き、/code-review ultra <PR-number> を実行してください。
差分の制限とフォールバック
Ultrareview はレビュー作業が実行される前に差分をチェックし、それをそのままレビューできない場合に通知します。
-
差分が大きすぎる: ブランチレビューはデフォルトで最大 500 個の変更されたファイルと 8,000 個の変更された行を含むことができます。正確な値は変更される可能性があり、拒否は有効な値、差分のサイズ、および最も変更された行を持つファイルを名前付けします。Claude Code は同じ方法で大きすぎるプルリクエストを拒否し、ファイルと行数を名前付けしますが、ファイルごとの内訳は名前付けしません。
-
レビューするものがない: ベースに対する差分が空の場合、ultrareview は拒否し、比較したブランチまたはコミットを名前付けし、あなたがいるケース(ベースブランチ自体にいてコミットされていない変更がない、またはコミットがすべてベースの一部である既存のブランチなど)を名前付けします。また、そのケースの解決方法を提案します。例えば、作業があるブランチに切り替える、ローカル編集をステージングまたはコミットする、または別のベースを渡すなどです。
-
最初のコミット: リポジトリの最初のコミットは比較する前のものがないため、ultrareview は起動ダイアログで確認した後、それ内のすべてのファイルをレビューします。追跡されていないファイルがある場合、代わりに拒否し、レビューしたいものを
git addするよう指示します。同じサイズ制限が適用されます。最初のコミットはその確認後にのみ全体的にレビューされるため、
claude ultrareviewサブコマンドとclaude -pはそれを拒否し、インタラクティブセッションを使用するよう指示します。Claude Code v2.1.277 以降が必要です -
マージベースがない: ブランチがベースブランチと履歴を共有しない場合、またはリポジトリに比較するベースブランチがない場合、ultrareview はリポジトリ内のすべての追跡ファイルをレビューすることにフォールバックします。フォールバックは完全なクローンが必要で、同じサイズ制限を適用します。起動ダイアログで確認するか、
claude ultrareviewサブコマンドを自分で実行するときのみ起動します。claude -pおよびどちらも起こらない他の場所では、ultrareview は拒否し、レビューがすべてのファイルをカバーすることを言い、インタラクティブセッションを使用するよう指示します。ブランチまたは他の参照がないチェックアウト(URL をフェッチした後に
FETCH_HEADをチェックアウトして作成されたデタッチされた HEAD など)では、Claude Code は レビューを拒否し、最初にブランチを作成することを提案します。
価格と無料実行回数
Ultrareview はプランに含まれる使用量ではなく、追加使用量に対して請求されるプレミアム機能です。
| プラン | 含まれる無料実行回数 | 無料実行回数後 |
|---|---|---|
| Pro | 3 回の無料実行 | 追加使用量として請求 |
| Max | 3 回の無料実行 | 追加使用量として請求 |
| Team および Enterprise | なし | 追加使用量として請求 |
- 無料実行回数: Pro および Max の 3 回の実行はアカウントごとの 1 回限りの割り当てであり、更新されません。
- レビューあたりのコスト: 無料実行回数を使用した後、通常は変更のサイズに応じて $5 から $25 の使用量クレジットがかかり、各実行前に起動ダイアログに表示される見積もりと一致します。
- 実行がカウントされるタイミング: クラウドセッションが開始されたとき。早期に停止したレビューまたは完了に失敗したレビューでも無料実行を使用します。有料レビューの場合、使用量クレジットは実行された部分に対してのみ請求されます。
Ultrareview は常に無料実行回数外の使用量クレジットとして請求されるため、有料レビューを起動する前に、アカウントまたは組織で使用量クレジットを有効にする必要があります。使用量クレジットが有効になっていない場合、Claude Code は起動をブロックし、有効にする方法は請求アクセス権によって異なります。
- アカウントの請求を管理できる場合、Claude Code は使用量クレジットを有効にできる請求設定にリンクします。
- Team および Enterprise プランでは、請求アクセス権を持たないメンバーは CLI から管理者に使用量クレジットを有効にするよう要求を送信します。
/usage-credits を実行して、使用量クレジット設定を確認または変更することもできます。
Claude Code は会話ごとに 1 回、使用量クレジット請求の確認を求めます。たとえば /clear で新しい会話を開始する場合、Claude Code は次の有料レビューの確認を再度表示します。
実行中のレビューを追跡する
レビューは通常 5 ~ 10 分かかります。レビューはバックグラウンドタスクとして実行されるため、セッションで作業を続けたり、他のコマンドを開始したり、ターミナルを完全に閉じたりできます。プルリクエストに検出結果を投稿することを選択した場合は、レビューが完了するまでセッションを開いたままにしてください。セッションが先に終了した場合、Claude Code は何も投稿しません。
/tasks を使用して、実行中および完了したレビューを表示し、レビューの詳細ビューを開くか、進行中のレビューを停止します。レビューを停止すると、Claude Code はクラウドセッションをアーカイブし、部分的な検出結果は返されません。
Claude は、レビューが停止されたか、そのセッションが見つからなかったことを伝えることもできます。
- レビューのクラウドセッションが停止されたか、レビューが完了する前に claude.ai でアーカイブされた場合、Claude はそれが停止されたことを伝えます。
- レビューのクラウドセッションが削除された場合、またはそれを起動してから別の Claude アカウントまたは組織にサインインした場合、Claude はセッションが見つからなかったことを伝えます。
- アカウントを切り替えた場合、レビューはそれを開始したアカウントで完了する可能性があります。レビューがまだ実行中の場合は、そのアカウントとして再度サインインし、
claude --resumeで会話を再開してそれを再度接続します。
レビューが完了すると、Claude Code は検証された検出結果をセッション内の通知として表示します。各検出結果には、ファイルの場所と問題の説明が含まれているため、Claude に直接修正を依頼できます。
ultrareview を非対話的に実行する
claude ultrareview サブコマンドを使用して、対話的セッションなしに CI またはスクリプトから ultrareview を開始します。このサブコマンドは /code-review ultra と同じレビューを起動し、リモートレビューが完了するまでブロックし、検出結果を stdout に出力します。
claude ultrareview
claude ultrareview 1234
claude ultrareview origin/main
引数なしの場合、サブコマンドは現在のブランチとデフォルトブランチ間の差分をレビューします。マージベースが存在しない場合は、/code-review ultra と同じリポジトリ全体フォールバックを使用します。PR 番号を渡してプルリクエストをレビューするか、ベースブランチを渡してそれに対してレビューします。ベースブランチ処理は対話的コマンドと一致します。
サブコマンドを実行すると、リポジトリ全体フォールバックと課金および利用規約プロンプトに同意したことになるため、入力を待たずに実行が開始されます。自分で実行することが同意としてカウントされます。Claude がたとえば Bash ツールを通じてサブコマンドを代わりに実行する場合、Claude Code はリポジトリ全体レビューを拒否します。
Claude Code v2.1.218 以降では、非対話的セッション(たとえば claude -p '/code-review ultra')で /code-review ultra を実行してクラウドレビューを開始することもできます。Claude Code はレビューを起動し、claude ultrareview とは異なり、検出結果を待たずに追跡リンクを出力します。claude ultrareview は検出結果が到着するまでブロックします。レビューが使用クレジットを課金する場合、Claude Code は起動前に停止し、claude ultrareview を指します。これは課金確認に対話的セッションが必要なためです。v2.1.218 より前では、非対話的セッションの /code-review ultra はローカルレビューを実行していました。
進捗メッセージとライブセッション URL は stderr に出力されるため、stdout は解析可能なままです。これらのフラグを使用して、出力、タイムアウト、および検出結果を投稿するかどうかを制御します。
| フラグ | 説明 |
|---|---|
--json |
フォーマットされた検出結果の代わりに、生の bugs.json ペイロードを出力します |
--timeout <minutes> |
レビューが完了するまで待機する最大分数。デフォルトは 45 です |
--post |
検出結果を完了後にプルリクエストに投稿します。GitHub アカウントからの 1 つのプレーンコメントとして投稿されます。github.com プルリクエストターゲットで機能します。他のターゲットでは、Claude Code はフラグを無視し、そのことを通知します。Claude Code v2.1.227 以降が必要です |
--no-post |
検出結果を投稿しません。これがデフォルトであり、両方のフラグを渡す場合、Claude Code は投稿しません。Claude Code v2.1.227 以降が必要です |
claude ultrareview を実行するには、/code-review ultra と同じ認証と使用クレジット設定が必要です。
サブコマンドは 3 つのコードのいずれかで終了します。
- 0:レビューが完了しました。検出結果があるかどうかに関わらず
- 1:レビューの起動に失敗したか、完了前に停止されたか、クラウドセッションがエラーになったか、またはタイムアウトが経過しました
- 130:Ctrl-C でサブコマンドを中断しました
サブコマンドを中断した場合、リモートレビューは実行を続けます。stderr に出力されたセッション URL に従ってブラウザで監視してください。
--post を使用する場合、サブコマンドは検出結果を出力した直後に投稿を開始し、リンクを stderr に出力します。
- 実行が失敗した場合、停止された場合、タイムアウトした場合、または中断した場合、サブコマンドは何も投稿しません。
- レビューが完了しても、コメントが投稿されない場合、Claude Code は理由を stderr に出力し、検出結果は stdout に残るため、手動で投稿できます。
GitHub プルリクエストの自動レビューについては、Code Review がリポジトリと直接統合され、CLI ステップなしでインライン PR コメントとして検出結果を投稿します。
ultrareview と /code-review の比較
どちらのレビューもコードを検査しますが、ワークフローの異なるステージで使用します。
/code-review |
/code-review ultra |
|
|---|---|---|
| 対象 | 作業中の diff、プルリクエスト、ブランチ、またはパス | 作業中の diff またはプルリクエスト |
| 実行場所 | セッション内でローカルに実行 | クラウドサンドボックスで実行 |
| 深さ | effort 引数でスケール | 独立した検証を備えたマルチエージェントフリート |
| 所要時間 | 数秒から数分 | 約 5 ~ 10 分 |
| コスト | 通常の使用量にカウント | 無料実行、その後使用クレジットで約 $5 ~ $25 / レビュー |
| 最適な用途 | 反復中の迅速なフィードバック | 大幅な変更のマージ前の確信度向上 |
作業中の迅速なフィードバックには /code-review を使用するか、チームメイトのプルリクエストを承認する前にレビューするために PR 番号を渡してください。実質的な変更をマージする前に、ローカルレビューでは見落とす可能性のある問題をキャッチするためのより深い検査が必要な場合は、/code-review ultra を使用してください。
関連リソース
- クラウドで Claude Code を使用する: クラウドセッションとクラウドサンドボックスの仕組みについて学習します
- Manage costs effectively: 使用量を追跡し、支出制限を設定します