メインコンテンツへスキップ
Claude Code のコンテキストウィンドウには、セッションについて Claude が知っているすべてのものが含まれます。つまり、あなたの指示、読み込まれたファイル、Claude 自身の応答、およびターミナルに表示されないコンテンツです。以下のタイムラインは、スタートアップからコンパクションまでの完全なセッションを再生します。何が読み込まれ、各ファイル読み込み、ルール、フックが Claude の作業中に追加するもの、そしてサブエージェントが大きな読み込みをコンテキストから外す方法を確認できます。書かれた説明で同じコンテンツをリストとして確認できます。

タイムラインが示すもの

セッションは、代表的なトークン数を含む現実的なフローを通じて進みます。
  • 何も入力する前に: CLAUDE.md、自動メモリ、MCP ツール名、スキルの説明がすべてコンテキストに読み込まれます。あなた自身のセットアップは、出力スタイル--append-system-promptからのテキストなど、ここにさらに多くのものを追加する可能性があります。これらはシステムプロンプトと同じ方法で入ります。
  • Claude が作業するとき: 各ファイル読み込みがコンテキストに追加され、パススコープ付きルールは一致するファイルと一緒に自動的に読み込まれ、PostToolUse フックは各編集後に発火します。
  • フォローアップ プロンプト: サブエージェントは独自の別のコンテキストウィンドウで研究を処理するため、大きなファイル読み込みはあなたのコンテキストウィンドウから外れます。サマリーと小さなメタデータトレーラーだけが戻ってきます。
  • 最後に: /compact は会話を構造化されたサマリーに置き換えます。ほとんどのスタートアップコンテンツは自動的に再度読み込まれます。以下の表は、各メカニズムに何が起こるかを示しています。

コンパクション後に残るもの

長いセッションがコンパクションされると、Claude Code は会話履歴をコンテキストウィンドウに収まるようにまとめます。あなたの指示に何が起こるかは、それらがどのように読み込まれたかによって異なります。
メカニズムコンパクション後
システムプロンプトと出力スタイル変更なし。メッセージ履歴の一部ではありません
プロジェクトルート CLAUDE.md とスコープなしルールディスクから再度注入されます
自動メモリディスクから再度注入されます
paths: frontmatter を持つルール一致するファイルが再度読み込まれるまで失われます
サブディレクトリ内のネストされた CLAUDE.mdそのサブディレクトリ内のファイルが再度読み込まれるまで失われます
呼び出されたスキル本体再度注入されます。スキルあたり 5,000 トークン、合計 25,000 トークンでキャップされます。最も古いものが最初にドロップされます
フック適用されません。フックはコンテキストではなくコードとして実行されます
パススコープ付きルールとネストされた CLAUDE.md ファイルは、トリガーファイルが読み込まれるときにメッセージ履歴に読み込まれるため、コンパクションはそれらを他のすべてのものと一緒にまとめます。一致するファイルが Claude によって再度読み込まれるときに再度読み込まれます。ルールがコンパクション全体で永続化する必要がある場合は、paths: frontmatter をドロップするか、プロジェクトルート CLAUDE.md に移動してください。 スキル本体はコンパクション後に再度注入されますが、大きなスキルはスキルあたりのキャップに収まるようにトリミングされ、合計予算を超えると最も古い呼び出されたスキルがドロップされます。トリミングはファイルの開始を保持するため、SKILL.md の上部に最も重要な指示を配置してください。

コンテキストがいっぱいになるとき

Claude Code はコンテキストウィンドウの制限に近づくと自動的にコンパクションを実行するため、コンテキストウィンドウがいっぱいになってもセッションが終了することはありません。自動パスはタイムラインの /compact ステップと同じ方法で機能します。保持される内容については、コンテキストがいっぱいになるときを参照してください。 自動パスが実行される前に対応することもできます。
  • フォーカスを絞ってコンパクション: /compact を指示付きで実行します。例えば、/compact focus on the auth bug fix のように、長い新しいタスクを開始する前に実行してください。サマリーは自動パスが重要だと推測するものではなく、あなたが選択したものを保持します。
  • タスク間でクリア: 関連のない作業に切り替えるときに /clear を実行してください。古い会話は次に必要なファイルを圧迫し、すべてのメッセージでトークンを消費します。
  • 大きな読み込みを委譲: 研究をサブエージェントに送信して、ファイルコンテンツがあなたのコンテキストウィンドウではなく、そのコンテキストウィンドウに留まるようにしてください。
より小さな会話ではなく、より大きなウィンドウが必要な場合、Fable 5、Sonnet 5、Opus 4.6 以降、および Sonnet 4.6 は 100 万トークンのコンテキストウィンドウをサポートしています。プランごとの利用可能性と [1m] モデルバリアントの選択方法については、拡張コンテキストを参照してください。Sonnet 5 は選択する [1m] バリアントなしで 1M で実行されます。その自動コンパクションのしきい値と LLM ゲートウェイの例外については、Sonnet 5 コンテキストウィンドウを参照してください。コンパクションはより大きな制限でも同じ方法で機能します。

あなた自身のセッションを確認する

ビジュアライゼーションは代表的な数値を使用しています。任意の時点でのあなたの実際のコンテキスト使用状況を確認するには、/context を実行して、カテゴリ別の詳細な内訳と最適化の提案を取得してください。/memory を実行して、スタートアップ時にどの CLAUDE.md と自動メモリファイルが読み込まれたかを確認してください。 タイムラインに示されている機能の詳細なカバレッジについては、これらのページを参照してください。