v0.88.0
Codex SDK Python Changelog
This file tracks SDK-level changes. Keep the newest changes at the top.
0.88.0 (2026-01-22)
Added
- Thread options for
model_instructions_file,model_personality,max_threads,
collaboration_modes_enabled, andresponses_websockets_enabled. - App-server helper for
collaborationMode/listto fetch collaboration mode presets.
Updated
- Bundled Codex CLI vendor binaries updated to 0.88.0 via
scripts/setup_binary.py. - SDK version set to 0.88.0 to match Codex CLI release.
- README updated with new ThreadOptions mappings and collaboration mode list helper.
Notes
- Codex 0.88.0 adds device-code auth as a headless fallback and tightens config loading to
trusted folders (including symlink resolution). - Collaboration modes/presets, request-user-input tooling, and model personality/instruction
file config landed in the CLI/core stack.
0.87.0 (2026-01-17)
Added
- App-server input normalization now accepts
text_elements/byte_rangefor text items and
converts them to camelCase (textElements/byteRange) for the JSON-RPC protocol.
Updated
- Bundled Codex CLI vendor binaries updated to 0.87.0 via
scripts/setup_binary.py. - SDK version set to 0.87.0 to match Codex CLI release.
- README updated with app-server text element input normalization notes.
Notes
- Codex 0.87.0 round-trips user message text element metadata (byte ranges) through the
protocol/app-server/core stack. - MCP
CallToolResultnow includesthreadIdin bothcontentandstructuredContent. - Collaboration wait calls can block on multiple receiver IDs.
- Piped non-PTY commands no longer hang waiting on stdin; shell commands run under user snapshots.
0.86.0 (2026-01-16)
Added
- App-server
skills_listnow returns optionalinterfacemetadata when provided by
SKILL.toml(display name, icons, brand color, default prompt).
Updated
- Bundled Codex CLI vendor binaries updated to 0.86.0 via
scripts/setup_binary.py. - SDK version set to 0.86.0 to match Codex CLI release.
Notes
- Codex 0.86.0 can explicitly disable web search and advertises eligibility via a header.
- MCP elicitation accept now sends an empty JSON payload instead of null for stricter servers.
- Unified exec cleans up background processes to avoid late End events after listeners stop.
0.85.0 (2026-01-15)
Added
web_search_modethread option (disabled,cached,live) mapped to--config web_search=....- PydanticAI model provider now supports streamed responses and includes tool metadata in the
prompt (kind/strict/timeout/metadata).
Updated
- Legacy
web_search_enabled/web_search_cached_enablednow map toweb_searchfor CLI
compatibility. - Bundled Codex CLI vendor binaries updated to 0.85.0 via
scripts/setup_binary.py. - README updated for web search mode configuration and safety defaults.
- SDK version set to 0.85.0 to match Codex CLI release.
Notes
- Codex 0.85.0 app-server emits collaboration tool calls as item events, with richer agent
controls (spawn_agentrole presets and optional interrupt onsend_input). /modelsmetadata now includes upgrade migration markdown.- Linux sandbox falls back to Landlock-only when user namespaces are unavailable.
codex resume --lastnow respects the current working directory.- Stdin prompt decoding handles BOMs/UTF-16 with clearer errors.
0.81.0 (2026-01-15)
Added
- App-server helper for
config/mcpServer/reloadto refresh MCP server config.
Updated
- Bundled Codex CLI vendor binaries updated to 0.81.0 via
scripts/setup_binary.py. - README updated with the new
mcp_server_refreshconvenience method. - SDK version set to 0.81.0 to match Codex CLI release.
Deprecated
- Python 3.8 and 3.9 support are deprecated and will be removed in a future release.
Notes
- Codex 0.81.0 default model is now
gpt-5.2-codex. - Headless runs automatically switch to device-code login.
- Linux sandbox supports read-only bind mounts; app-server now emits
configWarning
notifications for config/rules parse errors.
0.80.0 (2026-01-11)
Added
- App-server JSON-RPC client with initialize handshake, notifications, and request handling.
- App-server helpers for
thread/start,thread/resume,thread/fork,thread/loaded/list,
thread/list,thread/archive,thread/rollback,config/read,config/value/write,
config/batchWrite,skills/list,model/list,command/exec,review/start,
MCP auth/status, account endpoints, feedback upload,configRequirements/read,
turn/start, andturn/interrupt. - App-server turn session wrapper with
ApprovalDecisionsfor auto-responding to approvals. - Config override helpers to pass
--config key=valueto Codex CLI runs. ThreadHooks+Thread.run_with_hooks()for event callbacks during streamed turns.- New examples for app-server usage (basic, fork, requirements, skill input, approvals),
turn sessions, hooks, notify hooks, and config overrides. - App-server error type (
CodexAppServerError). - Pytest
conftest.pyto makeuv run pytestwork without extra PYTHONPATH setup. - Added
UPGRADE_CHECKLIST.mdto guide future release updates. - GitHub Actions release workflow that creates GitHub releases from
CHANGELOG_SDK.md.
Updated
- Bundled Codex CLI vendor binaries updated to 0.80.0 via
scripts/setup_binary.py. - README updated with app-server usage, notify/OTEL notes, and config override examples.
- SDK version set to 0.80.0 to match Codex CLI release.
- Dev dependencies now include
pydanticandpydantic-aiso integration tests run inuv run pytest. - CI workflow now installs dev deps and enforces coverage in
pytest --cov=codex_sdk.
Deprecated
ThreadOptions.skills_enabledis deprecated; skills are always enabled in Codex 0.80+ and
the SDK no longer sendsfeatures.skills.
Notes
- PydanticAI integrations were reviewed; no code changes required for 0.80.0.