Agent Memory — Memory Engines para Agentes IA
Visión General
Los agentes IA olvidan todo entre conversaciones. Los motores de memoria resuelven esto:
- Extracción de facts — Aprende de conversaciones, extrae hechos estructurados
- Perfiles de usuario — Contexto estable + actividad reciente, acceso ~50ms
- Búsqueda híbrida — RAG + memoria personal en una sola query
- Razonamiento temporal — Facts que cambian con el tiempo, contradicciones
- Olvido automático — Facts caducados se eliminan solos
- Conectores — Sync con Drive, Gmail, Notion, GitHub, etc.
Herramientas Conocidas
Supermemory
- URL: https://github.com/supermemoryai/supermemory
- Estrellas: ~24k | Lenguaje: TypeScript
- Benchmarks: #1 en LongMemEval, LoCoMo, ConvoMem
- Features: Memory extraction, user profiles, hybrid search, connectors (Drive, Gmail, Notion, GitHub), multi-modal extractors (PDF, OCR, video transcription, AST-aware code chunking)
- SDK: npm + pip
- Infra: Cloudflare Workers + KV + Pages
- Dashboard: https://console.supermemory.ai
// Extract memory from conversation
import { Supermemory } from 'supermemory';
const sm = new Supermemory({ apiKey: 'key' });
const memory = await sm.extract({ messages: [...] });
const profile = await sm.getProfile('user-123');
const results = await sm.search({ query: '...', memory: true, knowledge: true });
Otras herramientas en el ecosistema
- Mem0 — Memory layer for LLM apps (Python/TS)
- Zep — Memory service for AI agents (self-hosted + cloud)
- LangChain Memory — Built-in conversation memory patterns
- Semantic Memory — Memory via vector embeddings
Patrones de Integración
Patrón 1: Memory como capa de contexto
Conversación → Memory Engine → Facts + Profile
↓
Antes de cada turno:
getProfile(user_id) → Contexto en prompt
Patrón 2: Hybrid Search (RAG + Memory)
Query → Hybrid Search → [Docs RAG] + [Personal Memory] → Combined context
Patrón 3: Connector Auto-sync
Conectores → Webhooks → Auto-sync → Memory actualizada en tiempo real
Casos de Uso para Mastermind
- Memoria persistente entre sesiones — Mastermind recuerda preferencias, historial, contexto
- Perfiles de usuario — David Antizar como usuario con facts estables
- Integración con herramientas — Notion, GitHub, Drive como fuentes de contexto
- RAG mejorado — Combinar docs del proyecto + memoria personal
Decisiones
| Criterio |
Supermemory |
Mem0 |
Zep |
| Hosting |
Cloud (Cloudflare) |
Self-hosted/cloud |
Self-hosted/cloud |
| SDK |
npm + pip |
Python + TS |
Python + TS |
| Benchmarks |
#1 en 3 benchmarks |
— |
— |
| Conectores |
Drive, Gmail, Notion, GitHub, OneDrive |
— |
Slack, Notion, Drive |
| Multi-modal |
PDF, OCR, video, code |
Text |
Text |
Comparativa de alternativas
Actualizado 2026-09-01 a raíz de las stars de David. Ya no solo "cloud vs self-hosted": Engram demostró que la memoria de agente también puede ser un binario local cero-dependencias vía MCP.
| Criterio |
Engram |
Supermemory |
Mem0 |
Zep |
| Stars (2026-09-01) |
~6.250 |
~28K |
~30K+ |
~8K+ |
| Modelo |
Self-hosted, binario Go único |
Cloud (Cloudflare) + SDK |
Self-hosted/cloud |
Self-hosted/cloud |
| Almacenamiento |
SQLite + FTS5 (~/.engram/engram.db) |
KV + vectores |
Vector DB externa |
Postgres + vectores |
| Integración agente |
MCP stdio nativo (Claude Code, OpenCode, Codex, Cursor, VS Code…) |
SDK npm/pip + API |
SDK Python/TS |
SDK + API |
| Dependencias |
Ninguna (no Node/Python/Docker) |
Cloud o infra propia |
Python/TS + vector store |
Servidor + Postgres |
| Búsqueda |
Full-text FTS5 (léxica) |
Semántica/híbrida (embeddings) |
Semántica |
Semántica + temporal |
| Windows |
go install o binario (antivirus puede avisar) |
N/A (API) |
pip |
Docker |
Cuándo usar cada cuál:
- Engram → memoria local inmediata para un coding agent con MCP, sin infra ni llaves API; contratos de sesión explícitos (
mem_session_summary como handoff tras compactación). Ideal para equipos/PCs donde la privacidad y el offline importan (patrón muy cercano a cómo Hermes guarda sus memories).
- Supermemory/Mem0 → memoria semántica multiusuario con user profiles, connectors y reasoning temporal; cuando hace falta escalar o compartir memoria entre servicios.
- Zep → servicio self-hosted con API cuando se quiere memoria centralizada con razonamiento temporal sobre Postgres.
Engram — patrón operativo (lo reutilizable)
- El agente decide, no el volcado:
mem_save solo tras trabajo significativo (bugfix, decisión, patrón), formato What/Why/Where/Learned. Nunca tool output crudo.
topic_key estable (p.ej. architecture/auth-model) → los temas evolutivos se actualizan bajo la misma clave en vez de crear memorias compitientes.
- Divulgación progresiva en 3 capas:
mem_search (preview) → mem_timeline (contexto cronológico alrededor) → mem_get_observation (contenido completo) — minimiza tokens de contexto.
- Handoff de sesión: al terminar,
mem_session_summary (Goal/Discoveries/Accomplished/Next Steps/Files); al arrancar, mem_context inyecta la sesión previa automáticamente.
- Registro con un comando:
engram setup <agente> escribe la entrada MCP (mcpServers/servers/objeto mcp según cliente) y el Memory Protocol, idempotente.
Referencias
1---2name: agent-memory3description: Memory and context engines for AI agents — persistent memory across sessions, fact extraction from conversations, user profiles, hybrid RAG+memory search, temporal reasoning, contradiction handling, and automatic forgetting.4---56# Agent Memory — Memory Engines para Agentes IA78## Visión General910Los agentes IA olvidan todo entre conversaciones. Los motores de memoria resuelven esto:1112- **Extracción de facts** — Aprende de conversaciones, extrae hechos estructurados13- **Perfiles de usuario** — Contexto estable + actividad reciente, acceso ~50ms14- **Búsqueda híbrida** — RAG + memoria personal en una sola query15- **Razonamiento temporal** — Facts que cambian con el tiempo, contradicciones16- **Olvido automático** — Facts caducados se eliminan solos17- **Conectores** — Sync con Drive, Gmail, Notion, GitHub, etc.1819## Herramientas Conocidas2021### Supermemory22- **URL:** https://github.com/supermemoryai/supermemory23- **Estrellas:** ~24k | **Lenguaje:** TypeScript24- **Benchmarks:** #1 en LongMemEval, LoCoMo, ConvoMem25- **Features:** Memory extraction, user profiles, hybrid search, connectors (Drive, Gmail, Notion, GitHub), multi-modal extractors (PDF, OCR, video transcription, AST-aware code chunking)26- **SDK:** npm + pip27- **Infra:** Cloudflare Workers + KV + Pages28- **Dashboard:** https://console.supermemory.ai2930```typescript31// Extract memory from conversation32import { Supermemory } from 'supermemory';33const sm = new Supermemory({ apiKey: 'key' });34const memory = await sm.extract({ messages: [...] });35const profile = await sm.getProfile('user-123');36const results = await sm.search({ query: '...', memory: true, knowledge: true });37```3839### Otras herramientas en el ecosistema40- **Mem0** — Memory layer for LLM apps (Python/TS)41- **Zep** — Memory service for AI agents (self-hosted + cloud)42- **LangChain Memory** — Built-in conversation memory patterns43- **Semantic Memory** — Memory via vector embeddings4445## Patrones de Integración4647### Patrón 1: Memory como capa de contexto48```49Conversación → Memory Engine → Facts + Profile50 ↓51 Antes de cada turno:52 getProfile(user_id) → Contexto en prompt53```5455### Patrón 2: Hybrid Search (RAG + Memory)56```57Query → Hybrid Search → [Docs RAG] + [Personal Memory] → Combined context58```5960### Patrón 3: Connector Auto-sync61```62Conectores → Webhooks → Auto-sync → Memory actualizada en tiempo real63```6465## Casos de Uso para Mastermind66671. **Memoria persistente entre sesiones** — Mastermind recuerda preferencias, historial, contexto682. **Perfiles de usuario** — David Antizar como usuario con facts estables693. **Integración con herramientas** — Notion, GitHub, Drive como fuentes de contexto704. **RAG mejorado** — Combinar docs del proyecto + memoria personal7172## Decisiones7374| Criterio | Supermemory | Mem0 | Zep |75|----------|------------|------|-----|76| Hosting | Cloud (Cloudflare) | Self-hosted/cloud | Self-hosted/cloud |77| SDK | npm + pip | Python + TS | Python + TS |78| Benchmarks | #1 en 3 benchmarks | — | — |79| Conectores | Drive, Gmail, Notion, GitHub, OneDrive | — | Slack, Notion, Drive |80| Multi-modal | PDF, OCR, video, code | Text | Text |8182## Comparativa de alternativas8384**Actualizado 2026-09-01** a raíz de las stars de David. Ya no solo "cloud vs self-hosted": Engram demostró que la memoria de agente también puede ser un binario local cero-dependencias vía MCP.8586| Criterio | Engram | Supermemory | Mem0 | Zep |87|----------|--------|-------------|------|-----|88| Stars (2026-09-01) | ~6.250 | ~28K | ~30K+ | ~8K+ |89| Modelo | Self-hosted, binario Go único | Cloud (Cloudflare) + SDK | Self-hosted/cloud | Self-hosted/cloud |90| Almacenamiento | SQLite + FTS5 (~/.engram/engram.db) | KV + vectores | Vector DB externa | Postgres + vectores |91| Integración agente | MCP stdio nativo (Claude Code, OpenCode, Codex, Cursor, VS Code…) | SDK npm/pip + API | SDK Python/TS | SDK + API |92| Dependencias | Ninguna (no Node/Python/Docker) | Cloud o infra propia | Python/TS + vector store | Servidor + Postgres |93| Búsqueda | Full-text FTS5 (léxica) | Semántica/híbrida (embeddings) | Semántica | Semántica + temporal |94| Windows | `go install` o binario (antivirus puede avisar) | N/A (API) | pip | Docker |9596**Cuándo usar cada cuál:**97- **Engram** → memoria local inmediata para un coding agent con MCP, sin infra ni llaves API; contratos de sesión explícitos (`mem_session_summary` como handoff tras compactación). Ideal para equipos/PCs donde la privacidad y el offline importan (patrón muy cercano a cómo Hermes guarda sus memories).98- **Supermemory/Mem0** → memoria semántica multiusuario con user profiles, connectors y reasoning temporal; cuando hace falta escalar o compartir memoria entre servicios.99- **Zep** → servicio self-hosted con API cuando se quiere memoria centralizada con razonamiento temporal sobre Postgres.100101### Engram — patrón operativo (lo reutilizable)102103- **El agente decide, no el volcado:** `mem_save` solo tras trabajo significativo (bugfix, decisión, patrón), formato What/Why/Where/Learned. Nunca tool output crudo.104- **`topic_key` estable** (p.ej. `architecture/auth-model`) → los temas evolutivos se actualizan bajo la misma clave en vez de crear memorias compitientes.105- **Divulgación progresiva en 3 capas:** `mem_search` (preview) → `mem_timeline` (contexto cronológico alrededor) → `mem_get_observation` (contenido completo) — minimiza tokens de contexto.106- **Handoff de sesión:** al terminar, `mem_session_summary` (Goal/Discoveries/Accomplished/Next Steps/Files); al arrancar, `mem_context` inyecta la sesión previa automáticamente.107- **Registro con un comando:** `engram setup <agente>` escribe la entrada MCP (`mcpServers`/`servers`/objeto `mcp` según cliente) y el Memory Protocol, idempotente.108109## Referencias110111- [Engram](https://github.com/Gentleman-Programming/engram) (⭐6.2K, Go, MIT, push 2026-09-01) — docs clave: `docs/ARCHITECTURE.md`, `docs/AGENT-SETUP.md`, `docs/INSTALLATION.md`112- [Supermemory docs](https://supermemory.ai/docs)113- [Supermemory quickstart](https://supermemory.ai/docs/quickstart)114- [Supermemory Discord](https://supermemory.link/discord)115- [LongMemEval benchmark](https://github.com/xiaowu0162/LongMemEval)116- [LoCoMo benchmark](https://github.com/snap-research/locomo)117- [ConvoMem benchmark](https://github.com/Salesforce/ConvoMem)