Why Multiple Agents?¶
One agent that does everything gives generic answers. Multiple specialized agents give expert answers.
The problem¶
One agent doing everything:
"Analyze sales" → mediocre
"Write a report" → mediocre
"Translate to Spanish" → mediocre
The solution¶
Specialized agents:
Analyst → expert at analysis
Writer → expert at reports
Translator → expert at languages
Each agent has its own system prompt, its own tools, and can even use a different AI model. The analyst might use a reasoning model while the writer uses a creative one.
When to use multiple agents¶
Different skills needed — An analysis task and a writing task need different prompts and tools.
Different LLMs — One agent uses Ollama locally, another uses GPT-4o for harder tasks.
Independent scaling — The support agent gets 100x more traffic than the report agent. Scale them independently.
Team collaboration — Agents discuss a topic, each contributing their expertise, then synthesize a conclusion.
How it works in ABI-Core¶
# Create project where agents can find each other
abi-core create project my-system --with-semantic-layer
# Add specialized agents
abi-core add agent analyst --description "Analyzes data and trends"
abi-core add agent writer --description "Writes reports and summaries"
Each agent gets:
Its own container (runs independently)
Its own agent card (so others can find it)
Its own messaging endpoint (so others can talk to it)
Agents find each other by describing what they need:
# "Who can write reports?" → finds the writer agent
agent = await tool_find_agent("write reports")