Blog

What a Lead Nurture Agent Actually Does

An AI lead nurture agent automates founder follow-up with scheduled emails, state files, and git commits. When it works, when it doesn't, and what the output looks like.

agent-patternsmethodology
Vintage typewriter with worn books on a dark wooden surface against a black background.
Photo by Sophie Symons on Unsplash

An AI lead nurture agent is a scheduled task that reads your lead list, determines which follow-up email each person should receive based on timing and stage, sends it through a transactional email API, and logs every decision to a file in your git repository. Armada Works runs this exact system against its own pipeline: a Claude Code scheduled task handles the full follow-up window without human involvement, and every send is a committed file you can review in a diff.

This post covers what the agent does, how it compares to traditional drip tools, when it makes sense to build one, and when it does not. If you want the step-by-step build guide, read How to Build a Lead Nurture Agent with Claude Code.

What a Lead Nurture Agent Does

A lead nurture agent runs on a schedule (daily, or whatever cadence fits your pipeline) and executes the same loop every time:

  1. Read the state file to see which leads exist and what stage each is in.
  2. Check for new leads from your source (a database query, CSV export, or webhook payload).
  3. For each lead, calculate whether the next email is due based on entry date and current stage.
  4. Send the email via a shell script that calls your transactional email API.
  5. Update the state file with the new stage and timestamp.
  6. Commit everything to git.

The agent makes the timing and targeting decisions. A separate script handles the actual send. The agent never sees the API key, and the script never makes decisions. That separation is the entire security model.

Robert Cowherd, founder of Armada Works, describes the practical effect: "Every email the agent sends shows up as a git commit. If it sends the wrong email to the wrong lead, you revert the commit, fix the prompt, and re-run. Nothing breaks permanently because everything is in version control."

How It Differs From a Drip Campaign Tool

Traditional drip campaign tools (HubSpot, Mailchimp, ActiveCampaign) and a code-based nurture agent solve the same core problem: getting the right follow-up email to the right lead at the right time. They solve it in fundamentally different ways.

Feature Drip Campaign Tool Lead Nurture Agent
Where it runs Vendor's infrastructure Your git repository
Decision logic Visual workflow builder Markdown prompt file
Audit trail Vendor dashboard Git commit history
Revert a bad send Delete the automation, hope it stops git revert the commit
Customization Conditional branches in the builder Edit the prompt, commit, done
Vendor lock-in Yes (data lives in their system) No (state file is markdown in your repo)
Judgment calls Rule-based only Agent can skip a send if a lead just booked a call

The drip tool is easier to set up. You drag boxes in a visual builder, write your emails, and click publish. That simplicity is genuine.

The agent is harder to set up (a few hours instead of a few clicks) but gives you something the visual builder cannot: every decision is a reviewable, revertable file. If your team already works in git, the agent's output looks like every other commit in your codebase.

When a Lead Nurture Agent Makes Sense

A nurture agent fits when three conditions are true at the same time:

  • You have leads coming in. There is a form, a lead magnet download, a discovery call booking, or some other mechanism generating contacts. Without inbound leads, the agent runs daily and does nothing.

  • Your follow-up is inconsistent. You send a welcome email on Monday, then a production issue hits on Tuesday, and the Day 3 follow-up goes out on Day 9. Or never. The problem is not that you don't know what to send. The problem is that other work takes priority.

  • Your team is comfortable in a codebase. The agent's prompt file, state file, and email templates are all markdown files in a git repository. If your team reads diffs, this feels natural. If your team works primarily in no-code tools, a visual drip builder is a better fit.

If all three are true, the agent replaces the most fragile part of your pipeline: the founder's memory. It sends the right email at the right time regardless of what else is happening that day.

When It Does Not: The Cold-Start Problem

Here is an honest admission. Armada Works built this exact system and it has been idle for 82 consecutive days.

The reason is simple: no new leads. Armada's guide-download form captured four leads in its first week (all test submissions from the founder). The email marketing agent sent two emails to each, on schedule, with correct timing. Then the pipeline went quiet. No paid ads driving traffic (paused after spending $255 and seeing zero conversions). No organic search traffic reaching the guide page. No social referrals.

The agent works. It sends the right email at the right time. But an agent cannot nurture leads that do not exist.

This is the cold-start problem, and it applies to every automation tool, not just agents. A HubSpot drip campaign with no contacts in the list is equally idle. The difference is cost: the drip tool charges a monthly subscription whether or not you have leads. The agent costs nothing when it has nothing to do. The Claude Code scheduled task runs, reads an empty lead list, writes a brief noting zero activity, and exits.

