Jacob Alber 738866f4fe Aggregate ChatMessages from AgentRunUpdates before forwarding (#515)
The current implementation of AIAgentHostExecutor unwraps every incoming AgentRunResponseUpdate into a separate ChatMessage, amplifying the number of ChatMessages are actually generated, and yielding multiple messages with the same MessageId.

The fix is to aggregate by MesageId, with the expectation that agents do not interleave messages with differing ids, thus every new MessageId indicates a new ChatMessage and never an old one.
738866f4fe · 2025-08-27 22:32:27 +00:00
221 Commits
2025-04-28 12:54:43 -07:00
2025-08-21 17:18:02 +00:00
2025-04-28 12:54:42 -07:00
2025-04-28 12:54:43 -07:00

Microsoft Agent Framework

Highlights

  • Flexible Agent Framework: build, orchestrate, and deploy AI agents and workflows
  • Multi-Agent Orchestration: group chat, sequential, concurrent, and handoff patterns
  • Graph-based Workflows: connect agents and deterministic functions using data flows with streaming, checkpointing, time-travel, and Human-in-the-loop.
  • Plugin Ecosystem: extend with native functions, OpenAPI, Model Context Protocol (MCP), and more
  • LLM Support: OpenAI, Azure OpenAI, Azure AI Foundry, and more
  • Runtime Support: in-process and distributed agent execution
  • Multimodal: text, vision, and function calling
  • Cross-Platform: .NET and Python implementations

Below are the basics for each language implementation. For more details on python see here and for .NET see here.

More Examples & Samples

Python

.Net

Agent Framework Documentation

Languages
Python 50.9%
C# 45.8%
TypeScript 2.7%
HTML 0.2%
PowerShell 0.1%
Other 0.1%