Claude Code には「Memory」と呼ばれる長期記憶の仕組みがあります。CLAUDE.md に全部書くのとは別に、セッションをまたいで Claude が「ユーザーの好み」を覚える機能です。この記事では auto memory の仕組みと実運用のコツを紹介します。
Memory の保存場所
Memory は ~/.claude/projects/<project-hash>/memory/MEMORY.md に保存されます。
ls ~/.claude/projects/
# 各プロジェクトのハッシュディレクトリが並ぶ
cat ~/.claude/projects/<hash>/memory/MEMORY.md
# Memory Index が書かれている
MEMORY.md は「目次」で、実際のメモは同じディレクトリ内の個別 .md ファイルに分散して保存されます。
auto memory の動作原理
Claude がユーザーとの会話の中で「これは次回以降も覚えておくべき」と判断した情報を、自動で memory ファイルに書き出します。典型的なトリガーは次の通りです。
- 「いつも〜して」「毎回〜」のような繰り返し指示
- プロジェクト固有の歴史的経緯(なぜこの設計か)
- ユーザーの言語・口調の好み
- よく使うコマンドやツールのエイリアス
手動で memory を書く
auto だけに頼らず、明示的に「これを覚えて」と頼むこともできます。
この情報を memory に保存してください:
- 私は敬語より「だ・である」調を好む
- コミットメッセージは英語ではなく日本語で書く
- プロジェクトでは pnpm を使う、npm は禁止
MEMORY.md を育てるコツ
1. 粒度を揃える
1ファイル = 1トピック を守ると、Claude が必要な部分だけ読みに来ます。粒度がバラバラだと毎回全部読まれてコンテキストを浪費します。
2. 期限切れを明記
# project_migration_2026q1.md
期限: 2026-06-30 まで有効
現在 Next.js 14 から 15 への移行中。
- app router への移行は進行中
- server actions 経由の form が不安定、useFormState に書き換え中
期限を書いておくと、後から Claude 自身に棚卸しを頼めます。
3. 敏感情報は書かない
auto memory は意外と気軽にメモを作るので、API キー・本番DB情報・個人名などは「memory に書かないで」と先に指示しておきます。
要点
- Memory は
~/.claude/projects/<hash>/memory/に分散保存 - auto memory はユーザーの繰り返し指示を拾う
- 1ファイル1トピック、期限付きで管理
- 敏感情報は明示的に memory 禁止にする
まとめ
Memory を育てると Claude が「昨日も昨日の前も一緒に働いていた同僚」のように振る舞い始めます。半年運用して MEMORY.md を眺めると、自分の開発スタイルが可視化されているのが見えて、なかなか面白い発見があります。