Level 4: Context Engineer — メモリとコンテキストを設計する
カスタムコマンドを使いこなせるようになると、次の課題が見えてきます。セッションをまたぐと Claude は「前回何を話したか」を覚えていません。メモリを能動的に設計することで、Claude の振る舞いをセッションをまたいで一貫させられます。
対象読者: カスタムコマンドを使いこなしており、Claude の記憶の仕組みを深く理解したい方。
学習時間の目安: 読了 20分 + 実践 30分
Claude のメモリ 3 種類
Section titled “Claude のメモリ 3 種類”Claude Code には 3 種類のメモリがあります。それぞれの特性を理解することが Context Engineering の出発点です。
| 種類 | 保存場所 | 特徴 | 自分で制御できるか |
|---|---|---|---|
| CLAUDE.md | ファイル | セッションをまたいで永続する | できる(自分で書く) |
| Auto-memory | 自動生成ファイル | Claude が重要な情報を自動で保存 | 間接的に(/memory で確認・修正) |
| コンテキストウィンドウ | 会話内のみ | 現在のセッション中だけ有効 | できる(/clear でリセット) |
CLAUDE.md の階層構造
Section titled “CLAUDE.md の階層構造”CLAUDE.md は複数の場所に置くことができます。下位のファイルは上位の設定に追加して読み込まれます。
~/.claude/CLAUDE.md ← すべてのプロジェクトに適用(ユーザー設定)
your-project/
├── CLAUDE.md ← このプロジェクト全体に適用
└── src/api/
└── CLAUDE.md ← このディレクトリにのみ追加適用ユーザーレベル CLAUDE.md の書き方例(~/.claude/CLAUDE.md)
Section titled “ユーザーレベル CLAUDE.md の書き方例(~/.claude/CLAUDE.md)”どのプロジェクトでも共通したい設定を書きます:
# ユーザー設定
## 私のスタイル
- 説明は簡潔に、コード例を優先して
- エラーメッセージは日本語で説明して
- コミットメッセージは英語で書く(例: `feat: add user endpoint`)
- 提案は1案に絞って提示して(複数案は求めた場合のみ)
## 開発環境
- OS: macOS
- シェル: zsh
- よく使うエディタ: VS CodeAuto-memory の仕組みと確認方法
Section titled “Auto-memory の仕組みと確認方法”Auto-memory は、Claude が会話の中で「重要だ」と判断した情報を自動でメモとして保存する仕組みです。たとえば「このプロジェクトではテストに pytest を使う」という情報を一度伝えると、次のセッション以降も覚えています。
現在のメモリを確認するには /memory コマンドを使います:
/memory出力例:
## Project Memory (CLAUDE.md)
Python + FastAPI で構築した REST API サーバー
...
## Auto Memory
- テストは pytest + pytest-asyncio で書く
- データベースのマイグレーションは Alembic を使用
- 本番環境は AWS ECS で動いているコンテキストウィンドウを効率的に使う
Section titled “コンテキストウィンドウを効率的に使う”長い会話を続けると、コンテキストウィンドウ(Claude が一度に処理できる情報量)が埋まっていきます。対処方法は 2 つです:
/clearで会話をリセットする — 新しい話題に切り替える前に実行する- 重要な情報は CLAUDE.md に移す — 「次のセッションでも使いたい情報」はファイルに書く
コンテキストウィンドウが有効なのは「今のセッション中だけ話した詳細情報」に使い、永続させたいものは CLAUDE.md に書くというのが基本の設計方針です。
.claude/rules/ でルールを分割する(@インポート構文)
Section titled “.claude/rules/ でルールを分割する(@インポート構文)”プロジェクトの CLAUDE.md が長くなってきたら、.claude/rules/ フォルダに分割して管理できます。
your-project/
├── CLAUDE.md ← @インポートだけ書く
└── .claude/
└── rules/
├── coding-style.md ← コーディング規約
├── git-workflow.md ← コミット・PR のルール
└── testing.md ← テストの書き方ルールCLAUDE.md の内容(インポートのみ):
# your-project
Python + FastAPI で構築した REST API サーバーです。
@.claude/rules/coding-style.md
@.claude/rules/git-workflow.md
@.claude/rules/testing.md@ で始まる行はそのファイルの内容をインポートします。チームで役割ごとにルールを分担管理したい場合に有効です。
実践チュートリアル
Section titled “実践チュートリアル”手を動かしながら学びたい場合は、チュートリアルを参照してください。