Add DREAM.md with dreaming best practices

This commit is contained in:
OpenClaw
2026-04-14 06:45:41 +00:00
parent 85e88b026b
commit 8f9bc3b5dc

136
DREAM.md Normal file
View File

@@ -0,0 +1,136 @@
# DREAM.md - Dreaming Best Practices
> **Hinweis:** `DREAM.md` ist das Handbuch für das Dreaming-System (Background Memory Consolidation).
> `DREAMS.md` ist das automatisch befüllte Dream Diary des Systems.
---
## Architektur
Dreaming läuft als Background-Prozess in `memory-core` und konsolidiert Kurzzeit-Erinnerungen in langlebiges Wissen (`MEMORY.md`).
### Drei Phasen
| Phase | Zweck | Schreibt nach MEMORY.md? |
|---|---|---|
| **Light** | Sortiert und stage-kt aktuelle Signale | ❌ Nein |
| **Deep** | Bewertet und promoviert Kandidaten | ✅ Ja |
| **REM** | Extrahiert Themen und wiederkehrende Muster | ❌ Nein |
Reihenfolge: Light → REM → Deep
---
## Best Practices
### 1. Qualität der Input-Daten
- **Tägliche Notizen** (`memory/YYYY-MM-DD.md`) sollten strukturiert und sachlich sein
- **Fakten klar kennzeichnen** keine Meinungen als Fakten speichern
- **Wiederholungen vermeiden** gleiche Info nicht in mehreren täglichen Dateien
- **Quellen angeben** wenn relevant (z.B. "aus Google Contacts", "aus Notarvertrag")
### 2. MEMORY.md pflegen
- MEMORY.md ist das **kuratierte Langzeitgedächtnis** nicht alles gehört dort rein
- Nur **dauerhaft relevante** Fakten speichern (Immobilien, Kontakte, wichtige Entscheidungen)
- **Veraltete Einträge** regelmäßig entfernen
- **Keine Secrets** in MEMORY.md (Passwörter, API-Keys)
### 3. Dreaming aktivieren & konfigurieren
```json
{
"plugins": {
"entries": {
"memory-core": {
"config": {
"dreaming": {
"enabled": true,
"timezone": "Europe/Berlin",
"frequency": "0 3 * * *"
}
}
}
}
}
}
```
- **Standard-Zeit:** 03:00 Uhr (lokale Zeitzone)
- **Empfohlen:** Nachts laufen lassen, wenn keine aktiven Sessions
- **Cron-Format:** Standard crontab-Syntax
### 4. Manuelle Kontrolle
```bash
# Status prüfen
openclaw memory promote
openclaw memory status --deep
# Promotion manuell anwenden
openclaw memory promote --apply
# Preview ohne Schreiben
openclaw memory promote --limit 5
openclaw memory rem-harness
# Einzelnen Kandidaten prüfen
openclaw memory promote-explain "suchbegriff"
openclaw memory promote-explain "suchbegriff" --json
```
### 5. Dream Diary (DREAMS.md)
- Wird **automatisch** vom System befüllt
- **Nicht manuell editieren** die managed Blöcke werden überschrieben
- Dient als **menschlich lesbare Zusammenfassung** der Dreaming-Phasen
- Kann im **Dreams UI Tab** eingesehen werden
### 6. Deep Ranking verstehen
Das System bewertet Kandidaten nach 6 Signalen:
| Signal | Gewicht | Beschreibung |
|---|---|---|
| **Relevance** | 30% | Wie gut passt der Eintrag zu Suchanfragen |
| **Frequency** | 24% | Wie oft wurde der Eintrag signalisiert |
| **Query Diversity** | 15% | Unterschiedliche Kontexte, die den Eintrag surfaceden |
| **Recency** | 15% | Zeitlich abgewertete Frische |
| **Consolidation** | 10% | Wiederholung über mehrere Tage |
| **Conceptual Richness** | 6% | Dichte an Konzept-Tags |
### 7. Historische Daten
```bash
# Grounded Backfill aus alten daily files
memory rem-backfill --path memory/2026-04-11.md
# Preview vor dem Schreiben
memory rem-harness --path memory/2026-04-11.md --grounded
# Rollback falls nötig
memory rem-backfill --rollback
```
### 8. Troubleshooting
- **Dreaming schreibt nicht?** → Prüfe `dreaming.enabled` in der Config
- **Falsche Zeitzone?** → Setze `dreaming.timezone` auf `Europe/Berlin`
- **Zu viele Einträge?** → Erhöhe Schwellenwerte (`minScore`, `minRecallCount`)
- **Zu wenige Einträge?** → Prüfe Qualität der daily memory files
- **DREAMS.md wird überschrieben?** → Nur innerhalb der managed Blöcke (`<!-- openclaw:dreaming:... -->`)
---
## Wichtige Regeln
1. **MEMORY.md ist das Single Source of Truth** für Langzeitgedächtnis
2. **Daily Files sind Rohdaten** Dreaming filtert und bewertet
3. **DREAMS.md ist Output** nicht manuell bearbeiten
4. **Keine Secrets** in irgendeiner Dreaming-Datei
5. **Regelmäßig prüfen** Dreaming ist assistiert, nicht vollautomatisch
---
*Erstellt: 2026-04-14*