Releases: openai/openai-agents-python
v0.6.2
What's Changed
- fix: allow static tool filtering without agent and run_context in MCPServer by @sevakva in #2108
- Fix as_tool returning blank string on early tool termination by @ihower in #2112
- docs: clarify handoff() docs, callable not supported by @ihower in #2116
- Fix: usage from earlier stream chunks when later chunks have none by @ihower in #2126
- Fix #2130 streaming hang when session.add_items raises an exception by @ihower in #2131
- fix: save conversation to session before handoff for non-streaming path by @mjschock in #2128
- docs: add community session implementations section by @knowsuchagency in #2139
- Update all translated document pages by @github-actions[bot] in #2142
- fix(usage): Normalize None token detail objects on Usage initialization by @codefromthecrypt in #2141
- Enable previous_response_id chaining for internal calls on the first turn by @ihower in #2117
- fix(litellm): preserve reasoning.summary when passing to LiteLLM by @Chesars in #2144
- Update all translated document pages by @github-actions[bot] in #2147
- Allow user to send None values to Realtime API by @Sean-Der in #2152
- v0.6.2 by @rm-openai in #2153
New Contributors
- @sevakva made their first contribution in #2108
- @mjschock made their first contribution in #2128
- @Chesars made their first contribution in #2144
- @Sean-Der made their first contribution in #2152
Full Changelog: v0.6.1...v0.6.2
v0.6.1
What's Changed
- fix: invalid model setting when passing prompt to Agent by @seratch in #1852
- docs: document input guardrail execution modes by @RVV-karma in #2084
- Update all translated document pages by @github-actions[bot] in #2104
- fix: #2097 fix the default settings for SIP realtime runner by @seratch in #2105
- version 0.6.1 by @seratch in #2106
Full Changelog: v0.6.0...v0.6.1
v0.6.0
Key changes
Handoff behavior has a breaking change in this version. Specifically, the message history is now collapsed into a single message when handing off to a new agent. We have verified and evaluated this behavior and think it works better, but recommend testing with your agents before upgrading to v0.6.0 in production.
What's Changed
- fix(twilio): add configurable startup delay to avoid initial audio jitter (fixes #1906) by @Shraman123 in #2033
- fix: #2081 Redis SSL Connection Error with redis-py v7 by @yju0808 in #2082
- Nest handoff history by default by @jhills20 in #1996
- Upgrade openai-python to 2.8.0 for GPT 5.1 by @ihower in #2091
- Update all translated document pages by @github-actions[bot] in #2092
- Add prompt_cache_retention to ModelSettings by @ihower in #2095
- feat: add run_in_parallel parameter to input guardrails by @RVV-karma in #1986
- fix: #2008 Fix agent memory leak using weakref by @DanieleMorotti in #2014
- docs: fix typos in some files by @Edge-Seven in #2096
- feat: add tool error logging by @danilbogdan in #1804
- v0.6.0 by @rm-openai in #2093
New Contributors
- @Shraman123 made their first contribution in #2033
- @yju0808 made their first contribution in #2082
- @RVV-karma made their first contribution in #1986
- @Edge-Seven made their first contribution in #2096
- @danilbogdan made their first contribution in #1804
Full Changelog: v0.5.1...v0.6.0
v0.5.1
Key update is support for new tools from the GPT-5.1 launch: shell and apply_patch.
What's Changed
- Docs: Add per-request usage to docs and example script by @habema in #2026
- docs: Update document pages for v0.5.0 release by @seratch in #2019
- Update all translated document pages by @github-actions[bot] in #2044
- Fix Anthropic model used in LiteLLM example by @amri369 in #2047
- fix: #2073 Improve type hinting in memory extension modules by @habema in #2077
- Add new tools for gpt-5.1 by @dkundel-openai in #2079
- v0.5.1 by @rm-openai in #2080
Full Changelog: v0.5.0...v0.5.1
v0.5.0
Key Changes
This version doesn’t introduce any visible breaking changes, but it includes new features and a few significant updates under the hood:
- Added support for
RealtimeRunnerto handle SIP protocol connections - Significantly revised the internal logic of
Runner#run_syncfor Python 3.14 compatibility
What's Changed
- docs: #1999 adjust the realtime module code comment by @seratch in #2000
- docs: improve typing in lifecycle hook example code by @seratch in #2002
- Add Python 3.14 to the supported versions by @seratch in #1961
- feat: #1760 Add SIP support for realtime agent runner by @seratch in #1993
- fix: improve run_sync's python 3.14 compatibility by @seratch in #2006
- feat: #1994 Add a list of per-request usage data to Usage by @habema in #1995
- fix: use ResponseOutputRefusal for refusal content part added event by @mshsheikh in #2013
- docs: clarify on_tool_start and on_tool_end hooks for local tools only by @ihower in #2037
- fix: #2038 openai==2.7.0 compatibility by @seratch in #2039
- fix(usage): Normalize None token details on Usage initialization by @codefromthecrypt in #2034
- fix(realtime): include tool arguments in RealtimeToolStart/RealtimeToolEnd events by @ruskaruma in #2028
- Add Dapr session storage option by @filintod in #1937
- v0.5.0 by @seratch in #2015
New Contributors
- @codefromthecrypt made their first contribution in #2034
Full Changelog: v0.4.2...v0.5.0
v0.4.2
What's Changed
- fix: #1764 enable developers to pass custom reasoning effort for LiteLLM providers by @seratch in #1972
- ci: make format required (devs should run
make formatbefore committing) by @filintod in #1979 - Fix: Add empty checks for reasoning content arrays in stream handler by @gn00295120 in #1982
- fix: #1942 Enable async tool calling in Realtime sessions by @seratch in #1984
- Fix #1559: Handle empty choices array in LiteLLM model (same as PR #935) by @gn00295120 @ihower in #1981
- v0.4.2 by @seratch in #1988
Full Changelog: v0.4.1...v0.4.2
v0.4.1
What's Changed
- Add breaking change notes in docs by @seratch in #1894
- Update all translated document pages by @github-actions[bot] in #1922
- docs: add missing items in side navi bar (ja, zh) by @seratch in #1932
- Update all translated document pages by @github-actions[bot] in #1933
- Fix: call
_fix_tool_message_orderingfor all Anthropic models by @habema in #1936 - make format on main branch returns diff on some files by @filintod in #1947
- fix: prevent ValueError when audio buffer is empty in STT (fixes #821) by @gn00295120 in #1934
- fix: add missing mcp_approval_response event name (fixes #1020) by @gn00295120 in #1931
- fix: Remove trailing commas causing tuple assignment in response cancellation by @gn00295120 in #1952
- fix: await cancelled websocket task to prevent resource leak by @gn00295120 in #1955
- fix: prevent race condition in listener iteration by @gn00295120 in #1956
- Tweak CI test job settings by @seratch in #1962
- Remove unused ui.py example file by @ihower in #1967
- fix: #1907 guardrails w/ turn_detection.interrupt_response: true by @seratch in #1968
- Fix #1846 Litellm: fails with function name for tool_choice parameter w/ streaming enabled by @ihower in #1971
- Fix streaming trace end before guardrails complete by @zbirenbaum in #1921
- Add engine accessor to SQLAlchemySession for closing it when it's created from a URL by @gn00295120 in #1960
- Make Tool Output dict conversion stricter to improve backward compatibility by @ihower in #1965
- version 0.4.1 by @seratch in #1963
New Contributors
- @filintod made their first contribution in #1947
- @gn00295120 made their first contribution in #1934
- @zbirenbaum made their first contribution in #1921
Full Changelog: v0.4.0...v0.4.1
v0.4.0
Key Changes
In this version, openai package v1.x versions are no longer supported. Please use openai v2.x along with this SDK.
What's Changed
- fix: making input_file's filename optional in code for supporting non-OpenAI models by @ant31 in #1839
- feat: #1829 add httpx_client_factory to MCPServerStreamableHttp initialization options by @jjcampana in #1833
- fix: #1789 Fix multi-turn handling for conversation_id and previous_response_id: only send new items by @ihower in #1827
- Update all translated document pages by @github-actions[bot] in #1842
- docs: improve formatting consistency in tools documentation by @AbdulSamad94 in #1856
- Update all translated document pages by @github-actions[bot] in #1858
- docs: add documentation for extension feature EncryptedSession by @maxmekiska in #1872
- Update all translated document pages by @github-actions[bot] in #1873
- Fix: Correct streaming order for ReasoningItem and RawResponsesStreamEvent events by @ihower in #1869
- fix: adjust realtime handoff import by @mcbortolozzo in #1861
- Migrate openai from 1.x to 2.2.0 by @seratch in #1874
- fix: #1840 roll back session changes when Guardrail tripwire is triggered by @seratch in #1843
- docs: Add Chinese translation for documents by @SepineTam in #1878
- docs: add ToolContext section for advanced tool metadata by @MuhammadSaqib786 in #1868
- Fix: Exclude unset fields in OpenAIConversationsSession.get_items() by @ihower in #1883
- Update all translated document pages by @github-actions[bot] in #1891
- Feat: Expose MCP message handler configuration by @freeznet in #1795
- fix: handle omit type in
_remove_not_given()for litellm model by @HareeshBahuleyan in #1893 - fix: convert oneOf to anyOf in strict schema for OpenAI compatibility by @ruskaruma in #1884
- Fix Local shell tool: return tool output to the LLM by @ihower in #1855
- Image, file output types for functions by @rm-openai in #1898
- Update all translated document pages by @github-actions[bot] in #1910
- Add graceful cancel mode for streaming runs by @habema in #1896
- Document
AdvancedSQLiteSessionand refactor session docs by @habema in #1791 - Update all translated document pages by @github-actions[bot] in #1913
- Fixes realtime example app stability issues by @thli-openai in #1905
- fix: #1900 fix a bug where SQLAlchemySession could return items in an invalid order by @seratch in #1917
- fix: #1916 openai_chatcompletions.Converter.extract_all_content does not support input_audio type items by @seratch in #1918
- v0.4.0 by @seratch in #1919
New Contributors
- @jjcampana made their first contribution in #1833
- @mcbortolozzo made their first contribution in #1861
- @SepineTam made their first contribution in #1878
- @MuhammadSaqib786 made their first contribution in #1868
- @freeznet made their first contribution in #1795
- @HareeshBahuleyan made their first contribution in #1893
- @ruskaruma made their first contribution in #1884
- @thli-openai made their first contribution in #1905
Full Changelog: v0.3.3...v0.4.0
v0.3.3
What's Changed
- Feat: Add AdvancedSQLiteSession with conversation branching & usage tracking by @habema in #1662
- Fix extended thinking bug by reordering tool messages by @habema in #1798
- feat: add Redis session support for scalable distributed memory by @damianoneill in #1785
- Add agent hooks to lifecycle_example by @seratch in #1809
- Update models in docs by @seratch in #1810
- Update all translated document pages by @github-actions[bot] in #1811
- Fix code snippet error in MCP docs by @seratch in #1812
- Update all translated document pages by @github-actions[bot] in #1813
- Adding tool input and output guardrails by @steven10a in #1792
- Korean translation by @tylerryu-oai in #1816
- Update all translated document pages by @github-actions[bot] in #1818
- docs: update examples.md to match current examples directory structure by @AbdulSamad94 in #1819
- Update all translated document pages by @github-actions[bot] in #1820
- Add guidelines for translation script contributors by @seratch in #1821
- Add missing parens in docs links by @tcbegley in #1825
- Update all translated document pages by @github-actions[bot] in #1826
- docs: fix link errors in sessions document page by @seratch in #1835
- Update all translated document pages by @github-actions[bot] in #1836
- fix: #1834 minor error in docstring by @seratch in #1837
- v0.3.3 by @rm-openai in #1838
New Contributors
- @damianoneill made their first contribution in #1785
- @steven10a made their first contribution in #1792
- @tylerryu-oai made their first contribution in #1816
- @AbdulSamad94 made their first contribution in #1819
- @tcbegley made their first contribution in #1825
Full Changelog: v0.3.2...v0.3.3
v0.3.2
What's Changed
- fix #1750 better error message when passing AgentHooks to Runner by @seratch in #1752
- Enhance function tool schemas with Annotated types by @MuhammadHassaanArain in #1777
- fix(chatcmpl): preserve all LiteLLM thinking-block signatures in converter by @serialx in #1779
- Update dynamic_system_prompt.py example to use dataclass for simiplicity by @SheikhMuhammadHamza-HS in #1774
- fix(chatcmpl): preserve text content when adding Anthropic thinking blocks to tool calls by @serialx in #1784
- fix: #556 add llms.txt / llms-full.txt by @seratch in #1782
- Add tool call arguments in ToolContext for RunHooks by @ihower in #1765
- Allow headers override instead of just ua by @jiwon-oai in #1787
- v0.3.2 by @rm-openai in #1793
New Contributors
- @SheikhMuhammadHamza-HS made their first contribution in #1774
Full Changelog: v0.3.1...v0.3.2