Memory types
Memory types
Unlike flat key-value memory stores, XTrace maintains three distinct types of structured knowledge. Each serves a different purpose and follows different lifecycle rules.
Beliefs (facts)
Atomic assertions extracted from conversations: “user prefers TypeScript,” “project deadline is April 30,” “we chose event-sourcing for billing.”
Beliefs are the core of the revision system. Each belief has:
- Entrenchment — how resistant it is to being overridden. User-stated beliefs outrank system inferences.
- Status —
active,superseded, orretracted - Lineage — when superseded, the belief links to its replacement, forming a revision chain
- Linked episodes — which conversations established or changed the belief
See Beliefs (facts) for the full model.
Episodes
Summaries of conversation sessions. An episode captures what was discussed, what was decided, and what’s still open — not a transcript, but a structured record of the session’s outcomes.
Episodes link to the beliefs they established and the artifacts they produced. When you start a new session, episodes from recent sessions provide continuity.
See Episodes for details.
Artifacts
Versioned work products: technical designs, blog posts, strategies, code snippets. Each artifact revision links to the previous version and to the beliefs and decisions that drove the change.
Artifacts are version-chained like git. When you hand off work to a different tool or agent, the full version history travels with it.
See Artifacts for details.
How they connect
When a belief changes, XTrace can flag which episodes referenced it and which artifacts were built on it. This is dependency propagation — the mechanism that keeps context consistent as things evolve.