easeUI

Reasoning Disclosure

A model's reasoning, shimmering "Thinking" while it streams and folding into "Thought for 8s" once the answer starts. Reopen it any time.

Installation

$ bunx --bun shadcn add @easeui/reasoning-disclosure

API reference

PropTypeDefaultDescription
status"thinking" | "done"-"thinking" while the model reasons, "done" once the answer starts.
childrenReactNode-The reasoning text so far. Append to it as it streams.
duration?number-Seconds spent thinking, shown once done. Leave it out and the component times it.
open?boolean-Controlled open state.
defaultOpen?booleantrueStarting open state when uncontrolled. Default true, so the reasoning shows while it streams.
onOpenChange?((open: boolean) => void)--
collapseOnDone?booleantrueFolds the reasoning away once status turns "done", unless someone opened or closed it by hand. Default true.
thinkingLabel?stringThinkingHeader text while thinking. Default "Thinking".
className?string--