Agent CLI Framework Differences: Sequential vs Batch Tool Calling
Agent CLI Framework Differences: Sequential vs Batch Tool Calling
Most agent CLI frameworks offer two modes of tool execution: sequential and batch. Sequential runs one tool at a time, waiting for the result before deciding the next step. Batch fires off multiple tool calls in parallel and processes all results at once.
For desktop automation, sequential almost always wins.
Why Batch Fails on Desktop
Batch tool calling works great when your tools are independent - fetching data from three different APIs, for example. But desktop tasks are inherently sequential. You need to open a window before you can read its contents. You need to read a form before you can fill it out. You need to click a button before you can verify the result.
When an agent tries to batch desktop operations, it is guessing about intermediate states. It assumes the window will be there, the form will have certain fields, the button will be clickable. These assumptions break constantly.
The Latency Tradeoff
The argument for batch is speed. Making one LLM call instead of five saves time and tokens. But on the desktop, the cost of a wrong assumption is much higher than the cost of an extra LLM round trip. A failed batch operation means retrying the entire sequence. A failed sequential step means retrying just that step.
Where Batch Still Makes Sense
Reading multiple files, checking system status, gathering context before acting - these are good batch candidates even in desktop agents. The key is that these operations do not modify state. They are read-only and order-independent.
The best frameworks let you mix both modes. Sequential for actions, batch for reads.
Fazm is an open source macOS AI agent. Open source on GitHub.