FishMem
Core Concepts

How memory works

Extraction, hybrid storage, and reconciliation.

When you add a conversation, FishMem doesn't store the transcript. It runs three steps:

  1. Extract — an LLM distills atomic, durable facts from the messages.
  2. Reconcile — new facts are compared against existing memories: add new ones, update changed ones, and invalidate the ones they supersede.
  3. Store — facts land on a graph store (entities and relations) and a vector index (semantic similarity) at the same time.

Set infer: false on an add to skip extraction and store raw content verbatim.

Bi-temporal facts

Every fact records both when it was true and when FishMem learned it. When a fact changes, the old one is superseded, not deleted — so an agent answers with the current state while the history stays queryable.

On this page