Mickael.
← Back to Blog
IA Agents · 6 min ·

Why I separated my agency into orchestrator + executors (and how it changes the game)

JARVIS never writes a single line of code. It only delegates. Understanding the difference between orchestrating and executing is what makes an AI agent system truly scale.

Why I separated my agency into orchestrator + executors (and how it changes the game)

The mistake everyone makes when starting with AI agents

When you discover you can give complex instructions to an AI model, the natural temptation is to build one agent that does everything. "You're my assistant. Design, develop, answer emails, handle accounting, manage social media."

The problem isn't the ambition. The problem is that approach doesn't scale. And the reason is technical: an agent that does everything needs to load all the context of everything. Every design decision, every line of code, every conversation with every client, every number on every invoice. Context explodes, quality drops, and you end up with an agent that's mediocre at everything.

The solution is a pattern we've used in business management for decades, but were slow to apply to AI systems: separate who decides from who executes.


The analogy that explains it all: the CEO and their team

A company's CEO doesn't write code, doesn't design graphics, doesn't handle customer support chat. The CEO defines direction, allocates resources, makes high-level decisions, and coordinates so the right specialists are working on the right things.

If the CEO started doing technical work directly, two important things would stop happening: first, the technical work would be mediocre (because the CEO isn't the expert). Second, strategic coordination would be lost (because the CEO would be too deep in the details).

JARVIS works exactly the same way. JARVIS is the CEO of the system. It never writes a line of code. Never generates an image. Never drafts a post. JARVIS decides:

  • Which agent is best suited for this task?
  • What context does that agent need to work well?
  • How many tokens can it spend (token economics)?
  • In what order should tasks execute when there are dependencies?
  • How are the results from multiple agents synthesized?

Everything else is done by the executors: Trinity for design, Neo for development, Morpheus for content, and so on with each of the 11 agents on the team.


Why isolated context is the system's superpower

Here's the technical part that makes the most difference in practice.

When Neo is building a React component, it doesn't need to know anything about the branding brief Trinity is processing. It doesn't need to know the status of Niobe's sales pipeline. It doesn't need to read Oracle's latest financial metrics.

Each agent receives exactly the context it needs for its task and nothing more. This has three direct consequences:

1. Higher quality

An agent with clean, specific context produces better outputs than a generalist agent with saturated context. It's the same principle that makes a specialist better than a generalist at complex technical tasks.

2. Lower cost

AI models charge per input and output token. An agent that loads all of the company's context on every call consumes 10x more tokens than one that loads only what it needs. With 11 active agents, that difference becomes hundreds of dollars per month.

3. Contained errors

If Neo makes a mistake in a component, that error doesn't contaminate Trinity's work or Morpheus's work. Each agent is an independent system. Failures are local, not systemic.

Isolated context isn't a limitation of the system. It's a design feature. An agent that knows everything isn't smarter — it's harder to control.


The communication protocol between agents

If agents have isolated context, how do they pass information between each other? That's the right question, and the answer is the communication protocol defined by the orchestrator.

When JARVIS delegates a task to Neo, it doesn't say "look at everything that happened in the project." It tells it exactly what it needs:

  • The specific objective of the task
  • Relevant context (only what's necessary)
  • Constraints (tech stack, patterns, conventions)
  • The expected output format

When Neo finishes, it returns the result to JARVIS, which synthesizes it and decides what happens next: pass it to Ghost for auditing? Pass it to Seraph for documentation? Publish directly to production?

This protocol has a name in the SDD (Spec-Driven Development) world that I use in my projects: the result contract. Each agent knows it has to return its result in a specific format that the orchestrator can process. Without that, the system doesn't scale.


The concrete advantages I noticed in production

After more than a year working with this system, the advantages I feel most in day-to-day work are these:

Real task parallelization

JARVIS can launch Trinity and Neo at the same time on the same project. Trinity works on visual assets while Neo builds frontend components. They don't bother each other. They don't contradict each other. At the end, JARVIS integrates both outputs.

Specialization that shows in quality

Neo's code is better than a generalist agent's because Neo only does code. Morpheus's copy is better because Morpheus only does content. The specialization that applies in human teams applies equally in agent teams.

Scalability without linear complexity

If tomorrow I need a new type of task (say, advanced data analysis), I add a new specialized agent without touching the other 11. The orchestrator learns to include it in relevant workflows. Complexity grows modularly, not exponentially.

Localized debugging

When something goes wrong, I know exactly where to look. If the design output isn't what I expected, it's a Trinity problem. If the code has a bug, it's a Neo problem. I don't have to guess in a monolithic system which of 50 responsibilities of the "single agent" failed.


When this pattern does NOT apply

Not everything needs an orchestrator. If you have a simple, single task, a direct agent is more efficient. The orchestrator overhead (the decision and coordination layer) adds latency and cost that isn't worth it for atomic tasks.

The orchestrator + executors pattern applies when:

  • The task has multiple steps with dependencies
  • Sub-tasks can be executed in parallel
  • Different types of expertise are needed on the same project
  • The work volume justifies the architectural investment

For a small one-week project, you probably don't need it. For a business that wants to scale operations without linearly scaling its human team, it's the way to go.


Want us to design the system for your business?

Every business has its own bottlenecks and its own workflows. The system I built for my agency isn't the same one I'd build for an e-commerce company, a fintech, or a law firm.

If you want to explore how to apply this pattern to your operation, let's start with a conversation. No smoke selling: if it makes sense for your case, we'll build it. If not, I'll tell you straight.

Message me at @MickaelDesigner on Instagram or through the form at mickaelvasquez.tech.