Skip to content

Version control for what your AI knows

A git-like ledger for what an AI system believes: every piece of knowledge is one claim — sourced, dated, confidence-scored — and nothing is ever overwritten.

A correction supersedes the old claim, a withdrawal retracts it, and a disagreement is recorded as a disagreement — never quietly resolved. The full history of what was believed, and when, is always there. Trust, doubt, and staleness are applied when you read, never written into the stored claim. And the thing reading and writing beliefs doesn't have to be an AI: the same store works as a sourced, dated second brain for a person.

Get started See it work Why Particles?

What makes it different

  • Every claim has a source


    A particle names the exact document snapshot it came from, so every answer is traceable to the evidence it was built from — claim by claim, not "sources at the bottom."

  • Nothing is overwritten


    A corrected claim supersedes the old one; a withdrawn claim is retracted, not deleted. Ask the store what it believes now — or what it believed on any past date.

  • Trust is applied when you read


    Each claim's stored confidence never changes. Source trust, extractor trust, and recency are composed at query time into the confidence used for ranking — so you can change your trust policy without rewriting a single record.

  • Disagreements are kept, not resolved silently


    When two sources conflict, the conflict itself becomes a visible record to review. Your rulings accumulate into a reusable source-trust policy.

In our August 2026 survey of the leading memory systems — Zep/Graphiti, mem0, Letta, Supermemory, Hindsight — none documented all four. See the comparison.

Take your agent's memory out of its hands

A coding agent remembers by appending lines to a file it writes itself. Nothing there records where a line came from, whether it is still true, or that two lines disagree — and the agent decides what is worth keeping.

One command points that memory at a Particles store instead:

particles init claude-code

Remembering stops being the agent's job. Each session ends by harvesting what happened into the corpus, so nothing depends on the agent choosing to save it. Each session starts with a small ranked digest — the store's top standing beliefs, a few thousand tokens at most, never the whole store — pushed into the context window, contradictions flagged rather than hidden; everything else stays out of the prompt, retrievable on demand. And on first run it audits the memory you already have:

Audited 23 memory files → 212 beliefs about 58 subjects.

  4 potential contradictions        (2 cross-file, 2 contested at extract time)
  11 likely-duplicate belief pairs  (unjudged similarity candidates; --judge to verify)
  7 probably-stale facts            (5 aged past their source's decay horizon, 2 expired)

  Also: 3 cited sources never captured · 6 beliefs have no resolvable subject

Those are questions a text file cannot answer about itself. And when your agent gets something wrong, you can see exactly why — which claim, from which source, superseded by what — and fix it at the source. Claude Code memory →

Watch a belief get replaced

In 2006 the IAU demoted Pluto. Below is a real Particles store that learned "Pluto is the ninth planet" in 1996 and the reclassification in 2006. Both claims are still there: the old one keeps its source, its confidence, and its dates, and gains a pointer to what replaced it — so the store can answer with what it believes now, or with what it believed in 2000. (That lens is about the store's own history — what it believed, and when that changed. Pluto didn't change in 2006; the belief about it did.)



Click a link between Pluto and Solar System to read the claim behind it. The dashed edge is the retired belief; the panel names what replaced it and when. Uncheck show history to drop it from view — open it full-page.

The full loop — getting sources in, extracting claims, querying with evidence, and time-traveling with --as-of — is on See it work.

Ask, and see the evidence

Here is the bundled web UI answering a question against that same Pluto store. The answer is built only from stored claims — and every claim behind it is listed with its stored confidence, the effective confidence it was ranked with at read time, its dates, and whether it revises an earlier belief. At the end, the same answer opens as a graph of the knowledge it consulted.



Asking "Is Pluto still a planet?" in the web UI that ships with the engine. The top-cited belief is the 2006 reclassification — marked revises an earlier belief, because the 1996 claim it replaced is still in the store.

Measured, not just argued

On a stratified 150-question run of LongMemEval, a long-term conversational-memory benchmark, an answering model given ten retrieved particles — a ~2,000-character read budget — answers 73.3% of questions correctly, against 79.3% for the same model handed the entire conversation history: 92% of the ceiling from under 2% of the tokens. At that same budget it answers 1.9× as many questions correctly as LLM-written session notes and 2.5× as many as retrieval over the raw transcript. The numbers, and their caveats →

Where to go next

  • Use it


    pip install linkedparticles, then run the deposit → extract → query loop against your own sources. The reference implementation lives in particles-engine-py — the repository to star, watch, and file issues against.

    Getting started →

  • Read the argument


    Why knowledge systems keep failing in the same two ways, what a particle is, and the tradeoff this design accepts on purpose.

    Why Particles? →

  • Read the specification


    The whitepaper, the technical specification, the conformance profile, and the machine-readable schemas — independent of any one implementation.

    The specification →