Plan execution dialog shows inconsistent options across parallel sessions

Status Fixed / completed
Maintainer reply None cached
Activity 2 comments · opened Apr 14, 2026 · closed Apr 14, 2026

Bug Description

When running two Claude Code sessions in parallel with the same global settings, the plan execution dialog ("Claude has written up a plan and is ready to execute") shows different options in each session:

Session A (incorrect):

1. Yes, and use auto mode
2. Yes, manually approve edits
3. No, refine with Ultraplan on Claude Code on the web
4. Tell Claude what to change

Session B (correct):

1. Yes, auto-accept edits
2. Yes, manually approve edits
3. No, refine with Ultraplan on Claude Code on the web
4. Tell Claude what to change

Option 1 differs: "auto mode" vs. "auto-accept edits". Selecting "auto mode" results in an error on the MAX plan, while "auto-accept edits" works correctly.

Expected Behavior

Both sessions should show "auto-accept edits" as option 1, matching the configured defaultMode: "acceptEdits". The "auto mode" option should either not appear on plans that don't support it, or it should work correctly.

Environment

  • Plan: Claude MAX (individual, not Team/Enterprise)
  • Global settings (~/.claude/settings.json):

``json
{
"permissions": {
"defaultMode": "acceptEdits"
}
}
``

  • Project-level settings: None (no project-specific .claude/settings.json exists)
  • Platform: macOS (Darwin 25.3.0)

Steps to Reproduce

  1. Configure defaultMode: "acceptEdits" in global settings
  2. Open two parallel Claude Code sessions
  3. Trigger plan mode in both sessions
  4. Observe that one session shows "auto mode" while the other shows "auto-accept edits"

Impact

Selecting "auto mode" on a MAX plan causes an error every time, making it a confusing and frustrating option to encounter. Since both sessions share the same configuration, the inconsistency suggests a race condition or state management issue in the plan execution dialog.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