Producto
Cómo envejece la memoria
Un proyecto acumula páginas de sesión durante meses, y la mayoría deja de ser útil. ai-memory puntúa cada una, conserva las que sigues leyendo y puede reducir o fusionar el resto. La ruta por defecto no llama a ningún LLM, y toda función que reescribe una página viene desactivada hasta que la actives.
Qué envejece y qué se queda
Solo uno de los cuatro niveles de memoria decae. Las páginas fijadas están exentas en todos.
De trabajo
Notas de la sesión en curso. Terminan con ella.
Episódica
Una página por sesión. Este es el nivel que envejece: una página que nadie lee se enfría en unos meses.
Semántica
Decisiones, conceptos y gotchas. No decaen.
Procedimental
Reglas, procedimientos y runbooks. No decaen.
La ruta sin LLM
Un barrido programado puntúa cada página episódica sin fijar. La puntuación baja con la edad y sube cada vez que alguien lee la página.

La puntuación de retención
- Con los valores por defecto, una página pierde la mitad de su puntuación cada 35 días más o menos. Por debajo de 0,20 cuenta como fría.
- Cada lectura suma a la puntuación, y el efecto de las lecturas antiguas también se desvanece.
- Un feedback
StaleoWrongbaja la página a la prominencia mínima. - La puntuación decide qué hace el barrido. Nunca cambia el ranking de búsqueda.
# Las tres son opcionales. Sin ellas, las páginas frías se desalojan con una sola curva compartida.
[decay]
compact_cold_episodic = true
dedup_cold_clusters = true
[decay.half_life_days]
working = 7
episodic = 365
Siempre activo
Leer mantiene viva una página
Los resultados de búsqueda, abrir una página, llegar a ella por un enlace y
memory_explorecuentan como lecturas. Las lecturas solo pueden subir la puntuación.Desactivado por defecto
Una vida media por nivel
[decay.half_life_days]define lo rápido que se desvanece cada nivel: por ejemplo, una vida corta para las notas de borrador y una larga para el historial de sesiones. Si lo omites, las puntuaciones quedan exactamente como estaban.Desactivado por defecto
Compactar una página fría
Con
compact_cold_episodic, una página fría conserva su abstract, el resumen del primer párrafo y los tokens que vale la pena guardar (rutas de archivo, URL, fragmentos de código, códigos de error e identificadores) y descarta la prosa. Sin esa opción, la página se desaloja.Desactivado por defecto
Fusionar casi duplicados
Con
dedup_cold_clusters, las páginas frías que dicen casi lo mismo se agrupan en clusters según sus embeddings. La de mayor puntuación sobrevive y absorbe los tokens conservados de las demás. Las demás quedan reemplazadas y apuntan a ella.Desactivado por defecto
Saltarse las sesiones vacías
Un filtro de entropía deja fuera de la pasada de experiencia las páginas de sesión casi vacías o muy repetitivas, antes de construir ningún prompt para el LLM.
Se ejecuta con memory_lint
Señalar contradicciones probables
memory_lintreporta pares de páginas de conocimiento que tratan el mismo tema sin ser duplicados, e indica cuál es la más reciente. El informe es orientativo y no edita ninguna página.Siempre activo
Una puntuación de confianza por página
Cada página recibe una confianza entre 0 y 0,95 según cuántas sesiones distintas la respaldan, lo reciente que es la última y cuántas páginas la contradicen. La ves en la salida de
explain. Solo afecta al ranking si subesbelief_authority_weightpor encima de 0.
La pasada de sueño
El dedup conserva los hechos de un cluster. La pasada de sueño le entrega ese mismo cluster a tu LLM, que lo reescribe como una sola página coherente. Se ejecuta mientras no estás y se detiene cuando vuelves.

