This release includes breaking changes for platform teams planning a safe upgrade.
Published 19d
AI Agents & Assistants
✓ No known CVEs patched
✓ No known CVEs patched in this version
Affected surfaces
crypto_tls
breaking_upgrade
Summary
AI summaryBroad release touches Changelog Full Changelog: https://github.com/openai/codex/compare/rust-v0.142.0...rust-v0.143.0, Bug Fixes, New Features, and app-server.
Full changelog
New Features
- Remote plugins are now enabled by default, with richer catalog rows, npm marketplace sources, and visible remote/local versions. (#30297, #26705, #29375, #30981)
- Codex can route authentication and Responses API traffic through macOS and Windows system proxies, including PAC and WPAD configurations. (#26708, #26709, #31335)
- Added
codex remote-control pairfor generating manual pairing codes from a running daemon. (#29913) - Added Amazon Bedrock GPT-5.6 Sol, Terra, and Luna models, with first-class support for
maxreasoning effort. (#30285, #30467) - MCP tools now use tool search by default, and ChatGPT-hosted MCP servers can explicitly use session authentication. (#29486, #29733)
- App-server clients can inspect environments, list descendant threads, and fork history through a specific turn. (#30291, #29591, #30277)
Bug Fixes
- Fixed Windows ConPTY input handling for line endings and backspace, plus sandbox credential retry edge cases. (#29734, #29624, #29637)
- Fixed stale TUI safety prompts and cancelled reviews that could leave MCP startup appearing busy. (#30490, #31189)
- Improved recovery when exec servers are temporarily offline and prevented remote-control token refresh retry storms. (#30098, #30201)
- Preserved trailing realtime transcript text and terminal rollout events during shutdown. (#29918, #30144)
- Improved incremental WebSocket request success by ignoring response metadata during comparisons. (#30770)
- Reduced installer failures from GitHub API rate limits by reusing release metadata. (#31056)
Documentation
- Documented UUID7 thread and turn IDs, plus recommended remote-executor integration-test workflows. (#27714, #29790)
Chores
- Updated OpenSSL, Hono, fast-uri, quick-xml, and crossbeam-epoch to address security advisories. (#29487, #29650, #30941, #31308)
Changelog
Full Changelog: https://github.com/openai/codex/compare/rust-v0.142.0...rust-v0.143.0
- #26708 PAC 3 - Add Windows system proxy resolver @canvrno-oai
- #28769 Register full CDP requirements feature @syuan-oai
- #29485 [codex] fetch featured IDs for remote plugins @ericning-o
- #29487 Upgrade bundled OpenSSL to 3.6.3 @jif-oai
- #29489 [codex] Update esbuild to 0.28.1 @pakrym-oai
- #29488 [plugins] Add dark-mode logo metadata @drewschuster-openai
- #29249 [codex] migrate environment context to model world state @pakrym-oai
- #29494 core: wrap token budget window context @bolinfest
- #29417 [codex] replace remote images with model-visible error text @rka-oai
- #28360 feat(core): store turn_id on ResponseItem metadata @owenlin0
- #29486 [codex] Use tool search for MCP tools by default @sayan-oai
- #29501 path-uri: clarify host-native path conversion @anp-oai
- #29504 fix: world state response item test @celia-oai
- #26704 TUI Plugin Sharing 4 - cover remote plugin catalog flows @canvrno-oai
- #29419 [codex] reject remote images at app-server ingress @rka-oai
- #28992 chore: improve expired Bedrock credential errors @celia-oai
- #29467 Make formatter output quiet on success @anp-oai
- #26709 PAC 4 - Add macOS system proxy resolver @canvrno-oai
- #29490 chore: warn when Code Mode lacks model metadata @celia-oai
- #29493 mcp: accept foreign absolute cwd for remote stdio @anp-oai
- #29473 Propagate safety buffering treatment metadata @fc-oai
- #24092 [codex] Reject unlowered PowerShell AST regions @bookholt-oai
- #29155 [codex] Expose service tier and reasoning effort in OTEL @daniel-oai
- #29068 [codex] stylistic changes @rka-oai
- #29518 Remove redundant Codex Apps manager flag @aibrahim-oai
- #27946 [codex] Use input items for Responses Lite tools @rka-oai
- #29528 Centralize Codex Apps client handling @aibrahim-oai
- #29577 Handle additional tools in image URL validation @aibrahim-oai
- #29575 Remove redundant Codex Apps cache guard @aibrahim-oai
- #29583 Group Codex Apps client setup @aibrahim-oai
- #29358 Allow codex sandbox to consume MCP sandbox state @jif-oai
- #29599 Stop persisting bridged log events @jif-oai
- #29615 Fix Codex Apps auth elicitation hang @jif-oai
- #29067 Namespace multi-agent v2 tools under collaboration @jif-oai
- #29614 path-uri: add lexical containment @jif-oai
- #28426 Share resumed rollout history @charliemarsh-oai
- #29634 Update rmcp to 1.8.0 @jif-oai
- #29650 Update vulnerable Hono and fast-uri dependencies @jif-oai
- #29498 [codex] Instrument rollout persistence bytes @wiltzius-openai
- #29659 [core] debounce current-time reminders by elapsed time @rka-oai
- #29608 Shut down superseded MCP managers on refresh @jif-oai
- #29527 core: use turn-owned world state for inline compaction @sayan-oai
- #29672 [codex] Handle additional tools in rollout persistence metrics @rka-oai
- #29669 Handle additional tools in rollout persistence metrics @winston-openai
- #29680 Revert "Handle additional tools in rollout persistence metrics" @rasmusrygaard
- #27714 app-server: document thread and turn IDs are UUID7 @owenlin0
- #29456 Prepare managed network sandbox context @jif-oai
- #28418 chore(core) rm AskForApproval::OnFailure @dylan-hurd-oai
- #29675 core: add extra metadata field to Thread struct @kumquatexpress
- #29013 Keep managed MITM CA private keys in proxy memory @winston-openai
- #29495 Separate local and remote plugin analytics IDs @jameswt-oai
- #29671 [codex] Preserve proxy state for filesystem sandbox helpers @iceweasel-oai
- #29513 [codex] allow image generation with provider auth @richardopenai
- #29526 core: resolve view_image paths in selected environment @anp-oai
- #29696 [codex] Fix stale approval policy in MCP test @sayan-oai
- #29704 [codex] Fix stale approval policy in MCP test @kumquatexpress
- #29547 core: use current step environments for tools @sayan-oai
- #28976 Add MCP tool call error metrics @stevenlee-oai
- #27045 feat(guardian): include connected account email in app reviews @viyatb-oai
- #29620 Decouple plugin manifest path resolution @jif-oai
- #29666 [codex] Report the exec-server working directory @rasmusrygaard
- #29705 feat(app-server): thread/turns/items/list -> thread/items/list @owenlin0
- #29716 code-mode: Rename codex_code_mode::CodeModeService @cconger
- #29712 test: branch on target OS instead of runner flavor @anp-oai
- #29728 core tests: rename automatic environment builder @anp-oai
- #29158 path-uri: remove legacy path deserialization @anp-oai
- #29519 core: persist initial context window metadata @bolinfest
- #28918 Make selected plugin roots URI-native @jif-oai
- #29515 [codex] define code mode host handshake protocol @cconger
- #29715 [codex] surface rollout budget exhaustion @rka-oai
- #29732 code-mode: Remove Session::is_alive() @cconger
- #29626 Load executor skills without host path conversion @jif-oai
- #29714 protocol: separate app and exec RPC ownership @anp-oai
- #29664 refactor: extract context window token status @bolinfest
- #29665 fix: scope context remaining to body window @bolinfest
- #29744 [codex] rename rollout budget error to session budget error @rka-oai
- #29739 Update new_context_window instructions @andmis
- #29743 core: reset context for token budget compaction @bolinfest
- #29477 Support thread-level originator overrides @alexsong-oai
- #29745 core: add wait_for_environment for starting environments @sayan-oai
- #28630 [codex] trace MCP startup latency @rphilizaire-openai
- #29750 chore: assign
amsg_IDs to agent messages @bolinfest - #29746 test: add app-server auto environment helper @anp-oai
- #29711 Let image generation extension hosts control output persistence @won-openai
- #29762 [codex] Reuse compacted history replacement for new context windows @pakrym-oai
- #29768 [codex] Update bundled skill installer guidance @sayan-oai
- #29690 [plugins] Add marketplace source requirements @xl-openai
- #29765 [codex] Ignore local curated plugins when remote catalog is active @xl-openai
- #29767 [codex] Assign response item IDs in forked history @pakrym-oai
- #29721 auth: move domain mode below app wire types @anp-oai
- #29753 [plugins] Enforce marketplace source admission requirements @xl-openai
- #29722 config: own layer provenance types @anp-oai
- #29723 connectors: own app metadata types @anp-oai
- #29788 test: run app-server integration tests under Wine @anp-oai
- #29789 test: use automatic environments in app-server integration tests @anp-oai
- #29790 docs: document remote executor integration testing @anp-oai
- #29815 [codex] Remove auto-compaction opt-out @rhan-oai
- #29628 Keep executor plugin MCP paths URI-native @jif-oai
- #29731 [codex] Emit implicit skill usage for support reads @alexsong-oai
- #29829 Persist agent messages as response items @jif-oai
- #29841 Add a bounded filesystem walk RPC @jif-oai
- #29842 Use fs/walk for environment skill discovery @jif-oai
- #29567 [codex] show external import result counts @charlesgong-openai
- #29831 Cache plugin namespace during executor skill discovery @jif-oai
- #29720 ci: fail jobs that dirty the worktree @anp-oai
- #29887 Fix environment skill discovery after merge @jif-oai
- #29734 [codex] fix Windows ConPTY input handling @iceweasel-oai
- #28593 [codex] suppress low usage remaining warnings when credits are available @brooks-oai
- #29624 Preserve Windows sandbox identity during credential retry @jif-oai
- #27466 [codex] Trace exec-server JSON-RPC requests @richardopenai
- #29844 Follow directory symlinks in filesystem walks @jif-oai
- #29637 Skip credential refresh for WindowsApps launch failures @jif-oai
- #29591 feat(app-server): list descendant threads by ancestor @btraut-openai
- #28034 feat(network-proxy): experimental local credential broker @winston-openai
- #29736 [codex] Inject agent graph store into ThreadManager @wiltzius-openai
- #29889 [apps] Thread structured icon assets through app list @drewschuster-openai
- #29724 mcp: keep elicitation requests below app wire types @anp-oai
- #29684 [plugins] Track plugin install requests by ID @adaley-openai
- #29870 Pipeline bounded AGENTS.md and Git root probes @jif-oai
- #29893 [codex] dedupe remote control account header @shuo-openai
- #29851 Add a connector declaration snapshot @jif-oai
- #29903 path-uri: normalize parent segments in absolute joins @anp-oai
- #29852 Read connector declarations from executor plugins @jif-oai
- #29785 Isolate curated plugin sync Git environment @etraut-openai
- #29907 [codex] namespace sleep under clock @rka-oai
- #29910 [codex] nest sleep config under current time reminder @rka-oai
- #29913 feat(remote-control): add daemon pairing command @apanasenko-oai
- #29936 core: add configurable <context_window_guidance> message @bolinfest
- #26705 TUI Plugin Sharing 5 - polish remote plugin catalog rows @canvrno-oai
- #29733 Allow ChatGPT-hosted MCP servers to use session auth @aibrahim-oai
- #29833 [1/3] core: make world state snapshots serializable @sayan-oai
- #29919 TUI support for buffer experience @etraut-openai
- #29924 Represent MCP authentication with an enum @aibrahim-oai
- #29804 code-mode: define process host wire protocol @cconger
- #29956 [codex] Populate remote plugin local versions @abhinav-oai
- #29835 [2/3] core: persist world state in rollouts @sayan-oai
- #29899 [codex] Update reasoning effort @shijie-oai
- #29837 [3/3] core: replay persisted world state @sayan-oai
- #29969 Report MCP error codes with server attribution @aibrahim-oai
- #29970 core: raise token budget message limits @bolinfest
- #29973 [codex] route sleep through time providers @rka-oai
- #19051 feat: use run agent task auth for inference @adrian-openai
- #29810 core: make AGENTS.md react to environment changes @sayan-oai
- #29997 core: reconcile legacy WorldState sections @sayan-oai
- #29990 Parallelize environment skill loading @anp-oai
- #28522 Support HTTP MCP servers from selected executor plugins @jif-oai
- #28529 Support OAuth for HTTP MCP servers from selected executor plugins @jif-oai
- #29656 Test executor-routed MCP OAuth token exchange @jif-oai
- #29928 chore(app-server): mark thread/rollback as deprecated @owenlin0
- #29856 Persist selected capability roots and resolve availability per model step @jif-oai
- #27467 [codex] Record exec-server lifecycle metrics @richardopenai
- #29942 feat: add provider-aware model fallback to thread start @celia-oai
- #30095 cli: rename sandbox permission profile flag @bolinfest
- #30029 [codex] current time reminder interval to be set to 0 @rka-oai
- #29941 core: expose permission profile to shell tools @bolinfest
- #30031 [codex] add current time reminder delivery mode config @rka-oai
- #30098 [codex] Retry temporarily offline exec-server recovery @richardopenai
- #30033 [codex] impl delivery_mode: current time reminders on response boundaries @rka-oai
- #30108 [codex] extend code-mode host IPC transport @cconger
- #27470 [codex] Observe remote exec-server lifecycle @richardopenai
- #30113 [codex] poll external clock during sleep @rka-oai
- #29003 feat(core, mcp): cache codex_apps tools in memory @owenlin0
- #30114 release: publish standalone zsh artifacts @bolinfest
- #30116 release: consume standalone zsh artifacts @bolinfest
- #29648 [codex] Add managed MCP server matchers @felixxia-oai
- #30100 Let extensions contribute World State sections @jif-oai
- #30124 fix(app-server): suppress TUI rollback warning @fcoury-oai
- #29877 [codex] Surface MCP reauthentication-required startup failures @felixxia-oai
- #29988 Recognize Work web and mobile thread originators @chiam-oai
- #30110 [codex] add code-mode host failure supervision hooks @cconger
- #30088 Project executor skills through World State @jif-oai
- #30117 [codex] Propagate traces through exec-server HTTP @wiltzius-openai
- #30101 Pin MCP runtimes to model steps @jif-oai
- #30134 ci: narrow Windows test skips @anp-oai
- #30093 Project selected plugin runtime by environment availability @jif-oai
- #30145 Reuse walk inventory for environment skill metadata @jif-oai
- #30111 [codex] implement standalone code-mode process host @cconger
- #29935 [codex] Attribute app-server analytics by thread originator @alexsong-oai
- #30152 Reinject missing World State fragments on resume @jif-oai
- #30127 Keep MCP elicitation routable across runtime refreshes @jif-oai
- #29934 Expose MCP app identity in app context @martinauyeung-oai
- #29909 [codex] allow CCA image generation and web search extensions @won-openai
- #30157 Test selected capabilities across availability and resume @jif-oai
- #30144 [codex] fix terminal rollout event durability @wiltzius-openai
- #29920 Retry failed Codex Apps MCP startup @kbazzi
- #29516 Persist Cloudflare affinity cookies for MCP HTTP @stevenlee-oai
- #30112 [codex] add process-owned code-mode session client @cconger
- #30142 [codex] wire process-owned code mode host into core @cconger
- #30198 [codex] fix CreateThreadParams test initializer @anp-oai
- #30148 Reuse MCP runtimes when selected availability changes nothing @jif-oai
- #30215 Test selected capabilities across unavailable resume @jif-oai
- #29991 [codex] narrow unused skills intro export @aibrahim-oai
- #30229 Relax hooks.json top-level metadata validation @charlesgong-openai
- #29927 feat(app-server): add history_mode to thread @owenlin0
- #30276 fix main @owenlin0
- #29683 [codex] Add managed new-thread model settings @hefuc-oai
- #30225 Overlap executor skill reads with namespace discovery @jif-oai
- #30274 [codex] allow AGENTS.md and skills to authorize delegation @charlesdu-openai
- #30147 [codex] Use managed defaults for TUI threads @hefuc-oai
- #30261 ensure thread.history_mode is immutable @owenlin0
- #30277 feat(app-server): add optional turn_id to thread/fork @owenlin0
- #30143 Let Codex consult user-level code-review-* skills. @anp-oai
- #30285 feat: add GPT-5.6 variants to Bedrock catalog @celia-oai
- #30173 Close thread persistence when submission channel closes @alfozan
- #30257 [codex] Classify nested MCP authentication startup errors @felixxia-oai
- #29375 [codex] Support npm marketplace plugin sources @charlesgong-openai
- #30146 [codex] group blocking and postmerge CI workflows @anp-oai
- #30282 feat(protocol): define missing rollout turn items @owenlin0
- #30201 fix(remote-control): avoid server token refresh retry storms @apanasenko-oai
- #30273 [codex] consume pushed exec-server process events @richardopenai
- #30286 core: overlap diff root discovery with world state @anp-oai
- #30314 app-server: structure and test JSON shutdown logs @bolinfest
- #30317 Update security check wording @etraut-openai
- #30302 Preserve namespaces on custom tool calls @nhamidi-oai
- #30327 core: stabilize synthesized call output IDs @bolinfest
- #30291 [app-server] expose environment info RPC @maxj-oai
- #29691 [plugins] Enforce marketplace source policy at runtime @xl-openai
- #30384 [app-server] increase currentTime/read timeout @rka-oai
- #30297 [codex] Enable remote plugins by default @xl-openai
- #30490 fix(tui): clear completed safety buffering prompt @fcoury-oai
- #29740 [codex] Use model metadata for skills usage instructions @ani-oai
- #30511 [codex] Restore v1 delegation guidance @aibrahim-oai
- #30508 Revert "Make auto-review on-request prompt more proactive" @dylan-hurd-oai
- #30467 [codex] Treat max as a first-class reasoning effort @shijie-oai
- #30491 Update safety check links @etraut-openai
- #30607 [codex] auto-label AWS Bedrock issues @etraut-openai
- #30269 [codex] disable Nagle on Rendezvous WebSockets @richardopenai
- #30645 [codex] Update safety notice wording @etraut-openai
- #30757 fix(core) Remove full text websocket trace @dylan-hurd-oai
- #30851 docs: add tag to fenced code block @bolinfest
- #30643 [codex] bound Rendezvous WebSocket liveness @richardopenai
- #30867 Consolidate multi-agent v2 communication sends @bolinfest
- #30872 Log multi-agent communication lifecycle @bolinfest
- #30883 [codex] emit per-request TTFT completion telemetry @xli-oai
- #30897 Fix inherited availability metadata for Bedrock models @shijie-oai
- #30941 fix: address quick-xml security advisories @bolinfest
- #30770 fix(websockets) ignore metadata for incremental requests @dylan-hurd-oai
- #30334 telemetry: log structured direct tool-call timing @bolinfest
- #30493 [codex] Add configurable multi-agent mode hint text @shijie-oai
- #30796 Fix MIME types for path-backed feedback attachments @btraut-openai
- #31056 fix(install): reuse GitHub release metadata @bolinfest
- #30981 [codex] expose remote plugin versions @ericning-o
- #31066 chore: remove unused git-cliff configuration @bolinfest
- #31064 [codex] Read buffering metadata from response events @fc-oai
- #30223 Make plugin guidance react to environment readiness @sayan-oai
- #31189 Fix cancelled review leaving MCP startup busy @charliemarsh-oai
- #30876 [core] Support interleaved response items @alexi-openai
- #31262 [codex] Read retry model from buffering events @fc-oai
- #31261 Revert "[core] Support interleaved response items" @alexi-openai
- #31253 Emit exec-policy warnings for freshly loaded thread config @etraut-openai
- #31179 Remove TUI exec-policy core exports @etraut-openai
- #29959 Conditional codex_home dotenv @canvrno-oai
- #30627 elicitations: Move to shared ElicitationService @cconger
- #30318 core: trace executor skill discovery @anp-oai
- #31276 Revert "Conditional codex_home dotenv" @canvrno-oai
- #30956 refactor(protocol): isolate legacy item fanout @owenlin0
- #30395 [app-server] Include reset-credit details in rate limits @jayp-oai
- #31267 chore(approvals) consolidate guardian calls for shell tools @dylan-hurd-oai
- #31252 [tui] Truncate hook context in conversation history @abhinav-oai
- #29918 [codex] Flush trailing realtime transcript tail @guinness-oai
- #30226 Make Apps guidance react to MCP availability @sayan-oai
- #31190 Use popup token ranges for autocomplete insertion @charliemarsh-oai
- #29697 fix: attribut network requests to the exact exec on linux @jif-oai
- #31303 feat(code-mode): allow disabling V8 JIT @cconger
- #31271 chore: use .worktreeinclude for user Bazel config @anp-oai
- #31308 fix: update crossbeam-epoch for RUSTSEC-2026-0204 @cconger
- #30202 [codex] bundle code mode host in release packages @cconger
- #31293 [codex] app-server: expose plugin install policy source @ericning-o
- #31318 ci: share common workflow setup @anp-oai
- #29992 app-server: cover selected environments in integration tests @anp-oai
- #31284 Warn when configured service tiers are unsupported @etraut-openai
- #31323 Extract shared HTTP transport into codex-http-client @bolinfest
- #31331 Migrate direct HTTP consumers to codex-http-client @bolinfest
- #31337 fix: restore Codex environment setup table @anp-oai
- #31188 Preserve managed exec policy after rules parse errors @etraut-openai
- #31306 [codex] Support sequential cutoff reasoning summaries @ashwinnathan-openai
- #31344 exec-server: use virtual time in Noise relay test @bolinfest
- #31296 refactor(protocol): map canonical tool items to legacy events @owenlin0
- #31335 core: route Responses API through system proxy @bolinfest
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About codex
All releases →Related context
Related tools
Earlier breaking changes
- vrust-v0.134.0 Makes `--profile` the primary profile selector and rejects legacy selectors.
Beta — feedback welcome: [email protected]