Key Changes
Default model change
In this version, the SDK default model is now gpt-5.4-mini instead of gpt-4.1. This could affect agents and runs that do not explicitly set a model. Because the new default is a GPT-5 model, implicit default model settings now include GPT-5 defaults such as reasoning.effort="none" and verbosity="low".
The new default model should work better for most use cases (see the report at #3147), but if you need to keep the previous default model behavior for some reasons, set a model explicitly on the agent or run config like Agent(name="Assistant", model="gpt-4.1"), or set the OPENAI_DEFAULT_MODEL environment variable.
Disable max_turns detection
This version adds a new option max_turns=None to disable the Agents SDK run turn limit while preserving the existing default of DEFAULT_MAX_TURNS (10) when max_turns is omitted.
Tool execution concurrency
This version adds a new SDK-side runtime configuration for local function tool execution concurrency: ToolExecutionConfig(max_function_tool_concurrency=...) on RunConfig, preserves default behavior when unset. The change keeps provider-side ModelSettings.parallel_tool_calls separate from SDK-side local execution scheduling.
Server-prefixed MCP tool naming
This version adds a new option include_server_in_tool_names to MCPConfig. When it is set to True, the SDK includes the MCP server name in the tool name to prevent tool name conflicts with other MCP servers.
agent = Agent(
name="Assistant",
mcp_servers=[my_mcp_server],
mcp_config={"include_server_in_tool_names": True},
)What's Changed
- feat: switch the default model to a newer mini model (affecting only when a model is unset) by @seratch in #3147
- feat: allow disabling max_turns with None by @seratch in #3132
- feat: #1167 add opt-in server-prefixed MCP tool names by @mavrickdeveloper in #3019
- feat: #1859 add runtime function tool concurrency config by @seratch in #3152
- fix: #3104 stabilize chat completions tool call output indexes by @seratch in #3161
- fix: reject external symlink targets during hydrate by @Aphroq in #3094
- fix: make Permissions hashable to match User and Group by @ioleksiuk in #3154
Documentation & Other Changes
- docs: update translated document pages by @github-actions[bot] in #3151
- docs: update translated document pages by @github-actions[bot] in #3160
- docs: realtime guardrail fallback behavior by @mindbomber in #3157
- docs: update translated document pages by @github-actions[bot] in #3162
- Release 0.16.0 by @github-actions[bot] in #3150
New Contributors
- @mavrickdeveloper made their first contribution in #3019
- @mindbomber made their first contribution in #3157
Full Changelog: v0.15.3...v0.16.0