PixilUI and Tool UI

assistant-ui's way to render a tool call as your own React component, with loading, result, error and interactive states. tool-ui.com now redirects to assistant-ui Elements, 151 free pieces including an Approval card.

In short

Tool UI is assistant-ui's API for rendering a tool call as your own component, and tool-ui.com now redirects to assistant-ui Elements, whose free Approval card offers allow once, always allow and deny, with or without a runtime. If your chat runs on assistant-ui, start there. Choose PixilUI's tool call row and approval card for runtime-free items on plain props, with a risk level, a note on reject and a receipt.

Checked against Tool UI's own docs on .

Side by side

QuestionTool UIPixilUI
What it isTool rendering in the assistant-ui runtime, and the Elements catalogRuntime-free agent components as a shadcn registry
Tool callsTool UI on toolkit entries: loading, result, error and interactive statesTool call row: running, done and error, a live timer, input and output JSON
ApprovalsApproval card: request, running, done and denied; allow once, always allow, denyApproval card: risk level, a second press at high risk, a note on reject, folds into a receipt
Runtimeassistant-ui runtime, or the Approval card standalone as a controlled displayNone needed: items take plain props
FrameworksReact, React Native and VueReact 19
License and priceMIT; Assistant Cloud is a separate paid serviceFree items under MIT. Pro $199 once (the first 100 at $99 when Pro opens), Pro yearly $129, Team $599 once for 10 people
Installnpx assistant-ui@latest createnpx shadcn@latest add @pixilui/tool-call-row

What Tool UI is good at

  • Tool calls bound to the runtime: each tool gets a component that reads its arguments, status and result.
  • A free Approval card that works with a runtime's approval gate or standalone, with allow once, always allow and deny.
  • 151 free Elements around it, from reasoning and task cards to artifacts and the composer.
  • Tool UI docs for React, React Native and Vue.

What PixilUI adds

  • No runtime needed: the tool call row and approval card take plain props.
  • A risk level on the approval card, with a second press at high risk and a note on reject.
  • A run timeline with a step that waits on an approval, for runs longer than one call.

Install

Tool UI

npx assistant-ui@latest createpnpm dlx assistant-ui@latest createyarn dlx assistant-ui@latest createbunx --bun assistant-ui@latest create

PixilUI, after adding the registry to components.json (installation)

npx shadcn@latest add @pixilui/tool-call-rowpnpm dlx shadcn@latest add @pixilui/tool-call-rowyarn dlx shadcn@latest add @pixilui/tool-call-rowbunx --bun shadcn@latest add @pixilui/tool-call-row

Using both

Keep assistant-ui as the runtime and render PixilUI items from Tool UI functions where you want their states and styling.

Questions

What happened to tool-ui.com?

On 4 November 2026 tool-ui.com redirected to assistant-ui.com/elements. Tool UI, the API for rendering tool calls as components, is documented in assistant-ui's docs, and the approval and tool pieces are now Elements.

Tool UI or PixilUI for tool calls?

Tool UI if your chat runs on assistant-ui: it binds a component to each tool and reads its status from the runtime. PixilUI if you want a tool call row and an approval card that take plain props, whatever runs the model.

Can PixilUI render inside an assistant-ui thread?

Yes. A Tool UI render function can return a PixilUI tool call row or approval card, passing the tool's status, arguments and result as props.

More comparisons

Sources

Read on . If something here no longer matches Tool UI's site, write to hello@pixilui.com and we will fix it.