← 返回 Skills 市场
jwestburg

Resend Send Native Node

作者 jwestburg · GitHub ↗ · v1.0.3 · MIT-0
cross-platform ⚠ suspicious
49
总下载
0
收藏
0
当前安装
3
版本数
在 OpenClaw 中安装
/install resend-send-native-node
功能描述
Send email via Resend.com's HTTPS API - native Node.js, zero dependencies. Use when the user explicitly asks to email, send a message, mail a report, or deli...
使用说明 (SKILL.md)

Resend Send Native Node

Send email via the Resend.com HTTPS API.

Native Node.js. Zero dependencies. One POST call for real sends. Small enough to audit directly.

When to use

Trigger phrases: "email me", "send an email", "mail this to", "send a notification", "email the report".

Use this when:

  • The user wants to send an email fast, without Gmail OAuth or App Password pain
  • Simple "fire and forget" sends (no inbox reading needed)
  • The user has a Resend.com account (free tier: 3,000 emails/month)
  • Weekly/report-style outbound messages where the body is generated from explicitly reviewed text

Do NOT use this when:

  • The user wants to READ email (this is send-only)
  • The user needs to send from a specific personal Gmail address (use a Gmail-specific skill)
  • Sensitive business emails where provenance matters (Resend's default [email protected] sender looks transactional)
  • The recipient, sender, or final body has not been explicitly reviewed/approved for a real send

Safety policy for agents

This skill is send-only, but it is still externally mutating. For agent use:

  1. Draft first. Generate or inspect the exact body text before sending.
  2. Dry-run first. The script dry-runs by default; review the printed payload.
  3. Explicit approval. Use --send only after the user explicitly approves that exact recipient, subject, and body.
  4. Use an allowlist. Real sends fail closed unless [email protected],[email protected] is set in the process environment for approved recipients.
  5. No raw memory dumps. Email only curated report text, not unfiltered memory, transcripts, logs, or private workspace context.

How to run

The script is in scripts/send.mjs.

Basic:

node "\x3Cskill-dir>/scripts/send.mjs" --to "[email protected]" --subject "Hello" --body "Hi there"

Without --send, this prints a dry-run payload and does not send.

With from address override:

node "\x3Cskill-dir>/scripts/send.mjs" --from "OpenClaw \[email protected]>" --to "[email protected]" --subject "Hello" --body "Hi"

HTML body:

node "\x3Cskill-dir>/scripts/send.mjs" --html --to "[email protected]" --subject "Styled" --body "\x3Ch1>Hi\x3C/h1>\x3Cp>Hello\x3C/p>"

Dry run (no send, just print the payload):

node "\x3Cskill-dir>/scripts/send.mjs" --dry-run --to "[email protected]" --subject "Test" --body "..."

Real send (only after explicit approval):

node "\x3Cskill-dir>/scripts/send.mjs" --send --to "[email protected]" --subject "Weekly report" --body "Approved report text"

All flags

Flag Required? Purpose
--to yes Comma-separated recipient addresses
--subject yes Message subject
--body yes Inline message body
--cc no Comma-separated cc
--bcc no Comma-separated bcc
--from no Override sender, e.g. "OpenClaw \[email protected]>"
--reply-to no Reply-to address
--html no Body is HTML instead of plain text
--dry-run no Don't send; print the JSON payload
--send no Actually send. Without this, the script dry-runs by default
-h, --help no Show help

--body-file is intentionally not supported in the public package. Review file contents yourself and pass approved text with --body.

Credentials

Requires process environment values:

  • RESEND_API_KEY - starts with re_...
  • RESEND_ALLOWED_TO - comma-separated recipient allowlist for real sends
  • Real sends require RESEND_ALLOWED_TO; without it the script refuses --send

How to get one:

  1. Sign up at https://resend.com (free - 3,000 emails/month)
  2. Go to API Keys in the dashboard
  3. Click Create API Key, name it, and choose the least-privilege sending permission available for your account
  4. Copy the key

Export it in the runtime process environment:

$env:RESEND_API_KEY="\x3Cyour-resend-key>"
$env:RESEND_ALLOWED_TO="[email protected],[email protected]"

Sender identity

By default, emails are sent from [email protected] - Resend's default sender. This works immediately without any domain setup.

For a custom domain (later, optional):

  1. Add your domain to Resend at https://resend.com/domains
  2. Configure DNS records they provide
  3. Use --from "Henry \[email protected]>"

What this skill does

  • Reads RESEND_API_KEY from the process environment only
  • POSTs a JSON request to https://api.resend.com/emails
  • Prints a one-line confirmation with the Resend message ID
  • Defaults to dry-run unless --send is present
  • Validates basic recipient address shape before sending
  • Enforces RESEND_ALLOWED_TO for real sends; fail-closed if it is missing
  • Prints body byte length and SHA-256 prefix in dry-run so reviewed content can be matched to the send

What this skill does NOT do

  • Does not read or manage email (this is send-only)
  • Does not read local files or support --body-file
  • Does not write any files
  • Does not make network calls other than to api.resend.com
  • Does not auto-update
  • Does not support attachments in this version

Output

On success:

sent to [email protected] (subject: Hello) - resend-id: c8f43f2a-...

On failure, clear error on stderr with a non-zero exit code.

Troubleshooting

  • "RESEND_API_KEY not set" - get one at https://resend.com and export RESEND_API_KEY in the process environment
  • HTTP 401 - API key is invalid or was revoked
  • HTTP 403 - API key doesn't have send permission (check dashboard)
  • HTTP 422 - the from address isn't verified on your Resend account (use [email protected] or verify your own domain)
  • HTTP 429 - rate limited (free tier: 100/day, 3,000/month)
  • Network error - transient; retry

Free tier limits

  • 3,000 emails/month
  • 100 emails/day
  • Sends from [email protected] (no domain needed)
  • For higher limits + custom domains, paid tiers start at $20/month
安全使用建议
Use this skill only when you intend to send email through Resend. Set a least-privilege RESEND_API_KEY, configure a narrow RESEND_ALLOWED_TO allowlist, review the dry-run payload, and only use --send after approving the exact recipient, subject, and body.
功能分析
Type: OpenClaw Skill Name: resend-send-native-node Version: 1.0.3 The skill is a well-structured utility for sending emails via the Resend API with multiple built-in safety guardrails. It defaults to a dry-run mode, requires an explicit --send flag for execution, and enforces a mandatory recipient allowlist via the RESEND_ALLOWED_TO environment variable to prevent unauthorized data exfiltration. The implementation in scripts/send.mjs uses native Node.js APIs with zero external dependencies and explicitly forbids reading local files via the command line to mitigate risks of accidental sensitive data leakage.
能力标签
cryptorequires-oauth-tokenrequires-sensitive-credentials
能力评估
Purpose & Capability
The stated purpose and code align: it sends outbound email through Resend only. Real email sending is externally mutating and should be reviewed carefully, but the artifacts disclose this.
Instruction Scope
The instructions require an explicit user request, drafting/reviewing the exact recipient, subject, and body, dry-run first, and --send only after approval.
Install Mechanism
There is no install script, package install, dependency download, or auto-update mechanism shown; the included Node script is directly inspectable.
Credentials
Real sends require RESEND_API_KEY and RESEND_ALLOWED_TO from the environment, which is proportionate for a Resend sender. The registry requirement fields under-declare this by listing no env vars or primary credential.
Persistence & Privilege
The code shows no file writes, persistence, background worker, attachment handling, local file reading, or credential storage; it reads the API key only from the process environment for real sends.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install resend-send-native-node
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /resend-send-native-node 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.3
Scanner-surface reduction: remove body-file support and local file reads; message body must be reviewed and passed with --body.
v1.0.2
Display-name consistency: remove parentheses from Native Node to match other jwestburg skills.
v1.0.1
Public-package hygiene: remove local .env credential fallback; use process environment only. Listing polished with PowerShell examples and ASCII-safe copy.
元数据
Slug resend-send-native-node
版本 1.0.3
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 3
常见问题

Resend Send Native Node 是什么?

Send email via Resend.com's HTTPS API - native Node.js, zero dependencies. Use when the user explicitly asks to email, send a message, mail a report, or deli... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 49 次。

如何安装 Resend Send Native Node?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install resend-send-native-node」即可一键安装,无需额外配置。

Resend Send Native Node 是免费的吗?

是的,Resend Send Native Node 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Resend Send Native Node 支持哪些平台?

Resend Send Native Node 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Resend Send Native Node?

由 jwestburg(@jwestburg)开发并维护,当前版本 v1.0.3。

💬 留言讨论