Agent skill

Resend Setup

by vellum-ai in vellum-ai/vellum-assistant

Set up and send emails via a user-provided Resend account (BYO email provider)

MITAuto-check passedBackend & APIs

Install Resend Setup

skills CLI
$ npx skills add vellum-ai/vellum-assistant --skill resend-setup -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install vellum-ai/vellum-assistant resend-setup --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/vellum-ai/vellum-assistant.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/resend-setup .claude/skills/resend-setup && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
resend-setup
GitHub stars
1.4k
Token cost
~1.5k tokens
SKILL.md length
597 words
Files
4 (incl. scripts)
Skills in repo
108
Repo updated
First seen
Licence
MIT

At a glance

Set up and send emails via a user-provided Resend account (BYO email provider)

  • Works in 6 steps: Check Existing Configuration → Store the API Key → Detect the Domain → …
  • Tasks that involve Webhooks
  • SKILL.md covers Overview, Setup, Sending Email and Important Notes
  • Runs TypeScript scripts from its folder; calls bun and curl; reaches api.resend.com

What it does

Resend Setup is an agent skill from vellum-ai/vellum-assistant. Set up and send emails via a user-provided Resend account (BYO email provider)

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts (for example `scripts/check-config.ts`, `scripts/setup-webhook.ts` and `scripts/store-api-key.ts`). Compatibility notes: Designed for Vellum personal assistants

It sits in Backend & APIs, covering Webhooks. The repository describes itself as: An AI Assistant that’s easy to setup, does your work 24/7, knows your preferences and gets better over time. The licence is MIT.

When your agent uses it

  • Tasks that involve Webhooks

Example prompts

  • “/resend-setup”

Requirements

  • Node.js
  • Compatibility (from SKILL.md): Designed for Vellum personal assistants

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Check Existing Configuration
  2. Store the API Key
  3. Detect the Domain
  4. Verify the Connection
  5. Webhook Setup (for receiving email)
  6. Report Success

What it can do on your machine

Read from SKILL.md and the folder at commit 844117a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 3 files in scripts/ (TypeScript), which the agent can run.

    Shell commands in SKILL.md call:

    • bun
    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.resend.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Vellum personal assistants

    From compatibility in the SKILL.md frontmatter.

Context cost

Resend Setup loads about 1.5k tokens when it runs. Until then it costs about 23 tokens; SKILL.md has 597 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~23
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from vellum-ai/vellum-assistant at commit 844117a, republished under its MIT licence (© vellum-ai). 597 words, ~1,525 tokens.

Download SKILL.mdSave it as .claude/skills/resend-setup/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
resend-setup
description
Set up and send emails via a user-provided Resend account (BYO email provider)
compatibility
Designed for Vellum personal assistants
metadata.emoji
📤

Overview

Send emails through the user's own Resend account. The user provides their Resend API key and you send via their domain.

Setup

Step 0: Check Existing Configuration

Before starting, check whether Resend is already configured:

bash
bun skills/resend-setup/scripts/check-config.ts

The script outputs JSON: { "configured": boolean, "hasApiKey": boolean, "hasWebhookSecret": boolean, "details": string }.

  • If configured is true — Resend is already set up. Offer to verify the connection or reconfigure.
  • If configured is false — continue to Step 1.
Step 1: Store the API Key

Run the store script to securely collect the API key:

bash
bun skills/resend-setup/scripts/store-api-key.ts

The script opens a secure credential prompt, stores the key with the correct injection templates, and exits. If it exits 0, the key is stored. Exit code 130 means the user cancelled the prompt — nothing was stored; that's a valid choice, not an error, so ask whether they'd like to try again rather than treating it as a failure. Any other non-zero exit is a real failure. Never ask for the key in chat.

Step 2: Detect the Domain

After storing the API key, automatically detect the user's domain — don't ask them for it. Call the Resend Domains API:

bash
curl -s https://api.resend.com/domains \
  -H "Content-Type: application/json"

