Claude Code メモリの仕組みを理解しようとすると、MEMORY.md と CLAUDE.md という2つのファイルが登場します。どちらもClaudeに情報を「覚えさせる」ための仕組みですが、その役割はまったく異なります。この記事では、2つの違いを整理しながら、Claude.ai WebのMemories機能やChatGPT・Geminiとの比較も含めて解説します。
関連記事: Claude Codeのインストール方法と初期設定ガイドもあわせてご覧ください。
Claude Code メモリには2種類の「記憶」がある
Claude Codeを使い始めると、Claude Code メモリに関するファイルが複数出てきて混乱することがあります。そのため、まず全体像を整理しておきましょう。
記憶をめぐる混乱の正体
Claude Codeには、現時点で主に2つの「記憶の仕組み」があります。1つ目は CLAUDE.md、2つ目は Auto Memory(MEMORY.md)です。さらに Claude.ai Web の Memories や API の Memory Tool も存在するため、混同しやすい状況です。
しかし、これら2つのファイルは根本的に異なる存在です。一言で表すなら次のとおりです。
- CLAUDE.md = 人間(開発者・チーム)が書く「永続的な指示書」
- MEMORY.md = Claude自身が書く「セッション間学習ノート」
CLAUDE.md = 人間が書く「指示書」
CLAUDE.md は、開発者やチームが手動で作成・編集する設定ファイルです。Claudeが各セッションで必ず読み込む「ルールブック」として機能します。
具体的には、コーディング規約・使用言語・プロジェクト固有の制約・応答スタイルなどを記述します。さらに、gitで管理でき、チーム全員が同じ指示でClaudeを動かせる点が大きな特徴です。
MEMORY.md = Claudeが書く「学習ノート」
MEMORY.md は、Claude自身が自律的に書き込む記録ファイルです。2026年2月にリリースされた Auto Memory 機能によって生成されます。
Claudeは作業中に「次のセッションでも役立つ情報」を自分で判断して記録します。つまり、人間が指示するのではなく、Claudeが主体的に学習・蓄積する仕組みです。このようにClaude Code メモリには、人間主導と自律学習という2つの柱があります。

