FILTER_TAG:
IMG_REF
ENGRAM: EL SISTEMA DE MEMORIA PERSISTENTE PARA AGENTES DE IA

🧠 ENGRAM: MEMORIA A LARGO PLAZO PARA AGENTES DE CODIFICACIÓN

🎯 Propósito y Visión del Proyecto

Engram surge como una solución técnica a uno de los problemas más persistentes en el flujo de trabajo con agentes de IA: la amnesia de sesión. Aunque los agentes actuales son extremadamente capaces dentro de un hilo de conversación, pierden todo el contexto una vez que la sesión termina.

  1. Persistencia de Aprendizaje: Permite guardar soluciones a bugs, decisiones de diseño y convenciones del proyecto.
  2. Continuidad Cross-Platform: Facilita que el conocimiento generado en un CLI Agent (como Claude Code o Gemini CLI) esté disponible inmediatamente en una extensión de VS Code o Cursor.
  3. Local-First: Prioriza la privacidad y la velocidad manteniendo los datos en el entorno local del desarrollador.

💻 Arquitectura Técnica y Stack 🛡️

El proyecto está construido bajo una filosofía de cero dependencias externas, lo que garantiza una instalación limpia y un rendimiento predecible en sistemas de misión crítica.

  • Lenguaje de Core: Implementado íntegramente en Go, distribuido como un binario único.
  • Capa de Almacenamiento: Utiliza SQLite como motor de base de datos local (ubicado por defecto en ~/.engram/engram.db), aprovechando la extensión FTS5 (Full-Text Search) para búsquedas de alta relevancia.
  • Interfaces de Comunicación:
    • MCP Server: Implementación estándar del Model Context Protocol para interacción directa con LLMs.
    • HTTP API: Servidor local (puerto 7437) para acceso programático.
    • TUI (Terminal User Interface): Interfaz interactiva inspirada en Vim para la gestión manual de “observaciones”.

🚀 Capacidades de Integración (MCP)

La potencia de Engram reside en su capacidad para actuar como un “cerebro externo” mediante herramientas estandarizadas que el agente puede invocar dinámicamente:

  1. mem_save: El agente puede decidir qué información es lo suficientemente valiosa para ser recordada.
  2. mem_search: Antes de comenzar una tarea, el agente busca en el historial de Engram si ya se enfrentó a un problema similar.
  3. Git Sync: Un mecanismo ingenioso de sincronización que utiliza fragmentos comprimidos para compartir memorias a través de repositorios Git sin generar conflictos de fusión (merge conflicts).

🛡️ Análisis de Ingeniería

Desde una perspectiva de ingeniería senior, Engram no es solo una base de datos; es una capa de metadatos semánticos. Al estructurar las memorias bajo los campos “Qué/Por qué/Dónde/Aprendido”, obliga a una captura de información de alta calidad que maximiza la utilidad del RAG (Retrieval-Augmented Generation) local en sesiones futuras.