前回の記事「CodeRabbitで全コードレビューしてもらう方法」では、
GitHub上でPRを作成してAIコードレビューを受ける方法を解説しました。

永久無料で使えるAIコードレビュー『CodeRabbit』で全コードレビューしてもらう方法 CodeRabbitは無料でAIコードレビューが受けられるサービスです。GitHubのPublicリポジトリなら永久無料。導入方法からPRの作成、無料で全コードレビューを受けるコツまで、初心者向けに解説します。  続きを読む

今回は CodeRabbit CLI を使って、PR作成なしでレビューを取得し、
Claude Code で指摘事項を自動修正する方法を紹介します。

なお、CodeRabbit CLIはアップデートが頻繁で、以前紹介していた --prompt-only オプションは廃止されました。2026年7月時点(v0.7.1)の最新コマンドに対応した内容です。


    前提条件

    • CodeRabbitアカウント(Freeプランで可)
    • Claude Codeがインストール済み
    • Gitリポジトリがある

    CodeRabbitとCodeRabbit CLIの違い

    CodeRabbitには2つの利用方法があります。

    CodeRabbit(GitHub連携)

    GitHubと連携して、PRを作成すると自動でレビューが実行される方式です。

    コード変更 → push → PR作成 → 自動レビュー
    

    特徴:

    • PRベースのワークフロー
    • チーム開発向け
    • レビュー結果がPRのコメントに残る

    CodeRabbit CLI

    ターミナルからコマンド一発でレビューを実行できる方式です。

    コード変更 → commit → coderabbit review → 即座にレビュー
    

    特徴:

    • PR作成不要
    • ローカルで即座に実行可能
    • pushする前の変更もチェックできる

    比較表

    項目GitHub連携CLI
    PR作成必要不要
    実行タイミングPR作成時(自動)コマンド実行時(手動)
    レビュー対象PRの差分mainとの差分(ローカル)
    結果の保存場所GitHubコメントターミナル出力
    用途マージ前の最終チェック開発中のこまめな確認

    レビュー対象について

    どちらも「mainブランチとの差分」をレビューします。

    つまり、mainにREADME.mdしかない状態で全コードを追加したブランチを作れば、全コードがレビュー対象になります。CLIなら、PR作成なしで全コードレビューが可能です。

    実際の使い分け

    開発中:CLIでこまめにチェック

    # 1. コード変更
    # 2. コミット
    git add .
    git commit -m "feat: 新機能を追加"
    
    # 3. CLIでレビュー(PR不要!)
    coderabbit review --committed > logs/coderabbit-review.txt
    
    # 4. Claude Codeで修正
    claude
    > @logs/coderabbit-review.txt を読んで、すべての指摘を順番に修正してください
    
    # 5. 修正をコミット
    git add .
    git commit -m "fix: レビュー指摘を修正"
    
    # 6. 満足するまで 3〜5 を繰り返す
    

    完成後:PR作成で最終確認

    # 7. push
    git push origin feature-branch
    
    # 8. GitHubでPR作成
    # → CodeRabbitが自動でレビュー(最終チェック)
    
    # 9. 問題なければマージ
    

    開発フロー図

    【開発フェーズ】
      コード変更 → commit → coderabbit review → Claude Code修正
           ↑                                         ↓
           ←←←←←← 繰り返し ←←←←←←←←←←←←←←←←←←←←←←
    
    【リリースフェーズ】
      push → PR作成 → 自動レビュー → マージ
    

    CodeRabbit CLIのセットアップ

    1. インストール

    curl -fsSL https://cli.coderabbit.ai/install.sh | sh
    

    インストール後、シェルを再読み込みします:

    source ~/.zshrc  # macOS/Linuxの場合
    

    インストールが完了すると、coderabbit と短縮形の cr の両方が使えるようになります。

    2. 認証

    coderabbit auth login
    

    ブラウザが開くので、GitHubアカウントで認証します。

    3. 動作確認

    coderabbit auth status
    

    以下のように表示されればOKです:

    ────────────────────────────────────────
    CodeRabbit Auth
    User info
    Account      : your-account (your@email.com)
    Provider     : GitHub
    ────────────────────────────────────────
    Review access
    Plan         : Free
    ────────────────────────────────────────
    

    CLIコマンドの使い方(v0.7.1〜)

    --prompt-only オプションは廃止されました。代わりに review サブコマンドとオプションを組み合わせて使います。

    主要なオプション一覧

    コマンド用途
    coderabbit reviewトラッキング済みの変更をレビュー(デフォルト)
    coderabbit review --committedコミット済みの変更のみをレビュー(Claude Codeとの連携に最適)
    coderabbit review --uncommittedステージング済みおよびトラッキング済みの未コミット変更をレビュー
    coderabbit review --agentAIエージェント向けの構造化された出力
    coderabbit review --show-prompts直前のレビューで使ったAIプロンプトを表示(新規レビューなし)
    coderabbit review --light軽量レビュー(コンテキスト処理を減らして高速化)

    Claude Codeとの連携に推奨するコマンド

    Claude Codeに渡すなら --committed が最適です。
    mainとの差分(コミット済み変更)に絞ったレビューなので、ノイズが少なく精度の高い出力が得られます。

    coderabbit review --committed > logs/coderabbit-review.txt
    

    出力例:

    ────────────────────────────────────────────────────────────────────────
      critical [Security & Privacy]
      → est-form/admin/admin-session.php:154
    
      The dummy hash is not a valid bcrypt hash, so the timing mitigation does
      not work.
    
      🔒 Proposed fix
    
       if (!isset($users[$username])) {
      -    password_verify($password, '$2y$10$abcdefghijklmnopqrstuuABC...');
      +    password_verify($password, '$2y$10$C6UzMDM.H6dfI/f/IKcEe.6T...');
      ...
    ────────────────────────────────────────────────────────────────────────
      major [Functional Correctness]
      → est-form/estfm-validation.php:435
    
      Catch Throwable, and use one key for the system error.
      ...
    ────────────────────────────────────────────────────────────────────────
    Review complete
    56 findings ✔
    
    Critical 9
    Major    31
    Minor    16
    

    ファイル名・行番号・深刻度・修正提案がセットで出力されます。

    レビューの取得と修正の流れ

    CodeRabbitは「PRの差分」だけをレビューします。
    既存のコード全体をチェックしたい場合は、空のmainから全コードをブランチに追加する方法が有効です。

    1. 現行のプロジェクトフォルダをバックアップ(.git以外)

    Finderで別の場所にコピーしておく

    2. GitHubでリポジトリを削除して再作成

    1. Settings → 一番下 [Delete this repository] からリポジトリを削除
    2. リポジトリを再作成(Add README を ON で README.md を初期化)

    3. ローカルで新しいリポジトリをclone

    git clone https://github.com/your-name/your-repo.git
    

    4. 新しいブランチを作成

    cd "~/your-repo"
    git checkout -b init-release
    

    5. バックアップからファイルをコピー(.git以外)

    6. コミット

    git add .
    git commit -m "feat: Initial release"
    git push origin init-release
    

    7. レビューを取得して、ファイルに保存

    プロジェクトのルートディレクトリで以下を実行します:

    coderabbit review --committed > logs/coderabbit-review.txt
    

    完了すると ✔ Summarizing changes と表示されます。

    8. Claude Codeで修正

    出力ファイルをClaude Codeに渡して依頼します:

    claude
    
    @logs/coderabbit-review.txt を読んで、すべての指摘を順番に修正してください
    

    9. 修正完了後の流れ

    # 1. 動作確認
    npm start  # または php -S localhost:8080 など
    
    # 2. 問題なければコミット
    git add .
    git commit -m "fix: CodeRabbitレビュー指摘を修正"
    git push origin init-release
    
    # 3. 再度レビューして改善を確認(任意)
    coderabbit review --committed > logs/coderabbit-review2.txt
    

    ※新たな問題が発生することも多いので、再度レビューして確認した方が良いです。

    10. 不要になったブランチを削除

    # 1. mainブランチに切り替え
    git checkout main
    
    # 2. init-releaseの内容をmainにマージ(履歴を1つにまとめる)
    git merge --squash init-release
    
    # 3. まとめてコミット
    git commit -m "feat: Initial release"
    
    # 4. リモートにpush
    git push origin main
    
    # 5. 不要になったブランチを削除
    git branch -D init-release
    
    補足:--squash オプション
    オプション結果
    git merge複数コミットがそのまま履歴に残る
    git merge --squash複数コミットを1つにまとめる

    「feat: Initial release」と「fix: レビュー修正」を1つのコミットにまとめてmainに入れます。

    📍 Claude Codeへの指示をカスタマイズする

    CodeRabbitは厳格なため、プロジェクト固有の事情で対応不要な指摘が混ざることがあります。
    Claude Codeへの指示にスキップ条件を明示しておくと、無駄な修正を防げます。

    スキップ条件を指定する例

    実際のフォーム開発で使っている指示例です:

    # 新しいセッション開始
    claude --enable-auto-mode            # オートモードで起動
    
    プロジェクト名:[プロジェクト名]
    Task X.X: CodeRabbit00thレビュー修正 を開始します。
    
    --------
    
    **Task X.X.1: Explore(探索・理解)**
    
    @logs/coderabbit-review13.txt を読んで、修正内容を深く理解してください:
    
    ```
    **🔴 Critical 9件(即対応推奨)**
    ......
    
    ---
    
    **🔵 注目のMajor(機能的に重要)**
    ......
    
    ---
    
    **⚠️ 以下はスキップしてください**:
    - config/mail.php L37(一貫してPrivateでテスト中。削除するとテストができなくなる)
    - vendor/phpmailer/ への指摘(Composer管理)
    - lang="ja-GP" / "ja-MP" 等への指摘(意図的な非標準修正)
    - 環境変数化(SMTP認証, 暗号化キー, GA/GTM ID)
    - docs/ 内の例示コードへの指摘
    - style-color-palette*.min.css(SCSSビルド側の問題)
    - 既に修正済みと判断される同パターンの再指摘
    
    ```
    
    **重要**: この段階ではコードは書かないでください。理解に専念してください。
    完了後、Task X.X.2に進んでください。
    
    --------
    
    **Task X.X.2: Plan(計画・設計)**
    ultrathink を使って Task X.Xの詳細修正計画を策定してください:
    
    - 修正手順の詳細化
    - 必要なファイル・クラス設計
    - テスト方法の計画
    - エラーハンドリング設計
    
    必要に応じて以下のコマンドを活用してください:
    ```
    /superpowers:brainstorm   # ブレインストーミング(要件整理・アイデア出し)
    /superpowers:write-plan   # 修正計画の詳細化
    ```
    
    完了後、Task X.X.3に進んでください。
    
    --------
    
    **Task X.X.3: Code & Test(修正・テスト)**
    
    必要に応じて以下のコマンドを活用してください:
    ```
    /superpowers:execute-plan   # 計画の実行(TDD駆動)
    ```
    
    計画に従って修正と動作確認を行ってください:
    
    **修正**:
    - 機能コードの修正
    - エラーログの記録
    
    **動作確認:**
    - シンタックスチェック
    
    完了後、Task X.X.4に進んでください。
    
    --------
    
    **Task X.X.4: Record & Commit(記録・コミット)**
    
    **ドキュメント同期**:
    - /docs-sync                                    # Slash Command
    
    **開発日誌**:
    - /devlog Task X.X: CodeRabbit00thレビュー修正  # Slash Command
    
    **ドキュメント更新**:
    - @logs/CHANGELOG.md                            # 修正内容・進捗状況の記録
    - @logs/ERRORLOG.md                             # エラー・問題解決策の記録
    - @logs/PATTERNS.md                             # 新しい知見・コーディングパターンの記録
    - @logs/devlog/YYYY-MM-DD_TaskX.X_CodeRabbit00thレビュー修正.md   # 詳細な振り返り
    
    **Self-Improvement**:
    今回のタスクでユーザーから修正・指摘を受けた場合は、必ず以下を記録してください:
    - 同じミスを繰り返さないためのルールを `@logs/PATTERNS.md` に追記
    - エラー・問題の根本原因と解決策を `@logs/ERRORLOG.md` に追記
    
    **Git commit実行**:
    ```bash
    git add .
    git commit -m "feat: Task X.X: CodeRabbit00thレビュー修正"
    git push origin main
    ```
    「Task X.X: CodeRabbit00thレビュー修正 → ✅完了」と報告してください。
    
    開始してください。
    
    

    スキップ条件の考え方

    スキップすべき指摘の種類理由の例
    意図的な実装非標準のlang属性、テスト用ハードコード値など
    外部管理のファイルComposerやnpmのvendorディレクトリ
    ビルド成果物minifyされたCSS/JSはソース側を直すべき
    ドキュメント内のサンプルコード実コードではないため実害なし
    同パターンの再指摘前サイクルで修正済みだがスキャン範囲の揺れで再検出されるもの

    CodeRabbitを繰り返し使っていると、「毎回同じ指摘が出るが直せない事情がある」という項目が溜まってきます。スキップリストとして管理しておくと、Claude Codeへの依頼が毎回スムーズになります。

    複数サイクルで繰り返す場合

    一度のレビューですべての問題が解消するとは限りません。修正によってスキャン範囲が広がり、新たな問題が検出されることもあります。

    サイクルを重ねるコツ

    # 1回目
    coderabbit review --committed > logs/coderabbit-review1.txt
    # → Claude Codeで修正 → commit
    
    # 2回目
    coderabbit review --committed > logs/coderabbit-review2.txt
    # → Claude Codeで修正 → commit
    
    # :繰り返す
    

    ファイル名に番号をつけておくと、件数の推移が追いやすくなります。

    件数の推移例(参考)

    サイクル件数概要
    1回目172件初期スキャン
    3〜4回目150〜185件修正と新規検出が交互に出る時期
    10回目以降50〜60件重要な指摘は概ね解消。残るのは低優先度が中心

    件数が一時的に増えても、中身を確認すると以前の指摘が解消されている場合がほとんどです。件数ではなく内容で判断することが大切です。

    実際の修正例

    GitHub - sarap422/electron-multi-grep-replacer: A powerful Electron app for batch find-and-replace across multiple files. Process 1000+ files in under 1 second. A powerful Electron app for batch find-and-replace across multiple files. Process 1000+ files in under 1 second. - sarap422/electr...  続きを読む

    約2万行のElectronアプリで実行した結果、以下のような修正が自動で行われました。

    修正された内容

    カテゴリ修正内容
    セキュリティXSS脆弱性(innerHTML → textContent)
    依存関係Electron 25.0.0 → 25.8.4(EOL対応)
    メモリリークsetIntervalにclearIntervalを追加
    設定ファイル不適切なJSONスキーマを削除
    ドキュメント日付・リンク切れを修正

    修正結果

    21ファイル修正、542行追加、179行削除
    

    人間が手作業でやれば数時間かかる修正が、数分で完了しました。

    まとめ

    CodeRabbit CLI + Claude Codeのメリット

    • PR作成不要でレビューが受けられる
    • 開発中に何度でもチェックできる
    • 指摘の修正が自動化される
    • 人間はロジックの確認に集中できる

    注意点

    • Claude Codeの修正は必ず動作確認する
    • 重大な変更は差分をレビューしてからコミット
    • CodeRabbitは厳格なので、すべての指摘を直す必要はない
    • CLIはアップデートが頻繁なので、定期的に coderabbit update しておく

    個人開発でも、この仕組みを使えばプロレベルのコードレビューと修正が可能になります。
    ぜひ試してみてください。


    関連記事

    永久無料で使えるAIコードレビュー『CodeRabbit』で全コードレビューしてもらう方法 CodeRabbitは無料でAIコードレビューが受けられるサービスです。GitHubのPublicリポジトリなら永久無料。導入方法からPRの作成、無料で全コードレビューを受けるコツまで、初心者向けに解説します。  続きを読む Vibe Codingのワークフロー 実行編4 -  GitHubリリースの手順 開発したプロダクトをGitHubで公開するまでの手順をまとめました。個人開発者向けに、必要最小限の設定で効率的に公開する方法を解説します。  続きを読む

    参考リンク