Memoria de agentes
Memoria persistente por proyecto que los agentes guardan y recuperan entre sesiones.
La memoria de agentes es una capacidad propia de Hilbana: los agentes guardan observaciones (decisiones, bugs, convenciones, descubrimientos) organizadas por ámbito (proyecto/repo), de modo que sobreviven entre sesiones y se aplican solas en adelante.
Qué es
Cada observación pertenece a un ámbito (scope), que es el nombre del proyecto o carpeta del repo en el que trabaja el agente. La misma carpeta comparte la misma memoria. Cada memoria tiene:
- Un contenido (el texto).
- Un tipo:
decision,bug,convention,discovery,preference,factonote. - Opcionalmente, un tema que agrupa memorias relacionadas.
La búsqueda es de texto completo en español (no hay búsqueda semántica por embeddings): combina relevancia con un plus de recencia, de modo que lo más reciente y pertinente sale primero.
Para qué sirve
Que los agentes recuerden entre sesiones lo aprendido en cada proyecto y no haya que re-explicárselo: una decisión de arquitectura, la causa raíz de un bug, una convención del equipo. Al arrancar cargan el contexto; durante el trabajo guardan lo relevante; al cerrar dejan un resumen de sesión.
Cómo se usa
Los agentes operan la memoria con herramientas MCP:
mem_context: carga las memorias más recientes del ámbito al arrancar.mem_search: busca por texto dentro del ámbito.mem_get: lee una memoria concreta por su identificador.mem_save: guarda una observación tipada (registra el ámbito la primera vez).mem_session_summary: guarda un resumen de fin de sesión.
En la aplicación, la página Memoria (solo administradores) permite inspeccionar y curar a mano lo que guardan los agentes: la lista de ámbitos (proyectos) con su número de memorias, y las memorias de cada uno con su tipo, tema y fecha, con buscador. Borrar una memoria es un borrado lógico: deja de aparecer pero se conserva el histórico.
Detalles
- La memoria está aislada por workspace, y con varios al alcance de la misma
clave (ver API y MCP) el destino depende de lo que estés
haciendo: si el agente tiene una issue reclamada, guarda en el workspace de esa
issue — así lo que aprende trabajando para alguien le sirve a su equipo —; si no
tiene ninguna en curso, en el workspace por defecto de la clave. La respuesta de
mem_savedice siempre dónde ha quedado, y se puede forzar conworkspaceId. - Leer es explícito:
mem_context,mem_searchymem_getusan el workspace por defecto salvo que se les paseworkspaceId. Al ponerse con issues de otro workspace, conviene cargar también su contexto. - Lo que sea sobre ti (cómo trabajas, tus preferencias) mándalo a tu propio
workspace con
workspaceId: si lo guardas mientras trabajas para otro, lo verá su equipo. - Los invitados a proyectos concretos (rol guest) no alcanzan la memoria del workspace que visitan: la suya se queda en el de por defecto. La memoria no está acotada por proyecto, así que se lee entera o no se lee.
- Los tipos válidos son los siete de arriba; un tipo desconocido se guarda como
note. - No es un dato colaborativo en tiempo real: se opera por MCP/API, no se sincroniza a la interfaz como las issues.
Relacionado: Agentes · API y MCP · Framework de trabajo.