Перейти до основного вмісту

Обрізання сесії

Обрізання сесії обрізає старі результати інструментів із контексту перед кожним викликом LLM. Це зменшує роздування контексту через накопичені виводи інструментів (результати exec, читання файлів, результати пошуку) без переписування звичайного тексту розмови.
Обрізання виконується лише в пам’яті — воно не змінює транскрипт сесії на диску. Повна історія завжди зберігається.

Чому це важливо

У довгих сесіях накопичується вивід інструментів, який збільшує вікно контексту. Це підвищує вартість і може змусити compaction відбутися раніше, ніж потрібно. Обрізання особливо корисне для Anthropic prompt caching. Після завершення TTL кешу наступний запит повторно кешує весь prompt. Обрізання зменшує розмір запису в кеш, що безпосередньо знижує вартість.

Як це працює

  1. Дочекайтеся завершення TTL кешу (типово 5 хвилин).
  2. Знайдіть старі результати інструментів для звичайного обрізання (текст розмови не змінюється).
  3. М’яко обріжте надто великі результати — залиште початок і кінець, вставте ....
  4. Повністю очистьте решту — замініть placeholder.
  5. Скиньте TTL, щоб подальші запити використовували свіжий кеш повторно.

Очищення застарілих зображень

OpenClaw також виконує окреме ідемпотентне очищення для старіших застарілих сесій, які зберігали сирі блоки зображень в історії.
  • Воно зберігає 3 найновіші завершені ходи байт у байт, щоб префікси prompt cache для нещодавніх follow-up запитів залишалися стабільними.
  • Старіші вже оброблені блоки зображень в історії user або toolResult можуть бути замінені на [image data removed - already processed by model].
  • Це окремо від звичайного обрізання за TTL кешу. Воно існує, щоб повторні payload зображень не ламали prompt cache на пізніших ходах.

Розумні типові значення

OpenClaw автоматично вмикає обрізання для профілів Anthropic:
Тип профілюОбрізання ввімкненоHeartbeat
Автентифікація Anthropic OAuth/token (включно з повторним використанням Claude CLI)Так1 година
API keyТак30 хв
Якщо ви задаєте явні значення, OpenClaw не перевизначає їх.

Увімкнення або вимкнення

Для провайдерів, відмінних від Anthropic, обрізання типово вимкнене. Щоб увімкнути:
{
  agents: {
    defaults: {
      contextPruning: { mode: "cache-ttl", ttl: "5m" },
    },
  },
}
Щоб вимкнути: задайте mode: "off".

Обрізання проти compaction

ОбрізанняCompaction
ЩоОбрізає результати інструментівУзагальнює розмову
Зберігається?Ні (для кожного запиту)Так (у транскрипті)
ОбластьЛише результати інструментівУся розмова
Вони доповнюють одне одного — обрізання зберігає вивід інструментів компактним між циклами compaction.

Додаткові матеріали

  • Compaction — зменшення контексту на основі узагальнення
  • Конфігурація Gateway — усі параметри конфігурації обрізання (contextPruning.*)