Ir al contenido principal
PromptQuorumDiseñado para humanos. Estructurado para la IA.
Inicio/LLM locales avanzados
RAG & Document Chat

LongMemory Review: Un motor de memoria temporal para agentes de IA

·11 min de lecturaPor Hans Kuepper · Fundador de PromptQuorum · Motor de descubrimiento de IA de pesos abiertos y código abierto

LongMemory es un motor de memoria gratuito, de código abierto y autoalojado que da a los agentes de IA y aplicaciones LLM memoria duradera, temporal y gobernada entre sesiones, en lugar de funcionar como una base de datos vectorial simple o un pipeline RAG. Desarrollado por CaviraOSS (github.com/CaviraOSS/LongMemory) y con licencia Apache 2.0, almacena lo que era cierto en momentos específicos, rastrea cómo cambian los hechos, y expone esa memoria a herramientas como Claude Desktop, GitHub Copilot, Codex y n8n a través de una librería TypeScript, un cliente HTTP de Python, una CLI, una API REST y MCP.

Conclusiones clave

  • LongMemory (github.com/CaviraOSS/LongMemory) es un motor de memoria gratuito, de código abierto y autoalojado para agentes de IA y aplicaciones LLM
  • Desarrollado por CaviraOSS; publicado antes bajo el nombre OpenMemory, antes de pasar a llamarse LongMemory — esta review los trata como el mismo proyecto, no como dos herramientas competidoras
  • Con licencia Apache 2.0 para el motor principal; un paquete de nodo comunitario de n8n independiente es MIT, según su propio listado de paquete
  • Almacena memoria en un sustrato basado en grafos que el proyecto llama "Hydrograph", con nodos inmutables, aristas tipadas y seguimiento temporal, respaldado por SQLite
  • Se posiciona frente al RAG simple y la búsqueda vectorial: según su propia documentación, "no es solo RAG, ni solo una base de datos vectorial"
  • Se integra con Claude Desktop, GitHub Copilot, Codex, OpenCode, Gemini CLI, Cline y n8n, además de un servidor Model Context Protocol (MCP)
  • Más de 4.500 estrellas en GitHub al momento de esta review

📍 En una frase

LongMemory es un motor de memoria gratuito, de código abierto (Apache 2.0) y autoalojado creado por CaviraOSS — antes publicado como OpenMemory — que da a agentes de IA y aplicaciones LLM memoria duradera, temporal y gobernada entre sesiones, con más de 4.500 estrellas en GitHub.

💬 En términos simples

LongMemory es una pieza de infraestructura que tú mismo ejecutas y que recuerda cosas para un agente de IA entre conversaciones — incluyendo cuándo era cierto un hecho y cuándo cambió — en lugar de que el agente olvide todo en cuanto termina un chat. No ejecuta su propio modelo de IA; almacena y recupera memoria, y devuelve el contexto al proveedor de LLM o embeddings que hayas configurado.

📌Nota: Esta review se basa en el propio repositorio de GitHub, README y documentación de LongMemory. No afirma que PromptQuorum haya realizado benchmarks prácticos de su precisión de recuperación o su rendimiento frente a otras herramientas de memoria — verifica las afirmaciones concretas de rendimiento directamente en la documentación del proyecto antes de basar en ellas una decisión de producción.

LongMemory (github.com/CaviraOSS/LongMemory) es un motor de memoria gratuito, de código abierto y autoalojado que da a los agentes de IA y aplicaciones LLM un recuerdo duradero y con conciencia temporal entre sesiones, en lugar de la amnesia habitual entre chats. Está desarrollado por CaviraOSS y antes se publicaba bajo el nombre OpenMemory, antes de pasar a llamarse LongMemory — mismo proyecto, misma trayectoria de repositorio, nuevo nombre. Esta review cubre qué hace realmente, en qué se diferencia su modelo de memoria de una base de datos vectorial simple o un pipeline RAG, cómo instalarlo, y a quién le conviene.

¿Qué es LongMemory?

