关于 smartlead-inbox-manager
通过 Smartlead API 管理邮箱的技能,涵盖预热、签名、标签和健康检查,并提供批量操作脚本及活跃邮箱与备用邮箱的转换流程。
主要功能
- 01启用或关闭邮箱预热
- 02配置预热量和递增设置
- 03批量应用签名模板
- 04添加或更新邮箱标签
- 05导出邮箱健康报告
适用场景
- 01配置新开通的邮箱
- 02将预热后的备用邮箱用于营销活动
- 03检查邮箱信誉和发送状态
- 04执行已批准的域名退役计划
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ growthenginenowoslawski/ coldoutboundskills --skill smartlead-inbox-manager安装后在 Claude Code 中输入/smartlead-inbox-manager确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
scripts/_lib.tslist-health.tsset-signatures.tsset-warmup.tstag-inboxes.ts详细介绍
Smartlead 收件箱管理器
Zapmail 会为你提供数百个新收件箱。Smartlead 需要对它们进行配置:启用预热并设置合适的递增速度、设置签名以免邮件显得空洞、添加标签以区分已启用的收件箱和备用收件箱,并监控健康状况,以便回收失效的收件箱。
此技能通过 Smartlead API 完成所有这些操作。
核心操作
| 操作 | 功能 | 脚本 |
|---|---|---|
| 启用预热 | 按正确的递增速度开启预热(从每天 1 封开始,每天增加 5 封,最高每天 40 封) | set-warmup.ts --mode=enable |
| 禁用预热 | 关闭预热(用于备用收件箱) | set-warmup.ts --mode=disable |
| 设置签名 | 批量为收件箱应用签名模板 | set-signatures.ts |
| 标记为已启用 | 添加 "active" 标签 | tag-inboxes.ts --tag=active |
| 标记为备用 | 添加 "insurance" 标签 | tag-inboxes.ts --tag=insurance |
| 健康状况面板 | 列出所有收件箱及其预热状态、信誉和每日发送量 | list-health.ts |
已启用与备用(标签约定)
并非每个收件箱都应一直发送邮件。一种常见模式是:
- 已启用的收件箱 — 当前用于发送实时营销活动邮件。关闭预热(或仅进行最低限度的预热),优先发送实际邮件。
- 备用收件箱 — 已预热但处于闲置状态,留作储备。开启预热以维持信誉。已启用的收件箱耗尽后,可换用备用收件箱。
标签可帮助你大规模跟踪这些收件箱。可以在 Smartlead 界面中或通过 API 按标签筛选。
输入
每个脚本都会读取:
SMARTLEAD_API_KEY(环境变量)- 收件箱选择器:
--ids=1,2,3或--domain=example.com或--tag=insurance或--all - 操作专属标志(参见各脚本)
预热递增设置
新收件箱的默认预热配置(预热期第 1 至第 4 周):
{
"warmup_enabled": "true",
"total_warmup_per_day": 40,
"daily_rampup": 5,
"reply_rate_percentage": "20"
}
total_warmup_per_day:收件箱在预热网络中每天发送的最大邮件数(峰值)daily_rampup:每天递增的数量(第 1 天 = 1,第 2 天 = 6,第 3 天 = 11,依此类推,直到达到上限)reply_rate_percentage:预热网络中的对象回复的频率(20% 比较符合实际)
备用收件箱(长期维持信誉)的设置:
{
"warmup_enabled": "true",
"total_warmup_per_day": 15,
"daily_rampup": 0,
"reply_rate_percentage": "20"
}
较低的发送量,不递增——只需保持收件箱活跃。
已启用的收件箱(当前用于发送实时营销活动邮件)的设置:
{
"warmup_enabled": "false"
}
关闭预热,让每日发送额度用于触达真实潜在客户。
签名模板
通过 set-signatures.ts 批量应用的默认模板如下:
{from_name}
{title}
{company}
{address}
渲染结果(例如):
Jane Smith
Founder
Acme
123 Main St, Suite 400, Austin, TX 78701
各值的来源:
{from_name}— 如果收件箱自己的from_name字段已设置,则使用该字段(每个收件箱可使用不同的人设);否则使用.env中的SENDER_FIRST_NAME + SENDER_LAST_NAME{title}—SENDER_TITLE环境变量{company}—SENDER_COMPANY_NAME环境变量{address}—SENDER_PHYSICAL_ADDRESS环境变量(建议填写——在页脚中提供真实邮寄地址,有助于遵守 CAN-SPAM 等类似规定)
默认模板所需的 .env 条目:
SENDER_FIRST_NAME=Jane
SENDER_LAST_NAME=Smith
SENDER_TITLE=Founder
SENDER_COMPANY_NAME=Acme
SENDER_PHYSICAL_ADDRESS=123 Main St, Suite 400, Austin, TX 78701
自定义模板覆盖:
# Pass inline (use \n for newlines)
npx tsx scripts/set-signatures.ts --all --template="Cheers,\n{from_name}\n{title}\n{company}\n{address}"
# Or from a file
npx tsx scripts/set-signatures.ts --all --template-file=./my-signature.txt
可用占位符:{from_name}、{from_email}、{domain}、{title}、{company}、{address}。
营销活动中的邮件正文顺序:
在 Smartlead 序列中,正文始终以 %signature% 结尾——Smartlead 会在此处插入收件箱的签名。顺序如下:
<body content>
<PS unsubscribe line>
%signature%
这样 %signature%(包含姓名、职位、公司和地址)会位于底部,因此每个收件箱发出的邮件都会在页脚中附上真实邮寄地址。
健康状况面板输出
list-health.ts 会输出 CSV 和摘要:
email warmup reputation sent_today health_status
[email protected] on good 18 healthy
[email protected] on fair 5 warming
[email protected] off n/a 28 active
[email protected] on bad 0 blocked
摘要:
Total inboxes: 80
Warmup on: 50
Active (warmup off): 28
Blocked/failed: 2
Reputation:
Good: 65
Fair: 10
Bad: 3
Unknown: 2
Action items:
- 2 inboxes blocked — run /email-deliverability-audit
- 3 inboxes with "bad" reputation — consider pausing
常见工作流
Zapmail 配置完成后的第 1 天
# 1. Enable warmup on all newly created inboxes
npx tsx scripts/set-warmup.ts --mode=enable --tag=new --warmup-per-day=40 --ramp=5
# 2. Set signatures
npx tsx scripts/set-signatures.ts --tag=new --template="Best,\n{from_name}"
# 3. Tag them as insurance (they aren't active yet — warmup for 2 weeks first)
npx tsx scripts/tag-inboxes.ts --tag=new --add-tag=insurance
npx tsx scripts/tag-inboxes.ts --tag=new --remove-tag=new
将备用收件箱启用到实时营销活动中
# 1. Identify warm insurance inboxes with good reputation
npx tsx scripts/list-health.ts --tag=insurance --filter=reputation:good --out=activate-candidates.csv
# 2. Flip them to active
npx tsx scripts/tag-inboxes.ts --ids-from-csv=activate-candidates.csv --add-tag=active --remove-tag=insurance
# 3. Disable warmup (they're sending for real now)
npx tsx scripts/set-warmup.ts --mode=disable --tag=active
每周健康检查
npx tsx scripts/list-health.ts --all --out=health-$(date +%Y-%m-%d).csv
查看待处理事项。替换被屏蔽的收件箱。
何时停用收件箱
此技能介绍停用收件箱的具体操作。决策应由
/inbox-lifecycle-manager 负责,它会应用完整的判断流程——年龄门槛、发送量下限、退信分支,以及在减少容量前检查是否有预热完成的备用收件箱可供替换。
取消标准是 1% 规则:在已发送 200 封以上邮件的情况下,回复率 <1%(或已发送 150 封以上但零回复),且域名至少已注册 30 天。保护措施在于发送量下限,而不是放宽标准。
以下三条规则很重要,因为使用此技能时很容易停错对象:
- ⛔ 停用整个域名,绝不只停用单个收件箱。 邮箱服务商会按域名评估信誉。在你已判定为受损的域名上保留两个“表现良好”的收件箱,意味着它们会继承表现不佳收件箱的信誉,而且你仍在使用已被判定为不合格的域名发送邮件。
- ⛔ 绝不因回复率而停用注册未满 30 天的域名。 它尚未完成爬坡。
- ⛔ 绝不因发送量不足 200 封而停用。 低于此下限时,0% 的回复率无法区分收件箱确已受损,还是只是遇上了不走运的一周。
/inbox-lifecycle-manager 生成已批准的计划后,在此执行:
# actions.csv comes from /inbox-lifecycle-manager — reviewed and explicitly approved
npx tsx scripts/tag-inboxes.ts --domain=burned-domain.co --add-tag=retired --remove-tag=active
npx tsx scripts/set-warmup.ts --mode=disable --domain=burned-domain.co
开始前先快照当前标签——此处不会记录先前状态,没有快照就无法干净地撤销操作。完成后重新读取标签;200 并不能证明操作成功。
常见问题
- 预热设置按收件箱分别配置。 没有全局设置。脚本会循环处理每个收件箱。
- 速率限制。 Smartlead 每秒允许约 33 个请求。脚本默认使用 5 个并发请求。未经测试,不要提高此值。
- 预热被阻止。 如果
is_warmup_blocked: true,说明该收件箱已被标记(通常是因为预热期间的行为类似垃圾邮件)。需要人工调查。 - 某些 Smartlead 版本没有删除标签的端点——标签只能添加。要“移除”标签,请用不含该标签的新标签列表替换完整列表。脚本会自动处理。
- 签名格式。 HTML 签名可能导致 Gmail/Outlook/Apple Mail 渲染异常。请使用纯文本,或只使用少量
<br>标签。设置后请在 Gmail/Outlook 中测试。 - 预热爬坡量会累积。 如果设置
daily_rampup: 5,收件箱第 1 天发送 1 封,第 2 天发送 6 封,第 3 天发送 11 封……直至达到total_warmup_per_day。要重置(例如中断一段时间后),请先停用,再重新启用。
接下来要做什么
如果你刚配置了新收件箱: 启用预热(set-warmup.ts --mode=enable),应用签名(set-signatures.ts),标记为 insurance,然后等待预热 2 周。2 周后,将 insurance 提升为 active。
如果收件箱已完成预热: 使用标记为 active 的收件箱,继续构建名单(/prospeo-full-export、/disco-like 等)。
或者等待: 如果健康状况仪表板显示收件箱信誉不佳,请运行 /inbox-lifecycle-manager,先决定哪些收件箱确实需要停用,以及如何补足其容量,再启动新营销活动。
相关技能
/zapmail-domain-setup-public— 创建此技能要配置的收件箱/email-deliverability-audit— 健康状况仪表板显示问题时使用/inbox-lifecycle-manager— 决定哪些收件箱需要停用、提升或购买;此技能负责执行/smartlead-api— 底层 API 参考
脚本
scripts/set-warmup.ts— 启用/停用预热,配置爬坡scripts/set-signatures.ts— 批量设置签名scripts/tag-inboxes.ts— 添加/移除标签scripts/list-health.ts— 健康状况仪表板 CSV + 摘要scripts/_lib.ts— 共享内容:API 客户端、收件箱选择器解析器、并发控制