CLAUDE.md の役割と使い方
CLAUDE.md は Claude Code において最も重要な設定ファイルです。適切に活用することで、Claudeの動作を一貫してコントロールできます。
3つのスコープ(組織・プロジェクト・個人)
CLAUDE.md には、適用範囲(スコープ)が3段階あります。それぞれ保存場所と影響範囲が異なります。
| スコープ | パス | 用途 |
|---|---|---|
| 組織レベル | /Library/Application Support/ClaudeCode/CLAUDE.md | 全プロジェクト共通のルール |
| プロジェクトレベル | ./CLAUDE.md(リポジトリルート) | チーム共有のコーディング規約 |
| 個人レベル | ~/.claude/CLAUDE.md | 自分だけの設定・好み |
優先順位はプロジェクト > 個人 > 組織の順です。つまり、プロジェクト固有の設定が最も強く適用されます。
なお、/init コマンドを実行すると、現在のプロジェクト構造を分析して CLAUDE.md の初期ファイルを自動生成できます。初期設定の手間を大幅に省けるため、新規プロジェクトでは積極的に活用しましょう。
# CLAUDE.mdの初期ファイルを自動生成
/init
CLAUDE.mdに書くべき内容・書かないべき内容
CLAUDE.mdに記述する内容は、明確に「書くべきもの」と「書かないべきもの」に分かれます。
書くべき内容
- コーディング規約(命名規則・インデント・コメントスタイル)
- 使用するプログラミング言語・フレームワークのバージョン
- 禁止する操作(例:本番DBへの直接書き込み不可)
- プロジェクト固有のディレクトリ構成・命名ルール
- 応答言語の指定(例:「常に日本語で応答する」)
- テスト方法・デプロイ手順のポインタ
書かないべき内容
- APIキーやパスワード等のシークレット情報(git管理されるため危険)
- 頻繁に変わる動的な情報(MEMORY.mdに任せる)
- 長大なコードスニペット(別ファイルへの参照に留める)
.claude/rules/ による指示の分割管理
プロジェクトが大きくなると、CLAUDE.md 1ファイルでは管理しきれなくなります。そこで活用できるのが .claude/rules/ ディレクトリです。
このディレクトリ以下にトピック別のファイルを配置すると、Claudeは適切なタイミングで読み込みます。さらに paths 指定を使えば、特定ファイルパターンにマッチしたときだけルールを適用できます。
.claude/
├── rules/
│ ├── frontend.md # フロントエンド関連ルール
│ ├── backend.md # バックエンド関連ルール
│ ├── testing.md # テスト関連ルール
│ └── security.md # セキュリティ関連ルール
└── CLAUDE.md # 全体共通ルール
例えば frontend.md に paths: ["src/components/**"] と記述すれば、コンポーネント作業時のみフロントエンドルールが適用されます。このように、大規模プロジェクトでも柔軟な指示管理が可能です。
Auto Memory(MEMORY.md)の仕組み
2026年2月にリリースされた Auto Memory は、Claude Codeに自律的な記憶能力を与える機能です。CLAUDE.md とは異なり、Claude自身が判断して情報を記録します。
Claudeが自動的に学習・記録する仕組み
Auto Memoryのデータは ~/.claude/projects/<project>/memory/ に保存されます。このディレクトリはローカルマシン専用で、gitの管理対象外です。そのため、個人の作業履歴が安全にプライベートに保たれます。
セッション開始時に、MEMORY.md の先頭200行が自動的にコンテキストへ読み込まれます。一方、debugging.md などのトピックファイルは、関連する作業を始めたタイミングで動的に読み込まれる設計です。
デフォルトでは Auto Memory は有効になっています。無効にしたい場合は設定で autoMemoryEnabled: false を指定します。
# ~/.claude/settings.json(Auto Memoryを無効にする場合)
{
"autoMemoryEnabled": false
}
メモリの4種類(user・feedback・project・reference)
Auto Memoryが記録する情報は、4つのカテゴリに分類されます。各カテゴリを理解すると、どんな情報がいつ記録されるかが把握しやすくなります。
| 種類 | 内容 | 例 |
|---|---|---|
| user | ユーザーに関する情報 | 好みの言語・作業スタイル・よく使うコマンド |
| feedback | 過去の修正・指摘パターン | 「変数名はキャメルケースで」という繰り返しの指摘 |
| project | プロジェクトの状況 | 現在取り組んでいる機能・未解決の課題・技術的負債 |
| reference | 外部情報へのポインタ | 参照すべきドキュメントURL・重要なissueリンク |
特に feedback カテゴリは実用性が高いです。例えば、同じ指摘を何度も繰り返す必要がなくなり、Claudeが自分のフィードバックパターンを学習してくれます。
/memory コマンドで管理する方法
Auto Memoryの内容は /memory コマンドで管理できます。主な操作は次のとおりです。
# メモリの一覧を確認
/memory list
# Auto Memoryを一時的にオフにする
/memory off
# Auto Memoryをオンに戻す
/memory on
# メモリフォルダをFinder/エクスプローラーで開く
/memory open
また、/memory open でフォルダを開くと、記録された内容を直接テキストエディタで確認・編集できます。不要な情報や誤った情報は、ファイルを直接編集して削除することが可能です。