LongMemory es un motor de memoria autoalojado que da a agentes de IA y aplicaciones LLM un recuerdo duradero y con conciencia temporal entre sesiones, en lugar de ser un modelo, un motor de inferencia o una base de datos vectorial simple. Según su propia documentación, busca resolver un problema concreto: la mayoría de los sistemas LLM pierden todo el contexto en cuanto termina una sesión, e incluso los pipelines RAG construidos sobre una base de datos vectorial normalmente no tienen ningún concepto de cuándo era cierto un hecho o si desde entonces ha sido contradicho.

  • Tipo de producto: un backend/librería de memoria autoalojado — no una app de chat, no un motor de inferencia, no un modelo
  • Desarrollador: CaviraOSS, la organización de GitHub que publica y mantiene el proyecto
  • Nombre: este proyecto se llama actualmente LongMemory; antes se publicaba bajo el nombre OpenMemory por la misma organización, y sus paquetes (longmemory, longmemory-sdk) reflejan la versión renombrada — no lo confundas con proyectos "OpenMemory" no relacionados y con nombre similar de otras organizaciones
  • Licencia: Apache 2.0 para el motor principal, confirmada a través del repositorio de GitHub; un paquete de integración de nodo comunitario de n8n independiente tiene licencia MIT, según las convenciones de paquetes de npm/n8n
  • Escala del repositorio: más de 4.500 estrellas en GitHub al momento de esta review, con aproximadamente 390 commits en su rama principal

Historia del proyecto: de OpenMemory a LongMemory

LongMemory lanzó sus primeras versiones bajo el nombre OpenMemory, y después fue renombrado a LongMemory por el mismo equipo de CaviraOSS, manteniendo la misma trayectoria de repositorio. Los hitos a continuación reflejan el changelog y las notas de versión del proyecto; las fechas son las publicadas por el proyecto y deberían reverificarse en GitHub si necesitas un calendario de lanzamiento exacto para una decisión de cumplimiento o adquisición.

  1. 1
    v1.0.0 / soporte MCP — primera implementación del Model Context Protocol
    Why it matters: Añadió consultas filtradas por etiquetas y metadatos sobre el sustrato de grafo del proyecto y expuso la memoria a través de MCP, la vía de integración que después conectó LongMemory con herramientas como Claude Desktop.
  2. 2
    v1.1.0 — primeros trabajos en la capa de almacenamiento
    Why it matters: Según el registro de cambios del proyecto, mejoras en la capa de almacenamiento para despliegues autoalojados. El almacenamiento de LongMemory está respaldado por SQLite (el sustrato "Hydrograph") — esto no fue, ni es, una base de datos vectorial intercambiable; LongMemory no admite cambiar a backends vectoriales alternativos como PostgreSQL.
  3. 3
    v1.1.1 — motor de compresión de memoria y extensión de VS Code
    Why it matters: Introdujo un sistema de compresión de memoria con múltiples algoritmos, además de una extensión de VS Code y autenticación de API/limitación de tasa para despliegues autoalojados.
  4. 4
    v1.2.0 — interfaz web y nivel de rendimiento híbrido
    Why it matters: Añadió un panel web para inspeccionar y gestionar la memoria almacenada, además de un modo de rendimiento "HYBRID" que equilibra precisión y velocidad.
  5. 5
    v1.2.1–v1.2.3 — revisión de SDK y filtrado temporal
    Why it matters: Reescribió los SDK de Python y JavaScript para uso independiente, añadió filtrado basado en tiempo ("temporal") en la recuperación de memoria, y corrigió problemas de rutas del servidor MCP que afectaban a la integración con Claude Desktop.
  6. 6
    Beta v1.3.0 — clase Memory() sin configuración
    Why it matters: Simplificó la superficie de la API con una clase `Memory()` sin configuración y una suite de benchmarks reescrita, según las propias notas de versión del proyecto — el hito más reciente que esta review pudo confirmar a partir del changelog público.

¿Qué hace LongMemory realmente?

LongMemory almacena lo que tu agente de IA o aplicación ha aprendido, rastrea cuándo era cierto cada hecho, y devuelve solo el contexto relevante y aún válido cuando se le solicita — mientras permanece sin estado en el propio lado del modelo.

  • Razonamiento temporal — rastrea la verdad en un momento dado, el orden de eventos y la sustitución, de modo que un hecho que era cierto el mes pasado pero que desde entonces ha cambiado no sobrescribe ni corrompe silenciosamente las respuestas actuales
  • Múltiples modos de recuperación — según su documentación: la recuperación "strict" aplica comprobaciones temporales, de contradicción y de fundamentación para hechos actuales; la recuperación "historical" recupera lo que era cierto durante un período pasado específico; la recuperación "associative" sigue señales semánticas, léxicas y de grafo; la recuperación "world-grounded" exige evidencia externa antes de devolver un recuerdo como hecho
  • Sustrato Hydrograph — un modelo de almacenamiento basado en grafos con nodos inmutables, aristas tipadas y seguimiento temporal, persistido en SQLite, de modo que la memoria recuperada se describe como auditable e inalterada por recuperaciones posteriores
  • Activos de memoria gobernados — el proyecto describe tipos de memoria estructurados que incluyen memoria de proyecto, memoria de chat, "skills", un "LLM-Wiki" y un "CodeGraph", cada uno con políticas de control de acceso, según su propia documentación
  • No es un motor de inferencia — la propia documentación de LongMemory es explícita en que "tu modelo permanece sin estado" y que LongMemory en sí no ejecuta inferencia; llama a un proveedor de embeddings que configures (OpenAI, Google Gemini, AWS Bedrock, Ollama o un modelo compatible con HTTP local) y devuelve el contexto al LLM que tu aplicación ya usa
  • Soporte multilingüe — incluye detección de escritura y embeddings entre idiomas, según su documentación, en lugar de estar limitado al inglés
  • Portado de sesiones — puede importar historiales de conversación previos de herramientas como Claude Code, Codex, GitHub Copilot y Gemini CLI, de modo que las conversaciones existentes no se pierdan al adoptar LongMemory
  • Servidor Model Context Protocol (MCP) — expone las operaciones de memoria como herramientas MCP, la vía de integración que usan Claude Desktop y otros clientes compatibles con MCP

