Tools
Define assistant tools, compose toolkits, and expose callable app capabilities to assistant-ui runtimes.
API Reference
makeAssistantTool
type AssistantToolProps = CoreAssistantToolProps<TArgs, TResult> & {
render?: ToolCallMessagePartComponent<TArgs, TResult> | undefined;
};
const makeAssistantTool: <TArgs extends Record<string, unknown>, TResult>(tool: AssistantToolProps<TArgs, TResult>) => AssistantTool;tool
tooltool: Tool<TArgs, TResult>streamCalldeprecated?: ToolStreamCallFunction<TArgs, TResult>Deprecated: Experimental, API may change.
type?: "frontend"description?: stringparameters?: StandardSchemaV1<TArgs> | JSONSchema7disabled?: booleanexecute?: ToolExecuteFunction<TArgs, TResult>toModelOutput?: ToolModelOutputFunction<TArgs, TResult>experimental_onSchemaValidationError?: OnSchemaValidationErrorFunction<TResult>ToolDefinition
ToolDefinitionstreamCalldeprecated?: ToolStreamCallFunction<TArgs, TResult>Deprecated: Experimental, API may change.
type?: "frontend"description?: stringparameters?: StandardSchemaV1<TArgs> | JSONSchema7disabled?: booleanexecute?: ToolExecuteFunction<TArgs, TResult>toModelOutput?: ToolModelOutputFunction<TArgs, TResult>experimental_onSchemaValidationError?: OnSchemaValidationErrorFunction<TResult>render?: ToolCallMessagePartComponent<TArgs, TResult>Toolkit
type Toolkit = Record<string, ToolDefinition<any, any>>;Tools
Tools propstoolkit?: ToolkituseAssistantTool
useAssistantTooltool: AssistantToolProps<TArgs, TResult>streamCalldeprecated?: ToolStreamCallFunction<TArgs, TResult>Deprecated: Experimental, API may change.
type?: "frontend"description?: stringparameters?: StandardSchemaV1<TArgs> | JSONSchema7disabled?: booleanexecute?: ToolExecuteFunction<TArgs, TResult>toModelOutput?: ToolModelOutputFunction<TArgs, TResult>experimental_onSchemaValidationError?: OnSchemaValidationErrorFunction<TResult>toolName: stringrender?: unknown