OpenAI Codex CLI rust-v0.102.0

New Features - Added a more unified permissions flow, including clearer permissions history in the TUI and a slash command to grant sandbox read access when directories are blocked. (11633, 11512, ...

New Features - Added a more unified permissions flow, including clearer permissions history in the TUI and a slash command to grant sandbox read access when directories are blocked. (11633, 11512, 11550, 11639) - Introduced structured network approval handling, with richer host/protocol context shown directly in approval prompts. (11672, 11674) - Expanded app-server fuzzy file search with explicit session-complete signaling so clients can stop loading indicators reliably. (10268, 11773) - Added customizable multi-agent roles via config, including migration toward the new multi-agent naming/config surface. (11917, 11982, 11939, 11918) - Added a model/rerouted notification so clients can detect and render model reroute events explicitly. (12001) Bug Fixes - Fixed remote image attachments so they persist correctly across resume/backtrack and history replay in the TUI. (10590) - Fixed a TUI accessibility regression where animation gating for screen reader users was not consistently respected. (11860) - Fixed app-server thread resume behavior to correctly rejoin active in-memory threads and tighten invalid resume cases. (11756) - Fixed model/list output to return full model data plus visibility metadata, avoiding unintended server-side filtering. (11793) - Fixed several jsrepl stability issues, including reset hangs, in-flight tool-call races, and a viewimage panic path. (11932, 11922, 11800, 11796) - Fixed app integration edge cases in mention parsing and app list loading/filtering behavior. (11894, 11518, 11697) Documentation - Updated contributor guidance to require snapshot coverage for user-visible TUI changes. (10669) - Updated docs/help text around Codex app and MCP command usage. (11926, 11813) Chores - Improved developer log tooling with new just log --search and just log --compact modes. (11995, 11994) - Updated vendored rg and tightened Bazel/Cargo lockfile sync checks to reduce dependency drift. (12007, 11790) Changelog Full Changelog: https://github.com/openai/codex/compare/rust-v0.101.0...rust-v0.102.0 - 10268 app-server: add fuzzy search sessions for streaming file search @nornagon-openai - 11547 Parse first order skill/connector mentions @canvrno-oai - 11227 feat(app-server): experimental flag to persist extended history @owenlin0 - 10672 Add jsrepl host helpers and exec end events @fjord-oai - 11512 add a slash command to grant sandbox read access to inaccessible directories @iceweasel-oai - 11631 chore(core) Deprecate approvalpolicy: on-failure @dylan-hurd-oai - 11636 Better error message for model limit hit. @xl-openai - 11633 feat: introduce Permissions @bolinfest - 10669 docs: require insta snapshot coverage for UI changes @joshka-oai - 11645 fix: skip reviewstartwithdetacheddeliveryreturnsnewthreadid o… @owenlin0 - 11639 [feat] add seatbelt permission files @celia-oai - 11622 Remove absolute path in rolloutsummary @wendyjiao-openai - 10671 Add jsrepltoolsonly model and routing restrictions @fjord-oai - 11657 app-server tests: disable shellsnapshot for review suite @bolinfest - 11646 app-server: stabilize detached review start on Windows @bolinfest - 11638 fix(app-server): surface more helpful errors for json-rpc @owenlin0 - 11417 [apps] Add isenabled to app info. @mzeng-openai - 11630 Add new appsmcpgateway @canvrno-oai - 11656 Persist complete TurnContextItem state via canonical conversion @charley-oai - 11510 Remove git commands from dangerous command checks @joshka-oai - 11668 feat(shell-tool-mcp): add patched zsh build pipeline @nornagon-openai - 11275 Added a test to verify that feature flags that are enabled by default are stable @etraut-openai - 11651 Add cwd as an optional field to thread/list @acrognale-oai - 11660 chore(approvals) More approvals scenarios @dylan-hurd-oai - 11518 [apps] Fix app loading logic. @mzeng-openai - 11679 fix: dont show NUX for upgrade-target models that are hidden @sayan-oai - 11515 Point Codex App tooltip links to app landing page @joshka-oai - 11671 chore(core) Restrict model-suggested rules @dylan-hurd-oai - 11703 fix(ci) lock rust toolchain at 1.93.0 to unblock @dylan-hurd-oai - 11662 feat(network-proxy): structured policy signaling and attempt correlation to core @viyatb-oai - 11709 fix(shell-tool-mcp) build dependencies @dylan-hurd-oai - 11618 feat: add token usage on memories @jif-oai - 11722 Lower missing rollout log level @jif-oai - 11712 chore: streamline phase 2 @jif-oai - 11731 feat: memories config @jif-oai - 11736 feat: increase windows workers stack @jif-oai - 11739 feat: add slug in name @jif-oai - 11745 chore: move explorer to spark @jif-oai - 11748 Fix memories output schema requirements @jif-oai - 11669 core: limit searchtoolbm25 to Apps and clarify discovery guidance @apanasenko-oai - 11755 app-server-test-client websocket client and thread tools @maxj-oai - 11663 fix: reduce flakiness of compactresumeaftersecondcompactionpreserveshistory @bolinfest - 11667 sandbox NUX metrics update @iceweasel-oai - 11695 Updated app bug report template @etraut-openai - 11477 feat: switch on dying sub-agents @jif-oai - 11711 feat(tui): prevent macOS idle sleep while turns run @yvolovich-cyber - 11686 Report syntax errors in rules file @etraut-openai - 11763 Update readpath prompt @zuxin-oai - 11772 chore: mini @jif-oai - 11697 [apps] Improve app listing filtering. @mzeng-openai - 11666 Add jsrepl kernel crash diagnostics @fjord-oai - 11687 support app usage analytics @alexsong-oai - 11769 Improve GitHub issue deduplication reliability by introducing a stage… @etraut-openai - 11770 fix(nix): use correct version from Cargo.toml in flake build @rupurt - 11677 turn metadata: per-turn non-blocking @pash-openai - 11692 rmcp-client: fix auth crash @maxj-oai - 10590 tui: preserve remote image attachments across resume/backtrack @charley-oai - 11782 turn metadata followups @pash-openai - 11773 [app-server] add fuzzyFileSearch/sessionCompleted @nornagon-openai - 11756 codex-rs: fix thread resume rejoin semantics @maxj-oai - 11793 fix: send unfiltered models over model/list @sayan-oai - 11799 fix(protocol): make local image test Bazel-friendly @joshka-oai - 11796 Fix jsrepl viewimage test runtime panic @fjord-oai - 11800 Fix jsrepl in-flight tool-call waiter race @fjord-oai - 11658 feat(skills): add permission profiles from openai.yaml metadata @celia-oai - 11790 bazel: enforce MODULE.bazel.lock sync with Cargo.lock @joshka-oai - 11803 add perf metrics for connectors load @alexsong-oai - 11659 Handle model-switch base instructions after compaction @charley-oai - 11813 Fixed help text for mcp and mcp-server CLI commands @etraut-openai - 11672 feat(core): add structured network approval plumbing and policy decision model @viyatb-oai - 11674 feat(tui): render structured network approval prompts in approval overlay @viyatb-oai - 11550 feat(tui) Permissions update history item @dylan-hurd-oai - 11767 fix(core): add linux bubblewrap sandbox tag @viyatb-oai - 11534 Add processuuid to sqlite logs @charley-oai - 11487 core: snapshot tests for compaction requests, post-compaction layout, some additional compaction tests @charley-oai - 11690 fix: show user warning when using default fallback metadata @sayan-oai - 11780 chore(tui): reduce noisy key logging @apanasenko-oai - 11884 fix: only emit unknown model warning on user turns @sayan-oai - 11893 bazel: fix snapshot parity for tests/.rs rusttest targets @apanasenko-oai - 11759 feat: use shell policy in shell snapshot @jif-oai - 11615 Allow hooks to error @gt-oai - 11918 chore: rename collab feature flag key to multiagent @jif-oai - 11924 nit: memory storage @jif-oai - 11917 feat: add customizable roles for multi-agents @jif-oai - 11926 docs: mention Codex app in README intro @vb-openai - 11900 feat: drop MCP managing tools if no MCP servers @jif-oai - 11939 Rename collab modules to multi agents @jif-oai - 11894 [apps] Fix app mention syntax. @mzeng-openai - 11866 chore(core) rm Feature::RequestRule @dylan-hurd-oai - 11948 add(feedback): over-refusal / safety check @fouad-openai - 11860 Fixed screen reader regression in CLI @etraut-openai - 11964 add(core): safety check downgrade warning @fouad-openai - 11951 fix(core) execpolicy parsing fixes @dylan-hurd-oai - 11932 fix: jsrepl reset hang by clearing exec tool calls without waiting @jif-oai - 11974 Hide /debug slash commands from popup menu @jif-oai - 11922 fix: race in js repl @jif-oai - 11969 fix(ci) Fix shell-tool-mcp.yml @dylan-hurd-oai - 11908 Exit early when session initialization fails @jif-oai - 11986 nit: wording multi-agent @jif-oai - 11995 feat: add --search to just log @jif-oai - 11994 feat: add --compact mode to just log @jif-oai - 11833 Don't allow modelsupportsreasoningsummaries to disable reasoning @etraut-openai - 11807 Centralize context update diffing logic @charley-oai - 12007 Update vendored rg to the latest stable version (15.1) @etraut-openai - 11970 Protect workspace .agents directory in Windows sandbox @etraut-openai - 12005 Add /statusline tooltip entry @jif-oai - 11982 feat: move agents config to main config @jif-oai - 11224 chore: clarify websearch deprecation notices and consolidate tests @sayan-oai - 12001 Feat: add model reroute notification @shijie-oai - 11801 Add remote skill scope/productsurface/enabled params and cleanup @xl-openai