TL;DR Claude Code puede reorganizar sus propios ficheros de memoria en segundo plano. Se llama auto dream, se enciende y se apaga desde
/memory, y deja el ajuste"autoDreamEnabled"en tusettings.json. Lo que casi nadie sabe es cuándo se ejecuta: no cada sesión, sino cuando se han acumulado suficientes desde la última consolidación, con un umbral que pone el servidor y que no controlas tú. Y no existe ningún comando/dream, por mucho que lo hayas leído por ahí.
Abre tu ~/.claude/settings.json y mira si tienes esto:
{
"autoDreamEnabled": true
}
Si está ahí, Claude Code lleva un tiempo reordenando sus recuerdos por su cuenta mientras tú no miras. Yo lo tenía puesto sin acordarme de haberlo puesto.
Primero, que no te confunda el nombre
Si buscas esto en Google vas a aterrizar en la página de Dreams de la documentación de Managed Agents, y no es lo mismo. Eso es una feature de la API en research preview: llamas a un endpoint, le pasas un memory store y transcripciones de sesiones, y te devuelve un store nuevo. Se factura a precio de tokens de API y el store de entrada no se toca nunca.
Lo que tienes en Claude Code es otra cosa: un interruptor local, gratis, que trabaja sobre ~/.claude/projects/<proyecto>/memory/ en tu propia máquina. Comparten idea y nombre, pero ni el sitio ni la factura.
Por qué existe
La memoria automática escribe notas sola: comandos de build, decisiones, correcciones tuyas, manías que descubre. El problema es que escribe de forma incremental y nunca borra, así que con las sesiones se acumulan duplicados, contradicciones y fechas relativas que ya no significan nada.
Y hay un techo real: de MEMORY.md, el índice, solo se cargan las primeras 200 líneas o 25 KB, lo que llegue antes. Todo lo que pase de ahí simplemente no entra en la sesión. Auto dream es el que se encarga de que lo que quepa sea lo que importa.
Cuándo se ejecuta de verdad
Aquí está lo que no cuenta la interfaz. No consolida al terminar cada sesión. Antes de arrancar cuenta cuántas sesiones han tocado el proyecto desde la última consolidación, descuenta la que tienes abierta ahora mismo, y si no llega al mínimo se va sin hacer nada:
[autoDream] skip — 2 sessions since last consolidation, need 5
Ese mínimo no está en tus settings: lo fija el servidor. El propio ajuste lo dice, describe autoDreamEnabled como algo que "anula el valor por defecto del lado del servidor". Tú decides si corre, no cada cuánto.
Por eso, si acabas de encenderlo y no ves nada, no está roto. Le faltan sesiones.
Qué hace cuando por fin corre
Arranca como una tarea de fondo (la verás como dream con estado running) y sigue cuatro fases:
- Orientarse. Lee
MEMORY.mdy los ficheros de temas para saber qué hay antes de tocar nada. - Recoger señales. Busca en las transcripciones recientes patrones de alto valor: correcciones tuyas, peticiones explícitas de guardar, temas que se repiten.
- Consolidar. Integra lo nuevo, fusiona duplicados, elimina lo contradicho y convierte fechas relativas en absolutas ("ayer" pasa a ser una fecha).
- Podar e indexar. Deja
MEMORY.mdpor debajo del límite de carga y manda el detalle a ficheros de tema.
Al terminar devuelve un resumen de lo que consolidó, actualizó o podó. Y si no había nada que hacer, lo dice en vez de inventarse trabajo.
Encenderlo, apagarlo y pararlo
/memory
Ahí verás Auto-dream: on o off, y al lado cuándo corrió por última vez. Un detalle que confunde: si tienes la memoria automática apagada, auto dream aparece apagado y no lo puedes encender. Depende de ella, y el panel te lo dice con un Auto-dream: off while auto-memory is off.
Si prefieres el fichero, es "autoDreamEnabled": true (o false) en ~/.claude/settings.json.
Para pausar la memoria entera en una sesión, sin tocar ajustes, existe /pause-memory. El mismo comando la pausa y la reanuda, y mientras está pausada Claude no puede ni leer ni escribir memoria.
Si la cortas a media faena
Dos cosas que están bien pensadas y que no se ven por ningún sitio:
- Coge un lock antes de empezar, así que dos sesiones tuyas no van a consolidar a la vez sobre los mismos ficheros. Si otra lo tiene cogido, la segunda se retira.
- Si la matas mientras trabaja, revierte los ficheros al estado en que estaban antes de empezar. No te deja una memoria a medio reorganizar.
No busques el comando
No existe /dream. Lo comprobé enumerando los slash commands que declara el binario de la v2.1.220: son 99, e incluyen /advisor, /chrome o /memory, pero ese no está. Si lo necesitas ahora mismo, pídelo en lenguaje natural ("consolida mis ficheros de memoria") y Claude lo hace en la sesión.
Referencia
| Pieza | Qué es |
|---|---|
autoDreamEnabled |
Ajuste de usuario. Anula el valor por defecto del servidor |
/memory |
Donde se enciende, se apaga y se ve cuándo corrió por última vez |
/pause-memory |
Pausa y reanuda toda la memoria automática en la sesión |
| Umbral de sesiones | Lo pone el servidor. Descuenta la sesión actual del recuento |
| Dependencia | Con memoria automática apagada, auto dream no corre |
| Límite del índice | 200 líneas o 25 KB de MEMORY.md, lo que llegue antes |
Si lo que quieres es lo contrario, decidir tú qué se recuerda en vez de dejar que lo decida Claude, eso vive en el CLAUDE.md, que es el otro sistema de memoria y funciona al revés.
Documentación oficial: How Claude remembers your project · Dreams (API de Managed Agents, otra cosa)
Requisitos: verificado en Claude Code v2.1.220. El umbral concreto de sesiones depende de la configuración del servidor, así que el número que veas en tu log puede no ser el mío.