
【Claude Code基本操作 #7】メモリ機能:会話をまたいで記憶させる方法
Claude Codeとの会話は、セッションを閉じるとリセットされる。
「前回も同じことを説明した」「毎回同じ前置きが必要」——そう感じ始めたら、メモリ機能を使うタイミングが来ている。
なぜメモリが必要か
Claude Codeはセッション単位で動く。新しいターミナルを開いて起動すると、前回の会話内容は引き継がれない。
CLAUDE.mdで技術スタックやコーディング規約は伝えられる。ただし「自分がどんな作業をしてきたか」「前回どこで詰まったか」「好みの出力スタイル」は毎回伝え直す必要がある。
それを解決するのがメモリ機能になる。
メモリは自動では作られない
重要なポイントとして、メモリはデフォルトでは作られない。
たとえばこのブログ(ankuro.dev)のプロジェクトでは、Claude Codeと何十回も会話を重ねてきたが、明示的にメモリを作るよう指示しなかったため、しばらくの間メモリファイルが存在しない状態が続いていた。
メモリが作られるのは以下の2つのケースのみ。
| タイミング | 内容 |
|---|---|
| 明示的に指示したとき | 「これを覚えておいて」と伝えると即座に作成される |
| 自動メモリが発動したとき | Claudeが「覚えておく価値がある」と判断したときに自動保存される |
自動メモリは常に発動するわけではなく、Claudeの判断に依存する。確実に覚えさせたいなら、明示的に指示するのが確実。
メモリの仕組み
メモリは ~/.claude/projects/ 配下に保存される。
~/.claude/
├── projects/
│ └── my-project/
│ └── memory/ ← メモリファイルが入る
│ ├── MEMORY.md ← インデックス
│ └── user_role.md ← 個別メモリファイル
└── CLAUDE.md ← グローバル設定
メモリの4種類
user(ユーザー情報)
自分の役割・スキル・知識レベルを記録する。Claudeが説明の粒度を調整するために使う。
---
name: ユーザーの役割
type: user
---
AWSエンジニア。Claude Code歴3ヶ月。
Go言語は10年のベテランだがReactは初心者。
feedback(フィードバック)
嫌いなパターン・好みの出力形式を記録する。一度伝えれば次回から繰り返さなくてよくなる。
---
name: コードスタイルの好み
type: feedback
---
コメントは最小限にする。処理が自明でないときだけ入れる。
関数名で意図が伝わるように命名すること。
project(プロジェクト状況)
進行中の作業・締め切り・意思決定の背景を記録する。相対的な日付は絶対日付に変換しておく。
---
name: リリース計画
type: project
---
認証機能のリファクタリング進行中。2026-03-25が締め切り。
理由:セキュリティ監査の指摘対応。
reference(参照先)
外部システム・ドキュメントの場所を記録する。
---
name: バグトラッカー
type: reference
---
バグはLinearプロジェクト「INFRA」で管理している。
CLAUDE.mdとの使い分け
| CLAUDE.md | MEMORY.md | |
|---|---|---|
| 用途 | プロジェクトへの恒久的な指示 | 自分の作業記録・好み・学習 |
| 対象 | Claude Code全体・チーム共有 | 個人・特定プロジェクト |
| 管理 | Gitでコミット・共有 | ローカルに保存 |
技術スタックやコーディング規約はCLAUDE.md、個人の好みや作業背景はメモリ、と分けて管理するのがすっきりする。
覚えさせると便利なもの・不要なもの
効くもの
- 自分のスキルレベル・専門分野
- 好みのコードスタイル・避けてほしいパターン
- プロジェクトの背景・ステークホルダー情報
- 参照すべき外部ドキュメントのURL
不要なもの
- コードの実装パターン(CLAUDE.mdに書く)
- 技術スタック(CLAUDE.mdに書く)
- 一時的なタスク詳細(そのセッション内で完結する情報)
- git履歴(
git logで取得できるもの)
メモリを作成する方法
会話の中で「覚えておいて」と伝えるだけで、Claudeがメモリファイルを作成する。
「私はGoのバックエンドエンジニアで、フロントはほぼ触らないと覚えておいて」
→ user メモリに保存
「コードの末尾にサマリーをつけるのは嫌いだから、今後しないで」
→ feedback メモリに保存
次のセッションから、これらの情報が読み込まれた状態で会話が始まる。
まとめ
- Claude Codeはセッションをまたぐと記憶がリセットされる
- メモリは明示的に指示しないと作られない(自動保存はClaudeの判断次第)
- メモリの種類は4つ(user / feedback / project / reference)
- 技術スタック・指示はCLAUDE.md、個人の好み・背景はメモリ、と分けて使う