| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-10-27 | 6.1 kB | |
| v1.2.2 source code.tar.gz | 2026-10-27 | 3.2 MB | |
| v1.2.2 source code.zip | 2026-10-27 | 4.2 MB | |
| Totals: 3 Items | 7.3 MB | 0 | |
Highlights
- Timeouts for code that can hang:
@tool(timeout=...)limits each function tool call, andtimeout=on stream subscribers,@observer,BaseObserver,LoopDetectorandTokenMonitorlimits each callback. A timed-out tool returns aTimeoutErrorto the model, which can continue. - Anthropic SDK 2.x support, plus new
AnthropicConfigoptions: a typedspeedandopen_telemetryto configure or disable the SDK's own OpenTelemetry spans. OpenAIDecisionsConfigacceptsquestion_instructions(strings, ag2 inputs or SDK parts), appended to the agent prompt.- A2UI v1.0 updated to the current spec, including
callAgentFunction/agentFunctionResponseand renderer capabilities. - New
Glasserpaid-data toolkit extension. - More accurate token usage: Anthropic continuation tokens, Gemini thinking tokens and xAI reasoning tokens are now counted, and OpenAI
cache_write_tokensmaps tocache_creation_input_tokens. - Fixes for Mistral streaming, A2A empty text artifacts, eval dataset tags and failure attribution,
SKILL.mdfiles with a BOM, andupdate_filewith emptyold_content.
Upgrade notes
OpenAIConfigis deprecated and becomes the Responses API in 1.4.0. The current Chat Completions behavior is nowOpenAICompletionsConfig;OpenAIConfigstill works unchanged but emits aDeprecationWarningfromcreate(). Switch toOpenAICompletionsConfigto keep Chat Completions, or toOpenAIResponsesConfigto move now. Renaming the class does not translate API-specific options.temperature,top_pandtop_konAnthropicConfigare deprecated until 1.4.0. The API version used byanthropic2.x rejects them, so with SDK 2.x they warn and are dropped; with 1.x they warn and are still sent. The extra now requiresanthropic>=1.15.0,<3.- OpenAI now requires
openai>=3.37.0,<4.
What's Changed
- feat: add Glasser paid-data toolkit by @glasserai in https://github.com/ag2ai/ag2/pull/3462
- fix(mistral): isolate streamed completion choices by @ch-z-hc in https://github.com/ag2ai/ag2/pull/3471
- test(tools): keep the tight switch interval off under a tracer in the… by @vvlrff in https://github.com/ag2ai/ag2/pull/3481
- fix(anthropic): count continuation token usage by @ch-z-hc in https://github.com/ag2ai/ag2/pull/3472
- feat(a2ui): update A2UI v1.0 to the current spec by @vvlrff in https://github.com/ag2ai/ag2/pull/3469
- chore(deps): bump gitpython from 3.1.62 to 3.2.1 by @dependabot[bot] in https://github.com/ag2ai/ag2/pull/3485
- chore(deps): bump opentelemetry-api from 1.45.0 to 1.45.1 by @dependabot[bot] in https://github.com/ag2ai/ag2/pull/3486
- fix(a2a): preserve empty text artifact type by @fallintoplace in https://github.com/ag2ai/ag2/pull/3451
- fix(gemini): include thinking tokens in completion usage by @original4422 in https://github.com/ag2ai/ag2/pull/3446
- fix(filesystem): reject empty old_content in update_file on non-empty files by @BichengWang in https://github.com/ag2ai/ag2/pull/3303
- fix(textual): use correct optional import module by @fallintoplace in https://github.com/ag2ai/ag2/pull/3497
- fix(stream): preserve explicitly provided empty storage by @fallintoplace in https://github.com/ag2ai/ag2/pull/3498
- fix(openai): map cache_write_tokens to cache_creation_input_tokens by @rome-xi in https://github.com/ag2ai/ag2/pull/3499
- fix(eval): reject non-string dataset tags by @fallintoplace in https://github.com/ag2ai/ag2/pull/3496
- feat(anthropic): add typed speed option to AnthropicConfig by @its-amann in https://github.com/ag2ai/ag2/pull/3495
- fix(a2ui): keep v1.0 validation linear in nested function calls by @vvlrff in https://github.com/ag2ai/ag2/pull/3492
- fix(xai): include reasoning tokens in completion usage by @vvlrff in https://github.com/ag2ai/ag2/pull/3493
- test(openai): fix usage expectations after cache-write mapping by @Lancetnik in https://github.com/ag2ai/ag2/pull/3510
- chore(deps): bump the github-actions group with 2 updates by @dependabot[bot] in https://github.com/ag2ai/ag2/pull/3507
- fix(eval): check final response in failure attribution by @Jacqueline122 in https://github.com/ag2ai/ag2/pull/3506
- fix(skills): accept SKILL.md files that start with a UTF-8 BOM by @kabishou11 in https://github.com/ag2ai/ag2/pull/3502
- feat(anthropic): support anthropic SDK 2.x and deprecate sampling par… by @vvlrff in https://github.com/ag2ai/ag2/pull/3513
- chore(deps): bump certifi from 2026.7.22 to 2026.10.18 by @dependabot[bot] in https://github.com/ag2ai/ag2/pull/3515
- feat(tools): add per-invocation function tool timeouts by @Lancetnik in https://github.com/ag2ai/ag2/pull/3514
- feat(anthropic): expose the SDK's open_telemetry option on AnthropicConfig by @ninglinLiu in https://github.com/ag2ai/ag2/pull/3519
- chore: bump version to 1.2.2 by @Lancetnik in https://github.com/ag2ai/ag2/pull/3520
- feat(openai): structured question instructions on OpenAIDecisionsConfig by @yftx293 in https://github.com/ag2ai/ag2/pull/3500
- feat(stream): add subscriber and observer timeouts by @Lancetnik in https://github.com/ag2ai/ag2/pull/3518
- feat(openai): deprecate Chat Completions default ahead of 1.4.0 by @Lancetnik in https://github.com/ag2ai/ag2/pull/3517
New Contributors
- @glasserai made their first contribution in https://github.com/ag2ai/ag2/pull/3462
- @fallintoplace made their first contribution in https://github.com/ag2ai/ag2/pull/3451
- @original4422 made their first contribution in https://github.com/ag2ai/ag2/pull/3446
- @rome-xi made their first contribution in https://github.com/ag2ai/ag2/pull/3499
- @its-amann made their first contribution in https://github.com/ag2ai/ag2/pull/3495
- @Jacqueline122 made their first contribution in https://github.com/ag2ai/ag2/pull/3506
- @ninglinLiu made their first contribution in https://github.com/ag2ai/ag2/pull/3519
- @yftx293 made their first contribution in https://github.com/ag2ai/ag2/pull/3500
Full Changelog: https://github.com/ag2ai/ag2/compare/v1.2.1...v1.2.2