跳至主要内容

子代理清單

當主 Agent 透過 Agent 工具派出子代理時,SDK 會把每個子代理累積成一份停靠面板, 顯示其狀態(進行中/完成/失敗/取消)與它自己呼叫的子工具。

子代理清單

當主 Agent 透過 Agent 工具派出子代理時,SDK 會把每個子代理累積成一份停靠面板,顯示其狀態(進行中/完成/失敗/取消)與它自己呼叫的子工具。子代理的狀態由 subagent.start / complete 事件驅動,而非 Agent 工具本身的完成。

// 停靠面板自動出現,可用 locale 本地化
<Chatbot
  locale="zh-TW"
  config={{ botProviderEndpoint: '...' }}
  customChannelId="my-channel"
/>

Agent 工具與所有子工具(帶 parentToolUseId)都會從主工具呼叫群組移出,改由停靠的子代理面板呈現。文字可用 locale prop 本地化。

聊天機器人載入中…

運作方式

  • 子代理的狀態由 asgard.subagent.start / .complete 事件驅動,不是Agent 工具本身的完成決定 —— 非同步子代理常常在自己還在執行時,Agent 工具就已提早完成。
  • 關聯鍵是 parentToolUseId(即派生它的 Agent 工具呼叫的 toolUseId)。
  • Agent 工具與所有子工具(帶 parentToolUseId)都會從主工具呼叫群組移出,改由停靠的 <SubagentList> 面板呈現;面板文字依 locale prop 本地化。

Headless 用法

不使用 <Chatbot> 時,可用 useSubagents(channel) hook 取得 Subagent[] 自行渲染; 框架無關的底層是 @asgard-js/corederiveSubagents(conversation)。詳見 Headless 模式

也看看