Sessions and memory
Session pruning
Session pruning memangkas hasil tool lama dari context sebelum setiap panggilan LLM. Ini mengurangi pembengkakan context dari akumulasi output tool (hasil exec, pembacaan file, hasil pencarian) tanpa menulis ulang teks percakapan normal.
Mengapa ini penting
Sesi yang panjang mengumpulkan output tool yang memperbesar window context. Hal ini meningkatkan biaya dan dapat memaksa Compaction lebih cepat dari yang diperlukan.
Pruning sangat bernilai untuk Anthropic prompt caching. Setelah TTL cache kedaluwarsa, permintaan berikutnya melakukan cache ulang untuk seluruh prompt. Pruning mengurangi ukuran penulisan cache, sehingga langsung menurunkan biaya.
Cara kerjanya
- Tunggu hingga TTL cache kedaluwarsa (default 5 menit).
- Temukan hasil tool lama untuk pruning normal (teks percakapan dibiarkan tetap).
- Soft-trim hasil yang terlalu besar -- pertahankan bagian awal dan akhir, sisipkan
.... - Hard-clear sisanya -- ganti dengan placeholder.
- Reset TTL agar permintaan lanjutan menggunakan ulang cache baru.
Pembersihan image legacy
OpenClaw juga membangun tampilan replay idempoten terpisah untuk sesi yang menyimpan blok image mentah atau penanda media prompt-hydration dalam riwayat.
- Ini mempertahankan 3 giliran selesai terbaru byte-for-byte agar prefiks prompt cache untuk tindak lanjut terbaru tetap stabil.
- Dalam tampilan replay, blok image lama yang sudah diproses dari riwayat
useratautoolResultdapat diganti dengan[image data removed - already processed by model]. - Referensi media tekstual lama seperti
[media attached: ...],[Image: source: ...], danmedia://inbound/...dapat diganti dengan[media reference removed - already processed by model]. Penanda lampiran giliran saat ini tetap utuh agar model vision masih dapat menghidrasi image baru. - Transkrip sesi mentah tidak ditulis ulang, sehingga penampil riwayat tetap dapat merender entri pesan asli dan image-nya.
- Ini terpisah dari pruning TTL cache normal. Ini ada untuk menghentikan payload image berulang atau referensi media usang agar tidak merusak prompt cache pada giliran berikutnya.
Default cerdas
OpenClaw secara otomatis mengaktifkan pruning untuk profil Anthropic:
| Tipe profil | Pruning aktif | Heartbeat |
|---|---|---|
| Auth OAuth/token Anthropic (termasuk penggunaan ulang Claude CLI) | Ya | 1 jam |
| API key | Ya | 30 menit |
Jika Anda menetapkan nilai eksplisit, OpenClaw tidak akan menimpanya.
Aktifkan atau nonaktifkan
Pruning nonaktif secara default untuk provider non-Anthropic. Untuk mengaktifkan:
{
agents: {
defaults: {
contextPruning: { mode: "cache-ttl", ttl: "5m" },
},
},
}
Untuk menonaktifkan: atur mode: "off".
Pruning vs Compaction
| Pruning | Compaction | |
|---|---|---|
| Apa | Memangkas hasil tool | Merangkum percakapan |
| Disimpan? | Tidak (per-permintaan) | Ya (dalam transkrip) |
| Cakupan | Hanya hasil tool | Seluruh percakapan |
Keduanya saling melengkapi -- pruning menjaga output tool tetap ringkas di antara siklus Compaction.
Bacaan lebih lanjut
- Compaction -- pengurangan context berbasis peringkasan
- Gateway Configuration -- semua knob config pruning
(
contextPruning.*)