Durable memory for AI agents

Memory you
can reason with.

Remembero reads what you say and turns it into knowledge — facts with their source sentences, dated and kept current when things change, rules that derive what follows — and answers with the proof attached. You just watched it happen: raw sentence in, extracted facts, proven answer out.

This whole site runs in your browser. No accounts, no installs — and none of our model weights anywhere.
You said · travel chat, 12 Sep

“I moved my Chicago flight to Saturday morning — the Friday 6pm one was killing me. And I'm at the Marriott downtown now, not the airport Holiday Inn.”

Remembero extracted
  • Your Chicago flight is Saturday morningchanged 12 Sep · was Friday 6pm · machine form: flight(chicago, saturday_morning)“moved my Chicago flight to Saturday morning”
  • Your hotel is the Marriott downtownairport Holiday Inn cancelled · machine form: hotel(chicago, marriott_downtown)“at the Marriott downtown now, not the airport Holiday Inn”
You asked

When do I fly to Chicago?

the machine seesflight(chicago, When)
Answer

Saturday morning.

  1. 1
    Changed 12 Sep — the flight is now Saturday morningflight(chicago, saturday_morning)
  2. 2
    Friday 6pm — still remembered, marked supersededflight(chicago, friday_6pm)
Why this is hard: the Friday 6pm flight is still in memory — said first, said plainly. A similarity-based assistant hands it back. Remembero marks it superseded, so the stale answer can't come back.
Text in · knowledge out · proof attachedOpen in playground

AI that forgets —
or worse, misremembers.

If you have ever asked an assistant about something from last month and gotten a confident invention, you already know all three of these.

Chats forget.

A model's memory is a whiteboard wiped at the end of the session. Decisions, preferences, facts — gone by tomorrow, unless someone rebuilds them by hand.

Retrieval guesses.

The usual fix searches old text for passages similar to the question. Similar is not relevant: it grabs what is nearby, cannot combine facts across sessions, and cannot say what it missed.

Confidently wrong.

When memory half-remembers, agents answer anyway. The failure is silent — no missing-piece alarm, no audit trail, no way to check the working after the fact.

Write it down.
Prove what follows.

  1. 1

    Store what was said

    Facts are short, plain sentences with their source attached — readable by you, and exact enough for a machine.

    “Dana and you meet on Tuesdays” — said 3 Jun
  2. 2

    Add rules once

    Rules are plain if-then knowledge: a meeting with your manager is a one-on-one. Written once, applied forever, same result every time.

    if someone is your manager and you meet, that meeting is a 1:1
  3. 3

    Ask, then check the working

    Questions become queries over facts and rules. Every answer carries the chain of evidence behind it — or an honest “not in memory.”

    answer + the facts and rule behind it

No model did any of this. That is the point — and the demo on the right is doing it for real, in your browser, as you click.

Try the core loop — right here, right nowLive · 0 models
  1. 1Say it
  2. 2Store it
  3. 3Rule it
  4. 4Ask it

1 · You say

“Dana is my manager.”

1:1 planning · 3 Jun

“We meet on Tuesdays.”

1:1 planning · 3 Jun

2 · Remembero stores

Plain facts, each with the sentence it came from.

3 · You add one rule

Reads as: a meeting with your manager is a one-on-one.

4 · You ask

“Do I have a 1:1 this week?”

Deterministic engine executing in your browser — same question, same answer, every time. No model, no server, nothing stored. The full SQLite version waits in the playground.

One paragraph,
taken apart.

Real updates don't arrive as tidy facts — they arrive as a paragraph that states things, hides dates in phrases like “the end of this month,” implies arithmetic, and announces changes. Take this one apart a layer at a time.

Team update, 14 March — quick heads-up. I'm stepping back from the Orion rollout at the end of this month; Nadia takes it over from April. We moved the launch two weeks out, so it's now the 28th, not the 14th. Budget-wise we're at $48k of the $60k cap; if the vendor renews at the old rate we'll exceed it by roughly $5k.

one chat message · said 2026-03-14
  1. 1
    Factswho and what
  2. 2
    Dateswhen, resolved
  3. 3
    Logicarithmetic and rules
  4. 4
    Changetruth over time

1 · The facts it states

Writer · replay
  • You are leading the Orion rollout — until the end of Marchmachine form: rollout_lead(orion, you)“I'm stepping back from the Orion rollout at the end of this month”
  • Nadia takes over the rolloutmachine form: rollout_lead(orion, nadia)“Nadia takes it over from April”
  • The launch date moved — to the 28th, from the 14thmachine form: launch_date(orion, 2026-03-28)“We moved the launch two weeks out, so it's now the 28th, not the 14th”
  • Spend stands at $48k against a $60k capmachine form: budget(orion, $48k of $60k)“we're at $48k of the $60k cap”
  • If the vendor renews at the old rate, spend exceeds the cap by about $5kmachine form: exceeds_cap(orion) :- renews_at(orion, old_rate).“if the vendor renews at the old rate we'll exceed it by roughly $5k”

The writer reads English so the rest of the system never has to. A sentence becomes a claim that carries its own source.

The fact layer is a replay of a recorded writer reading. The date resolution, arithmetic, rule, and timelines below it are computed by code in your browser from the paragraph's stated date — run it twice, get the same answer.

Each layer is the same move — text becomes knowledge you can query — with more machinery behind it. The labs take the layers further: the writer–reader lab runs this on six months of messy history.

Four workbenches.
Zero downloads.

Work deeper at each step. Everything runs in this tab over fictional data — and wherever a model appears, it is either an open model your own browser loads on demand, or a clearly labeled replay of a recorded run.

Remembero SQLite and Datalog IDE showing tables, a query, proof, and graph
SQLite owns the rows. Ordinary tables remain the storage authority.Rules own the query. The C extension executes inside SQLite WebAssembly.Proof owns the answer. Every result can show its complete support chain.

We measured everything.

Remembero's claim — that structure beats scale for agent memory — is tested, not asserted. On a public benchmark of 500 questions about long chat histories, a small open model kept getting more right as deterministic code took over the parts models are bad at. It now sits fifteen questions behind the frontier model that trained it.

500questions on the public long-memory benchmark (LongMemEval-S) — multi-session, temporal, updates, abstention
318 → 425correct answers as code-written structure was added to the same small model — dates resolved, arithmetic done, chats re-ranked
15 shortof the frontier model that trained it, under the same automated grader — with run-to-run noise of about ±7

Models translate.
Rules decide.

Everything you tried above ran with zero models. When you want to speak plain English to your memory, a model does the translating — an open model loaded by your own browser in the labs, or any API model in the real product. The model never decides what is true. The rules do, and they show their work.

  1. Question plain English
  2. Translate optional model
  3. Query checked, accepted
  4. Evaluate rules + facts
  5. Notes dates, sums — by code
  6. Answer + proof

One memory layer.
Three ways in.

MCPAn eight-tool core profile for agents; remembero init installs the Claude Code hooks and a session brief.
TypeScriptUse the typed library API inside your applications.
CLInpx -y remembero

Build agents that can show their work.

Start with the sixty-second demo, work a lab, then open the database itself — the whole ladder is one click away.