New Features
-
Added an interactive
codex agentsdashboard for searching, starting, opening, renaming, and stopping tasks, with configurable shortcuts. (#39094, #39112, #39114, #39142) -
Added
/cd,/pwd, and/cwdcommands for managing the working directory in TUI sessions. (#38894) -
Added
codex queuefor sending messages to existing local or remote sessions. (#39092) -
Expanded Vim editing with character replacement and more change motions such as
cw,c$, andcc. (#39661) -
codex doctornow diagnoses endpoint protection, network/proxy failures, desktop app state, and update connectivity. (#38827, #38918, #39060, #39074) -
SDK users can now pass exact CLI config overrides and select
maxorultrareasoning effort. (#38817, #39662)
Bug Fixes
-
Queued messages now wake idle sessions reliably, resolve duplicate session names more usefully, and preserve pasted or deferred command semantics. (#39034, #39385, #39604)
-
Resumed and forked threads now restore their active permission profile instead of silently falling back to current defaults. (#39153)
-
Fixed duplicate sub-agent activity and tightened TUI routing for sub-agent notifications and approvals. (#39049, #39088)
-
Realtime WebRTC sideband connections now reconnect after unexpected transport loss without dropping pending output. (#39257)
-
Inline TUI history now remains available in Windows Terminal scrollback. (#39619)
-
Inactive TUI thread replay buffers are now bounded to prevent excessive retained streamed output. (#39081)
Documentation
-
Clarified that external contributions should go through issues and design discussion rather than pull requests. (#39089)
-
Documented DNS exfiltration risks and trust limitations for secure devcontainers. (#39283)
Changelog
Full Changelog: https://github.com/openai/codex/compare/rust-v0.148.0...rust-v0.149.0
-
#38817 Add raw config overrides to the TypeScript SDK @copyberry
-
#38819 Support metadata staging for reserved thread IDs @copyberry
-
#38822 Avoid cloning TUI history span content @copyberry
-
#38823 Avoid allocating per character when decorating hyperlinks @copyberry
-
#38827 Add endpoint protection checks to
codex doctor@copyberry -
#38830 Isolate external editor buffers from sandbox-writable paths @copyberry
-
#38837 Share editor keymaps across TUI composer components @copyberry
-
#38840 Identify Mac mini hosts in remote control handshakes @copyberry
-
#38893 Restore thread timestamp maxima independently @copyberry
-
#38894 Add working-directory commands to the TUI @copyberry
-
#38899 Move requirements policy ownership to execpolicy @copyberry
-
#38902 Honor per-environment shell variable policies @copyberry
-
#38907 Edit queued messages with Vim history-up @copyberry
-
#38913 Stop rendering columns after filling their area @copyberry
-
#38916 Honor legacy
:project_rootspermission entries @copyberry -
#38918 Improve
codex doctornetwork diagnostics @copyberry -
#38919 Reject obsolete app-server permission profile fields @copyberry
-
#38921 Compact successful command activity in the TUI @copyberry
-
#38940 Add experimental app-server project APIs @copyberry
-
#38941 Prevent Noise auth tokens from reaching child processes @copyberry
-
#38942 Enforce environment-specific command policies @copyberry
-
#38947 Stop loading legacy managed config on Windows @copyberry
-
#38978 Add a configurable skill catalog token budget @copyberry
-
#38980 Bound Guardian v2 parent compaction context @copyberry
-
#38987 Include images in Guardian v2 transcripts @copyberry
-
#38990 Source Guardian v2 defaults from the model catalog @copyberry
-
#38993 Evaluate recent and character-routed skill selection @copyberry
-
#38994 Remove the workspace settings gate for apps and plugins @copyberry
-
#38997 Retry transient Guardian sampling failures @copyberry
-
#39001 Ignore stale Guardian tool risk scores @copyberry
-
#39005 Disable Guardian V2 for managed automatic reviewers @copyberry
-
#39006 Emit API-key turn cost telemetry from app-server @copyberry
-
#39007 Wait for Guardian score progress in approval tests @copyberry
-
#39008 Add task context to shadow skill selection @copyberry
-
#39017 Move MCP policy types into
codex-protocol@copyberry -
#39019 Isolate MCP resource headers during OAuth requests @copyberry
-
#39020 Restrict Windows IDE pipe client impersonation @copyberry
-
#39022 Hang soft-break whitespace in the TUI composer @copyberry
-
#39023 Reduce retained MCP result data in TUI history @copyberry
-
#39025 Speed up the large diff highlighting test @copyberry
-
#39026 Use simulated time in the long typing test @copyberry
-
#39028 Cache the test pet spritesheet encoding @copyberry
-
#39030 Speed up the in-app resume cwd test @copyberry
-
#39032 Encapsulate TUI shimmer under the motion module @copyberry
-
#39033 Bound legacy resume preview scans @copyberry
-
#39034 Dispatch queued messages written by other processes @copyberry
-
#39035 Add app-server coverage for Guardian V2 approval routing @copyberry
-
#39036 Allow config reads to join active app-server read batches @copyberry
-
#39038 Restore Guardian risk scores across thread lifecycles @copyberry
-
#39040 Preserve foreign paths in managed network approvals @copyberry
-
#39043 Enforce managed authentication backend settings @copyberry
-
#39045 Add managed gates for in-app chat and dictation @copyberry
-
#39046 Restrict MCP HTTP redirects to the configured origin @copyberry
-
#39047 Skip plugin hook loading when hooks are disabled @copyberry
-
#39049 Avoid rendering sub-agent activity twice in the TUI @copyberry
-
#39050 Prepare the telemetry shutdown worker during initialization @copyberry
-
#39051 Use installed callable apps for TUI mentions @copyberry
-
#39055 Add network policy metadata to environment configuration @copyberry
-
#39056 Verify the pinned zsh manifest in release builds @copyberry
-
#39057 Rate-limit TUI frames from their actual emission time @copyberry