Claude Code integration - CodeRabbitの意訳です。
Claude Code が CodeRabbit を、開発ワークフローの中で直接実行できるようにする手順を解説します。AIにコードを書かせてレビューさせ、さらに指摘を自律的に修正させます。
自律型 AI 開発ワークフロー
CodeRabbit CLI と Claude Code を組み合わせることで、自律型の AI 開発ワークフローを構築できます。Claude Code は自身のプロセスの一部として CodeRabbit を直接実行しますが、ニーズに合わせてワークフロー全体をカスタマイズできます。Claude に機能実装、コードレビューの実行、問題の修正を依頼すれば、フロー全体を人手なしで完結します。このワークフローはAIコーディングを自立させ、コードをマージする前に問題を解決する、組み込み型の品質ゲートになります。
動画デモ
この記事では、CodeRabbit CLI と Claude Code を統合する方法を解説します。CodeRabbit CLI 単体の使い方は CLIについて を参照してください。
CodeRabbit はコードの変更を分析して具体的な問題を抽出し、Claude Code は CodeRabbit のコンテキスト豊富なフィードバックに基づいて修正を行います。
なぜ統合をオススメするのか
専門的な問題の検出を実現
CodeRabbit は、一般的なLinterなどが見逃すレースコンディション、メモリリーク、ロジックエラーを発見します。PR レビューを支える同じパターン認識を活用しています。
AI による自動修正
Claude Code は、CodeRabbit の分析から得た、完全なコンテキストを用いて修正を実装します。複雑なアーキテクチャ変更にもスマートに対応します。
コンテキストの保持
CodeRabbit の --prompt-only
モードは、問題の位置、重大度、推奨アプローチを含む簡潔なコンテキストを Claude Code に提供します。
連続したワークフロー
開発をフロー状態にとどめたまま、レビューの実行・修正の適用・反復をツールの切り替えや思考の中断なく進められます。
前提条件
1. Claude Code をインストール
プラットフォーム別の手順に従って Claude Code をインストールします。ターミナルから Claude Code を起動できることを確認してください。
2. CodeRabbit CLI をインストール
CodeRabbit CLI をシステムにグローバルインストールします。
curl -fsSL https://cli.coderabbit.ai/install.sh | sh
シェルを再起動します。
source ~/.zshrc
3. Claude 内で CodeRabbit を認証する
認証はコマンドラインの認証とは別に、Claude Code のインスタンス内で行う必要があります。Claude Code に認証開始を依頼します。
Run: coderabbit auth login
Claude がコマンドを実行し、URL を提示します。ブラウザでその URL を開き、CodeRabbit にログインして認証トークンをコピーします。トークンを Claude Code に貼り付けます。
認証は Claude Code のインスタンス間で持続します。この操作は一度だけで済みます。
4. セットアップの検証
Claude Code が CodeRabbit のコマンドを実行できるかテストします:
Run: coderabbit auth status
成功するとログイン状態が表示され、Claude が CodeRabbit コマンドを実行できることが確認できます。
統合したワークフロー
新機能の実装の一部として CodeRabbit を使う
1. 実装 + レビューの要求
Claude Code に機能の実装と、問題修正付きの CodeRabbit 分析実行を依頼します。以下は例です。
計画書のフェーズ7.3を実装し、その後 `coderabbit --prompt-only` を実行してください。
必要なだけバックグラウンドで実行し、レスポンスが来たら、それに沿って修正してください。
主要な構成要素:
-
機能を実装:
Claude が要求された機能をコーディングします -
CodeRabbit を実行:
--prompt-only
フラグで AI 最適化出力を使用します -
バックグラウンド実行:
Claude をブロックせずに CodeRabbit を実行します -
問題の修正:
CodeRabbit が特定したすべての問題に Claude が対処します
2. Claude が実装し、CodeRabbit を実行
Claude Code は以下を行います。
- 依頼された機能を実装
-
coderabbit --prompt-only
をバックグラウンドで実行 - CodeRabbit の進捗を確認するタイマーを設定、または完了を促すあなたからの指示を待機
以下のように、手動で Claude に CodeRabbit の完了確認を促すこともできます。
CodeRabbitは実行を終了しましたか?
3. CodeRabbit の分析とタスク作成
CodeRabbit が完了すると、Claude Code は以下を行います。
-
--prompt-only
の出力(AI エージェント向けに最適化されたプレーンテキスト)を読み込む - CodeRabbit が表面化した各問題に対応するタスクリストを作成する
- 実装前に計画された修正内容を表示する
4. 自動問題解決
Claude Code はタスクリストを体系的に処理し、CodeRabbit の各指摘に対する修正を実装します。すべての重要問題が解決されるまでこのサイクルを繰り返します。
例: API 連携の実装
以下は、決済処理用の Webhook ハンドラを実装するワークフローを例としています。
1. 実装を開始
# 支払いWebhook機能の開発中
git checkout -b feature/payment-webhooks
2. 統合ワークフローを実行
Claude Code に実装とレビューを指示します。
仕様書に基づいて支払いウェブフックハンドラーを実装してください。
その後、バックグラウンドで `coderabbit --prompt-only` を実行し、指摘があれば修正してください。
3. CodeRabbit の分析
CodeRabbit は Webhook のコードを分析し、次の問題を特定したとします。
- 署名検証の欠如
- 決済状態更新におけるレースコンディション
- ネットワーク障害に対するエラーハンドリング不足
- Webhook リプレイ攻撃の脆弱性
4. Claude Code の修正
Claude Code は自動的に修正を適用します。
- HMAC 署名検証を追加
- 状態整合性のためにデータベーストランザクションを実装
- 指数バックオフ付きのリトライロジックを追加
- 冪等性キーの処理を追加
5. 検証
すべての重要問題が解決されるまでワークフローは継続します。修正が終われば、Claude Code は完了を報告します。
--prompt-only
モードは、ファイル位置や問題の説明、推奨修正など、各問題に関するトークン効率の良い簡潔なコンテキストを Claude Code に提供します。
最適化のヒント
効率のために prompt-only モードを使用
Claude Code の前に手動で CodeRabbit を実行する場合は、AI エージェント統合を最適化するために --prompt-only
を使用します。
coderabbit --prompt-only
このモードでは、以下の特徴があります。
- 簡潔な問題コンテキスト
- トークン効率の良いフォーマット
- 具体的なファイル位置と行番号
- 過剰な詳細に流されない修正アプローチの提案
Claude Code 用に CodeRabbit を設定
これは有料の Pro プラン機能です。
CodeRabbit は自動的に claude.md
を読み込み、コードレビューの進め方、コーディング規約、アーキテクチャの方針などのコンテキストを追加します。
トラブルシューティング
CodeRabbit が問題を見つけない
CodeRabbit が想定した問題を検出しない場合は、以下を確認してください。
-
認証状態を確認:
coderabbit auth status
を実行してください。なお、認証はレビュー品質を向上させますが必須ではありません。 -
git の状態を確認:
CodeRabbit は追跡対象の変更を分析します。git status
を確認してください。 -
レビュータイプの検討:
何をレビューするかを--type
フラグで指定します。-
coderabbit --type uncommitted
- 非コミットの変更のみ -
coderabbit --type committed
- コミット済みの変更のみ -
coderabbit --type all
- コミット済みと未コミットの両方(デフォルト)
-
-
ベースブランチの指定:
メインブランチがmain
でない場合は--base
を使用します。coderabbit --base develop
coderabbit --base master
-
ファイル種別の確認:
CodeRabbit はドキュメントや設定ではなくコードファイルに注力します。
Claude Code が修正を適用しない
Claude Code が CodeRabbit の提案を実装しない場合、以下を確認してください。
-
バックグラウンド実行を確保:
プロンプトに「必要なだけ実行させて(バックグラウンドで実行)」を含めてください。 -
prompt-only モードを使用:
より良い AI 統合のためにcoderabbit --prompt-only
を使用していることを確認してください。 -
明示的なコンテキスト提供:
Claude Code に「CodeRabbit が見つけた問題を修正する」ことを明確に指示します。 -
レビュー完了の確認:
レビューがまだ実行中の可能性があります。Claude Code に「CodeRabbit は実行完了したか?」と促してみましょう。 -
タイムアウト問題への対処:
CodeRabbit が早期終了するようなら、Claude に「CodeRabbit が必要なだけ時間をかけられるようにして」と指示します。
レビュー時間の管理
CodeRabbit のレビューは、変更範囲に応じて 7~30分以上かかる場合があります。
-
バックグラウンド実行を確保:
作業を継続できるよう、Claude Code がバックグラウンドで CodeRabbit を実行するよう設定します。 -
小さな変更セットをレビュー:
分析時間短縮のためにレビュー対象を調整してください。-
--type uncommitted
で未コミットの変更のみをレビュー - main と比較して小さなフィーチャーブランチで作業
- 大きな機能を小さく、レビューしやすい単位に分割
-
-
差分範囲の設定: 解析対象の変更を制御します。
-
未コミット変更のみをレビュー:
--type uncommitted
で作業ツリーの変更だけを分析 -
ベースブランチを設定:
比較点として--base develop
や--base main
を使用 -
フィーチャーブランチを使用:
大きなステージングブランチではなく、焦点の定まったフィーチャーブランチで作業
-
未コミット変更のみをレビュー:
Claude CodeとCodeRabbit CLIの統合により、どちらか一方のツールだけでは実現できない、より徹底したレビュー工程が実現します。この統合により、本番環境にリリースされてしまう可能性がある課題を包括的に検出できるでしょう。