Subagents don't inherit session-level permissions

Resolved 💬 5 comments Opened Mar 13, 2026 by CH-EdwinB Closed Apr 14, 2026

Bug

When I select **"Yes, and don't ask again for: git add:\"* in the permission prompt, the preference is not inherited by subagents spawned in the same session. Each subagent re-prompts for the same permission.

Expected behavior

Permission inheritance should follow this chain:

  1. Session start/resume: read global permissions → merge project permissions (allow/deny) → merge session permissions (allow/deny)
  2. Subagent start: same chain — global → project → session
  3. "Don't ask again" writes: persist to session level. May optionally also store at project or global level if appropriate.

This means a permission granted once in a session should apply to all subagents within that session without re-prompting.

Actual behavior

  • User selects option 2 ("Yes, and don't ask again for: git add:\*")
  • The rule appears in .claude/settings.local.json under permissions.allow
  • A subagent dispatched via the Agent tool prompts again for the same git add command
  • This happens repeatedly — every subagent re-prompts

Reproduction

  1. Start a Claude Code session
  2. Run a command that triggers a permission prompt (e.g., git add)
  3. Select "Yes, and don't ask again"
  4. Dispatch a subagent (via Agent tool) that runs the same command
  5. Observe: the subagent prompts again for the same permission

Impact

For workflows that dispatch multiple subagents (e.g., subagent-driven development with implementer + reviewer agents), the user gets prompted 2-3x per task for permissions they've already permanently approved. This is especially disruptive when the user is AFK and has given explicit permission to proceed autonomously.

Environment

  • Claude Code (CLI)
  • macOS

View original on GitHub ↗

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