Build the nurture agent after you have a working lead source, not before. Nail the lead magnet, the landing page, and one distribution channel first. Then automate the follow-up.

What the Output Looks Like in Practice

A running nurture agent produces three artifacts every session:

The state file tracks each lead's current stage and timing:

## Active Leads

| Lead | Email | Entered | Stage | Last Send | Next Send Due |
|------|-------|---------|-------|-----------|---------------|
| Jane Doe | jane@example.com | 2026-07-20 | welcome_sent | 2026-07-21 | 2026-07-23 |
| Alex Park | alex@example.com | 2026-07-24 | new | - | 2026-07-24 |

The send log is an append-only record of every email dispatched:

| Timestamp | Lead | Email | Status | Resend ID |
|-----------|------|-------|--------|-----------|
| 2026-07-21 09:02 | jane@example.com | email-1-welcome | sent | re_abc123 |

The daily brief summarizes what happened:

## Headline
Sent 1 welcome email. 2 leads active, 0 completed.

## Sends Today
- Jane Doe: email-1-welcome (Day 2, on schedule)

## Queue
- Alex Park: new, welcome email due today
- Jane Doe: welcome_sent, Day 3 email due 2026-07-23

All three files are committed to git after every run. The founder (or the CMO agent reading all daily briefs) sees exactly what happened without logging into a vendor dashboard.

Building One vs. Running One

Building a basic nurture agent takes two to four hours. The architecture is three files (a prompt, a state file, and a send script) plus an email API. The step-by-step tutorial walks through each component.

The distinction between a basic agent and a production-grade one is in the prompt file. A basic prompt handles the happy path: check timing, send email, update state. A production prompt adds rate limiting (never more than one email per lead per day), bounce handling (move hard-bounced leads to a separate list), timezone-aware send windows (do not send at 3 AM in the recipient's timezone), and CAN-SPAM compliance (unsubscribe link in every email, honor opt-outs immediately).

The architecture stays identical. The prompt just gets more specific about edge cases. Robert Cowherd describes the calibration process: "The first prompt was 40 lines. By the end of the first week it was 180. Every line came from a real mistake the agent made in a real run."

Frequently Asked Questions

How is an AI lead nurture agent different from Mailchimp or HubSpot automation?

Both solve the same problem: sending the right follow-up email at the right time. A drip tool runs on the vendor's infrastructure with a visual builder. A lead nurture agent runs in your git repository, with decisions logged as commits. The agent can also make judgment calls that rule-based tools cannot, like skipping a send if the lead just booked a discovery call. For a deeper comparison, see Marketing Agents vs. Marketing Automation.

Do I need leads before building a nurture agent?

Yes. A nurture agent automates follow-up for leads you already have. If your pipeline has no inbound leads, the agent runs daily and does nothing. Build the lead source first (landing page, lead magnet, one distribution channel), then automate the follow-up. Armada Works learned this firsthand: the nurture agent works correctly but has been idle for months because no new leads are reaching the pipeline.

What email provider works best with a nurture agent?

Any transactional email API works. The agent calls a shell script that handles the send; it never interacts with the API directly. Resend is popular for new projects. Postmark is reliable for transactional email. SendGrid and Amazon SES handle higher volumes. Pick whichever your team already uses.

Can a nurture agent handle unsubscribes and bounces?

Yes. The state file includes an Unsubscribed section, and the agent's prompt includes a hard constraint to never send to anyone on that list. For bounces, the agent checks delivery status via the email API and moves hard-bounced addresses to a separate section. For production use, include an unsubscribe link in every email template that routes to your application's unsubscribe endpoint.

How long does it take to build one?

A basic three-email nurture agent takes two to four hours: one hour for the state file and email templates, one to two hours for the prompt file, and thirty minutes for the send script. Expect another three to five hours in the first week iterating on the prompt based on real run output. The build tutorial walks through each step.

What happens when a nurture agent sends the wrong email?

The send shows up as a git commit with the state file changes. You revert the commit, fix the prompt (the decision logic that caused the wrong send), and re-run. Nothing breaks permanently because everything is in version control. This is one of the core advantages over visual drip builders, where a misconfigured workflow might send to your entire list before you notice.


If you want to talk through whether a nurture agent fits your pipeline, or you want to see how one works inside a coordinated fleet, book a free 30-minute discovery call. We will walk through your current follow-up process and tell you whether an agent is the right fit.

Written by
Robert Cowherd
Book a call