Key Takeaways
- LongMemory (github.com/CaviraOSS/LongMemory) is a free, open-source, self-hosted memory engine for AI agents and LLM applications
- Built by CaviraOSS; formerly published under the name OpenMemory before being renamed LongMemory β this review treats them as the same project, not two competing tools
- Apache 2.0 licensed for the core engine; a separate n8n community-node package ships under MIT, per its own package listing
- Stores memory in a graph-based substrate the project calls "Hydrograph," with immutable nodes, typed edges, and temporal tracking, backed by SQLite for persistence
- Positions itself against plain RAG and vector search: per its own documentation, it is "not just RAG, not just a vector database"
- Integrates with Claude Desktop, GitHub Copilot, Codex, OpenCode, Gemini CLI, Cline, and n8n, plus a Model Context Protocol (MCP) server
- Over 4,500 GitHub stars as of this review
π In One Sentence
LongMemory is a free, open-source (Apache 2.0), self-hosted memory engine built by CaviraOSS β formerly published as OpenMemory β that gives AI agents and LLM applications durable, temporal, governed memory across sessions, with over 4,500 GitHub stars.
π¬ In Plain Terms
LongMemory is a piece of infrastructure you run yourself that remembers things for an AI agent between conversations β including when a fact was true and when it changed β instead of the agent forgetting everything the moment a chat ends. It does not run its own AI model; it stores and recalls memory, and hands context back to whichever LLM or embedding provider you have configured.
πNote: This review is based on LongMemory's own GitHub repository, README, and documentation. It does not claim PromptQuorum has run hands-on benchmarks of its retrieval accuracy or performance against other memory tools β verify specific performance claims directly against the project's own docs before relying on them for a production decision.
What Is LongMemory?
LongMemory is a self-hosted memory engine that gives AI agents and LLM applications durable, time-aware recall across sessions, rather than a model, an inference engine, or a plain vector database. Per its own documentation, it aims to solve a specific problem: most LLM systems lose all context the moment a session ends, and even RAG pipelines built on a vector database typically have no concept of when a fact was true or whether it has since been contradicted.
- Product type: a self-hosted memory backend/library β not a chat app, not an inference engine, not a model
- Developer: CaviraOSS, the GitHub organization that publishes and maintains the project
- Naming: this project is currently named LongMemory; it was formerly published under the name OpenMemory by the same organization, and its packages (
longmemory,longmemory-sdk) reflect the renamed version β do not confuse this with unrelated, similarly named "OpenMemory" projects from other organizations - License: Apache 2.0 for the core engine, confirmed via the GitHub repository; a separate n8n community-node integration package is licensed MIT, per npm/n8n package conventions
- Repository scale: over 4,500 GitHub stars as of this review, with roughly 390 commits on its main branch
Project History: From OpenMemory to LongMemory
LongMemory shipped its early releases under the name OpenMemory, then was renamed to LongMemory by the same CaviraOSS team while keeping the same repository lineage. The version history below reflects milestones from the project's changelog and release notes; dates are as published by the project and should be re-verified on GitHub if you need exact release timing for a compliance or procurement decision.
- 1v1.0.0 / MCP support β initial Model Context Protocol implementation
Why it matters: Added tag- and metadata-filtered queries against the project's graph substrate and exposed memory through MCP, the integration path that later connected LongMemory to tools like Claude Desktop. - 2v1.1.0 β pluggable vector database support
Why it matters: Added PostgreSQL as a supported backend alongside the project's default storage, giving self-hosters more control over where memory data lives. - 3v1.1.1 β memory compression engine and VS Code extension
Why it matters: Introduced a memory-compression system with multiple algorithms, plus a VS Code extension and API authentication/rate limiting for self-hosted deployments. - 4v1.2.0 β web UI and hybrid performance tier
Why it matters: Added a web dashboard for inspecting and managing stored memory, plus a "HYBRID" performance mode balancing accuracy and speed. - 5v1.2.1βv1.2.3 β SDK overhaul and temporal filtering
Why it matters: Rewrote the Python and JavaScript SDKs for standalone use, added time-based ("temporal") filtering on memory retrieval, and fixed MCP server path issues affecting Claude Desktop integration. - 6Beta v1.3.0 β zero-config Memory() class
Why it matters: Simplified the API surface with a zero-config `Memory()` class and a rewritten benchmark suite, per the project's own release notes β the most recent milestone this review could confirm from the public changelog.
What Does LongMemory Actually Do?
LongMemory stores what your AI agent or app has learned, tracks when each fact was true, and hands back only the relevant, still-valid context when asked β while staying stateless on the model side itself.
- Temporal reasoning β tracks point-in-time truth, event ordering, and supersession, so a fact that was true last month but has since changed does not silently overwrite or corrupt current answers
- Multiple recall modes β per its documentation: "strict" recall applies temporal, contradiction, and grounding checks for current facts; "historical" recall retrieves what was true during a specific past period; "associative" recall follows semantic, lexical, and graph signals; "world-grounded" recall requires external evidence before returning a memory as fact
- Hydrograph substrate β a graph-based storage model with immutable nodes, typed edges, and temporal tracking, persisted in SQLite, so retrieved memory is described as auditable and unchanged after the fact by later retrieval
- Governed memory assets β the project describes structured memory types including project memory, chat memory, "skills," an "LLM-Wiki," and a "CodeGraph," each with access-control policies, per its own documentation
- Not an inference engine β LongMemory's own docs are explicit that "your model stays stateless" and that LongMemory itself does not run inference; it calls out to an embedding provider you configure (OpenAI, Google Gemini, AWS Bedrock, Ollama, or a local HTTP-compatible model) and hands context back to whichever LLM your application already uses
- Multilingual support β includes script detection and cross-language embeddings, per its documentation, rather than being English-only
- Session porting β can import prior conversation history from tools including Claude Code, Codex, GitHub Copilot, and Gemini CLI, so existing conversations are not lost when adopting LongMemory
- Model Context Protocol (MCP) server β exposes memory operations as MCP tools, which is the integration path used by Claude Desktop and other MCP-compatible clients
Usage Examples: Three Ways to Use LongMemory
These are concrete workflows built from LongMemory's own documented features, not hypothetical use cases.
Platform, Pricing, and Licensing
Platform
- What LongMemory states:
- Self-hosted; deployable via Docker, or run directly as a Node.js/TypeScript library, Python HTTP client, or CLI, per its own docs.
Cost
- What LongMemory states:
- Free and open source. Self-hosting means your only cost is your own infrastructure plus whatever your chosen embedding/LLM provider charges.
Licensing
- What LongMemory states:
- Apache 2.0 for the core engine; a separate n8n community-node package is MIT, per that package's own listing.
Data locality
- What LongMemory states:
- Positioned as local-first and self-hosted, with SQLite-backed persistence and optional PostgreSQL support, per its documentation.
Verify the current license text directly in the GitHub repository before relying on this table for a legal or compliance decision, since license files can change between releases.
Install LongMemory
LongMemory installs free via npm, pip, or Docker, and its source code is on GitHub.
Source | Link |
|---|---|
| GitHub repository (source code, Apache 2.0) | github.com/CaviraOSS/LongMemory |
| TypeScript/Node.js library | npm install longmemory |
| CLI (global install) | npm install --global longmemory |
| Python HTTP client | pip install longmemory-sdk |
| Docker image | docker run -p 7331:7331 ghcr.io/caviraoss/longmemory:latest |
LongMemory requires a self-hosted runtime (Node.js, Python, or Docker) β there is no managed cloud version or GUI installer. Always check the GitHub README for the current recommended install path before running any command, since install instructions can change between releases.
LongMemory vs. a Plain Vector Database
LongMemory and a plain vector database such as Qdrant, Chroma, or Weaviate solve a related but different problem: a vector database stores and searches embeddings, while LongMemory adds temporal reasoning, governance, and agent-specific memory types on top of retrieval.
Aspect | LongMemory | Plain vector database |
|---|---|---|
| Core job | Governed, temporal memory for agents | Store and search vector embeddings |
| Time-awareness | Tracks when facts were true and superseded | Not built in; must be added by your app |
| Memory types | Project, chat, skills, wiki, code-graph | Generic vectors/collections |
| Runs its own model | No β calls your configured provider | No β same, embeddings computed elsewhere |
| Agent integrations | MCP, Claude Desktop, Copilot, Codex, n8n | Typically none built in |
If you only need to store and semantically search embeddings, a plain vector database is simpler to operate. If you need an agent to remember what was true when, and to distinguish current facts from superseded ones, LongMemory's temporal model is purpose-built for that in a way a generic vector database is not by default.
Who Should Use LongMemory?
LongMemory fits developers building agents or LLM apps that need memory to persist and stay accurate across sessions, not just a one-off retrieval index.
What LongMemory Is Not Good For
LongMemory is not a good fit if you want a fully managed memory service, an inference engine, or a simple drop-in vector search with no temporal complexity.
- Not an inference engine or model server β it does not generate text itself; it stores and recalls memory around a model or embedding provider you configure separately
- Not a managed cloud service β it is self-hosted, so you are responsible for running and maintaining the Node.js/Python/Docker runtime and its storage backend
- Not the simplest option if you only need basic document retrieval with no need to track how facts change over time β a plainer RAG framework may be less operational overhead
- Not independently benchmarked by PromptQuorum for retrieval accuracy or latency β this review is based on LongMemory's own documentation, not hands-on testing
- Renamed from OpenMemory β older tutorials, blog posts, or package references under the OpenMemory name may describe an earlier version of the same codebase; verify against the current repository before relying on older third-party guides
Common Mistakes When Evaluating LongMemory
Most confusion about LongMemory comes from its rename from OpenMemory, or from assuming it runs its own model like an inference engine would.
Competitors and Alternatives
LongMemory is most often compared to other self-hosted RAG and memory-framework tools, since it sits in the same "embeddings and retrieval infrastructure" segment. Companion to LongMemory's own entry in the Local LLM Software Directory.
Tool | Best known for | Link |
|---|---|---|
| Cognee | Open-source AI memory and knowledge-graph engine for LLM apps and agents | Cognee review |
| txtai | Embedded, all-in-one vector search and RAG framework | txtai review |
| LlamaIndex | General-purpose data framework for building RAG and agent applications | LlamaIndex review |
| Haystack | deepset's open-source RAG and search-pipeline framework | Haystack review |
This list reflects tools in the same embeddings/retrieval-infrastructure segment as LongMemory, not an independent PromptQuorum ranking β verify each tool's current feature set before choosing, since LongMemory's temporal-memory focus is not identical to a general RAG framework or vector database.
Frequently Asked Questions
What is LongMemory?
LongMemory (github.com/CaviraOSS/LongMemory) is a free, open-source, self-hosted memory engine that gives AI agents and LLM applications durable, temporal, governed memory across sessions.
Is LongMemory the same project as OpenMemory?
Yes. LongMemory was formerly published by CaviraOSS under the name OpenMemory before being renamed. It is the same project and repository lineage, not two separate tools β but note that unrelated projects from other organizations also use the name "OpenMemory," so verify you are looking at CaviraOSS's repository specifically.
Is LongMemory free?
Yes. The core engine is Apache 2.0 licensed and self-hosted, so there is no subscription fee for LongMemory itself. Your only cost is your own hosting infrastructure plus whatever your chosen embedding or LLM provider charges.
Does LongMemory run its own AI model?
No. LongMemory is a memory substrate, not an inference engine. It stores and retrieves memory, and calls out to an embedding/LLM provider you configure β OpenAI, Google Gemini, AWS Bedrock, Ollama, or a local HTTP-compatible model.
How do I install LongMemory?
Via npm (npm install longmemory for the library, or npm install --global longmemory for the CLI), via pip (pip install longmemory-sdk for the Python HTTP client), or via Docker (docker run -p 7331:7331 ghcr.io/caviraoss/longmemory:latest).
What makes LongMemory different from a vector database?
A plain vector database stores and searches embeddings with no concept of time. LongMemory adds temporal reasoning (tracking when a fact was true and whether it has since changed), governed memory types, and agent-specific integrations on top of retrieval.
What AI tools does LongMemory integrate with?
Per its documentation: Claude Desktop, GitHub Copilot, Codex, OpenCode, Gemini CLI, Cline, and n8n, plus any Model Context Protocol (MCP)-compatible client through its MCP server.
What license does LongMemory use?
Apache 2.0 for the core engine. A separate n8n community-node integration package is licensed MIT, per that package's own listing on the n8n community registry.
Does LongMemory support languages other than English?
Yes. Its documentation describes script detection and cross-language embeddings as part of its multilingual support, rather than being limited to English-language memory.
Has PromptQuorum independently tested LongMemory's retrieval accuracy?
No. This review is based on LongMemory's own GitHub repository, README, and documentation, not hands-on benchmarking by PromptQuorum. Verify specific performance claims against the project's own docs before a production decision.