Automated Client Follow-Up
Stop losing deals to silence. This skill reads your client or lead list, identifies contacts you haven't reached out to recently, and drafts personalized follow-up messages — so no opportunity slips through the cracks.
Run it weekly on a cron, or trigger it whenever you want to check who needs attention.
What You Get
- - Stale lead detection — contacts you haven't messaged in X days
- Personalized follow-up drafts for each stale contact
- Priority ranking based on deal value, last interaction, and lead stage
- Follow-up stats (total contacts, stale count, overdue count)
- Outreach log tracking — what you sent, when, and to whom
Setup
Required
- - Client list — A CSV file, Google Sheet, or any structured list your agent can read. Minimum columns: name, email (or phone), last-contacted date. More columns = better personalization.
Optional (but recommended)
- - Send access — If you want the agent to send follow-ups after your approval (Gmail, Outlook, or SMS via Twilio)
- CRM integration — If you use a CRM (HubSpot, Notion database, Airtable), point the agent at it instead of a CSV
- Calendar access — So the agent can suggest meeting times in follow-ups
- Delivery channel — Telegram/Discord for follow-up digest notifications
Configuration
Tell your agent:
- 1. Client list location — file path, Google Sheet URL, or CRM connection
- Stale threshold — how many days without contact before a lead is "stale" (default: 14 days)
- Critical threshold — how many days before a lead is "at risk" (default: 30 days)
- Follow-up style — your tone (professional, casual, friendly, direct) so drafts match your voice
- Follow-up schedule — when to run (default: every Monday at 9:00 AM local)
- Max follow-ups per run — limit drafts per cycle (default: 10)
- Delivery — where to send the follow-up digest (Telegram, Discord, file)
- Industry/context — what your business does, so follow-ups are relevant (e.g., "web design agency", "real estate investor", "SaaS founder")
How It Works
Step 1: Load Client List
- - Read your client list from the configured source (CSV, Google Sheet, CRM, Notion)
- For each contact, extract: name, email/phone, company (if available), last-contacted date, deal stage, deal value, notes
- If last-contacted date is missing, flag the contact for manual review
Step 2: Identify Stale Contacts
Sort contacts into 3 categories based on days since last contact:
🔴 AT RISK — Over critical threshold (30+ days)
- - These leads are going cold. Follow-up is urgent.
- Prioritize by deal value (highest value first)
🟡 STALE — Over stale threshold (14-30 days)
- - Due for a check-in. Not urgent, but shouldn't wait another week.
- Prioritize by deal stage (closest to closing first)
🟢 ACTIVE — Within threshold (< 14 days)
- - Recently contacted. No action needed this cycle.
- Skip these — don't over-contact
Step 3: Rank & Select
- - Rank all stale + at-risk contacts by priority score:
- Deal value weight: higher value = higher priority
- Days overdue weight: more overdue = higher priority
- Deal stage weight: closer to closing = higher priority
- - Select top N contacts (up to configured max per run)
Step 4: Draft Follow-Ups
For each selected contact, draft a personalized follow-up message:
- - Use context: reference their company, deal stage, last conversation topic (from notes)
- Match tone: use the configured follow-up style
- Keep it short: 3-5 sentences max
- Include a clear CTA: ask a question, propose a meeting, share something useful
- Vary the approach: don't send the same template to everyone
- Re-engagement: "Haven't heard from you in a while — still interested in X?"
- Value-add: "Saw this article about [their industry] and thought of you"
- Check-in: "How's [project/initiative they mentioned] going?"
- Nudge: "We had discussed [service/product] — any questions I can answer?"
- Meeting request: "Would love to catch up — free for a quick call this week?"
- - Mark as DRAFT — never send without user approval
Step 5: Compile Follow-Up Digest
Format the digest:
CODEBLOCK0
Step 6: Deliver & Track
- - Send digest via configured channel (Telegram, Discord, or save to file)
- Show full draft messages below the digest for review
- When user approves a follow-up ("send 1" or "approve all"), send the messages
- After sending, update the client list with the new last-contacted date
- Log the outreach in INLINECODE0
Examples
User: "Check my follow-ups"
Agent runs the workflow and responds:
🤝 Follow-Up Digest — Monday, March 10
📊 PIPELINE STATUS
Total contacts: 34 | At risk: 3 | Stale: 7 | Active: 24
Oldest untouched: 45 days — Lisa Park
🔴 AT RISK (3 contacts)
- 1. Lisa Park — Greenfield Properties | Last contact: 45 days ago
Stage: Proposal sent | Value: $4,800
📝 Draft: "Hi Lisa, I wanted to circle back on the proposal I sent over last month. Happy to walk through any questions or adjust the scope if needed. Would Thursday or Friday work for a quick call?"
- 2. James Wu — TechStart Inc | Last contact: 38 days ago
Stage: Discovery | Value: $2,400
📝 Draft: "Hey James, we had a great conversation about streamlining your onboarding process. I put together a few ideas since we last spoke — mind if I send them over?"
- 3. Maria Santos — Bloom Studio | Last contact: 31 days ago
Stage: Interested | Value: $1,200
📝 Draft: "Hi Maria, just checking in — are you still looking to revamp your client intake process? I'd love to help whenever the timing is right."
🟡 STALE (7 contacts)
- 4. Dave Chen — Redline Motors | 22 days ago
- Priya Patel — Sapphire Consulting | 19 days ago
- Tom Bradley — Bradley & Sons | 18 days ago
- (+ 4 more)
🟢 ACTIVE (24 contacts) — no action needed
💡 INSIGHTS
• 3 contacts at risk of going cold — $8,400 in pipeline value
• Lisa Park is your highest-value stale lead
• Suggested: Prioritize Lisa and James this week
User: "Send 1 and 2. Edit 3 to mention we have a spring discount."
Agent: Sends follow-ups 1 and 2 as drafted. Updates draft 3 with spring discount mention, shows updated version for approval.
User: "Set up weekly follow-ups every Monday"
Agent: Configures cron for Monday 9:00 AM, confirms:
"Client follow-up scheduled for every Monday at 9:00 AM. I'll scan your contact list, flag anyone going cold, and draft personalized messages for your review."
User: "Add a new contact: Sarah Kim, sarah@buildright.co, met at conference, interested in the $495 setup"
Agent: Adds to client list with today as first-contact date, stage: "Interested", notes: "Met at conference, interested in Guided Setup ($495)." Confirms the addition.
Customization Ideas
- - Multi-channel follow-up — draft emails AND LinkedIn messages for the same contact
- Auto-categorize new leads — when a new contact is added, auto-assign a deal stage and priority
- Follow-up sequences — instead of one-off messages, create multi-touch sequences (Day 1: email, Day 3: LinkedIn, Day 7: call reminder)
- Win/loss tracking — mark deals as won or lost, track conversion rate over time
- Referral prompts — for active clients, suggest asking for referrals after successful projects
- Meeting prep — before scheduled calls, pull up the contact's history and draft talking points
Want More?
This skill handles follow-up tracking and outreach drafting. But if you want:
- - Custom integrations — connect to your CRM, project management tool, invoicing system, or any API your business uses
- Advanced automations — multi-step workflows tailored to your business (lead scoring, auto-replies, invoice follow-ups, proposal generation)
- Full system setup — identity, memory, security, and 5 custom automations built specifically for your workflow
DoctorClaw sets up complete OpenClaw systems for businesses:
- - Guided Setup ($495) — 2-hour live walkthrough. Everything configured, integrated, and running by the end of the call.
- Done-For-You ($1,995) — 7-day custom build. 5 automations, 3 integrations, full security, 30-day support. You do nothing except answer a short intake form.
→ doctorclaw.ceo
自动客户跟进
别再让沉默吞噬你的交易。这项技能会读取你的客户或潜在客户列表,识别你近期未联系过的联系人,并起草个性化的跟进消息——确保没有机会从指缝中溜走。
你可以按周设置定时任务运行,也可以随时手动触发,查看哪些客户需要关注。
你将获得
- - 沉睡线索检测——你超过X天未联系的联系人
- 为每个沉睡联系人起草个性化跟进消息
- 基于交易价值、最后互动时间和线索阶段的优先级排序
- 跟进统计数据(总联系人、沉睡数量、逾期数量)
- 外联日志追踪——你发送了什么、何时发送、发送给谁
设置
必需项
- - 客户列表 — CSV文件、Google Sheet或你的智能体可读取的任何结构化列表。最低要求列:姓名、邮箱(或电话)、最后联系日期。列越多,个性化效果越好。
可选项(但推荐)
- - 发送权限 — 如果你希望智能体在你批准后发送跟进消息(Gmail、Outlook或通过Twilio发送短信)
- CRM集成 — 如果你使用CRM(HubSpot、Notion数据库、Airtable),将智能体指向CRM而非CSV文件
- 日历访问权限 — 以便智能体在跟进消息中建议会议时间
- 交付渠道 — Telegram/Discord,用于接收跟进摘要通知
配置
告知你的智能体:
- 1. 客户列表位置 — 文件路径、Google Sheet URL或CRM连接
- 沉睡阈值 — 多少天未联系后线索被视为沉睡(默认:14天)
- 临界阈值 — 多少天后线索被视为有风险(默认:30天)
- 跟进风格 — 你的语气(专业、随意、友好、直接),确保草稿符合你的风格
- 跟进计划 — 何时运行(默认:每周一上午9:00本地时间)
- 每次运行最大跟进数 — 每周期草稿上限(默认:10条)
- 交付方式 — 跟进摘要发送到哪里(Telegram、Discord、文件)
- 行业/背景 — 你的业务内容,使跟进消息具有相关性(例如网页设计公司、房地产投资者、SaaS创始人)
工作原理
第1步:加载客户列表
- - 从配置的源(CSV、Google Sheet、CRM、Notion)读取你的客户列表
- 对每个联系人提取:姓名、邮箱/电话、公司(如有)、最后联系日期、交易阶段、交易价值、备注
- 如果缺少最后联系日期,将该联系人标记为需人工审核
第2步:识别沉睡联系人
根据自上次联系以来的天数,将联系人分为3类:
🔴 有风险 — 超过临界阈值(30天以上)
- - 这些线索正在冷却。跟进刻不容缓。
- 按交易价值排序(价值最高的优先)
🟡 沉睡 — 超过沉睡阈值(14-30天)
- - 需要跟进。不紧急,但不应再等一周。
- 按交易阶段排序(最接近成交的优先)
🟢 活跃 — 在阈值内(少于14天)
- - 近期已联系。本轮无需操作。
- 跳过这些——不要过度联系
第3步:排序与选择
- - 按优先级分数对所有沉睡+有风险的联系人进行排序:
- 交易价值权重:价值越高 = 优先级越高
- 逾期天数权重:逾期越久 = 优先级越高
- 交易阶段权重:越接近成交 = 优先级越高
- - 选择前N个联系人(不超过每次运行配置的最大值)
第4步:起草跟进消息
为每个选中的联系人,起草个性化的跟进消息:
- - 利用背景信息: 提及他们的公司、交易阶段、上次对话主题(来自备注)
- 匹配语气: 使用配置的跟进风格
- 保持简短: 最多3-5句话
- 包含明确的行动号召: 提问、提议会议、分享有用内容
- 变换方式: 不要给每个人发送相同的模板
- 重新互动:有一阵没联系了——还对X感兴趣吗?
- 增值服务:看到这篇关于[他们行业]的文章,想到了你
- 跟进问候:[他们提到的项目/计划]进展如何?
- 提醒推动:我们之前讨论过[服务/产品]——有什么问题我可以解答吗?
- 会议请求:很想聊聊——这周有空快速通话吗?
第5步:编译跟进摘要
格式化摘要:
🤝 跟进摘要 — [日期]
📊 管道状态
总联系人:[X] | 有风险:[X] | 沉睡:[X] | 活跃:[X]
最久未联系:[X天] — [联系人姓名]
🔴 有风险([X]个联系人)
- 1. [姓名] — [公司] | 上次联系:[X天前]
阶段:[交易阶段] | 价值:[交易价值]
📝 草稿:[跟进消息第一行...]
- 2. [姓名] — [公司] | 上次联系:[X天前]
阶段:[交易阶段] | 价值:[交易价值]
📝 草稿:[跟进消息第一行...]
🟡 沉睡([X]个联系人)
- 3. [姓名] — [公司] | 上次联系:[X天前]
阶段:[交易阶段]
📝 草稿:[跟进消息第一行...]
- 4. [姓名] — [公司] | 上次联系:[X天前]
阶段:[交易阶段]
📝 草稿:[跟进消息第一行...]
🟢 活跃([X]个联系人)— 无需操作
💡 洞察
• [X]个联系人已超过30天未联系
• 最高价值有风险交易:[姓名] — $[价值]
• 建议:本周预留30分钟进行跟进通话
第6步:交付与追踪
- - 通过配置的渠道(Telegram、Discord或保存到文件)发送摘要
- 在摘要下方显示完整草稿消息供审核
- 当用户批准跟进时(发送1或全部批准),发送消息
- 发送后,用新的最后联系日期更新客户列表
- 将外联记录到 memory/follow-up-log/YYYY-MM-DD.md
示例
用户: 检查我的跟进
智能体运行工作流并回复:
🤝 跟进摘要 — 3月10日,星期一
📊 管道状态
总联系人:34 | 有风险:3 | 沉睡:7 | 活跃:24
最久未联系:45天 — Lisa Park
🔴 有风险(3个联系人)
- 1. Lisa Park — Greenfield Properties | 上次联系:45天前
阶段:已发送方案 | 价值:$4,800
📝 草稿:Hi Lisa, I wanted to circle back on the proposal I sent over last month. Happy to walk through any questions or adjust the scope if needed. Would Thursday or Friday work for a quick call?
- 2. James Wu — TechStart Inc | 上次联系:38天前
阶段:发现阶段 | 价值:$2,400
📝 草稿:Hey James, we had a great conversation about streamlining your onboarding process. I put together a few ideas since we last spoke — mind if I send them over?
- 3. Maria Santos — Bloom Studio | 上次联系:31天前
阶段:感兴趣 | 价值:$1,200
📝 草稿:Hi Maria, just checking in — are you still looking to revamp your client intake process? Id love to help whenever the timing is right.
🟡 沉睡(7个联系人)
- 4. Dave Chen — Redline Motors | 22天前
- Priya Patel — Sapphire Consulting | 19天前
- Tom Bradley — Bradley & Sons | 18天前
- (+另外4个)
🟢 活跃(24个联系人)— 无需操作
💡 洞察
• 3个联系人面临冷却风险 — 管道价值$8,400
• Lisa Park是价值最高的沉睡线索
• 建议:本周优先处理Lisa和James
用户: 发送1和2。修改3,提到我们有春季折扣。
智能体: 按草稿发送跟进1和2。更新草稿3,加入春季折扣信息,显示更新版本供批准。
用户: 设置每周一自动跟进
智能体: 配置周一上午9:00的定时任务,确认:
客户跟进已安排为每周一上午9:00。我将扫描你的