OpenAI Codex CLI rust-v0.135.0

New Features - codex doctor now reports richer environment, Git, terminal, app-server, and thread inventory diagnostics for support cases. (24261, 24311, 24305) - /status shows remote connection de...

New Features - codex doctor now reports richer environment, Git, terminal, app-server, and thread inventory diagnostics for support cases. (24261, 24311, 24305) - /status shows remote connection details and server version when the TUI is connected over a remote transport. (24420) - Vim mode gained text-object editing, improved word/line-end behavior, and a configurable interrupt-turn binding. (24382, 24380, 24766) - /permissions now understands named permission profiles and displays configured custom profiles. (21559) - Packaged Codex builds can discover and use the bundled patched zsh helper across supported macOS and Linux targets. (23756, 24171) - The Python SDK now exposes friendly Sandbox presets for thread and turn APIs. (24772) Bug Fixes - Markdown tables and multiline lists render more readably in the TUI, with better column sizing and app-style table formatting. (24489, 24346, 24351) - TUI output is more stable on macOS and Zellij, avoiding stderr/composer corruption and raw-output overlap. (24459, 24479, 24593) - Slash-command completion now preserves existing draft text for commands that accept inline arguments. (23950) - Older tmux/iTerm control-mode sessions no longer lose normal Ctrl-C handling from unsupported keyboard enhancement setup. (24371) - App mentions now exclude inaccessible or disabled apps instead of offering unusable $ suggestions. (24625) - Resume flows now include non-interactive exec sessions when requested and honor cwd overrides for idle cached threads. (24503, 24528) Documentation - Clarified image-viewing tool detail behavior and removed stale TUI composer documentation references. (23949, 24641) - Updated Python SDK docs, examples, and notebook content to use the new sandbox preset API. (24772) Chores - Updated Rust toolchain pins and SQLx/SQLite dependencies. (24684, 24728) - Moved memory runtime state into a dedicated SQLite database. (24591) - Removed remaining legacy config-profile consumers and routed more TUI config/plugin state through app-server-owned APIs. (24076, 24254, 24255, 24265, 24266, 24257) - Centralized Responses retry handling and MCP tool naming logic to reduce duplicated internal plumbing. (24131, 21576) Changelog Full Changelog: https://github.com/openai/codex/compare/rust-v0.134.0...rust-v0.135.0 - 24164 fix(remote-control): cap reconnect backoff @apanasenko-oai - 23756 package: include zsh fork in Codex package @bolinfest - 23757 Default function tools into tool hooks @abhinav-oai - 24171 package: add x64 macOS codex-zsh artifact @bolinfest - 24159 code-mode: merge stored values by key @cconger - 23983 fix: plugin bundle archive handling for upload and install @xl-openai - 24261 feat(doctor): add environment diagnostics @fcoury-oai - 24311 Report app-server version in codex doctor @etraut-openai - 24314 tui: label compact rate-limit percentages @etraut-openai - 24420 Show remote connection details in /status @etraut-openai - 24317 Respect hook trust bypass during TUI startup @etraut-openai - 24254 TUI config cleanup: ossprovider @etraut-openai - 24255 TUI config cleanup: trusted projects @etraut-openai - 24265 TUI config cleanup: MCP inventory @etraut-openai - 24305 Add doctor thread inventory audit @etraut-openai - 24346 fix(tui): improve markdown table column allocation @fcoury-oai - 24351 fix(tui): improve multiline markdown list readability @fcoury-oai - 24459 fix(tui): prevent macos stderr from corrupting composer @fcoury-oai - 24479 fix(process-hardening): preserve macos malloc diagnostics @fcoury-oai - 24474 Log rollout writer OS errors @etraut-openai - 24076 chore: stop consuming legacy config profiles @jif-oai - 24131 centralize Responses retry policy @rhan-oai - 23858 [wip] goal shift @jif-oai - 24555 chore: drop orphaned codex memories MCP crate @jif-oai - 24558 chore: move memory prompt builder into extension @jif-oai - 24562 Add ad-hoc memory note tool @jif-oai - 24567 Wire metrics client into memories extension @jif-oai - 24588 fix: drop flake @jif-oai - 24583 Add memory tool call metrics to memories extension @jif-oai - 24586 Wire app-server extension event sink @jif-oai - 24532 Use thread config for TUI MCP inventory @etraut-openai - 24105 [codex] Make active turn task singular @pakrym-oai - 21576 Move MCP tool naming mode into manager @pakrym-oai - 24503 tui: include exec sessions in resume list @etraut-openai - 24600 feat: gate dedicated memories tools in config @jif-oai - 21559 tui: add named permission profile picker @viyatb-oai - 24608 feat: add manual and remotev2 tags to compaction metric @jif-oai - 24611 test: clean up applypatch allow-session artifact @jif-oai - 24609 Remove reserved namespaces dedup @pakrym-oai - 23964 Move slash input logic out of chat composer @canvrno-oai - 24615 Add goal extension telemetry parity @jif-oai - 24371 fix(tui): avoid modifyOtherKeys for unknown tmux formats @fcoury-oai - 24626 fix: restore goal accounting after thread resume @jif-oai - 24591 Move memory state to a dedicated SQLite DB @jif-oai - 23823 standalone websearch extension @sayan-oai - 24593 fix(tui): keep raw output above composer in zellij @fcoury-oai - 24625 tui: keep inaccessible apps out of mentions @canvrno-oai - 24154 Add experimental turn additional context @pakrym-oai - 24473 fix(remote-control): surface websocket task stalls @apanasenko-oai - 24528 Respect resume cwd overrides for idle cached threads @etraut-openai - 24160 Add forkedfromthreadid turn metadata @owenlin0 - 24646 make direct only allowed caller for standalone websearch @sayan-oai - 23949 Clarify viewimage tool description @fjord-oai - 24266 TUI config cleanup: plugin mentions @etraut-openai - 24320 Avoid repeated marketplace upgrades for alternate layouts @etraut-openai - 23813 windows-sandbox: remove SandboxPolicy runner plumbing @bolinfest - 24652 [codex] remove plain image wrapper spans @pakrym-oai - 24623 Attach Windows sandbox log to feedback reports @iceweasel-oai - 24644 Restore legacy image detail values @rhan-oai - 24655 [codex-analytics] add grouped session id to runtime events @marksteinbrick-oai - 24658 [codex] Remove obsolete goal continuation turn marker @pakrym-oai - 24660 fix: dont compact standalone websearch schema @sayan-oai - 24667 fix(core): instrument stalled tool-listing handoff @apanasenko-oai - 24684 Uprev Rust toolchain pins to 1.95.0 @anp-oai - 21567 fix: add noninteractive install script mode @efrazer-oai - 24707 Allow runtime enablement for remote plugins @xl-openai - 24714 fix(auto-review) skip legacy notify for auto review threads @dylan-hurd-oai - 24690 Revert "Add Bedrock Mantle GovCloud region (23860)" @celia-oai - 24628 feat: handle goal usage limits in goal extension @jif-oai - 24746 Fix guardian review test user input @jif-oai - 24744 feat: add thread idle lifecycle hook @jif-oai - 24751 Drop startup context when truncating forked rollouts @jif-oai - 24257 TUI config cleanup: plugin marketplace @etraut-openai - 24380 fix(tui): complete vim word-end and line-end behavior @fcoury-oai - 24728 Bump SQLx to pick up newer bundled SQLite @jif-oai - 24637 fix: run standalone updates noninteractively @efrazer-oai - 24778 make vercel webhook url an env secret @sayan-oai - 23950 fix: Preserve draft text when completing argument-taking slash commands @canvrno-oai - 24641 [codex] Remove stale composer narrative doc references @canvrno-oai - 24368 [codex] add compaction metadata to turn headers @ningyi-oai - 24772 [codex] Add friendly Python SDK sandbox presets @aibrahim-oai - 24382 feat(tui): add vim text object bindings @fcoury-oai - 24766 feat(tui): make turn interruption keybind configurable @fcoury-oai - 24489 feat(tui): render markdown tables in app style [1 of 2] @fcoury-oai - 24713 chore: enable namespace tools for Bedrock @celia-oai