Reasoning

Collapsible disclosure for a model's reasoning: pulsing Thinking… while live, Thought for 4s when done.

// Plain markup
import { Reasoning } from "@shavin/ui";

Thinking

Comparing the refund clause with the order date…
Component Source
<Reasoning status="thinking">Comparing the refund clause with the order date…</Reasoning>

Done

Component Source
<Reasoning status="done" duration="4s">The order was placed 12 days ago, inside the 30 day window.</Reasoning>

Props

PropTypeDefaultDescription
childrenReact.ReactNode—The model's thinking text.
status"thinking" | "done"withthinking: live, open by default with a pulsing mark. done: collapsed summary. Default "done".
durationstring—Elapsed time shown when done, e.g. "4s".
labelstring—Override the trigger label.
defaultOpenboolean—Initial open state when uncontrolled. Defaults to open while thinking, closed when done.
openboolean—Controlled open state.
onOpenChange(open: boolean) => void——
Configure Theme
Theme
Accent Color
Custom
Gray Family
Appearance
Radius
Scaling
Panel Style
Heading Font
Body Font