Skip to content

v3.1.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 15:50
· 37 commits to main since this release

mneme 3.1.0

Vault-native memory for Claude Code. Also runs in OpenAI Codex CLI, Google Antigravity, and any MCP client. Markdown is ground truth.

License: Apache-2.0. Single maintainer: Onour Impram.


Install

Lite (recommended first install):

pipx install mneme-cc-plugin && mneme install --profile=lite

Standard (adds opt-in local dense retrieval, enable with --enable-dense):

mneme install --profile=standard

Full (gated Graphiti temporal KG, requires Docker and Neo4j):

mneme install --profile=full

Verify:

mneme doctor

Codex CLI:

mneme install --client=codex

Google Antigravity:

mneme install --client=antigravity

Published packages

All packages are at 3.1.0.

PyPI: mneme-core, mneme-cc-plugin, mneme-graph (first release), mneme-code (first release).

npm: mneme-mcp-server 3.1.0, MCP name io.github.TheGoatPsy/mneme.

MCP Registry: entry io.github.TheGoatPsy/mneme is live.


What is in this release

Security

The team-sync web console now refuses requests whose Host header is not a loopback alias. This closes a DNS-rebinding read path. The bind guard can be disabled with --unsafe-expose for intentional non-loopback exposure.

New

  • team-sync trust-marks every imported file with source, trust level, and a SHA-256 payload hash, and redacts on arrival. Re-pulls are idempotent.
  • mneme memory policy init scaffolds a documented zero-autonomy policy.json. It never overwrites an existing file. mneme memory policy validate surfaces dropped or misspelled class names.
  • docs/UPGRADING.md covers the 2.x to 3.x migration path, with five new cookbook recipes.
  • mneme-graph and mneme-code join the release train with their first PyPI publishes.
  • server.json is tracked at the repo root. MCP Registry auto-publish runs via GitHub OIDC.
  • Dependabot and CodeQL workflows are now active.

Changed

  • CI tests Python 3.14 alongside 3.11 through 3.13.
  • Dev Status classifiers: mneme-core and mneme-cc-plugin are now Production/Stable. mneme-graph and mneme-code are Beta.
  • Governance documents the interim single-maintainer release rule and a best-effort security response posture.

Architecture notes

Store. Memory lives in a directory of plain Markdown files you can git diff, grep, edit, and back up. The SQLite index is a rebuildable artifact.

Stop hook. Appends a typed session document with no LLM call, no API key, no cost, and no added latency. Background AI compression is opt-in, default off, with a monthly cost cap.

Retrieval. FTS5 BM25 is the default. A local hashing-embedding dense backend is shipped as an opt-in, RRF-fused with BM25 when enabled via --enable-dense. A heavyweight LEANN/sentence-transformers adapter is on the roadmap, not yet shipped.

Temporal claims. Valid-from/to, supersedes chains, as-of queries, contradiction detection, and provenance time-travel are built in on every profile, in pure SQLite. Graphiti export and LLM claim extraction are optional additions.

Privacy. Inline <private> tag redaction happens at staging write with a SHA-256 audit log. No outbound network traffic occurs except for the opted-in compression LLM and an optional local Neo4j instance.

Token efficiency. Shell output compression, injection deduplication, adaptive top-k, and three injection format levels combine to reduce session token consumption, measured at 40 to 60 percent on the project's synthetic regression corpus.

Agent security. Capability firewall, data-flow taint tracking, human-approval gate for durable edits, and a poisoned-vault benchmark are included.

Domain privacy modes. Clinical and security-review modes block external extraction and artifact upload. A mode can never weaken a built-in privacy guarantee or disable redaction.

Policy-graduated autonomy. The agent applies operator-allowed low-risk edit classes itself. Every change is journalled for one-command rollback and chained into a tamper-evident HMAC audit log. Durable categories always require a human in the loop.

Team memory. Self-hosted over any git remote, with optional age end-to-end encryption and a loopback-only read-only web console. This is not a vendor cloud service.

Migration. One-command lossless migration from claude-mem is included.

Plugin surface. Five lifecycle hooks, two skills, and an MCP server (seven MCP tools) for Claude Code.


Regression benchmarks

These numbers are deterministic anchors on a seeded synthetic corpus (MNEME_BENCH_SEED=42). They are not real-world quality measurements. See ADR-012. Reproduce with make bench-all.

  • Retrieval nDCG@5, RRF-fused: 0.893 (FTS5 baseline 0.801, +9.2 points). 500-document corpus.
  • Stop hook p95 latency: 2 ms (budget 1000 ms). Retrieve p95: 3 ms on a 500-document index.
  • Shell output compression: 88 percent. Injection dedup skip rate: 95 percent.
  • Migration tool: 4 of 4 assertions pass.
  • Adapter leg nDCG@5: 0.831, MRR 0.772 on a 300-document fixture. This is a synthetic adapter leg only, not a real run against any external tool. A real-data head-to-head comparison is future work.

Full Changelog: v3.0.1...v3.1.0

Repo: https://github.com/TheGoatPsy/mneme