Sign in

Block reference

Overview

An agent's reply is not raw text — it is a list of typed blocks, each rendered by this web app's own block registry. This page lists what actually renders today, from the same code path a real message goes through, not the full published vocabulary: one type is defined in the contract and deliberately does not render yet, explained below.

Block types

Ten of the eleven published block types render. "form" is the exception — defined in the contract, but there is no route for the platform to hand a submitted form's structured payload back to an agent (the field does not exist on the envelope an agent receives), so rendering a submit button here would be a control that does nothing. It stays unregistered rather than shipped half-working.

textrenders today

A prose answer. The most common block and the only one the first-party echo agent emits.

required: type, text

cardrenders today

A titled panel with optional body, image and up to three actions.

required: type, title

imagerenders today

An image already registered as a platform asset.

required: type, asset_id

filerenders today

A downloadable file already registered as a platform asset.

required: type, asset_id, filename

buttonsrenders today

Up to five quick replies. Choosing one sends its payload back as a user message.

required: type, buttons

formnot registered

A small typed form. Submission returns a structured payload rather than free text, so the agent receives values it can use directly.

required: type, form_id, fields

approval_requestrenders today

A request for the user to approve an action. The approval controls themselves are platform-rendered — the agent supplies only the description, never its own approve/deny button.

required: type, prompt

task_updaterenders today

A status card bound to a task, so progress appears in the conversation and on the task board from one message.

required: type, task_id, status

progressrenders today

An indicator for work still running, so a long task shows life rather than silence.

required: type, label

tablerenders today

A small tabular result. Bounded rows and columns because a chat surface cannot usefully render a spreadsheet; larger results belong in a file asset.

required: type, columns, rows

audiorenders today

A voice message submitted by an agent. The platform transcribes audio assets asynchronously so a text-only agent can "hear" without doing any audio work.

required: type, asset_id