Releases: openai/openai-agents-python
Releases · openai/openai-agents-python
Release list
v0.18.2
What's Changed
- feat: support GPT-5.6 request controls by @seratch in #3794
- feat: add hosted multi-agent beta support by @seratch in #3788
- fix(sandbox): own Daytona PTY worker tasks by @seratch in #3778
- fix(realtime): enqueue callback errors synchronously by @seratch in #3777
- fix(realtime): use monotonic playback timing by @seratch in #3776
- fix(sandbox): own Docker deferred cleanup tasks by @seratch in #3779
- fix(sandbox): own Unix PTY fd close tasks by @seratch in #3780
- fix(litellm): surface content-filter refusals instead of an empty turn by @seanturner83 in #3769
- refactor(sandbox): share core PTY output collection by @seratch in #3796
- refactor(sandbox): share extension PTY output collection by @seratch in #3797
- refactor(sandbox): share E2B rclone setup by @seratch in #3798
- refactor(sandbox): share Runloop rclone setup by @seratch in #3799
- refactor: share retry error metadata extraction by @seratch in #3800
- refactor: share retry-after parsing by @seratch in #3801
Documentation & Other Changes
- fix: serialize model-backed rollout interruptions as dicts by @Otis0408 in #3790
- chore: enable G004 logging lint rule by @seratch in #3802
- chore: enable RUF012 for runtime source by @seratch in #3803
- chore: remove unused noqa directives by @seratch in #3804
- chore: exempt OpenAI package from dependency cooldown by @seratch in #3792
- Release 0.18.2 by @github-actions[bot] in #3805
New Contributors
- @Otis0408 made their first contribution in #3790
- @seanturner83 made their first contribution in #3769
Full Changelog: v0.18.1...v0.18.2
v0.18.1
What's Changed
- feat: add GPT-5.6 model defaults and migrate examples by @seratch in #3774
- fix: support cache-write usage across OpenAI Python versions by @seratch in #3773
- fix(realtime): make session cleanup deterministic by @seratch in #3767
- fix: preserve nested tool state during restoration by @seratch in #3753
- fix: close Chat Completions streams on early exit by @fallintoplace in #3689
- fix(sessions): handle list content in AdvancedSQLiteSession browsing helpers by @anxkhn in #3761
- fix(models): accumulate streamed logprobs in place to avoid O(n^2) copies by @anxkhn in #3762
- fix: send logprobs=True when top_logprobs is set on Chat Completions by @winklemad in #3763
Documentation & Other Changes
- docs: updates for v0.18.0 by @seratch in #3741
- docs(realtime): fix RealtimeRunner context docstring by @anxkhn in #3748
- docs: clarify agent tool state options by @william-xue in #3754
- test(items): document refusal None invariant by @seratch in #3751
- Release 0.18.1 by @github-actions[bot] in #3775
New Contributors
- @william-xue made their first contribution in #3754
- @winklemad made their first contribution in #3763
Full Changelog: v0.18.0...v0.18.1
v0.18.0
Key Changes
RealtimeAgent's default is now gpt-realtime-2.1
Since this version, the default model for RealtimeAgents is gpt-realtime-2.1: https://developers.openai.com/api/docs/models/gpt-realtime-2.1
What's Changed
- feat: update default realtime model to gpt-realtime-2.1 by @seratch in #3740
- feat: add Unicode storage option to SQLAlchemySession by @seratch in #3746
- fix(visualization): keep fillcolor on handoff nodes by merging style attributes by @comp in #3744
Documentation & Other Changes
- docs: updates for v0.17.8 release by @seratch in #3737
- Release 0.18.0 by @github-actions[bot] in #3742
New Contributors
Full Changelog: v0.17.8...v0.18.0
v0.17.8
What's Changed
- feat: add invalid final output recovery handler by @seratch in #3736
- fix: propagate realtime session iterator cancellation by @fallintoplace in #3686
- fix: redact realtime validation failure logs by @fallintoplace in #3687
- fix: preserve non-dict Mapping values in _to_dump_compatible by @anxkhn in #3700
- fix: escape quotes and backslashes in DOT names for visualization by @anxkhn in #3712
- fix: enforce strict Pydantic validation when strict_json_schema=True + handoffs by @Om-Borse26 in #3724
- fix: fix an issue with length-frame exec-stdin writes within a sandbox by @imran31415 in #3719
Documentation & Other Changes
- docs: add DProvenanceKit to external tracing processors list by @Therealdk8890 in #3726
- docs: add sandbox examples to examples index by @saime428 in #3731
- test: improve coverage for stream and sandbox edge cases by @seratch in #3730
- chore(deps): bump astral-sh/setup-uv from 8.1.0 to 8.2.0 by @dependabot[bot] in #3714
- chore(deps): bump actions/setup-python from 6.2.0 to 6.3.0 by @dependabot[bot] in #3715
- chore(deps): bump actions/stale from 10.2.0 to 10.3.0 by @dependabot[bot] in #3716
- chore(deps): bump actions/checkout from 6.0.2 to 7.0.0 by @dependabot[bot] in #3717
- Release 0.17.8 by @github-actions[bot] in #3739
New Contributors
- @fallintoplace made their first contribution in #3686
- @anxkhn made their first contribution in #3700
- @Om-Borse26 made their first contribution in #3724
- @imran31415 made their first contribution in #3719
- @Therealdk8890 made their first contribution in #3726
- @saime428 made their first contribution in #3731
Full Changelog: v0.17.7...v0.17.8
v0.17.7
What's Changed
- feat: expose configurable websocket max_size limit by @anneheartrecord in #3645
- feat: add buffered Chat Completions tool-call streaming by @incoffeemonster in #3506
- fix: reduce sandbox sink buffering and spool timeouts by @2830500285 in #3642
- fix: #3346 clean up branch-only messages when deleting branches by @Aphroq in #3347
- fix: #3348 make AdvancedSQLiteSession add_items atomic by @Aphroq in #3349
- fix: cancel sibling guardrail tasks when one raises by @adityasingh2400 in #3239
- fix: skip needs_approval_checker when status resolved in _collect_runs_by_approval by @adityasingh2400 in #3259
- fix: validate ls special permission bits by position by @a1vazovsky in #3420
- fix: gate remote-mount edit guidance by mode by @a1vazovsky in #3423
- fix: remove dependency on types-requests by @rouge8 in #3509
- fix: empty list/tuple tool output dropped via all([]) == True by @vidigoat in #3554
- fix: wake PTY output collection on process exit (E2B) by @rohitrastogi in #3610
- fix: avoid stale object-id dedupe in server conversation tracker by @chutch in #3621
- fix: report effective Blaxel timeouts by @he-yufeng in #3643
- fix: prevent ambiguous Realtime multi-agent tool dispatch by @mavrickdeveloper in #3441
- fix: add hint to duplicated MCP server tool name error message by @wustwyh in #3678
- fix: recursively extract HTTP errors from nested ExceptionGroups by @mshsheikh in #3556
Documentation & Other Changes
- docs: #3461 changes for tool_not_found_behavior option by @seratch in #3462
- docs: changes for #3487 feature addition by @seratch in #3488
- docs: fix OpenAI capitalization in auto-generated ref titles by @atimothee in #3646
- docs: add SDK maintainer references and review guidance by @seratch in #3676
- Release 0.17.7 by @github-actions[bot] in #3682
New Contributors
- @rouge8 made their first contribution in #3509
- @vidigoat made their first contribution in #3554
- @rohitrastogi made their first contribution in #3610
- @chutch made their first contribution in #3621
- @he-yufeng made their first contribution in #3643
- @anneheartrecord made their first contribution in #3645
- @2830500285 made their first contribution in #3642
- @atimothee made their first contribution in #3646
- @incoffeemonster made their first contribution in #3506
- @wustwyh made their first contribution in #3678
Full Changelog: v0.17.6...v0.17.7
v0.17.6
What's Changed
- feat: add pre-approval tool input guardrails by @seratch in #3487
- feat: add SDK-only custom data for tool outputs by @seratch in #3486
- fix: enforce the documented strict JSON-compatible contract for #3486 by @siddiksawani in #3657
- fix: suppress handoff whitespace tool-name warnings by @seratch in #3652
Documentation & Other Changes
- docs: fix typo in sandbox guide by @mshsheikh in #3628
- Release 0.17.6 by @github-actions[bot] in #3659
New Contributors
- @siddiksawani made their first contribution in #3657
Full Changelog: v0.17.5...v0.17.6
v0.17.5
What's Changed
- fix: expose sandbox error retryability by @qiyaoq-oai in #3581
- fix: #3512 type tool-end hook results as object by @seratch in #3518
- fix: use tuple form for SpeechGroupSpanData
__slots__by @jluocsa in #3534 - chore: bump Modal sandbox extra to 1.4.3 by @jdoughty04 in #3538
Documentation & Other Changes
- docs: add MongoDB session example under examples/memory by @alexbevi in #3036
- docs: add missing space in MCP params docstrings by @jluocsa in #3535
- docs: fix docstring typo in stdio params env description by @mshsheikh in #3557
- docs: fix two docstring grammar errors in tool.py by @jluocsa in #3543
- docs: add Latitude to external tracing processors list by @guillemwilly in #3577
- docs: tweak in usage doc by @mshsheikh in #3597
- docs: fix string concatenation typo in agent instructions by @mshsheikh in #3599
- docs: capitalization fix in tracing docs by @mshsheikh in #3602
- docs: fix subject-verb agreement in agent loop description by @mshsheikh in #3605
- test: add unit tests for run_demo_loop streaming, EOF, and empty-input paths by @jluocsa in #3542
- test: add unit tests for _openai_retry helpers (77% -> 95% coverage) by @jluocsa in #3544
- Release 0.17.5 by @github-actions[bot] in #3619
New Contributors
- @jluocsa made their first contribution in #3534
- @jdoughty04 made their first contribution in #3538
- @guillemwilly made their first contribution in #3577
Full Changelog: v0.17.4...v0.17.5
v0.17.4
What's Changed
- feat: support Realtime custom voice objects by @lionel-oai in #3473
- fix: #3459 add opt-in recovery for missing function tools by @seratch in #3461
- fix: apply hardened http client default to MCP SSE transport by @ioleksiuk in #3466
- fix: use non-None value for output in FunctionSpanData by @rmotgi1227 in #3475
- fix: add missing entries to span slots by @rmotgi1227 in #3483
- fix: redact invalid JSON payload in ModelBehaviorError data by @LeSingh1 in #3485
- fix: export more tracing related functions & types from agents by @rmotgi1227 in #3489
- fix: export MCPListToolsItem, ToolSearchCallItem, and ToolSearchOutputItem from agents by @rmotgi1227 in #3490
Documentation & Other Changes
- Release 0.17.4 by @github-actions[bot] in #3505
New Contributors
- @rmotgi1227 made their first contribution in #3475
Full Changelog: v0.17.3...v0.17.4
v0.17.3
What's Changed
- fix: keep mountpoint credentials out of sandbox commands by @seratch in #3429
- fix: unify memory optional dependency import errors by @seratch in #3389
- fix: guard None text in text_message_output and add output guardrail count to RunErrorDetails by @zhoufengen in #3375
- fix: avoid mutating FunctionTool params_json_schema by @ioleksiuk in #3382
- fix: avoid mutating codex output schema input by @ioleksiuk in #3385
- fix: #3357 output schema names for Literal types by @Aphroq in #3358
- fix: skip wait_for_status when Vercel sandbox is in a terminal state by @cty-ut in #3410
- fix: filter hosted_tool_call types in remove_all_tools handoff filter by @ioleksiuk in #3386
- fix: guard None text in ItemHelpers.extract_last_content by @ioleksiuk in #3394
- fix: log exception when output guardrail raises instead of silently ignoring by @cty-ut in #3411
- fix: reject relative sandbox workspace roots by @matthewflint in #3422
- fix: normalize leading question marks in exposed port queries by @matthewflint in #3424
- fix: #3363 honor short custom voice splitter chunks by @Aphroq in #3364
- fix: runtime handling updates by @adrianbravo-oai @ioleksiuk in #3451
Documentation & Other Changes
- docs: add SDK review guidance by @seratch in #3376
- docs: mark Agent.instructions as optional by @ioleksiuk in #3384
- docs: translate all pages using new settings by @seratch in #3392
- docs: document auto_previous_response_id by @ioleksiuk in #3383
- docs: fix LiteLLM API reference redirect by @ynachiket in #3444
- docs: fix duplicated word in usaspending glossary example by @LeSingh1 in #3445
- chore: clean up CI jobs and update uv pin by @seratch in #3400
- ci: harden release tag workflow by @hintz-openai in #3399
- Release 0.17.3 by @github-actions[bot] in #3417
New Contributors
- @zhoufengen made their first contribution in #3375
- @hintz-openai made their first contribution in #3399
- @cty-ut made their first contribution in #3410
- @ynachiket made their first contribution in #3444
- @LeSingh1 made their first contribution in #3445
- @adrianbravo-oai made their first contribution in #3451
Full Changelog: v0.17.2...v0.17.3
v0.17.2
What's Changed
- fix: #3268 fix OpenAI Conversations reasoning persistence by @seratch in #3352
- fix: avoid auto response for unknown realtime tools (ref: #3287) by @seratch in #3366
- fix: #3354 interrupt tracing retry backoff on shutdown by @Aphroq in #3355
- fix: #3359 preserve local approval rejection reasons by @Aphroq in #3360
- fix: #3361 honor session settings in AsyncSQLiteSession by @Aphroq in #3362
- fix: #3310 avoid empty chat tool outputs by @Aphroq in #3312
Documentation & Other Changes
- docs: clarify max_delay for retries works by @seratch in #3350
- docs: update translated document pages by @github-actions[bot] in #3351
- docs: normalize memory docstring cross-references by @seratch in #3370
- docs: document sandbox archive limits after #3278 release by @Aphroq in #3311
- docs: update translated document pages by @github-actions[bot] in #3371
- Release 0.17.2 by @github-actions[bot] in #3368
Full Changelog: v0.17.1...v0.17.2