notmemory brings auditable, reversible memory to AI agents
u/imsuryya released `notmemory` v0.1.0, an open-source Python SDK that gives AI agents SHA-256 hash-chained, rollback-capable memory with GDPR tombstoning, conflict detection, and adapters for LangGraph, MCP, Mem0, and SuperMemory.
Score breakdown
The library gives agent developers a cryptographically verifiable record of past memory states, directly addressing the inability to reconstruct what a long-lived agent believed at the moment it made a bad decision.
- 01notmemory v0.1.0 is available on PyPI under an MIT license, installable via `pip install notmemory`.
- 02Every memory write is SHA-256 hash-chained, creating a tamper-proof audit trail analogous to Git commits.
- 03`await memory.rollback(transaction_id)` undoes a bad write in one line while keeping the hash chain valid.
u/imsuryya built `notmemory` out of frustration with agent debugging: when an agent made a bad decision, it was impossible to reconstruct what it believed at a specific past step. The library solves this with a tamper-proof, SHA-256 hash-chained audit trail — every write is recorded in order, analogous to Git commits, so the full history of what an agent knew and when is always recoverable. A single `await memory.rollback(transaction_id)` call removes a bad write while keeping the hash chain intact, and `await memory.forget(bank_id)` performs GDPR-compliant tombstone deletion with a forensic trail rather than a silent index removal. A confidence decay formula (`c(t) = c₀ · 2^(−t/30)`) automatically reduces the weight of stale memories, and conflict detection catches duplicate or contradicting beliefs before they affect recall. A 0–100 health score surfaces the overall state of a memory bank.
Install options are `pip install notmemory`, `pip install "notmemory[langchain]"`, or `pip install "notmemory[mcp]"`.
The v0.1.0 release ships with 113 tests passing across Python 3.11, 3.12, and 3.13, SQLite with FTS5 full-text search as the storage backend, and adapters for LangChain/LangGraph (a `NotMemoryCheckpointer` drop-in), MCP (compatible with Claude Desktop, Cursor, and Windsurf out of the box), Mem0, and SuperMemory. Install options are `pip install notmemory`, `pip install "notmemory[langchain]"`, or `pip install "notmemory[mcp]"`. The codebase is approximately 2,000 lines under an MIT license with CI/CD in place. Planned v0.2.0 features include `memory.state_at(timestamp)` for point-in-time reads, crypto-shredding (encrypt-on-write plus key destruction for full GDPR compliance), `memory.export_state()`, `memory.diff(from_ts, to_ts)`, and belief lineage tracing. A Postgres backend is also planned. The author is actively seeking contributors, with good-first issues tagged on GitHub.
Key facts
- 01notmemory v0.1.0 is available on PyPI under an MIT license, installable via `pip install notmemory`.
- 02Every memory write is SHA-256 hash-chained, creating a tamper-proof audit trail analogous to Git commits.
- 03`await memory.rollback(transaction_id)` undoes a bad write in one line while keeping the hash chain valid.
- 04Confidence decay is calculated as `c(t) = c₀ · 2^(−t/30)`, automatically reducing the weight of stale memories.
- 05Ships with adapters for LangGraph (`NotMemoryCheckpointer`), MCP (Claude Desktop, Cursor, Windsurf), Mem0, and SuperMemory.
- 06113 tests pass across Python 3.11, 3.12, and 3.13; SQLite with FTS5 is the current storage backend.
- 07Planned v0.2.0 features include `memory.state_at(timestamp)`, crypto-shredding, `memory.diff(from_ts, to_ts)`, and a Postgres backend.
Topics
Summary and scoring are generated automatically from the original article. We always link back to the publisher and never republish images or paywalled content. Last processed Jun 11, 2026 · 08:34 UTC. How this works →