Context Window & Compaction(コンテキストウィンドウとコンパクション)

すべてのモデルには context window(コンテキストウィンドウ)(見ることができる最大トークン数)があります。長時間実行されるチャットは、メッセージとツール結果を蓄積します。ウィンドウが狭くなると、OpenClaw は古い履歴を**コンパクト(compact)**して制限内に収めます。

コンパクションとは

コンパクション(compaction)は、古い会話を要約してコンパクトなサマリーエントリにし、最近のメッセージはそのまま保持します。サマリーはセッション履歴に保存されるため、今後のリクエストでは次のものを使用します:

  • コンパクションサマリー
  • コンパクションポイント後の最近のメッセージ

コンパクションは、セッションの JSONL 履歴に永続化されます。

設定

agents.defaults.compaction 設定については、Compaction config & modes を参照してください。

自動コンパクション(デフォルトでオン)

セッションがモデルのコンテキストウィンドウに近づくか超えると、OpenClaw は自動コンパクションをトリガーし、コンパクトされたコンテキストを使用して元のリクエストを再試行する場合があります。

次のように表示されます:

  • verbose モードで 🧹 Auto-compaction complete
  • /status🧹 Compactions: <count> を表示

コンパクションの前に、OpenClaw はサイレントメモリフラッシュターンを実行して、永続的なメモをディスクに保存できます。詳細と設定については、Memory を参照してください。

手動コンパクション

/compact(オプションで指示付き)を使用して、コンパクションパスを強制します:

/compact Focus on decisions and open questions

コンテキストウィンドウのソース

コンテキストウィンドウはモデル固有です。OpenClaw は、設定されたプロバイダーカタログからのモデル定義を使用して制限を決定します。

コンパクション vs プルーニング

  • コンパクション:要約し、JSONL に永続化します。
  • セッションプルーニング:古いツール結果のみをトリミングし、リクエストごとにインメモリで行います。

プルーニングの詳細については、/concepts/session-pruning を参照してください。

ヒント

  • セッションが古く感じられるか、コンテキストが肥大化している場合は、/compact を使用してください。
  • 大きなツール出力はすでに切り捨てられています。プルーニングにより、ツール結果の蓄積をさらに削減できます。
  • 真新しいスレートが必要な場合は、/new または /reset で新しいセッション ID を開始します。