Wiseflow email-ops
邮件操作技能。处理策略性单封邮件:回复询盘、跟进邮件、会议确认、合作提案草稿,以及发送后的状态核实。与 cold-outreach 互补——cold-outreach 负责批量自动化冷邮件,email-ops 负责有具体目标对象的关键邮件。
install
source · Clone the upstream repo
git clone https://github.com/TeamWiseFlow/wiseflow
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/TeamWiseFlow/wiseflow "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/email-ops" ~/.claude/skills/teamwiseflow-wiseflow-email-ops && rm -rf "$T"
manifest:
skills/email-ops/SKILL.mdsource content
Email Ops — 邮件操作技能
本技能处理 BD/IR 工作中需要深思熟虑的单封邮件,不适用于批量冷邮件(那是
cold-outreach 的职责)。
适用场景:
- 对方回复了你的冷邮件,需要跟进
- 会议前发确认/议程邮件,会议后发总结/后续邮件
- 向重要目标发第一封定制化开发信(非批量)
- 起草合作提案或报价邮件
- 有人通过其他渠道引荐,需要接回邮件线程
不适用场景:批量商家采集后发送开发信 → 用
cold-outreach
Step 1 — 确定邮件类型与上下文
在起草任何内容之前,先明确:
邮件类型(从以下选一个): A. 首次触达(定制化,非批量) B. 回复/跟进(对方已有回复或之前有过沟通) C. 会前确认(日期/地点/议程) D. 会后跟进(感谢 + 下一步行动) E. 合作提案 / 报价 F. 引荐接收(某人引荐后的首封邮件) 收集信息: - 目标姓名、职位、公司 - 发件账号(公司域名邮箱 / 个人邮箱) - 是否有现有线程?(如有,需先读取) - 目标:签客户 / 找合作 / 接触投资人 / 其他 - 关系温度:陌生 / 见过面 / 有过合作
未提供邮件类型时,根据上下文推断。推断不确定时先问。
Step 2 — 读取现有线程(仅 B/C/D/F 类型)
如果是回复或跟进邮件:
1. 确认邮件客户端(通常为系统默认邮件客户端,通过 shell 或 browser 访问) 2. 定位线程: - 搜索发件人邮箱或公司名 - 找到最近的往来邮件 3. 提取: - 最后一封邮件的日期、发件方、核心内容 - 对方提出的问题 / 尚未回答的点 - 之前承诺的事项(如:"我会发资料给你") - 是否已有报价或提案在线程中 4. 识别跟进距离: 上次邮件距今: < 48h → 正常速度跟进 3-7天 → 轻推,语气平和 > 7天 → 需要重新建立上下文,别假设对方记得之前内容
Step 3 — 选择发件账号与渠道
规则: - 有公司域名邮箱时,B2B 场景优先用公司邮箱 - 个人引荐 → 用个人邮箱,更暖 - 与投资人沟通 → 优先公司邮箱(显示专业度) - 发件人名称格式:完整姓名 + 公司名 例:张三 <zhangsan@company.com> 渠道确认: - 对方之前用邮件回复 → 继续邮件 - 对方之前提到微信 → 建议换到微信,邮件只发摘要 - 没有回复记录 → 默认邮件
Step 4 — 起草邮件
根据邮件类型,使用对应结构:
A. 首次触达(定制化)
LLM Prompt: "起草一封与潜在合作伙伴或投资人建立联系的信件,发给 {姓名}({职位} @ {公司})。 背景: - 发件人:{姓名},{职位},{公司及一句话介绍} - 目的:{目的,例如:探讨数据采集服务合作} - 找他的理由:{个性化理由,例如:看到贵公司近期发布了...} - 关系温度:陌生 / 通过 {中间人} 引荐 格式要求: - 中文 - Subject:10 字以内,具体到对方业务,不用感叹号 - 正文 3 段,总计 120-150 字: 段 1:为什么写这封邮件(个性化切入) 段 2:我方能提供的价值(从对方视角,不是自我介绍) 段 3:一个低摩擦 CTA(15 分钟通话 / 一封回复即可) - 结尾不用"谢谢" / "期待您的回复" 等套话 返回格式: Subject: [主题行] --- [正文]"
B. 回复 / 跟进
LLM Prompt: "起草一封跟进邮件,基于以下线程上下文。 线程摘要: - 上次发件方:{我方/对方} - 上次时间:{N 天前} - 未回答的问题:{具体内容} - 之前的承诺:{如有} 当前目的:{推进到下一步,例如:确认是否收到提案 / 约下次通话时间} 要求: - 中文,简短,不超过 80 字正文 - 不要重复上封邮件的所有内容 - 如果是 3 天以上的跟进,先一句话刷新上下文 - 结尾一个明确问题或提议,不要 open-ended 收尾 返回格式: Subject: Re: [原主题] --- [正文]"
C. 会前确认
LLM Prompt: "起草一封会议确认邮件。 会议信息: - 对象:{姓名} @ {公司} - 时间:{日期 + 时间 + 时区} - 形式:{视频会议/面谈,如视频则附链接} - 议程重点:{1-2 个核心议题} 要求: - 中文,简短,不超过 60 字正文 - 确认时间 + 附议程 + 如有附件说明 - 语气专业但不冷漠 返回格式: Subject: 确认:{时间} 与 {对方公司} 的会议 --- [正文]"
D. 会后跟进
LLM Prompt: "起草一封会后跟进邮件。 会议信息: - 对象:{姓名} @ {公司} - 会议时间:{刚才 / N 天前} - 关键结论:{达成了什么共识} - 我方下一步行动:{例如:发送方案文档 / 安排 demo} - 对方下一步行动:{例如:内部讨论后反馈} - 期望截止时间(如有):{具体日期} 要求: - 中文,简洁,正文不超过 100 字 - 结构:感谢 + 关键共识一句话 + 双方后续行动 + 期望时间点 - 语气温暖,不催促 返回格式: Subject: 跟进:关于 {核心议题} --- [正文]"
E. 合作提案 / 报价
LLM Prompt: "起草一封合作提案邮件,发给 {姓名} @ {公司}。 提案内容: - 合作类型:{例如:数据服务 API 接入 / 渠道分销合作} - 核心价值:{我们能解决他们的什么问题} - 方案要点:{2-3 个关键条款或功能点} - 报价(如有):{价格/商务条件} - 附件:{如有方案 PDF 等} 背景:{是否有过会议讨论?对方的痛点是?} 要求: - 中文 - Subject:直接说明提案内容,不用"关于合作"这类模糊标题 - 正文 4 段,总计 150-200 字: 段 1:背景引用(基于上次沟通的某个点) 段 2:方案概述 + 核心价值 段 3:关键条款或亮点(可用简短列表) 段 4:建议下一步(阅读附件 / 确认细节) - 附上附件提示(如有) 返回格式: Subject: [主题] --- [正文]"
F. 引荐接收
LLM Prompt: "起草一封接收引荐的邮件。 引荐信息: - 引荐人:{姓名} - 被引荐对象:{姓名} @ {公司} - 引荐人的邮件内容摘要:{引荐语} 我的背景:{一句话介绍} 目的:{和被引荐对象想聊什么} 要求: - 中文 - Subject:Re: [引荐人邮件主题](三方 CC 格式) - 正文 3 段,100 字以内: 段 1:感谢引荐人(CC 他) 段 2:向新认识的人自我介绍 + 为什么有价值聊 段 3:提议具体时间通话或 CTA - 语气:暖而不过分 返回格式: To: {被引荐人邮箱} CC: {引荐人邮箱} Subject: Re: [原主题] --- [正文]"
Step 5 — 发送(仅明确要求发送时)
python3 {skills_dir}/cold-outreach/scripts/send_email.py \ --to "{收件人邮箱}" \ --subject "{主题}" \ --body "{正文}"
发送后立即确认:
检查 Sent 文件夹(通过邮件客户端 browser 访问 或 IMAP SENT 路径) 确认:消息是否在 Sent 中可见?
默认行为是起草,不发送。 只有用户明确说"发送"/"帮我发"时才执行发送。
Step 6 — 输出状态报告
MAIL OPS REPORT ─────────────── 发件账号: 收件人: 邮件类型: 主题: 草稿: [邮件正文] 状态:drafted / sent / blocked / awaiting-approval 后续建议: - 若无回复,{N} 天后跟进 - 跟进方式:[邮件 / 微信 / LinkedIn]
跟进时间参考
| 邮件类型 | 建议跟进等待期 |
|---|---|
| 首次触达 | 3-5 个工作日 |
| 发送提案后 | 2-3 个工作日 |
| 会后跟进 | 1 个工作日内 |
| 引荐接收 | 1-2 个工作日(趁热打铁) |
| 已跟进一次无回复 | 再等 5-7 天,改变切入角度 |
| 跟进两次无回复 | 暂停,换渠道或等新触机窗口 |
常见错误
| 情况 | 处理方式 |
|---|---|
| SMTP 认证失败 | 停止,检查 SMTP_USER / SMTP_PASSWORD,告知用户 |
| 找不到现有线程 | 告知用户,确认是否以新邮件开始 |
| 用户说"发给他"但未给邮箱 | 先问清楚收件人邮箱,不猜 |
| 合作提案缺少关键信息 | 列出缺失项,请用户补充,不用模糊内容填充 |
| 发送后 Sent 无法确认 | 报告 "awaiting verification",不声称已发送成功 |