
Claudeの指示はどこまで効く? CLAUDE.md・メモリ・スキルの「効く範囲」を整理してみた
はじめに
ClaudeのコンテキストにはCLAUDE.md、SKILL.md、メモリ機能、プロジェクト指示など、複数の種類があります。名前が似ていたり、同じ「.claude」フォルダが複数の場所に登場したりするため、何がどこで効いているのかを見失いがちです。
この記事では、これらの指示を「どこに置くものか」「どこまで読み込まれるのか」という効く範囲の観点で整理します。複数の利用環境をまたいで並べることで、「別のプロジェクトで前に伝えたことが反映されない」「いつの間にかコンテキストが膨大になっていた」といった悩みを解消するのが狙いです。
対象とする環境は次の2つです。
| 呼び方 | 中身 |
|---|---|
| App | claude.ai(Webブラウザ版)、デスクトップアプリ、モバイルアプリなど、いわゆるチャット画面 |
| Claude Code | VSCode、ターミナルなど |
この記事で扱わないこと
あくまで「何が・どこに・どこまで効くか」の整理に絞り、次の内容には踏み込みません。
- 具体的な書き方(CLAUDE.mdやスキルの記述テンプレート)
- Enterprise(組織・企業)向けの仕組み
- commands など、2026年6月時点で非推奨・未使用の仕組み
--append-system-promptのような、そのセッション中だけ有効なCLIオプション- 各種ファイルが読み込まれる順番(SKILLが最初は frontmatter だけ読む、といった挙動)
想定読者
ある程度Claudeを使い慣れていて「コンテキスト」という概念は理解しているものの、CLAUDE.md・メモリ・スキルといった個々の指示の影響範囲を整理できていない人を想定しています。基本用語の説明は省いています。情シスで組織用のSKILLを作る人や、各オプションを自分で明示的に使いこなしている人は対象外です。
App
App はファイルを使わない仕組みです。Claude Code のように「フォルダを上へ遡って設定ファイルを読み込む」という考え方がなく、指示が効く範囲は「アカウント全体」「プロジェクト内」「その会話だけ」のいずれかの単位で決まります。
| 名前 | 設定場所 | 適用範囲 |
|---|---|---|
| 組み込みシステムプロンプト | Anthropicが自動で付与する(docs.claude.com/en/release-notes/system-prompts で公開) | Claude App 全体 |
| パーソナライズ | 設定 > 一般の「Claudeへの指示」に記述する | プロジェクトではない通常のチャットのみ |
| メモリー | 設定 > 機能の「チャット履歴からメモリーを生成」をオンにする | プロジェクトではない通常のチャットのみ |
| プロジェクト指示 | プロジェクトごとの設定に記述する | そのプロジェクト内のチャットのみ |
| プロジェクトのメモリー | 新規プロジェクト作成時に自動でオンになる | そのプロジェクト内のチャットのみ |
| スキル | Customize > Skills からアップロード・編集する | Claude App 全体 |

ちなみにclaude.ai とモバイルアプリの設定は、PC 上のファイルとして置くのではなく、Anthropic 側のサーバーに保存されます。ただし例外として、デスクトップアプリの Cowork で作るプロジェクトは、プロジェクト専用のファイルやメモリーを自分の PC 上のフォルダに保存する場合があります。
Claude Code
Claude Code で管理できるコンテキストは次の4つです。hook など JSON 系の指示もありますが、どちらかというと強制力の強いプログラム的な要素なので、ここでは除外します。
1. CLAUDE.md
(Claude Code Docks「指示とメモリを保存する」より)
CLAUDE.md は上記の4パターンで読み込まれます。
「ユーザー指示」は、作業しているファイルの位置に関係なく、ホームディレクトリ直下の ~/.claude/ にあるファイルを参照するというものです。常に参照してほしいコンテキストや指示を置くのに最適です。

「プロジェクト指示」 については次のように記載されています。
Claude Code は現在のワーキングディレクトリからディレクトリツリーを上に歩き、途中の各ディレクトリをチェックして CLAUDE.md および CLAUDE.local.md ファイルを探します。つまり、foo/bar/ で Claude Code を実行すると、foo/bar/CLAUDE.md、foo/CLAUDE.md、およびそれらと一緒にある CLAUDE.local.md ファイルから指示を読み込みます。
(Claude Code Docks「指示とメモリを保存する」より)
つまり、作業中のファイルがある場所からルートまでの各ディレクトリに置かれた CLAUDE.md と CLAUDE.local.md を参照します。「ユーザー指示」と違い、これらは .claude/ の中ではなく各ディレクトリに直接置くこともできます。

