* WIP * Wip * Updated ADR * Updated ADR * Update files * Address copilot comments * Update filters from Task<T> to Task only * Project endpoint * Add agent ctor filter * Other Agent Framework investigation * Remove SK Java, no support * Update LlamaIndex info * Removing unrelated files * Implementation with specialization * Remove the specialization option as extra unecessary complexity * Move middleware responsibility to a decorator * Update readme * Function invocation wip * Add Agent Builder * Adding comparison samples * Reorganize Samples and Processor vs Decorator * Remove merge files * Address formating warnigs * Update ADR * Step13 README's update * Address PR feedback * Address PR feedback * Remove configure await from ADR samples * Update variables * Address feedback * Address Agent level tool invocation with Options.ToolsTransformer strategy * Removing the Processor approach * Proposal design for Middleware in CreateAIAgent extensions * Examples clean up and consolitation * Update middlewares to work with ApprovalREquiredFunction * Clean-up sample * Update override function call sample * Drop configuration from the extensions, looks overkill * Builder interface .. * Revert IAIBuilder interface approach * Cleanup sample * Adding unit tests * Fix UT * Cleanup sample * Remove unneeded dependency * Address PR comment + Readme Samples * Add missing comments for Program.cs Middleware * Address mor PR comments + add client factory for OpenAI extensions * Add OpenAI UnitTests for extensions * Add AzureAI PersistentChatClient UT * Addess feedback * Add function invoking UT * Add builder extension UT * Address feedback + Rearange abstractions + UT fixes * Drop context based middleware for full decorating impl * Update unit tests * Update UT coverage * Removing Middelware namespace * Add missing UT * Remove internal ToolTransformation Property * Adjust xmldoc * Remove transient file * Address merge conflict * Add xmldoc remark for clarity * Address comment * Address feedback * Update UT --------- Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
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 runfrom 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
- .NET Getting Started Guide - Instructions for using nightly packages
- Python Package Installation Guide - Install packages directly from GitHub
Stay Updated: This is an active project - sync your local repository regularly to get the latest updates.
💬 We want your feedback!
- For bugs, please file a GitHub issue.
- For feedback and suggestions for the team, please fill out this survey.
✨ 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
- Getting Started with Agents: basic agent creation and tool usage
- Chat Client Examples: direct chat client usage patterns
- Azure Integration: Azure OpenAI and AI Foundry integration
- Getting Started with Workflows: basic workflow creation and integration with agents
.NET
- Getting Started with Agents: basic agent creation and tool usage
- Agent Provider Samples: samples showing different agent providers
- Orchestration Samples: advanced multi-agent patterns
Agent Framework Documentation
- Python documentation
- DotNet documentation
- Agent Framework Repository
- Design Documents
- Architectural Decision Records
- Learn docs are coming soon.