Overview
This page documents the core TypeScript types and interfaces used throughout elizaOS. For usage examples, see the relevant feature documentation.Streaming Types
IStreamExtractor
Interface for extracting content from LLM response streams:| Extractor | Use Case |
|---|---|
PassthroughExtractor | Stream everything as-is |
XmlTagExtractor | Extract content from XML tags |
ResponseStreamExtractor | Action-aware extraction |
Task System
TaskWorker
Interface for background task handlers:Task
TaskMetadata
State & Context
State
StateData
Typed cache for frequently accessed data:ActionPlan
For multi-step action execution:Messaging Types
ControlMessage
Backend-to-frontend control messages:MessageStreamChunkPayload
Streaming response chunk data:TargetInfo
Message routing target:SOCKET_MESSAGE_TYPE
WebSocket message type enum:Event Payloads
RunEventPayload
Emitted on run start/end:ActionEventPayload
Emitted on action start/complete:EvaluatorEventPayload
ModelEventPayload
Emitted on model usage:EmbeddingGenerationPayload
Database Types
Log & LogBody
AgentRunSummary
Analytics for agent runs:Memory Options
Vector Dimensions
TEE Types
TEEMode
Trusted Execution Environment modes:TeeAgent
TEE agent registration:RemoteAttestationQuote
TeePluginConfig
ElizaOS Orchestrator
IElizaOS
Multi-agent orchestrator interface:HandleMessageOptions
HandleMessageResult
HealthStatus
Model Types
TokenUsage
TextStreamResult
Model Settings
isStreamableModelType
Type guard for streaming-capable models:See Also
Core Runtime
Runtime interface and lifecycle
Events
Event system and payloads
Services
Service types and patterns
Plugin Reference
Plugin interface definitions