CLAUDE.md は加算されていきます。たとえば CLAUDE.md(A) と CLAUDE.md(B) が読み込まれた場合、どちらもそのまま足され、プロンプトは「CLAUDE.md(A) + CLAUDE.md(B) + 入力したプロンプト」のようになります。
この時、複数のCLAUDE.mdの中に矛盾する指示が存在した場合はどうなるのでしょうか?
公式サイトには次のように記載されています。
より具体的で簡潔な指示ほど、Claude はそれに従う可能性が高くなります。
2 つのルールが一貫して矛盾している場合、クロードは 1 つを任意に選択する可能性があります。CLAUDE.md ファイル、サブディレクトリ内のネストで指定された CLAUDE.md ファイル、およびそれらを.claude/rules/定期的に確認して、古い指示または相違する指示を削除します。モノレポでは、claudeMdExcludesを使用して、作業に関連しない他のチームの CLAUDE.md ファイルをスキップします。
(Claude Code Docks「指示とメモリを保存する」より)
Claudeは具体的で最もそれらしいものを選択する可能性があるとのことです。
これだけではあまり参考になりませんので、CLAUDE.mdのプロンプト内での扱われ方をみてみましょう。
発見されたすべてのファイルはコンテキストに連結され、互いに上書きするのではなく、ディレクトリツリー全体で、コンテンツはファイルシステムルートからワーキングディレクトリまで順序付けられます。foo/bar/ の例では、foo/CLAUDE.md は foo/bar/CLAUDE.md の前にコンテキストに表示されるため、Claude を起動した場所に近い指示が最後に読まれます。各ディレクトリ内で、CLAUDE.local.md は CLAUDE.md の後に追加されるため、個人的なメモはそのレベルで Claude が読む最後のものです。
(Claude Code Docks「指示とメモリを保存する」より)
また、Claudeの設計として後に読まれたプロンプトの方が注目されやすいというものがあります。
例えば、ruleについての記述では以下のように記載されています。
ユーザーレベルのルールはプロジェクトルールの前に読み込まれ、プロジェクトルールに高い優先度を与えます。
(Claude Code Docks「指示とメモリを保存する」より)
以上を踏まえると、CLAUDE.md でも「起動点に近い=後に読まれる指示」が優先されやすい、と推測することはできます。スコープ表自体が「最も広いスコープから最も具体的なものまで」の順に並んでいること、ルールで「後=優先」という挙動が明言されていることが、その根拠になります。ただしこれはあくまで類推であり、CLAUDE.md について保証された挙動ではない点には注意が必要です。
また、CLAUDE.md を起点に AGENTS.md などが参照されることもありますが、CLAUDE.md を見れば明らかなので、ここでは詳しく触れません。
2. skills
(Claude Code Docks「スキルでClaudeを拡張する」より)
Personal は CLAUDE.md と同じです。範囲が気になる Project については次のように記載されています。
開始ディレクトリの .claude/skills/ とリポジトリルートまでのすべての親ディレクトリから読み込まれる
(Claude Code Docks「スキルでClaudeを拡張する」より)
つまり、下記のようになります。

skill の加算についても CLAUDE.md と同様で読み込まれる量が増加するほど利用できるskillが増えていきます。ただし、同名の skill が重複して存在する場合は、enterprise(組織)> personal(個人)> project(プロジェクト)の順で優先されます。
3. rules
skillsとほとんど同じで、Enterprise・Project・Personalの3つが存在します。
それぞれの参照範囲は以下のように記載されています。
Project
(Claude Code Docks「指示とメモリを保存する」より)
Personal
(Claude Code Docks「指示とメモリを保存する」より)
プロジェクトの .claude/rules/ ディレクトリにマークダウンファイルを配置します。
(Claude Code Docks「指示とメモリを保存する」より)
基本的に skills と同じ範囲だと考えれば問題ありません。
rules も加算されていきますが、矛盾が発生した場合は優先順位に沿って取捨選択が行われます。優先順位は、作業中のファイルに近いものほど高いというものです。この点は skill とは異なります。
4. Auto memory
Auto memoryは、App版のメモリー機能に近い「セッションをまたいで学習や好みを覚えておく」役割を、Claude Code上では.mdファイルとして保存することで実現する仕組みです。
Auto memoryは基本的にClaudeが自動で書き込みますが、AIに指示を出すことで修正することができます。
各プロジェクトは ~/.claude/projects/<project>/memory/ に独自のメモリディレクトリを取得します。
(Claude Code Docks「指示とメモリを保存する」より)
このメモリはリポジトリ単位で決まります(作業フォルダから上位ディレクトリへ登っていき、最も近い.gitを含むフォルダがリポジトリのルート=1プロジェクトとして扱われる)。そのため、同じリポジトリ内であればサブフォルダや複数のワーキングツリーで作業していても、1つのメモリディレクトリを共有します。

「この指示を覚えておいて」などと頼んだときは、多くの場合この自動メモリ(MEMORY.md など)に記録されます。App版のメモリーと違ってそのリポジトリ内でしか反映されない点に注意が必要です。
まとめ
これを参考に、指示が正しく反映される位置に配置できているかを確認してみてください。/memory を使うと、今のセッションに読み込まれている CLAUDE.md や rules の一覧を確認できるので、あわせて活用するとよいでしょう。











