Optional typeTulving memory type.
'episodic' | 'semantic' | 'procedural' | 'prospective'
Optional scopeVisibility scope of the trace.
'thread' | 'user' | 'persona' | 'organization'
Optional scopeIdentifier for the scope (e.g. thread ID, user ID). The trace is filed
under it, in the scope_id column and in its metadata, and a trace of the
same text, type and scope counts as its duplicate only under the same
scope id. A call that names none files the trace under '', whatever its
scope.
Optional tagsFree-form tags for filtering and retrieval.
['project:alpha', 'decision']
Optional entitiesNamed entities extracted from or associated with this trace.
['Alice', 'GPT-4o', 'Q3 roadmap']
Optional importanceManually supplied importance score (0–1). When omitted the encoding engine derives one automatically.
Optional idThe new trace's id, when the caller names it before the write: a write the learning ledger records names its new
traces in its pending row first. A text the scope already holds is not stored again, and the trace that holds
it is returned under its own id.
Optional metadataExtra keys for the trace's stored metadata, merged under the keys the facade sets itself (scopeId,
content_hash, entities, decay), which win. The rolling-summary sink records contributorIds here, and a
memory write on a turn with no learner records turnUserId (MemoryTrace.turnUserId).
Options for storing a new memory trace via
Memory.remember().