Skip to main content

Function: deriveUIMessages()

deriveUIMessages(segments, options?): UIChatMessage[]

Defined in: packages/core/src/segments/derivation.ts:237

Derive UIChatMessage[] from StreamSegment[] for UI rendering.

Handles both single-agent and group chat scenarios:

Single-agent (userMessages provided): All segments are assistant messages. User messages are interleaved by timestamp.

Group chat (no userMessages): Segments carry agentId/agentName/avatarEmoji. Segments without agentId are treated as user messages. Flushes text on agent boundary.

Parameters

segments

StreamSegment[]

options?

DeriveUIMessagesOptions

Returns

UIChatMessage[]