Skip to content

chore(deps): bump openai-agents from 0.19.4 to 0.21.0 - #148

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/openai-agents-0.21.0
Closed

chore(deps): bump openai-agents from 0.19.4 to 0.21.0#148
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/openai-agents-0.21.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 19, 2026

Copy link
Copy Markdown
Contributor

Bumps openai-agents from 0.19.4 to 0.21.0.

Release notes

Sourced from openai-agents's releases.

v0.21.0

Key Changes

This minor release does not introduce a known breaking SDK behavior change. The minor version bump is for the new provider-neutral testing APIs and the OpenAI Python v3 compatibility update.

Highlights:

  • Added agents.testing, agents.realtime.testing, and agents.voice.testing utilities for deterministic Agent, Sandbox, Realtime, and Voice workflow tests without provider requests.
  • Updated OpenAI provider compatibility to openai>=3.0.0,<4, including HTTPX2-aware request, response, transport, and exception handling.
  • Hardened RunState interruption snapshots, recursive agent-tool approvals, max-turn finalization, streaming cleanup, and sensitive-error redaction.
  • Improved MCP lifecycle snapshot isolation and added configurable retry backoff ceilings.
  • Added Sandbox Runloop existing-secret support and tightened view-image path grants.
  • Added stricter Voice validation for invalid channels, frame rates, incomplete multichannel frames, and non-finite audio rates.

What's Changed

Documentation & Other Changes

... (truncated)

Changelog

Sourced from openai-agents's changelog.

0.21.0

Version 0.21.0 requires openai v3 and moves the Agents SDK's OpenAI HTTP integrations to HTTPX2. Applications that use the default OpenAI client do not need to change their client setup, but applications that customize the OpenAI HTTP layer may need to migrate transport-facing code.

Highlights:

  • The required OpenAI dependency is now openai>=3.0.0,<4. A clean core installation uses HTTPX2 and no longer installs legacy httpx as a direct dependency.
  • The default OpenAI provider, Voice provider, Responses WebSocket support, tracing exporter, and provider retry normalization now use HTTPX2. Their existing Agents SDK public configuration and runtime behavior remain unchanged.
  • Applications that pass http_client= to AsyncOpenAI should migrate custom clients, transports, authentication, event hooks, mock transports, timeout values, URLs, requests, responses, and transport exception handling from httpx to httpx2. Prefer the OpenAI Python SDK's DefaultAsyncHttpx2Client when the application needs the OpenAI client's defaults plus custom HTTP options. See Custom HTTP clients with openai v3.
  • The Agents SDK does not convert arbitrary legacy HTTPX objects to HTTPX2. The OpenAI Python SDK's temporary legacy-client compatibility path requires an explicit httpx installation and should be treated as a migration bridge.
  • Local MCP HTTP customization continues to follow the installed MCP package: MCP Python SDK v1 supplies and uses legacy httpx, while MCP Python SDK v2 uses httpx2. Ordinary MCP connections do not need application changes. See MCP Python SDK v1 and v2.
  • Public provider-neutral testing utilities now cover Agent model, Sandbox session, Realtime session, and Voice pipeline workflows without provider or process dependencies. See Testing for recipes and guidance on when to keep the real provider adapter or integration boundary.

0.20.0

Version 0.20.0 includes a potentially breaking MCP dependency migration for applications that customize local MCP HTTP transports. It also updates the SDK default model used when an agent or run does not explicitly select one.

