Turning Hermes + Slack Into 7 Figure Lead Lists

Building a lead list usually means opening a database, setting filters, exporting, and cleaning.
We run it from Slack.
Someone types the criteria into a channel, an agent builds the list, and the finished file comes back in the same thread.
Here is how that works:
What the agent setup is:

Hermes is our agent for list building AND enrichment.
It sits behind a Slack channel, so the interface is a message and not a dashboard.
What it does on a request:
- Reads the criteria from the message
- Sources companies across the databases and scraped sources
- Qualifies each one against the ICP definition
- Enriches contacts through the waterfall
- Verifies the emails
- Returns the file
The whole thing runs without anyone opening a tool.
The agent handles the steps that used to sit across 5 interfaces.
Sourcing in one tab, qualification in a spreadsheet, enrichment in a table, verification somewhere else, then manual cleanup before anything is usable.
The reason to build it this way is SPEED of iteration.
A list request that used to take an afternoon of tool switching becomes a message and a wait.
The compounding effect is on the number of lists you build.
When a list costs an afternoon, you build 1 and force the campaign to work with it.
When it costs a message, you build 5 and run them against each other.
Why Slack is the interface:
Slack is where the team already is, which removes the adoption problem entirely.
What it gives you:
- Anyone on the team can request a list without learning the stack
- Every request and output stays in a thread, so the history is searchable
- Replies and revisions happen in the same place as the original request
- The output routes to whoever needs it without a handoff
- Requests happen from a phone, so a list gets triggered from anywhere
The threading matters a lot too.
When a list comes back wrong, the correction happens in the thread against the original criteria,
so the agent has the FULL CONTEXT of what was asked and what missed.
That loop tightens the definition faster than a fresh request each time.
It also makes the process transferable.
A new team member reads the last 20 threads and learns how lists get defined here, without anyone writing documentation for it.
Set the channel up properly from the start.
- 1 channel for list requests, separate from campaign chatter
- A pinned message holding the current ICP definitions
- A naming convention on requests, so the searchable history stays useful
- Output files posted in-thread rather than DM'd
The pinned definitions do more work than they look like they should,
since most bad lists come from someone requesting against a definition that changed 2 months ago.
What the agent needs to be given:

An agent producing a usable list needs the same inputs a person would.
- The ICP definition, meaning revenue floor, headcount band, industry, and geography
- The disqualifiers, stated explicitly
- The buying signals that indicate timing
- The titles that own the problem you solve
- The output format you want back
The disqualifiers are worth writing carefully.
An agent will happily return companies that technically match the filters and would never buy, so the exclusions do as much work as the inclusions.
Then give it the reasoning requirement.
Every record comes back with a keep or drop verdict and a written reason attached.
Read the drops in bulk.
When a few thousand get cut for the same cause, the ICP definition needs adjusting, and you found that before spending a send.
Give it examples alongside the criteria.
5 companies you would take and five you would decline teaches an agent more than a paragraph of definition,
since the edge cases are where the judgment lives.
Then constrain the sourcing.
Tell it which databases and scraped sources to use for which segment, so it pulls from the right place rather than defaulting to whatever is easiest.
-
Ocean(.)io for funded tech
-
Prospeo for breadth across an industry
-
Scraped directories + association lists for the segments they miss.
Specify the output schema too.
Company, domain, contact name, title, verified email, the signal that surfaced them with a date, and the qualification verdict WITH its reason.
The signal column is what your copy opens on,
so an output missing it produces a list you cannot write against.
Running it at volume:
The output only matters if it feeds the sending machine cleanly.
How the pipeline connects:
- The agent returns the qualified, enriched, verified file
- The file loads into the sequencer
- Campaign performance routes back into Slack
- Reply rate by segment tells you which list definitions to run again
- The winning definitions get saved as a template for the next pull
Then run the request on a schedule rather than on demand.
New companies appear, funding rounds close, and roles get posted every week,
so a standing weekly pull keeps the pipeline fed without anyone asking.
Watch the cost per lead as you scale it.
The model reasoning is cheap per record and multiplies FAST,
so cap the job with a budget and track the cost per qualified lead rather than per row processed.
2 guardrails to build in from the start:
- A budget cap per job, so a loop cannot run away overnight
- Deduplication against everyone already contacted, since an agent will happily rebuild a list you already burned
Then verify everything before it sends.
The agent finding an email and the email being deliverable are different claims,
and the verification step is what stops a fast pipeline from becoming a fast way to burn domains.
A list of 5,000 qualified records beats 50,000 loose ones, and the agent makes the qualified version cheap enough to build weekly.
What this changes at the operation level is WHO can build a list.
The bottleneck used to be whoever knew the stack, which meant list building queued behind one person's calendar.
Now a strategist requests a segment, gets it back the same day, and tests it that week.
The throughput on testing is where the 7 figure number actually comes from.
10 list definitions tested in a month tells you which segment your market lives in.
- Christian
If you're running GTM/outbound yourself, we teach all of this in the community.
50+ modules, 3 live calls a week, and direct access to the operators running this at scale.
**Join up @ gtmelites.io**
OR, if you want an in-house GTM team running your lists, infrastructure, sending, replies, and your entire market contacted every 90 days,
**DM me "COLD" or book a call @ cal.link/chris-article**
30,000+ meetings booked and $70M in pipeline across 100+ B2B companies.
Related articles

What Hermes Agent Can Do for You (And Why It Matters)
Hermes Agent is now in the Cloud!

Set up 10 female accounts: print $14,000 in 28 days (b2b)
a message from a female account gets opened before the brain even decides to open it in cold outreach

how to automate lead generation (FULL GUIDE)
by the end of this guide you'll know how to generate leads on autopilot for anything. a digital product you sell online, a business generating leads for itself. or someone with no business at all, ge…