Skip to content

Subagents don't inherit bypassPermissions mode from parent session #37442

Description

@sorfanit

Description

When the parent session is configured with "defaultMode": "bypassPermissions" in ~/.claude/settings.json, subagents spawned via the Agent tool still prompt for tool permissions. This defeats the purpose of bypass mode and creates a disruptive experience — every subagent invocation can trigger permission prompts that the user has already opted out of.

Steps to Reproduce

  1. Set "defaultMode": "bypassPermissions" in ~/.claude/settings.json
  2. Also set "skipDangerousModePermissionPrompt": true
  3. Start a Claude Code session — main agent correctly bypasses all permission prompts
  4. Invoke a task that uses the Agent tool (subagent)
  5. The subagent prompts for permissions on tools the parent session would silently allow

Expected Behavior

Subagents should inherit the parent session's permission mode, including bypassPermissions and all allow patterns.

Actual Behavior

Subagents prompt for permissions as if running in a more restrictive mode.

Environment

  • Claude Code version: 2.1.81
  • OS: Windows 11 Pro (10.0.26200)
  • Shell: bash (Git Bash)

Notes

Persistent issue across multiple sessions over several days. Adding broad allow patterns (e.g., Bash(*)) as a workaround doesn't fully resolve it since bypassPermissions should already cover everything.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions