关于 recoup-platform-email-helper
这是一个通过 Node 脚本发送 Recoup 邮件的技能,适合需要从任务中发送文本或 HTML 邮件的场景。脚本负责序列化和校验内容,并提供 dry-run 预览以避免发送空邮件或格式错误的内容。
主要功能
- 01通过 Node 脚本发送邮件
- 02支持 HTML 和纯文本正文
- 03支持多个收件人及抄送
- 04dry-run 序列化与校验
- 05拒绝发送空正文
- 06检查退出码并输出消息 ID
适用场景
- 01发送日常或任务报告
- 02向多个收件人发送邮件
- 03预览并验证邮件负载
- 04排查发送失败或空内容
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ recoupable/ skills --skill recoup-platform-email-helper安装后在 Claude Code 中输入/recoup-platform-email-helper确认已加载。
附带文件scripts/send-email.mjs
详细介绍
在任务中发送电子邮件
通过运行捆绑的 Node 脚本发送电子邮件——不要在 shell 中拼装 JSON。
为什么要用这个脚本
手动拼装发送请求(curl -sS … -d "{… \"html\": $(echo "$HTML" | jq -R -s '.') …}")很脆弱:根据引号和转义的处理方式不同,可能会生成格式错误的请求正文;而该 API 曾经会静默地发送只有页脚的空邮件,标题为 "Message from Recoup",且返回 success:true。模型有时会弄错这个过程。此脚本完全省去了 shell 序列化。
如何发送
-
将邮件正文写入文件(HTML 推荐此方式——可避免所有转义问题):
cat > /tmp/report.html <<'HTML' <h1>Daily Report</h1> <p>…your real content…</p> HTML -
发送:
node "$SKILL_DIR/scripts/send-email.mjs" \ --subject "Daily Report — $(date '+%B %d, %Y')" \ --html-file /tmp/report.html \ --to [email protected]
$SKILL_DIR 是此技能的安装目录(~/.agents/skills/recoup-platform-email-helper);请使用 scripts/send-email.mjs 的绝对路径。
标志
| 标志 | 含义 |
|---|---|
--subject <s> | 主题行(可选——若省略,API 会根据正文生成主题)。 |
--html-file <path> / --html <s> | HTML 正文。优先使用 --html-file。 |
--text-file <path> / --text <s> | 纯文本正文。 |
--to <email> | 收件人(可重复)。省略时默认发送到账户自己的电子邮件地址(“发给我”)。 |
--cc <email> | 抄送对象(可重复)。 |
--chat-id <id> | 用于页脚“继续对话”链接的房间 ID。 |
--dry-run | 序列化并验证,然后打印请求负载;不要发送。用于预览。 |
规则
- 必须且只能提供一个正文。 如果没有非空的
--html/--text,脚本会拒绝发送(退出代码为 2)。绝不要尝试发送空邮件。 - 检查退出代码。 非零表示邮件未发送——请阅读 stderr 并修正问题;不要报告成功。实际发送成功后,脚本会打印 Resend 消息 ID。
- 脚本会从环境变量读取
RECOUP_API_KEY/RECOUP_ACCESS_TOKEN和RECOUP_API_BASE——这些变量已在沙盒中设置。绝不要打印或硬编码它们。 - 仅使用 Node(沙盒运行时为
node22;不保证提供python3)。零依赖。
评论
支持 Markdown