Sessions and memory
Przegląd pamięci
OpenClaw zapamiętuje rzeczy, zapisując zwykłe pliki Markdown w przestrzeni roboczej agenta. Model „pamięta” tylko to, co zostanie zapisane na dysku — nie ma żadnego ukrytego stanu.
Jak to działa
Agent ma trzy pliki związane z pamięcią:
MEMORY.md— pamięć długoterminowa. Trwałe fakty, preferencje i decyzje. Ładowany na początku każdej sesji DM.memory/YYYY-MM-DD.md— notatki dzienne. Bieżący kontekst i obserwacje. Notatki z dzisiaj i wczoraj są ładowane automatycznie.DREAMS.md(opcjonalnie) — Dziennik Dream Diary i podsumowania przeglądów Dreaming do weryfikacji przez człowieka, w tym ugruntowane historyczne wpisy uzupełniające.
Te pliki znajdują się w przestrzeni roboczej agenta (domyślnie ~/.openclaw/workspace).
Co trafia gdzie
MEMORY.md to kompaktowa, kuratorowana warstwa. Używaj jej dla trwałych faktów, preferencji, stałych decyzji i krótkich podsumowań, które powinny być dostępne na początku głównej sesji prywatnej. Nie ma ona służyć jako surowy transkrypt, dzienny dziennik ani wyczerpujące archiwum.
Pliki memory/YYYY-MM-DD.md są warstwą roboczą. Używaj ich do szczegółowych notatek dziennych, obserwacji, podsumowań sesji i surowego kontekstu, który może nadal przydać się później. Te pliki są indeksowane dla memory_search i memory_get, ale nie są wstrzykiwane do normalnego promptu startowego przy każdym przebiegu.
Z czasem agent powinien destylować użyteczny materiał z notatek dziennych do MEMORY.md i usuwać nieaktualne wpisy długoterminowe. Wygenerowane instrukcje przestrzeni roboczej i przepływ Heartbeat mogą robić to okresowo; nie musisz ręcznie edytować MEMORY.md dla każdego zapamiętanego szczegółu.
Jeśli MEMORY.md przekroczy budżet pliku startowego, OpenClaw zachowa plik na dysku w całości, ale skróci kopię wstrzykiwaną do kontekstu modelu. Traktuj to jako sygnał, aby przenieść szczegółowy materiał z powrotem do memory/*.md, zostawić w MEMORY.md tylko trwałe podsumowanie albo zwiększyć limity startowe, jeśli wyraźnie chcesz przeznaczyć więcej budżetu promptu. Użyj /context list, /context detail lub openclaw doctor, aby zobaczyć surowe i wstrzyknięte rozmiary oraz stan skrócenia.
Wywnioskowane zobowiązania
Niektóre przyszłe działania następcze nie są trwałymi faktami. Jeśli wspomnisz o jutrzejszej rozmowie kwalifikacyjnej, użyteczną pamięcią może być „odezwij się po rozmowie”, a nie „zapisz to na zawsze w MEMORY.md”.
Zobowiązania to opcjonalne, krótkotrwałe pamięci działań następczych dla takiego przypadku. OpenClaw wywnioskowuje je w ukrytym przebiegu w tle, ogranicza ich zakres do tego samego agenta i kanału oraz dostarcza terminowe sprawdzenia przez Heartbeat. Jawne przypomnienia nadal używają zaplanowanych zadań.
Narzędzia pamięci
Agent ma dwa narzędzia do pracy z pamięcią:
memory_search— znajduje odpowiednie notatki za pomocą wyszukiwania semantycznego, nawet gdy sformułowanie różni się od oryginału.memory_get— odczytuje konkretny plik pamięci lub zakres wierszy.
Oba narzędzia są dostarczane przez aktywny Plugin pamięci (domyślnie: memory-core).
Towarzyszący Plugin Memory Wiki
Jeśli chcesz, aby trwała pamięć zachowywała się bardziej jak utrzymywana baza wiedzy niż tylko surowe notatki, użyj dołączonego Plugin memory-wiki.
memory-wiki kompiluje trwałą wiedzę do skarbca wiki z:
- deterministyczną strukturą stron
- ustrukturyzowanymi twierdzeniami i dowodami
- śledzeniem sprzeczności i aktualności
- wygenerowanymi pulpitami
- skompilowanymi streszczeniami dla konsumentów agenta/środowiska uruchomieniowego
- narzędziami natywnymi dla wiki, takimi jak
wiki_search,wiki_get,wiki_applyiwiki_lint
Nie zastępuje aktywnego Plugin pamięci. Aktywny Plugin pamięci nadal odpowiada za przypominanie, promowanie i Dreaming. memory-wiki dodaje obok niego bogatą w pochodzenie warstwę wiedzy.
Zobacz Memory Wiki.
Wyszukiwanie w pamięci
Gdy skonfigurowany jest dostawca embeddingów, memory_search używa wyszukiwania hybrydowego — łączy podobieństwo wektorowe (znaczenie semantyczne) z dopasowaniem słów kluczowych (dokładne terminy, takie jak identyfikatory i symbole kodu). Działa to od razu, gdy masz klucz API dla dowolnego obsługiwanego dostawcy.
Szczegóły działania wyszukiwania, opcje dostrajania i konfigurację dostawcy znajdziesz w Wyszukiwanie w pamięci.
Backendy pamięci
Oparty na SQLite. Działa od razu z wyszukiwaniem słów kluczowych, podobieństwem wektorowym i wyszukiwaniem hybrydowym. Bez dodatkowych zależności.
Lokalny sidecar z ponownym rankingowaniem, rozszerzaniem zapytań i możliwością indeksowania katalogów poza przestrzenią roboczą.
Natywna dla AI pamięć między sesjami z modelowaniem użytkownika, wyszukiwaniem semantycznym i świadomością wielu agentów. Instalacja Plugin.
Dołączona pamięć oparta na LanceDB z embeddingami zgodnymi z OpenAI, automatycznym przypominaniem, automatycznym przechwytywaniem i obsługą lokalnych embeddingów Ollama.
Warstwa wiki wiedzy
Automatyczne opróżnianie pamięci
Zanim kompaktowanie podsumuje rozmowę, OpenClaw uruchamia cichy przebieg, który przypomina agentowi o zapisaniu ważnego kontekstu do plików pamięci. Jest to domyślnie włączone — nie musisz niczego konfigurować.
Aby utrzymać ten przebieg porządkowy na modelu lokalnym, ustaw dokładne nadpisanie modelu opróżniania pamięci:
{ "agents": { "defaults": { "compaction": { "memoryFlush": { "model": "ollama/qwen3:8b" } } } }}Nadpisanie dotyczy tylko przebiegu opróżniania pamięci i nie dziedziczy łańcucha rezerwowego aktywnej sesji.
Dreaming
Dreaming to opcjonalny przebieg konsolidacji pamięci w tle. Zbiera sygnały krótkoterminowe, ocenia kandydatów i promuje do pamięci długoterminowej (MEMORY.md) tylko zakwalifikowane elementy.
Zaprojektowano go tak, aby pamięć długoterminowa miała wysoki stosunek sygnału do szumu:
- Opcjonalne: domyślnie wyłączone.
- Zaplanowane: po włączeniu
memory-coreautomatycznie zarządza jednym cyklicznym zadaniem cron dla pełnego przeglądu Dreaming. - Progowe: promocje muszą przejść bramki wyniku, częstotliwości przypominania i różnorodności zapytań.
- Możliwe do przeglądu: podsumowania faz i wpisy dziennika są zapisywane w
DREAMS.mddo weryfikacji przez człowieka.
Opis zachowania faz, sygnałów punktacji i szczegółów Dream Diary znajdziesz w Dreaming.
Ugruntowane uzupełnianie i promocja na żywo
System Dreaming ma teraz dwie ściśle powiązane ścieżki przeglądu:
- Dreaming na żywo działa na krótkoterminowym magazynie Dreaming w
memory/.dreams/i jest tym, czego normalna głęboka faza używa przy podejmowaniu decyzji, co może przejść doMEMORY.md. - Ugruntowane uzupełnianie odczytuje historyczne notatki
memory/YYYY-MM-DD.mdjako samodzielne pliki dzienne i zapisuje ustrukturyzowane wyniki przeglądu wDREAMS.md.
Ugruntowane uzupełnianie jest przydatne, gdy chcesz odtworzyć starsze notatki i sprawdzić, co system uznaje za trwałe, bez ręcznej edycji MEMORY.md.
Gdy użyjesz:
openclaw memory rem-backfill --path ./memory --stage-short-termugruntowani trwali kandydaci nie są promowani bezpośrednio. Są umieszczani w tym samym krótkoterminowym magazynie Dreaming, którego normalna głęboka faza już używa. Oznacza to, że:
DREAMS.mdpozostaje powierzchnią przeglądu dla człowieka.- magazyn krótkoterminowy pozostaje powierzchnią rankingową dla maszyny.
MEMORY.mdnadal jest zapisywany tylko przez głęboką promocję.
Jeśli uznasz, że odtworzenie nie było przydatne, możesz usunąć przygotowane artefakty bez dotykania zwykłych wpisów dziennika ani normalnego stanu przypominania:
openclaw memory rem-backfill --rollbackopenclaw memory rem-backfill --rollback-short-termCLI
openclaw memory status # Check index status and provideropenclaw memory search "query" # Search from the command lineopenclaw memory index --force # Rebuild the indexDalsza lektura
- Wbudowany silnik pamięci: domyślny backend SQLite.
- Silnik pamięci QMD: zaawansowany lokalny sidecar.
- Pamięć Honcho: natywna dla AI pamięć między sesjami.
- Memory LanceDB: Plugin oparty na LanceDB z embeddingami zgodnymi z OpenAI.
- Memory Wiki: skompilowany skarbiec wiedzy i narzędzia natywne dla wiki.
- Wyszukiwanie w pamięci: potok wyszukiwania, dostawcy i dostrajanie.
- Dreaming: promocja w tle z krótkoterminowego przypominania do pamięci długoterminowej.
- Dokumentacja konfiguracji pamięci: wszystkie pokrętła konfiguracji.
- Compaction: jak Compaction współdziała z pamięcią.