Run this with network_mode: "proxied" and the resend credential so the Authorization header is injected automatically. The response contains a data array of domain objects with name and status fields. Pick the first domain with "status": "verified" (or the only domain if there's just one). If no verified domains are found, tell the user they need to verify a domain in their Resend dashboard first.

Use hi@<domain> as the default sender address. Remember the domain for future sends.

Step 3: Verify the Connection

Send a test request to confirm the API key works:

bash
curl -s https://api.resend.com/domains \
  -H "Content-Type: application/json"

Run with network_mode: "proxied" and the resend credential. A successful response (HTTP 200) with domain data confirms the connection.

Step 4: Webhook Setup (for receiving email)

If the user also wants to receive emails via Resend, run the webhook setup script:

bash
bun skills/resend-setup/scripts/setup-webhook.ts --domain "<verified domain>"

This script:

  1. Registers a callback URL via the webhooks system
  2. Creates the webhook in Resend via their API
  3. Automatically stores the returned signing secret in the credential vault

If the script fails because no public base URL is configured (self-hosted only), load the public-ingress skill to walk the user through setting one up, then retry.

Show full SKILL.md (218 more words)Show less
Step 5: Report Success

Summarize with the completed checklist:

"Setup complete! ✅ API key configured ✅ Domain detected: <domain> ✅ Connection verified {webhook_line}

Default sender: hi@<domain>"

For {webhook_line}:

  • If webhook was set up: ✅ Webhook configured for inbound email
  • If skipped: ⬜ Webhook — run setup again to enable inbound email

Sending Email

Use bash with curl to call the Resend API. The credential proxy injects the Authorization: Bearer header automatically when using network_mode: "proxied" with the resend credential.

bash
curl -X POST https://api.resend.com/emails \
  -H "Content-Type: application/json" \
  -d '{
    "from": "Name <sender@example.com>",
    "to": ["recipient@example.com"],
    "subject": "Hello",
    "text": "Plain text body",
    "html": "<p>HTML body</p>"
  }'
API Parameters
ParameterTypeRequiredDescription
fromstring✅Sender address ("Name <email>" format)
tostring | string[]✅Recipient(s), max 50
subjectstring✅Email subject
textstringPlain text body
htmlstringHTML body
ccstring | string[]CC recipients
bccstring | string[]BCC recipients
reply_tostring | string[]Reply-to address
headersobjectCustom headers (e.g. In-Reply-To, References for threading)
Threading (replies)

To reply in a thread, include In-Reply-To and References headers:

json
{
  "from": "bot@example.com",
  "to": ["user@example.com"],
  "subject": "Re: Original subject",
  "text": "Reply body",
  "headers": {
    "In-Reply-To": "<original-message-id>",
    "References": "<original-message-id>"
  }
}
Response

Success returns { "id": "email-id" } with HTTP 200.

Errors return { "message": "error description" } with 4xx/5xx status.

Important Notes

  • The from address must be from a domain verified in the user's Resend account.
  • Default sender address is hi@<domain> — use this unless the user specifies otherwise.
  • Always confirm with the user before sending — never send without explicit permission.
  • Use text for plain text, html for rich formatting. Provide both when possible.
  • Rate limits depend on the user's Resend plan.

© vellum-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts) in skills/resend-setup of vellum-ai/vellum-assistant.

  • SKILL.md
  • scripts/check-config.ts
  • scripts/setup-webhook.ts
  • scripts/store-api-key.ts

Open the folder on GitHubat commit 844117a

Compare with similar skills

Resend Setup next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Resend Setup compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Resend Setup this skillvellum-ai/vellum-assistant1.4k—~1.5kAutomated safety check: PassMIT
Novu Design Workflownovuhq/novu40k—~2.6kAutomated safety check: PassCustom licence
Golivemikehasa/golive-skill1.2k—~13kAutomated safety check: NotesMIT
Stripe Appsfossasia/eventyay1.7k1 repos~3.6kAutomated safety check: PassApache-2.0
Dingtalk Messageagentscope-ai/ReMe3.6k—~1.6kAutomated safety check: PassApache-2.0
PR Review Provideryansongda/pay5.4k—~2.4kAutomated safety check: PassMIT

