Skip to content

Releases: ag2ai/ag2

v0.12.0

17 Apr 21:42
3111f12

Choose a tag to compare

Highlights

🛣️ AG2 v0.12.0 – The Path to v1.0 Begins

This release kicks off the journey to AG2 v1.0. Over the next few minor versions (v0.12 → v0.13 → v0.14 → v1.0), the beta framework (autogen.beta) will mature and, at v1.0, become the official version of AG2. The current framework continues to be fully supported throughout this transition.

📍 Check out the full Release Roadmap to see what's coming.

⚠️ Deprecation Notices (Removal in v0.14)

v0.12 is the deprecation announcement release. The features below are marked for removal in v0.14. The community feedback window is now open — if any of these are critical to your workflow, please let us know via GitHub Issues or Discord.

  • Deprecated agents: GPTAssistantAgent, LLaVAAgent, WebSurferAgent (contrib), TextAnalyzerAgent, MathUserProxyAgent, SocietyOfMindAgent, AgentOptimizer, RetrieveAssistantAgent, QdrantRetrieveUserProxyAgent, SwarmAgent, RealtimeAgent
  • Deprecated capabilities/modules: ImageGeneration, agent_eval
  • Deprecated interop: CrewAIInteroperability (use LangChain or PydanticAI interop)
  • Deprecated experimental tools: PythonCodeExecutionTool, FirecrawlTool, PerplexitySearchTool, SearxngSearchTool, WebSearchPreviewTool
  • Deprecated swarm functions: Use the new Group Chat

See PR #2553 for the full list and migration paths.

What is NOT being deprecated: Core agents (ConversableAgent, AssistantAgent, UserProxyAgent), GroupChat and orchestration patterns, capabilities like Teachability and VisionCapability, and experimental agents like DeepResearchAgent, ReasoningAgent, DocAgent, CaptainAgent, A2UIAgent, and platform agents.

🔬 Beta: Major New Capabilities

The beta framework continues to grow — these are the building blocks for AG2 v1.0.

  • 🤖 Agent.as_tool() – Agent delegation using tool calls with the new Tasks API.
  • 👁️ Observer API – Subscribe to Agent events for monitoring and debugging.
  • 🖥️ AG-UI Support – UI integration
  • 🎨 Multimodal Input – Image, Document, Audio, and Video input support for OpenAI, Gemini, Anthropic.
  • 🔧 Serializable Agents – Fully serializable
  • 🔧 Tool-Driven Handoffs – Improved compatibility with existing ConversableAgents to support handoffs in tool calls

🧰 Beta: New Tools & Toolkits

  • 📁 FilesystemToolset – File operations toolkit.
  • 🔍 WebSearchTool Streaming – Streaming support for web search.
  • 💻 LocalShellTool & LocalShellEnvironment – Local shell execution.
  • 🎯 Skills Tool & Search Skills – Skills management and discovery.
  • 🔧 Middleware Support – Added to Toolkit and FunctionTool.
  • 💻 Code Execution Tool – New Beta tool for code execution.

🎉 New Features

  • 🖥️ DaytonaCodeExecutor – New code executor integration with Daytona.
  • 🔗 NLIP Integration – Natural Language Interface Protocol support.
  • 🎯 AgentEligibilityPolicy – Runtime GroupChat candidate filtering.

🔐 Security

  • 🛡️ CVE-2025-69872 – Fixed DiskCache vulnerability.
  • 🔒 GitHub Actions Hardening – Added zizmor and hardened CI workflows.

Bug Fixes

  • 🔧 TokenLimiter – Fixed token-to-char budget calculation.
  • 🔧 Speaker Selection – Fixed duplicate condition in verbose logging.
  • 🔧 Interop Error Messages – Fixed error showing 't' instead of actual type names.
  • 🔧 browser-use – Updated from pinned 0.1.37 to >=0.3.1.
  • 🔧 Various typo and grammar fixes.

Documentation & Accessibility

  • 📔 Added Security Policy.
  • ♿ Fixed WCAG 2 AA color contrast issues site-wide.
  • ♿ Added alt text to 39 images on homepage.
  • 🔗 Fixed numerous broken links across documentation.

CLI

  • 📦 Published CLI package to PyPI.

What's Changed

Read more

v0.11.5

04 Apr 23:58
cb7d867

Choose a tag to compare

