Daily follow-up agent: checks for replies, drafts the nudge, waits for approval
Each day this agent checks which leads have gone quiet, looks for replies in Gmail, and drafts a personal follow-up for the rest. Drafts go to Slack for approval instead of being sent.
Paste this into ChatGPT, Claude or your agent tool. See the prompt
- Pipeline Hygiene / CRM
- advanced
- AE
- SDR / BDR
- Founder
- Category
- Pipeline Hygiene / CRM
- Difficulty
- Advanced
- Est. cost
- Not stated by source
Problem
Follow-ups slip because nobody tracks who replied and who went quiet. Leads that needed one more nudge go cold.
Setup
Built with the Claude Agent SDK. A system prompt defines the agent and a markdown skill file defines the daily follow-up task. Through MCP servers it reads leads from Airtable, checks Gmail for a reply from each lead, marks replied leads as active and skips them, drafts a follow-up using the company context for the rest, creates a Gmail draft (never sends) and logs the action. A small scheduler wakes the agent daily, and approval-type tasks post the drafts to Slack so the owner approves or rejects each one.
Prompt
Starter prompt by The GTM Agent Weekly, written from the setup described on this page. It is not the source's own prompt; see the source link below for their write-up.
# ROLE
You run my daily lead follow-up. You check who replied, draft a nudge for those who did not,
and wait for my approval. You never send email.
# INPUTS
- {{LEADS}}: the lead table (e.g. Airtable) with name, email, company, last contact date, status.
- {{INBOX}}: my email, read access plus permission to create drafts (e.g. Gmail).
- {{COMPANY_CONTEXT}}: a short note on what we sell and to whom.
- {{APPROVAL_CHANNEL}}: where I approve or reject drafts (e.g. Slack).
- {{FOLLOW_UP_AFTER_DAYS}}: days since last contact before a nudge is due.
# TASK (once a day)
1. For each lead with status "contacted" and last contact older than {{FOLLOW_UP_AFTER_DAYS}} days:
2. Search the inbox for a reply from that lead. If there is one, set status to "active" and skip.
3. Otherwise draft a short follow-up (under {{MAX_WORDS}} words) that references our last email
and adds one useful point from {{COMPANY_CONTEXT}}. No guilt-trip lines.
4. Save it as an email draft, post it to {{APPROVAL_CHANNEL}} with approve and reject, and log
the action on the lead.
# GUARDRAILS
- Never send. Drafts only, approved by me.
- Never draft for a lead who replied, unsubscribed or is marked do-not-contact.
- Never contact the same lead twice in one day. Log everything you do. Replace every {{PLACEHOLDER}} before running. Works with any capable LLM and runner.
Tools
Steps
- Write a system prompt for who the agent is and a separate skill file with the day's follow-up rules.
- Connect the lead list, email and chat through MCP servers.
- Each run, check every open lead for a reply; mark replied leads active and skip them.
- Draft a follow-up for the rest using company context and save it as an email draft, never sending.
- Schedule the run daily and post drafts to Slack for approve or reject.
Results
Tutorial with no outcome data.
Used in recipes
What goes wrong
Gotchas
- The author keeps sales outreach on approval mode until quality is trusted for a given customer segment.
- Matching replies by email address misses replies from a colleague or a different address. (editor note)
- Airtable stands in for a CRM here; with a real CRM, log the follow-up there too. (editor note)
Get 5 like this every week, free.
Real agent setups with sources and failure modes, in one short weekly email.
Free. One email a week. Unsubscribe anytime.
Source and credit
Kjetil Furås · newsletter
Source dated 2026-04-14 · last reviewed 2026-10-11. Summarized in our own words; see the source for details.