Jacob Alber 39e071c430 .NET: Update Workflow Input/Output Redesign (#881)
* feat: Make Executor id field mandatory

When checkpointing is involved, it is critical to keep executor ids consistent between runs, even when recreating a new object tree for the workflow.

The default id-setting mechanism generated a guid for part of the id, making it not work when restoring from a checkpoint.

This change prevents this situation from arising.

* feat: Enable running untyped Workflows

With the change to enable delay-instantiation of executors and support for async Executor factory methods, we must instantiate the starting executor to know what are the valid input types for the workflow.

To avoid forcing instantiation every time, and to better support workflows with multiple input types, we enable support for build and interacting with the base Workflow type without type annotations, and remove the requirement to know a valid input type when initiating a run.

* feat: Support Output from any executor and multiple outputs.
39e071c430 · 2025-09-25 02:03:22 +00:00
397 Commits
2025-09-23 15:10:06 +00:00
2025-04-28 12:54:43 -07:00
2025-04-28 12:54:42 -07:00
2025-09-02 12:18:12 +00:00

Microsoft Agent Framework

Welcome to the Private Preview of Agent Framework!

You're getting early access to Microsoft's comprehensive multi-language framework for building, orchestrating, and deploying AI agents with support for both .NET and Python implementations. This framework provides everything from simple chat agents to complex multi-agent workflows with graph-based orchestration.

📋 Important Setup Information

Package Availability: Public PyPI and NuGet packages are not yet available. You have two options:

Option 1: Run samples directly from this repository (no package installation needed)

  • Clone this repository
  • For .NET: Run samples with dotnet run from any sample directory (e.g., dotnet/samples/GettingStarted/Agents/Agent_Step01_Running)
  • For Python: Run samples from any sample directory (e.g., python/samples/getting_started/minimal_sample.py) after setting up the local dev environment following this guide.

Option 2: Install packages in your own project

Stay Updated: This is an active project - sync your local repository regularly to get the latest updates.

💬 We want your feedback!

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%