Codex Desktop: Intelligence dropdown gets stuck per workspace before first message
What happened?
In Codex Desktop, the Intelligence / reasoning effort dropdown can become stuck per workspace before the first message is sent.
Observed behavior:
- In one workspace, the composer always showed
Medium. - Clicking
Highvisually did not change the selected value. - After sending the first message, changing Intelligence worked normally.
- Another workspace worked correctly at the same time.
I reset Codex saved workspace UI state for one affected project by removing that workspace path from:
electron-saved-workspace-rootsproject-order
in:
~/.codex/.codex-global-state.json
After restarting Codex and reopening that project, the dropdown worked again there.
However, the same bug then appeared in another workspace: it now always starts on Medium and clicking another level before the first message does not change it.
This suggests a Codex Desktop per-workspace/new-composer state/cache bug, not a repository issue and not simply model_reasoning_effort.
Expected behavior
Before the first message in a new thread, selecting a different Intelligence level should update the composer and be used for the new thread.
Actual behavior
For affected workspaces, the dropdown appears stuck before the first message. The selected level cannot be changed until after the thread starts.
Local evidence
- Global config has
model_reasoning_effort = "high". plan_mode_reasoning_effort = "high"was also set, but this does not appear to be a Plan Mode issue.- Codex logs showed the selector click writing the new effort successfully.
- The thread database still showed new threads for the affected workspace being created with the stale reasoning effort.
- Removing and re-adding a workspace from saved workspace UI state fixed that workspace, but the issue later appeared in another workspace.
Environment
- Codex Desktop app version:
26.429.20946 - Codex client/model cache version observed:
0.128.0 - OS: macOS
- Model:
gpt-5.5
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