💻 Claude Code入門 | 📖 6分

メモリとコンテキスト管理 ― 効率的なセッション運用

Claude Codeのメモリシステム

Claude Codeには、セッションをまたいで情報を記憶するメモリシステムがあります。これにより、毎回同じ説明を繰り返す必要がなくなり、プロジェクトの文脈を理解した状態で作業を開始できます。

CLAUDE.mdファイルの種類

メモリの中核を担うのがCLAUDE.mdファイルです。以下の3つのレベルがあります。

レベル場所用途
プロジェクトレベルプロジェクトルートの CLAUDE.mdプロジェクト固有の情報(技術スタック、規約等)
ユーザーレベル~/.claude/CLAUDE.md個人の好み、共通の設定
プロジェクト別ユーザーメモリ~/.claude/projects/<path>/MEMORY.mdプロジェクトごとの個人メモリ

CLAUDE.mdに書くべき内容

# CLAUDE.md の例

## プロジェクト概要
カフェのWebサイト。PHP + SQLite で構築。

## 技術スタック
- PHP 8.1
- SQLite3
- Tailwind CSS

## コーディング規約
- コミットメッセージは日本語で書く
- 変数名はキャメルケース
- インデントはスペース4つ

## よく使うコマンド
- 開発サーバー起動: php -S localhost:8000
- テスト実行: ./vendor/bin/phpunit

コンテキストウィンドウとは

Claude Codeにはコンテキストウィンドウと呼ばれる、一度に処理できる情報量の上限があります。会話が長くなると、この上限に近づき、古い情報が記憶から失われます。

コンテキストを効率的に管理するコツ

  • /compactを活用: 会話が長くなったら /compact で要約して圧縮
  • 1タスク1セッション: 大きく異なるタスクは、新しいセッション(新しいターミナル)で始める
  • 不要な出力を避ける: 「全ファイルの内容を表示して」のような大量出力は避ける
  • 具体的な指示: 「このプロジェクトを説明して」より「src/auth.js の認証フローを説明して」の方がコンテキスト効率が良い

新しいセッションを始めるべきタイミング

状況推奨アクション
Claude Codeの応答が遅くなった/compact を試し、改善しなければ新しいセッション
全く別のタスクを始める新しいセッションを推奨
Claude Codeが以前の指示を忘れているCLAUDE.mdに重要な情報を記録し、新しいセッション
エラーが連続して解決しない新しいセッションで新鮮な視点からやり直す

メモリの活用例

# セッション中に重要な発見があったとき
> 今の発見をCLAUDE.mdに追記してください:
  APIのレート制限は1分あたり100リクエストまで

# ユーザーレベルの設定
> ユーザー設定のCLAUDE.mdに以下を追加してください:
  コードのコメントは日本語で書く
💡 キーポイント: CLAUDE.mdファイルはClaude Codeの「長期記憶」です。プロジェクトの重要な情報(技術スタック、規約、よく使うコマンド等)をCLAUDE.mdに記録しておくと、毎回説明し直す手間が省け、一貫した作業ができるようになります。