Ejemplos de uso: tres formas de usar LongMemory

Estos son flujos de trabajo concretos construidos a partir de las funciones documentadas de LongMemory, no casos de uso hipotéticos.

Dar a un agente de codificación memoria de proyecto persistente

Ejecuta LongMemory localmente (vía Docker o la CLI) y conéctalo a un agente de codificación como Claude Code, GitHub Copilot o Codex a través de su servidor MCP. El agente puede entonces almacenar decisiones, convenciones y contexto previo como "memoria de proyecto", y recuperarlos en sesiones posteriores en lugar de que tengas que volver a explicar las convenciones de tu base de código cada vez que abres un chat nuevo.

Añadir memoria temporal a un agente de soporte al cliente o base de conocimiento

Usa la librería TypeScript (npm install longmemory) o el cliente HTTP de Python (pip install longmemory-sdk) para almacenar hechos que tu agente de soporte aprende sobre un cliente o producto con el tiempo. Cuando un hecho cambia — se actualiza un plan, se corrige un bug —, la "recuperación histórica" todavía puede responder qué se le dijo a ese cliente el mes pasado, mientras que la "recuperación estricta" devuelve solo la respuesta actualmente válida.

Ejecutar LongMemory como servidor independiente vía Docker

Inicia el motor de memoria con docker run -p 7331:7331 ghcr.io/caviraoss/longmemory:latest, y luego apunta cualquiera de las librerías cliente de LongMemory, su API REST, o el servidor MCP a esa instancia. Esto mantiene los datos de memoria completamente autoalojados, en lugar de enviarlos a un proveedor externo de memoria como servicio.

Plataforma, precios y licencia

Plataforma

Lo que indica LongMemory:
Autoalojado; desplegable vía Docker, o ejecutable directamente como librería Node.js/TypeScript, cliente HTTP de Python, o CLI, según su propia documentación.

Costo

Lo que indica LongMemory:
Gratuito y de código abierto. Autoalojarlo significa que tu único costo es tu propia infraestructura más lo que cobre el proveedor de embeddings/LLM que elijas.

Licencia

Lo que indica LongMemory:
Apache 2.0 para el motor principal; un paquete de nodo comunitario de n8n independiente es MIT, según su propio listado de paquete.

Localidad de datos

Lo que indica LongMemory:
Posicionado como local-first y autoalojado, con persistencia respaldada por SQLite a través de su sustrato "Hydrograph" — no es una base de datos vectorial intercambiable, no se admiten backends vectoriales alternativos.

Verifica el texto de licencia actual directamente en el repositorio de GitHub antes de basar en esta tabla una decisión legal o de cumplimiento, ya que los archivos de licencia pueden cambiar entre versiones.

LongMemory vs. una base de datos vectorial simple

LongMemory y una base de datos vectorial simple como Qdrant, Chroma o Weaviate resuelven un problema relacionado pero distinto: una base de datos vectorial almacena y busca embeddings, mientras que LongMemory añade razonamiento temporal, gobernanza y tipos de memoria específicos de agente por encima de la recuperación.

Aspecto
LongMemory
Base de datos vectorial simple
Función principalMemoria gobernada y temporal para agentesAlmacena y busca embeddings vectoriales
Conciencia temporalRastrea cuándo los hechos eran ciertos y fueron sustituidosNo integrada; debe añadirla tu app
Tipos de memoriaProyecto, chat, skills, wiki, grafo de códigoVectores/colecciones genéricos
¿Ejecuta su propio modelo?No — llama a tu proveedor configuradoNo — igual, embeddings calculados fuera
Integraciones de agenteMCP, Claude Desktop, Copilot, Codex, n8nNormalmente ninguna integrada

