Claude Codeのメモリ管理完全ガイド:CLAUDE.mdの使い方とベストプラクティス
Claude Codeのメモリ管理
こんにちは、イワケンです
Claude Codeのメモリ管理についてまとめました。
引用元: 公式ドキュメント(日本語版)
Claude Codeは、開発者のワークフローやスタイルガイドラインなどの設定をセッション間で記憶し、効率的な開発支援を行います。
このメモリは、特定のMarkdownファイル(CLAUDE.md
など)を通じて管理され、プロジェクト全体や個人の設定を保存できます。
メモリタイプとその用途
Claude Codeでは、以下の3種類のメモリファイルを使用して設定を管理します:
メモリタイプ | ファイルパス | 用途 | 使用例 |
---|---|---|---|
プロジェクトメモリ | ./CLAUDE.md |
プロジェクト全体で共有する設定 | アーキテクチャ設計、コーディング標準、共通ワークフロー |
ユーザーメモリ | ~/.claude/CLAUDE.md |
全プロジェクトでの個人設定 | コードスタイル、個人ツールのショートカット |
プロジェクトメモリ(ローカル) | ./CLAUDE.local.md |
プロジェクト固有の個人設定 | サンドボックスURL、優先テストデータ(※非推奨) |
注意:
CLAUDE.local.md
は非推奨となっており、代わりにCLAUDE.md
でのインポート機能を使用することが推奨されています。
CLAUDE.mdのインポート機能
CLAUDE.md
ファイルでは、@path/to/import
の構文を使用して他のファイルをインポートできます。
基本的な使い方
プロジェクト概要は@READMEを、このプロジェクトで利用可能なnpmコマンドは@package.jsonを参照してください。
# 追加指示
- gitワークフロー @docs/git-instructions.md
高度な使い方
相対パスと絶対パスの両方が使用可能で、ユーザーのホームディレクトリ内のファイルもインポートできます。
# 個人設定
- @~/.claude/my-project-instructions.md
インポートは最大5階層までの再帰的な読み込みが可能です。
注意: マークダウンのコードスパン(``)やコードブロック内ではインポートは評価されません。
Claudeがメモリを検索する方法
Claude Codeは、現在の作業ディレクトリからルートディレクトリ(/)まで再帰的に上り、各ディレクトリ内のCLAUDE.mdやCLAUDE.local.mdを読み取ります。
また、現在の作業ディレクトリ以下のサブディレクトリ内にあるCLAUDE.mdも、Claudeがそのサブディレクトリ内のファイルを読み取る際に含まれます。
#ショートカットでメモリをすばやく追加
メモリを追加する最も簡単な方法は、入力を#
で始めることです:
# 常に説明的な変数名を使用する
この入力を行うと、どのメモリファイルに保存するかを選択するように促されます。
/memoryコマンドでメモリを直接編集
セッション中に/memory
コマンドを使用すると、システムエディタでメモリファイルを開き、より詳細な編集や整理が可能です。
メモリ管理のベストプラクティス
- 具体的に記述する:「2スペースのインデントを使用する」は「コードを適切にフォーマットする」よりも明確です。
- 構造化する:各メモリを箇条書きにし、関連するメモリをマークダウンの見出しでグループ化します。
- 定期的に見直す:プロジェクトの進行に合わせてメモリを更新し、常に最新の情報を保持します。
まとめ
Claude Codeのメモリ管理機能を活用することで、プロジェクトの一貫性を保ち、開発効率を向上させることができます。
特に重要なポイント:
-
CLAUDE.md
を使用してプロジェクト全体の設定を管理 - インポート機能で設定を柔軟に組み合わせる
-
#
ショートカットや/memory
コマンドで素早く設定を更新
Discussion