Skip to content

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 on message event
  • "block": Content blocks appear one-at-a-time on content/tool_call events
  • "streaming": Token-by-token updates on content_delta/tool_call_delta events

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 ​

AgentickClient

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 ​

MessageLogState

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 ​

StreamEvent

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

Released under the ISC License.