Claude Codeのメモリ機能完全ガイド ── AIにプロジェクトを記憶させる6つの方法
Claude Codeはふつう、会話が終わると前回の内容を忘れてしまいます。でも、メモリ機能を使えば、プロジェクトのルール、自分の好み、作業の進み具合を次のセッション(作業の会話)に引き継げます。
「毎回同じことを説明するのが面倒」「前回の続きが全然伝わらない」というストレス、ありますよね。それを解消してくれるのがメモリ機能です。つまり、AIに「前のことを覚えていてもらう」ための仕組みです。
この記事では、Claude Codeが持つ6種類のメモリの仕組み、どれが優先されるか、どう使い分けるかを、できるだけわかりやすく説明します。
なぜメモリが必要なのか
Claude Codeのセッションは、基本的に1回ごとにリセットされます。昨日の会話の内容は、今日のセッションには引き継がれません。
セッション1
「日本語で書いて」
「Tailwind使って」
セッション2
また「日本語で書いて」
また「Tailwind使って」
セッション3
同じ指示を
何度も繰り返す…
セッション1
「日本語で書いて」
→ メモリに保存!
セッション2
最初から日本語で書く
Tailwindも自動適用
セッション3
溜まった知識で
サクサク作業
つまりメモリ機能を使えば、「前回教えたことを覚えていてくれる」ので、毎回同じ説明を繰り返す必要がなくなるということです。
6種類のメモリと優先順位
Claude Codeには6種類のメモリがあります。それぞれ役割が違い、どれが優先されるかの順番も決まっています。
- Enterprise設定(会社の管理者が設定するもの)
- プロジェクトのCLAUDE.md(./CLAUDE.md)
- プロジェクトルール(.claude/rules/)
- ユーザーのCLAUDE.md(~/.claude/CLAUDE.md)
- 自動メモリ(~/.claude/projects/…)
- 今の会話の内容(セッション内の文脈)
上にあるメモリの指示のほうが優先されます。つまり、プロジェクトのCLAUDE.mdに「2スペースインデント」と書いてあれば、自動メモリに「4スペースインデント」と保存されていても、CLAUDE.mdのほうが優先されるということです。
それぞれのメモリの詳しい説明と使い方
1. プロジェクトのCLAUDE.md
プロジェクトのフォルダのいちばん上に置く設定ファイルです。毎回のセッションで自動的に読み込まれます。
my-project/
└── CLAUDE.md ← 毎回自動で読んでくれるファイル
こういうことを書いておくと便利:
- 使っている技術(言語、フレームワーク、ツール)
- ビルドコマンド(dev, build, test の実行方法)
- コーディングルール(インデントの幅、命名ルール)
- ファイルをどこに置くかのルール
- やってはいけないこと
詳しい書き方は → CLAUDE.mdの書き方完全ガイド を見てね
2. .claude/rules/ フォルダ ── ルールをファイルごとに分割
CLAUDE.mdの内容をファイルごとに分けて管理する方法です。CLAUDE.mdが長くなりすぎたときに便利です。
.claude/
└── rules/
├── typescript.md ← TypeScript関連のルール
├── testing.md ← テスト関連のルール
└── components.md ← コンポーネント関連のルール
さらに、ファイル名にパターンを使って「このフォルダのファイルを編集するときだけ、このルールを適用する」こともできます。
.claude/
└── rules/
├── src__api__*.md ← src/api/ の中だけに適用
└── *.test.ts.md ← テストファイルだけに適用
CLAUDE.md と rules/ フォルダ、どっちを使う?
CLAUDE.mdが200行を超えそうなら、rulesフォルダに分割しましょう。rulesフォルダのファイルは必要なときだけ読み込まれるので、AIが覚えている情報量(文脈)の節約にもなります。
3. ユーザーのCLAUDE.md ── 全プロジェクト共通設定
ホームフォルダ(~)の中に置くCLAUDE.mdです。どのプロジェクトで作業しても共通で適用されます。
~/.claude/CLAUDE.md ← どのプロジェクトでも読み込まれる
こういうことを書くと便利:
- 言語設定(「日本語で応答してね」)
- 共通のコーディングスタイル
- 共通の禁止事項(.envファイルをコミットしない、など)
# 共通設定
- 日本語で応答する
- コミットメッセージは日本語で書く
- 不要なコメントは追加しない
- .envファイルをコミットしない
つまり、「毎回どのプロジェクトでも言いたいこと」はここに書いておけば、もう二度と言う必要がなくなります。
4. 自動メモリ ── AIが自分で覚えてくれる
Claude Codeが**「これは覚えておいたほうがいいな」と自分で判断して保存する**メモリです。プロジェクトごとに ~/.claude/projects/<プロジェクト名>/memory/ というフォルダに保存されます。
「覚えておいて」と明示的に伝えることもできますし、AIが「これは重要だな」と判断した情報を自動で保存してくれることもあります。
> これを覚えておいて:
- このプロジェクトでは src/lib/auth.ts が認証の中心部分
- テストは npm test で実行する
- デプロイ(作ったサイトをインターネット上に公開すること)は main ブランチにpushすると自動で実行される
保存された内容は、次のセッション開始時に自動で読み込まれます。つまり、次回からはこの情報を改めて伝える必要がなくなるということです。
自動メモリの確認・編集のやり方:
> /memory # メモリの設定画面を開く
> 今メモリに保存されている内容を教えて
> [特定の情報]をメモリから消して
5. Enterprise設定
企業向けの組織レベルの設定です。会社の管理者が設定するもので、一番優先順位が高いです。個人で使う人には関係ありませんが、チームで使う場合は管理者に確認しましょう。
6. セッション内の文脈 ── 今の会話の内容
いま行っている会話の内容そのものです。セッションが終わると消えてしまいます。長いセッションでは /compact コマンドで会話を要約・圧縮できます。つまり、「今日の作業中だけ有効な一時的な記憶」ということです。
メモリの使い分け一覧
| メモリの種類 | 残り続ける? | どの範囲に効く? | どうやって管理する? | どういうときに使う? |
|---|---|---|---|---|
| プロジェクトのCLAUDE.md | ずっと残る | そのプロジェクトだけ | 自分で編集する | 技術スタック、ルール |
| .claude/rules/ | ずっと残る | プロジェクト内の特定ファイル | 自分で編集する | 特定ファイルへのルール |
| ユーザーのCLAUDE.md | ずっと残る | 全プロジェクト共通 | 自分で編集する | 言語設定、共通ルール |
| 自動メモリ | ずっと残る | そのプロジェクトだけ | AIが自動+自分でも編集OK | 学んだ知識、好み |
| Enterprise | ずっと残る | 組織全体 | 管理者が設定 | 会社のポリシー |
| セッション | その会話だけ | いまの会話だけ | 自動(消える) | 作業中の文脈 |
実践的なメモリの使い方
使い方1: 3つの層に分けて整理する
全プロジェクト共通の設定(~/.claude/CLAUDE.md)
「日本語で書いて」「.envをコミットしない」などの共通ルール
プロジェクト固有の設定(./CLAUDE.md + .claude/rules/)
技術スタック、ビルドコマンド、そのプロジェクトだけのルール
使いながら学んだ知識(自動メモリ)
作業中に発見したこと、個人の好み、プロジェクトのクセ
つまり、「全体のルール」「そのプロジェクトのルール」「日々学んだこと」の3層で整理すると、スッキリ管理できるということです。
使い方2: 自動メモリを定期的に見直す
自動メモリは放っておくとどんどん溜まっていきます。古い情報や矛盾した情報が混ざってくるので、月に1回くらい内容を確認して整理しましょう。
> メモリの内容を全部見せて。古い情報や矛盾がないかチェックしたい
使い方3: 作業の進捗を覚えさせる
長期間にわたるプロジェクトでは、「今日はどこまで終わったか」をメモリに残しておくと、翌日のセッションでスムーズに続きから始められます。
> 今日の作業を覚えておいて:
- ヘッダーコンポーネントのデザイン変更は完了した
- フッターはまだ手をつけていない
- 次回はフッターのデザイン変更から始める
- src/components/Header.astro に新しいナビゲーションを実装済み
つまり、「作業日報をAIに渡す」ようなイメージです。翌日AIがこれを読んで「前回はここまで終わってるから、今日はフッターからだね」と理解してくれます。
よくある質問
Q. メモリ機能をオフにできますか?
はい。/memory コマンドで自動メモリのオン/オフを切り替えられます。また、環境変数 CLAUDE_AUTO_MEMORY=false を設定しても無効化できます。
Q. メモリにはどれくらい保存できますか?
自動メモリは、セッション開始時に先頭200行または25KB分が読み込まれます。それを超える分は読み込まれないので、大事な情報はファイルの先頭のほうに書いておくのがコツです。
Q. CLAUDE.mdと自動メモリ、どっちを使えばいいの?
「絶対に守ってほしいルール」はCLAUDE.mdに、「使いながら覚えた知識」は自動メモリに保存するのがベストです。CLAUDE.mdは自分で書いて管理するので信頼性が高く、自動メモリはAIが自動で溜めてくれるので手軽です。つまり、「公式ルール」と「メモ帳」のような使い分けですね。
Q. チームでメモリを共有できますか?
CLAUDE.mdと.claude/rules/はGit(ファイルの変更履歴を管理する仕組み)にコミットしてチーム全員で共有できます。一方、自動メモリはパソコンの中に保存されるので、チームでは共有できません。
まとめ
Claude Codeのメモリ機能を使いこなせば、毎回の説明を省略でき、プロジェクトの知識をどんどん蓄積していけるようになります。
今日から始めるステップ:
~/.claude/CLAUDE.mdに全プロジェクト共通のルールを書く(「日本語で応答して」など)- プロジェクトのフォルダに
CLAUDE.mdを作って、そのプロジェクト固有のルールを書く - 「覚えておいて」を使って、プロジェクトの知識を保存していく
- 月に1回くらい、自動メモリの内容を見直して整理する
セッションを重ねるたびにAIがあなたのプロジェクトをどんどん理解してくれて、指示を出す手間がどんどん減っていく。それがメモリ機能の一番うれしいところです。