OpenMemory and subcog
These two tools are competitors, as both aim to provide a local, persistent memory store for AI coding assistants and LLM applications, with Subcog explicitly capturing decisions, learnings, and context, and OpenMemory offering a broader persistent memory store for various LLM applications.
About OpenMemory
CaviraOSS/OpenMemory
Local persistent memory store for LLM applications including claude desktop, github copilot, codex, antigravity, etc.
Provides multi-sector memory (episodic, semantic, procedural) with temporal reasoning and composite scoring—not just vector retrieval—via self-hosted SQLite/Postgres backends. Offers both embedded SDKs (Python/Node) and a centralized server exposing HTTP API, MCP protocol, and dashboard, with source connectors for GitHub, Notion, Google Drive, and web crawling to populate long-term agent context.
About subcog
zircote/subcog
Persistent memory system for AI coding assistants. Captures decisions, learnings, and context from coding sessions. Features hybrid search (semantic + BM25), MCP server integration, SQLite persistence with knowledge graph, and proactive memory surfacing. Written in Rust.
Implements three-layer storage (SQLite + FTS5 + HNSW vectors) with Reciprocal Rank Fusion for hybrid search scoring, exposing ~22 MCP tools via stdio or HTTP transport for Claude Desktop and other AI agents. Achieves 97% factual recall accuracy on LongMemEval benchmarks with automatic all-MiniLM-L6-v2 embedding generation, faceted memory organization by project/branch/file, and optional entity extraction with knowledge graph inference.
Related comparisons
Scores updated daily from GitHub, PyPI, and npm data. How scores work