Capture context, turn it into provenance-aware graph memory, and let every agent recall it across machines and sessions. Memory that knows where each fact came from, never leaks across clients, and proves itself before it answers.
The hard part of agentic work isn't the model — it's everything the model is supposed to remember. What should be remembered gets forgotten, disconnected, or silently incomplete. Four failures show up again and again.
Every session starts cold. Decisions, preferences, and prior work vanish between runs and across machines.
Facts live in five tools. Nothing reconciles them, so agents act on stale or conflicting versions.
A guess and a confirmed fact look identical. You can't tell what's trustworthy or why.
One shared memory store and a bug becomes a breach. Most memory layers can't enforce a boundary.
Postgres is the canonical ledger. The knowledge graph is a derived index — rebuildable from canonical memories and audit events, never a source of truth. Every row traces back to where it came from. That single rule is what makes the rest safe.
Entities and edges are an index over canonical memory. Drop it, rebuild it, and recall is identical. Truth lives in one place.
Each memory carries its source and a lifecycle state — active, stale, deprecated, superseded. Deleted and superseded facts can't surface in recall.
Edges cannot cross tenants. Client boundaries are enforced by the database, not by hoping the agent behaves.
When memories disagree, recall says so. Bounded one-hop expansion surfaces related context with a source-backed reason for every result.
# every agent, every machine, same memory recall("what did we decide about cutover?", namespaces="/projects/motion-core") → result { "memory": "namespace-by-namespace cutover", "status": "active", "source": "decision · 2026-06-21", "reason": "graph: decided_by → goal", "warnings": [] } # no source, no surface. that's the rule.
You never swap a live memory backend in one move. Motion Memory Core advances one namespace at a time through five modes — and rollback is a mode switch, not a database restore.
A namespace only advances when there are no empty-result regressions, no stale or superseded memories in top results, a source-backed reason behind every graph-added result, and acceptable startup latency. Recall is measured before it's trusted.
Vector recall is table stakes. The guarantees underneath are where memory becomes infrastructure you can run a business on.
Motion Memory Core is in shadow_read against live traffic for its first namespaces. The numbers below are from real dogfood and stress runs.
Motion Memory Core is a MOTION-native subsystem — provenance, lifecycle, graph expansion, tenant isolation, and shadow-read cutover. It stands on open infrastructure and credits it plainly.
A note on convergence: in 2026, leading open-source memory projects independently arrived at the same core bet — Postgres-first, MCP-native, a small memory-verb API, graph behavior without a mandatory graph database. We got there on our own, and we evaluate those projects as advisory candidates against our own cutover gates. The architecture is the moat; the guarantees are the proof.
Motion Memory Core powers MOTION OS for Tolowa Studio. See it running, or talk to us about portable, provenance-aware memory for your agents.