09-01. ケース 1: 既存リポジトリへの素早いキャッチアップ
シチュエーション
新しいプロジェクト(社内・OSS どちらも)に参加した。コードベース 5 万行、ドキュメントは README.md だけ、残りは全部コードを読む必要がある。 何から手を付ければいいか分からず、最初の 1 週間は「ファイルツリーを眺める」「気になる関数を grep する」を繰り返してしまう。
Before (Claude Code を使わない場合)
| ステップ | 所要時間 | 痛点 |
|---|---|---|
| README を読む | 30 分 | 古いことが多い、最新と乖離 |
ファイルツリーを tree で出して眺める |
30 分 | どれが本筋でどれが補助か分からない |
| 関数を grep してジャンプ | 数時間 | 全体像が掴めない、迷子になる |
| テスト走らせて動かしてみる | 数時間 | 環境構築から失敗 |
| 合計 | 数日〜1 週間 | フラストレーション、最初の PR まで遠い |
After (Claude Code を使う場合)
| ステップ | 所要時間 |
|---|---|
git clone → cd → claude |
5 分 |
(CLAUDE.md がなければ) > /init で初期生成 |
10 分 |
| Claude に質問攻め (下記の質問パターン) | 30〜60 分 |
| 興味があるエントリーポイントを 1〜2 個 Claude と一緒に読む | 30 分 |
| 合計 | 1〜2 時間で骨格把握 |
質問パターン (コピペ可)
> このプロジェクトを 5 行で説明して。何のためのもの? 主要な技術スタックは?
> エントリーポイントはどこ? CLI/Web/ライブラリ どのタイプ?
> 主要なディレクトリの役割を 1 行ずつ列挙して
> テストはどう走らせる? まだなければ何をテスト追加すべき?
> 最近 1 か月で活発に変更されているファイルは? なぜ?
> このコードベースで「最初に読むべき 5 ファイル」を順位付けて
> 設定ファイル (.env, config/*) を解読して何を設定する必要があるか教えて
> README に書かれていない暗黙のルール(命名規約・コミット規約)があれば教えて
必要な道具立て
| 機能 | 何のために |
|---|---|
| (既存) CLAUDE.md | あれば最初に読まれる、なければ /init で作る |
| 自作 Skill: codebase-explore | 調査結果を .notes/<トピック>.md に書き出すルール定義 |
| Hook: なし(調査だけなのでブロック不要) | — |
Skill 例 .claude/skills/codebase-explore/SKILL.md
---
name: codebase-explore
description: 既存コードベースを初めて読む / 構造を理解する時に使う
---
# 探索メモのルール
質問に答える時、以下のフォーマットでメモを `.notes/explore-<topic>.md` に追記する:
<調査トピック>
質問: <ユーザーの質問>
調査ファイル: - path/to/file1.py:42-87 - path/to/file2.py
結論: <3〜5 行で要約>
気になった点 / 次に読むべき場所: - ...
ワークフロー (5 ステップ)
git clone <repo>→cd <repo>mkdir -p .notes && claudeを起動(.notes/は調査メモ置き場、git ignore)- 上記の質問パターンを順に投げる、Skill が動いて
.notes/にメモが貯まる - 1〜2 個のエントリーポイントファイルを Claude と一緒に読む(
> app.py を一緒に読み解いて、重要なロジック 5 か所を指摘して) - 2 日目以降:
.notes/を Claude に読ませながら作業を進める。新しい発見があれば追記
注意点・限界
- 大規模リポ (50万行+) では Claude が全部読むとコスト過大 → ディレクトリ単位で絞る (
> src/auth/ 配下に絞って読み解いて) - 企業内コード: 機密ポリシー次第で API 越しに送れない場合あり → IT 部門に確認
- Claude のハルシネーション: 「○○というファイルがあります」と言われても、実在を Read で確認させる癖をつける
- コスト目安: 1 リポジトリあたり Haiku 4.5 で $0.5〜$2 程度(50 個の質問 + 20 ファイル read)
応用
- PR レビュー前の事前調査: 自分が触ったことない領域のレビュー依頼が来た時、まず Claude にそのモジュールの背景を聞く
- OSS コントリビュート: contribute 先のリポジトリで Issue を選ぶ前に、その Issue の周辺コードをキャッチアップ
- 退職前後の引き継ぎ: 自分の担当領域を
.notes/に Claude と一緒に書き出す → 後任に渡す
このケース後にできるようになること
- 新規参加プロジェクトを 1〜2 時間で骨格把握 できる(従来 1 週間)
.notes/という個人ナレッジが自然に貯まる(09-04 のナレッジベースケースに繋がる)- 「Claude に質問する → 結果を構造化保存」のリズムが身につく