Si solo necesitas almacenar y buscar semánticamente embeddings, una base de datos vectorial simple es más sencilla de operar. Si necesitas que un agente recuerde qué era cierto y cuándo, y distinga hechos actuales de hechos sustituidos, el modelo temporal de LongMemory está diseñado específicamente para eso, de una forma en que una base de datos vectorial genérica no lo está por defecto.

Comparar en el directorio

¿Quién debería usar LongMemory?

LongMemory conviene a desarrolladores que construyen agentes o aplicaciones LLM que necesitan que la memoria persista y se mantenga precisa entre sesiones, no solo un índice de recuperación puntual.

Usa LongMemory si

  • estás construyendo un agente de IA o aplicación que necesita recordar hechos entre sesiones, no solo dentro de una sola conversación
  • necesitas distinguir "qué es cierto ahora" de "qué solía ser cierto", en lugar de tratar toda la memoria almacenada como igualmente actual
  • quieres autoalojar la capa de memoria de tu agente en lugar de enviarla a una plataforma externa de memoria como servicio
  • ya usas herramientas compatibles con MCP como Claude Desktop, GitHub Copilot o Codex y quieres una capa de memoria que se conecte directamente a ellas
  • quieres traer tu propio proveedor de embeddings/LLM (OpenAI, Gemini, Bedrock, Ollama o un modelo HTTP local) en lugar de quedar atado a uno solo

Busca otra opción si

  • solo necesitas almacenar y buscar semánticamente un conjunto estático de documentos sin necesidad de razonamiento temporal — un framework RAG simple o una base de datos vectorial puede ser más sencillo de operar
  • quieres un servicio de memoria completamente gestionado y alojado en lugar de algo que operas tú mismo
  • necesitas un motor de inferencia o un servidor de modelos — LongMemory no ejecuta modelos; almacena y recupera memoria alrededor del modelo que ya usas
  • no te sientes cómodo operando un servicio autoalojado de Node.js/Python/Docker y su backend de almacenamiento

Para qué no es bueno LongMemory

LongMemory no es una buena opción si quieres un servicio de memoria completamente gestionado, un motor de inferencia, o una búsqueda vectorial simple lista para usar sin complejidad temporal.

  • No es un motor de inferencia ni un servidor de modelos — no genera texto por sí mismo; almacena y recupera memoria alrededor de un modelo o proveedor de embeddings que tú configuras por separado
  • No es un servicio en la nube gestionado — está autoalojado, así que eres responsable de ejecutar y mantener el entorno de ejecución Node.js/Python/Docker y su backend de almacenamiento
  • No es la opción más simple si solo necesitas recuperación básica de documentos sin necesidad de rastrear cómo cambian los hechos con el tiempo — un framework RAG más simple puede suponer menos sobrecarga operativa
  • No ha sido evaluado de forma independiente por PromptQuorum en precisión de recuperación o latencia — esta review se basa en la propia documentación de LongMemory, no en pruebas prácticas
  • Renombrado desde OpenMemory — tutoriales antiguos, publicaciones de blog o referencias de paquete bajo el nombre OpenMemory pueden describir una versión anterior de la misma base de código; verifica contra el repositorio actual antes de confiar en guías de terceros antiguas

Errores comunes al evaluar LongMemory

La mayor parte de la confusión sobre LongMemory viene de su cambio de nombre desde OpenMemory, o de asumir que ejecuta su propio modelo como lo haría un motor de inferencia.

Error 1: Confundirlo con un proyecto "OpenMemory" no relacionado

El propio proyecto de CaviraOSS se publicaba antes como OpenMemory antes de pasar a llamarse LongMemory. Otras organizaciones tienen proyectos separados y no relacionados también llamados "OpenMemory" — verifica que estás viendo específicamente github.com/CaviraOSS/LongMemory, no un proyecto con nombre similar de otro equipo.

Error 2: Esperar que LongMemory ejecute su propio modelo de IA

LongMemory es un sustrato de memoria, no un motor de inferencia. Llama a un proveedor de embeddings o LLM que configures (OpenAI, Gemini, Bedrock, Ollama o un modelo HTTP local) en lugar de ejecutar su propio modelo, según su propia documentación.

Error 3: Tratarlo como un reemplazo directo de una base de datos vectorial

LongMemory añade razonamiento temporal, gobernanza y tipos de memoria específicos de agente por encima de la recuperación — si solo necesitas almacenar y buscar embeddings sin conciencia temporal, una base de datos vectorial más simple podría ajustarse a tu caso de uso con menos complejidad operativa.