Claude.ai Web の Memories 機能との比較
Claude Codeのメモリ機能とは別に、Claude.ai WebブラウザにもMemories機能が存在します。混同しないように、それぞれの特徴を整理します。
Webブラウザ版のMemoriesはどう動くのか
Claude.ai Web の Memories は、2025年9月〜10月にかけてTeam/Enterprise、Pro/Maxユーザー向けに展開されました。仕組みは2つのコンポーネントで構成されています。
- Memory Summary:24時間ごとに過去の会話を自動合成して記録
- Project Memory:プロジェクトごとに独立した記憶を保持
内部では RAG(Retrieval-Augmented Generation)型の仕組みが採用されています。conversation_search と recent_chats の2つのツールが会話履歴を検索し、関連情報をコンテキストに注入します。会話履歴は圧縮せずそのままサーバーに保存される点が特徴です。
Claude Codeメモリとの決定的な違い
Claude.ai Web の Memories と Claude Code の Auto Memory は、まったく別の独立したシステムです。重要な点として、2つのシステムは相互連携しません。Claude Codeでの作業履歴はWebには反映されず、Webの記憶はClaude Codeには伝わりません。
主な違いは保存場所にあります。Web Memoriesはサーバーに保存されるため、どのデバイスからも同じ記憶にアクセスできます。一方、Auto MemoryはローカルマシンのみでWebには公開されません。
3者を並べて比較(Auto Memory / Web Memories / API Memory Tool)
Claudeのメモリ関連機能は現在3種類存在します。それぞれの特徴を比較すると以下のようになります。
| 機能 | Claude Code Auto Memory | Claude.ai Web Memory | Claude API Memory Tool |
|---|---|---|---|
| 対象ユーザー | 開発者(CLI使用) | 一般ユーザー | API開発者 |
| 保存場所 | ローカルマシン | Anthropicサーバー | 開発者インフラ |
| git管理 | 不可 | 不可 | 開発者次第 |
| チーム共有 | 不可 | プロジェクト単位で可 | 開発者次第 |
| 書き手 | Claude自身 | Claude自身 | Claude自身 |
| 透明性 | 高(ファイル直接確認可) | 中(ツールコール表示) | 中(ツールコール表示) |
| 相互運用性 | Claude Code専用 | Web/アプリ専用 | API専用 |
なお、API Memory Tool(memory_20250818)は Claude Opus 4.x・Sonnet 4.x・Haiku 4.5 に対応しており、開発者が保存場所を自由に設定できるクライアントサイド動作のツールです。
ChatGPT・Geminiのメモリと何が違う?
AIのメモリ機能はClaude固有のものではありません。ChatGPTやGeminiにも類似機能があります。ただし、設計思想にはそれぞれ大きな違いがあり、Claude Code メモリの独自性を理解するために他ツールとの比較は有益です。
ChatGPTのメモリはブラックボックス
ChatGPTのメモリ機能は、ユーザー情報・好み・プロジェクト情報を自動保存し、システムプロンプトへ自動注入する仕組みです。2025年4月には全過去会話を参照できる「記憶ドシエ」形式に拡張されました。
しかし、何がどのように記録・注入されているかがユーザーから見えにくいという問題があります。著名な開発者Simon Willisonはこの不透明さを公開の場で批判しており、「何が記憶されているか自体が不明瞭」という指摘が多く見られます。
Geminiはプロファイル型
Geminiのメモリは user_context というLLM生成のユーザープロファイルとして実装されています。24時間サイクルで定期更新され、最近の会話ターンを「ローリングウィンドウ」形式で保持します。
Geminiの特徴として、メモリを使用する際に明示的に表示される透明性の高さがあります。加えて、記録された情報をモデルの学習に使用しないことを明言しており、プライバシー面での配慮があります。さらに、「一時チャット」機能を使えば72時間後に完全削除されます。
Claudeが際立つ「透明性・可視性」
3者を比較した際、Claude Codeのメモリが最も際立つ点は「透明性」と「可視性」です。MEMORY.md はローカルのテキストファイルとして保存されるため、内容をいつでもテキストエディタで直接確認・編集・削除できます。
一方、ChatGPTは記録内容が不透明で、Geminiはサーバー側のプロファイルとして管理されます。つまり、Claude Codeは開発者が完全にコントロールできる設計になっており、これは開発ツールとして非常に重要な特性です。
また、CLAUDE.md によるルールベースの指示体系はClaude Code固有の強みです。ChatGPTのカスタム指示やGeminiのシステム指示と比較すると、スコープ管理・チーム共有・バージョン管理の面でより開発者フレンドリーな設計といえます。

