v2.20.0
EvoMap/evolverv2.20.0Jul 29, 2026by dsfaccini
AI Summary
A feature release adding support for Claude Opus 5 and OpenAI Responses API reasoning context, along with various bug fixes for usage tracking and error handling.
Key Highlights
- Added support for Claude Opus 5 model.
- Added OpenAI Responses API reasoning.context support.
- Preserve arbitrary RequestUsage fields across serialization.
- Fixed ALLOW_MODEL_REQUESTS guards for embeddings.
- Replay tool-search history across provider boundaries.
New Features
- Claude Opus 5 support.
- OpenAI Responses API reasoning.context support.
Full Release Notes
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### 🚀 Features * Add Claude Opus 5 (`claude-opus-5`) support by @dsfaccini in https://github.com/pydantic/pydantic-ai/pull/6723 * Add OpenAI Responses API `reasoning.context` support (default `all_turns`) for the `gpt-5.4`/`gpt-5.5`/`gpt-5.6` families by @pydanty[bot] in https://github.com/pydantic/pydantic-ai/pull/6673 ### 🐛 Bug Fixes * Preserve arbitrary `RequestUsage` fields across serialization by @alexmojaki in https://github.com/pydantic/pydantic-ai/pull/6685 * Capture Anthropic thinking tokens in usage details by @jakub-orsula-parrot in https://github.com/pydantic/pydantic-ai/pull/6753 * Fix `ALLOW_MODEL_REQUESTS` guards for embeddings by @zcxGGmu in https://github.com/pydantic/pydantic-ai/pull/6774 * Skip `include_server_side_tool_invocations` for Vertex on Gemini 3+ by @pydanty[bot] in https://github.com/pydantic/pydantic-ai/pull/6773 * Fix `_openrouter_settings_to_openai_settings` mutating caller's settings dict by @pydanty[bot] in https://github.com/pydantic/pydantic-ai/pull/6743 * Replay tool-search history across provider boundaries instead of dropping it by @DouweM in https://github.com/pydantic/pydantic-ai/pull/6780 * Preserve zero-valued OpenTelemetry usage details by @dsfaccini in https://github.com/pydantic/pydantic-ai/pull/6796 * Expose OpenAI Responses phase on the streamed `PartStartEvent` by @Jonas1312 in https://github.com/pydantic/pydantic-ai/pull/6785 * Make a bare `McpError` from an MCP server recoverable instead of fatal by @dsfaccini in https://github.com/pydantic/pydantic-ai/pull/6787 ## New Contributors * @jakub-orsula-parrot made their first contribution in https://github.com/pydantic/pydantic-ai/pull/6753 * @Jonas1312 made their first contribution in https://github.com/pydantic/pydantic-ai/pull/6785 * @dexhunter made their first contribution in https://github.com/pydantic/pydantic-ai/pull/6485 **Full Changelog**: https://github.com/pydantic/pydantic-ai/compare/v2.19.0...v2.20.0