Subagent dispatch: mid-session UI-accepted permission grants don't propagate to child subagents

Resolved 💬 5 comments Opened Apr 20, 2026 by Regevba Closed Jun 19, 2026

Summary

When the user accepts a permission prompt in the parent session (via the UI / --dangerously flag / etc.) and then the parent immediately dispatches a subagent, the child hits the same permission check and re-prompts as if the grant never happened.

Setup

  • Parent session running
  • User is prompted for permission X in the parent and accepts it
  • Without restarting the session, parent dispatches a child subagent that needs permission X

Expected

Child inherits the just-granted permission.

Actual

Child re-prompts for permission X. The only consumer-side workaround is to restart the session so settings.json is re-read.

Reproducer

https://github.com/Regevba/FitTracker2/tree/main/docs/superpowers/plans/f6-f9-reproducer § F9

Analysis

"Restart the session is the only workaround" is the signature of this being a runtime bug, not a config issue. There appear to be two code paths for permissions:

  1. Persistent grants (read from settings.json at session start) → propagated to children correctly
  2. Session-state grants (accepted at runtime via UI/prompt) → NOT propagated to children

The fix is either: persist UI-accepted grants to settings.local.json in real time, OR include session-state grants in the child-dispatch payload.

Workaround

Declare every required permission in settings.json before dispatching children. Never rely on mid-session UI grants for a child's permission surface.

Related

Likely the same root cause as F8, just exposed by a different mutation-timing pattern.

View original on GitHub ↗

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