Agent Teams: Permission requests should show as native UI popups in VS Code extension, not as chat messages
Summary
When using experimental Agent Teams (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1) in the VS Code extension, permission requests from sub-agents surface as raw teammate-message JSON cards in the chat window rather than as native interactive permission popup dialogs.
Expected Behavior
Sub-agent permission requests should render as the same interactive popup UI that the main Claude Code instance uses — with clear approve/deny buttons — consistent with the native tool permission UX.
Actual Behavior
Permission requests from agents appear as JSON blobs embedded in teammate-message chat cards, for example:
{
"type": "permission_request",
"request_id": "perm-1775954961402-3gzh0gb",
"agent_id": "gitops",
"tool_name": "Bash",
"description": "Check branch status in databridge repo",
"input": { "command": "cd /path/to/repo && git branch 2>&1" }
}
Users must type "approve" or "deny" in chat to relay approval back — there is no direct interactive UI element.
Environment
- Claude Code VS Code Extension
- Platform: macOS (Darwin 25.4.0)
- Agent Teams: experimental (
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1) - Model: claude-sonnet-4-6
Impact
- Poor UX for multi-agent workflows — users must parse raw JSON to understand what they are approving
- No visual distinction between informational agent messages and actionable permission requests
- Breaks the mental model of the permission system that users are accustomed to from single-agent sessions
Suggested Fix
Render agent team permission requests using the same native popup/dialog component used for main session tool approvals. The permission_request message type from teammate agents should be intercepted by the VS Code extension and displayed as a proper interactive UI element rather than passed through as raw chat content.
🤖 Filed via Claude Code
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