フェーズ2: 調査
実装前に既存のコードベース、ドキュメント、外部リソースを体系的に調査するフェーズ。AIエージェントを活用して、リサーチの網羅性と効率を劇的に向上させる手法を解説。
目的
実装に必要な情報を網羅的に収集し、既存コードの構造・依存関係・制約を把握する。車輪の再発明を防ぎ、既存のパターンとの一貫性を確保する。
Before / After
Before: 従来のやり方
- 手動でファイルを開いてコードを理解
- 関連するドキュメントを探して個別に読む
- 影響範囲の見落としで後から手戻り
- 「こんな機能が既にあった」と実装後に発覚
After: ツール活用後
- AIエージェントがコードベース全体を瞬時にマッピング
- 依存関係・影響範囲が自動で可視化
- 外部ドキュメントの検索と要約が自動化
- GitHub リポジトリ検索で既存の実装例を即座に発見
レベル別アプローチ
Beginner
Claude Code の基本ツールでコードベースを調査する。
# ファイル検索
Claude Code > src/ ディレクトリの構造を教えて
Glob ツールで src/**/*.ts を検索
# コード内容検索
Claude Code > 認証関連のコードを全て見つけて
Grep ツールで "auth" を検索
# LSP によるコードインテリジェンス
Claude Code > この関数の定義場所を教えて
LSP ツールで goto definition を実行
# Web 検索でドキュメント確認
Claude Code > React 19 の Server Components の仕様を調べて
WebSearch ツールで最新ドキュメントを検索
手順:
Globでディレクトリ構造を把握Grepで関連コードを検索Readで重要ファイルの内容を確認WebSearchで外部ドキュメントを参照
Intermediate
Superpowers の systematic-debugging の調査フェーズと OMC の explore エージェントを活用。
# OMC: explore エージェント(高速なコードベース検索)
> このコードベースで認証がどう実装されているか調べて
# explore エージェント(haiku)が高速にマッピング
# OMC: external-context(外部ドキュメントの読み込み)
/oh-my-claudecode:external-context
> Next.js App Router のドキュメントを読み込んで
# Superpowers: systematic-debugging の調査手法
# Root Cause Investigation の証拠収集パターンを調査に応用
# エラー読み取り → 再現 → 変更確認 → データフロートレース
# OMC: document-specialist エージェント
> Supabase の RLS ポリシーの書き方を調べて
# リポジトリの docs を優先し、見つからなければ Web にフォールバック
手順:
- OMC explore エージェントでコードベース全体を高速マッピング
- OMC document-specialist でフレームワーク/API のドキュメントを検索
- Superpowers の調査パターンで体系的に証拠を収集
- Context7 MCP で最新のライブラリドキュメントを取得
Advanced
OMC の並列調査と ECC の search-first で多角的にリサーチ。
# ECC: search-first(リサーチファースト開発)
/search-first
> この機能を実装する前に、既存の解決策を調査して
# GitHub リポジトリ検索 → パッケージレジストリ確認 → ドキュメント参照
# OMC: ultrawork(最大並列で調査)
ulw 調査タスクを並列実行して:
1. 認証フローの既存実装を確認
2. データベーススキーマの依存関係をマッピング
3. 外部APIの仕様を確認
4. テストカバレッジの現状を分析
# ECC: documentation-lookup スキル
> Stripe API の Payment Intent の仕様を調べて
# OMC: sciomc(データ分析・統計的推論)
/oh-my-claudecode:sciomc
> パフォーマンスメトリクスからボトルネックを特定して
手順:
- ECC search-first で既存の解決策を横断検索
- OMC ultrawork で複数の調査タスクを並列実行
- OMC scientist エージェントでデータ分析
- Context7 MCP でライブラリの最新ドキュメントを取得
- 調査結果を OMC notepad / project memory に永続化
利用可能なコマンド・スキル
Claude Code 単体 {data-tool="claude-code"}
| ツール | 説明 |
|---|---|
Glob | パターンマッチングでファイル検索 |
Grep | 正規表現でファイル内容検索 |
Read | ファイル読み込み |
WebSearch | Web 検索(ドメインフィルタ付き) |
WebFetch | 指定URLのコンテンツ取得 |
LSP | コードインテリジェンス(定義ジャンプ・参照検索) |
/add-dir | 追加ディレクトリをセッションに含める |
Superpowers {data-tool="superpowers"}
| スキル | 説明 |
|---|---|
systematic-debugging | Root Cause Investigation の証拠収集手法を調査に応用 |
brainstorming | スコープ评估(マルチサブシステムの分解) |
using-git-worktrees | 調査用の独立環境作成 |
OMC {data-tool="omc"}
| スキル / エージェント | 説明 |
|---|---|
explore エージェント | haiku で高速なコードベースマッピング |
document-specialist エージェント | SDK/API ドキュメント検索(リポジトリ優先) |
scientist エージェント | データ分析・統計的推論 |
/external-context | 外部ドキュメントの読み込み |
/sciomc | 科学・研究ワークフロー |
ultrawork | 最大並列で独立した調査タスクを実行 |
/trace | 証拠駆動のトレース |
ECC {data-tool="ecc"}
| スキル / コマンド | 説明 |
|---|---|
/search-first | 実装前のリサーチファーストワークフロー |
/documentation-lookup | API リファレンスの検索 |
/debug | デバッグワークフロー |
/learn | セッション中のパターン抽出 |
iterative-retrieval スキル | 段階的なコンテキスト精製 |
ベストプラクティス
- 実装前に既存コードを確認する -- ECC の search-first は「実装前に既存の解決策を調べる」をワークフロー化している。手動でのコード検索を省略しない
- 調査結果をメモリに永続化 -- OMC notepad の priority セクション(500字以内、常にロード)に重要な調査結果を記録する。セッション終了後も参照可能
- 並列で効率化 -- 独立した調査タスクは OMC ultrawork か Superpowers dispatching-parallel-agents で並列実行する
- 公式ドキュメントを優先 -- OMC document-specialist は「リポジトリの docs を優先し、Web にフォールバック」する順序を自動化している
- LSP を活用 -- Claude Code の LSP 統合で、定義ジャンプ・参照検索・診断を活用し、手動でのファイル検索を減らす
よくある罠
調査不足で実装開始
「大体わかった」で実装を始めると、既存のパターンとの不整合や、既にある機能の再実装が発生する。ECC の /search-first はこれを防止するためのもの。
外部ドキュメントのバージョン不一致
WebSearch で見つけたドキュメントが古いバージョンの可能性がある。Context7 MCP や OMC document-specialist は最新ドキュメントの取得を自動化する。
調査結果がセッション間で失われる
調査で得た知見を CLAUDE.md や project memory に保存しないと、次回のセッションで同じ調査を繰り返すことになる。OMC notepad や ECC continuous-learning で永続化する。
影響範囲の見落とし
Grep でキーワード検索だけでは、間接的な依存関係を見落とす。LSP の find references や goto definition で、呼び出し元まで含めて影響範囲を確認する。
並列調査の結果統合を忘れる
OMC ultrawork で並列調査を実行した後、結果の統合・矛盾の解消を忘れがち。調査完了後には必ず結果の統合レビューを行う。
関連コンテンツ
/help で機能を体系的に探索する
Claude Code の組み込みヘルプ、スラッシュコマンド一覧、設定確認を活用して機能全体を把握する方法
LSP 統合でリアルタイムにコード品質を監視する
Language Server Protocol を Claude Code に統合し、編集直後にエラーや型の問題を検出する方法
Superpowers 実践ガイド
Superpowers(v5.0.7)の14スキルを活用した標準開発パイプライン。ブレスト、計画、実装、レビューの全フローを解説。
カスタムスラッシュコマンドを作成する
.claude/commands/ に Markdown ファイルを置いて、よく使うプロンプトをコマンド化する方法