inputLabel | LocalizedMessage | — | Heading above the input JSON, for example "Input". |
name | string | — | The tool's identifier, for example queryAnalytics. It is data, not copy, and reads left to right. |
outputLabel | LocalizedMessage | — | Heading above the output JSON, for example "Output". |
state | "input-streaming" | "input-available" | "output-available" | "output-error" | — | Lifecycle state. It picks the status badge's intent and its label from statusLabels. A ToolState member
or its string, so the state of a streamed tool part is accepted as it arrives. |
statusLabels | Readonly<Record<"input-streaming" | "input-available" | "output-available" | "output-error", LocalizedMessage>> | — | The badge label for every state, for example "Running" for ToolState.InputStreaming. |
className | string | — | Classes appended to the root. |
defaultOpen | boolean | false | Initial open state when uncontrolled. |
errorText | LocalizedMessage | DisplayValue | — | Failure text, shown in the destructive color. It is runtime data, so a {@link DisplayValue} is accepted. |
input | unknown | — | Tool input, shown as formatted JSON when it is not null or undefined. |
onOpenChange | ToolOpenChangeHandler | — | Fires when the trigger requests a change. |
open | boolean | — | Controlled open state. |
output | unknown | — | Tool output, shown as formatted JSON when it is not null or undefined. |