Necesita tres cosas
[dream] enabled = true, un proveedor de LLM y un embedder. Sin proveedor, el dedup sin LLM sigue funcionando como antes.Espera a que te vayas
Una ejecución empieza tras 300 segundos sin actividad de clientes. Cuando vuelves, se cancela en el siguiente cluster.
El cluster más novedoso va primero
Primero se procesan los clusters más alejados de lo que la wiki ya dice. El orden y el disparador por inactividad siguen al Dreamer de Honcho.
Las fuentes quedan reemplazadas
Se reescribe la página con mayor puntuación. Cada página fusionada pasa a ser un stub que apunta a ella, y el texto original queda en la cadena de versiones y en git.
Cada fusión nombra sus fuentes
Las filas de evidencia registran qué páginas alimentaron cada fusión, así que un detalle inventado se puede rastrear. La salida es JSON validado contra un esquema, y cada ejecución deja un informe.
# También necesita un proveedor de LLM y un embedder.
[dream]
enabled = true
idle_window_secs = 300
max_clusters_per_run = 8
Qué se puede deshacer y qué no
La compactación, el dedup y la pasada de sueño reescriben a través de la wiki, así que cada cambio es una versión nueva y un commit de git.
Las reescrituras son reversibles
ai-memory restore-pagerecupera la página completa desde el historial de git de la wiki.Actualizar no cambia nada
La compactación, el dedup y la pasada de sueño vienen desactivados por defecto. Una actualización no cambia ninguna puntuación ni desaloja nada, y el servidor archiva el directorio de datos antes de migrar.
Fija lo que debe quedarse
El barrido nunca toca una página fijada. Las páginas semánticas y procedimentales no decaen.
Más formas de consultar
Cada una es un argumento opcional de una herramienta existente.
Respuestas con citas
memory_queryconanswer: truedevuelve una respuesta corta y las rutas de las páginas de las que salió. Necesita un proveedor de LLM y sigue el endpoint dialéctico de Honcho. Su calidad todavía no se ha evaluado, así que abre las páginas citadas.Niveles de razonamiento
Un argumento
reasoning, deminimalamax, define el presupuesto de tokens para las respuestas y paramemory_explore.Primero las páginas fijadas
pin_firstpone hasta diez páginas fijadas por delante de los resultados de búsqueda, y el resumen de sesión ahora las lista.Páginas relacionadas
memory_read_pageconinclude_relatedrecorre enlaces y backlinks hasta tres pasos de distancia.Versiones antiguas si las pides
include_supersededañade a la búsqueda las versiones reemplazadas, cada una etiquetada.Qué proyecto respondió
memory_statusindica el workspace y el proyecto que resolvió, y cómo llegó a ellos.
Preguntas y respuestas
¿ai-memory borra los recuerdos antiguos?
Solo envejecen las páginas episódicas de sesión. Por defecto, una página fría se desaloja y se elimina definitivamente a los 180 días. Puedes hacer que las páginas frías se compacten o se fusionen en su lugar, y ambas cosas se pueden restaurar. Las páginas fijadas, semánticas y procedimentales se conservan.
¿El envejecimiento de la memoria necesita un LLM?
No. La puntuación, las vidas medias por nivel, la compactación, el dedup, los avisos de contradicción y la puntuación de confianza no usan ningún LLM. El dedup y los avisos de contradicción leen embeddings, que produce el embedder local por defecto. Solo la pasada de sueño llama a un LLM, y viene desactivada por defecto.
¿Qué es la pasada de sueño?
Un trabajo en segundo plano, opt-in. Tras cinco minutos de inactividad toma clusters de páginas frías casi duplicadas y hace que tu LLM reescriba cada cluster en una sola página. Las fuentes quedan reemplazadas, y la ejecución se detiene cuando vuelves.
¿Una actualización cambia mi memoria existente?
No. La compactación, el dedup y la pasada de sueño vienen desactivados por defecto, así que una actualización no cambia ninguna puntuación ni desaloja nada. El servidor archiva el directorio de datos antes de migrar.
¿Estas funciones mejoran las puntuaciones de recuperación?
Nadie lo ha medido todavía. El proyecto las considera publicadas, opt-in y sin demostrar hasta que su harness de evaluación muestre una mejora.
Dale memoria a tus agentes hoy.
Gratis y de código abierto bajo la licencia MIT. No necesitas cuenta ni clave de API.