Skip to content

Bash:* wildcard permission not working in settings.local.json #3428

@o2alexanderfedin

Description

@o2alexanderfedin

Description

The "Bash:*" wildcard permission in .claude/settings.local.json does not allow all bash commands as expected. Even with this permission set, Claude still prompts for approval for individual bash commands.

Steps to Reproduce

  1. Add "Bash:*" to the allow list in .claude/settings.local.json
  2. Restart Claude
  3. Try to run any bash command (e.g., ls, cp, etc.)
  4. Claude still shows permission prompt

Expected Behavior

"Bash:*" should allow all bash commands without prompting for permission.

Actual Behavior

Permission prompts still appear for each bash command, requiring manual approval or selection of option 2 to allow commands for specific directories.

Configuration

{
  "permissions": {
    "allow": [
      "Bash:*",
      "Read",
      "Write",
      "Edit",
      "MultiEdit",
      "Glob",
      "Grep",
      "LS",
      "TodoRead",
      "TodoWrite",
      "WebFetch",
      "WebSearch",
      "NotebookRead",
      "NotebookEdit",
      "Task",
      "exit_plan_mode",
      "mcp__*"
    ],
    "deny": []
  }
}

Environment

  • OS: macOS
  • Claude Code installation via official app

Additional Context

This appears to be a bug in how Claude interprets the wildcard permission syntax. The mcp__* wildcard works correctly for MCP tools, but Bash:* does not work for bash commands.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions