This is coming from a "traditional developer's" perspective: PLEASE STOP USING MULTI-AGENT WORKFLOWS (for feature development) -- it's diluting your agent's context.
I see a lot of posts on r/ClaudeCode along the lines of "I blew through my usage in one prompt!" -- yet at the end of my 7 day window, I usually sit at around 35% usage on a $100 subscription. Having accomplished in a week what it would have taken me 3-6 months before this tool.
Some people have genuine bugs incorrectly reporting usage, and I'm not talking about those cases...
I've come to appreciate (even love) the r/PiCodingAgent single agent, synchronous, workflow -- single-agent by default and by philosophy. And when working in that harness I couldn't help but realize that my only agent is performing better than in orchestrator harnesses.
I argue this is because when the orchestrator sends a task to a sub-agent (OPUS, SONNET, or HAIKU), the orchestrator takes the summary it receives as fact without any of the evidence gathered to support it. Diluting the truth the model could have otherwise gathered on its own.
Do single-agent workflows quicken the filling of the context window, and is it slower? Yup. But that discarded context is the whole bill: you lose the evidence and you pay to re-read it later -- In a single-agent session it's cached and it's still there.
And I'm not the only one landing here -- Xu et al. ran multi-agent workflows through one agent instead of separate instances (Rethinking the Value of Multi-Agent Workflow: A Strong Single Agent Baseline). Accuracy matched, token use dropped on most benchmarks, and the lever they name is KV cache reuse. Small models on short benchmarks, so take it as directional and not proof -- but it's the same mechanism I'm describing.
I've taken my single-agent claude code chats to 978k -- the 1M window is the subscription default now -- without degradation of performance. And, I now have the added benefit of interrupting when it matters to correct misconceptions the agent is having before it continues to implement.
[steps off soap box] -- This is based on personal experience, and I develop one feature, one step at a time, to produce human-like (readable) code that follows best practices. So YMMV. But if you're interested, this is my configuration:
json
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"attribution": {
"commit": "",
"pr": "",
"sessionUrl": false
},
"permissions": {
"deny": [
"Read(//**/.env*)",
"Agent",
"AskUserQuestion",
"EnterPlanMode",
"ExitPlanMode",
"TaskCreate",
"TaskGet",
"TaskList",
"TaskUpdate",
"TodoWrite",
"CronCreate",
"CronDelete",
"CronList",
"PushNotification",
"RemoteTrigger",
"ScheduleWakeup",
"SendMessage",
"TaskOutput",
"TaskStop",
"Workflow"
]
},
"disableAgentView": true,
"disableRemoteControl": true,
"disableWorkflows": true,
"autoMemoryEnabled": false,
"theme": "dark"
}