Highlights

🎉 Major Features

  • 🖥️ AG2 CLI – New command-line interface for AG2! A full-featured CLI for building, running, testing, and deploying multi-agent applications with AG2. Check out the docs!
  • 🖥️ A2UIAgent – New reference agent combining A2A and A2UI protocols for building dynamic, agent-driven, frontends. Compatible with A2UI's latest v0.9 protocol version. Check out the docs! and full code example

Beta Features

  • Roadmap progress
  • 📊 Telemetry – Added telemetry support for monitoring and analytics.
  • 🔧 Structured Output via ResponseSchema – Added structured output support using ResponseSchema for more predictable agent responses.
  • 🔧 RedisStream – Added Redis stream support for scalable message handling.
  • 🔧 Tool-Scoped Middleware Hooks – Added middleware hooks scoped to specific tools for fine-grained control.
  • 🔧 WebFetchTool – New tool for fetching web content, plus domain filtering for WebSearchTool.
  • 🧠 MemoryTool – New tool for agent memory management, integrated into existing tool schemas.
  • 🖼️ Image Generation Tool – New tool for generating images.
  • 💻 Shell Tool – New tool for shell command execution.
  • 🔧 Refactored BaseEvent with dataclass_transform.
  • 🔧 Introduced justfile, refactored deps/CI, and improved beta tools.

Bug Fixes

  • 🔧 Beta: ToolCallEvent and ToolErrorEvent – Fixed three bugs in event handling.
  • 🔧 Beta: Empty Tool Call Arguments – Fixed handling of empty tool call arguments in message mappers.
  • 🔧 Beta: Anthropic Token Usage – Fixed Anthropic usage tokens and cached token usage observation.
  • 🔧 Beta: Anthropic pause_turn – Fixed pause_turn handling.
  • 🔧 Message Platform Tools – Fixed sent_message_id initialization before loop.
  • 🔧 Slack Tool – Corrected docstring, safe dict access, and mypy type checks.

Documentation

What's Changed

New Contributors

Full Changelog: v0.11.4...v0.11.5

v0.11.4

17 Mar 23:46
63beb0a

Choose a tag to compare

Highlights

🔒 Security Hardening

This release includes several important security fixes contributed by @amabito:

  • Shell Command InjectionShellExecutor now uses shell=False with shlex.split to prevent command injection.
  • Path Traversal Prevention – MCP resource URIs and file operations now validate against path traversal attacks.
  • Sensitive Key RedactionFileLogger output now redacts sensitive keys to prevent credential leakage.

AG2 Beta Improvements

  • 🛠️ Human-in-the-Loop Middleware Hook – New on_human_input middleware hook enables intercepting, transforming, or logging human input during agent conversations. Docs
  • 🛠️ Tool Calling – Tools can now return ToolResult(..., final=True) to skip the follow-up LLM call and end the turn immediately. Tool events were also refactored into dedicated types for cleaner runtime handling across all providers. Docs
  • 🔧 ClientTool Stream FixClientTool.register now correctly sends ClientToolCall events to the stream.
  • CodeExecutionTool – New tool and schemas for code execution capabilities (thanks @vvlrff).

Bug Fixes

  • 🔧 Gemini Content Handling – Fixed handling of messages without a content key in the Gemini client.

Documentation

  • 📔 Added links to AG2 Playground to documentation.
  • 📔 Fixed SEO issues with robots.txt and og:url in redirect template (thanks @VasiliyRad).
  • 📔 Beta documentation updated to reflect the latest event and tool APIs.

What's Changed

  • fix(beta): send ClientToolCall to stream in ClientTool.register by @amabito in #2476
  • ci: add PR labeler workflow by @Lancetnik in #2479
  • feat(beta): add on_human_input middleware hook by @Lancetnik in #2477
  • Fix SEO issues: add robots.txt and fix og:url in redirect template by @VasiliyRad in #2473
  • docs: Add Playground links to documentation by @marklysze in #2480
  • fix: use shell=False with shlex.split in ShellExecutor by @amabito in #2481
  • fix: sanitize MCP resource URI to prevent path traversal by @amabito in #2482
  • fix: validate subfolder_path and file_name against path traversal by @amabito in #2483
  • fix: redact sensitive keys in FileLogger output by @amabito in #2485
  • fix: handle messages without 'content' key in Gemini client by @marklysze in #2489
  • feat: add CodeExecutionTool and related schemas for code execution ca… by @vvlrff in #2490
  • docs(beta): sync docs with event and tool APIs by @Lancetnik in #2491
  • Version bump to 0.11.4 by @marklysze in #2492

