Dreaming
Dreaming to system konsolidacji pamięci działający w tle wmemory-core.
Pomaga OpenClaw przenosić silne sygnały z pamięci krótkotrwałej do trwałej pamięci,
zachowując przy tym przejrzystość i możliwość przeglądu procesu.
Dreaming jest opcjonalny i domyślnie wyłączony.
Co zapisuje Dreaming
Dreaming przechowuje dwa rodzaje danych wyjściowych:- Stan maszyny w
memory/.dreams/(magazyn recall, sygnały faz, punkty kontrolne ingestii, blokady). - Czytelne dla człowieka dane wyjściowe w
DREAMS.md(lub istniejącymdreams.md) oraz opcjonalne pliki raportów faz wmemory/dreaming/<phase>/YYYY-MM-DD.md.
MEMORY.md.
Model faz
Dreaming używa trzech współpracujących faz:| Faza | Cel | Trwały zapis |
|---|---|---|
| Light | Sortowanie i przygotowanie ostatnich materiałów z pamięci krótkotrwałej | Nie |
| Deep | Ocenianie i promowanie trwałych kandydatów | Tak (MEMORY.md) |
| REM | Refleksja nad motywami i powtarzającymi się ideami | Nie |
Faza Light
Faza Light pobiera ostatnie sygnały z codziennej pamięci i ślady recall, usuwa duplikaty oraz przygotowuje wiersze kandydatów.- Odczytuje stan recall pamięci krótkotrwałej, ostatnie pliki codziennej pamięci oraz zredagowane transkrypty sesji, jeśli są dostępne.
- Zapisuje zarządzany blok
## Light Sleep, gdy magazyn obejmuje dane wyjściowe inline. - Rejestruje sygnały wzmocnienia do późniejszego rankingu deep.
- Nigdy nie zapisuje do
MEMORY.md.
Faza Deep
Faza Deep decyduje o tym, co staje się pamięcią długotrwałą.- Nadaje kandydatom ranking przy użyciu ważonej punktacji i progów.
- Wymaga spełnienia
minScore,minRecallCountiminUniqueQueries. - Przed zapisem ponownie pobiera fragmenty z aktywnych plików dziennych, dzięki czemu nieaktualne/usunięte fragmenty są pomijane.
- Dopisuje promowane wpisy do
MEMORY.md. - Zapisuje podsumowanie
## Deep SleepwDREAMS.mdi opcjonalnie zapisujememory/dreaming/deep/YYYY-MM-DD.md.
Faza REM
Faza REM wyodrębnia wzorce i sygnały refleksyjne.- Buduje podsumowania motywów i refleksji na podstawie ostatnich śladów pamięci krótkotrwałej.
- Zapisuje zarządzany blok
## REM Sleep, gdy magazyn obejmuje dane wyjściowe inline. - Rejestruje sygnały wzmocnienia REM używane przez ranking deep.
- Nigdy nie zapisuje do
MEMORY.md.
Ingestia transkryptów sesji
Dreaming może pobierać zredagowane transkrypty sesji do korpusu Dreaming. Gdy transkrypty są dostępne, trafiają do fazy light wraz z sygnałami codziennej pamięci i śladami recall. Treści osobiste i wrażliwe są redagowane przed ingestą.Dziennik snów
Dreaming prowadzi także narracyjny Dziennik snów wDREAMS.md.
Gdy po każdej fazie zbierze się wystarczająco dużo materiału, memory-core uruchamia
w tle, w trybie best-effort, turę subagenta (z użyciem domyślnego modelu runtime)
i dopisuje krótki wpis do dziennika.
Ten dziennik jest przeznaczony do czytania przez ludzi w interfejsie Dreams, a nie jako źródło promocji.
Artefakty dziennika/raportów wygenerowane przez Dreaming są wykluczone z promocji
pamięci krótkotrwałej. Do promowania do
MEMORY.md kwalifikują się wyłącznie ugruntowane fragmenty pamięci.
Istnieje także ugruntowana ścieżka historycznego backfillu do przeglądu i odzyskiwania danych:
memory rem-harness --path ... --groundedwyświetla podgląd ugruntowanych danych wyjściowych dziennika na podstawie historycznych notatekYYYY-MM-DD.md.memory rem-backfill --path ...zapisuje odwracalne ugruntowane wpisy dziennika wDREAMS.md.memory rem-backfill --path ... --stage-short-termprzygotowuje ugruntowanych trwałych kandydatów w tym samym magazynie dowodów krótkoterminowych, którego używa już normalna faza deep.memory rem-backfill --rollbacki--rollback-short-termusuwają te przygotowane artefakty backfillu bez naruszania zwykłych wpisów dziennika ani aktywnego recall pamięci krótkotrwałej.
Sygnały rankingu deep
Ranking deep używa sześciu ważonych sygnałów bazowych oraz wzmocnienia faz:| Sygnał | Waga | Opis |
|---|---|---|
| Częstotliwość | 0.24 | Ile sygnałów pamięci krótkotrwałej zgromadził wpis |
| Trafność | 0.30 | Średnia jakość odzyskiwania dla wpisu |
| Różnorodność zapytań | 0.15 | Różne konteksty zapytań/dni, w których się pojawił |
| Aktualność | 0.15 | Punktacja świeżości z osłabieniem w czasie |
| Konsolidacja | 0.10 | Siła nawrotów w wielu dniach |
| Bogactwo koncepcyjne | 0.06 | Gęstość tagów pojęciowych na podstawie fragmentu/ścieżki |
memory/.dreams/phase-signals.json.
Harmonogram
Po włączeniumemory-core automatycznie zarządza jednym zadaniem Cron dla pełnego przebiegu Dreaming.
Każdy przebieg uruchamia fazy po kolei: light -> REM -> deep.
Domyślne zachowanie harmonogramu:
| Ustawienie | Domyślna wartość |
|---|---|
dreaming.frequency | 0 3 * * * |
Szybki start
Włącz Dreaming:Komenda slash
Przepływ pracy CLI
Użyj promocji CLI do podglądu lub ręcznego zastosowania:memory promote domyślnie używa progów fazy deep, chyba że zostaną nadpisane
flagami CLI.
Wyjaśnij, dlaczego konkretny kandydat zostałby lub nie zostałby promowany:
Kluczowe wartości domyślne
Wszystkie ustawienia znajdują się wplugins.entries.memory-core.config.dreaming.
| Klucz | Domyślna wartość |
|---|---|
enabled | false |
frequency | 0 3 * * * |
Interfejs Dreams
Po włączeniu karta Dreams w Gateway pokazuje:- bieżący stan włączenia Dreaming
- status na poziomie faz oraz obecność zarządzanego przebiegu
- liczbę wpisów krótkoterminowych, ugruntowanych, sygnałów i promowanych dzisiaj
- czas do następnego zaplanowanego uruchomienia
- osobną ugruntowaną ścieżkę sceny dla przygotowanych wpisów z historycznego odtwarzania
- rozwijany czytnik Dziennika snów oparty na
doctor.memory.dreamDiary