虎の穴ラボ技術ブログ

虎の穴ラボ株式会社所属のエンジニアが書く技術ブログです

MENU

Claude CodeのレビューをMCPで強化する(Gemini/Codex連携)

こんにちは、虎の穴ラボのH.Y.です。
今回はAIで1年ぐらい開発して、今のところこれが一番いいと思ったのでそのお話をします。

コーディングでメインで使用しているのはClaude Codeです。
理由は最も使いやすく4.5 Opusになってから圧倒的にコーディングができると感じているためです。

レビューするAIの設定

Claude Codeから他のAI(Codex、Gemini)を呼び出す設定をする

他に会社で使用できるAIがCodex CLIとGemini CLIです。

Macの場合は以下のインストールコマンドでインストールできます。

(※Homebrewはインストール済みである前提です)

brew install codex
brew install gemini-cli

以下のコマンドを実行して各々のログインなどを済ませておきます。

codex
gemini

次は、Claude CodeからMCPでこの二つのAIを呼び出す設定をします。

他のプロジェクトでもこの仕組みを使用するので自分はユーザー設定にしています。

claude mcp add -s user codex -- codex mcp-server
claude mcp add -s user gemini-cli -- npx mcp-gemini-cli --allow-npx

プロジェクトごとの場合は下のコマンドで

claude mcp add -s project codex -- codex mcp-server
claude mcp add -s project gemini-cli -- npx mcp-gemini-cli --allow-npx

claude mcp listを実行してConnectedになれば設定完了

$ claude mcp list
Checking MCP server health...

codex: codex mcp-server - ✓ Connected
gemini-cli: npx mcp-gemini-cli --allow-npx - ✓ Connected

Geminiにはweb検索機能があるのでそれを利用する用途でも使用するといいと思います。

CLAUDE.mdに追記

CLAUDE.mdに以下の内容を追記します。

## レビュープロセス

### フェーズごとのレビュー体制

すべての実装フェーズにおいて、**必ず以下の3つのレビューを受けること**:

#### 1. Codex レビュー
- **タイミング**: 各フェーズの設計・計画段階
- **目的**: 技術的な妥当性確認、ベストプラクティスの提案
- **対象**: 設計ドキュメント、実装計画、主要なコード変更
- **方法**: MCP `mcp__codex__codex` ツールを使用
- **確認事項**:
  - アーキテクチャの妥当性
  - 既存コードとの整合性
  - パフォーマンスへの影響
  - セキュリティリスク

#### 2. Gemini レビュー
- **タイミング**: 各フェーズの実装完了後
- **目的**: 包括的なコードレビュー、改善提案
- **対象**: 実装済みコード、設定ファイル
- **方法**: MCP `mcp__gemini-cli__ask-gemini` ツールを使用
- **確認事項**:
  - コード品質
  - ドキュメントの充実度
  - エラーハンドリング
  - テストカバレッジ

#### 3. Sub-Agent レビュー
- **タイミング**: 必要に応じて(複雑な実装、重要な変更)
- **目的**: 特定領域の専門的レビュー
- **対象**: アーキテクチャ設計、コード品質、セキュリティ
- **方法**: Task ツールで専門エージェントを起動
  - `architecture-reviewer`: アーキテクチャレビュー
  - `quality-checker`: コード品質レビュー
- **確認事項**:
  - SOLID原則の遵守
  - デザインパターンの適用
  - 長期的な保守性

全部同じプロンプトとせずに少し変えていますが、実際に(観点を)変えてくれているかは自信はありません。 たまに、スルーされることがありますが、レビューしてとコメント打つとCodex、Gemini、サブエージェントでレビューしてくれます。

以下がレビューを依頼した時の指摘の例です。

⏺ レビュー結果

  いくつかの改善点が指摘されました。

  重大な問題

  | 優先度      | 問題        | 説明                                |
  |----------|-----------|-----------------------------------|
  | Critical | N+1 API問題 | 最大50回のAPI呼び出しでページ読み込みが遅くなる |
  | Critical | DRY違反     | methodが2つのコントローラーで重複  |

  その他の問題

  | 優先度    | 問題      | 説明                                                      |
  |--------|---------|---------------------------------------------------------|
  | High   | 未使用メソッド | Class#methodが未使用                           |
  | Medium | 一貫性のなさ  | ビューでclass.status == "succeeded"とclass.succeeded?が混在 |
                                                  

レビュー結果を見てから修正すべきかどうか判断を行うので、かなり人間の工数が減ります。

効果

このやり方を行うようになってから、新しいモデルが出ているので完全な統計ではないのですが、
セキュリティやコーディング的に微妙なところはCodexが結構見つけてくれる印象があります。
ただ、かなりCodexのレビューが遅いので簡単な修正は、サブエージェントやGeminiに限定してレビューしてもらっています。

コードを書くAIも失敗することがあり、またレビューするAIも失敗するのでそれ前提で、
レビュー結果を受け取って複数のAIが同じところを指摘したらそれはほぼ確実におかしいところなので修正しますが、
一つのAIだけ指摘があればそれが妥当かどうかを判断して修正するかを決めたりします。

まとめ

半年ぐらい前(4.0 Sonnetぐらい)まではClaude Codeで生成しても大まかあっているだけで手直しが多かったのですが、
モデルの強化(4.5 Opus)でそもそも手直しの数が減り、この複数AIでのレビューを取り入れたことで手直しが、かなり減りました。
料金は少しかかりますが、手間がかなり減るので導入することをお勧めします。
サブエージェントだけならサブスクリプションであれば(使用枠が減るけど)同じ金額で使えるのでそれもありかもです。

採用情報

虎の穴ラボでは一緒に働く仲間を募集中です!
この記事を読んで、興味を持っていただけた方はぜひ弊社の採用情報をご覧ください。