Multi-agent tool approval flow terminates conversations on rejection, limiting workflow flexibility

Resolved 💬 3 comments Opened Aug 14, 2025 by mdstaff Closed Aug 19, 2025

"Bug" Report

Current Behavior

When using Claude Code's multi-agent collaboration via the Task tool:

  1. Primary agent delegates to specialized agent via Task tool
  2. Specialized agent requests tool use
  3. User must approve or reject the tool request
  4. If rejected: The entire agent conversation terminates
  5. If approved: The tool executes and conversation continues

Observed Challenge

This creates a binary choice where users must approve all tool requests to maintain the agent conversation, even when:

  • The tool use is unnecessary given the context
  • The primary agent has already provided sufficient information
  • The user prefers the agent continue with available information

Real-World Example

Primary: "Review this implementation. Note: All tests are passing, no need to run tests."
Agent: Requests to run test commands
User options:

  • Approve: Runs unnecessary tests but maintains conversation
  • Reject: Conversation terminates, losing the agent's work

Impact on User Experience

  • Agent conversations cannot continue after any tool rejection
  • Users must approve unnecessary tool use to maintain workflow continuity
  • Reduces flexibility in multi-agent collaboration scenarios
  • Limits practical adoption of the multi-agent feature

Potential Enhancement

Consider allowing agent conversations to continue when tools are rejected, enabling:

  • Agents to complete tasks using available context when tools are unavailable
  • Users to reject specific tools while maintaining the overall workflow
  • More flexible multi-agent collaboration patterns

Diagnostic Information

Environment

  • Claude Code CLI
  • Multi-agent collaboration via Task tool
  • Affects all specialized agent types

/status

Claude Code v1.0.80
L Session ID: cd24041b-5ca9-4a49-89a1-60b13caecec7

Working Directory
L /Users/mdstaff/Projects/github.com/mdstaff/ashfolio

System Diagnostics • /doctor
⚠ Insufficient permissions for auto-updates
⚠ No write permissions for auto-updates (requires sudo)
⚠ Config mismatch: running npm-global but config says unknown

MCP servers • /mcp
✔ playwright

Account • /login
L Login Method: Claude Max Account

Memory • /memory
L project: ~/CLAUDE.md

Model • /model
L sonnet (claude-sonnet-4-20250514)

/doctor

Diagnostics
└ Currently running: npm-global (1.0.80)
└ Path: /usr/local/bin/node
└ Invoked: /usr/local/bin/claude
└ Config install method: unknown
└ Auto-updates enabled: true
└ Update permissions: No (requires sudo)
Warning: Insufficient permissions for auto-updates
Fix: Run: sudo chown -R $USER:$(id -gn) $(npm -g config get prefix)or use claude migrate-installer to migrate to local installation

Memory Files · 1k tokens
└ Project (/Users/mdstaff/CLAUDE.md): 1k tokens

MCP Tools · 0.2k tokens
└ mcp__playwright__browser_close (playwright): 0k tokens
└ mcp__playwright__browser_resize (playwright): 0k tokens
└ mcp__playwright__browser_console_messages (playwright): 0k tokens
└ mcp__playwright__browser_handle_dialog (playwright): 0k tokens
└ mcp__playwright__browser_evaluate (playwright): 0k tokens
└ mcp__playwright__browser_file_upload (playwright): 0k tokens
└ mcp__playwright__browser_install (playwright): 0k tokens
└ mcp__playwright__browser_press_key (playwright): 0k tokens
└ mcp__playwright__browser_type (playwright): 0k tokens
└ mcp__playwright__browser_navigate (playwright): 0k tokens
└ mcp__playwright__browser_navigate_back (playwright): 0k tokens
└ mcp__playwright__browser_navigate_forward (playwright): 0k tokens
└ mcp__playwright__browser_network_requests (playwright): 0k tokens
└ mcp__playwright__browser_take_screenshot (playwright): 0k tokens
└ mcp__playwright__browser_snapshot (playwright): 0k tokens
└ mcp__playwright__browser_click (playwright): 0k tokens
└ mcp__playwright__browser_drag (playwright): 0k tokens
└ mcp__playwright__browser_hover (playwright): 0k tokens
└ mcp__playwright__browser_select_option (playwright): 0k tokens
└ mcp__playwright__browser_tab_list (playwright): 0k tokens
└ mcp__playwright__browser_tab_new (playwright): 0k tokens
└ mcp__playwright__browser_tab_select (playwright): 0k tokens
└ mcp__playwright__browser_tab_close (playwright): 0k tokens
└ mcp__playwright__browser_wait_for (playwright): 0k tokens

Agent Configurations
└ Loaded custom agents: 3
└ project-architect (Project)
└ debugging-agent (Project)
└ technical-writing-agent (Project)

View original on GitHub ↗

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