Files
MujicaUI/docs/components/262-tool-call-group.md
T

1.4 KiB

262 ToolCallGroup 工具调用组

用途

把连续的工具调用折叠成一组,标题行显示调用次数、总耗时与失败数。

最小示例

open := false
calls := []mujica.ToolCall{
	{ID: "a", Name: "list_dir", State: mujica.AgentDone, Duration: 300 * time.Millisecond},
	{ID: "b", Name: "read_file", State: mujica.AgentFailed, Error: "not found"},
}
view := func(c *ui.Context) {
	mujica.Use(c, mujica.Settings{})
	mujica.ToolCallGroup(c, &open, calls, mujica.ToolCallGroupOptions{})
}
ui.Render(view, 400, 300, 1)

签名:func ToolCallGroup(c *ui.Context, open *bool, calls []ToolCall, opts ToolCallGroupOptions) ChoiceResult。open 为 nil、调用 ID 为空或重复时 panic。

参数

字段 类型 默认值 含义
Title string “N 次工具调用” 替换内置标题。
Still bool false 停止执行中动画;系统减少动画时也自动静止。

状态

  • 组的状态:有调用执行中为执行中,否则有失败为失败,否则为完成。
  • 失败数以文字“N 次失败”显示。
  • 展开后每次调用用 ToolCallCard 显示。

事件

  • Changed():用户展开或折叠该组。

键盘操作

  • Tab 到组标题,Enter / Space 展开或折叠;组内卡片各自可折叠。

限制

  • 总耗时是各调用耗时之和,不扣除并行重叠。