🤝
Claude Codeからいい感じにGemini CLIに検索してもらう
mizchiさんの記事で紹介されているClaude CodeからGemini CLIのgoogle_web_searchを使う手法をベースに技術スタックの検索を使いやすくする設定を組んでみました。
この設定ではCLAUDE.mdとGEMINI.mdを使い分け、最新の情報や公式ドキュメント等を優先して取得することを目的にしています。
Claude Code側
Claude Codeでは主にGemini CLIに検索を依頼する箇所を記述しています。
今回、Geminiは無料枠を使っており、機密情報は渡さないようにしています。
CLAUDE.md
# Web検索と機密情報保護ルール
## Web検索に関する基本ルール
### 検索機能の制限
- **Claude Codeの内蔵検索機能(WebSearch、Web fetch)は使用禁止**
- Web検索が必要な場合は、必ずGemini CLIを使い検索をさせること。
- 次のコマンドを使ってgeminiに検索させてください: `gemini --prompt 'WebSearch: <クエリ>'`
## 機密情報保護ルール
## 検索してもよい情報
- 技術的な一般情報
### 検索してはいけない情報
#### プロジェクト関連
- 社内プロジェクト名・開発コード名
- 未公開の機能名・製品名
- 内部仕様書や設計書の内容
- プロジェクトの進捗や期限
#### 技術・システム関連
- データベースのスキーマや接続情報
- API キーやシークレット情報
- アカウント情報やログイン詳細
## Gemini検索委譲フロー
### Step 1: 機密性チェック
```
検索クエリに機密情報が含まれているか?
├─ YES → 検索中止、代替案提示
└─ NO → Step 2へ
```
### Step 2: Gemini CLI委譲
以下のコマンドを使い検索を委譲する。
クエリは必要に応じて英語で渡しても良い。
```bash
gemini --prompt 'WebSearch: <安全なクエリ>'
```
---
**重要**: このルールは全てのClaude Codeセッションで適用されます。不明な点がある場合は、より安全な選択肢を選んでください。
Gemini CLI側
Geminiでは検索時に優先する情報源について設定しています。
GEMINI.md
# GEMINI.md - 検索品質ガイドライン
## 情報源の優先順位
### フレームワーク・技術に関する情報
特定のフレームワークや技術について調査する場合、以下の優先順位で情報を取得してください:
1. **一次情報源(最優先)**
- 公式ドキュメント・公式サイト
- 公式GitHub リポジトリ
- 公式ブログ・リリースノート
- 公式チュートリアル
2. **信頼性の高い二次情報源**
- 技術系メディアの記事
- 著名な開発者のブログ
- Stack Overflow等のQ&Aサイト
- GitHub Issues/Discussions
3. **補足的な情報源**
- 技術系コミュニティの投稿
- 個人ブログ
- チュートリアル動画
## バージョン情報の明確化
### 必須事項
- **バージョン番号を必ず明記**すること
- 対象となる技術・フレームワークのバージョンを特定
- 複数バージョンの情報がある場合は、それぞれ区別して記載
### 推奨検索パターン
```
良い例:
- Next.js 15.x の新機能
- React 18.3 のパフォーマンス改善
- TypeScript 5.6 の型システム変更
悪い例:
- Next.jsの新機能
- Reactのパフォーマンス改善
- TypeScriptの型システム
```
## 情報の鮮度重視
### 基本方針
- **2024年以降の情報を優先**して検索
- 古い記事(2年以上前)は参考程度に留める
- 最新のベストプラクティスを重視
### 情報の評価基準
1. **公開日・更新日**: 最新であるほど優先
2. **技術バージョン**: 現在使用されているバージョンに対応
3. **情報源の権威性**: 公式 > 著名開発者 > 一般ユーザー
4. **内容の具体性**: 実装例やコードサンプル付きを優先
## 検索クエリの最適化
### 推奨する検索キーワード
- **バージョン指定**: 具体的なバージョン番号
- **用途明確化**: "best practices", "performance", "security"
### 検索例
```
# バージョン特定
"TypeScript 5.6 breaking changes"
"Tailwind CSS 4.0 migration guide"
# 実装例重視
"PostgreSQL 16 best practices examples"
"Node.js 22 async patterns code"
```
## 情報の検証と整理
### 複数ソース確認
- 公式情報と実践的な記事の両方を参照
- 矛盾がある場合は公式情報を優先
### 結果の構造化
1. **情報源の明記**: どこから取得した情報かを明確に
2. **バージョン情報**: 対象バージョンを明記
3. **公開日**: 情報の新しさを示す
4. **実装例**: 可能な限りコードサンプルを含める
## 注意すべき情報
### 避けるべき情報源
- **非公式の翻訳記事**(誤訳の可能性)
- **個人の主観的な評価のみの記事**
- **明確なソースが示されていない情報**
- **2年以上前の古い記事**(技術変化が激しい分野)
### 品質チェックポイント
- 公式ドキュメントへのリンクがあるか
- 具体的なバージョン情報が記載されているか
- 実装例やコードサンプルがあるか
- 最新の情報(2024年以降)か
- 複数のソースで確認できるか
## 検索結果の報告形式
### 推奨フォーマット
```markdown
## 検索結果
### [技術名] [バージョン] - [トピック]
- **情報源**: [公式サイト/GitHub/技術メディア名]
- **公開日**: YYYY-MM-DD
- **対象バージョン**: X.X.X
- **概要**: [要点を簡潔に]
- **実装例**: [コードサンプルがあれば]
### 参考情報
- [関連する公式ドキュメントのURL]
- [追加の技術記事があれば]
```
---
**重要**: 情報の正確性と最新性を最優先し、不確実な情報は複数ソースで確認してください。
試してみる
4日前にリリースされたVite7の情報を調べてみました。Claude Codeでの検索は使わず、Gemini CLIに投げることができているのでよさそうです。
Discussion