MemoryProjection

data class MemoryProjection(val semantic: List<Proposition> = emptyList(), val episodic: List<Proposition> = emptyList(), val procedural: List<Proposition> = emptyList(), val working: List<Proposition> = emptyList())

Propositions organized by knowledge type.

Implements PromptContributor so it can be passed directly to LLM prompts via withPromptElements().

Constructors

Link copied to clipboard
constructor(semantic: List<Proposition> = emptyList(), episodic: List<Proposition> = emptyList(), procedural: List<Proposition> = emptyList(), working: List<Proposition> = emptyList())

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

Event-based memories ("Met Alice yesterday")

Link copied to clipboard

Preferences and habits ("Likes jazz music")

Link copied to clipboard

Factual knowledge ("Paris is in France")

Link copied to clipboard
val size: Int

Total number of propositions across all types

Link copied to clipboard

Session/transient context ("Currently discussing X")

Functions

Link copied to clipboard

All propositions flattened

Link copied to clipboard
open fun contribution(): String

Format the memory projection for LLM context injection. Implements PromptContributor.contribution.

Link copied to clipboard
operator fun get(type: KnowledgeType): List<Proposition>

Get propositions by knowledge type