# Microsoft Agent Framework: Framework for Multi-Agent Systems
Microsoft has introduced Agent Framework — an open-source framework for building agentic applications, including multi-agent architectures. It's an evolution of Semantic Kernel and successor to AutoGen. The framework enables building agent graphs with parallel and sequential task execution from a shared request pool.
Key Features of the Framework
Agent Framework is designed for lightweight development. Agents integrate with tools like web search and are organized into workflows. It supports handoff orchestration: one agent hands off control to another based on conditions, returning control upon completion.
Key features:
- Agent Graphs: sequential and parallel execution.
- Tool Integration: AIFunctionFactory for connecting external APIs.
- Memory and State: SQLite support for storing context.
- Events: event emission for workflow monitoring.
The framework is suitable for edge devices: tests show it running on Raspberry Pi 3B with a Telegram bot, SQLite memory, and five agents without noticeable lags.
Creating an Agent with Tools
The agent is configured via ChatClientAgent. Example for a researcher agent with web search:
var researcher = new ChatClientAgent(chatClient,
new ChatClientAgentOptions
{
Name = "Researcher",
Description = "Web search, real-time information, weather, news, and general knowledge.",
ChatOptions = new ChatOptions
{
Instructions = "Search the web for any real-time information",
Tools = [ AIFunctionFactory.Create(webSearchTools.Search),]
}
});
Here, the agent receives instructions and tools for handling requests for up-to-date information.
Orchestration via Handoff
For multi-agent workflows, AgentWorkflowBuilder is used. The triage agent distributes tasks, and handoff defines transitions.
var workflow = AgentWorkflowBuilder
.CreateHandoffBuilderWith(triage)
.WithHandoffs(triage, [clerk, archivist, secretary, researcher])
.WithHandoff(researcher, triage, "Hand back to Triage when done or if the request is not about search/information.")
.WithHandoff(...)
.EmitAgentResponseEvents(true)
.Build();
This approach minimizes complexity: each agent focuses on its role, handing back control to triage for irrelevant requests.
Practical Application
The framework has been tested in a home AI assistant scenario:
- Interface via Telegram bot.
- Memory on SQLite for preserving context.
- Five agents: triage, clerk, archivist, secretary, researcher.
- Deployment on Raspberry Pi 3B — stable operation without overload.
This configuration demonstrates scalability for IoT and low-resource environments.
Key Takeaways
- Agent Framework evolves Semantic Kernel by adding native multi-agent support.
- The handoff mechanism simplifies orchestration without custom code.
- Lightweight: full multi-agent stack on ARM devices like Raspberry Pi.
- Open source for customizing tools and workflows.
- Event emission for integration with observability systems.
— Editorial Team
No comments yet.