mcpField
R
recoup-platform-email-helper

recoup-platform-email-helper

github.com/recoupable生产力95.0k 次安装1 天前更新
代码仓库

关于 recoup-platform-email-helper

这是一个通过 Node 脚本发送 Recoup 邮件的技能,适合需要从任务中发送文本或 HTML 邮件的场景。脚本负责序列化和校验内容,并提供 dry-run 预览以避免发送空邮件或格式错误的内容。

主要功能

  1. 01通过 Node 脚本发送邮件
  2. 02支持 HTML 和纯文本正文
  3. 03支持多个收件人及抄送
  4. 04dry-run 序列化与校验
  5. 05拒绝发送空正文
  6. 06检查退出码并输出消息 ID

适用场景

  1. 01发送日常或任务报告
  2. 02向多个收件人发送邮件
  3. 03预览并验证邮件负载
  4. 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 序列化。

如何发送

  1. 将邮件正文写入文件(HTML 推荐此方式——可避免所有转义问题):

    cat > /tmp/report.html <<'HTML'
    <h1>Daily Report</h1>
    <p>…your real content…</p>
    HTML
    
  2. 发送:

    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