[Bug] Desktop Code tab ignores project settings.json permissions.allow on Windows
Bug Description
Title: [BUG] Desktop Code tab still ignores project .claude/settings.json permissions.allow (Windows) — #73587 closed by bot, still reproduces
Environment
- Windows 11 Pro 10.0.26300
- Claude desktop app, Code tab: version Version 2.37337.1 (ba51ab)
- Claude Code CLI (native installer): version 2.1.300
What happens
In the desktop app's Code tab, every Bash command asks for approval, although the project's
.claude/settings.json (shared project settings) contains matching allow rules, e.g.
"Bash(bash scripts/session-start.sh)" (exact) and "Bash(docker compose run --rm app *)".
.claude/settings.local.json is empty; the only PreToolUse hook exits 0 or 2 and never asks.
Permission mode: default.
Expected
Commands matching permissions.allow run without a prompt, as in the CLI.
Cross-check in the CLI (same folder, same files)
- /permissions lists the rules, source "shared project settings".
- "Run bash scripts/session-start.sh" ran both commands (bash scripts/session-start.sh and
docker compose run --rm app ./check-start.sh) without any prompt.
So the settings file is valid and loaded by the CLI; only the desktop app does not apply it.
Related
Same symptoms as #73587 (labels: bug, regression, area:desktop, area:permissions, platform:windows),
which the bot closed as "not planned" for inactivity on 2026-09-10 without a maintainer reply
(incorrect closure noted in #87647). Earlier duplicates: #38148, #38427, #42428.
Impact
Every command needs a manual click; using "Always allow" instead writes exact-string rules to
settings.local.json, which we deliberately keep empty (all permissions are reviewed and versioned
in the project's settings.json).
Environment Info
- Platform: win32
- Terminal: claude-desktop
- Version: 2.1.300
- Feedback ID: 3c605738-70de-4163-b335-107ba9d514b1