Saltar al contenido
Menú

Producto

Soluciones

Integraciones

Desarrolladores

Idioma

Producto

Cómo envejece la memoria

Las páginas de sesión sin uso pierden peso de retención y pueden eliminarse. La compactación de páginas frías, la deduplicación y el dream pass están desactivados por defecto. Con un LLM configurado, un programador separado de automejora puede editar la wiki automáticamente.

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.

Página leída

refuerza

Puntuación de retención

Barrido de olvido

¿Fría?

¿Fría?

Desalojar

Compactar

Una superviviente

historial de git

restore-page

Desalojar

Compactar

Una superviviente

Las líneas continuas muestran los valores por defecto; los contornos discontinuos indican funciones opcionales. restore-page recupera el contenido de un checkpoint git conservado mientras exista el proyecto. No recupera sesiones, observaciones ni traspasos que solo estén en la base de datos.

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 Stale o Wrong baja la página a la prominencia mínima.
  • La puntuación decide qué hace el barrido. Nunca cambia el ranking de búsqueda.
configuración del servidor
# 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
  1. 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_explore cuentan como lecturas. Las lecturas solo pueden subir la puntuación.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. Se ejecuta con memory_lint

    Señalar contradicciones probables

    memory_lint reporta 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.

  7. 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 subes belief_authority_weight por 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.

Opt-in

5 min inactivo

Clusters fríos

Lo más novedoso primero

Reescritura con LLM

Reescritura con LLM

Una página fusionada

Fuentes reemplazadas

La actividad cancela

historial de git

El planificador evalúa una ejecución una vez por hora y necesita cinco minutos de calma para empezar. Procesa como máximo ocho clusters por ejecución.
  • 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.

configuración del servidor
# 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-page y memory_restore_page recuperan una página de un checkpoint git conservado mientras exista el proyecto. Listar checkpoints y restaurar por MCP requiere autoridad de administrador. Ninguno restaura sesiones, observaciones ni handoffs almacenados solo en la base de datos.

  • Revisa los valores por defecto antes de actualizar

    La compactación, la deduplicación y el dream pass siguen siendo opcionales. Las reglas existentes de retención y caducidad siguen vigentes. Haz una copia completa antes de actualizar; los archivos automáticos de migración de la wiki no sustituyen la copia de la base.

  • Fija lo que debe quedarse

    Fijar una página la protege de la eliminación por decaimiento. Las páginas semánticas y procedimentales no decaen. Una fecha de caducidad explícita sigue permitiendo su eliminación, aunque esté fijada.

Limpieza opcional de registros: [decay] ledger_retention_months = N borra logs de hooks rotados tras N meses UTC completos desde el final de su mes. El valor predeterminado es 0 (desactivado). Conserva siempre log.md, el mes actual y el anterior. Revisa con dry run; el historial git antiguo y las copias de seguridad pueden conservar copias.

Más formas de consultar

Cada una es un argumento opcional de una herramienta existente.

  • Respuestas con citas

    memory_query con answer: true devuelve 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, de minimal a max, define el presupuesto de tokens para las respuestas y para memory_explore.

  • Primero las páginas fijadas

    pin_first pone 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_page con include_related recorre enlaces y backlinks hasta tres pasos de distancia.

  • Versiones antiguas si las pides

    include_superseded añade a la búsqueda las versiones reemplazadas, cada una etiquetada.

  • Qué proyecto respondió

    memory_status indica el workspace y el proyecto que resolvió, y cómo llegó a ellos.

Lee el changelog completo

Preguntas y respuestas

¿ai-memory borra los recuerdos antiguos?

Las páginas episódicas de sesión sin fijar envejecen. Una página fría se desaloja por defecto; su registro de eliminación en la base de datos puede borrarse tras 180 días. La compactación o fusión opcionales conservan contenido más corto. La página aún puede recuperarse si está en un checkpoint git conservado y su proyecto existe. Las páginas fijadas, semánticas y procedimentales no decaen, pero una caducidad explícita puede eliminarlas.

¿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?

La compactación, la deduplicación y el dream pass siguen siendo opcionales. Las reglas existentes de retención y caducidad siguen vigentes. Haz una copia completa antes de actualizar; los archivos automáticos de migración de la wiki no sustituyen la copia de la base.

¿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.

Gratuito y de código abierto bajo la licencia MIT. Las funciones de memoria por defecto no necesitan una clave de API de modelo; tu agente de programación puede requerir su propia cuenta.