Documentation / @agentick/client / MessageLog
Class: MessageLog
Defined in: client/src/message-log.ts:71
Accumulates chat messages from execution lifecycle events.
Tracks tool call durations (tool_call_start → tool_result) and extracts messages from execution_end events via a configurable MessageTransform.
When renderMode is set, processes stream events progressively:
"message": Full assistant messages appear onmessageevent"block": Content blocks appear one-at-a-time oncontent/tool_callevents"streaming": Token-by-token updates oncontent_delta/tool_call_deltaevents
Standalone: Self-subscribes to session events by default. Composed: Pass subscribe: false and call processEvent() from a parent controller (e.g. ChatSession) for single-subscription fan-out.
Constructors
Constructor
new MessageLog(
client,options?):MessageLog
Defined in: client/src/message-log.ts:92
Parameters
client
options?
MessageLogOptions = {}
Returns
MessageLog
Accessors
messages
Get Signature
get messages(): readonly
ChatMessage[]
Defined in: client/src/message-log.ts:109
Returns
readonly ChatMessage[]
state
Get Signature
get state():
MessageLogState
Defined in: client/src/message-log.ts:105
Returns
Methods
appendMessages()
appendMessages(
messages):void
Defined in: client/src/message-log.ts:183
Append messages (e.g. initial load from DB, or external sources). Adjusts internal counters so dedup continues to work correctly.
Parameters
messages
readonly ChatMessage[]
Returns
void
clear()
clear():
void
Defined in: client/src/message-log.ts:190
Returns
void
destroy()
destroy():
void
Defined in: client/src/message-log.ts:208
Returns
void
onStateChange()
onStateChange(
listener): () =>void
Defined in: client/src/message-log.ts:203
Parameters
listener
() => void
Returns
():
void
Returns
void
prependMessages()
prependMessages(
messages):void
Defined in: client/src/message-log.ts:172
Prepend older messages (e.g. loaded from DB on scroll-back). Adjusts internal counters so dedup continues to work correctly.
Parameters
messages
readonly ChatMessage[]
Returns
void
processEvent()
processEvent(
event):void
Defined in: client/src/message-log.ts:132
Process a stream event. Called automatically when self-subscribing, or manually by a parent controller (ChatSession).
Parameters
event
Returns
void
pushUserMessage()
pushUserMessage(
text,extraBlocks?):void
Defined in: client/src/message-log.ts:118
Add a user message immediately (before execution_end). Used in progressive modes so user messages appear right away. When extraBlocks are provided, content becomes ContentBlock[].
Parameters
text
string
extraBlocks?
ContentBlock[] = []
Returns
void