Releases: openai/codex
Releases · openai/codex
0.117.0
New Features
- Plugins are now a first-class workflow: Codex can sync product-scoped plugins at startup, browse them in
/plugins, and install or remove them with clearer auth/setup handling. (#15041, #15042, #15195, #15215, #15217, #15264, #15275, #15342, #15580, #15606, #15802) - Sub-agents now use readable path-based addresses like
/root/agent_a, with structured inter-agent messaging and agent listing for multi-agent v2 workflows. (#15313, #15515, #15556, #15570, #15621, #15647) - The
/titleterminal-title picker now works in both the classic TUI and the app-server TUI, making parallel sessions easier to tell apart. (#12334, #15860) - App-server clients can now send
!shell commands, watch filesystem changes, and connect to remote websocket servers with bearer-token auth. (#14988, #14533, #14847, #14853) - Image workflows got smoother:
view_imagenow returns image URLs for code mode, generated images are reopenable from the TUI, and image-generation history survives resume. (#15072, #15154, #15223) - Prompt history recall now works in the app-server TUI, including across sessions. (#14945)
Bug Fixes
tui_app_serverno longer duplicates live reasoning summaries or/reviewoutput, and it preserves transcript text instead of dropping it under backpressure. (#15758, #15839, #15759)- ChatGPT login in
tui_app_servernow opens the local browser again, cancels cleanly onCtrl+C, and no longer fails startup when you're logged out. (#15672, #15673, #15670) - Early exits now restore terminal state reliably, avoiding broken shell state after quitting; tmux users also get a working queued-message edit shortcut on
Shift+Left. (#15671, #15480) - Linux sandboxed tool calls are more reliable on older distributions with older
bubblewrap, and Windows restricted-token sandboxing now supports more split-policy carveout layouts. (#15693, #14172) - Remote multi-agent sessions now show agent names instead of raw IDs and recover more gracefully from stale turn-steering races. (#15513, #15714, #15163)
- Plugin-backed mentions and product gating now behave more predictably, fixing cases where explicit mentions lost context or plugins were filtered incorrectly. (#15372, #15263, #15279)
Documentation
- Expanded the app-server and exec-server docs/schema fixtures to cover exec-server setup, filesystem watch RPCs, realtime transcript notifications, and the new Python
thread.run(...)quickstart flow. (#15089, #14533, #15344, #15088)
Chores
- The app-server-backed TUI is now enabled by default, and the plugin/app rollout flags have been flipped on in normal builds. (#15661, #15713, #15719, #15820)
- Removed the legacy artifact tool and retired the old
read_fileandgrep_fileshandlers as part of ongoing tool-surface cleanup. (#15851, #15864, #15773, #15775)
Changelog
Full Changelog: rust-v0.116.0...rust-v0.117.0
- #14945 feat(tui): restore composer history in app-server tui @fcoury
- #15092 fix: try to fix "Stage npm package" step in ci.yml @bolinfest
- #15075 Propagate tool errors to code mode @pakrym-oai
- #15072 Return image URL from view_image tool @pakrym-oai
- #15076 Add a startup deprecation warning for custom prompts @etraut-openai
- #15102 Revert "fix: harden plugin feature gating" @xl-openai
- #15077 Add final message prefix to realtime handoff output @aibrahim-oai
- #13494 Align SQLite feedback logs with feedback formatter @charley-oai
- #14888 Feat: reuse persisted model and reasoning effort on thread resume @shijie-oai
- #15111 don't add transcript for v2 realtime @aibrahim-oai
- #15103 Add update_plan code mode result @pakrym-oai
- #15100 Add apply_patch code mode result @pakrym-oai
- #15104 fix: harden plugin feature gating @xl-openai
- #15089 Add exec-server stub server and protocol docs @starr-openai
- #15042 Support featured plugins @alexsong-oai
- #15088 Add Python SDK thread.run convenience methods @shaqayeq-oai
- #15119 Remove stdio transport from exec server @pakrym-oai
- #14632 feat(core, tracing): create turn spans over websockets @owenlin0
- #15011 Forward session and turn headers to MCP HTTP requests @nicholasclark-openai
- #15118 [hooks] turn_id extension for Stop & UserPromptSubmit @eternal-openai
- #14970 Simple directory mentions @canvrno-oai
- #14988 Add thread/shellCommand to app server API surface @etraut-openai
- #15041 feat: support product-scoped plugins. @xl-openai
- #15056 feat: add graph representation of agent network @jif-oai
- #15163 fix: case where agent is already closed @jif-oai
- #15125 Move environment abstraction into exec server @pakrym-oai
- #15180 chore: add metrics for profile @jif-oai
- #15175 chore: morpheus does not generate memories @jif-oai
- #15185 Revert "Forward session and turn headers to MCP HTTP requests" @nicholasclark-openai
- #14867 [hooks] use a user message > developer message for prompt continuation @eternal-openai
- #15196 Add experimental exec server URL handling @pakrym-oai
- #15198 Publish runnable DotSlash package for argument-comment lint @bolinfest
- #15090 Add exec-server process and filesystem RPCs @starr-openai
- #15201 Log automated reviewer approval sources distinctly @gabec-openai
- #12334 feat(tui): add /title terminal title configuration @yvolovich-cyber
- #15206 feat(tracing): tag app-server turn spans with turn_id @owenlin0
- #15216 Move terminal module to terminal-detection crate @aibrahim-oai
- #15207 add specific tool guidance for Windows destructive commands @iceweasel-oai
- #15154 adding full imagepath to tui @won-openai
- #15217 feat: expose needs_auth for plugin/read. @xl-openai
- #15190 Plumb MCP turn metadata through _meta @nicholasclark-openai
- #15220 feat(app-server): add mcpServer/startupStatus/updated notification @owenlin0
- #15222 changed save directory to codex_home @won-openai
- #15232 Refactor ExecServer filesystem split between local and remote @pakrym-oai
- #15021 V8 Bazel Build @cconger
- #15150 Move auth code into login crate @aibrahim-oai
- #15195 [plugins] Install MCPs when calling plugin/install @mzeng-openai
- #15254 core: add a full-buffer exec capture policy @bolinfest
- #15263 fix: Distinguish missing and empty plugin products @xl-openai
- #15253 Split features into codex-features crate @aibrahim-oai
- #15233 Split exec process into local and remote implementations @starr-openai
- #15199 Use released DotSlash package for argument-comment lint @bolinfest
- #15215 Initial plugins TUI menu - list and read only. tui + tui_app_server @canvrno-oai
- #15252 Disable hooks on windows for now @eternal-openai
- #15264 feat: Add One-Time Startup Remote Plugin Sync @xl-openai
- #15262 Add guardian follow-up reminder @charley-oai
- #15223 Feat/restore image generation history @won-openai
- #15275 feat: prefer git for curated plugin sync @xl-openai
- #14869 Add remote env CI matrix and integration test @pakrym-oai
- #15218 Add temporary app-server originator fallback for codex-tui @etraut-openai
- #15328 try to fix bazel @jif-oai
- #15324 Add remote test skill @pakrym-oai
- #15313 feat: change multi-agent to use path-like system instead of uuids @jif-oai
- #15244 Pin Python SDK app-server stdio to UTF-8 on Windows @shaqayeq-oai
- #15337 Bump aws-lc-rs @cconger
- #15203 Add v8-poc consumer of our new built v8 @cconger
- #15273 [apps] Use ARC for yolo mode. @mzeng-openai
- #15128 chore(core) Remove Feature::PowershellUtf8 @dylan-hurd-oai
- #15344 Add realtime transcript notification in v2 @aibrahim-oai
- #15285 Gate tui /plugins menu behind flag @canvrno-oai
- #15114 fix: allow restricted filesystem profiles to read helper executables @celia-oai
- #15231 chore(core) update prefix_rule guidance @dylan-hurd-oai
- #15036 fix(core) disable command_might_be_dangerous when unsandboxed @dylan-hurd-oai
- #15348 Pass platform param to featured plugins @alexsong-oai
- #15276 Code mode on v8 @cconger
- #15372 [plugins] Fix plugin explicit mention context management. @mzeng-openai
- #15366 chore(context) Include guardian approval context @dylan-hurd-oai
- #15390 Remove legacy app-server notification handling from tui_app_server @etraut-openai
- #15409 Add JIT entitlement for macosx @cconger
- #15414 Remove legacy auth and notification handling from tui_app_server @etraut-openai
- #15376 [apps] Improve app tools loading for TUI. @mzeng-openai
- #15415 chore(exec_policy) ExecPolicyRequirementScenario tests @dylan-hurd-oai
- #15464 Remove smart_approvals alias migration @charley-oai
- #15443 core: snapshot fork startup context injection @charley-oai
- #15480 Use Shift+Left to edit queued messages in tmux @charley-oai
- #15317 nit: guard -> registry @jif-oai
- #15338 fix: fall back to vendored bubblewrap when system bwrap lacks --argv0 @bolinfest
- #15520 fix: cargo deny @jif-oai
- #15279 Label plugins as plugins, and hide skills/apps for given plugin @canvrno-oai
- #15259 tui: queue follow-ups during manual /compact @charley-oai
- #15515 feat: structured multi-agent output @jif-oai
- #15357 Fix: proactive auth refresh to reload guarded disk state first @celia-oai
- #15342 Plugins TUI install/uninstall @canvrno-oai
- #15540 chore: split sub-agent v2 implementation @jif-oai
- #15516 Thread guardian Responses API errors into denial rationale @charley-oai
- #15378 feat: support disable skills by name. @xl-openai
- #15529 Unify realtime stop handling in TUI @aibrahim-oai
- #15557 fix: main tui @jif-oai
- #15556 feat: new op type for sub-agents communication @jif-oai
- #15211 [hooks] add non-streaming (non-stdin style) shell-only PreToolUse support @eternal-openai
- #15560 feat: use serde to differenciate inter agent communication @jif-oai
- #15426 chore(core) Add approvals reviewer to UserTurn @dylan-hurd-oai
- #15562 [codex] Add rollback context duplication snapshot @charley-oai
- #15570 feat: custom watcher for multi-agent v2 @jif-oai
- #15575 feat: custom watcher for multi-agent v2 @jif-oai
- #15576 feat: custom watcher for multi-agent v2 @jif-oai
- #15360 fix: buil...
0.117.0-alpha.25
Release 0.117.0-alpha.25
0.117.0-alpha.24
Release 0.117.0-alpha.24
0.117.0-alpha.23
Release 0.117.0-alpha.23
0.117.0-alpha.22
Release 0.117.0-alpha.22
0.117.0-alpha.21
Release 0.117.0-alpha.21
0.117.0-alpha.20
Release 0.117.0-alpha.20
0.117.0-alpha.19
Release 0.117.0-alpha.19
0.117.0-alpha.18
Release 0.117.0-alpha.18
0.117.0-alpha.17
Release 0.117.0-alpha.17