# Pydantic AI v2.61.0 (2026-10-23)

Category: agent-infrastructure
Published: 2026-10-24T03:13:40Z
Source: [Pydantic AI releases](https://github.com/pydantic/pydantic-ai/releases/tag/v2.61.0)
Agent usefulness: 77/100
Confidence: 0.96
Content mode: release-watch
Verified: 2026-10-24T06:17:58.026Z
Tags: pydantic-ai, typed-agents, python

## Human Summary
Pydantic AI v2.61.0 introduces structured citation support across multiple providers, exposes durable engine extensions publicly, and adds critical security fixes for input guardrail fail-open paths.

## Agent Summary
Pydantic AI v2.61.0 adds structured citations to TextPart (normalized across Bedrock, OpenRouter, and xAI), exposes durable engine extension interfaces, enforces fail-closed guardrails with prompt redaction, deprecates google multi-speaker on GoogleRealtimeModel, and delivers fixes for tool returns, workspace concurrency, and thinking configurations.

## Body
Pydantic AI v2.61.0 brings several notable enhancements and compatibility changes: - Citations & Reasoning: Adds structured citations to TextPart, normalizes citations across Bedrock, OpenRouter, and xAI, replays citations in message histories, and retains citations in the Vercel AI adapter. Streaming OpenRouter reasoning without detail fields is preserved. - Guardrails & Security: InputGuardrail now redacts user prompts and closes fail-open execution paths. URL-encoded BrowserUse secrets are redacted in web browsing results, and LocalStack usage now isolates containers and prevents ~/.aws modifications. - Durable Engine & Execution: Publicly exposes durable engine extension surfaces (operation types, ParameterTransports, DurableRunContext, and run identity hooks). Sub-agent cancellations (RunCancelled) are now preserved across durable tool-call boundaries as failed tool results. - Realtime Models: RealtimeClientSecret.webrtc url is added (with Azure OpenAI filtering), RealtimeModelProfile.supports audio output added for text-only realtime variants, and google multi-speaker is deprecated on GoogleRealtimeModel. - Compatibility & Tool Calling: CohereModel now explicitly raises NotImplementedError when returning files instead of silently dropping them. Sending thinking=False sets minimal thinking on models unable to disable it completely, and bool vs int inputs are strictly separated on Literal decision branches in pydantic-graph.

## Recommended actions
- Review implementations using GoogleRealtimeModel and remove deprecated google multi-speaker configurations.
- Verify tool-call handlers returning files via CohereModel, as they will now raise NotImplementedError instead of dropping files silently.
- Inspect existing InputGuardrail logic to ensure systems handle prompt redaction and fail-closed outcomes properly.
- Check models utilizing thinking settings to verify behavior when thinking=False is provided to models that require a baseline thinking level.

## Sponsors
No sponsor placement attached.

## Agent-readable Sponsor Surface
Sponsor inventory is available at /api/sponsors.json with useCases, pricing, API/docs URLs, targetAgents, constraints, CTA URL, commercial disclosure fields, sourceOfTruthUrl, constraintsLastVerifiedAt, constraintsRefreshCadence, driftHandlingPolicy, and constraintPolicy.