Claude Codeのコンテキスト管理会話が長くなったときの整理・圧縮・分割の方法
Claude Codeの会話は、長くなるほどコンテキストを消費し、精度や速度、費用に影響します。コンテキストが増える原因、/clearと/compactの使い分け、サブエージェントやメモリの活用、会話を分ける判断基準を整理します。
公的機関・公式資料などの一次情報と照合して作成しています。このサイトについて
Claude Codeのコンテキスト管理とは
Claude Codeは、会話の履歴・読み込んだファイル・コマンドの出力などを、コンテキスト(モデルが一度に扱える情報)として保持して作業します(コンテキストウィンドウ)。コンテキストには上限があり、長くなるほど、「重要な指示が薄れやすい」「応答が遅くなる」「費用が増える」「古い情報に引きずられる」といった問題が起きやすくなります。コンテキストを意識して整理することは、Claude Codeを安定して使うための、基本的な技術です(コスト・使用量の管理)。コマンドや自動整理の仕様は、更新されることがあります。公式ドキュメントで確認してください。
コンテキストが増える原因
| 原因 | 内容 |
|---|---|
| 会話の履歴 | やり取りが続くほど増える |
| ファイルの読み込み | 大きなファイルや、多数のファイルを読むと、一気に増える |
| コマンドの出力 | テストやビルドの、長い出力が残る |
| 読み込みの設定 | CLAUDE.md、接続しているツールの説明なども、常に消費する(CLAUDE.mdの書き方、Claude CodeでMCPを使う) |
| 試行錯誤の履歴 | 失敗した試みの記録も、残り続ける |
起きやすい問題
| 問題 | 内容 |
|---|---|
| 指示の見落とし | 会話の初期の指示が、薄れる |
| 判断の質の低下 | 無関係な情報が増え、焦点がぼやける |
| 速度の低下 | 処理する情報が多く、応答が遅くなる |
| 費用の増加 | 利用量が増える |
| 上限への到達 | 自動で要約されたり、継続が難しくなったりする |
対処の基本手段
| 手段 | 内容 | 向く場面 |
|---|---|---|
/clear |
会話の履歴を消去し、新しく始める | 話題が変わるとき、混乱したとき |
/compact |
会話を要約して圧縮し、継続する | 作業の途中で、続けたいが、会話が長くなったとき |
| 新しい会話を始める | 区切りで、まっさらな状態にする | 別の作業に移るとき |
| 会話の再開 | 以前の会話を、呼び出して続ける(/resumeなど) |
中断した作業の継続(スラッシュコマンド) |
/rewind |
会話(とコード)を以前の時点に戻す。途中から後ろだけを要約することもできる | 方向違いの試行を、なかったことにしたいとき |
/context |
文脈の使用状況を、色分けで表示する | 何が文脈を消費しているかを知りたいとき |
/clearと/compactの使い分け
| 項目 | /clear |
/compact |
|---|---|---|
| 履歴 | 新しい会話が空の状態で始まる(以前の会話は/resumeで呼び出せる) |
要約として残る |
| 向く場面 | 関連のない、新しい作業 | 同じ作業の継続 |
| 注意点 | 必要な情報は、事前にファイルに残す | 要約で、細部が失われうる。残したい点を指示する(例:/compact テストの結果を中心に) |
情報を会話の外に出す
| 方法 | 内容 |
|---|---|
| メモリ(CLAUDE.md) | 繰り返し必要な前提を、ファイルに書く(メモリとCLAUDE.mdの階層) |
| 計画・進捗のファイル | 長い作業の計画と進捗を、文書に残し、会話をまたいで参照する |
| 変更のコミット | 作業の区切りで記録し、状態を確定させる(Gitと組み合わせた開発フロー) |
| 要点の記録 | 重要な決定事項を、ファイルに書き出す |
会話に頼らず、ファイルに状態を残すと、会話を整理しても、作業を継続できます。
作業を分けて文脈を守る
| 方法 | 内容 |
|---|---|
| サブエージェント | 調査・テストなど、出力が多い作業を、別の文脈で行わせ、要約だけを受け取る(サブエージェント) |
| 作業の分割 | 大きな作業を、独立した小さなタスクに分け、それぞれ別の会話で行う |
| 範囲を絞った依頼 | 「このファイルだけ」「この関数だけ」と、対象を限定する |
| 出力の制限 | コマンドの出力を、必要な部分だけにする |
日常のコツ
| コツ | 内容 |
|---|---|
| 会話を目的ごとに区切る | 1つの会話に、複数の無関係な作業を詰め込まない |
| 大きなファイルを丸ごと読ませない | 必要な範囲を指定する |
| 長い出力を避ける | ログは、絞り込んで取得する |
| 失敗が続いたら仕切り直す | 失敗の履歴に引きずられる前に、新しい会話で、整理した依頼をする |
| 接続ツールを絞る | 使わないツールの接続は外す |
| 使用状況を確認する | 使用量の目安を、確認する習慣をつける(コスト・使用量の管理) |
Claude Codeのコンテキスト管理の具体例
長いデバッグ作業で、何度も試行錯誤し、会話が膨らんだとします。原因が分かった時点で、「原因と、修正方針」をファイルや要約に残し、新しい会話で、整理した情報だけを渡して、修正を依頼すると、無関係な試行の履歴に邪魔されず、短時間で、確実に進められます。
Claude Codeのコンテキスト管理の注意点
| 注意点 | 内容 |
|---|---|
| 要約の限界 | 圧縮で、重要な細部が失われうる。重要な情報は、ファイルにも残す |
| 自動の整理 | 上限に近づくと、自動で要約される(自動圧縮)。どこまで埋まったら圧縮するかは設定できる。挙動は、公式で確認 |
| 消す前の確認 | /clearの後も、以前の会話は/resumeなどで呼び出せるが、新しい会話には引き継がれない。必要な内容は、ファイルに保存してから |
| 数値の目安は変わる | 上限の大きさは、モデルや設定により異なる |
Claude Codeのコンテキスト管理のFAQ(よくある質問)
Q. 会話が長くなったか、どう分かりますか?
A. /contextや/usageなどのコマンド、ステータスラインの表示で確認できます。動きが鈍い、指示を忘れるといった症状も、目安です。
Q. /compactすれば、いつまでも続けられますか?
A. 要約を重ねると、情報が劣化していきます。区切りのよいところで、新しい会話に切り替えてください。
Q. サブエージェントは、必ず使うべきですか?
A. 出力が多い調査などで、効果が大きいです。小さな作業では、不要です。
筆者の見解(Claude Codeのコンテキスト管理)
コンテキスト管理は、「机の上の整理」に似ています。机の上に資料を広げすぎると、必要なものが見つからなくなるのと同じです。「会話は短く、状態はファイルに」を意識すると、AIの精度も、費用も、自然に安定します。
Claude Codeのコンテキスト管理の関連項目
- コンテキストウィンドウ
- メモリとCLAUDE.mdの階層
- サブエージェント
- コスト・使用量の管理
出典(一次情報)
本記事は一般的な情報の提供を目的としています。AIのサービス・機能・料金・仕様は頻繁に更新されるため、最新の内容は各社の公式ドキュメントでご確認ください。「筆者の見解」は一つの考え方です。