@assistant-ui/react-ag-ui
AG- UI 协议 合并 @assistant-ui/react组合 @ag-ui/client 助理- ui 运行时间中的代理, 因此任何 AG- UI 兼容后端( Copilot Kit,自定义 Python/ Go/ TS 代理) 可以驱动标准助理- ui 组件 .
安装
npm install @assistant-ui/react @assistant-ui/react-ag-ui @ag-ui/client@^1.0.3
使用量
"use client";
import { useMemo } from "react";
import { AssistantRuntimeProvider } from "@assistant-ui/react";
import { HttpAgent } from "@ag-ui/client";
import { useAgUiRuntime } from "@assistant-ui/react-ag-ui";
export function Provider({ children }: { children: React.ReactNode }) {
const agent = useMemo(
() => new HttpAgent({ url: process.env.NEXT_PUBLIC_AGUI_AGENT_URL! }),
[],
);
const runtime = useAgUiRuntime({ agent });
return (
<AssistantRuntimeProvider runtime={runtime}>
{children}
</AssistantRuntimeProvider>
);
}
副剂
AG- UI 后端, 运行子代理( 代理工具模式) 释放 SUBAGENT_STARTED 编号 : SUBAGENT_FINISHED 编号 : SUBAGENT_ERROR 加一个 subagentRunId 每个副剂所产生的事件。 这个适配器组将每个子剂运行一个嵌入式助理消息, 并将其附加到产卵工具呼叫中 ToolCallMessagePart.messages添加到 SUBAGENT_STARTED.parentToolCallId。 。 。 . PartPrimitive.Messages 使它没有额外的接线, 和子代理的名称,描述,结果, 错误代码骑在消息的 agui 元数据.
一种无可达到的产卵呼号的子剂(parentToolCallId 是可选的, 可能给此运行命名从未见过的呼叫, 或两个运行可能互相命名) 无处可居, 因此其输出在母线程中而不是被丢弃 。 这符合协议本身的预放相容性中间器件的降级.
子代理前端执行工具的调用方式与根代理的调用方式相同: 调用嵌入 ToolCallMessagePart.messages 可达到 getPendingToolCalls(),解决 addToolResult,其结果在简历中作为 tool 在产卵助理记录上, 同样的平整的线形 这些电话在亚物剂归属之前.
批准门也覆盖了嵌入式呼叫:一个门,将一个子剂扫描的呼叫项目命名到嵌入式部分,前端工具在闸门打开时未执行,决定记录通过 respondToToolApproval 降落在被窝中的部分,一个未决定的大门的结果从未被出口到后端.
有两个限制值得你先知道 然后再依赖这个:
-
嵌入式结构无法活过重载. 线条还原读取了平平的线形,所以一个被还原的子剂活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活 成果和决定得到保留;只有筑巢才没有.
-
被窝住的人没有被窃听. A 类
SUBAGENT_FINISHED带有suspended结果标记了嵌入式信息requires-action,以及interruptIds保存在信件元数据上,但是还没有恢复路径来回答它们.
另见
@assistant-ui/react-a2aa2A v1.0 协议.@assistant-ui/react-langgraph给LangGraph SDK探员.
完整的 API 参考、多行设置和中断处理 助理-ui.com/docs/运行时间/ag-ui。见 examples/with-ag-ui 一个完整的应用程序.