Releases: openai/codex
Releases · openai/codex
Release list
0.159.0
New Features
- Opt-in
instant_interruptlets new input steer Codex during model responses or long-running code-mode calls. (#48135, #48141) - New sessions get a compact welcome screen and consistent headers, with occasional tips during and after turns. (#48513, #48562, #48352)
- The warnings viewer dismisses reviewed warnings when closed; press
kto keep one for later. (#48205, #48206) - You can scroll the transcript while deciding whether to implement a plan. (#48805)
- Native Mermaid rendering supports more flowchart edges, labels, and node groups. (#48814, #48895)
- App-server clients can paginate thread history from a specific item. (#48151)
Bug Fixes
- Windows launches avoid stray console windows for MCP servers, code-mode hosts, and piped commands; restrictive launchers can fall back to embedded mode. (#48138, #48238, #48483, #48491)
- Copying transcript selections preserves Markdown tables, formatting, and significant whitespace. More terminals now copy automatically on selection. (#48548, #48549, #48469)
- Blank sessions retain drafts when switching tasks, and threads can be archived and listed before their first turn. (#48628, #48828, #48199)
- Local ChatGPT sign-in opens the browser reliably; onboarding also provides a shortcut to copy the login link. (#48502, #48544)
- Approved commands retain explicit filesystem denials, and
.awsdirectories are protected by default under writable roots. (#48155, #48176) - Fixed macOS TLS access in network-enabled sandboxes and remote environments that require proxy access. (#48565, #48198)
Chores
- Removed automatic follow-up prompt suggestions and the
tui.prompt_suggestionssetting. (#48621) - Removed the bundled
plugin-creatorskill. (#48604)
Changelog
Full Changelog: rust-v0.158.0...rust-v0.159.0
- #48135 Add opt-in code-mode yielding on new user input @pakrym-oai
- #48138 Suppress console windows when spawning the code-mode host on Windows @zm-oai
- #48141 Preempt model responses when new user input arrives @pakrym-oai
- #48143 Preserve executor MCP credential boundaries across reconnects @rreichel3-oai
- #48151 Add item anchors to
thread/items/listpagination @btraut-openai - #48155 Preserve filesystem denials when preparing approved commands @viyatb-oai
- #48157 Allow Windows daemon launches with residual job membership @etraut-openai
- #48158 Fix Guardian retained context spacing and empty assistant handling @olliem-oai
- #48168 Generate unique exec-server process IDs for every request @sdcoffey
- #48174 Preserve usage limit windows in turn and compaction analytics @rhan-oai
- #48176 Protect
.awsdirectories under sandbox writable roots @jackz100 - #48187 Fix zsh alias quoting in sourced shell snapshots @jif-oai
- #48190 Bound agent message board SSE frames before parsing @jif-oai
- #48197 Optimize
blake3in Bazel fastbuilds @jif-oai - #48198 Honor execution environment proxy requirements @seanh-oai
- #48199 Keep archived threads with empty previews visible in listings @acrognale-oai
- #48200 Extract Responses header conversion into a shared module @anp-oai
- #48205 Dismiss viewed TUI warnings when closing the viewer @fcoury-oai
- #48206 Add a keep-and-next action to the warnings viewer @fcoury-oai
- #48207 Preserve queued output for observers during code-mode termination @pakrym-oai
- #48211 Keep Codex visible during external editor handoff @etraut-openai
- #48213 Isolate executable fixture copies in CLI tests on Linux @jif-oai
- #48222 Preserve late result metadata for truncated code-mode calls @ningyi-oai
- #48224 Preserve model and access program pairs during compaction @jamy-OAI
- #48229 Extract Responses failure parsing into a dedicated module @anp-oai
- #48238 Suppress console windows for local Windows MCP servers @malsamiri-oai
- #48272 Prevent Windows daemon launches from retaining launcher stdio @zm-oai
- #48318 Keep TUI reconnect attempts running until the shared deadline @etraut-openai
- #48344 Preserve tool metadata for OpenAI provider endpoint overrides @peilin-openai
- #48350 Display reconnect commands on a separate line @etraut-openai
- #48352 Show turn tips while working and after completion in the TUI @fcoury-oai
- #48353 Stabilize skill catalogs across executor availability changes @vkg-oai
- #48469 Default to copying transcript selections in more terminals @fcoury-oai
- #48483 Prevent console windows for piped Windows child processes @fcoury-oai
- #48489 Fix Mermaid shape, relationship, and state description parsing @etraut-openai
- #48491 Fall back to embedded mode under restrictive Windows launchers @fcoury-oai
- #48502 Fix ChatGPT browser sign-in for local app servers @etraut-openai
- #48508 Preserve WebSocket continuations when steering a turn @pakrym-oai
- #48513 Refresh the TUI welcome screen for new sessions @fcoury-oai
- #48531 Add context to Windows sandbox runtime registration errors @zm-oai
- #48544 Make onboarding login links easier to copy @etraut-openai
- #48547 Fade blossom replays back to the idle state @fcoury-oai
- #48548 Preserve table cell source metadata through TUI rendering @fcoury-oai
- #48549 Preserve Markdown tables and whitespace when copying TUI responses @fcoury-oai
- #48551 Fix TUI math rendering for zero and big wedge expressions @etraut-openai
- #48560 Keep working tips stable during transcript interaction @fcoury-oai
- #48562 Use a consistent borderless session header in the TUI @fcoury-oai
- #48565 Allow macOS TLS trust evaluation in network-enabled Seatbelt profiles @winston-openai
- #48568 Allow exec-server to proxy permitted private IPs upstream @open-matt
- #48574 Preserve deferred tool namespace names before descriptions @adaley-openai
- #48575 Allow provisioned executors more time to come online @richardopenai
- #48604 Remove the bundled
plugin-creatorskill @martinauyeung-oai - #48611 Centralize persistent mode enablement checks @alishobeiri-oai
- #48621 Remove follow-up prompt suggestions from the TUI @etraut-openai
- #48623 Preserve empty Markdown list markers in the TUI @etraut-openai
- #48626 Stop showing previous-session summaries when switching TUI sessions @etraut-openai
- #48628 Preserve blank TUI sessions when switching tasks @etraut-openai
- #48643 Set the provisioned macOS CLI bundle name to ChatGPT @riley-oai
- #48646 Fix the session-start helper call in the command center test @etraut-openai
- #48686 Remove WebSocket headers and tool payloads from info logs @chess-oai
- #48724 Prevent Linux ETXTBSY races in MCP stdio tests @jif-oai
- #48725 Retain confirmed Code Mode messages for Guardian reviews @ankushg
- #48727 Centralize executable fixture creation to avoid Linux ETXTBSY races @jif-oai
- #48754 Render
/statuswithout borders and wrap long values @fcoury-oai - #48757 Match TUI status shimmer timing to desktop headers @fcoury-oai
- #48761 Show hidden output line counts in compact terminal activity @fcoury-oai
- #48764 Preserve MCP app resource URIs without defaulting display mode @victor-openai
- #48772 Fix Unix socket connections through long symlink paths @etraut-openai
- #48775 Match pinned transcript headers to the original prompt style @etraut-openai
- #48776 Remove the
currentbadge from TUI task rows @etraut-openai - #48779 Preserve independent Guardian history across parent compaction @felixxia-oai
- #48783 Add single-server MCP status discovery with thread connection reuse @victor-openai
- #48796 Add opt-in structured errors for Guardian circuit-breaker interruptions @won-openai
- #48799 Fix SGR mouse reporting for Windows terminal capture @etraut-openai
- #48800 Use the terminal palette for ordered Markdown list markers @etraut-openai
- #48805 Allow transcript wheel scrolling while a modal is open @fcoury-oai
- #48807 Show short turn durations in TUI completion footers @fcoury-oai
- #48812 Add history-aware prewarming for idle threads @vkg-oai
- #48814 Preserve punctuation and semicolons in Mermaid labels @etraut-openai
- #48819 Use explicit histogram buckets for tool and skill context metrics @mzeng-openai
- #48824 Keep voice RTP timestamps aligned to 20 ms packets @bc-openai
- #48827 Show a hand pointer over transcript links in Ghostty and Kitty @bc-openai
- #48828 Allow archiving threads before their first turn @bc-openai
- #48829 Wait briefly for the Windows sandbox provisioning service to start @zm-oai
- #48830 Show a short, neutral TUI interruption notice @fcoury-oai
- #48895 Expand native Mermaid flowchart syntax support @etraut-openai
- #48973 Isolate realtime auth fallback test from startup prewarm @jif-oai
- #48982 Prevent message-board notifications from reopening final answers @eknight-oai
0.161.0-alpha.1
Release 0.161.0-alpha.1
0.160.0-alpha.6
Release 0.160.0-alpha.6
0.158.0
New Features
- Configure copy-on-select and right-click paste in the fullscreen TUI. Copied transcript selections now preserve Markdown formatting. (#47639, #47896, #48118)
- Connect to MCP servers that require pre-registered OAuth client secrets, including through
codex mcp add --oauth-client-secret. (#47891) - Secure direct exec-server WebSocket connections with bearer tokens, including connections configured through app-server. (#47601, #47648)
- Image generation and editing can explicitly request transparent backgrounds, and edits now accept file-backed conversation images. (#47484, #47956)
- Terminal input approval is enabled by default for commands running with elevated permissions; runtime-only grants no longer cause unnecessary reviews. (#47799, #48073)
Bug Fixes
- Fixed Windows sandbox failures involving ordinary Windows 10 paths, rejected stored credentials, and large permission policies. (#47672, #47695, #47919)
- Fixed Linux sandbox startup with nested writable roots and preserved Git metadata protections across writable roots on Linux and macOS. (#47623, #47974)
- macOS patch operations now recognize system path aliases covered by existing permissions, avoiding unnecessary approval prompts. (#47879)
- Approval reviews now retry when new user input arrives, so a status question does not automatically abort a pending action. (#47819)
- Mermaid flowcharts now render quoted labels and ampersands; unsupported diagrams explain why they fall back to source. (#47572, #47678)
- Command completion events now include early output and report process-launch failures to clients. (#47529, #47665)
Changelog
Full Changelog: rust-v0.157.0...rust-v0.158.0
- #47441 Use secondary text styling for the transcript footer shortcut hint @etraut-openai
- #47447 Extract WebSocket authentication into
codex-websocket-auth@euroelessar - #47458 Parallelize instruction refresh and tool preparation @hlevy-openai
- #47484 Add explicit background control to image generation @alicec-oai
- #47520 Route session agent operations through
AgentControl@jif-oai - #47529 Emit command lifecycle events for unified exec launch failures @steipete-oai
- #47536 Route agent lookups and V2 context through
AgentControl@jif-oai - #47539 Test interrupted one-shot command launch failure persistence @jif-oai
- #47540 Add an option to disable multi-agent v2 direct messaging @jif-oai
- #47565 Classify rollout read failures by reason and progress @jif-oai
- #47568 Record sandbox backends in command execution analytics @iceweasel-oai
- #47571 Wait for idle before injecting remote compaction test history @felixxia-oai
- #47572 Explain Mermaid rendering fallbacks in the TUI @etraut-openai
- #47582 Retain assistant context for Guardian authorization reviews @felixxia-oai
- #47584 Preserve streamed assistant message order in retained context @felixxia-oai
- #47585 Preserve delivered assistant messages in Guardian retained context @felixxia-oai
- #47589 Keep unfinished link destinations out of rich streaming previews @etraut-openai
- #47590 Serialize numeric custom reasoning effort as JSON numbers @dylan-hurd-oai
- #47591 Stream daemon executable hashing off the async runtime @etraut-openai
- #47596 Refresh realtime context for each model request @reia-oai
- #47597 Guard prerelease channel and canary updates against older versions @imac-oai
- #47601 Add opt-in WebSocket authentication to exec-server @euroelessar
- #47603 Add a reap-only drop policy for child processes @charliemarsh-oai
- #47604 Extend child commands with session and descriptor controls @charliemarsh-oai
- #47605 Route pipe processes through the shared child launcher @charliemarsh-oai
- #47610 Use native POSIX spawning for command hooks @charliemarsh-oai
- #47611 Use the shared process launcher for Unix shell snapshots @charliemarsh-oai
- #47612 Launch Linux pipe processes through a fresh setup helper @freeqaz-openai
- #47613 Expand Linux spawn-helper lifecycle test coverage @charliemarsh-oai
- #47617 Route Linux PTY launches through the process setup helper @charliemarsh-oai
- #47618 Prefer Shift-arrow hints for queued messages and questions @imac-oai
- #47619 Add bounded buffering for global operation metrics @celia-oai
- #47620 Add portable project trust lookup APIs @seanh-oai
- #47623 Fix read-only metadata mount ordering for nested writable roots @jif-oai
- #47624 Recognize
user_messagetools in Guardian authorization context @ankushg - #47625 Allow history and notes without experimental context capability @pmccrary-oai
- #47629 Route V2 child loading through
AgentControl@jif-oai - #47630 Bind Guardian reviews to the action's target environment @jif-oai
- #47633 Route message board agent resolution through the selected controller @jif-oai
- #47635 Overlap startup WebSocket preconnect with tool discovery @bromano-oai
- #47638 Classify retryable exec-server preparation errors by type @mtsui-oai
- #47639 Add configurable copy-on-select for transcript selections @fcoury-oai
- #47641 Honor Retry-After and preserve server retry deadlines @anp-oai
- #47642 Add model-specific prefixes to indirect tool descriptions @rhan-oai
- #47647 Apply Guardian computer-use review to the Browser connector @johnl-oai
- #47648 Support bearer tokens for app-server executor connections @euroelessar
- #47649 Add opt-in OTLP logging for final agent responses @xli-oai
- #47653 Attach inherited rollout history to diagnostic reports @dkovalenko-oai
- #47654 Make Linux descriptor cleanup fork-safe @yuzhu-oai
- #47655 Bump the exec-server stable compatibility test to Codex 0.156.1 @imac-oai
- #47657 Restrict the default Bedrock GovCloud model catalog @jackz100
- #47662 Expose tool dispatch and timing observations to extensions @euroelessar
- #47663 Preserve managed network policy in route-aware transports @jackz100
- #47665 Preserve early unified exec output in completion events @sdcoffey
- #47670 Support model-specific descriptions for agent message board tools @eknight-oai
- #47672 Fix no-reparse directory opens on Windows 10 @zm-oai
- #47673 Clarify registered Windows sandbox setup errors @zm-oai
- #47677 Support model catalog overrides for MCP resource tool specs @rhan-oai
- #47678 Support quoted labels and ampersands in Mermaid flowcharts @etraut-openai
- #47679 Add extension hooks for model requests and response streams @euroelessar
- #47680 Add exec-server RPC timing and process startup tracing @anp-oai
- #47683 Add executor capability discovery V2 infrastructure @TAFOYA-OAI
- #47686 Make thread-owned Guardian context always enabled @felixxia-oai
- #47688 Remove legacy Guardian authorization evidence paths @felixxia-oai
- #47689 Make Guardian thread context capture unconditional @felixxia-oai
- #47690 Remove obsolete Guardian context capture mode branches @felixxia-oai
- #47691 Materialize rollout persistence for pending inter-agent messages @dermanyang-oai
- #47693 Configure curl retries for DotSlash installation in CI @anp-oai
- #47695 Repair rejected Windows sandbox credentials during provisioning @zm-oai
- #47696 Avoid the shutdown timeout in the lagged-event test @jgershen-oai
- #47698 Allow WebSocket test server shutdown while waiting for requests @jgershen-oai
- #47701 Allow idle threads to prewarm and repair WebSocket connections @vkg-oai
- #47703 Preserve account network policy for ChatGPT backend requests @jackz100
- #47704 Fix spawn flag typing and isolate project configuration tests @seanh-oai
- #47709 Route resume prewarm through the cached WebSocket session @vkg-oai
- #47712 Update unified exec output buffers atomically @sdcoffey
- #47713 Reduce dependency coupling in shared configuration crates @aibrahim-oai
- #47714 Preserve tool result metadata more selectively under size limits @ningyi-oai
- #47717 Avoid recursive TUI event dispatch for model picker selections @etraut-openai
- #47741 Attribute tool telemetry to the invoking turn's product SKU @rennie-openai
- #47742 Honor network policy in history notes and image generation extensions @jackz100
- #47745 Skip startup prewarm preparation when the WebSocket is ready @vkg-oai
- #47748 Align Cargo and Bazel Rust debug information defaults @aibrahim-oai
- #47751 Reduce generic code duplication in RPC and Markdown rendering @aibrahim-oai
- #47755 Centralize typed app-server response decoding @aibrahim-oai
- #47757 Refactor tool telemetry product SKU matching to use an allowlist @rennie-openai
- #47758 Preserve more tool metadata within outgoing message budgets @ningyi-oai
- #47773 Honor catalog schemas for asynchronous user input @rhan-oai
- #47797 Support close-on-exec attachments without changing PTY semantics @jif-oai
- #47799 Enable terminal input approval by default @jif-oai
- #47808 Allow hosts to provide agent controllers through ThreadManager @jif-oai
- #47811 Preserve explicit user goal updates in Guardian authorization @felixxia-oai
- #47813 Fix sleep interruption test event handling and fixture lifetime @felixxia-oai
- #47814 Fix a lost wakeup in the unified exec termination test @felixxia-oai
- #47817 Stabilize thread resume and memory dual-write tests @jif-oai
- #47819 Retry Guardian reviews when authorization changes @teddywyly-oai
- #47820 Add integration coverage for host agent controllers @jif-oai
- #47824 Allow four concurrent threads in the multi-agent resume test @felixxia-oai
- #47828 Wait for login completion in recommended plugin tests @felixxia-oai
- #47830 Bind Guardian async scores to target environment permissions @jif-oai
- #47832 Stabilize Rosetta test timing and retry delay telemetry @jif-oai
- #47847 Keep the TUI responsive during clipboard copies @fcoury-oai
- #47851 Preserve human overrides across repeated heartbeat instructions @felixxia-oai
- #47852 Avoid blocking async proxy resolution on the system proxy cache @jif-oai
- #47...
0.160.0-alpha.3
Release 0.160.0-alpha.3
0.160.0-alpha.2
Release 0.160.0-alpha.2
0.159.0-alpha.13
Release 0.159.0-alpha.13
0.159.0-alpha.12
Release 0.159.0-alpha.12
0.158.0-alpha.15.4
Release 0.158.0-alpha.15.4
0.159.0-alpha.9
Release 0.159.0-alpha.9