Filling your pipeline without burning your days on it isn't a hack.
It's a system: AI agents and automations that work while you do your real job. Here's the complete method, and the technical layer that makes it hold up in production.
This is for you if:
This is NOT for you if you're looking for a magic button that sells for you. The agent puts your offer in front of the right people, at scale, but you still need an offer that holds up.

I run Kavrn. My job is engineering: I build AI agents and automations that bring clients to businesses that already have revenue, without growing their team. The method you're about to read is public, anyone can run it by hand. What I install is the version that holds up in production: a reliable engine, plugged into your tools, fed your company's context, that improves on its own and that you can put your name on. Here's what we set up, concretely:
30 min, friendly, no commitment
Before the tools, the frame. Four truths most people ignore, which is exactly why their prospecting plateaus.
Manual prospecting has a hard ceiling
24 hours in a day, and your brain doesn't scale. If your acquisition depends on your personal time, you don't have a system, you have an underpaid second job. An agent breaks that ceiling: same work, continuously, at night, on weekends, no drop in quality at the 200th message.
Signal beats data, always
A file of 10,000 cold contacts is worth less than 50 people who just expressed your problem publicly. Cold scores 1% reply. Fresh signal plays at 25-40%. You don't chase raw volume, you chase recent intent.
An agent amplifies, it doesn't save
AI puts your offer in front of the right people, at scale. If the offer is weak, it just accelerates your failure and burns your reputation faster. Offer and targeting first, agent second. A bad system running fast is still a bad system.
A system beats a sprint
40 qualified leads every morning, automatically, crush 400 leads scraped once then nothing. What compounds is regularity, and only a machine is truly regular. A motivated human lasts 8 days, a well-tuned agent lasts 8 months without flinching.
Every day, the agent runs this loop. That's what turns a lucky break into a steady flow.
You never start from a cold file. You start where your future clients are already raising their hand: a comment, a job change, a public complaint, a funding round, a hire that reveals a priority. The agent monitors these sources continuously and fires within the hour.
The agent extracts the data, cleans it, deduplicates and scores each contact against YOUR criteria. It keeps only the truly reachable decision-maker, not noise. The filtering, not the volume, is what turns a list into a pipeline.
For each person, the agent pulls the public context (their company, role, recent activity) AND crosses it with what your company already knows. That cross is what makes personalization convert, not a plain « I saw your post ».
Every message is written for ONE person, at the scale of hundreds. Then automatic multichannel follow-ups. Every reply is tagged and feeds the system back: what works rises, the rest is cut. And the loop runs again every morning, on its own.
The method above is public. What makes an agent actually book meetings instead of filling a spreadsheet is what's underneath. Here are the 6 parts, what they do, and where each one plays out (and breaks).
An acquisition agent doesn't chat, it acts: it calls tools (scrape, enrich, write to the CRM, send). A generic chat model improvises those calls and eventually botches them. Models trained for function-calling, like the Hermes family from Nous Research (fine-tuned Llama that emits its tool calls as structured tags), are built exactly for this: invoke the right tool, with the right arguments, reliably parsable. In plain terms, fewer malformed calls, fewer silent crashes mid-sequence. Bonus: they run open-weight, so you can self-host to control cost and keep your data with you.
The trap : Plugging a generic model in « because it's famous » onto 40 tool calls per lead. It impresses in a demo, it breaks in production the moment volume goes up.
A skill is a packaged competence the agent reloads on demand: « how to qualify a lead in construction », « the exact wording of my D+5 follow-up », « my 3 offer angles ». It's the format adopted by Claude Code (SKILL.md files), the open-source assistant OpenClaw (community skills) and the Hermes agent. The point: you don't re-prompt everything on each run, you compose stable, versioned blocks. Your agent becomes the keeper of YOUR process, not a generic one found on YouTube.
The trap : Without skills, every run starts from a giant copy-pasted prompt. Inconsistent, impossible to maintain, and nobody knows why it worked yesterday and not today.
« Hey, I saw your post » doesn't convert anymore, everyone does it. Real personalization comes from crossing the prospect's signal with what YOU know: your deals won on a similar profile, your product, your typical objections, your tone of voice. Technically, you index that knowledge (CRM, docs, past deals) in a vector database, and the agent retrieves it by semantic search (RAG) at writing time. The message no longer says « I saw your post », it says « here's precisely why what I do matches your situation ».
The trap : An agent with no memory of your company writes messages any competitor could send. That's exactly what plateaus at 1-2% reply.
To act, the agent has to read and write in your systems: CRM, calendar, inbox, Slack, docs. The standard taking over for this is MCP (Model Context Protocol): a clean, secure way to give an agent access to a tool, without coding a throwaway integration every time. Paired with an orchestrator (n8n and the like), it turns the isolated agent into a colleague plugged into your whole stack. On security: access limited to the strict minimum, and zero training of the model on your data.
The trap : Connecting each tool by hand with hardcoded API keys. It holds for two weeks, then a token expires, a format changes, and the whole chain falls over in silence.
The real lever is the loop. Every message produces data (reply, ignored, meeting), and that data must come back to feed the agent. The angles that get replies rise, the ones that struggle are cut. That's exactly the promise of self-improving agents like Hermes Agent, which creates skills from experience and refines them in use. Concretely: you tag replies, score variants, and re-inject the winners into the skills. Your system is better at month 3 than month 1, without you touching a thing.
The trap : Most setups send and forget. No feedback loop, the agent stagnates, and you steer your acquisition blind.
The hardest lesson of agent engineering: an LLM will happily produce something plausible but wrong (an email that sounds good but is off-target, a fake number « filled in » just to finish the task). The fix is to give it a way to verify: format validation, guardrails (no forbidden promise, no send if the contact isn't actually reachable), and evals, tests that measure output quality before sending. That's what separates an impressive demo from a system you put your name on.
The trap : Shipping without guardrails is letting a junior rep send 400 emails a day with no review. A single public slip can cost you dearly.
Check off as you go. Do it by hand once: that's how you understand what you'll automate next.
An acquisition system is seven connected building blocks. Here's what each does, and the tools to assemble them.
Role : Pull signals and data where they live: networks, directories, reviews, sites. Including API-less sources, via driven browsing and vision models.
Tools : Apify, Playwright, OpenClaw / browser-use, vision models
Role : Complete each lead with public context: company, role, size, news. The raw material for personalization.
Tools : Dropcontact, Clearbit, web search, targeted scraping
Role : Qualify, score, write the personalization. Ideally a model trained for function-calling (reliable tool use), not a plain chatbot that improvises.
Tools : Claude, GPT, function-calling models like Hermes (Nous)
Role : Index what your company knows (CRM, won deals, product, tone) so the agent personalizes with your material, not generics. This is the advantage no one can copy.
Tools : Vector database (RAG), embeddings, MCP
Role : Connect all the blocks into a workflow that runs on its own, with error handling and retries.
Tools : n8n (open-source, self-hostable), Make, custom code
Role : Deliver email + LinkedIn + SMS at the right pace, without burning your accounts or domain.
Tools : Instantly, Lemlist, La Growth Machine
Role : Store, score, follow up, measure. The operational memory of the system: without it, you start from scratch every week.
Tools : HubSpot, Pipedrive, Airtable, Notion
Here's how the blocks fit together in practice. Five automations that cover the essentials of an acquisition system that learns.
Goal : Catch fresh intent and open a conversation within the hour.
[Trigger: new signal] → [Enrichment] → [AI intent score] → [Personalized message] → [Guardrail] → [Send] → [CRM]
Goal : Sort 500 leads to only work the 50 worth it.
[Raw list] → [Cleanup + dedup] → [Enrichment] → [AI scoring against your criteria] → [Routing: hot / warm / dropped]
Goal : Follow up without harassing, and without thinking about it.
[No reply on D+2] → [Value email follow-up] → [D+5: LinkedIn touch] → [D+9: break-up message] → [Stop the moment they reply]
Goal : Turn a positive reply into a booked meeting, frictionless.
[Positive reply detected] → [Booking link] → [Create in CRM] → [Notify the team]
Goal : Make the agent better every week, with no input from you.
[Tagged replies] → [AI variant scoring] → [Pick the winning angles] → [Update the skills] → [Re-inject into the agent]
The core of an agent that doesn't read like a robot: research → scoring → writing → follow-up → guardrail. They're written like code: a clear role, inputs delimited by <<< >>> (so a scraped profile can't hijack the instruction), parsable JSON output wherever the workflow has to decide, and an anti-invention rule. Copy, replace the [brackets].
Turns a public profile into sourced opening angles, ready to drop into prompt #3.
You are a sales analyst. Your ONLY source is the profile delimited below. Invent nothing: if a fact isn't there, write "unknown".
Profile:
<<<
[URL or raw info]
>>>
Reason internally, then return ONLY this JSON (no text around it):
{
"business_challenge": "their likely biggest challenge, inferred from a specific fact in the profile",
"current_work": "one concrete thing they're working on right now",
"hook": "a specific, recent detail to open on, backed by a quote or fact",
"freshness": "age of the most recent signal (e.g. '3 days', 'unknown')"
}
Each field: 15 words max, zero flattery, zero generality. Any field not sourceable from the profile = "unknown".Have AI sort 500 leads against YOUR criteria, with output that drives the workflow's routing.
You are a senior SDR. You score this lead to decide whether it deserves a personalized message.
Lead and context:
<<<
[enriched data]
>>>
My ideal client:
<<<
[criteria: industry, size, role, intent signal]
>>>
Proceed in this order:
1. Check the lead against each criterion, one by one (short reasoning).
2. Only then derive the score.
Return ONLY this JSON:
{
"reasoning": "1 sentence: what matches, what's missing",
"score": 0,
"decision": "drop | warm | hot",
"angle": "if score >= 70: a personalized opening angle; otherwise null"
}
Scale: < 40 = "drop", 40-69 = "warm", >= 70 = "hot". When in doubt or info is missing, score lower (better to miss a warm one than message an off-target lead).Generate a first message that doesn't read like mass mail.
You write like me to a peer, not like a sales rep. One prospecting message. Recipient: [First name], who just [intent signal]. What I know (JSON from prompt #1): [output of prompt #1] What my company knows: [similar case study, relevant offer angle] Rules: - 30 words max, the tone of texting a friend - Reference ONE specific, TRUE detail (never invented; if "unknown" in the JSON, don't invent, open on the intent signal) - Ask ONE simple, open question - Zero sales jargon, zero exclamation marks, zero link, do NOT present my offer Calibrate on these examples: ✓ GOOD: « Hey Marc, saw your post on dev hiring delays, what's the biggest thing slowing you down right now? » ✗ BAD: « Hello, I hope you're doing well! I'm reaching out because our solution… » Return only the message, nothing else.
A follow-up that adds value instead of begging for a reply.
You write a follow-up inside an already-open conversation, in my tone. Their reply: <<< [their reply] >>> Lead context: [data] Ammo available: [similar case study with numbers, resource, observation] Write ONE follow-up of 25 words max that: - bounces off a specific word in THEIR reply - brings something NEW (case study with numbers, observation, resource) — never a rehash of my previous message - suggests a tiny next step answerable with yes/no (not a commitment) - stays conversational; banned: « did you see my message? », « just bumping this », any reply-begging Return only the follow-up.
The workflow's gate: a boolean 'send' field the automation reads to block or let through.
You are the guardrail that validates a message BEFORE sending. You don't rewrite, you judge.
Message:
<<<
[message]
>>>
Lead context:
<<<
[data]
>>>
Check each point against the data, then return ONLY this JSON:
{
"perso_sourced": false, // is the personalization detail literally in the data? (nothing invented)
"format_ok": false, // < 30 words, no pitch, no link
"promise_safe": false, // no promise / claim I can't back up
"contact_reachable": false,// is the channel actually valid for this contact?
"send": false, // true ONLY if all 4 fields above are true
"reason": "if send=false: the failing point(s) + why, else ''"
}You steer a system with 4-5 numbers, not 50. Here are the ones that tell you whether your machine is running or running empty.
Reply rate
The real judge of your personalization and targeting. Under 2%, it's cold, you're pitching too much or aiming wrong. 25-40%, you're joining conversations.
Cost per meeting
What a qualified meeting costs you, all in (tools, data, time). That's what to drive down, not the count of raw leads.
Meeting / reply rate
How many replies turn into meetings. If it's low, it's your offer or targeting that's off, not your volume.
Signal freshness
Time between the signal and your message. Under 1h, you outperform. Beyond 48h, you're cold again.
Regularity
Qualified leads produced per working day. A system is a stable number every morning, not spikes followed by nothing.
You now have the full method, technical layer included. Be honest for two minutes: here are the 6 walls people hit when they try to do it alone.
Volume
Sorting 30 leads by hand is one evening. Producing hundreds, qualified, every day, is physically impossible without an agent. The method is the same, scale is what changes everything.
Regularity
Doing it once is easy. Doing it every morning, without thinking, while you run your real business, that's where 95% of people quit after 8 days.
Personalization wired to your business
A human doesn't write 400 truly unique messages a day. And wiring the agent to your CRM, deals and tone (the RAG) so it personalizes with YOUR material is what separates ignored mass mail from conversations that reply.
Clean extraction
Pulling usable data from API-less sources, without breaking everything and without getting blocked, is exactly the wall people hit alone. It's engineering, not no-code.
Deliverability
Sending at volume without burning your domain, number or account: SPF, DKIM, DMARC, warming, sending limits. It's a craft of its own. Done wrong, you torch yourself in a week and start over.
Maintenance & learning
Sources change, agents break, models evolve, and without a feedback loop your system stagnates. An acquisition system needs monitoring, upkeep and improvement. Otherwise it dies silently.
What separates a pipeline that runs from a lead file asleep in a spreadsheet.
One message for one person, at scale
Mass personalization isn't an oxymoron when an agent fed your company's context does the work. It's the only way to hit 25-40% reply rates instead of 1-2%.
Conversation before the sale
The first message sells nothing. It opens. Ask a question, get a reply, then unfold. 23 words beat a 300-word wall.
Start by hand, automate later
You can't automate a process you don't master, nor encode into a skill a know-how you haven't tested. Do 20 leads by hand, learn what works, then hand it to the agent.
Deliverability before volume
1,000 messages in spam = 0 clients. Warm up your channels, respect limits, take care of your domains. Volume is useless if nothing lands.
Measure meetings, not leads
A screenshot of hundreds of leads is pretty. The only number that pays your bills is the count of qualified meetings. Optimize for the meeting.
The agent prospects, the human closes
AI brings in, qualifies and personalizes at scale. High-value closing and client relationships stay human. The right system frees your time for that.
We set up your acquisition agent end to end: sources, qualification, enrichment, personalization wired to your company's context, outreach, follow-ups, learning loop and guardrails. You get qualified meetings, you keep your time for your real job.

We look at your market together, identify the best lead source, and tell you exactly what we'd put in place. Even if you don't work with us.