- Home
- Case studies
- Eight AI assistants a creative agency talks to in Slack
Eight AI assistants a creative agency talks to in Slack
Crescendo Creative
We came to Jesús with a vague idea about automating the parts of the agency that don't need a human touching them. He built us Forge: eight assistants we talk to in Slack. Someone asks for a campaign plan or a round of concepts, and it gets handled. I don't think about it anymore, which is about the best thing I can say about a piece of software.

Scott Turner
Challenge
The agency’s workflows needed a dispatcher, and the dispatcher was a person. Requests arrived as high-level asks: we need a campaign plan for this client, give us a round of concepts, find out what is being said about this brand. Each one decomposed into a different set of sub-tasks, in a different order, depending on what was being asked.
That is the part conventional automation handles badly. A linear workflow can be built for any one of those requests, and the agency had built some. What it cannot do is decide which of them to run. Somebody senior had to read the ask, break it down, and hand the pieces out, which meant the work was capped by that person’s attention and stopped entirely when they were busy.
Approach
We moved the routing decision inside the system instead of leaving it in front of it.
The design is a master agent with a network of specialists underneath it. The master agent parses the incoming request and decides which specialists it needs and in what order. Each specialist stays narrow, because a narrow agent with one job is far easier to make reliable than a general one, and far easier to correct when it is wrong.
Two decisions shaped the rest. The interface is Slack, because that is where the agency already worked and an automation that demands a new place to go usually gets one week of compliance. And model selection happens per step rather than once for the platform, since a step that classifies a message and a step that drafts a campaign plan do not want the same tradeoff between cost, latency and reasoning quality.
Solution
One platform, built in layers.
A master agent that reads the request. It takes the high-level ask from Slack, works out what the request actually decomposes into, and delegates those sub-tasks across the network. Nothing about a request has to be pre-registered as a shape the system knows.
Eight specialized assistants. They cover business planning, social media data mining and creative asset generation. Each one owns a slice of the agency’s work and is invoked by the master agent rather than addressed directly, though a person can still go straight to one when they know exactly what they want.
More than ten n8n workflows, with nested sub-workflow orchestration. A workflow can call another workflow instead of restating its steps. That is what keeps the agent network maintainable at this size: the shared pieces exist once, and an agent that needs one calls it.
Model selection through OpenRouter. Each step routes to the model that suits it, balancing cost, latency and reasoning quality, and switching a step to a different model is a configuration change.
Image and video generation inside the workflow. Midjourney and Kling are driven from the same pipelines, so an ask that ends in visual assets produces them without leaving the conversation it started in.
Results
The agency stopped routing work by hand. Eight assistants run behind one Slack conversation, on more than ten orchestrated workflows, and a request that used to need a person to decompose it is decomposed by the system.
Now the honest part, because it matters more than the architecture. This engagement was never instrumented. Nobody measured how long these requests took before the platform existed, so there is no before-and-after figure to report and we will not invent one. The two numbers above are counts of what was built, not claims about what it saved.
That is a real limitation of this case study and not a stylistic one. Every other engagement on this site leads with a figure that was recorded at the start and measured again at the end. This one should be read for the architecture, and for whether that architecture matches a problem you recognize, rather than for a result it cannot evidence.
What made it hard
Decomposition is the whole risk. A master agent that splits a request the wrong way does not fail loudly. It produces a plausible answer to a question nobody asked, and the person who receives it has to notice that it is subtly the wrong deliverable. Getting the master agent to decompose the way an experienced person would, and to stop rather than guess when the ask was genuinely ambiguous, took more iteration than any individual specialist did.
Nested orchestration made errors harder to place. When a workflow calls a workflow that calls a workflow, a failure three levels down arrives at the top with its context stripped unless the layers are built to carry it. That has to be designed in, not added after the first confusing failure.
The asset generation is the part to be candid about. Midjourney and Kling had no supported programmatic interface for what was needed, so the integration goes through unofficial API workarounds. It works, and it is doing real work, but it is not a stable contract: a change on the vendor’s side can break it with no notice and no deprecation window. The client chose that tradeoff knowingly, and anyone weighing the same one should weigh it as a maintenance cost rather than a one-time build.
How a request becomes work
Slack request
A high-level ask, in the place the team already works
Master agent
Works out what the request decomposes into, and which specialists it needs in what order
Specialist network
Eight assistants covering business planning, social data mining and creative asset generation
Nested sub-workflows
Shared steps exist once and are called by whichever agent needs them
Model selection happens per step rather than once for the platform, so a classification step and a drafting step can take different tradeoffs between cost, latency and reasoning quality.
Next case study
2 hours
runtime of a critical data process before the work
From 2 hours to 9 minutes: re-engineering an enterprise data process
a multi-billion dollar enterprise client
Read the case study
Your process is probably on this list in some form
The reading that costs a person a day a week, the report nobody wants to compile, the questions that interrupt the same manager. Tell us which one is yours and we will tell you whether it is worth automating.