Skip to content

permission-mode: bypassPermissions in settings.local.json has no effect #40014

Description

@jeffrey-aguilera

Description

Setting "permission-mode": "bypassPermissions" in .claude/settings.local.json does not bypass permission prompts. Tools still require manual approval each time.

Steps to Reproduce

  1. Create .claude/settings.local.json in project root:
{
  "permissions": {
    "allow": []
  },
  "permission-mode": "bypassPermissions"
}
  1. Restart Claude Code
  2. Attempt any tool use (e.g., Bash, Read, Edit)

Expected Behavior

All permission prompts are skipped, matching the behavior of claude --dangerously-skip-permissions.

Actual Behavior

Permission prompts still appear for every tool use. The setting is silently ignored.

Additional Context

  • "skipDangerousModePermissionPrompt": true in ~/.claude/settings.json is also recognized but only suppresses the startup warning — it does not actually enable bypass mode.
  • "dangerouslySkipPermissions": true under "permissions" is also silently ignored.
  • The only working method appears to be the CLI flag --dangerously-skip-permissions.
  • There is no clear documentation on whether permission-mode is a valid settings.json key or if bypass mode can only be activated via CLI flag.

Environment

  • macOS (Darwin 25.3.0)
  • Claude Code CLI

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    duplicateThis issue or pull request already exists

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions