Sessions and memory

Очищення сесії

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

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

У довгих сесіях накопичується вивід інструментів, який роздуває вікно контексту. Це збільшує вартість і може змусити виконати Compaction раніше, ніж потрібно.

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

Як це працює

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

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

OpenClaw також будує окреме ідемпотентне представлення повторного відтворення для сесій, які зберігають у сирій історії блоки зображень або маркери медіа гідратації промпту.

  • Воно зберігає 3 найновіші завершені ходи побайтно без змін, щоб префікси кешу промптів для нещодавніх наступних запитів залишалися стабільними.
  • У представленні повторного відтворення старіші вже оброблені блоки зображень з історії user або toolResult можуть бути замінені на [image data removed - already processed by model].
  • Старіші текстові посилання на медіа, такі як [media attached: ...], [Image: source: ...] і media://inbound/..., можуть бути замінені на [media reference removed - already processed by model]. Маркери вкладень поточного ходу залишаються недоторканими, щоб моделі зору все ще могли гідратувати нові зображення.
  • Сирий транскрипт сесії не переписується, тому переглядачі історії все ще можуть відображати оригінальні записи повідомлень та їхні зображення.
  • Це окремо від звичайного очищення за TTL кешу. Воно існує, щоб повторні корисні навантаження зображень або застарілі посилання на медіа не руйнували кеші промптів у наступних ходах.

Розумні типові налаштування

OpenClaw автоматично вмикає очищення для профілів Anthropic:

Тип профілю Очищення ввімкнено Heartbeat
OAuth/автентифікація за токеном Anthropic (включно з повторним використанням Claude CLI) Так 1 година
Ключ API Так 30 хв

Якщо ви задаєте явні значення, OpenClaw не перевизначає їх.

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

Для постачальників, відмінних від Anthropic, очищення типово вимкнене. Щоб увімкнути:

{
  agents: {
    defaults: {
      contextPruning: { mode: "cache-ttl", ttl: "5m" },
    },
  },
}

Щоб вимкнути: задайте mode: "off".

Очищення проти Compaction

Очищення Compaction
Що Обрізає результати інструментів Підсумовує розмову
Збережено? Ні (для кожного запиту) Так (у транскрипті)
Обсяг Лише результати інструментів Уся розмова

Вони доповнюють одне одного — очищення підтримує компактність виводу інструментів між циклами Compaction.

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

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

Пов’язане