Skip to content

smelt.transcript.defaults

Tier: Host - Available in every runtime, including headless mode.

Visibility: Public - Stable Lua API intended for user config and plugins.

Bundled default transcript renderers. These are ordinary Lua helpers used by the default root renderer and available for user renderers to call or compose.

smelt.transcript.defaults.child_failed

fun(child: smelt.transcript.Block): boolean

Types: smelt.transcript.Block

True when a grouped child represents a failed or denied tool result.

smelt.transcript.defaults.group_children

fun(group: smelt.transcript.Group): smelt.transcript.Block[]

Types: smelt.transcript.Group, smelt.transcript.Block

Return child snapshots for a transcript group snapshot.

smelt.transcript.defaults.group_failure_counts

fun(group: smelt.transcript.Group): integer, integer

Types: smelt.transcript.Group

Count failed and denied tool children in a transcript group snapshot.

smelt.transcript.defaults.render

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render any semantic transcript block with the bundled default policy.

smelt.transcript.defaults.render_assistant

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render assistant text.

smelt.transcript.defaults.render_code

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a code block with syntax highlighting.

smelt.transcript.defaults.render_compacted

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a compacted-history marker.

smelt.transcript.defaults.render_compaction_preview

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render an in-flight compaction summary preview.

smelt.transcript.defaults.render_exec

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render an exec block.

smelt.transcript.defaults.render_group_child_list

fun(group: smelt.transcript.Group, ctx: smelt.transcript.Context, opts: table?): smelt.layout.Node

Types: smelt.transcript.Group, smelt.transcript.Context, smelt.layout.Node

Render a compact ordered child list for collapsed group nodes. Failed children stay in place and use a plain error highlight; expand the group for details.

smelt.transcript.defaults.render_group_children

fun(group: smelt.transcript.Group, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Group, smelt.transcript.Context, smelt.layout.Node

Render all group children through the bundled default block renderer.

smelt.transcript.defaults.render_llm_markdown

fun(content: string?, opts: table?): smelt.layout.Node

Types: smelt.layout.Node

Render LLM-authored Markdown with the shared transcript Markdown path.

smelt.transcript.defaults.render_llm_markdown_tail

fun(content: string?, ctx: smelt.transcript.Context?, opts: table?): smelt.layout.Node

Types: smelt.transcript.Context, smelt.layout.Node

Render capped LLM-authored Markdown for tool bodies and other long outputs.

smelt.transcript.defaults.render_mode

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a mode note.

smelt.transcript.defaults.render_process_status

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a process-status note.

smelt.transcript.defaults.render_thinking

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render thinking for the current transcript view state.

smelt.transcript.defaults.render_thinking_full

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render the full thinking block with the current gutter.

smelt.transcript.defaults.render_thinking_peek

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a compact live preview of thinking: first rendered row, omitted rows, tail.

smelt.transcript.defaults.render_thinking_summary

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a compact thinking summary.

smelt.transcript.defaults.render_tool

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a tool block for the current transcript view state.

smelt.transcript.defaults.render_tool_body

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context, opts: table?): smelt.layout.Node?

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a tool body. Drafts can provide an explicit best-effort preview; completed tools fall back to raw output or their structured body renderer.

smelt.transcript.defaults.render_tool_full

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a full tool block using the current generic primitives and explicit item construction.

smelt.transcript.defaults.render_tool_header

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context, opts: table?): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render the default one-line tool header.

smelt.transcript.defaults.render_tool_output

fun(output: smelt.transcript.ToolOutput?, ctx: smelt.transcript.Context?, opts: table?): smelt.layout.Node

Types: smelt.transcript.ToolOutput, smelt.transcript.Context, smelt.layout.Node

Render raw tool output using generic layout primitives: text, gutter, and a rendered-row cap. Error output uses ErrorMsg; success output remains dimmed by the text primitive's no-highlight fallback.

smelt.transcript.defaults.render_tool_output_tail

fun(output: smelt.transcript.ToolOutput?, ctx: smelt.transcript.Context?, opts: table?): smelt.layout.Node

Types: smelt.transcript.ToolOutput, smelt.transcript.Context, smelt.layout.Node

Render raw tool output without gutter using generic layout primitives: text/runs and a rendered-row cap. Body renderers use this for expanded/tail previews.

smelt.transcript.defaults.render_tool_summary

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a compact tool summary: header plus an optional detail line.

smelt.transcript.defaults.render_unknown

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render unknown block kinds without failing the transcript.

smelt.transcript.defaults.render_user

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render a user block. Custom renderers can layer richer panel/text annotations; the bundled default keeps the same full-width prompt chrome as the Rust renderer while leaving the content policy in Lua.

smelt.transcript.defaults.render_user_text

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): smelt.layout.Node

Types: smelt.transcript.Block, smelt.transcript.Context, smelt.layout.Node

Render user text.

smelt.transcript.defaults.tool_collapsed_detail

fun(block: smelt.transcript.Block, ctx: smelt.transcript.Context): string?

Types: smelt.transcript.Block, smelt.transcript.Context

Return a compact tool detail for collapsed tool blocks.