Highlights:

  • The SDK default model is now gpt-5.6-luna instead of gpt-5.4-mini. The default reasoning.effort="none" and verbosity="low" settings are unchanged.
  • Explicit agent models, run-level model overrides, and the OPENAI_DEFAULT_MODEL environment variable continue to take precedence over the SDK default.
  • Realtime input transcription settings now recognize gpt-transcribe, gpt-live-transcribe, and gpt-realtime-whisper. For low-latency gpt-live-transcribe sessions, nested audio.input.transcription settings can supply prompt, keywords, and multiple expected languages. The OpenAI client version pinned by this SDK supports the delay latency/accuracy level only with gpt-realtime-whisper. Use gpt-transcribe over WebSocket for transcription after a committed audio turn or for detected-language output. Setting audio.input.turn_detection=None explicitly disables automatic turn detection. See Input transcription settings.
  • Local MCP connections created by the Agents SDK now support MCP Python SDK v2 while retaining v1 compatibility through mcp>=1.19.0,<3. The Agents SDK adapts ordinary stdio, SSE, and Streamable HTTP connections automatically. With MCP v2 installed, these connections use mcp.Client(mode="auto") to probe the newest supported protocol and fall back to the legacy initialize handshake for older servers. If dependency resolution selects MCP v2, applications that supply custom httpx.Auth objects or httpx.AsyncClient factories must migrate those values to httpx2, or pin mcp<2 to retain the v1 HTTP stack. MCPServerStreamableHttp's params["ignore_initialized_notification_failure"] = True option also remains v1-only. See MCP Python SDK v1 and v2 for migration details.
  • Sandbox mount validation now rejects unsafe credential placement before sandbox or mount-helper side effects. Trusted applications can acknowledge mount-scoped or broad credential exposure for an exact in-container mount path without changing the storage capability tables. These acknowledgements are runtime-only and serialized sandbox state never grants credential authority by itself. At protected mount boundaries, the SDK returns a fresh redacted exception. If the source exception is an exact recognized SDK sandbox error and its approved structured fields validate, the replacement preserves that subtype and the validated safe fields. A recognized MountConfigError can also retain an SDK-generated safe validation message. Otherwise, the SDK returns a fresh generic redacted error. Provider-controlled or otherwise unapproved messages, command data, notes, context, causes, and source traceback state are not retained. See Mounts and remote storage and Resume from session state.
  • Retry policies can inspect stable replay-safety facts and explicitly set RetryDecision(approve_unsafe_replay=True) for a non-streaming request that the provider marked unsafe. This approval does not bypass aborts, emitted streamed output, or separate local-side-effect vetoes such as Programmatic Tool Calling. See Runner-managed retries.
  • Resumable RunState objects can now stage durable user input with add_input() before the next model call. Staged input survives serialization, runs through input guardrails, and produces one durable SDK input occurrence across local sessions and server-managed conversations. An explicitly approved unsafe replay can still resend the input to the provider and repeat provider-side work. See Add input before resuming.
  • Runtime reliability fixes align streamed and non-streamed output-guardrail session persistence, preserve FunctionTool subclasses during copying and namespacing, and raise an explicit error for unsupported Chat Completions audio output instead of silently completing an empty stream. The OpenAIResponsesCompactionSession wrapper attempts and awaits pre-compaction history recovery before cancellation reaches the caller. A VoicePipeline consumer now receives transcription-session close failures after a clean run, while an earlier turn failure retains precedence over a later close failure. RunState round trips now preserve local shell output, acknowledged computer safety checks, default-valued tool output fields, and Pydantic model or dataclass outputs encountered while traversing dictionaries, lists, or tuples. MCP conversion preserves free-form object schemas and image output, and serializes other raw content blocks such as audio and resource blocks as valid JSON text. MCPServerManager serializes overlapping lifecycle operations and applies finite default timeouts to connection and cleanup. Model replay removes server-owned created_by metadata from output items before using them as input.

0.19.0

This minor release does not introduce a breaking change. The minor version bump reflects a significant new OpenAI Responses feature area: Programmatic Tool Calling.