Error 4: Asumir que es un servicio alojado y gestionado

LongMemory es autoalojado. No existe un nivel de nube gestionado descrito en su documentación — tú mismo ejecutas la librería Node.js, el cliente de Python contra tu propio servidor, la CLI o el contenedor Docker.

Competidores y alternativas

LongMemory se compara con más frecuencia con otras herramientas de framework RAG y memoria autoalojadas, ya que se sitúa en el mismo segmento de "infraestructura de embeddings y recuperación". Complementario a la propia entrada de LongMemory en el Local LLM Software Directory.

Tool
Best known for
Link
CogneeMotor de memoria de IA y grafo de conocimiento de código abierto para apps y agentes LLMCognee Review
txtaiFramework de búsqueda vectorial y RAG integrado, todo en unotxtai Review
LlamaIndexFramework de datos de propósito general para construir aplicaciones RAG y de agentesLlamaIndex Review
HaystackFramework de RAG y pipeline de búsqueda de código abierto de deepsetHaystack Review

Esta lista refleja herramientas en el mismo segmento de infraestructura de embeddings/recuperación que LongMemory, no un ranking independiente de PromptQuorum — verifica el conjunto de funciones actual de cada herramienta antes de elegir, ya que el enfoque de memoria temporal de LongMemory no es idéntico a un framework RAG general o una base de datos vectorial.

Comparar en el directorio

Preguntas frecuentes

¿Qué es LongMemory?

LongMemory (github.com/CaviraOSS/LongMemory) es un motor de memoria gratuito, de código abierto y autoalojado que da a agentes de IA y aplicaciones LLM memoria duradera, temporal y gobernada entre sesiones.

¿Es LongMemory el mismo proyecto que OpenMemory?

Sí. LongMemory era publicado antes por CaviraOSS bajo el nombre OpenMemory antes de ser renombrado. Es el mismo proyecto y la misma trayectoria de repositorio, no dos herramientas separadas — pero ten en cuenta que proyectos no relacionados de otras organizaciones también usan el nombre "OpenMemory", así que verifica que estás viendo específicamente el repositorio de CaviraOSS.

¿Es gratuito LongMemory?

Sí. El motor principal tiene licencia Apache 2.0 y es autoalojado, así que no hay cuota de suscripción por LongMemory en sí. Tu único costo es tu propia infraestructura de alojamiento más lo que cobre el proveedor de embeddings o LLM que elijas.

¿Ejecuta LongMemory su propio modelo de IA?

No. LongMemory es un sustrato de memoria, no un motor de inferencia. Almacena y recupera memoria, y llama a un proveedor de embeddings/LLM que configures — OpenAI, Google Gemini, AWS Bedrock, Ollama o un modelo compatible con HTTP local.

¿Cómo instalo LongMemory?

Vía npm (npm install longmemory para la librería, o npm install --global longmemory para la CLI), vía pip (pip install longmemory-sdk para el cliente HTTP de Python), o vía Docker (docker run -p 7331:7331 ghcr.io/caviraoss/longmemory:latest).

¿Qué diferencia a LongMemory de una base de datos vectorial?

Una base de datos vectorial simple almacena y busca embeddings sin ningún concepto de tiempo. LongMemory añade razonamiento temporal (rastrear cuándo un hecho era cierto y si ha cambiado desde entonces), tipos de memoria gobernados e integraciones específicas de agente por encima de la recuperación.

¿Con qué herramientas de IA se integra LongMemory?

Según su documentación: Claude Desktop, GitHub Copilot, Codex, OpenCode, Gemini CLI, Cline y n8n, además de cualquier cliente compatible con Model Context Protocol (MCP) a través de su servidor MCP.

¿Qué licencia usa LongMemory?

Apache 2.0 para el motor principal. Un paquete de integración de nodo comunitario de n8n independiente tiene licencia MIT, según su propio listado en el registro comunitario de n8n.

¿LongMemory admite idiomas además del inglés?

Sí. Su documentación describe detección de escritura y embeddings entre idiomas como parte de su soporte multilingüe, en lugar de estar limitado a la memoria en inglés.

¿Ha probado PromptQuorum de forma independiente la precisión de recuperación de LongMemory?

No. Esta review se basa en el propio repositorio de GitHub, README y documentación de LongMemory, no en benchmarking práctico de PromptQuorum. Verifica las afirmaciones concretas de rendimiento frente a la propia documentación del proyecto antes de una decisión de producción.

Fuentes

← Volver a LLM locales avanzados

MCP