Most of the AI agent content out there follows the same script: we deployed an AI SDR, here are the results, wasn’t that amazing.

Nobody talks about what happens when you have multiple agents. When you have an AI SDR in Artisan, another one in Salesforce AgentForce, an inbound meetings booker in Qualified, a content review agent you vibe coded, and a dozen more — and they all need to talk to each other, share data, and not step on each other’s toes.

That’s where we are at SaaStr AI right now. Three humans, one dog, 20+ agents. And the hardest part isn’t picking the agents. It’s wiring them together.

Here’s what we’ve learned.

The Problem Nobody Warns You About

You start with one agent. Maybe an AI SDR. It works pretty well. You’re happy.

Then someone says “hey, we should put a chatbot on the website.” Now you have two agents. Fine, still manageable.

Then you vibe code an internal tool. Three agents. You add a call intelligence agent. Four. A content review agent. Five. A deal flow matcher for your VC program. Six.

Suddenly you look up and you have 20+ agents across a dozen platforms, and the question isn’t “does each agent work?” — they mostly do. The question is: how do they work together?

At SaaStr, we hit this wall hard. Each agent was individually useful. But without orchestration, they were just isolated tools doing isolated things. The compounding value — where one agent’s output becomes another agent’s input — only kicks in when you solve the wiring problem.

There Is No Magic Orchestration Layer (Yet)

I wish I could tell you there’s a beautiful platform that connects all your agents into one unified workflow. There isn’t. Not yet.

Here’s what our orchestration actually looks like: exports, imports, Google Sheets, Zapier, and webhooks. Lots of webhooks. I joke with Jason that I don’t think he ever imagined he’d care about webhooks this much, but here we are. Everything needs a webhook. That’s how data gets from one place to another.

Our Zapier usage tells the story. A year ago, we ran maybe a couple hundred actions per day. Now it’s over 1,000 daily — mostly shuttling contacts, context, and triggers between agents.

Is it elegant? No. Does it work? Yes. And honestly, for most teams getting started with multiple agents, Zapier or Make is going to be your orchestration layer whether you plan for it or not.

One thing I’ll say: people keep telling me about Make like it’s this revolutionary new thing. It’s basically Zapier built in the AI era, which gives it a bit of a glow-up. But if you’re already in Zapier, you can do a lot of dangerous things with a very simple interface. Don’t overthink the tooling. Pick one and commit.

The Routing Problem: Which Agent Gets Which Lead?

This is the core intellectual challenge of running multiple agents. When a new lead comes in — or when you’re doing outbound — which agent handles it?

Our answer: route by data location and context level.

If the contact is already in Salesforce → AgentForce handles it. The data is already there. Their history, their past interactions, what they’ve bought before. Why would I move that data somewhere else? AgentForce is built to work with Salesforce records, so let it.

If the contact is NOT in Salesforce → Artisan handles it. Website visitors, cold leads, people we’ve identified through intent signals but haven’t engaged with yet. Artisan is better at low-context outreach — it’ll pull their LinkedIn, see what they’re posting about, and tie the outreach back to something relevant. That’s a different skill than “follow up on this Salesforce opportunity.”

If someone hits the event website → Qualified (Amelia AI) handles it. Answers logistics questions, gives promo codes, books meetings, and follows up if they don’t convert.

The mental model is simple: think about where the lead lives and how much context you have on them. High context, in your CRM? Use the CRM-native agent. Low context, top of funnel? Use the agent that’s good at research and cold outreach. On your website right now with buying intent? Use the agent that can engage in real time.

There’s no automated way to do this routing yet. It’s me, manually segmenting lists and deciding which agent gets which cohort. But having the mental model makes the manual work manageable.

A Real Workflow: From Form Fill to Personalized Presentation in Seconds

Let me walk through one actual flow so you can see how the agents chain together.

  1. Someone fills out a form on SaaStr.com — maybe downloading a prospectus or requesting sponsorship info
  2. Webhook fires — if they don’t book a meeting through a different agent, this webhook catches the fall-through
  3. Google Sheets backup — I push everything to Sheets as a backup because I’m Type A and I don’t trust any single system
  4. Salesforce contact creation — the form data creates or updates a contact record
  5. Campaign assignment — the contact gets added to a Salesforce campaign, which automatically triggers an AgentForce workflow
  6. AgentForce emails — they enter a nurture sequence tailored to what they downloaded
  7. Clay enrichment — simultaneously, Clay looks them up, pulls social data, company info, recent activity
  8. Slack notification — I get a summary of everything the agents just learned, so I have visibility
  9. Gamma presentation — if they’re a potential sponsor, Gamma auto-generates a personalized deck using their logo, brand colors (pulled from their website), and context from Salesforce and Clay
  10. Gmail draft — the presentation lands as a draft in the assigned rep’s inbox. They can send it as-is or customize first

