Dreaming
Dreaming é o sistema de consolidação de memória em segundo plano emmemory-core.
Ele ajuda o OpenClaw a mover sinais fortes de curto prazo para a memória durável, ao mesmo tempo em que
mantém o processo explicável e revisável.
Dreaming é opt-in e vem desativado por padrão.
O que o Dreaming grava
O Dreaming mantém dois tipos de saída:- Estado de máquina em
memory/.dreams/(armazenamento de recordação, sinais de fase, checkpoints de ingestão, locks). - Saída legível por humanos em
DREAMS.md(oudreams.md, se já existir) e arquivos opcionais de relatório de fase emmemory/dreaming/<phase>/YYYY-MM-DD.md.
MEMORY.md.
Modelo de fases
O Dreaming usa três fases cooperativas:| Fase | Objetivo | Gravação durável |
|---|---|---|
| Leve | Organizar e preparar material recente de curto prazo | Não |
| Profunda | Pontuar e promover candidatos duráveis | Sim (MEMORY.md) |
| REM | Refletir sobre temas e ideias recorrentes | Não |
Fase leve
A fase leve ingere sinais recentes de memória diária e rastros de recordação, remove duplicatas e prepara linhas candidatas.- Lê do estado de recordação de curto prazo, arquivos recentes de memória diária e transcrições de sessão redigidas quando disponíveis.
- Grava um bloco gerenciado
## Light Sleepquando o armazenamento inclui saída inline. - Registra sinais de reforço para classificação profunda posterior.
- Nunca grava em
MEMORY.md.
Fase profunda
A fase profunda decide o que se torna memória de longo prazo.- Classifica candidatos usando pontuação ponderada e limites mínimos.
- Exige que
minScore,minRecallCounteminUniqueQueriessejam atendidos. - Reidrata trechos a partir de arquivos diários ativos antes de gravar, para que trechos obsoletos/excluídos sejam ignorados.
- Anexa entradas promovidas a
MEMORY.md. - Grava um resumo
## Deep SleepemDREAMS.mde opcionalmente gravamemory/dreaming/deep/YYYY-MM-DD.md.
Fase REM
A fase REM extrai padrões e sinais reflexivos.- Cria resumos de temas e reflexões a partir de rastros recentes de curto prazo.
- Grava um bloco gerenciado
## REM Sleepquando o armazenamento inclui saída inline. - Registra sinais de reforço REM usados pela classificação profunda.
- Nunca grava em
MEMORY.md.
Ingestão de transcrições de sessão
O Dreaming pode ingerir transcrições de sessão redigidas no corpus de dreaming. Quando as transcrições estão disponíveis, elas são alimentadas na fase leve junto com sinais de memória diária e rastros de recordação. Conteúdo pessoal e sensível é redigido antes da ingestão.Diário de Sonhos
O Dreaming também mantém um Diário de Sonhos narrativo emDREAMS.md.
Depois que cada fase tem material suficiente, o memory-core executa uma rodada
em segundo plano de melhor esforço com um subagente (usando o modelo de runtime padrão) e anexa uma entrada curta ao diário.
Esse diário é para leitura humana na interface Dreams, não uma fonte de promoção.
Artefatos de diário/relatório gerados pelo Dreaming são excluídos da
promoção de curto prazo. Apenas trechos de memória fundamentados são elegíveis para promoção em
MEMORY.md.
Também há uma trilha de preenchimento retroativo histórico fundamentado para trabalho de revisão e recuperação:
memory rem-harness --path ... --groundedpré-visualiza a saída fundamentada do diário a partir de notas históricasYYYY-MM-DD.md.memory rem-backfill --path ...grava entradas de diário fundamentadas e reversíveis emDREAMS.md.memory rem-backfill --path ... --stage-short-termprepara candidatos duráveis fundamentados no mesmo armazenamento de evidências de curto prazo que a fase profunda normal já usa.memory rem-backfill --rollbacke--rollback-short-termremovem esses artefatos preparados do preenchimento retroativo sem tocar nas entradas comuns do diário nem na recordação ativa normal de curto prazo.
Sinais de classificação profunda
A classificação profunda usa seis sinais-base ponderados mais reforço de fase:| Sinal | Peso | Descrição |
|---|---|---|
| Frequência | 0.24 | Quantos sinais de curto prazo a entrada acumulou |
| Relevância | 0.30 | Qualidade média de recuperação da entrada |
| Diversidade de consulta | 0.15 | Contextos distintos de consulta/dia em que ela apareceu |
| Recência | 0.15 | Pontuação de atualização com decaimento temporal |
| Consolidação | 0.10 | Força de recorrência em múltiplos dias |
| Riqueza conceitual | 0.06 | Densidade de tags conceituais do trecho/caminho |
memory/.dreams/phase-signals.json.
Agendamento
Quando ativado, omemory-core gerencia automaticamente uma tarefa Cron para uma varredura completa de dreaming. Cada varredura executa as fases em ordem: leve -> REM -> profunda.
Comportamento padrão da cadência:
| Configuração | Padrão |
|---|---|
dreaming.frequency | 0 3 * * * |
Início rápido
Ative o Dreaming:Comando de barra
Fluxo de trabalho da CLI
Use a promoção pela CLI para pré-visualizar ou aplicar manualmente:memory promote manual usa os limites da fase profunda por padrão, a menos que sejam substituídos
por flags da CLI.
Explique por que um candidato específico seria ou não promovido:
Valores padrão principais
Todas as configurações ficam emplugins.entries.memory-core.config.dreaming.
| Chave | Padrão |
|---|---|
enabled | false |
frequency | 0 3 * * * |
Interface Dreams
Quando ativada, a aba Dreams do Gateway mostra:- estado atual de ativação do dreaming
- status em nível de fase e presença de varredura gerenciada
- contagens de curto prazo, fundamentadas, de sinais e promovidas hoje
- horário da próxima execução agendada
- uma trilha fundamentada distinta na cena para entradas preparadas de replay histórico
- um leitor expansível do Diário de Sonhos com base em
doctor.memory.dreamDiary