Highlights:

  • Added [ProgrammaticToolCallingTool][agents.tool.ProgrammaticToolCallingTool], which lets supported OpenAI Responses models generate JavaScript to coordinate tools eligible for Programmatic Tool Calling. It supports per-tool allowed_callers, structured outputs from FunctionTool instances, and integration with Runner streaming, guardrails, approvals, sessions, and RunState. See Programmatic Tool Calling for setup and constraints.
  • Added the public agents.decorators module and @tool as a shorter alias for the existing @function_tool decorator, alongside the existing guardrail decorators. FunctionTool instances now also support async callable objects.
  • SDK configuration now consistently accepts either typed settings objects or dictionaries across agents, runs, models, sessions, sandboxes, and voice pipelines, with validation for unknown settings.
  • Hardened error and diagnostic logging across models, tools, MCP, Realtime, sessions, sandboxes, and tracing to avoid exposing raw sensitive payloads while preserving useful debugging context.
  • Improved AnyLLM, LiteLLM, and Chat Completions compatibility, preserved session history across model retries, and added provider retry guidance for WebSocket overloads that occur before a response starts, so opt-in Runner retry policies can replay the failed attempt when permitted.
  • Added S3 mounts that can be configured only when a Vercel sandbox is created through VercelCloudBucketMountStrategy. Mounted sessions exclude bucket contents from workspace persistence and intentionally do not support dynamic mount changes or session resume.

0.18.0

This minor release does not introduce a breaking change. The minor version bump is for the Realtime agents default model update only.

Highlights:

  • Realtime agents now use gpt-realtime-2.1 as the default model, so new Realtime setups use the latest recommended model without extra configuration.

0.17.0

... (truncated)

Commits
  • 25aa6d9 release: 0.21.0 (#4387)
  • 1a0c088 fix(sandbox): honor view_image extra path grants (#4417)
  • 2b2d7fe fix(mcp): stop handing the tools cache to callers (#4424)
  • 4e5e7b2 fix(realtime): handle non-finite audio rates (#4419)
  • c0f2ff7 fix: preserve scripted annotation streaming across Python SDK releases (#4422)
  • 50d65f6 fix: resume recursive agent tool approvals (#4414)
  • 0b93ce8 fix: isolate RunState checkpoint tool decisions (#4413)
  • 3e87dc8 test: order test spans by start sequence, not by started_at alone (#4392)
  • 95f9d9a fix: detach RunState interruption snapshots (#4409)
  • 40927c9 fix: max-turn handler session semantics (#4412)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file pip labels Aug 19, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner August 19, 2026 22:08
@dependabot dependabot Bot added the pip label Aug 19, 2026
@github-actions
github-actions Bot enabled auto-merge (squash) August 19, 2026 22:08
@dependabot
dependabot Bot force-pushed the dependabot/pip/openai-agents-0.21.0 branch from 6ad1cd0 to 8687bd3 Compare August 19, 2026 22:10
@dependabot
dependabot Bot force-pushed the dependabot/pip/openai-agents-0.21.0 branch from 8687bd3 to 47f97ab Compare August 19, 2026 22:13
@dependabot
dependabot Bot force-pushed the dependabot/pip/openai-agents-0.21.0 branch from 47f97ab to 0d55e7e Compare August 19, 2026 22:15
Bumps [openai-agents](https://github.com/openai/openai-agents-python) from 0.19.4 to 0.21.0.
- [Release notes](https://github.com/openai/openai-agents-python/releases)
- [Changelog](https://github.com/openai/openai-agents-python/blob/main/docs/release.md)
- [Commits](openai/openai-agents-python@v0.19.4...v0.21.0)

---
updated-dependencies:
- dependency-name: openai-agents
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/pip/openai-agents-0.21.0 branch from 0d55e7e to 42b39e8 Compare August 19, 2026 22:17
@dependabot @github

dependabot Bot commented on behalf of github Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

Looks like openai-agents is up-to-date now, so this is no longer needed.

@dependabot dependabot Bot closed this Aug 19, 2026
auto-merge was automatically disabled August 19, 2026 22:19

Pull request was closed

@dependabot
dependabot Bot deleted the dependabot/pip/openai-agents-0.21.0 branch August 19, 2026 22:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file pip

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants