1. 简单介绍
AGUI是Agent--User Interaction Protocol的简写,这是一个开放的、轻量的、基于事件的协议,用于标准化 AI Agent 与 用户界面 的实时交互。

A2A - AI Agent 连接到AI Agent
MCP - AI Agent连接到外部工具
AGUI - AI Agent连接用户(through user-facing applications)
微软的Microsoft Agent Framework(简称MAF)也支持AGUI的。之前存在这两个nuget package,
Microsoft.Agents.AI.Hosting.AGUI.AspNetCore
Microsoft.Agents.AI.AGUI
最近CopilotKit 和微软.NET team合作发布了一个.NET SDK for AG-UI ,这个是项目地址。Microsoft Agent Framework for .NET也基于这个SDK进行了调整。
这个.NET SDK for AG-UI拥有5个nuget package,如下图所示,

对于之前有使用到AGUI的.NET应用程序,总体变化不大,不过有一些API的名字有变化了,

这边将简单尝试创建一下AGUIServer和AGUIClient(基于.NET SDK for AG-UI)。
2. 创建AGUIServer
在Visual Studio Insiders中创建一个基于.NET 11的ASP.NET Core Web API项目,
- 添加Microsoft.Agents.AI.Hosting.AGUI.AspNetCore nuget package,如下图所示,

Microsoft.Agents.AI.Hosting.AGUI.AspNetCore nuget package的依赖项确实更新成了新版的AG-UI C# SDK了。

2)这边使用的AI大模型是DeepSeek,需要准备好DeepSeek的相关token和endpoint信息,将这些信息配置到appsettings.json文件中,

note, 之前还可以使用GitHub Models,不过GitHub Models已经在2026/7/30退役了。
-
编写AGUI Server代码如下,
builder.Services.AddAGUIServer();
var app = builder.Build();
AIAgent agent = chatClientDI.AsAIAgent(
name: "AGUIGeoAndHistoryAssist",
instructions: "You are a professor major in Geography and history.");
app.MapAGUIServer("/", agent);
app.Run();
之前配置AGUIServer的用法是AddAGUI(), MapAGUI()。当前变成了AddAGUIServer(), MapAGUIServer()。
3. 创建AGUIClient
-
添加一个.NET11 Console项目。
-
在项目中添加AGUI.Client nuget package,

-
编写AGUIClient代码如下,
using HttpClient httpClient = new() { BaseAddress = new Uri(serverUrl) };
AGUIChatClient chatClient = new(new AGUIChatClientOptions(httpClient, "/"));AIAgent agent = chatClient.AsAIAgent();
AgentSession session = await agent.CreateSessionAsync();List
firstTurnUpdates = [];
await foreach (AgentResponseUpdate update in agent.RunStreamingAsync("为什么东方各国没有发现澳洲大陆? 请非常简短地列出三个主要原因,谢谢!", session))
{
firstTurnUpdates.Add(update);
foreach (TextContent text in update.Contents.OfType())
{
Console.Write(text.Text);
}
}
之前实例化AGUIChatClient方式是,
AGUIChatClient chatClient = new(httpClient, serverUrl);
当前已经改成了,
var chatClient = new AGUIChatClient(new(httpClient, serverUrl));
4. 运行一下
4.1 启动AGUIServer
使用dotnet run命令启动AGUIServer的WebApi项目,

4.2 启动AGUIClient
使用dotnet run命令启动AGUIClient的Console项目,AGUIClient会连接AGUIServer endpoint,DeepSeek大模型最后能够给出如下答复,

note, 用户向AGUIClient发送请求,AGUIClient将请求转给AGUIServer endpoint,endpoint继续交付给后面的AI Agent去执行。AI Agent从大模型得到的结果会以AGUI events over SSE的形式传给AGUIClient的。
5.总结
本文简单尝试了一下基于.NET SDK for AG-UI的AGUIServer和AGUIClient。创建的项目都是基于.NET11的。微软在2026年9月8号发布了.NET11 RC1,同时.NET Conf 2026大会将会在2026年11月份举办(11/10-11/13),到时NET11将会General available。关于AGUIServer和AGUIClient,也可以参考一下微软提供的这张图,

本文如果哪里有错误,麻烦告之,谢谢谢谢!