2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

前回の記事「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 --agent AIエージェント向けの構造化された出力
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 しておく

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


関連記事

CodeRabbit + Claude Codeで自動修正したら、開発日誌も残そう

CodeRabbit + Claude Codeで自動修正した内容を開発日誌に記録する方法を解説。環境変数化の指摘が実環境で使えなかった実例や、/devlogコマンドで修正理由を残すワークフローを紹介。後から追跡可能な開発体制を構築できます。 続きを読む

永久無料で使えるAIコードレビュー『CodeRabbit』で全コードレビューしてもらう方法

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

参考リンク

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?