Bi-temporal memory, explained
Every fact has two clocks: when it became true, and when your system learned it. We walk through why bi-temporal modeling is the only way to give an agent a memory that can be corrected without rewriting history — and how Mnemix stores both axes per record.
EngineeringDesigning for sub-300ms voice recall
A latency budget you can actually hit: where the milliseconds go between a caller speaking and the agent remembering who they are.
ProductOne call before every interaction
Why we collapsed recall and enrichment into a single endpoint — and what that does to your agent's prompt assembly step.
EngineeringVector search isn't memory
Embeddings find similar text. Memory needs identity, recency, and contradiction handling. A look at where retrieval-only stacks quietly fail.
Deep DiveDeterminism in a probabilistic stack
How we guarantee the same recall returns the same context every time, even when the model underneath is anything but deterministic.
ProductWhat we learned shipping a private beta
Forty teams, three months, and a long list of assumptions about agent memory that turned out to be wrong.
EngineeringSchema-on-write for messy human facts
People change jobs, names, and preferences. We unpack the enrichment pipeline that normalizes contradictory updates into one coherent contact.
Deep DiveThe cost of forgetting
What happens to retention and resolution when a voice agent treats every call as the first one — and why memory is the cheapest lever you have.