Similar skills

  • Design notification workflows the Novu way — choose channels, set severity, decide when a workflow is critical, configure digests, and route based on subscriber state.

    40k GitHub stars~2.6k tokensUpdated today
    Backend & APIsAuto-check passed
  • Golive

    mikehasa/golive-skill

    Take an agent-written app from repo to live production on the user's OWN accounts, with providers they choose (hosting, database, auth, payments, email, domain/DNS).

    1.2k GitHub stars~13k tokensUpdated 5 days ago
    Backend & APIsAuto-check: notes
  • Stripe Apps

    fossasia/eventyay

    A skill your agent uses when building, modifying, or reviewing a Stripe App — or when the user describes something that implies one (e.g.

    1.7k GitHub starsUsed in 1 repo~3.6k tokens
    Backend & APIsAuto-check passed
  • Dingtalk Message

    agentscope-ai/ReMe

    钉钉消息发送技能。支持企业内部机器人(批量单聊/群聊)和 Webhook 自定义机器人两种接入方式,支持多机器人管理,支持文本、Markdown、链接、ActionCard、FeedCard等多种消息类型。

    3.6k GitHub stars~1.6k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • PR Review Provider

    yansongda/pay

    A skill your agent uses when reviewing PRs that add or modify a payment Provider in yansongda/pay - covers plugin pipeline, multi-tenant safety, signature verification, docs, and naming conventions.

    5.4k GitHub stars~2.4k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Stripe Best Practices

    kanchengw/cnllm

    Guides Stripe integration decisions — API selection (Checkout Sessions vs PaymentIntents), Connect platform setup (Accounts v2, controller properties), billing/subscriptions, Treasury financial…

    175 GitHub starsUsed in 2 repos~925 tokens
    Backend & APIsAuto-check passed

More from vellum-ai/vellum-assistant

All 108 skills in this repo
  • Vellum GitHub App Setup

    vellum-ai/vellum-assistant

    Create and configure a GitHub App so the assistant can push commits, open PRs, and comment under its own bot identity.

    1.4k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Discord App Setup

    vellum-ai/vellum-assistant

    Connect a Discord bot to the assistant via the Discord Gateway with guided application creation and intent configuration

    1.4k GitHub stars~4.2k tokensUpdated today
    Auto-check passed
  • Sentry App Setup

    vellum-ai/vellum-assistant

    Create and configure a Sentry internal integration so the assistant can manage issues, alerts, and releases under its own identity

    1.4k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Memory Corpus Ingest

    vellum-ai/vellum-assistant

    Ingest a large dataset into memory as a skimmed map. An agent skill from vellum-ai/vellum-assistant.

    1.4k GitHub stars~3k tokensUpdated today
    Auto-check: notes
  • Plugin Builder

    vellum-ai/vellum-assistant

    A skill your agent uses when the user wants to build, scaffold, ship, or edit a Vellum plugin that bundles multiple surfaces (hooks, tools, skills, and more) into one installable package.

    1.4k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Slack App Setup

    vellum-ai/vellum-assistant

    Connect a Slack app to the Vellum Assistant via Socket Mode.

    1.4k GitHub stars~2.5k tokensUpdated today
    Auto-check: warnings

Categories

Questions about Resend Setup

What does Resend Setup do?

Set up and send emails via a user-provided Resend account (BYO email provider). Resend Setup is an agent skill from vellum-ai/vellum-assistant.

When should I use Resend Setup?

Resend Setup fits situations like: tasks that involve Webhooks.

How do I install Resend Setup in Claude Code?

Run `npx skills add vellum-ai/vellum-assistant --skill resend-setup -a claude-code`. Or copy the skill folder (skills/resend-setup in vellum-ai/vellum-assistant) into .claude/skills/resend-setup in your project. Claude Code loads it when a task matches its description.

How do I install Resend Setup in Codex?

Run `npx skills add vellum-ai/vellum-assistant --skill resend-setup -a codex`. Or copy the skill folder (skills/resend-setup in vellum-ai/vellum-assistant) into .agents/skills/resend-setup in your project. Codex loads it when a task matches its description.

Can I use Resend Setup in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add vellum-ai/vellum-assistant --skill resend-setup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/resend-setup, .gemini/skills/resend-setup, .github/skills/resend-setup and .opencode/skills/resend-setup in your project.

What does Resend Setup need to run?

Going by SKILL.md and its folder, Resend Setup needs TypeScript for the scripts in its folder and the command-line tools its instructions call (bun and curl). Our summary lists: Node.js. Compatibility (from SKILL.md): Designed for Vellum personal assistants.

Does Resend Setup access the network?

SKILL.md names 1 domain. In commands or code: api.resend.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Resend Setup safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Resend Setup use?

Resend Setup is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Resend Setup use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Resend Setup?

Skills that share tags, products or a category with Resend Setup: Novu Design Workflow (novuhq/novu, 40k stars), Golive (mikehasa/golive-skill, 1.2k stars), Stripe Apps (fossasia/eventyay, 1.7k stars) and Dingtalk Message (agentscope-ai/ReMe, 3.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Resend Setup?

vellum-ai (a GitHub organization) maintains it in vellum-ai/vellum-assistant, which has 1,400 GitHub stars. The repository holds 108 skills in this directory. The repository was last updated on October 9, 2026.

Source: vellum-ai/vellum-assistant on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.