ToolUseBarThink 深度思考
ToolUseBarThink 是一个独立的「深度思考」展示组件,用于在 Agent 对话流中呈现长链路思考过程(thinking)。它与 ToolUseBar 同属工具调用展示族,但拥有独立的样式与交互:
- 默认展开收起 + Loading 浮动展开按钮
- 内容超长(默认 200px 高度)时支持二级展开 / 收起
- 提供
light轻量模式,与文本流内嵌呈现
何时使用
- 智能体执行较长推理 / 思考过程,需要对外呈现思考摘要或流式
thinkContent - 思考过程为「展示用」,与具体工具调用解耦时(不需要
ToolUseBar的工具列表概念) - 希望在对话流中以一个独立卡片单独展示「正在思考 / 思考完成」状态
代码演示
API
ToolUseBarThinkProps
ToolUseBarThinkClassNames
按区域提供 classNames,可只覆盖局部:
ToolUseBarThinkStyles
styles 与 classNames 字段一一对应,类型为 React.CSSProperties,用法相同。
行为说明
- Loading 自动展开:当
status === 'loading'时,组件会自动将expanded置为true,便于用户实时看到流式输出的思考内容。 - 二级展开:当
thinkContent高度超过 200px 时,会在底部显示「展开 / 收起」按钮,避免长思考占据过多版面。 - 浮动展开按钮:仅在
status === 'loading'且非light模式下展示;用于在收起状态下也能临时窥视实时内容。floatingExpanded/defaultFloatingExpanded控制其状态。 - Light 模式:
light={true}时使用更紧凑的样式(无独立图标容器、悬浮时切换 chevron),适合行内嵌入。 - 可控 / 非可控:
expanded/floatingExpanded同时支持受控与非受控,未传值时使用defaultExpanded/defaultFloatingExpanded作为初始值。
