Skip to content

smelt.transcript

Tier: UiHost — Requires a terminal UI; calling these from headless mode raises.

Read rendered transcript display text. UiHost-only.

smelt.transcript.blocks

fun(): table

Return the laid-out transcript blocks for the current frame as a list of { idx, role, first_row, rows, first_line }. idx is 0-based into session.messages order (the same value session.rewind_to(idx) accepts). role is "user"|"assistant"|"thinking"|"tool"|"code"|"exec"|"compacted". first_row is the absolute display row of the block's first visible line (compare against win:scroll().top). rows is the block's row count. first_line is the first non-empty line of the block's raw source text. Returns an empty list before the first frame projects.

smelt.transcript.text

fun(): string

Return the full transcript as a single newline-joined string (post-render display text, with thinking blocks visible according to the show_thinking setting).