New Contributors

Full Changelog: v0.11.3...v0.11.4

v0.11.3

16 Mar 01:15
0185d34

Choose a tag to compare

Highlights

🎉 AG2 Beta — A New Foundation for Real-World Agents

This release introduces AG2 Beta (autogen.beta), a ground-up redesign of the AG2 framework built around lessons learned from the original architecture. AG2 Beta provides a stronger foundation for production agentic systems with:

  • 🌊 Streaming & Event-Driven Architecture – Every conversation runs on a MemoryStream, a pub/sub event bus that isolates state, enables real-time streaming, and makes agents safely reusable across concurrent users.
  • 🔌 Multi-Provider LLM Support – Unified ModelConfig protocol with dedicated clients for OpenAI (Chat Completions & Responses API), Anthropic, Google Gemini, Alibaba DashScope (Qwen), and Ollama — all using official provider SDKs.
  • 🛠️ Dependency Injection & Typed Tools – Tools auto-generate JSON schemas from type hints. DI via fast_depends lets tools and prompt hooks declare dependencies cleanly with Annotated[T, Inject("name")].
  • 🧪 First-Class TestingTestConfig / TestClient provide canned LLM responses for unit tests with zero network calls.
  • 🔧 Middleware Pipeline – Extensible middleware system with built-in history limiting, token limiting, and LLM retry capabilities.

AG2 Beta runs alongside the existing AG2 module — no breaking changes to current code. Additionally, AG2 Beta agents can be used in existing group chat orchestrations!

Read the blog post for the full motivation and design details, or dive into the AG2 Beta documentation and Roadmap.

Big thanks to @Lancetnik!

And here's what's changed in the current AG2 version...

Major Features

  • 🔍 QuickResearchTool – New tool for parallel web research, enabling agents to search and synthesize information from multiple sources concurrently (thanks @bassilkhilo-ag2).
  • 🌊 Gemini Client Streaming – Added streaming support for the Gemini client.
  • 🔄 Mistral V2 API – Mistral client updated to the Mistral V2 API.
  • 🐟 TinyFish Scraper Integration – New integration with the TinyFish scraper for web content extraction (thanks @jsun-m).

LLM Client Fixes

  • 🔧 Streaming Tool Call Fix – Fixed tool call type field from concatenating during streaming (thanks @jnMetaCode).
  • 🔧 Gemini Thought Signature – Fixed Gemini thought signature handling.
  • 🔧 User-Agent for Anthropic – Added User-Agent header for Anthropic API calls (thanks @mikelambert).

Bug Fixes

  • 🔧 Empty Conversation Safety – Fixed IndexError in last_message() on empty conversation (thanks @jnMetaCode).
  • 🔧 AgentOptimizer LLMConfig – Fixed handling of LLMConfig objects in AgentOptimizer (thanks @jnMetaCode).
  • 🔧 Token Count Utils – Added missing model entries to token_count_utils (thanks @jnMetaCode).

Documentation

What's Changed

New Contributors

Full Changelog: v0.11.2...v0.11.3

v0.11.2

27 Feb 20:29
3e1f229

Choose a tag to compare

Highlights

Enhancements

  • 🔧 Extra Headers Support – Added extra_headers support to OpenAILLMConfigEntry and AzureOpenAILLMConfigEntry, allowing custom HTTP headers for API requests.

LLM Client Fixes

  • 🔧 Gemini Parallel Tool Calls – Fixed support for parallel tool calls in the Gemini client.
  • 🔧 Gemini Structured Output – Fixed Gemini structured output when using additionalProperties.
  • 🔧 OpenAI Responses Client – Fixed empty string content handling and new phase key support.

Bug Fixes

  • 🔧 RandomAgentTarget Validation – Fixed validation in ensure_handoff_agents_in_group.
  • 🔧 Async Tool Execution – Fixed awaiting awaitable tool results in async execution.
  • 🔧 Group Tool Executor – Preserved async wrapper in context variable injection.
  • 🔧 Exception Handling – Replaced bare except statements with except Exception (thanks @haosenwang1018).

