TypeScript: Types

Complete reference for all interfaces and type aliases in the Elephantasm TypeScript SDK.

All types are importable from the package:

import type {
  Anima, AnimaCreate, Event, EventCreate, EventType,
  Memory, MemoryState, MemoryPack, MemoryPackContent,
  ScoredMemory, ScoredKnowledge, TemporalContext, IdentityContext,
  ElephantasmConfig, ExtractOptions, InjectOptions,
} from "@elephantasm/client";

Type Aliases

EventType

Event classification for message capture. Used as the first argument to extract().

type EventType = "message.in" | "message.out" | "tool.call" | "tool.result" | "system";
ValueDescription
"message.in"User messages received by the agent
"message.out"Assistant responses generated by the agent
"tool.call"Tool/function invocations
"tool.result"Tool/function return values
"system"System-level events and signals

MemoryState

Lifecycle states for memory recall and curation.

type MemoryState = "active" | "decaying" | "archived";
ValueDescription
"active"Currently relevant, included in recall
"decaying"Losing relevance, deprioritized in recall
"archived"No longer active, preserved for provenance

Core Interfaces

Anima

Agent entity that owns memories and events. Returned by createAnima().

NameTypeRequiredDescription
idstringrequiredUUID identifier.
namestringrequiredHuman-readable name.
descriptionstringoptionalOptional description.
metaRecord<string, unknown>optionalArbitrary metadata.
user_idstringoptionalOwning user UUID (set by server).
created_atstringrequiredISO 8601 creation timestamp.
updated_atstringrequiredISO 8601 last update timestamp.

AnimaCreate

Request interface for creating an anima. Used internally by the client.

NameTypeRequiredDescription
namestringrequiredName for the anima.
descriptionstringoptionalOptional description.
metaRecord<string, unknown>optionalOptional metadata.

Event

Atomic unit of experience — a single captured interaction. Returned by extract().

NameTypeRequiredDescription
idstringrequiredUUID identifier.
anima_idstringrequiredOwning anima UUID.
event_typestringrequiredEvent type (e.g. 'message.in').
rolestringoptionalMessage role: user, assistant, system, tool.
authorstringoptionalWho produced this event.
summarystringoptionalServer-generated summary.
contentstringrequiredEvent content body.
occurred_atstringoptionalISO 8601 timestamp of when the event happened.
session_idstringoptionalSession grouping identifier.
metaRecord<string, unknown>requiredMetadata object.
source_uristringoptionalSource system identifier.
dedupe_keystringoptionalDeduplication hash.
importance_scorenumberoptionalCuration priority, 0.0–1.0.
created_atstringrequiredISO 8601 ingestion timestamp.
updated_atstringrequiredISO 8601 last update timestamp.

EventCreate

Request interface for creating an event. Used internally by the client.

NameTypeRequiredDescription
anima_idstringrequiredTarget anima UUID.
event_typestringrequiredEvent type string.
contentstringrequiredEvent content body.
rolestringoptionalMessage role.
authorstringoptionalEvent author.
summarystringoptionalOptional summary.
occurred_atstringoptionalISO 8601 override timestamp.
session_idstringoptionalSession identifier.
metaRecord<string, unknown>optionalMetadata object.
source_uristringoptionalSource system URI.
dedupe_keystringoptionalCustom deduplication key.
importance_scorenumberoptionalImportance hint, 0.0–1.0.

Memory

Subjective interpretation synthesized from one or more events.

NameTypeRequiredDescription
idstringrequiredUUID identifier.
anima_idstringrequiredOwning anima UUID.
contentstringoptionalFull memory content.
summarystringoptionalCompact narrative essence.
importancenumberoptionalRecall priority, 0.0–1.0.
confidencenumberoptionalStability/certainty, 0.0–1.0.
stateMemoryStateoptionalLifecycle state.
recency_scorenumberoptionalCached recency score.
decay_scorenumberoptionalCached decay score.
time_startstringoptionalISO 8601 event timespan start.
time_endstringoptionalISO 8601 event timespan end.
metaRecord<string, unknown>requiredMetadata object.
created_atstringrequiredISO 8601 creation timestamp.
updated_atstringrequiredISO 8601 last update timestamp.