From form fill to personalized presentation sitting in a rep’s inbox: seconds, not days. And the rep still has full control — they choose whether to send, edit, or hold.

Before agents, this was manual work spread across multiple people who needed meetings to coordinate, Slack threads to align on, and hours of context-gathering. Now the human just reviews and clicks send.

The Compounding Effect of Connected Agents

Here’s what most people miss about multi-agent setups: the value isn’t additive, it’s compounding.

Take our Momentum integration. When our AE David finishes a sales call, Momentum pushes a summary to Slack and auto-creates any new contacts in Salesforce. Seems simple.

But because those contacts now exist in Salesforce, our other agents can pick them up. If the deal stalls, AgentForce can run a re-engagement sequence. If the contact churns from our event, Artisan can add them to a win-back campaign. If they visit the website again, Qualified recognizes them and has context.

Without Momentum creating those contacts, none of the downstream agents have anything to work with. No contacts, no context. The whole chain breaks.

This is why I think about agent orchestration as plumbing, not strategy. The strategic decisions are which agents to use and what to have them do. The orchestration is just making sure data flows from point A to point B so the next agent in the chain can do its job.

How I Actually Keep Track of All This

Honestly, I don’t have a perfect system. But here’s what works:

Slack is the nervous system. Almost every agent pushes notifications to Slack — new leads, call summaries, enrichment results, agent actions. I can scan Slack and get a pulse on what all 20+ agents are doing without logging into 12 different dashboards.

Salesforce is the source of truth. Every agent, whether third-party or vibe-coded, eventually pushes data back to Salesforce. Either natively or through Zapier. If it’s not in Salesforce, it doesn’t exist in our reporting.

Google Sheets is the safety net. I back up everything to Sheets. Redundant? Sure. But when you’re running this many automated workflows, you want a place where you can quickly eyeball data and catch anything weird.

I read the chat logs. When we first deployed Amelia AI on Qualified, I tried to read every conversation in real time. That didn’t scale. Now I review highlighted conversations at the end of each day — looking for patterns, questions the agent struggled with, and signals about what prospects actually care about.

The 90/10 Rule: When to Buy an Agent vs. Build One

We follow a simple framework:

90% of the time: buy it. If a product exists that does what you need, has a clear use case, and connects to your stack — just buy it. Momentum is the perfect example. We weren’t going to vibe-code our own RevOps agent. Momentum already does call recording, summaries, auto-contact creation, and Salesforce sync. The team helped us get set up. Done.

10% of the time: build it. When the use case is so specific to your business that no vendor would build it, that’s when you open Replit.

Our content review agent is a build example. No off-the-shelf product evaluates SaaStr speaking session submissions against our specific criteria, our historical session quality data, and our slot constraints. So we built it, fed it examples of great sessions and terrible sessions, and now it gives applicants real-time feedback and acceptance probability.

The sponsor portal I’m building now is another one. No product handles SaaStr’s exact mix of lead scanner access, badge registration, package details, and custom sponsor onboarding. So we vibe code it.

My workflow for builds: start in Claude (Opus for complex specs) to write a detailed product spec → paste into Replit → iterate in design mode → flip live when it’s ready. Start to functional prototype can be an hour or two.

What I’d Actually Recommend

You don’t need 20 agents. Most teams should start with two or three and get the wiring right between them before adding more.

Here’s the starting stack I’d suggest:

Agent 1: AI SDR for outbound. Pick one. Artisan, Salesforce AgentForce, or whoever fits your stack. Start with your warmest leads — existing customers who could expand, free trial users who didn’t convert, competitor customers you can identify. Don’t start with pure cold outbound.

Agent 2: Inbound chatbot/meetings booker. Put something on your website that can answer questions and book meetings 24/7. The lift here is immediate and measurable.

Agent 3: Call intelligence. Something like Momentum that records calls, summarizes them, and pushes context to your CRM and Slack. This is the connective tissue that makes everything else smarter.

Then wire them together with Zapier or Make. Agent 3 creates contacts → Agent 1 follows up with them → Agent 2 catches them when they come back to the website. That’s your basic loop.

Once that loop is working and you can measure the impact, then start adding agents for specific gaps. Content, enrichment, presentations, whatever your business needs.

The orchestration will always be a bit messy. That’s fine. The alternative is hiring five more humans to do the same work, and they’ll need even more coordination.

Three humans. One dog. Twenty-plus agents. Over 1,000 Zapier actions per day. It’s not pretty, but it’s working — and it’s working better than the 10-person team we had a year ago.

The agents don’t need a perfect orchestration layer. They just need the right data in the right place at the right time. Get the plumbing right and everything else follows.

Related Posts

Pin It on Pinterest

Share This