Overview
useDefaultRenderTool is a convenience wrapper around useRenderTool with name: "*".
This is part of the v2 tool rendering hook set with useComponent, useRenderTool, and useRenderToolCall.
- With no config, it registers CopilotKit's built-in default tool-call UI.
- With
render, it replaces that default UI with your own wildcard renderer.
Use this for catch-all rendering of tool calls that do not have a specific named renderer.
Signature
function useDefaultRenderTool(
config?: {
render?: (props: {
name: string;
parameters: any;
status: string;
result: string | undefined;
}) => React.ReactElement;
},
deps?: ReadonlyArray<unknown>,
): void;
Behavior
- Internally calls
useRenderTool({ name: "*", ... }). - If
config.renderis omitted, uses an expandable default card UI that shows status, parameters, and result. - If
config.renderis provided, your renderer is used instead. - Inherits
useRenderToolregistration behavior and dependency semantics.
Usage
Built-in default renderer
function App() {
useDefaultRenderTool();
return null;
}
Custom wildcard renderer
function App() {
useDefaultRenderTool(
{
render: ({ name, status, result }) => (
<div>
<strong>{name}</strong>: {status}
{status === "complete" && result ? <pre>{result}</pre> : null}
</div>
),
},
[],
);
return null;
}