Pack Interfaces

MemoryPack

Compiled memory context for LLM injection. Returned by inject() (wrapped as MemoryPackWithHelpers).

NameTypeRequiredDescription
idstringrequiredPack UUID.
anima_idstringrequiredOwning anima UUID.
querystringoptionalSemantic query used for compilation.
preset_namestringoptionalPreset used for compilation.
session_memory_countnumberrequiredSession memories included.
knowledge_countnumberrequiredKnowledge items included.
long_term_memory_countnumberrequiredLong-term memories included.
has_identitybooleanrequiredWhether identity context is included.
token_countnumberrequiredEstimated token count.
max_tokensnumberrequiredToken budget (default: 4000).
contentMemoryPackContentrequiredPack content with all layers.
compiled_atstringrequiredISO 8601 compilation timestamp.
created_atstringrequiredISO 8601 creation timestamp.

MemoryPackContent

Content structure nested within MemoryPack.content.

NameTypeRequiredDescription
contextstringoptionalPre-formatted context string (used by asPrompt()).
identityIdentityContextoptionalAgent identity layer.
session_memoriesScoredMemory[]optionalRecent scored memories.
knowledgeScoredKnowledge[]optionalKnowledge items with scores.
long_term_memoriesScoredMemory[]optionalLong-term scored memories.
temporal_contextTemporalContextoptionalTime gap awareness.

ScoredMemory

Memory with scoring breakdown from pack compilation.

NameTypeRequiredDescription
idstringrequiredMemory UUID.
summarystringoptionalCompact narrative summary.
scorenumberrequiredComposite recall score.
reasonstringoptionalHuman-readable scoring explanation.
breakdownRecord<string, number>requiredPer-factor score breakdown.
similaritynumberoptionalSemantic similarity score.

ScoredKnowledge

Knowledge item with similarity score from pack compilation.

NameTypeRequiredDescription
idstringrequiredKnowledge UUID.
contentstringrequiredKnowledge content text.
typestringrequiredKnowledge type classification.
scorenumberrequiredRelevance score.
similaritynumberoptionalSemantic similarity score.

TemporalContext

Temporal awareness context for bridging gaps between sessions.

NameTypeRequiredDescription
last_event_atstringrequiredISO 8601 timestamp of most recent event.
hours_agonumberrequiredHours since last event.
memory_summarystringoptionalNatural language summary of last session.
formattedstringrequiredPre-formatted temporal context string.

IdentityContext

Agent identity layer from pack compilation.

NameTypeRequiredDescription
personality_typestringoptionalPersonality classification.
communication_stylestringoptionalPreferred communication approach.
self_reflectionRecord<string, unknown>optionalAnima's self-reflection data.
prosestringoptionalNatural language identity description (~70–100 tokens).

Config Interfaces

ElephantasmConfig

Configuration for the Elephantasm constructor.

NameTypeRequiredDescription
apiKeystringoptionalAPI key. Falls back to ELEPHANTASM_API_KEY.
animaIdstringoptionalDefault anima ID. Falls back to ELEPHANTASM_ANIMA_ID.
endpointstringoptionalAPI URL. Falls back to ELEPHANTASM_ENDPOINT.
timeoutnumberoptionalTimeout in milliseconds. Default: 30000.

ExtractOptions

Options for the extract() method.

NameTypeRequiredDescription
animaIdstringoptionalOverride default anima ID.
sessionIdstringoptionalSession grouping identifier.
rolestringoptionalMessage role.
authorstringoptionalEvent author identifier.
occurredAtstringoptionalISO 8601 timestamp override.
metaRecord<string, unknown>optionalMetadata object.
importanceScorenumberoptionalImportance hint, 0.0–1.0.

InjectOptions

Options for the inject() method.

NameTypeRequiredDescription
animaIdstringoptionalOverride default anima ID.
querystringoptionalSemantic search query.
presetstringoptionalPack compilation preset.