Claudeのメモリを管理する
異なるメモリ場所とベストプラクティスを使用して、セッション間でClaude Codeのメモリを管理する方法を学びます。
Claude Codeは、スタイルガイドラインやワークフローの一般的なコマンドなど、セッション間であなたの設定を記憶できます。
メモリタイプを決定する
Claude Codeは3つのメモリ場所を提供し、それぞれ異なる目的を果たします:
メモリタイプ | 場所 | 目的 | 使用例 |
---|---|---|---|
プロジェクトメモリ | ./CLAUDE.md | プロジェクトのチーム共有指示 | プロジェクトアーキテクチャ、コーディング標準、一般的なワークフロー |
ユーザーメモリ | ~/.claude/CLAUDE.md | すべてのプロジェクトの個人設定 | コードスタイリング設定、個人ツールのショートカット |
プロジェクトメモリ(ローカル) | ./CLAUDE.local.md | 個人のプロジェクト固有設定 | (非推奨、以下参照) あなたのサンドボックスURL、推奨テストデータ |
すべてのメモリファイルは、Claude Code起動時に自動的にコンテキストに読み込まれます。
CLAUDE.mdインポート
CLAUDE.mdファイルは@path/to/import
構文を使用して追加ファイルをインポートできます。以下の例では3つのファイルをインポートしています:
相対パスと絶対パスの両方が許可されています。特に、ユーザーのホームディレクトリ内のファイルをインポートすることは、チームメンバーがリポジトリにチェックインされていない個別の指示を提供する便利な方法です。以前はCLAUDE.local.mdが同様の目的を果たしていましたが、複数のgit worktreeでより良く動作するため、現在はインポートを推奨し、非推奨となっています。
潜在的な衝突を避けるため、インポートはmarkdownコードスパンとコードブロック内では評価されません。
インポートされたファイルは追加ファイルを再帰的にインポートでき、最大深度は5ホップです。/memory
コマンドを実行することで、どのメモリファイルが読み込まれているかを確認できます。
Claudeがメモリを検索する方法
Claude Codeはメモリを再帰的に読み取ります:cwdから開始して、Claude Codeは_/_まで再帰し、見つけたCLAUDE.mdまたはCLAUDE.local.mdファイルを読み取ります。これは、_foo/bar/_でClaude Codeを実行し、_foo/CLAUDE.md_と_foo/bar/CLAUDE.md_の両方にメモリがある大きなリポジトリで作業する際に特に便利です。
Claudeは現在の作業ディレクトリ下のサブツリーにネストされたCLAUDE.mdも発見します。起動時に読み込む代わりに、Claudeがそれらのサブツリー内のファイルを読み取る際にのみ含まれます。
#
ショートカットでメモリを素早く追加
メモリを追加する最も速い方法は、入力を#
文字で開始することです:
これを保存するメモリファイルを選択するよう促されます。
/memory
でメモリを直接編集
セッション中に/memory
スラッシュコマンドを使用して、より広範囲な追加や整理のためにシステムエディタで任意のメモリファイルを開きます。
プロジェクトメモリを設定する
重要なプロジェクト情報、規約、頻繁に使用されるコマンドを保存するCLAUDE.mdファイルを設定したいとします。
以下のコマンドでコードベース用のCLAUDE.mdをブートストラップします:
ヒント:
- 繰り返し検索を避けるため、頻繁に使用されるコマンド(ビルド、テスト、リント)を含める
- コードスタイル設定と命名規約を文書化する
- プロジェクト固有の重要なアーキテクチャパターンを追加する
- CLAUDE.mdメモリは、チームと共有する指示と個人設定の両方に使用できます。
メモリのベストプラクティス
- 具体的にする:「2スペースインデントを使用する」は「コードを適切にフォーマットする」よりも良い。
- 構造を使用して整理する:各個別メモリを箇条書きとしてフォーマットし、関連するメモリを説明的なmarkdown見出しの下にグループ化する。
- 定期的にレビューする:Claudeが常に最新の情報とコンテキストを使用するよう、プロジェクトの進化に合わせてメモリを更新する。