Documentation

  • 📔 New CopilotKit quickstart and aligned AG-UI integration docs.
  • 📔 New AG-UI blog post.
  • 🔧 Documentation build improvements and link fixes.
  • 🔧 Removed Mintlify dependency.

What's Changed

New Contributors

Full Changelog: v0.11.1...v0.11.2

v0.11.1

16 Feb 00:26
ee6d7ba

Choose a tag to compare

Highlights

🎉 Major Features

  • 🌊 A2A Streaming – Full streaming support for Agent2Agent communication, both server and client-side. LLM text streaming is now connected through to the A2A implementation, enabling real-time responses for remote agents. Get Started

  • 🙋 A2A HITL Events – Process human-in-the-loop events in Agent2Agent communication, enabling interactive approval workflows in your agent pipelines. Get Started

  • 🖥️ AG-UI Message Streaming – Real-time display of agent responses in AG-UI frontends. New event-based streaming architecture for smooth incremental text updates. Get Started

  • 📡 OpenAI Responses v2 Client – Migrated to OpenAI's Responses v2 API, unlocking stateful conversations without manual history management, built-in tools (web search, image generation, apply_patch), full access to reasoning model features (o3 thinking tokens), multimodal applications, structured outputs, and enhanced cost and token tracking. Complete Guide

Bug Fixes

  • 🔧 ToolCall TypeError – Fixed TypeError on ToolCall return type.
  • 🐳 Docker Error Message – Improved error message when Docker is not running.
  • 🔧 OpenAI Responses v2 Client Tidy – Minor fixes and improvements to the new Responses v2 client.

Documentation & Maintenance

  • 📔 Updated mem0 example.
  • 🔧 Dependency bumps.
  • 🔧 Pydantic copy to model_copy migration.

What's Changed

Full Changelog: v0.11.0...v0.11.1

v0.11.0

10 Feb 09:07
f8b5cbd

Choose a tag to compare

Highlights

🎉 Major Features

  • 🖥️ AG-UI Protocol Integration – AG2 now natively supports the AG-UI protocol, the open standard for agent-to-user interaction. Build dynamic, real-time frontends powered by your AG2 agents with streaming responses, shared state synchronization, tool call rendering, and human-in-the-loop workflows. Seamlessly connect to CopilotKit and other AG-UI compatible frontends. Get Started

  • 📊 OpenTelemetry Tracing & Instrumentation – Full observability for your multi-agent workflows! AG2 now supports OpenTelemetry tracing, enabling you to monitor, debug, and analyze agent interactions for local and remote A2A agents. Includes LLM-level token usage and cost. Observe with industry-standard tools like Jaeger, Honeycomb, and other OTEL-compatible backends. Get Started

LLM Enhancements

  • 🔄 Anthropic V1 Client Streaming – Added streaming and non-beta support for the Anthropic V1 client, improving response handling and compatibility.

Bug Fixes

  • 🤝 A2A Message Support – Fixed Anthropic and OpenAI clients to support messages without role for Agent-to-Agent (A2A) communication.

Important: Deprecations

Documentation & Maintenance

What's Changed

New Contributors

Full Changelog: v0.10.5...v0.11.0

v0.10.5

30 Jan 20:34
e4b6fcd

Choose a tag to compare

Highlights

Enhancements

  • 🚀 GPT 5.2 Codex Models Support – Added support for OpenAI's GPT 5.2 Codex models, bringing enhanced coding capabilities to your agents.

  • 🐚 GPT 5.1 Shell Tool Support – The Responses API now supports the shell tool, enabling agents to interact with command-line interfaces for filesystem diagnostics, build/test flows, and complex agentic coding workflows.
    Check out the blogpost: Shell Tool and Multi-Inbuilt Tool Execution.

  • 🔬 RemyxCodeExecutor – New code executor for research paper execution, expanding AG2's capabilities for scientific and research workflows.
    Check out the updated code execution documentation: Code Execution.

Documentation

