Microsoft ประกาศเมื่อ 25 กันยายน 2026 ว่าทีม .NET ร่วมกับ CopilotKit พัฒนา AG-UI .NET SDK เพื่อให้บริการ C# สื่อสารกับแอปผ่านโปรโตคอลเดียวกัน และ Microsoft Agent Framework (MAF) เปลี่ยนมาใช้ SDK ชุดนี้แล้ว ข่าวนี้จึงมีสองมุม: ทีมที่ทำ agent ใหม่มีทางเชื่อมต่อเพิ่ม ส่วนทีมที่ใช้ AG-UI ผ่าน MAF อยู่ควรตรวจการย้ายแพ็กเกจและชื่อ API ก่อนอัปเกรด ประกาศต้นทาง

แยกวันที่ให้ชัด: 25 กันยายนคือวันประกาศในบล็อก ส่วน NuGet แสดงว่า AGUI.Client 1.0.0 อัปเดตเมื่อ 17 กันยายน 2026 จึงไม่ใช่แพ็กเกจที่เพิ่งปล่อยเป็นครั้งแรกในวันประกาศ หน้าแพ็กเกจ

สิ่งที่เปลี่ยนสำหรับทีมพัฒนา

AG-UI กำหนดรูปแบบเหตุการณ์ระหว่าง agent กับแอป เช่น เริ่มทำงาน ส่งข้อความทีละส่วน และอัปเดตสถานะ ฝั่ง C# ใช้ AGUI.Server ส่งออกเหตุการณ์ หรือใช้ AGUI.Client รับข้อมูลจาก endpoint ผ่าน IChatClient ได้ โดยไม่จำเป็นต้องใช้ MAF ทุกกรณี รูปแบบข้อมูลระหว่างระบบยังสอดคล้องกับ SDK ฝั่ง TypeScript และ Python ตาม ประกาศของ Microsoft

ผลในเชิงการออกแบบคือ ทีมที่มีหลายหน้าจอสามารถพิจารณาใช้สัญญาการสื่อสารร่วมกัน แทนการออกแบบรูปแบบ stream ใหม่ให้แต่ละแอป แต่ประโยชน์จริงขึ้นกับว่าระบบเดิมมีงานแปลงข้อมูลซ้ำมากเพียงใด นี่เป็นการประเมินของกองบรรณาธิการ ไม่ใช่ผลทดสอบประสิทธิภาพ

แผนภาพแสดงเฉพาะเส้นทางขากลับจาก agent สู่แอป ไม่รวมคำขอเริ่มต้น การเรียกโมเดล และเครื่องมือ เอกสารระบุว่า AGUI.Server แปลง ChatResponseUpdate เป็น events ส่วน AGUI.Formatting ดูแลรูปแบบ stream และ SSE ตัวโปรโตคอลไม่ได้เลือกหน้าตา UI ให้แอป เอกสาร SDK, คำอธิบายสถาปัตยกรรม

ถ้าใช้ MAF อยู่ ต้องตรวจอะไร

บันทึกการย้ายของ MAF ระบุว่าแพ็กเกจ Microsoft.Agents.AI.AGUI ใน repository ถูกนำออก และย้ายส่วนโปรโตคอลไปยัง AGUI.* ส่วน integration สำหรับ ASP.NET Core ยังอยู่ใน Microsoft.Agents.AI.Hosting.AGUI.AspNetCore

จุดที่ใช้เดิมจุดที่ต้องตรวจเมื่อย้าย
Microsoft.Agents.AI.AGUIเลือก AGUI.Client, AGUI.Server และ AGUI.Abstractions ตามส่วนที่ใช้งาน
AddAGUI() / MapAGUI()เปลี่ยนเป็น AddAGUIServer() / MapAGUIServer()
namespace เดียวของ MAFปรับเป็น namespace ของแพ็กเกจ AGUI.* ที่เกี่ยวข้อง
constructor ของ AGUIChatClient แบบส่ง argument ตามตำแหน่งเปลี่ยนไปใช้ options object

ตารางนี้สรุปจาก คู่มือ migration ซึ่งมีตัวอย่างก่อนและหลัง รวมถึงวิธีอ่านคำขอต้นทางด้วย TryGetRunAgentInput อย่าเปลี่ยนชื่อเมธอดอย่างเดียวโดยไม่ตรวจ package references และ namespace ไปพร้อมกัน

แนวทางทดลองที่ควรเริ่มก่อน

ข้อเสนอของกองบรรณาธิการคือ แยก branch สำหรับอัปเกรดและบันทึกเวอร์ชันที่ใช้อยู่ จากนั้นเลือก endpoint ที่มีการใช้งานจริงหนึ่งจุด ทดสอบตั้งแต่ส่งคำขอจนจบ stream รวมกรณียกเลิก เกิดข้อผิดพลาด เรียกเครื่องมือ และอัปเดตสถานะ ถ้าแอปมีขั้นตอนให้คนอนุมัติ ให้ตรวจทั้งการอนุมัติและปฏิเสธด้วย

สำหรับทีมที่ยังไม่มีปัญหาการเชื่อมต่อ agent กับหลายแอป ข่าวนี้เป็นตัวเลือกให้ประเมิน ไม่ใช่เหตุให้รื้อระบบทันที ส่วนทีมที่มี frontend เดิมควรใช้มันเป็นคู่ทดสอบกับ backend ที่อัปเกรด เพื่อให้เห็นพฤติกรรมจริงตลอดเส้นทาง

ข้อจำกัดที่ต้องรู้

SSE กับ Protobuf รองรับไม่เท่ากัน เอกสาร SDK ระบุว่า JSON ผ่าน Server-Sent Events รองรับเหตุการณ์ครบ ส่วน Protobuf รองรับชุดย่อยตาม schema ที่ใช้ร่วมกัน หากต้องการเปลี่ยนรูปแบบรับส่ง ควรตรวจ event ที่ระบบใช้ก่อน ไม่ควรอนุมานว่าเปลี่ยน codec แล้วทุกฟีเจอร์จะเหมือนเดิม รายละเอียด wire formats

สถานะของแต่ละชั้นแยกกัน ตัวอย่าง AgenticUI ของผู้ประกาศระบุ AG-UI SDK เป็น 1.0.0 แบบ stable แต่แพ็กเกจ MAF สำหรับ AG-UI hosting ที่ตัวอย่างใช้ยังเป็น 1.15.0-preview การที่โปรโตคอล SDK เสถียรจึงไม่ได้ยืนยันว่า integration ทุกชั้นพ้น preview แล้ว รายการแพ็กเกจในตัวอย่าง

บทความนี้ตรวจจากประกาศและเอกสารต้นทาง ณ 29 กันยายน 2026 ยังไม่ได้รัน migration กับแอป production และไม่มีตัวเลข benchmark การตัดสินใจอัปเกรดควรอาศัยผลทดสอบของระบบที่ทีมดูแล