Memory with the properties of evidence.
Retrieval is table stakes — every memory layer does it. VasperaMemory governs what enters the record, attributes every entry, and lets anyone verify the chain.
Approval before memory
Every proposal is schema-validated and conflict-checked against what's already on record. Your policy decides what auto-commits and what waits for a human — decisions and system boundaries default to review.
Hash-chained provenance
Accepted entries append to a chain with author, agent, timestamp, and content hash. Rejections strike through; corrections supersede. Verify the whole chain with one command, from genesis.
Typed memory, queryable by kind
Decisions, patterns, domain rules, and system boundaries are structured entries — agents query exactly what they need (query_decisions, check_boundary) and cite the entries they used.
Rejected proposals are struck through, never deleted — in a ledger, nothing is erased.
Everything on the record.
Decision capture
Architectural decisions are captured from conversation and git history as proposals, with reasoning attached — searchable and citable in every later session.
Fixes that persist
Errors are matched to past fixes with root cause and prevention notes. Solve a bug once; the fix is on the record for every agent.
Auto-capture from commits
Git hooks turn significant commits into memory proposals automatically. Capture is automatic; acceptance still goes through the gate.
One record, every agent
Cursor, Claude Code, Windsurf, VS Code, and JetBrains connect over MCP with one command and read from the same governed record.
Private by default
Local-only mode runs on SQLite — no cloud, no API keys. Full JSON and markdown export on every tier. No lock-in by omission.
Sessions that resume
Pending proposals, recent decisions, and project context carry across sessions, so no agent starts cold.
Documentation on the record
Project docs are indexed and searchable next to your decisions, so answers come with sources instead of guesses.
Your conventions, learned
Code style and workflow preferences are stored as entries agents consult — explicit, inspectable, and editable, not vibes.
Shared team memory
Teams share one governed record: decisions sync across members, and new developers onboard with the full history of why.
See the gate work on your own repo.
One command connects your agents. Local-only mode keeps everything on your machine.