Context Window と Compaction の管理
長時間のセッションで LLM とやり取りをしていると、コンテキストウィンドウがいっぱいになり、モデルが過去の指示を無視し始めることがあります。開発者にとって、トークン制限を気にしながらプロンプトを調整し続けるのは非常に手間がかかる作業です。
OpenClaw は、この問題を解決するために Compaction(圧縮)という仕組みを提供しています。これにより、モデルの制限内に収まるように履歴を整理し、スムーズな対話を継続できます。
- 設定済みのプロバイダーカタログ(モデル定義を含む)
- OpenClaw の動作環境
クイックスタート
Section titled “クイックスタート”OpenClaw では、コンテキスト管理を自動または手動で行うことができます。
1. Auto-compaction(デフォルトで有効)
Section titled “1. Auto-compaction(デフォルトで有効)”セッションがモデルの Context Window の上限に近づくと、OpenClaw は自動的に Compaction を実行します。古い会話を要約して JSONL 形式のセッション履歴に保存し、最近のメッセージと組み合わせてリクエストを再試行します。
Compaction の前には、耐久性のあるノートをディスクに保存する silent memory flush が実行される場合があります。
2. Manual compaction
Section titled “2. Manual compaction”履歴が肥大化していると感じたときは、/compact コマンドを使って手動で要約を実行できます。特定の指示を与えることも可能です。
/compact Focus on decisions and open questionsCompaction と Pruning の違い
Section titled “Compaction と Pruning の違い”OpenClaw には履歴を整理する 2 つの方法があります。
- Compaction: 会話全体を要約し、JSONL ファイルに永続化します。
- Session pruning: メモリ上でのみ、古い tool results を削除します。リクエストごとに実行されます。
トラブルシューティング
Section titled “トラブルシューティング”動作状況を確認するには、以下の項目をチェックしてください。
- verbose mode: 実行時に
🧹 Auto-compaction completeというメッセージが表示されます。 - /status コマンド:
🧹 Compactions: <count>という項目で、これまでに実行された回数を確認できます。
効率的なセッション管理のためのヒントです。
- セッションの内容が古くなったり、コンテキストが肥大化したと感じたら
/compactを実行してください。 - ツール出力が蓄積してレスポンスが遅い場合は、Pruning を活用してメモリ負荷を軽減します。
- 完全に新しい状態で会話を始めたい場合は、
/newを使用して新しいセッション ID を作成します。 - 現在のセッション ID を維持したまま履歴を消去したい場合は
/resetを実行してください。
詳細な設定については AI Setup Assistant で確認できます。
次のステップ
Section titled “次のステップ”OpenClaw Expert
まだ解決しませんか?
このページで解決しない場合は、OpenClaw Expertに直接質問してください。