New Features
- Add multi-conversation “agent control” so a session can spawn or message other conversations programmatically (#8783, #8788)
- Add app-server
thread/rollbackso IDE clients can undo the last N turns without rewriting history (#8454) - Add
web_search_cachedto enable cached-only Web Search results as a safer alternative to live requests (#8795) - Allow global exec flags (model/json/sandbox toggles, etc.) to be passed after
codex exec resume(#8440) - Show time/version-targeted announcement tips in the TUI, driven by a TOML file in the repo (#8752)
- Add an
[analytics] enabled=...config section to control analytics behavior (#8350)
Bug Fixes
- Fix TUI2 transcripts so streamed markdown reflows on resize and copy/paste preserves soft wraps (#8761)
- Make
apply_patchparsing tolerant of whitespace-padded*** Begin Patch/*** End Patchmarkers (#8746) - Render paths relative to the current working directory before checking git roots, improving output in non-git workspaces (#8771)
- Prevent
CODEX_MANAGED_CONFIG_PATHfrom overriding managed config in production, closing a policy bypass (#8762) - Ensure app-server conversations respect the config passed in by the client (#8765)
- Reduce TUI UX glitches: suppress popups when browsing input history, fix copy “pill” rendering, and clear background terminals on interrupt (#8772, #8777, #8786)
Documentation
- Clarify onboarding/login guidance for headless/remote setups by steering users to
codex login --device-auth(#8753) - Update model examples used in tooling/config to current
gpt-5.2naming (#8566)
Chores
- Refactor skills discovery to use the config layer stack so all configured skill folders are considered (#8497)
- Auto-populate GitHub release notes at release creation time (#8799)
- Add more
apply_patchtest scenarios to harden coverage (#8230) - Tweak unified exec event emission to only send “begin” when a PTY is present (#8780)
Changelog
Full Changelog: rust-v0.78.0...rust-v0.79.0
- #8753 [device-auth] Update login instruction for headless environments. @mzeng-openai
- #8497 Use ConfigLayerStack for skills discovery. @xl-openai
- #8440 Allow global exec flags after
resumeand fix CI codex build/timeout @fjord-oai - #8230 chore(apply-patch) additional scenarios @dylan-hurd-oai
- #8746 fix: accept whitespace-padded patch markers @tibo-openai
- #8761 tui2: stop baking streaming wraps; reflow agent markdown @joshka-oai
- #8771 fix: render cwd-relative paths in tui @joshka-oai
- #8770 fix: fix readiness subscribe token wrap-around @tibo-openai
- #8780 chore: emit unified exec begin only when PTY exist @jif-oai
- #8762 fix: stop honoring CODEX_MANAGED_CONFIG_PATH environment variable in production @bolinfest
- #8566 fix: update model examples to gpt-5.2 @seuros
- #8735 feat: add head-tail buffer for
unified_exec@jif-oai - #8331 chore: add model/list call to app-server-test-client @owenlin0
- #8752 feat: forced tool tips @jif-oai
- #8786 chore: clear background terminals on interrupt @jif-oai
- #8350 feat: add analytics config setting @JaviSoto
- #8783 feat: agent controller @jif-oai
- #8772 suppress popups while browsing input history @xl-openai
- #8777 Clear copy pill background and add snapshot test @joshka-oai
- #8788 feat: drop agent bus and store the agent status in codex directly @jif-oai
- #8454 feat(app-server): thread/rollback API @owenlin0
- #8765 [app-server] fix config loading for conversations @celia-oai
- #8795 add web_search_cached flag @sayan-oai
- #8799 fix: populate the release notes when the release is created @bolinfest