showcase/shell-docs/src/content/reference/hooks/useDefaultRenderTool.mdx
useDefaultRenderTool is a convenience wrapper around useRenderTool with name: "*".
This is part of the v2 tool rendering hook set with useComponent, useRenderTool, and useRenderToolCall.
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.
import { useDefaultRenderTool } from "@copilotkit/react-core/v2";
function useDefaultRenderTool(
config?: {
render?: (props: {
name: string;
parameters: any;
status: string;
result: string | undefined;
}) => React.ReactElement;
},
deps?: ReadonlyArray<unknown>,
): void;
useRenderTool({ name: "*", ... }).config.render is omitted, uses an expandable default card UI that shows status, parameters, and result.config.render is provided, your renderer is used instead.useRenderTool registration behavior and dependency semantics.function App() {
useDefaultRenderTool();
return null;
}
function App() {
useDefaultRenderTool(
{
render: ({ name, status, result }) => (
<div>
<strong>{name}</strong>: {status}
{status === "complete" && result ? <pre>{result}</pre> : null}
</div>
),
},
[],
);
return null;
}