python Pydantic AI Releases · · 2.44.0

Pydantic-AI v2.44.0 Addresses Four Security Vulnerabilities and Adds New Features

sdkaigaengineerpython-agentic
breaking security feature patch

Pydantic-AI v2.44.0 has been released, providing critical security fixes for vulnerabilities found in `web_fetch_tool` and OpenTelemetry instrumentation. These updates address issues like IPv6 zone identifier bypasses, superlinear processing in `web_fetch`, incorrect domain comparisons, and data leakage in instrumentation. The release also introduces new features, including a Vercel AI SDK and Eve migration skill, a stable `AgentRunResult` serialization, and a `Storage` page for persistence. This update is important for users of Pydantic-AI, particularly those relying on its web fetching and instrumentation capabilities, and is available for both v2.44.0 (v2) and v1.107.6 (v1).

  • Add a Vercel AI SDK and Eve migration skill by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/8357
  • Add a Storage page so persistence is findable by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8336
  • Emit EnqueuedMessagesEvent when a realtime session delivers enqueued content by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8134
  • Forward blocked_domains to OpenAI web search by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/8323
  • Fix OpenAI hosted tool_search pairing in AG-UI by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/8313
Security (4)
  • GHSA-vmxc-h2x2-jmf3 (moderate): the cloud-metadata and private-IP blocklists could be bypassed with an IPv6 zone identifier on a URL opted into local network access, via FileUrl(force_download='allow-local') or web_fetch_tool(allow_local_urls=True). Both are off by default. Reported by @euriconicacio. (#8401)

  • GHSA-fpf4-vwcp-v4hp (moderate): web_fetch processed responses in superlinear time on the event loop, in both the HTML conversion and the charset decode, so a single attacker-chosen page could stall every agent in the process. Reported by @BrianWillows. (#8397, #8418, #8433)

  • GHSA-22h6-qm39-v87j (low): web_fetch_tool's domain lists were compared as written rather than in the form the resolver uses, so a blocked domain could be reached under another spelling. (#8407, #8421)

  • GHSA-4x9p-g9wm-8q7f (low): with InstrumentationSettings(include_content=False), spans still carried exceptions, error statuses, instructions and the output template. Reported by @BrianWillows. (#8403, #8408, #8419, #8428)

Features (4)
  • Add a Vercel AI SDK and Eve migration skill by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/8357
  • Give AgentRunResult a stable serialized shape, and settle a finished stream into one by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8269

  • Add a Storage page so persistence is findable by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8336
  • Emit EnqueuedMessagesEvent when a realtime session delivers enqueued content by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8134
Fixes (7)
  • Forward blocked_domains to OpenAI web search by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/8323
  • Fix OpenAI hosted tool_search pairing in AG-UI by @adtyavrdhn in https://github.com/pydantic/pydantic-ai/pull/8313
  • Let Agent.from_spec() construct without a model, deferring the requirement to run time by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8339

  • Let RealtimeSession.close() finish its teardown when the closing task is cancelled by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8142

  • Run a capability's prepare_tools over every tool the availability gate admits by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8071

  • Bound the realtime session event queue while nothing is iterating it by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8133
  • Report a run's own usage on its span, not the conversation total by @DouweM in https://github.com/pydantic/pydantic-ai/pull/8417
Read the original announcement →

https://github.com/pydantic/pydantic-ai/releases/tag/v2.44.0

Related releases