AG2 v1.0.0
AG2 v1 is here! The protocol-driven framework we started building as autogen.beta in v0.12 is now the mainline framework, and the classic framework has moved to its own repository.
This release covers everything from v0.14.0, including the work released in v1.0.0b0.
Installing, importing, and start coding
| Install | What you get | Repository |
|---|---|---|
pip install ag2 |
AG2 v1.0 — actively developed | ag2ai/ag2 |
pip install autogen |
AG2 Classic — maintenance mode | ag2ai/ag2-classic |
The top-level package is now imported as ag2. The autogen import name is no longer shipped by this repository.
import ag2Get the AG2 skills for your coding assistant at ag2ai/ag2-skills — install with npx skills add ag2ai/ag2-skills.
Migrating
If you are on AG2 Classic
If your code contains import autogen, ConversableAgent, AssistantAgent, UserProxyAgent, GroupChat, register_function, or the nested and sequential chat patterns, you are on Classic.
Classic now lives at ag2ai/ag2-classic, with its own documentation at classic.docs.ag2.ai. It remains maintained and installable, and it receives security and critical bug fixes.
v1.0 is not a drop-in upgrade. The agent model, orchestration, and imports are different. Install autogen or pin the classic distribution rather than tracking ag2>=1.0, and your existing code keeps working unchanged.
If you are on the beta
The autogen.beta namespace is gone. Everything under it is now at the top level:
# Before
from autogen.beta import Agent
from autogen.beta.config import OpenAIConfig
# Now
from ag2 import Agent
from ag2.config import OpenAIConfigThe classic CLI has also been removed, and __version__ is now exported at the top level of the package.
AG2 Assistant
We built an open-source AI Assistant, powered by the AG2 framework. Let the AG2 framework work alongside you, carrying out the tasks you do on a daily basis, in a secure, permission-first, environment. Want it to do more? It's open-source, just like the AG2 framework.
ag2ai/ag2-assistant — v1.0 engine, chat, scheduled tasks, working folders, generative UI, and voice. Includes an inspector panel showing the live AG2 event stream.
New in this release
Protocols
- NLIP — Integration for the Natural Language Interaction Protocol.
- ACP — Support for the Agent Client Protocol, for driving CLI coding agents, together with an MCP tool gateway that exposes AG2 tools to those agents. The authentication and billing model for CLI agents is documented.
- MCP-UI — Support for the MCP UI extension.
Tools
- Server-side tool search with deferred loading — Agents can discover and load tools on demand rather than holding the full surface in context up front.
- OpenAI Responses —
FileSearchToolandSkillsToolsupport. - Anthropic — New
code_executionversion, and support for the currentweb_fetchandweb_searchtool versions. - Gemini —
FileSearchToolstore search andGoogleMapsToolgrounding. - Xquik — New tweet search toolkit.
- Perplexity — Sends an
X-Pplx-Integrationattribution header.
Providers
- Z.AI — Files API support.
- OpenAI — Encrypted reasoning content is now requested when
storeis false, so reasoning survives without server-side retention.
Observability
- Prometheus support — Export metrics to a Prometheus scrape endpoint.
- Network tracing — Tracing across the multi-agent network.
Fixes
Reliability
- Failures are no longer swallowed. Several paths silently discarded errors, which could result in silent data loss. They now surface. If you have error handling built around the previous behaviour, review it.
- Redis listener cancellation is propagated correctly.
SqliteKnowledgeStoreread paths are serialized with the connection lock.
Knowledge and history
UsageEventtelemetry is excluded from history compaction via the__conversational__marker.- History is sized correctly from event content.
Network and subagents
- Namespaced delegate targets resolve correctly, and unknown targets are enumerated rather than failing opaquely.
as_tool(stream=...)accepts aStreaminstance and rejects invalid types loudly rather than silently.
Events
Enumtypes are preserved across a serialization round-trip.
Dependencies
nlip-server >= 0.1.3required, dropping the transitivefastapi < 0.116pin.protobufandtyperpins aligned souvresolves all extras.- Unused dev, test, and types dependencies removed.
Documentation and project
- Documentation migrated to the 1.0.0 URL scheme, with broken links repaired, homepage 404s fixed, and navigation restructured.
- The Blog tab is restored, carrying the Network and Agent Harness series.
- README updated for AG2 focus, with AG2 Classic references throughout.
- A triage policy, restructured repository labels, area-based
CODEOWNERS, canned replies, and an AI task runbook have been added for contributors.
Thank you ❤️
v1.0 exists because of the people who contributed code, opened issues, tested the betas, and pushed back on design decisions along the way. Feedback during the beta changed what shipped, more than once. Thank you.
What's Changed
- fix(nlip): require nlip-server>=0.1.3 to drop the fastapi<0.116 transitive pin by @genisis0x in #2980
- fix(deps): align protobuf and typer pins so uv resolves all extras by @vvlrff in #3020
- feat(beta): add ZAI Files API support by @vvlrff in #3019
- feat!: promote autogen.beta to autogen, remove classic framework by @Lancetnik in #3023
- fix(beta): exclude UsageEvent telemetry from history compaction via conversational marker by @marklysze in #3033
- fix(beta): correctly size history from event content by @marklysze in #3035
- chore(deps): bump the uv group across 1 directory with 23 updates by @dependabot[bot] in #3034
- chore(deps): bump the github-actions group with 2 updates by @dependabot[bot] in #3027
- ci: build docs only on manual dispatch or published release by @Lancetnik in #3036
- ci: upload one combined coverage report per run instead of per matrix job by @Lancetnik in #3037
- feat: add NLIP integration for beta by @ash-jyc in #3024
- fix: propagate redis listener cancellation (+ de-flake test, retry cleanup) by @vvlrff in #3018
- chore: remove classic CLI by @marklysze in #3041
- feat: add ACP support for driving CLI coding agents by @vvlrff in #3026
- fix: export version at ag2 top level by @marklysze in #3040
- fix(test): de-flake test_cancelling_result_cancels_turn_inline by @marklysze in #3042
- feat(tools): add server-side tool search with deferred tool loading by @vvlrff in #3032
- Version bump to 1.0.0b0 by @marklysze in #3043
- feat(tools): FileSearchTool and SkillsTool support on OpenAI Responses, new Anthropic code_execution version by @vvlrff in #3049
- chore: sync uv.lock with 1.0.0b0 version bump by @vvlrff in #3048
- docs: add Triage Policy and restructure repository labels by @Lancetnik in #3050
- docs(triage): maintainer-authored issues enter at status:confirmed by @Lancetnik in #3052
- ci(dependabot): add area labels to dependabot PRs by @Lancetnik in #3053
- chore(deps): bump the github-actions group with 2 updates by @dependabot[bot] in #3051
- chore(deps): bump the uv group with 13 updates by @dependabot[bot] in #3054
- docs(triage): canned replies, AI task runbook, core-module areas by @Lancetnik in #3055
- docs(triage): area-based CODEOWNERS and docs scope cleanup by @Lancetnik in #3056
- feat: Prometheus support by @roma-frolov in #2762
- fix(knowledge): serialize SqliteKnowledgeStore read paths with the connection lock by @marklysze in #3059
- docs(website): fix homepage 404s and restructure navigation tabs by @Lancetnik in #3064
- feat(gemini): FileSearchTool store search and GoogleMapsTool grounding by @vvlrff in #3063
- chore(deps): bump j178/prek-action from 2.0.4 to 2.0.5 in the github-actions group by @dependabot[bot] in #3058
- docs(acp): document authentication & billing model for CLI agents by @vvlrff in #3061
- chore(deps): remove unused dev/test/types dependencies by @vvlrff in #3065
- feat(beta): Network tracing by @marklysze in #2895
- docs(blog): restore Blog tab with the AG2 Beta posts by @Lancetnik in #3068
- test(openai): support openai>=2.45.0 InputTokensDetails in usage tests by @vvlrff in #3076
- fix(docs): repair broken links and migrate to 1.0.0 URL scheme by @vvlrff in #3069
- feat(anthropic): support new web_fetch/web_search tool versions by @vvlrff in #3067
- fix(openai): request encrypted reasoning content when
storeis false by @marklysze in #3080 - chore(deps): bump mistune from 3.2.1 to 3.3.0 by @dependabot[bot] in #3074
- feat(search): add Xquik tweet search toolkit by @kriptoburak in #3075
- chore(deps): bump the uv group with 10 updates by @dependabot[bot] in #3079
- fix: stop swallowing failures (silent data loss) by @vvlrff in #3009
- chore(deps): bump the github-actions group with 4 updates by @dependabot[bot] in #3078
- feat(perplexity): add X-Pplx-Integration attribution header by @futorio in #3083
- feat(mcp): MCP-UI support by @vvlrff in #3077
- chore(deps): bump the uv group with 15 updates by @dependabot[bot] in #3090
- chore(deps): bump the github-actions group with 2 updates by @dependabot[bot] in #3089
- chore(deps): bump lxml to 6.1.1 and pydantic-settings to 2.14.2 by @marklysze in #3093
- chore(deps): bump gitpython from 3.1.50 to 3.1.52 by @dependabot[bot] in #3094
- chore(deps): bump pyasn1 from 0.6.3 to 0.6.4 by @dependabot[bot] in #3095
- docs: README tweaks for AG2 focus and AG2 Classic references by @marklysze in #3082
- fix(test): guard tool_search tests against single-provider CI envs by @marklysze in #3100
- fix(test): run the ACP test suite in CI and fix its Windows failure by @marklysze in #3103
- chore(deps): bump gitpython from 3.1.52 to 3.1.54 by @dependabot[bot] in #3105
- chore(deps): bump pymdown-extensions from 10.21.3 to 11.0 by @dependabot[bot] in #3104
- feat(acp): MCP tool gateway for CLI agents by @vvlrff in #3098
- fix(beta/network): resolve namespaced and enumerate unknown delegate targets by @genisis0x in #3005
- fix(events): preserve Enum types across serialization round-trip by @vvlrff in #3102
- fix(beta/subagents): accept Stream instance in
as_tool(stream=...)and reject invalid types loudly by @genisis0x in #2893 - Version bump to 1.0.0 by @marklysze in #3099
- Chore/v1.0.0 remove beta references by @marklysze in #3108
New Contributors
- @ash-jyc made their first contribution in #3024
- @roma-frolov made their first contribution in #2762
- @kriptoburak made their first contribution in #3075
- @futorio made their first contribution in #3083
Full Changelog: v0.14.0...v1.0.0