Runs a fixed four-stage LangGraph pipeline per turn (working-memory manager, search coordinator, synthesizer, reasoning agent), with a background consolidator that extracts seven typed memory record kinds and fuses near-duplicates by embedding cosine into a hierarchical composite-record tree. It also runs a working-memory token-budget manager, a procedural skill store using HyDE retrieval, and an optional multimodal visual-memory store with an Ebbinghaus-style forgetting curve. Everything persists to an embedded SQLite and LanceDB pair with no external database server.
- Storage
- Embedded SQLite (FTS5 full-text index plus record metadata) alongside embedded LanceDB (vector index), with raw images on the local filesystem for the visual-memory path. No separate database service to operate.
- Retrieval
- An approximate-nearest-neighbour pre-filter over composite records followed by a single LLM relevance judgement, with recursive expansion down the memory tree to atomic records on demand; HyDE-based retrieval for the procedural skill store, plus multi-channel full-text and vector reflection recall to close coverage gaps.
- Self-host
- Self-host: trivial
- License
- Apache-2.0
- Pricing
- Fully open source with no hosted or paid tier anywhere in the repo, README, or package metadata. You pay only for your own LLM and embedding API calls, routed through litellm, plus whatever infrastructure you choose to run it on. · Free / OSS
- GitHub stars
- 1,163
- Last release
- 2026-05-13
- Last commit
- 2026-07-17
- First catalogued
- 2026-07-25
Strengths
- Fully self-contained and pip-installable with embedded SQLite and LanceDB — genuinely trivial to self-host with zero external services
- Rich typed-memory architecture (seven record kinds, hierarchical composite fusion, action-aware retrieval) purpose-built for tool-using agents rather than chat recall
- Multi-surface in one repo: HTTP MCP endpoint, OpenAI-compatible chat API, CLI, importable SDK, and native OpenClaw/Claude Code/Hermes plugins
- Optional extras show active development — a transformer reranker and multimodal visual memory with a forgetting curve
Watch out
- Very young and pre-1.0 — PyPI has only reached 0.1.4 and the repo has no GitHub releases or tags at all, so version provenance rests entirely on PyPI
- Thin maintainer footprint: recent history shows a single primary author, a real bus-factor risk
- MCP transport is self-hosted HTTP only, with no hosted endpoint, so remote-client use means exposing your own server
- The PinchBench comparison against OpenClaw's native memory (+6% score, −71% tokens) is a vendor-run self-reported result, not an independent benchmark
- The README references a sibling ACL 2026 paper, but that paper belongs to a different repo — do not read it as peer review of this codebase
Best for
- Solo developers and researchers wanting a lightweight, fully local Python memory service with fine-grained typed records
- Teams already on OpenClaw, Claude Code, or Hermes wanting native plugin memory
- Anyone who wants an embeddable memory library without standing up a graph or vector database server
How it integrates
Benchmark results
No sourced results yet.
Sources
- Repo metadata — 1,167 stars, Apache-2.0, master branch last commit 2026-07-17, no releases or tags (vendor)
- README — four-stage pipeline, typed memory records, MCP/REST/CLI surfaces, plugin directories (vendor)
- PyPI metadata — v0.1.4 released 2026-05-13; dependencies confirm no host-plugin coupling (vendor)
- First-party OpenClaw, Claude Code, and Hermes plugin directories (vendor)
Last verified 2026-07-25 · updated by discover-frameworks