コンテキスト
ClaudeCodeはMessages APIのsystem(システムプロンプト)とmessages(会話履歴)の2つの領域を使い分けてルールや通知をモデルに渡しているみたいです。(2026年3月21日調べ)
systemの構造
systemには以下の内容が上から順に全文展開されます。ルールファイルが増えるとその分だけトークンを消費するため、各ファイルは簡潔に保つ必要があります。
ClaudeCodeのコア指示(ツールの使い方、トーン、セキュリティ等)
Contents of ~/.claude/CLAUDE.md
(ユーザーのグローバル設定)
Contents of ./CLAUDE.md
(プロジェクトルートの指示)
Contents of .claude/rules/docs-architecture.md
(ルールファイル1つ目、全文展開)
Contents of .claude/rules/docs-claude.md
(ルールファイル2つ目、全文展開)
Contents of .claude/rules/docs-common.md
(以降、rules/*.md が1ファイルずつすべて展開される)
Today's date is 2026-03-21.
Current branch: main
(git statusのスナップショット)
memory/MEMORY.md
(auto memoryの内容)
systemは毎ターン先頭に配置されます。
system-reminder
ツール結果やユーザーメッセージに<system-reminder>タグとして付与されます。会話の途中でオンデマンドに注入される情報で、systemには含まれません。
- ファイル変更通知(
Note: ... was modified) - ユーザーがIDEでファイルを開いた通知
- サブディレクトリの
CLAUDE.md - スキル一覧
- 現在の日付