Fixes

  • 🔒 Security Fixes – Addressed multiple CVEs (CVE-2026-23745, CVE-2026-23950, CVE-2026-24842) to improve security posture.
  • 🤖 Gemini A2A Message Support – Fixed Gemini client to support messages without role for A2A.
  • GroupToolExecutor Async Handler – Added async reply handler to GroupToolExecutor for improved async workflow support.
  • 🔧 Anthropic BETA_BLOCKS_AVAILABLE Imports – Fixed import issues with Anthropic beta blocks.
  • 👥 GroupChat Agent Name Validation – Now validates that agent names are unique in GroupChat to prevent conflicts.
  • 🪟 OpenAI Shell Tool Windows Paths – Fixed shell tool parsing for Windows paths.
  • 🔄 Async Run Event Fix – Prevented double using_auto_reply events when using async run.

What's Changed

New Contributors

Full Changelog: v0.10.4...v0.10.5

v0.10.4

15 Jan 00:08
bc0528b

Choose a tag to compare

Highlights

  • 🕹️ Step-through Execution - A powerful new orchestration feature run_iter (and run_group_chat_iter) that allows developers to pause and step through agent workflows event-by-event. This enables granular debugging, human-in-the-loop validation, and precise control over the execution loop.
  • ☁️ AWS Bedrock "Thinking" & Reliability - significant upgrades to the Bedrock client:
    • Reliability: Added built-in support for exponential backoff and retries, resolving throttling issues on the Bedrock Converse API.
    • Advanced Config: Added support for additionalModelRequestFields, enabling advanced model features like Claude 3.7 Sonnet's "Thinking Mode" and other provider-specific parameters directly via BedrockConfigEntry.
  • 💰 Accurate Group Chat Cost Tracking - A critical enhancement to cost observability. Previously, group chats might only track the manager or the last agent; this update ensures costs are now correctly aggregated from all participating agents in a group chat session.
  • 🤗 HuggingFace Model Provider - Added a dedicated guide and support documentation for integrating the HuggingFace Model Provider, making it easier to leverage open-source models.
  • 🐍 Python 3.14 Readiness - Added devcontainer.json support for Python 3.14, preparing the development environment for the next generation of Python.
  • 📚 Documentation & Blogs - Comprehensive new resources including:
    • Logging Events: A deep dive into tracking and debugging agent events.
    • MultiMCPSessionManager: Guide on managing multiple Model Context Protocol sessions.
    • Apply Patch Tool: Tutorial on using the patch application tools.

What's Changed

New Contributors

Full Changelog: v0.10.3...v0.10.4

v0.10.3

19 Dec 21:38
23346cc

Choose a tag to compare

Highlights

Enhancements

  • 🚀 OpenAI GPT 5.2 Support – Added support for OpenAI's latest GPT-5.2 models, including the new xhigh reasoning effort level for enhanced performance on complex tasks.
  • 🛠️ OpenAI GPT 5.1 apply_patch Tool Support – The Responses API now supports the apply_patch tool, enabling structured code editing with V4A diff format for multi-file refactoring, bug fixes, and precise code modifications.
    Check out the tutorial notebook: GPT 5.1 apply_patch with AG2.
  • 🧠 Gemini ThinkingConfig Support – Extended thinking/reasoning configuration (ThinkingConfig) to Google Gemini models, allowing control over the depth and latency of model reasoning.
    Check out the tutorial notebook: Gemini Thinking with AG2.
  • Gemini 3 Thought Signatures – Added support for thought signatures in functions for Gemini 3 models, improving reasoning-trace capture and downstream processing.
  • 📊 Event Logging Enhancement – Event printing now routes through the logging system, giving you more control over agent output and debugging.

Bug Fixes and Documentation

  • 🔧 Anthropic Beta API Tool Format – Corrected tool formatting issues with Anthropic Beta APIs for more reliable tool calling.
  • 🔩 Bedrock Structured Outputs – Fixed tool choice handling for Bedrock structured outputs using the response_format API.
  • ⚙️ Gemini FunctionDeclaration – Now using proper Schema objects for Gemini FunctionDeclaration parameters, improving function calling reliability.
  • 🛠️ OpenAI V2 Client Tool Call Extraction – Fixed tool call extraction logic from message_retrieval in the OpenAI V2 client.
  • 🔄 Long-Living Tasks Processing – Corrected async processing issues for long-running agent tasks.
  • 🖼️ Fixed handling of tags in MultimodalConversableAgent
  • Async default_auto_reply Validation – Resolved validation error when using async default_auto_reply.
  • 📔 Updated notebooks and documentation with simpler LLMConfig usage.

What's Changed

Full Changelog: v0.10.2...v0.10.3