opncrafter

Orchestrating Swarms: Multi-Agent Systems

Dec 29, 2025 • 22 min read

Single Agents are powerful, but limited. They hallucinate, get stuck, and lack specialized knowledge. The future of AI is Swarm Intelligence: small, specialized agents working together.

1. The "Supervisor" Architecture

The most robust pattern for 2025 is the Supervisor Pattern. You have one "Root" LLM (The Supervisor) who does not do work; it only delegates tasks to specialized workers (Tools or simple LLMs).

The Supervisor

"I need a report on AAPL stock." → Delegates to Researcher.

The Workers

Researcher: Fetches data.
Writer: Drafts blog.

2. Code: Building a Swarm with LangGraph

We can implement this by giving the Supervisor a special tool that lets it "route" execution to other nodes.

# 1. Define the Supervisor Prompt
system_prompt = (
    "You are a supervisor tasked with managing a conversation between the"
    " following workers: {members}. Given the following user request,"
    " respond with the worker to act next. Each worker will perform a"
    " task and respond with their results and status. when finished,"
    " respond with FINISH."
)

# 2. Define the Graph
workflow = StateGraph(AgentState)
workflow.add_node("Supervisor", supervisor_node)
workflow.add_node("Researcher", researcher_node)
workflow.add_node("Coder", coder_node)

# 3. Add Edges (Supervisor -> Workers)
for member in members:
    workflow.add_edge(member, "Supervisor") # Workers report back to boss

workflow.add_conditional_edges(
    "Supervisor",
    lambda x: x["next"], # Read 'next' field from Supervisor output
    {
        "Researcher": "Researcher",
        "Coder": "Coder",
        "FINISH": END
    }
)

3. Shared State vs Isolated State

How do agents communicate? Two main approaches:

  • Blackboard Architecture (Shared): All agents write to a central objects (State). Everyone sees everything. Good for small teams (<5 agents).
  • Message Passing (Isolated): Agent A sends a DM to Agent B. Agent C knows nothing. Essential for security and preventing token context overflow.

4. The Problem of "Infinite Loops"

When you put two agents in a room, they often get stuck complimenting each other.

Agent A: "Here is the code."
Agent B: "Great code! Anything else?"
Agent A: "No, I am glad you liked it."
Agent B: "I am glad too. Let me know if you need help."

Solution: Implement a termination_condition. For example, checking if the string "TERMINATE" is present, or setting a hard max_turns=10 limit in your Graph.

5. Conclusion

Multi-Agent systems allow you to solve problems that are too complex for a single prompt. By breaking a task into research, writing, and review, you get Superhuman reliability.