1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

小学生でもわかるコンテキストエンジニアリング入門|Part 2 ~ Claude Codeで4つの作戦 〜

Last updated at Posted at 2025-12-11

1. はじめに

Part 1 では、コンテキストエンジニアリングの基本概念と4つの作戦(Write, Select, Compress, Isolate)を紹介しました。

「理論はわかったけど、実際どう行なえばいいんだ...。」

この記事では、Claude Codeを使って4つの作戦を実践する方法を具体的に解説します。

2. 作戦①:メモを取る(Write)

CLAUDE.md とは?

Part 1 で「カンペ置き場の外にメモしておく」と説明しました。
Claude Code では、このメモを置く場所が CLAUDE.md ファイルです。

プロジェクト/
├── CLAUDE.md        ← これがAIへの「永続メモ」
├── src/
└── package.json

CLAUDE.md に書いた内容は、毎回のセッション開始時に自動で読み込まれます。

/init で自動生成する

CLAUDE.md は手動で作ることもできますが、/init コマンド を使えば Claude が自動で作ってくれます。

/init

これを実行すると、Claude がプロジェクトを分析して、適切な CLAUDE.md を生成してくれます。

つまり、「毎回説明しなくていい情報」をここに書いておけば、AIは常にそれを知っている状態でセッションがスタートされるということです。

/init で生成されるか、手動で作成する CLAUDE.md の例:

# プロジェクト概要

このプロジェクトは、推薦システムのAPIです。...

## 技術スタック
- Python 3.11
- FastAPI
- Redis(キャッシュ)
- BigQuery(データソース)

## 開発ルール
- テストは pytest を使用
- コードフォーマットは black
- 型ヒントは必須

## よく使うコマンド
...

これだけで、AIは毎回「このプロジェクトは何か」「どういうルールで開発するか」を理解した状態で作業を始めてくれます。

調査結果を docs/ に保存する

長い調査結果や分析結果は、CLAUDE.md に直接書くと肥大化します。

代わりに、docs/フォルダ(任意のフォルダでOK)に出力してもらいましょう。

このAPIのアーキテクチャを調査して、docs/example.md に出力して

こうすると、調査結果は外部ファイルに保存され、必要なときだけ参照できます。

【図1】Write の仕組み

┌─────────────────────────────────────────────┐
│          カンペ置き場の外(ファイル)            │
│  ┌───────────────┐  ┌──────────────────┐    │
│  │  CLAUDE.md    │  │  docs/調査結果.md │   │
│  │  (常に読込)   │  │  (必要時に参照)    │    │
│  └───────────────┘  └──────────────────┘    │
└─────────────────────────────────────────────┘
                    ↓ 読み込み
┌─────────────────────────────────────────────┐
│        コンテキストウィンドウ(カンペ置き場)     │
│                                             │
│  「このプロジェクトはFastAPIで...」           │
│                                             │
└─────────────────────────────────────────────┘

3. 作戦②:必要な時だけ取り出す(Select)

全部のファイルを常に読み込むのではなく、今必要なファイルだけを渡すのがポイントです。

情報の種類 置き場所 理由
常に必要な情報 CLAUDE.md 毎回自動で読み込まれる
たまに必要な情報 docs/ フォルダ 必要なときだけ参照

4. 作戦③:要約する(Compress)

/context で使用状況を確認

まず、今コンテキストがどのくらい埋まっているか確認しましょう。

/context

これを実行すると、コンテキストの使用状況が表示されます。

  • 会話履歴がどれくらい容量を使っているか

スクリーンショット 2025-12-09 11.22.52.png

「今どのくらい余裕があるか」を把握してから、/compact/clear を判断できます。

自動で発動する /compact

Part 1 で説明した通り、コンテキストウィンドウには容量制限があります。

Claude Code では、コンテキストが95%に達すると自動的に要約(auto-compact)が発動します。

LangChain Blogより:

Claude Code runs "auto-compact" after you exceed 95% of the context window and it will summarize the full trajectory of user-agent interactions.
(Claude Code は、コンテキスト ウィンドウの 95% を超えると「自動圧縮」を実行し、ユーザーとエージェントのインタラクションの完全な軌跡を要約します。)

/compact を手動で実行

自動要約を待たずに、手動で /compact を実行することもできます。

/compact

/clear との違い

コマンド 動作 使い分け
/compact 会話を要約して圧縮 作業を継続したいとき
/clear 会話履歴を完全削除 新しいタスクを始めるとき
  • タスクが完了したら /clear で完全リセット
  • 長い作業の途中で容量が心配なら /compact

⚠️ 注意点

Part 1 でも触れましたが、要約には情報ロスのリスクがあります。

複数回の compact を繰り返すと重要な情報が、失われることがあります。できれば、作戦①②で「外部に保存」する方が安全です。

【図3】Compress の仕組み

圧縮前:
┌─────────────────────────────────────────────┐
│  会話1: こんにちは                           │
│  会話2: このAPIを作って                      │
│  会話3: エラーが出た                         │
│  会話4: 修正して                            │
│  会話5: テストして                          │
│  ... (大量の履歴)                           │
│                          使用率: 95%        │
└─────────────────────────────────────────────┘
            ↓ /compact
圧縮後:
┌─────────────────────────────────────────────┐
│  [要約] APIを作成し、エラー修正とテストを完了  │
│                                             │
│                          使用率: 20%        │
└─────────────────────────────────────────────┘

5. 作戦④:担当を分ける(Isolate)

サブエージェントとは?

1つのAIに全部やらせると、カンペ置き場がパンクします。

そこで、複数のAI(サブエージェント)で分担します。

Claude Code 公式ドキュメントより:

Each subagent operates in its own context, preventing pollution of the main conversation.
(各サブエージェントは独自のコンテキストで動作し、メインの会話の汚染を防ぎます。)

【図4】サブエージェントイメージ

あなた → Claude
         │
         ├── 調査はサブエージェントに任せる
         │   └── 調査結果だけ返ってくる
         │
         ├── 実装はサブエージェントに任せる
         │   └── 実装結果だけ返ってくる
         │
         └── テストはサブエージェントに任せる
             └── テスト結果だけ返ってくる

サブエージェントの使い方

方法1:自動で委任される

Claude Code は、タスクの内容に応じて自動的にサブエージェントを使います。

方法2:明示的に指示する

〇〇のサブエージェントを使って、この調査を並列で実行して

と明示的に指示することもできます。

6. 4つの作戦のまとめ

作戦 Claude Code での実践方法
Write CLAUDE.md に記録、# でメモ追加、docs/ に調査結果を出力
Select @ でファイル参照、必要なものだけ読み込む
Compress /compact(手動)、95%で自動発動、/clear でリセット
Isolate サブエージェント

7. 実践のコツ

推奨ワークフロー

  1. プロジェクト開始時

    • CLAUDE.md を作成して基本情報を記載
    • よく使うルールや設定を書いておく
  2. 作業中

    • 調査結果は docs/ に出力してもらう
  3. タスク完了時

    • /clear でリセットして次のタスクへ
    • 途中なら /compact で圧縮
  4. 複雑なタスク

    • サブエージェントを活用
    • 並列処理で効率化

Part 3 では、Claude Code Marketplace を作った話をご紹介します。

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?