Saltar al contenido principal

Two memory primitives with different lifecycle scopes

Primitives used: persona · memory

// The closed memory lifecycle catalog:
// ephemeral — single-turn; cleared as the writing step returns
// none — alias for ephemeral; explicit "intentionally amnesiac"
// session — lives across the conversation; cleared on disconnect
// persistent — survives reconnect, scoped by tenant + user

persona Tutor {
domain: ["education"]
tone: friendly
confidence_threshold: 0.7
cite_sources: false
}

// Per-turn scratch — gone the moment the step returns.
memory ScratchPad {
store: ephemeral
retrieval: exact
}

// Lives for the duration of the conversation.
memory SessionState {
store: session
retrieval: semantic
}

// Survives reconnect — tenant + user scoped.
memory StudentProgress {
store: persistent
backend: pgvector
retrieval: semantic
decay: never
}