Claude Code メモリの実践的な使い分けガイド
Claude Code メモリの仕組みを理解したところで、実際の開発でどう使い分けるかを整理します。
CLAUDE.mdに書くべき3つのこと
CLAUDE.mdは「変わらないルール」を書く場所です。具体的には次の3点を優先的に記述します。
- コーディング規約:命名規則・コメントスタイル・Lintルールなど、プロジェクトで統一すべきルール。チームで共有するため、プロジェクトルートに配置してgitでコミットします。
- 禁止操作の明記:「本番DBに直接書き込まない」「特定のファイルを削除しない」など、絶対に守らせたい制約を明記します。これにより誤操作を防止できます。
- 応答スタイルの設定:「常に日本語で応答する」「コードレビューは箇条書きで行う」など、コミュニケーションの形式を固定します。毎回指示する手間が省けます。
Auto Memoryに蓄積させるべき3つのこと
Auto Memoryは「作業を通じて変化する情報」の蓄積に向いています。具体的には、Claudeが自動記録する内容のうち、特に有用なのは次の3点です。
- 繰り返しのフィードバックパターン:「毎回同じ指摘をしている」という状況を解消できます。Claudeが自分の修正パターンを学習し、次回から自動的に適用します。
- プロジェクトの現在地:「現在○○機能を実装中」「△△のバグが未解決」など、セッションをまたいだ作業状況の把握に役立ちます。
- 参照情報のポインタ:よく参照する外部ドキュメントのURLや社内Wikiのリンクを記録することで、毎回貼り付ける手間が省けます。
誤った情報をリセットする方法
Auto Memoryに誤った情報が記録された場合や、古くなった情報をリセットしたい場合の手順を紹介します。
実際に、最も簡単な方法は /memory open でフォルダを開き、該当ファイルを直接編集することです。
# メモリフォルダを開く
/memory open
# 保存先ディレクトリを直接確認・編集
~/.claude/projects/<project-name>/memory/
├── MEMORY.md # 先頭200行が自動ロード
├── debugging.md # デバッグ関連メモリ
└── preferences.md # 好み・スタイル設定
特定のメモリを完全にリセットしたい場合は、対象ファイルの内容を削除するか、ファイルそのものを削除します。また、プロジェクト全体のメモリをリセットしたい場合は、プロジェクトディレクトリ配下の memory/ フォルダ全体を削除すれば初期状態に戻せます。
関連記事: AIツール活用ガイドの記事一覧もあわせてご覧ください。
あわせて読みたいおすすめ書籍
Claude Codeなどのアシスタントを活用したAIコーディングやプロンプト設計をさらに深めたい方には、以下の書籍がおすすめです。
まとめ:Claude Code メモリを使いこなすポイント
この記事では、Claude Code メモリの2つの仕組み(CLAUDE.md と MEMORY.md)の違いから、Claude.ai Web Memories・ChatGPT・Geminiとの比較まで解説しました。
要点を整理します。
- CLAUDE.md は人間が書く永続的な指示書。コーディング規約・禁止操作・応答スタイルなど「変わらないルール」を記述する
- MEMORY.md(Auto Memory) はClaudeが自律的に書く学習ノート。2026年2月リリースで、セッション間の継続学習を実現する
- Auto Memoryはローカル専用。git管理不可・チーム共有不可。Claude.ai WebのMemoriesとは完全に独立したシステム
- メモリは4種類(user・feedback・project・reference)に分類され、
/memoryコマンドで管理できる - ChatGPT・Geminiと比較してClaudeが際立つのは透明性。記録内容をテキストファイルで直接確認・編集・削除できる
- 誤った記録のリセット は
/memory openでフォルダを開き、ファイルを直接編集するだけ
CLAUDE.md と Auto Memory を適切に組み合わせることで、セッションをまたいでも一貫した高品質な開発支援が受けられます。まだ設定していない場合は、まず /init コマンドで CLAUDE.md を生成することから始めましょう。
関連記事: Claude Code 関連記事の一覧もあわせてご覧ください。


コメント