Why We Stopped Using LLM Agents to Control LLM Agents (Deterministic Multi-Agent FSM)
Originally published at parvejshah.com/blog/deterministic-multi-agent-systems-production by Parvej Shah . The standard architecture pattern for multi-agent systems right now is an orchestration agent: a central LLM that receives a goal, decides which specialized agents to invoke, passes messages between them, and decides when the task is complete. In early 2025, we built this exact pattern for…
The standard approach for building multi-agent systems involves a central LLM orchestrator. This orchestrator was used by Minions.AI for its automated technical content pipeline, coordinating a research agent, a draft writer, a critic agent, and a formatting specialist. However, this method led to unpredictable failures and inefficiencies in 30% of runs.
Issues arose from the non-deterministic nature of the control plane, with agents oscillating between loops, poisoning shared context windows, and exhibiting non-deterministic convergence. These problems stemmed from LLMs attempting to handle state machine transitions, termination detection, and error routing—tasks better suited for typed code.
To address these challenges, a deterministic Finite State Machine (FSM) was introduced in TypeScript. This new architecture removed all control flow decisions from LLMs, delegating state transitions and termination detection to explicit code. The design includes a clear state enum, a context interface defining pipeline states, and a runContentPipeline function orchestrating the process.
By structuring the pipeline as a deterministic FSM, Minions.AI has achieved a 99.2% automated completion rate with zero loop oscillations. Inference cost variance has also been drastically reduced, from a previous range of ±120% to ±8%. This deterministic approach eliminates the unpredictable behavior seen with LLM orchestrators, ensuring that the pipeline processes content runs efficiently and reliably.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.