Component reference
Raw HTML strings pass through, which is the escape hatch for anything the
components do not cover.
Thinking
Consecutivethinking yields append to the same bubble until a different type
arrives. Provider reasoning deltas map here automatically, so extended thinking
from Anthropic and delta.reasoning from OpenAI-compatible endpoints both show
up without any work on your side.
Tables
Send the header row once, then onerow per record. Rows render as they arrive,
so a slow query shows partial results instead of nothing.
Client actions
Aui event triggers something in the client. Nothing is rendered in the
conversation and nothing is kept in history.
The
Canvas, Suggest and Ask built-in tools fire these for
you. Yield them directly only from a custom loop. One difference worth knowing:
when the Ask tool fires, the turn ends, because the next user message carries
the answers.
Errors
An unhandled exception inside the body becomes a callout with a short reference id, and the full traceback goes to structured logs.Next
Context
What the body receives on every turn.