Multi-Agent Business Swarm
I built a hub-and-spoke multi-agent system that runs the revenue side of a business. A central orchestrator reads an incoming task, figures out which specialists it needs, routes the work to them in parallel, and synthesizes everything back into one answer. Five specialist agents, one shared knowledge base, and a set of rules for when a human has to step in.
The problem
A small revenue team does a lot of different kinds of work. Cold email copy, CRM builds, pipeline analysis, partner outreach, client onboarding, LinkedIn posts. One general assistant ends up mediocre at all of it because the context for each job pulls in different directions. You either get shallow answers or you spend your whole day re-explaining the business.
I wanted something that behaved like an actual team. Hand it a task, and the right specialist picks it up with the right context already loaded, while the other specialists stay out of the way.
How it works
The system is hub-and-spoke. A central orchestrator is the hub. Five specialist agents are the spokes. The orchestrator never tries to do specialist work itself. Its job is to classify, route, and synthesize.
Every task runs through the same intake protocol:
- Classify. The orchestrator reads the task and decides which specialists it needs. Most tasks need one or two. A full multi-channel campaign can pull in all five.
- Announce routing. Before it does anything, it states which agents it is calling and why, so the reasoning is visible up front.
- Spawn in parallel. It launches every required specialist at once, in a single step, instead of one at a time. Each one gets a structured prompt and reads its own knowledge file plus the shared company context.
- Synthesize. When the specialists return, the orchestrator stitches their outputs together under clear headers, calls out any dependencies between them, recommends a first action, and flags anything that needs human sign-off.
The routing matrix
Routing is not left to the model's mood. There is an explicit matrix that maps task types to the agents that handle them. A cold email sequence routes to Sales Enablement plus Marketing and Content. A CRM workflow build routes to the GTM Engineer. A pipeline health report routes to Partner and RevOps. A client onboarding package routes to Account Management. A full multi-channel campaign routes to all five. The matrix makes the system predictable, which matters when you are trusting it to do real work.
The five specialists
Each agent has its own knowledge file, its own lane, and an explicit list of what it does not touch, so they hand off to each other instead of stepping on each other.
- GTM Engineer. The technical implementer. CRM builds, workflow automation, target-account data work, outbound sequence setup, dashboards, and integrations.
- Sales Enablement. Supports the selling motion. Discovery-call prep, proposal content, cold email copy, and structured objection-handling frameworks.
- Marketing and Content. Awareness and demand. Thought-leadership posts, newsletter content, ad and landing-page copy, event campaigns, and generative-engine-optimization strategy.
- Partner and RevOps. The partner channel and the numbers. Partner program management and recruitment, pipeline analytics, forecasting, and attribution.
- Account Management. Keeping clients. Onboarding, client-health monitoring, the reference program, and expansion or upsell opportunities.
Shared knowledge and a standard prompt
Two things keep the specialists consistent. First, a shared knowledge base. The orchestrator loads the company strategy and buyer-persona context at the start of every session, and every specialist reads the same shared files plus its own. So they all argue from the same facts. Second, a standard sub-agent prompt template. Every specialist is spawned with the same structure: read your knowledge files, here is the exact task, here are your output requirements, and here is what to flag for a human. That is why the outputs come back in a form the orchestrator can actually merge.
Knowing when to stop
The part I am most deliberate about is the escalation rules. The system is built to recognize the moments where it should not act on its own. Anything touching pricing, bulk data operations on the live CRM, legal or contract questions, billing, or a client-retention risk gets flagged and routed to the right human instead of being answered confidently and wrongly. Bulk data operations specifically require an explicit human confirmation before any agent proceeds, because that is exactly the kind of action that is expensive to get wrong. The goal was never an autonomous system that does everything. It was a system that does the safe work well and is honest about the rest.
Why it matters
This is a real pattern for running a function with a small team and AI doing the heavy lifting. Specialists with focused context beat one generalist with everything crammed in. A routing layer makes the whole thing predictable. A shared knowledge base keeps it honest. And explicit human-in-the-loop rules keep it from doing damage. That combination, orchestration plus specialization plus guardrails, is the part that transfers to almost any business, not just this one.