# https://github.com/microsoft/autogen Project Manual

Generated at: 2026-06-22 08:35:06 UTC

## Table of Contents

- [Framework Overview and Layered Architecture](#page-1)
- [Core API: Agent Runtime, Messaging, and Distribution](#page-2)
- [AgentChat: Multi-Agent Orchestration Patterns](#page-3)
- [Extensions, Tools, Models, and Developer Tooling](#page-4)

<a id='page-1'></a>

## Framework Overview and Layered Architecture

### Related Pages

Related topics: [Core API: Agent Runtime, Messaging, and Distribution](#page-2), [AgentChat: Multi-Agent Orchestration Patterns](#page-3), [Extensions, Tools, Models, and Developer Tooling](#page-4)

<details>
<summary>Related Source Files</summary>

The following source files were used to generate this page:

- [README.md](https://github.com/microsoft/autogen/blob/main/README.md)
- [python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md)
- [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md)
- [python/packages/autogen-agentchat/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)
- [python/packages/autogen-studio/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/README.md)
- [python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md)
- [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)
- [dotnet/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/README.md)
- [dotnet/src/AutoGen.SourceGenerator/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/src/AutoGen.SourceGenerator/README.md)
- [dotnet/samples/dev-team/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/samples/dev-team/README.md)
</details>

# Framework Overview and Layered Architecture

## 1. Purpose and Scope

AutoGen is a framework for building multi-agent AI applications in which agents can act autonomously or collaborate with humans. The project exposes both a Python implementation and a .NET implementation, plus a web-based prototyping environment called AutoGen Studio. According to the top-level [README.md](https://github.com/microsoft/autogen/blob/main/README.md), the framework is now in **maintenance mode** and new users are directed to Microsoft Agent Framework for production work, but AutoGen itself remains community-managed and the existing code base continues to be the reference for current multi-agent patterns.

The framework is structured as a stack of clearly scoped packages. The top-level [README.md](https://github.com/microsoft/autogen/blob/main/README.md) links to a Python monorepo, a .NET solution, and AutoGen Studio as three parallel entry points. Inside the Python monorepo, the [python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md) describes a single `uv` workspace that bundles four packages: `autogen-core`, `autogen-agentchat`, `autogen-ext`, and `autogen-studio`. Each layer has a distinct audience and responsibility, which is what this page documents.

## 2. The Layered Architecture

The following diagram summarises how the packages relate. The arrows show the direction of dependency: higher-level packages depend on lower-level ones, while extensions plug into the core.

```mermaid
graph TD
    Studio[autogen-studio<br/>Web IDE]
    Chat[autogen-agentchat<br/>High-level APIs]
    Ext[autogen-ext<br/>Model/Tool/Memory integrations]
    Core[autogen-core<br/>Runtime, Actor model, Tools, Tracing]
    Net[Microsoft.AutoGen.*<br/>Event-driven .NET runtime]

    Studio --> Chat
    Chat --> Core
    Ext --> Core
    Net --> Core
```

### 2.1 Core Layer — `autogen-core`

The core layer defines the agent runtime, the model and tool interfaces, the workbench abstraction, memory primitives, and tracing. As stated in [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md), the core is "an easy way to quickly build event-driven, distributed, scalable, resilient AI agent systems" using the [Actor model](https://en.wikipedia.org/wiki/Actor_model). An application can be developed and run locally, and then moved to a distributed deployment in the cloud without rewriting the agents. Concrete components visible in the source include the `StaticWorkbench`, which maintains a tool registry, supports per-tool `ToolOverride` records for renaming and re-describing tools, and validates that override names do not collide with existing tool names — see [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py). This component is illustrative of how the core layer exposes low-level building blocks with no opinions about LLM providers or conversation topology.

### 2.2 AgentChat Layer — `autogen-agentchat`

The AgentChat layer is positioned as the recommended starting point for most users. According to [python/packages/autogen-agentchat/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md), it is "a high-level API for building multi-agent applications" built on top of `autogen-core`. It provides intuitive defaults such as pre-configured **Agents** and **Teams** that follow predefined [multi-agent design patterns](https://microsoft.github.io/autogen/stable/user-guide/core-user-guide/design-patterns/intro.html). The same README clarifies the division of labour: beginners should start with AgentChat, while advanced users who need to override the default event-driven programming model should drop down to `autogen-core` directly. This split lets the framework serve both quick prototyping and fine-grained control without forcing a single style of usage.

### 2.3 Extensions Layer — `autogen-ext`

Extensions sit alongside the core and provide concrete integrations with external systems. The Python workspace description in [python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md) lists `autogen-ext` as the package that holds, for example, the OpenAI model client (`autogen-ext[openai]`). Experimental work lives here too, including the task-centric memory subsystem documented in [python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md), which stores text insights tied to tasks, generates embedding-based topic indices, and exposes a `MemoryController` for retrieval, validation, and direct read/write access. Extensions deliberately stay out of the core so that new providers, memory backends, or governance primitives (such as the cryptographic governance and cross-agent shared memory proposals raised in the community) can be added without touching the runtime contract.

### 2.4 Studio Layer — `autogen-studio`

AutoGen Studio is a research-prototype web application that wraps the AgentChat and core layers. As described in [python/packages/autogen-studio/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/README.md), it lets users "rapidly prototype AI agents, enhance them with skills, compose them into workflows and interact with them to accomplish tasks." The package documentation explicitly warns that Studio "is not meant to be a production-ready app" and that developers should build their own applications on the AutoGen framework for authentication and security. The frontend, documented in [python/packages/autogen-studio/frontend/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/frontend/README.md), is a Gatsby site that talks to a backend on `http://localhost:8081/api` via the `GATSBY_API_URL` environment variable, and is therefore a thin presentation layer over the Python services.

## 3. The .NET Track

The .NET implementation mirrors the layered design using a different package naming convention. The [dotnet/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/README.md) distinguishes two generations: the older `AutoGen.*` packages derived from AutoGen 0.2 (gradually being deprecated) and the newer `Microsoft.AutoGen.*` packages that adopt the same event-driven model as the Python core. The newer track is explicitly marked as "not yet stable" and points new users at the `Hello` sample. A separate source generator package, [dotnet/src/AutoGen.SourceGenerator/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/src/AutoGen.SourceGenerator/README.md), adds type-safe function definitions by emitting code for methods annotated with the `[Function]` attribute, demonstrating the same "lower layer produces building blocks, higher layer composes them" philosophy found in the Python stack.

The .NET runtime is also where event-driven multi-agent examples are most visible. The dev-team sample in [dotnet/samples/dev-team/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/samples/dev-team/README.md) describes a workflow in which a Product Manager agent, a Developer Lead agent, and individual Developer agents exchange events such as `NewAsk`, `ReadmeRequested`, and `ReadmeGenerated` to drive a software project. The accompanying Mermaid graph in that README shows how a central "Hubber" component fans work out to the specialised agents and then collects their outputs. This is the concrete shape that the "distributed, event-driven" claims in [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md) take in a real application.

## 4. Cross-Cutting Themes and Community Concerns

Several community proposals and questions map directly onto the layered architecture. Distributed-runtime concerns — such as backpressure contracts ([issue #7321](https://github.com/microsoft/autogen/issues/7321)), cryptographic governance for cross-agent messages ([issue #7372](https://github.com/microsoft/autogen/issues/7372)), and on-demand cross-agent memory recall ([issue #7748](https://github.com/microsoft/autogen/issues/7748)) — all target the `autogen-core` runtime layer, because that is where the actor model, message routing, and memory primitives live. Reliability patterns discussed in [issue #7265](https://github.com/microsoft/autogen/issues/7265) and the memory design in [issue #4564](https://github.com/microsoft/autogen/issues/4564) align with the experimental task-centric memory that the extensions layer already provides. The "mission keeper" role requested in [issue #7487](https://github.com/microsoft/autogen/issues/7487) is a higher-level pattern that would naturally be expressed in the AgentChat layer as a custom team component, and language-port proposals for TypeScript ([issue #236](https://github.com/microsoft/autogen/issues/236)), .NET ([issue #48](https://github.com/microsoft/autogen/issues/48)), and Go/Rust ([issue #1700](https://github.com/microsoft/autogen/issues/1700)) would all sit alongside the existing Python and .NET tracks rather than inside them.

## See Also

- [Core Runtime and Actor Model](https://microsoft.github.io/autogen/stable/user-guide/core-user-guide/index.html)
- [AgentChat High-Level API](https://microsoft.github.io/autogen/stable/user-guide/agentchat-user-guide/index.html)
- [AutoGen Studio Usage](https://microsoft.github.io/autogen/stable/user-guide/autogenstudio-user-guide/usage.html)
- [AutoGen for .NET Tutorial](https://microsoft.github.io/autogen/dotnet/dev/core/tutorial.html)
- [Migration Guide (AutoGen v0.2 → AgentChat)](https://microsoft.github.io/autogen/stable/user-guide/agentchat-user-guide/migration-guide.html)

---

<a id='page-2'></a>

## Core API: Agent Runtime, Messaging, and Distribution

### Related Pages

Related topics: [Framework Overview and Layered Architecture](#page-1), [AgentChat: Multi-Agent Orchestration Patterns](#page-3)

<details>
<summary>Related Source Files</summary>

The following source files were used to generate this page:

- [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md)
- [python/packages/autogen-core/src/autogen_core/_subscription.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_subscription.py)
- [python/packages/autogen-core/src/autogen_core/_closure_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_closure_agent.py)
- [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)
- [python/samples/core_semantic_router/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_semantic_router/README.md)
- [python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md)
- [README.md](https://github.com/microsoft/autogen/blob/main/README.md)
</details>

# Core API: Agent Runtime, Messaging, and Distribution

## Overview and Purpose

The Core API — implemented in the `autogen-core` package — is the foundation layer of AutoGen. It provides an event-driven, distributed, and scalable runtime for AI agents built on the Actor model, and it is the layer on which the higher-level `autogen-agentchat` workflows are constructed. As stated in the package readme, AutoGen Core "offers an easy way to quickly build event-driven, distributed, scalable, resilient AI agent systems… You can build and run your agent system locally and easily move to a distributed system in the cloud when you are ready." Source: [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md).

The Core API is the recommended starting point for advanced users who need explicit control over the actor lifecycle, pub/sub semantics, and cross-process message delivery, while `autogen-agentchat` provides intuitive defaults for typical multi-agent scenarios. Source: [python/packages/autogen-agentchat/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md).

> [!CAUTION]
> The repository's top-level readme states that AutoGen is now in **maintenance mode** and directs new users to Microsoft Agent Framework. Existing AutoGen users continue to rely on the Core API described here. Source: [README.md](https://github.com/microsoft/autogen/blob/main/README.md).

## Agent Identity, Topics, and Subscriptions

Every agent in the Core runtime is identified by an `AgentId` and bound to one or more `TopicId` values through a `Subscription`. The `Subscription` protocol defines the contract that decouples message publication from message delivery:

```python
@runtime_checkable
class Subscription(Protocol):
    @property
    def id(self) -> str: ...
    def is_match(self, topic_id: TopicId) -> bool: ...
    def map_to_agent(self, topic_id: TopicId) -> AgentId: ...
```

Source: [python/packages/autogen-core/src/autogen_core/_subscription.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_subscription.py).

This three-method contract lets the runtime route a published `TopicId` to the correct `AgentId` without the publisher needing to know which agent (or which physical host) will actually process the message. The `is_match` predicate is consulted first; only if it returns `True` does the runtime call `map_to_agent`, which may raise `CantHandleException` when the subscription cannot deliver the topic. Equality between subscriptions is defined in terms of the unique `id`, so the same logical subscription can be re-registered safely. Source: [python/packages/autogen-core/src/autogen_core/_subscription.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_subscription.py).

For quick prototyping, the `ClosureAgent` helper inspects a Python coroutine signature to derive the handled message type and the return type at registration time. The helper `get_handled_types_from_closure` enforces a fixed three-argument shape (agent, message, context) and reads type hints to populate the subscription, so developers do not have to declare message contracts by hand. Source: [python/packages/autogen-core/src/autogen_core/_closure_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_closure_agent.py).

## The Agent Runtime and Distribution Model

The `AgentRuntime` is the host process that owns the pub/sub message bus, manages the actor lifecycle, and schedules message handlers. Agents register with a type, an instantiation context (`AgentInstantiationContext`), and optional subscriptions, after which the runtime is responsible for delivering each `MessageContext` to the right actor. Source: [python/packages/autogen-core/src/autogen_core/_closure_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_closure_agent.py).

Distribution is achieved by running multiple `AgentRuntime` instances and connecting them so that a topic published on one host can be delivered to an agent registered on another. The `core_semantic_router` sample demonstrates a three-tier deployment:

| Component | Responsibility |
| --- | --- |
| Agent host runtime | Manages the eventing engine and pub/sub message system. |
| Worker runtime | Owns the lifecycle of distributed agents, including the semantic router. |
| User proxy | Manages the user interface and the user interactions with the agents. |

Source: [python/samples/core_semantic_router/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_semantic_router/README.md).

The sample shows that agents (for example, an "HR" agent and a "Finance" agent) are independently deployable, while a "semantic router" agent classifies user intent and routes the session to the most appropriate agent. The same code path supports both local in-process execution and cross-host delivery, which is the central claim of the Core API. Source: [python/samples/core_semantic_router/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_semantic_router/README.md).

## Cancellation, Tools, and Extension Surfaces

Message handlers are coroutines that accept a `CancellationToken`; the runtime cooperatively cancels in-flight handlers, which is essential for backpressure and shutdown in long-running multi-agent systems. Source: [python/packages/autogen-core/src/autogen_core/_closure_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_closure_agent.py).

Tool use is exposed through workbenches. The `StaticWorkbench` ships a fixed set of `BaseTool` instances and supports per-tool `ToolOverride` entries that let a host rename or re-describe a tool for downstream agents without modifying the tool itself. Override names are validated against existing tool names and against other override names to keep the public surface unambiguous. Source: [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py).

The Python workspace is structured as a single `uv` workspace: `autogen-core` (runtime, model, tool, workbench, memory, tracing interfaces), `autogen-agentchat` (single- and multi-agent workflows), `autogen-ext` (ecosystem integrations such as `autogen-ext[openai]`), and `autogen-studio` (a web-based IDE). Source: [python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md).

## Community Context: Reliability Gaps and Open Proposals

The Core API exposes powerful primitives, but several community discussions highlight production gaps that the runtime does not yet solve on its own. A "Backpressure contract declarations for multi-agent coordination" proposal notes that agents that coordinate through message passing have no first-class way to express capacity constraints, which can cause cascading failures when downstream agents are saturated (see [issue #7321](https://github.com/microsoft/autogen/issues/7321)). A "Cryptographic governance layer for AutoGen distributed agent runtime" proposal argues that the distributed runtime lacks cryptographic identity and authority enforcement between agents (see [issue #7372](https://github.com/microsoft/autogen/issues/7372)). A "Memory Proposal" sketches a distributed multi-layer memory model built on top of the event-based actor model (see [issue #4564](https://github.com/microsoft/autogen/issues/4564)). Finally, a "Practical reliability patterns for multi-agent production" question asks for eval loops, rollback, and deterministic feedback patterns that survive real traffic (see [issue #7265](https://github.com/microsoft/autogen/issues/7265)). These proposals are not implemented in Core, but they describe the boundaries within which production users currently operate.

## See Also

- [AutoGen Core — package overview](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md)
- [AutoGen AgentChat — high-level multi-agent API](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)
- [Distributed agent runtime sample (semantic router)](https://github.com/microsoft/autogen/blob/main/python/samples/core_semantic_router/README.md)
- [Magentic-One reference team](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-magentic-one/README.md)
- [AutoGen → Microsoft Agent Framework migration guide](https://learn.microsoft.com/en-us/agent-framework/migration-guide/from-autogen/)

---

<a id='page-3'></a>

## AgentChat: Multi-Agent Orchestration Patterns

### Related Pages

Related topics: [Framework Overview and Layered Architecture](#page-1), [Core API: Agent Runtime, Messaging, and Distribution](#page-2), [Extensions, Tools, Models, and Developer Tooling](#page-4)

<details>
<summary>Related Source Files</summary>

The following source files were used to generate this page:

- [python/packages/autogen-agentchat/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)
- [python/packages/autogen-agentchat/src/autogen_agentchat/agents/_assistant_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/agents/_assistant_agent.py)
- [python/packages/autogen-agentchat/src/autogen_agentchat/agents/_code_executor_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/agents/_code_executor_agent.py)
- [python/packages/autogen-agentchat/src/autogen_agentchat/agents/_user_proxy_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/agents/_user_proxy_agent.py)
- [python/packages/autogen-agentchat/src/autogen_agentchat/agents/_society_of_mind_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/agents/_society_of_mind_agent.py)
- [python/packages/autogen-agentchat/src/autogen_agentchat/base/_chat_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/base/_chat_agent.py)
- [python/packages/autogen-agentchat/src/autogen_agentchat/base/_termination.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/base/_termination.py)
- [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md)
- [python/packages/autogen-core/src/autogen_core/_agent_runtime.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_agent_runtime.py)
- [python/packages/autogen-core/src/autogen_core/_closure_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_closure_agent.py)
- [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)
- [python/packages/autogen-magentic-one/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-magentic-one/README.md)
- [python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md)
- [python/samples/core_distributed-group-chat/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_distributed-group-chat/README.md)
- [python/samples/core_semantic_router/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_semantic_router/README.md)
- [python/samples/agentchat_fastapi/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/agentchat_fastapi/README.md)
- [python/samples/gitty/src/gitty/_gitty.py](https://github.com/microsoft/autogen/blob/main/python/samples/gitty/src/gitty/_gitty.py)
</details>

# AgentChat: Multi-Agent Orchestration Patterns

## Overview and Scope

AgentChat is the high-level API of the AutoGen framework for building multi-agent applications. It is layered on top of `autogen-core` and is the recommended entry point for beginner users, while advanced users can drop down to `autogen-core`'s event-driven actor model when they need finer control. Source: [python/packages/autogen-agentchat/README.md:1-13](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)

The package provides two main abstractions:

- **Agents** — preset behaviors such as `AssistantAgent`, `CodeExecutorAgent`, `UserProxyAgent`, and `SocietyOfMindAgent`. Source: [python/packages/autogen-agentchat/README.md:13-15](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)
- **Teams** — predefined multi-agent design patterns (e.g., two-agent chat, round-robin groups, selector groups). Source: [python/packages/autogen-agentchat/README.md:15-16](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)

AgentChat agents implement the `BaseChatAgent` / `ChatAgent` protocol defined in `base/_chat_agent.py`, which standardizes how agents emit responses, stream events, save/load state, and accept a `CancellationToken`. Source: [python/packages/autogen-agentchat/src/autogen_agentchat/base/_chat_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/base/_chat_agent.py)

> **Maintenance Notice.** AutoGen is now in maintenance mode and is community-managed. New users are directed to Microsoft Agent Framework (MAF). Source: [README.md:1-12](https://github.com/microsoft/autogen/blob/main/README.md)

## Agent Building Blocks

### AssistantAgent

`AssistantAgent` is the LLM-driven agent at the core of most patterns. It is constructed with a model client (e.g., `OpenAIChatCompletionClient` from `autogen-ext`) and an optional `Workbench` of tools. Tool invocation is observed by streaming `ToolCallRequestEvent` and `ToolCallExecutionEvent` messages before the agent emits a final `Response`. Source: [python/samples/gitty/src/gitty/_gitty.py:14-38](https://github.com/microsoft/autogen/blob/main/python/samples/gitty/src/gitty/_gitty.py)

### CodeExecutorAgent

`CodeExecutorAgent` accepts code-bearing messages, executes them in a sandbox, and returns execution results. It is the standard partner for `AssistantAgent` in code-generation workflows. Source: [python/packages/autogen-agentchat/src/autogen_agentchat/agents/_code_executor_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/agents/_code_executor_agent.py)

### UserProxyAgent

`UserProxyAgent` terminates a turn by delegating input to a user-provided function. This is what enables the FastAPI and Chainlit samples to integrate human input or websocket sessions with an AgentChat team. Source: [python/samples/agentchat_fastapi/README.md:9-17](https://github.com/microsoft/autogen/blob/main/python/samples/agentchat_fastapi/README.md)

### SocietyOfMindAgent

`SocietyOfMindAgent` wraps an inner team and periodically summarizes the team's transcript, exposing a higher-level agent that "thinks" about its inner society. Source: [python/packages/autogen-agentchat/src/autogen_agentchat/agents/_society_of_mind_agent.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/agents/_society_of_mind_agent.py)

## Team Orchestration Patterns

AgentChat ships with multiple team patterns that compose the agents above. The most commonly used patterns, as documented across samples, are:

| Pattern | Use Case | Source |
|---|---|---|
| Two-agent chat | Pairwise delegation between an LLM agent and a user / executor | [python/samples/agentchat_fastapi/README.md:13-17](https://github.com/microsoft/autogen/blob/main/python/samples/agentchat_fastapi/README.md) |
| `RoundRobinGroupChat` | Fixed-order turns among a fixed participant set | [python/samples/agentchat_fastapi/README.md:14](https://github.com/microsoft/autogen/blob/main/python/samples/agentchat_fastapi/README.md) |
| Selector / speaker-selection group chats | Manager chooses next speaker; implemented on top of `autogen-core` topics | [python/samples/core_distributed-group-chat/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_distributed-group-chat/README.md) |
| Magentic-One | Generalist multi-agent system for web/code/file tasks | [python/packages/autogen-magentic-one/README.md:1-9](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-magentic-one/README.md) |
| Semantic Router | Single-router dispatch to specialized distributed agents | [python/samples/core_semantic_router/README.md:9-19](https://github.com/microsoft/autogen/blob/main/python/samples/core_semantic_router/README.md) |

The AgentChat package README explicitly advertises that teams implement "predefined multi-agent design patterns", which AutoGen documents under the core-user-guide design-patterns section. Source: [python/packages/autogen-agentchat/README.md:15-16](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/README.md)

## Termination, Runtime, and Distribution

Conversations end when a termination condition fires. `autogen_agentchat.base._termination` provides composable conditions (token-limit, text-match, function-call, custom predicates) that teams poll after each turn. Source: [python/packages/autogen-agentchat/src/autogen_agentchat/base/_termination.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-agentchat/src/autogen_agentchat/base/_termination.py)

Beneath AgentChat, `autogen-core`'s `AgentRuntime` defines the cross-process contract: `send_message`, `publish_message`, and pub/sub `Subscription`s on `TopicId`. Source: [python/packages/autogen-core/src/autogen_core/_agent_runtime.py:9-58](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_agent_runtime.py)

This makes the same team definition portable across single-process, in-process, and distributed runtimes. The `core_distributed-group-chat` sample shows a group chat manager, writer, editor, and UI agents each running in their own runtime, communicating only via topics. Source: [python/samples/core_distributed-group-chat/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/core_distributed-group-chat/README.md)

For tool use, `StaticWorkbench` lets you attach a fixed tool list and optionally rename or re-describe tools via `ToolOverride`, enforcing uniqueness of override names. Source: [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py:23-46](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)

For closures (Python callables turned into agents), `_closure_agent.py` validates that the closure has the expected arity and type hints before promoting it to an agent. Source: [python/packages/autogen-core/src/autogen_core/_closure_agent.py:23-50](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/_closure_agent.py)

## Community-Driven Concerns and Failure Modes

The community has repeatedly surfaced gaps in the current orchestration patterns that this page should flag:

- **Goal integrity.** Issue #7487 argues that long multi-agent runs lose track of the original objective and proposes a dedicated "mission keeper" agent — a pattern not provided by `AssistantAgent` or any shipped team. Source: [github.com/microsoft/autogen/issues/7487](https://github.com/microsoft/autogen/issues/7487)
- **Distributed memory.** Issue #4564 proposes modeling memory as agents+events on top of the actor model; the `autogen-ext` `task_centric_memory` package is an experimental step in this direction, retrieving insights via embedded topics. Source: [python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md) and [github.com/microsoft/autogen/issues/4564](https://github.com/microsoft/autogen/issues/4564)
- **Backpressure.** Issue #7321 highlights cascading failures when downstream agents are saturated; there is no first-class capacity contract on `BaseChatAgent` today. Source: [github.com/microsoft/autogen/issues/7321](https://github.com/microsoft/autogen/issues/7321)
- **Guardrails.** Issue #7770 reports empirical guardrail failures in production, motivating careful use of termination conditions and human-in-the-loop (`UserProxyAgent`) gates rather than relying on system-prompt-level safety alone. Source: [github.com/microsoft/autogen/issues/7770](https://github.com/microsoft/autogen/issues/7770)

## See Also

- [AutoGen Core: Event-Driven Actor Model](wiki/autogen-core)
- [AutoGen Extensions and Model Clients](wiki/autogen-ext)
- [Distributed Agent Runtime](wiki/distributed-runtime)
- [Magentic-One Reference Team](wiki/magentic-one)

---

<a id='page-4'></a>

## Extensions, Tools, Models, and Developer Tooling

### Related Pages

Related topics: [Framework Overview and Layered Architecture](#page-1), [AgentChat: Multi-Agent Orchestration Patterns](#page-3)

<details>
<summary>Related Source Files</summary>

The following source files were used to generate this page:

- [README.md](https://github.com/microsoft/autogen/blob/main/README.md)
- [python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md)
- [python/packages/autogen-ext/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/README.md)
- [python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md)
- [python/packages/autogen-studio/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/README.md)
- [python/packages/autogen-studio/frontend/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/frontend/README.md)
- [python/packages/autogen-core/src/autogen_core/tools/_base.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_base.py)
- [python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)
- [python/packages/autogen-core/src/autogen_core/utils/_json_to_pydantic.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/utils/_json_to_pydantic.py)
- [python/samples/gitty/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/gitty/README.md)
- [python/samples/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/task_centric_memory/README.md)
- [python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md)
- [dotnet/src/AutoGen.SourceGenerator/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/src/AutoGen.SourceGenerator/README.md)
- [dotnet/samples/dev-team/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/samples/dev-team/README.md)
- [dotnet/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/README.md)
</details>

# Extensions, Tools, Models, and Developer Tooling

AutoGen is a multi-agent framework that ships as a small core runtime plus a broad ecosystem of plug-in extensions, tool adapters, model clients, and developer-facing tooling. This page maps that surface area and explains how the pieces fit together so engineers can pick the right extension point for their use case.

## High-Level Architecture

AutoGen is published as a `uv` workspace with separate packages for the core runtime, agent workflows, ecosystem integrations, and a web IDE. The project README frames these as four first-class tracks: Python, .NET, and Studio, each with its own installation, tutorial, and API reference ([README.md](https://github.com/microsoft/autogen/blob/main/README.md)). The Python workspace is decomposed into `autogen-core`, `autogen-agentchat`, `autogen-ext`, and `autogen-studio` ([python/README.md](https://github.com/microsoft/autogen/blob/main/python/README.md)).

```mermaid
graph LR
  Studio[autogen-studio<br/>Web IDE]
  AgentChat[autogen-agentchat<br/>Workflows]
  Ext[autogen-ext<br/>Integrations]
  Core[autogen-core<br/>Runtime/Tools/Memory]
  Models[(Model Clients<br/>OpenAI, Azure, Anthropic,<br/>Ollama, etc.)]
  Tools[(Tool Workbenches<br/>MCP, Static, Function)]
  Studio --> AgentChat
  Studio --> Core
  AgentChat --> Core
  Ext --> Core
  Ext --> Models
  Ext --> Tools
```

The core layer provides actor-model primitives, tool/workbench abstractions, and memory interfaces ([python/packages/autogen-core/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/README.md)). The extensions layer provides concrete model and tool implementations ([python/packages/autogen-ext/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/README.md)). Studio wraps these for visual prototyping ([python/packages/autogen-studio/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/README.md)).

## Tools and Workbench Abstractions

The tool layer is defined in `autogen_core.tools`. `Tool` and `StreamTool` are `Protocol` classes with `name`, `description`, `schema`, `args_type`, `return_type`, `state_type`, and `run_json` / `run_json_stream` methods ([python/packages/autogen-core/src/autogen_core/tools/_base.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_base.py)). `BaseTool` is the abstract generic base that all tool implementations extend, parameterised by `ArgsT`, `ReturnT`, and optional `StateT` generics.

`StaticWorkbench` is the default in-memory implementation. It accepts a list of `BaseTool` instances and an optional `tool_overrides` map that lets callers rename or re-describe tools without changing their underlying behaviour. Override names are validated for collisions with existing tools and with other overrides at construction time, and a reverse mapping from override name to original name is built for `call_tool` dispatch ([python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)).

A utility module `_json_to_pydantic.py` converts JSON Schema dictionaries into fully-typed Pydantic models, supporting primitives, string/numeric/array constraints, enums, `anyOf`/`oneOf`, `allOf` composition, and `$ref`/`$defs` resolution ([python/packages/autogen-core/src/autogen_core/utils/_json_to_pydantic.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/utils/_json_to_pydantic.py)). This is what allows JSON-Schema-defined tools to be wrapped in strongly-typed Python objects.

## Extensions: Model Clients and Integrations

`autogen-ext` is the package for ecosystem integrations. It contains model client implementations (OpenAI, Azure AI, Anthropic, Ollama, and others) plus tool integrations including MCP workbenches. The maintainers explicitly state that the package is meant as a curated collection and that third parties are encouraged to publish their own components ([python/packages/autogen-ext/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/README.md)).

Community demand has historically pushed toward broader model and language coverage. Long-running requests include integrating open-source LLMs via Hugging Face (issue #46), adding TypeScript and Golang/Rust ports (issues #236 and #1700), and integrating with Semantic Kernel, Guidance, and Prompt Flow (issue #140). These map onto the extension model: a new language requires a new runtime package, while a new model provider is a new `autogen-ext` subpackage that satisfies the same `ChatCompletionClient` interface.

The extension package also hosts experimental subsystems. `autogen_ext.experimental.task_centric_memory` is a vector-DB-backed memory controller that stores task/insight pairs and exposes retrieval helpers used by the `teachable_agent` sample ([python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-ext/src/autogen_ext/experimental/task_centric_memory/README.md)).

## Developer Tooling

### AutoGen Studio

AutoGen Studio is a web-based IDE for rapidly prototyping agents, composing them into workflows, and running them interactively. It is explicitly positioned as a research prototype, not a production-ready app: developers are expected to build their own authentication, security, and deployment layers using the core framework ([python/packages/autogen-studio/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/README.md)).

The frontend is a Gatsby app. Pages live under `src/pages` and core logic lives under `src/components`. The frontend expects the backend API at `/api` on `localhost:8081`, configured via `GATSBY_API_URL` in `.env.development` ([python/packages/autogen-studio/frontend/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/frontend/README.md)).

### CLI Samples and Productivity Tools

The samples directory contains end-user CLI tools. `gitty` is an AutoGen-powered draft-reply generator for issues and pull requests, invokable as `gitty --repo microsoft/autogen issue 5212` ([python/samples/gitty/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/gitty/README.md)). The `task_centric_memory` sample wires a teachable agent and a `MemoryController` so applications can both store and retrieve task-insight pairs ([python/samples/task_centric_memory/README.md](https://github.com/microsoft/autogen/blob/main/python/samples/task_centric_memory/README.md)).

### .NET Source Generator

The .NET track ships a Roslyn source generator in `AutoGen.SourceGenerator`. Marking a method on a `partial` class with `[Function]` auto-generates a function definition and a call wrapper from the method's signature and XML doc comments, provided `GenerateDocumentationFile` is enabled ([dotnet/src/AutoGen.SourceGenerator/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/src/AutoGen.SourceGenerator/README.md)). The .NET README distinguishes the legacy `AutoGen.*` packages from the newer event-driven `Microsoft.AutoGen.*` packages, the latter of which are not yet API-stable ([dotnet/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/README.md)). A representative end-to-end sample is the GitHub Dev Team orchestrator, which uses event-driven agents (`Hubber`, `ProductManager`, `AzureGenie`) to coordinate specification, planning, code generation, review, and storage across GitHub issues and PRs ([dotnet/samples/dev-team/README.md](https://github.com/microsoft/autogen/blob/main/dotnet/samples/dev-team/README.md)).

## Common Failure Modes and Caveats

Several community-reported failure modes are tied directly to this surface area:

- **Guardrail bypass in regulated environments** (issue #7770) highlights that tool execution environments, especially Docker-based code execution, must be hardened independently of any agent-level safety prompt.
- **Cascading failures from missing backpressure** (issue #7321) stem from tools and model clients that cannot advertise capacity, a gap in the current workbench contract.
- **Cryptographic identity gaps** in the distributed runtime (issue #7372) sit at the extension boundary: model clients and tool transports are the points where peer identity would need to be asserted.
- **Studio is not production-ready**: the README explicitly warns that the IDE is a research prototype with breaking changes expected ([python/packages/autogen-studio/README.md](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-studio/README.md)).
- **Override name collisions** in `StaticWorkbench` are caught eagerly at construction, but callers building dynamic tool sets must still validate override maps before passing them in ([python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py](https://github.com/microsoft/autogen/blob/main/python/packages/autogen-core/src/autogen_core/tools/_static_workbench.py)).

## See Also

- [AutoGen Core Runtime and Actor Model](core-runtime.md)
- [Multi-Agent Workflows with autogen-agentchat](agentchat-workflows.md)
- [Memory Subsystems and Cross-Agent State](memory.md)
- [.NET Event-Driven Agents](dotnet-event-driven.md)
- [AutoGen Studio User Guide](autogen-studio.md)

---

<!-- evidence_pipeline_checked: true -->
<!-- evidence_injected: true -->

---

## Pitfall Log

Project: microsoft/autogen

Summary: Found 31 structured pitfall item(s), including 10 high/blocking item(s). Top priority: Installation risk - Installation risk requires verification.

## 1. Installation risk - Installation risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a installation risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/4564

## 2. Installation risk - Installation risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a installation risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7487

## 3. Configuration risk - Configuration risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a configuration risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7748

## 4. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Developers should check this security_permissions risk before relying on the project: Cryptographic governance layer for AutoGen distributed agent runtime
- User impact: Developers may expose sensitive permissions or credentials: Cryptographic governance layer for AutoGen distributed agent runtime
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7372

## 5. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a security or permission risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7372

## 6. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a security or permission risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7321

## 7. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a security or permission risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7875

## 8. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a security or permission risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7770

## 9. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a security or permission risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7265

## 10. Security or permission risk - Security or permission risk requires verification

- Severity: high
- Evidence strength: source_linked
- Finding: Project evidence flags a security or permission risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/microsoft/autogen/issues/7356

## 11. Installation risk - Installation risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this installation risk before relying on the project: python-v0.6.2
- User impact: Upgrade or migration may change expected behavior: python-v0.6.2
- Evidence: failure_mode_cluster:github_release | https://github.com/microsoft/autogen/releases/tag/python-v0.6.2

## 12. Installation risk - Installation risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this installation risk before relying on the project: python-v0.7.1
- User impact: Upgrade or migration may change expected behavior: python-v0.7.1
- Evidence: failure_mode_cluster:github_release | https://github.com/microsoft/autogen/releases/tag/python-v0.7.1

## 13. Installation risk - Installation risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this installation risk before relying on the project: 🔗 New Integration: AgentFolio — Agent Identity, Trust & Reputation Tools
- User impact: Developers may fail before the first successful local run: 🔗 New Integration: AgentFolio — Agent Identity, Trust & Reputation Tools
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7356

## 14. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: Feature proposal: Backpressure contract declarations for multi-agent coordination
- User impact: Developers may misconfigure credentials, environment, or host setup: Feature proposal: Backpressure contract declarations for multi-agent coordination
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7321

## 15. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: Memory Proposal
- User impact: Developers may misconfigure credentials, environment, or host setup: Memory Proposal
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/4564

## 16. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: Mycelium Trails — post-execution accountability receipts for AutoGen agents (notification)
- User impact: Developers may misconfigure credentials, environment, or host setup: Mycelium Trails — post-execution accountability receipts for AutoGen agents (notification)
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7658

## 17. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: Proposal: Agent-to-Agent Commerce Integration via Merxex
- User impact: Developers may misconfigure credentials, environment, or host setup: Proposal: Agent-to-Agent Commerce Integration via Merxex
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7612

## 18. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: Proposal: Goldshine Protocol: A Decentralized Global Capability Delivery Network Based on Agent Encapsulation — Semantic Agent Discovery for AutoGen Multi-Agent Networks
- User impact: Developers may misconfigure credentials, environment, or host setup: Proposal: Goldshine Protocol: A Decentralized Global Capability Delivery Network Based on Agent Encapsulation — Semantic Agent Discovery for AutoGen Multi-Agent Networks
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7875

## 19. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: RFC: Cross-agent shared memory store with on-demand capsule recall (agent/group/global scopes)
- User impact: Developers may misconfigure credentials, environment, or host setup: RFC: Cross-agent shared memory store with on-demand capsule recall (agent/group/global scopes)
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7748

## 20. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: Safety Report: AI Agent Guardrails Do Not Work — 56-Day Proof (06K Loss)
- User impact: Developers may misconfigure credentials, environment, or host setup: Safety Report: AI Agent Guardrails Do Not Work — 56-Day Proof (06K Loss)
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7770

## 21. Configuration risk - Configuration risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this configuration risk before relying on the project: python-v0.7.2
- User impact: Upgrade or migration may change expected behavior: python-v0.7.2
- Evidence: failure_mode_cluster:github_release | https://github.com/microsoft/autogen/releases/tag/python-v0.7.2

## 22. Capability evidence risk - Capability evidence risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: README/documentation is current enough for a first validation pass.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: capability.assumptions | https://github.com/microsoft/autogen

## 23. Maintenance risk - Maintenance risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Developers should check this migration risk before relying on the project: python-v0.6.4
- User impact: Upgrade or migration may change expected behavior: python-v0.6.4
- Evidence: failure_mode_cluster:github_release | https://github.com/microsoft/autogen/releases/tag/python-v0.6.4

## 24. Maintenance risk - Maintenance risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: Project evidence flags a maintenance risk. Review the linked source before relying on this workflow.
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: evidence.maintainer_signals | https://github.com/microsoft/autogen

## 25. Security or permission risk - Security or permission risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: no_demo
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: downstream_validation.risk_items | https://github.com/microsoft/autogen

## 26. Security or permission risk - Security or permission risk requires verification

- Severity: medium
- Evidence strength: source_linked
- Finding: no_demo
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: risks.scoring_risks | https://github.com/microsoft/autogen

## 27. Capability evidence risk - Capability evidence risk requires verification

- Severity: low
- Evidence strength: source_linked
- Finding: Developers should check this capability risk before relying on the project: Multi-agent systems need a 'mission keeper' role — not a Boss Agent, but a dedicated goal integrity node
- User impact: Developers may hit a documented source-backed failure mode: Multi-agent systems need a 'mission keeper' role — not a Boss Agent, but a dedicated goal integrity node
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7487

## 28. Runtime risk - Runtime risk requires verification

- Severity: low
- Evidence strength: source_linked
- Finding: Developers should check this performance risk before relying on the project: Proposal: AgentOS — A Registry + Compiler Architecture for Deterministic Multi-Agent Coordination
- User impact: Developers may hit a documented source-backed failure mode: Proposal: AgentOS — A Registry + Compiler Architecture for Deterministic Multi-Agent Coordination
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7849

## 29. Runtime risk - Runtime risk requires verification

- Severity: low
- Evidence strength: source_linked
- Finding: Developers should check this performance risk before relying on the project: [Question] Practical reliability patterns for multi-agent production
- User impact: Developers may hit a documented source-backed failure mode: [Question] Practical reliability patterns for multi-agent production
- Evidence: failure_mode_cluster:github_issue | https://github.com/microsoft/autogen/issues/7265

## 30. Maintenance risk - Maintenance risk requires verification

- Severity: low
- Evidence strength: source_linked
- Finding: issue_or_pr_quality=unknown。
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: evidence.maintainer_signals | https://github.com/microsoft/autogen

## 31. Maintenance risk - Maintenance risk requires verification

- Severity: low
- Evidence strength: source_linked
- Finding: release_recency=unknown。
- User impact: May increase setup, validation, or first-run risk for the user.
- Evidence: evidence.maintainer_signals | https://github.com/microsoft/autogen

<!-- canonical_name: microsoft/autogen; human_manual_source: deepwiki_human_wiki -->
