Feature Request: Configurable concurrent subagent limit in workflows

Resolved 💬 6 comments Opened May 30, 2026 by GTilor Closed Jun 21, 2026

Problem

The workflow engine caps concurrent agent() calls at min(16, cpu_cores - 2). On a 10-core machine this means only 8 agents run in parallel. For large-scale workflows (research sweeps, exhaustive reviews, multi-perspective verification), this is a significant bottleneck.

Current Behavior

  • Hard limit: min(16, cpu cores - 2)
  • No configuration option to override
  • Excess agents queue and wait

Proposed Solution

Add a configurable option (e.g., in .claude/settings.json or as a workflow script parameter) to override the concurrent limit:

{
  "workflow": {
    "maxConcurrentAgents": 32
  }
}

Or in workflow scripts:

const results = await parallel(tasks, { maxConcurrency: 32 })

Use Cases

  • Large-scale code reviews across 50+ files
  • Exhaustive bug finding with multiple independent finders
  • Multi-perspective verification panels (5+ independent verifiers per finding)
  • Research sweeps with diverse search strategies

Environment

  • Claude Code version: 2.1.158
  • Platform: macOS (Darwin 25.5.0), 10 cores
  • Actual concurrent limit: 8

Notes

The current cpu_cores - 2 safeguard is sensible as a default, but power users with sufficient resources (cloud instances, dedicated machines) should be able to opt into higher concurrency. The 16 hard cap could also be raised or made configurable.

View original on GitHub ↗

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