Permission prompts still appear despite wildcard allow rules in settings.json

Resolved 💬 3 comments Opened Feb 24, 2026 by NatKang Closed Feb 27, 2026

Description

Permission prompts are shown to the user for tool calls (Glob, Bash, Read, etc.) even though the global ~/.claude/settings.json has wildcard allow rules covering all of them.

Environment

  • Claude Code version: 2.1.50
  • OS: macOS (Darwin 25.2.0)
  • No project-level settings.json override

settings.json permissions block

"permissions": {
    "allow": [
      "Read(**/*)",
      "Read(/Users/<user>/.claude/**/*)",
      "Glob(**/*)",
      "Grep(**/*)",
      "Bash(*)",
      "Edit(*)",
      "Edit(/Users/<user>/.claude/**/*)",
      "Write(*)",
      "Write(/Users/<user>/.claude/**/*)",
      "WebFetch(*)",
      "WebSearch"
    ],
    "deny": [
      "Read(.env*)",
      "Read(**/secrets/**)",
      "Bash(rm -rf *)",
      "Bash(rm -r *)",
      "Bash(git push --force *)",
      "Bash(git reset --hard*)",
      "Bash(git clean -f*)"
    ]
  }

Sandbox is also disabled:

"sandbox": {
    "enabled": false,
    "autoAllowBashIfSandboxed": true,
    "allowUnsandboxedCommands": true
}

Expected behavior

All tool calls matching the allow patterns should execute without prompting.

Actual behavior

Standard tool calls (e.g., Glob(**/*.tex), Bash(ls -lh ...), TaskList) still trigger permission prompts during the session.

Notes

  • No project-level .claude/settings.json exists to override the global config.
  • The TaskList tool (internal task tracking) was also prompting, which may not be covered by the allow patterns — unclear if that's expected.

View original on GitHub ↗

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