Prompteo

Unidad 5 · 2 min

Memoria y estado persistente

Qué recuerda el agente entre sesiones, dónde vive ese estado y por qué su memoria está deliberadamente acotada.

Memoria y estado persistente

Un agente que persiste entre sesiones plantea una pregunta que no existe en un asistente sin estado: ¿dónde queda todo eso y quién lo escribe?

La memoria de Hermes Agent son dos archivos Markdown acotados, MEMORY.md y USER.md, guardados en el directorio de memorias dentro del hogar de Hermes. Se inyectan en el prompt de sistema como una instantánea congelada al inicio de la sesión: lo que se escriba después no altera esa copia hasta la sesión siguiente. Quien los mantiene es el propio agente, mediante una herramienta de memoria con la que puede añadir, reemplazar o eliminar entradas.

Esa memoria está limitada a propósito y no se compacta sola. Cuando una escritura supera el límite, la herramienta devuelve un error en lugar de descartar entradas en silencio, y el agente debe hacer sitio él mismo —consolidando o eliminando— antes de reintentar. Así el coste del prompt queda acotado y nunca perdés información sin enterarte.

Las sesiones, en cambio, sí se guardan íntegras: van a una base SQLite dentro del hogar de Hermes, con búsqueda de texto completo, y existe una herramienta para buscar en conversaciones anteriores. Además se escriben trayectorias de sesión en formato JSON en un directorio de registros, con el historial completo, pensadas para depuración y reproducción.

Hay una restricción que conviene grabar: un solo agente por hogar de Hermes. Dos procesos apuntando al mismo directorio mezclan sus escrituras de memoria y acaban componiendo un estado que no escribió ninguno de los dos.