Plan mode unexpectedly switches to Default without an explicit mode change
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
What issue are you seeing?
In the Codex desktop app, Plan mode can unexpectedly switch to Default even when the user has not explicitly changed the mode.
I can reproduce this in at least two ways.
Reproduction 1: Backspace in an empty composer
- Open any thread in Codex.
- Switch to Plan mode.
- Make sure the composer is completely empty.
- Press
Backspaceonce.
Actual behavior
The mode immediately changes from Plan to Default.
Expected behavior
Pressing Backspace in an already-empty composer should be a no-op and should not change the current mode.
Reproduction 2: Cancel an implementation prompt with Esc
- Start in Plan mode.
- Continue the discussion until Codex presents the option to proceed with implementation.
- Do not choose the implementation option.
- Press
Escto cancel/dismiss the prompt because you want to continue discussing or refining the plan.
Actual behavior
The mode changes from Plan to Default.
Expected behavior
Cancelling or dismissing the implementation prompt should keep the thread in Plan mode. The user may want to continue discussing or refining the plan rather than proceed with implementation.
Plan mode should only switch to Default when the user explicitly changes the mode.
Additional observations
- For the Backspace case, this only happens when the composer is already empty.
- If there is text in the composer,
Backspacebehaves normally and deletes text. - The Backspace case is consistently reproducible.
- It is easy to trigger accidentally by deleting the last character of a prompt and pressing
Backspaceone more time.
Environment
- Codex Desktop
- Version:
26.818.32112 - OS: macOS
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing both reported cases in the Codex desktop app on macOS: Backspace in an empty composer and Esc while dismissing the implementation prompt. Trace the keyboard and mode-transition entry points involved in each path. Done means both actions leave Plan mode unchanged while explicit mode changes still work.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 68/100