·Brandon Charleson

The 2026 Outbound Framework: How Coding Agents Compressed 8 Hours Into 15 Minutes

How we use Claude Code, Python/Polars, and instantly-cli to filter 281K contacts down to 2,000 hyper-personalized emails — generated by 10 parallel agents in one coding harness, on a single Claude Code subscription with zero API spend.

outboundai-agentsclaude-codesales-engineering

The 2026 Outbound Framework

If you're running your 2026 outbound motions via CSV lists and logging into a front-end interface to write sequence copy by hand, you might want to re-think how you operate.

The interface-driven, CSV-shuffling, copy-by-hand era of outbound is over. It just hasn't been formally announced.

Most playbooks in 2026 still read like 2022 playbooks with "AI" sprinkled on top. Buy a list. Push it to a sequencer GUI. Variable-spin the first line. Hope for a 1.5% reply rate. Burn the domain in six months. Buy more domains. Repeat.

Here's how we're doing it with Top of Funnel — internally and for our clients. For just one of our clients last week, we mapped out their total addressable market and sourced 281,266 contacts. Here's exactly what happened next, with receipts.

The 2026 Outbound Framework — 281,266 → 2,000 in 15 minutes, $0 API spend

The framework in one sentence

Python + Polars rips through large datasets to score and segment → leadmagic-cli verifies deliverability → 10 parallel Claude Code agents draft hyper-personalized messages from a shared spec → instantly-cli pushes campaigns from inside the same coding harness → final QA happens in the Instantly UI.

That's the whole loop. One terminal. No SaaS-glue, no Zapier daisy chain, no copy-pasting between tabs.

Why this works in 2026 and didn't in 2024

Three things changed:

  1. Flagship models got cheap enough to use as the default. Sonnet 4.6 is no longer a luxury — it's the floor. Personalization at scale stopped being a sequencing problem and became a compute problem.
  2. Coding agents got good enough to be the orchestrator. Claude Code, Cursor, Codex — these aren't IDE auto-complete anymore. They're shell-aware, file-aware, multi-step planners. They can scrape, score, draft, push, and verify in one continuous session.
  3. The CLI ecosystem caught up. instantly-cli, clay APIs, leadmagic validators — every sequencer and enrichment tool now ships a real CLI. Which means agents can drive them directly without a human in the loop for the mechanical parts.

The result is a 100x leverage compression on the parts of outbound that used to require operators, VAs, or "AI SDRs" that produced slop.

The actual run (281K → 2K, last week, one client)

Client gave us their ICP. We mapped the TAM and sourced 281,266 contacts from our standard intake pipeline. Here's what happened next:

StageResult
Sourced raw contacts281,266
Polars ICP filter → Tier 123,178 contacts
Clay + BuiltWith enrichment14,317 domains (93.5% returned tech)
Vendor audit9,414 hits on a target vendor — pivoted to vendor-agnostic copy
leadmagic-cli validation (2 waves)7,141 deliverable (54.2%)
Top 2,000 by ICP score, sliced10 batches of 200
10 parallel Sonnet agents6,000 emails (2,000 × 3-step sequence)
Quality gates passed0 banned phrases, 0 em-dashes, 0 dollar signs, 0 "20-minute" CTAs
Push via instantly-cli2,000 leads, 0 failures
Spend$0 API tokens. Entire run executed on a single Claude Code subscription. LeadMagic validation ~$11.
Wall time~15 minutes for what would have been an 8-hour single-stream job.

The five thousand remaining validated leads are queued for the next wave. Same pipeline, no architectural changes — the push script appends, so they slot into the same campaign without a new template setup.

The load-bearing piece: a shared spec

The thing that made 10 parallel agents stay on-brand without any inter-agent communication is one file: AGENT_INSTRUCTIONS.md.

It contains:

  • The ICP description and what not to assume about it
  • The voice, tone, and forbidden phrases ("20-minute call", "quick chat", "circle back", em-dashes, dollar amounts)
  • The 3-step sequence structure with the role of each touch
  • The variable schema (what each agent has access to per contact)
  • The output format (markdown frontmatter + body) so the push script can parse it

That file is the contract. Each agent reads it, gets its 200-row batch, writes its 600 emails to disk, and reports back. No agent talks to another agent. There's no orchestration layer. The shared spec is the orchestration.

This is the part most teams miss when they try to "parallelize with AI" and end up with 10 different voices and 600 broken emails. Without a load-bearing spec, parallelism is just chaos with extra steps.

The economics nobody is talking about

Here's the part that breaks people's brain:

We spent $0 on API tokens.

Not a dollar. The entire run — 10 parallel Sonnet 4.6 agents, generating 6,000 hyper-personalized emails, orchestrating Polars, Clay, LeadMagic, and instantly-cli — executed inside a single Claude Code subscription.

That changes the math on outbound.

The old assumption was: "personalization at scale = expensive API bills." So teams either (a) used cheap models and produced slop, or (b) used flagship models on a tiny sliver of their list. Either way, the unit economics didn't pencil.

When the orchestrator is the subscription, the marginal cost of generating one more email drops to effectively zero. The constraint stops being budget and starts being list quality — which is exactly where the constraint should be.

That's the actual unlock. Not the parallelism. Not the speed. The fact that the flagship model is now the floor, and the only thing you pay for is the deliverability infrastructure underneath it.

Why we don't care about reply rates anymore

Reply rate is a soft metric. The actual outcomes from a well-targeted, well-written email are:

  1. No reply. Fine. They're not in-market. Move on.
  2. Direct reply. "Interesting, send more." Great — book the call.
  3. Self-research. They don't reply. They go to your website. They watch your YouTube. They read your LinkedIn. If your digital presence is strong, they book a call directly on your calendar without ever replying.

Outcome 3 is invisible to a sequencer dashboard. It looks like a "no reply" in Instantly and a "new meeting" in Calendly with no traceable source. Most teams optimize away from outcome 3 because their metrics can't see it.

We optimize toward it. Which is why the email's job isn't to sell — it's to be interesting enough that a smart buyer wants to see what else we're doing.

The full stack

  • Data: Sourced raw contacts → Polars (filter/score) → Clay + BuiltWith (enrichment) → leadmagic-cli (deliverability validation)
  • Agents: Claude Code, running 10 parallel Sonnet 4.6 instances against a shared spec
  • Push: instantly-cli from inside the same Claude Code session
  • QA: Instantly UI for final human spot-check before unpausing the campaign
  • Cost: $0 in API tokens. The entire run — 10 parallel agents generating 6,000 emails — executed inside a single Claude Code subscription. leadmagic-cli validation was ~$11. That's it.

No Zapier. No Make. No "AI SDR" SaaS. No 14 SaaS subscriptions duct-taped together. One coding agent, one shared spec, one terminal.

What to take away

If you're running outbound in 2026 and you're still:

  • Paying a VA to do the work an agent can do in 15 minutes
  • Subscribing to an "AI SDR" tool that produces generic mail-merge slop
  • Optimizing for reply rate as if it's the leading indicator

You're playing the 2024 game. The compression is here. The agents are good enough. The CLIs exist. The only thing left is to assemble the loop and run it.

The framework is repeatable. The pipeline is the asset. The spec is the moat.


Want to see how we'd run this for your stack? Book a priority meeting.

Run this for your stack

Want us to map your TAM and ship the framework?

We run this exact pipeline for clients. Coding-agent-native outbound, $0 in API spend, deliverable in under a week.

Book a priority meeting →