Components
Render assistant reasoning in a collapsible row. State-driven (thinking shimmer / thought static). Self-contained port from 21st.dev Agent Elements with React-only collapsible (no @base-ui/react) and inline shimmer keyframes.
npx shadcn@latest add https://21st.dev/r/21stdev/thinking-toolLoading preview...
import { ThinkingTool } from "@/components/ui/thinking-tool";
export default function Demo() {
return (
<div className="flex items-center justify-center w-full min-h-screen bg-background p-8 overflow-hidden">
<div className="w-fit">
<ThinkingTool
state="thought"
content="Reviewing component coverage and preview density."
defaultOpen={false}
/>
</div>
</div>
);
}
Loading preview...