DEV.co
AI Frameworks · CaviraOSS

OpenMemory

OpenMemory is a self-hosted cognitive memory engine for LLM applications that stores and recalls user context across conversations using multi-sector memory (episodic, semantic, procedural, emotional, reflective) rather than simple vector embeddings. It provides Python and Node SDKs, local SQLite/Postgres backends, and integrations with LangChain, CrewAI, and IDE tools via MCP protocol.

Source: GitHub — github.com/CaviraOSS/OpenMemory
4.3k
GitHub stars
489
Forks
TypeScript
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryCaviraOSS/OpenMemory
OwnerCaviraOSS
Primary languageTypeScript
LicenseApache-2.0 — OSI-approved
Stars4.3k
Forks489
Open issues13
Latest releasev1.2.3 (2025-12-12)
Last updated2026-06-27
Sourcehttps://github.com/CaviraOSS/OpenMemory

What OpenMemory is

A TypeScript/Python project implementing temporal knowledge graphs with composite scoring (salience, recency, coactivation), adaptive decay engines, and explainable waypoint traces. Supports multiple embedding providers (OpenAI, Gemini, Ollama), runs as SDK or HTTP backend, and exposes memory operations via REST API and MCP server.

Quickstart

Get the OpenMemory source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/CaviraOSS/OpenMemory.gitcd OpenMemory# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Multi-turn AI Agent Systems

Agents using CrewAI, AutoGen, or LangGraph need durable episodic and semantic memory across task runs. OpenMemory's composite scoring and temporal reasoning enable context-aware decision-making without vendor lock-in.

IDE-integrated Coding Assistants

Claude Code, Cursor, and Windsurf can leverage OpenMemory's MCP server to store code patterns, project preferences, and user intent. Explainable traces help assistants justify why they recalled specific facts.

Knowledge Worker Applications (CRM, Journaling, Documentation Systems)

Streamlit apps and custom backends benefit from user_id-scoped memory, temporal versioning (valid_from/valid_to), and decay engines. Notion/GitHub/Google Drive connectors auto-populate memory from external sources.

Implementation considerations

  • Project is mid-rewrite; monitor rewrite branch and GitHub issues closely. Expect potential breaking API changes in minor version updates.
  • Local SQLite is default; production deployments should plan for Postgres and configure connection pooling, backups, and data retention policies.
  • Embedding provider choice (OpenAI, Gemini, Ollama) impacts latency, cost, and privacy; review ingestion frequency and model-switching strategy upfront.
  • MCP integration with IDEs (Claude, Cursor) requires network connectivity to backend; secure HTTP/HTTPS transport and API key rotation if running remotely.
  • Connector authentication (GitHub token, Google Drive, Notion) must be rotated and audited; implement secure secret storage (env vars, vaults) per organization policy.

When to avoid it — and what to weigh

  • Simple Vector Similarity Search is Sufficient — If your use case only requires 'find documents similar to this query', a lightweight vector DB (Milvus, Weaviate, or Pinecone) may be simpler and lower operational overhead than OpenMemory's multi-sector architecture.
  • Project is Currently Undergoing Major Rewrite — README explicitly states 'this project is currently being rewritten' with 'breaking changes and potential bugs expected.' Production deployments should await stable release or accept elevated risk.
  • Fully Managed, Zero-Ops Memory Service Required — OpenMemory requires self-hosting (SQLite, Postgres, or Docker). If you need SaaS-only with guaranteed uptime SLA and vendor support contracts, consider Mem0, Zep, or cloud-native alternatives.
  • High-Volume Real-time Streaming Ingestion — Project design emphasizes add/search/delete semantics and temporal reasoning. No published benchmarks for sub-millisecond latency or million-event-per-second throughput; unclear if optimized for real-time analytics.

License & commercial use

Licensed under Apache License 2.0, a permissive OSI-approved license allowing commercial use, modification, and distribution. Requires attribution and notice preservation; no warranty or patent indemnity.

Apache-2.0 explicitly permits commercial use without licensing fees or vendor approval. No proprietary restrictions on source code or derivatives. However, embedding provider APIs (OpenAI, Gemini) and connector services (GitHub, Google, Notion) may have their own commercial terms and usage limits. Your application's cost structure depends on vector inference volume, not OpenMemory licensing.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceMedium
Security considerations

Self-hosted model allows data residency control and avoids vendor cloud exposure. However: (1) Backend HTTP API requires authentication/authorization (not detailed in README; requires review); (2) SQLite default is unencrypted at rest; Postgres requires TLS/encryption config; (3) Connector tokens (GitHub, Google) must be secured (no mention of secret rotation or audit logs); (4) Embedding API calls leak summary data to third-party providers unless using Ollama (local); (5) MCP server should be run over HTTPS/TLS when exposed remotely; (6) No mention of data deletion SLAs, GDPR/CCPA compliance, or encryption key management.

Alternatives to consider

Mem0

Commercial SaaS memory platform with managed infrastructure, multi-LLM support, and dashboard. Comparable feature set (episodic/semantic memory, decay, temporal reasoning) but vendor lock-in and monthly fees. Better if zero-ops is priority.

Zep

Open-source memory layer (similar Apache-2.0 license) with REST API, UI, and managed SaaS option. Simpler than OpenMemory's multi-sector model but more battle-tested for production. Choose if you prefer lighter architecture and less experimental features.

LangChain + Vector DB (Pinecone, Weaviate, Milvus)

Proven combination with mature docs and community. Lower setup overhead and narrower scope (embeddings only, no temporal reasoning). Use if your app only needs semantic search and you already use LangChain.

Software development agency

Build on OpenMemory with DEV.co software developers

OpenMemory is ideal for CrewAI, LangChain, and IDE-integrated AI assistants. Start with the Python SDK locally, then scale to a hosted backend. Contact us to discuss integration or deployment strategies.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

OpenMemory FAQ

Is OpenMemory production-ready?
README states the project is currently being rewritten with breaking changes expected. It is suitable for early adopters and experimental projects. Production deployments should be assessed against your risk tolerance and monitored for breaking updates.
Can I use OpenMemory without an LLM embedding API (e.g., OpenAI)?
Yes. OpenMemory supports Ollama for local embedding inference, avoiding third-party API calls. This requires Ollama infrastructure and may have different latency/accuracy characteristics than cloud models.
How is OpenMemory different from a vector database?
Vector DBs store and retrieve embeddings by cosine similarity. OpenMemory treats memory as a multi-sector system (episodic, semantic, procedural, emotional, reflective) with temporal reasoning, decay, and composite scoring. It's positioned as a cognitive engine, not a similarity search engine.
Does OpenMemory work offline?
If using local Ollama embeddings and SQLite backend, yes. Cloud embedding providers (OpenAI, Gemini) require internet access for vector inference. Existing memories can be searched/recalled offline if already embedded and stored locally.

Custom software development services

DEV.co helps companies turn open-source tools like OpenMemory into production software. Our software development services cover the full lifecycle — architecture, web development, integration, and maintenance — delivered by software developers and web developers who ship. Engage our software development agency to implement or customize it for your ai frameworks stack.

Ready to Build Agents That Remember?

OpenMemory is ideal for CrewAI, LangChain, and IDE-integrated AI assistants. Start with the Python SDK locally, then scale to a hosted backend. Contact us to discuss integration or deployment strategies.