Claude Codeのコンテキスト管理/compactと/clearで節約する方法
Claude Codeのコンテキスト管理を整理。/compact・/clear・/context の使い分けと、残す内容の指定、自動圧縮が止まったときの対処を解説します。
公的機関・公式資料などの一次情報と照合して作成しています。このサイトについて
Claude Codeのコンテキスト管理とは
コンテキストとは、Claude Code が1回の処理で参照できる、会話・ファイル・指示の全体のことです。公式のコスト管理のページには、文脈が大きいほどトークンの消費も増えるため、積極的に管理することが、節約の基本だと書かれています。
管理に使う主なコマンドは、/compact(要約)、/clear(新しく始める)、/context(内訳の表示)の3つです。この記事では、それぞれの役割と、使い分けの目安を整理します。
基本(3つのコマンド)
| コマンド | 役割 | 使う場面 |
|---|---|---|
/compact |
会話を要約して小さくする。残す内容を指定できる | 続きの作業があり、経緯を残したい |
/clear |
会話をリセットして新しく始める | 無関係な作業に移る。要約できない |
/context |
何が文脈を占めているかを内訳で表示する | 重い・エラーの原因を調べる |
/context は、システムの指示、標準のツール、MCP のツール、サブエージェント、メモリファイル、スキル、会話のメッセージの内訳を示します。
公式のページによると、/clear すると、そのセッションの累計の費用表示は0に戻ります(v2.1.211 以降)。また、/compact は要約する会話を読み込むため、それ自体が大きなリクエストになる一方、経緯が不要で新しく始めたいだけなら /clear は費用がかからない、と説明されています。名前を付けたい場合は /rename を、後で戻りたい場合は /resume を使います。
具体例(残す内容を指定する)
/compact には、要約するときに残してほしい内容を指定できます。公式の例は次のとおりです。
| 指示の例 | 効果 |
|---|---|
/compact Focus on code samples and API usage |
コードの例と API の使い方を重視して残す |
/compact keep only the plan and the diff |
計画と差分だけを残し、大きな出力を落とす |
毎回同じ指示をしたい場合は、プロジェクトの CLAUDE.md に、「Compact instructions」の節を設けて、要約するときの方針を書いておけます。公式の例では、「圧縮するときは、テストの出力とコードの変更に重点を置く」のような書き方が示されています。
Claude Codeのコンテキスト管理の実践ステップ
- 作業の始めに、
/contextで、起動時点の占有を確認する。 - 作業中は、話題の区切りで
/clearを使う。戻る可能性があるなら、先に/renameする。 - 続きの作業なら、文脈が大きくなる前に
/compactする。 - 要約で残したい内容を、指示として書く。
- 大きなファイルは、全体ではなく、範囲を指定して読ませる。
- 自動圧縮(auto-compact)をオンのままにする。
/configで確認できる。
Claude Codeのコンテキスト管理の注意点
- 自動圧縮が成功しても、ファイルや出力が、すぐに文脈を埋め直すことがあります。数回続くと、「Autocompact is thrashing」というエラーで、再試行が止まります。
- そのときの対処は、公式によると、(1) 大きなファイルを小分けで読ませる、(2)
/compactで大きな出力を落とす指示を出す、(3) 大きな作業をサブエージェントに任せる、(4) 不要なら/clearする、の順です。 /clearのあとも同じエラーが出る場合は、/contextで Messages の行を、ほかの行と比べます。Messages が最大なら、新しい会話内のファイルや出力が原因です。ほかの行の合計が大きければ、起動時に読み込まれる内容が大きすぎます。/compactを、すでに巨大な文脈に実行すると、その実行自体が大きな消費になります。
Claude Codeのコンテキスト管理でよくあるミス
- 話題が変わっても、同じ会話を使い続ける。
- 要約に任せきりで、残してほしい内容を指定しない。
/clearで、あとで必要になる経緯を失う。- CLAUDE.md を肥大化させて、毎回の起動時の文脈を圧迫する。公式は、200行以下を目安としています。
Claude Codeのコンテキスト管理のチェックリスト
/contextで、内訳を見る習慣があるか。- 話題の区切りで、
/clearを使っているか。 /compactに、残す内容を指示しているか。- 自動圧縮が有効か確認したか。
- CLAUDE.md が長くなりすぎていないか。
Claude Codeのコンテキスト管理のFAQ(よくある質問)
Q. /compact すると、細かい内容は失われますか。
A. 要約なので、細部は落ちます。重要な内容は、指示で残すよう頼むか、ファイルに書き出しておくと安全です。
Q. /clear した会話は戻せますか。
A. 公式のコスト管理のページでは、クリアする前に /rename で名前を付けておき、後で /resume で戻る方法が案内されています。名前を付けておくと、一覧から探しやすくなります。
Q. コンテキストの使用量は常に見られますか。
A. ステータスラインを設定すれば、常時表示できると、公式のコスト管理のページにあります。
筆者の見解(Claude Codeのコンテキスト管理)
私見では、/compact と /clear の使い分けは「経緯が次の作業に要るかどうか」の一点で決めてよいと考えます。要るなら残す内容を指定して /compact、要らないなら費用のかからない /clear で、迷って長い会話を引きずるのが最も損な選択です。見落としやすいのは、要約では細部が落ちるため、重要な決定や手順を会話の中だけに置いておくと、圧縮のたびに少しずつ失われていくことです。決まったことは CLAUDE.md や作業メモのファイルに書き出しておき、会話はいつ消えてもよい状態にしておくのが、精度と費用の両面で安定する運用だと考えます。
Claude Codeのコンテキスト管理の関連項目
- Prompt is too longエラーの対処
- Claude Codeの使用量の節約
- Claude Codeのトークンの仕組み
- Claude Codeが重い・遅いときの対処
- 残りの利用量を確認する方法
出典(一次情報)
本記事は一般的な情報の提供を目的としています。Claude Code の料金・利用上限・機能・エラーメッセージ・コマンドは頻繁に更新されるため、最新の内容は Anthropic の公式ドキュメントとお使いのバージョンで必ずご確認ください。契約・請求・セキュリティに関する判断は、公式サポートや社内の担当部門にご相談ください。「筆者の見解」は一つの考え方です。