Sessions and memory
Огляд пам’яті
OpenClaw запам'ятовує речі, записуючи звичайні Markdown-файли у робочій області вашого агента. Модель "пам'ятає" лише те, що збережено на диск — прихованого стану немає.
Як це працює
Ваш агент має три файли, пов'язані з пам'яттю:
MEMORY.md— довготривала пам'ять. Стійкі факти, налаштування та рішення. Завантажується на початку кожної DM-сесії.memory/YYYY-MM-DD.md— щоденні нотатки. Поточний контекст і спостереження. Нотатки за сьогодні й учора завантажуються автоматично.DREAMS.md(необов'язково) — Dream Diary і зведення проходів Dreaming для перегляду людиною, зокрема обґрунтовані історичні записи зворотного заповнення.
Ці файли розташовані в робочій області агента (типово ~/.openclaw/workspace).
Що куди записувати
MEMORY.md — це компактний, відібраний шар. Використовуйте його для стійких фактів,
налаштувань, постійних рішень і коротких зведень, які мають бути доступні на
початку основної приватної сесії. Він не призначений бути сирою стенограмою,
щоденним журналом або вичерпним архівом.
Файли memory/YYYY-MM-DD.md — це робочий шар. Використовуйте їх для докладних щоденних
нотаток, спостережень, зведень сесій і сирого контексту, який може ще знадобитися
пізніше. Ці файли індексуються для memory_search і memory_get, але вони
не вставляються у звичайний початковий prompt на кожному ході.
З часом очікується, що агент виокремлюватиме корисний матеріал із щоденних нотаток
у MEMORY.md і видалятиме застарілі довготривалі записи. Згенеровані інструкції
робочої області й потік Heartbeat можуть робити це періодично; вам не потрібно
вручну редагувати MEMORY.md для кожної запам'ятованої деталі.
Якщо MEMORY.md перевищує бюджет початкового файлу, OpenClaw зберігає файл на
диску без змін, але обрізає копію, вставлену в контекст моделі. Сприймайте це як
сигнал перенести докладний матеріал назад у memory/*.md, залишити в
MEMORY.md лише стійке зведення або підвищити початкові ліміти, якщо ви явно
хочете витрачати більше бюджету prompt. Використовуйте /context list, /context detail або
openclaw doctor, щоб побачити сирі й вставлені розміри та стан обрізання.
Виведені зобов'язання
Деякі майбутні наступні дії не є стійкими фактами. Якщо ви згадуєте співбесіду
завтра, корисною пам'яттю може бути "перевірити стан після співбесіди", а не "зберегти
це назавжди в MEMORY.md."
Зобов'язання — це opt-in, короткочасні спогади про наступні дії для такого випадку. OpenClaw виводить їх у прихованому фоновому проході, обмежує їх тим самим агентом і каналом та доставляє належні check-in через Heartbeat. Явні нагадування й надалі використовують заплановані завдання.
Інструменти пам'яті
Агент має два інструменти для роботи з пам'яттю:
memory_search— знаходить релевантні нотатки за допомогою семантичного пошуку, навіть коли формулювання відрізняється від оригіналу.memory_get— читає конкретний файл пам'яті або діапазон рядків.
Обидва інструменти надаються активним Plugin пам'яті (типово: memory-core).
Супутній Plugin Memory Wiki
Якщо ви хочете, щоб стійка пам'ять поводилася радше як підтримувана база знань, а не
просто сирі нотатки, використовуйте вбудований Plugin memory-wiki.
memory-wiki компілює стійкі знання у wiki-сховище з:
- детермінованою структурою сторінок
- структурованими твердженнями й доказами
- відстеженням суперечностей і свіжості
- згенерованими панелями
- скомпільованими дайджестами для споживачів агента/середовища виконання
- wiki-нативними інструментами, як-от
wiki_search,wiki_get,wiki_applyіwiki_lint
Він не замінює активний Plugin пам'яті. Активний Plugin пам'яті й надалі
відповідає за пригадування, просування й Dreaming. memory-wiki додає поруч із ним
шар знань із багатою провенансною інформацією.
Див. Memory Wiki.
Пошук у пам'яті
Коли налаштовано постачальника embedding, memory_search використовує гібридний
пошук — поєднання векторної подібності (семантичного значення) з добором за ключовими словами
(точними термінами на кшталт ID і символів коду). Це працює з коробки, щойно у вас є
API-ключ будь-якого підтримуваного постачальника.
Докладніше про те, як працює пошук, параметри налаштування та налаштування постачальника див. Пошук у пам'яті.
Бекенди пам'яті
На основі SQLite. Працює з коробки з пошуком за ключовими словами, векторною подібністю та гібридним пошуком. Без додаткових залежностей.
Локальний sidecar із пріоритетом локальності з reranking, розширенням запитів і можливістю індексувати каталоги за межами робочої області.
AI-нативна міжсесійна пам'ять із моделюванням користувача, семантичним пошуком і обізнаністю про кількох агентів. Встановлення Plugin.
Вбудована пам'ять на основі LanceDB з OpenAI-сумісними embeddings, автопригадуванням, автозахопленням і підтримкою локальних embeddings Ollama.
Wiki-шар знань
Автоматичний запис пам'яті
Перед тим як Compaction узагальнить вашу розмову, OpenClaw запускає тихий хід, який нагадує агенту зберегти важливий контекст у файли пам'яті. Це ввімкнено типово — вам не потрібно нічого налаштовувати.
Щоб виконувати цей службовий хід на локальній моделі, задайте точне перевизначення моделі для запису пам'яті:
{ "agents": { "defaults": { "compaction": { "memoryFlush": { "model": "ollama/qwen3:8b" } } } }}Перевизначення застосовується лише до ходу запису пам'яті й не успадковує ланцюжок fallback активної сесії.
Dreaming
Dreaming — це необов'язковий фоновий прохід консолідації пам'яті. Він збирає
короткострокові сигнали, оцінює кандидатів і просуває лише кваліфіковані елементи у
довготривалу пам'ять (MEMORY.md).
Його призначено для підтримання високої корисності довготривалої пам'яті:
- Opt-in: вимкнено типово.
- Заплановано: коли ввімкнено,
memory-coreавтоматично керує одним повторюваним завданням Cron для повного проходу Dreaming. - З порогами: просування мають пройти gates за оцінкою, частотою пригадування та різноманітністю запитів.
- Доступно для перегляду: зведення фаз і записи щоденника записуються в
DREAMS.mdдля перегляду людиною.
Про поведінку фаз, сигнали оцінювання та деталі Dream Diary див. Dreaming.
Обґрунтоване зворотне заповнення та live-просування
Система Dreaming тепер має дві тісно пов'язані лінії перегляду:
- Live dreaming працює з короткострокового сховища Dreaming у
memory/.dreams/і саме його використовує звичайна глибока фаза, коли вирішує, що може перейти вMEMORY.md. - Обґрунтоване зворотне заповнення читає історичні нотатки
memory/YYYY-MM-DD.mdяк самостійні денні файли й записує структурований результат перегляду вDREAMS.md.
Обґрунтоване зворотне заповнення корисне, коли ви хочете повторно програти старіші нотатки й перевірити, що
система вважає стійким, без ручного редагування MEMORY.md.
Коли ви використовуєте:
openclaw memory rem-backfill --path ./memory --stage-short-termобґрунтовані стійкі кандидати не просуваються напряму. Їх розміщують у тому самому короткостроковому сховищі Dreaming, яке вже використовує звичайна глибока фаза. Це означає:
DREAMS.mdлишається поверхнею перегляду для людини.- короткострокове сховище лишається машинно-орієнтованою поверхнею ранжування.
MEMORY.mdі надалі записується лише глибоким просуванням.
Якщо ви вирішите, що повторне програвання не було корисним, можна видалити розміщені артефакти без змін до звичайних записів щоденника або нормального стану пригадування:
openclaw memory rem-backfill --rollbackopenclaw memory rem-backfill --rollback-short-termCLI
openclaw memory status # Перевірити стан індексу й постачальникаopenclaw memory search "query" # Шукати з командного рядкаopenclaw memory index --force # Перебудувати індексДодаткове читання
- Вбудований рушій пам'яті: типовий бекенд SQLite.
- Рушій пам'яті QMD: розширений локальний sidecar із пріоритетом локальності.
- Пам'ять Honcho: AI-нативна міжсесійна пам'ять.
- Memory LanceDB: Plugin на основі LanceDB з OpenAI-сумісними embeddings.
- Memory Wiki: скомпільоване сховище знань і wiki-нативні інструменти.
- Пошук у пам'яті: конвеєр пошуку, постачальники й налаштування.
- Dreaming: фонове просування з короткострокового пригадування в довготривалу пам'ять.
- Довідник конфігурації пам'яті: усі ручки конфігурації.
- Compaction: як Compaction взаємодіє з пам'яттю.