Skip to main content

Dreaming (experimentell)

Dreaming ist der Hintergrunddurchlauf zur Gedächtniskonsolidierung in memory-core. Es wird „Dreaming“ genannt, weil das System erneut betrachtet, was im Laufe des Tages aufgekommen ist, und entscheidet, was es wert ist, als dauerhafter Kontext erhalten zu bleiben. Dreaming ist experimentell, Opt-in und standardmäßig deaktiviert.

Was Dreaming macht

  1. Verfolgt Kurzzeiterinnerungs-Ereignisse aus memory_search-Treffern in memory/YYYY-MM-DD.md.
  2. Bewertet diese Erinnerungskandidaten mit gewichteten Signalen.
  3. Überträgt nur qualifizierte Kandidaten in MEMORY.md.
So bleibt das Langzeitgedächtnis auf dauerhaften, wiederkehrenden Kontext fokussiert statt auf einmalige Details.

Promotionssignale

Dreaming kombiniert vier Signale:
  • Häufigkeit: wie oft derselbe Kandidat erinnert wurde.
  • Relevanz: wie stark die Erinnerungswerte beim Abruf waren.
  • Anfragevielfalt: wie viele unterschiedliche Anfrageabsichten ihn sichtbar gemacht haben.
  • Aktualität: zeitliche Gewichtung über aktuelle Erinnerungen.
Eine Promotion erfordert, dass alle konfigurierten Schwellenwert-Gates bestanden werden, nicht nur ein Signal.

Signalgewichte

SignalGewichtBeschreibung
Häufigkeit0.35Wie oft derselbe Eintrag erinnert wurde
Relevanz0.35Durchschnittliche Erinnerungswerte beim Abruf
Vielfalt0.15Anzahl unterschiedlicher Anfrageabsichten, die ihn sichtbar machten
Aktualität0.15Zeitlicher Zerfall (Halbwertszeit von 14 Tagen)

So funktioniert es

  1. Erinnerungsverfolgung — Jeder memory_search-Treffer wird in memory/.dreams/short-term-recall.json mit Erinnerungsanzahl, Werten und Anfrage- Hash aufgezeichnet.
  2. Geplante Bewertung — In der konfigurierten Kadenz werden Kandidaten mithilfe gewichteter Signale eingestuft. Alle Schwellenwert-Gates müssen gleichzeitig bestanden werden.
  3. Promotion — Qualifizierte Einträge werden mit einem Promotion-Zeitstempel an MEMORY.md angehängt.
  4. Bereinigung — Bereits übertragene Einträge werden aus zukünftigen Zyklen herausgefiltert. Eine Dateisperre verhindert gleichzeitige Ausführungen.

Modi

dreaming.mode steuert Kadenz und Standardschwellenwerte:
ModusKadenzminScoreminRecallCountminUniqueQueries
offDeaktiviert
coreTäglich 3 Uhr0.7532
remAlle 6 Stunden0.8543
deepAlle 12 Stunden0.8033

Planungsmodell

Wenn Dreaming aktiviert ist, verwaltet memory-core den wiederkehrenden Zeitplan automatisch. Sie müssen für dieses Feature nicht manuell einen Cron-Job erstellen. Sie können das Verhalten weiterhin mit expliziten Überschreibungen abstimmen, zum Beispiel:
  • dreaming.frequency (Cron-Ausdruck)
  • dreaming.timezone
  • dreaming.limit
  • dreaming.minScore
  • dreaming.minRecallCount
  • dreaming.minUniqueQueries

Konfigurieren

{
  "plugins": {
    "entries": {
      "memory-core": {
        "config": {
          "dreaming": {
            "mode": "core"
          }
        }
      }
    }
  }
}

Chat-Befehle

Modi wechseln und Status im Chat prüfen:
/dreaming core          # Zu core-Modus wechseln (nächtlich)
/dreaming rem           # Zu rem-Modus wechseln (alle 6 h)
/dreaming deep          # Zu deep-Modus wechseln (alle 12 h)
/dreaming off           # Dreaming deaktivieren
/dreaming status        # Aktuelle Konfiguration und Kadenz anzeigen
/dreaming help          # Modus-Leitfaden anzeigen

CLI-Befehle

Promotionen über die Befehlszeile in der Vorschau anzeigen und anwenden:
# Promotionskandidaten in der Vorschau anzeigen
openclaw memory promote

# Promotionen auf MEMORY.md anwenden
openclaw memory promote --apply

# Anzahl der Vorschauergebnisse begrenzen
openclaw memory promote --limit 5

# Bereits übertragene Einträge einschließen
openclaw memory promote --include-promoted

# Dreaming-Status prüfen
openclaw memory status --deep
Siehe memory CLI für die vollständige Referenz der Flags.

Dreams-UI

Wenn Dreaming aktiviert ist, zeigt die Gateway-Seitenleiste einen Tab Dreams mit Gedächtnisstatistiken (Kurzzeitanzahl, Langzeitanzahl, Anzahl übertragener Einträge) und der Zeit des nächsten geplanten Zyklus.

Weiterführende Informationen