
Resend Cli
Run Resend email, domains, webhooks, and React Email sends from the terminal or CI with the correct non-interactive CLI flags.
Install
npx skills add https://github.com/resend/resend-skills --skill resend-cliWhat is this skill?
- Full `resend` CLI surface: send, domains, contacts, broadcasts, templates, webhooks, API keys, logs, automations, events
- React Email `.tsx` templates via `--react-email` send and preview paths
- Non-interactive flag contract documented to avoid silent failures in agents and CI/CD
- RESEND_API_KEY and optional RESEND_PROFILE multi-account auth
- MIT-licensed resend-cli install via npm with OpenClaw-style env metadata
Adoption & trust: 2.7k installs on skills.sh; 129 GitHub stars; 2/3 security scanners passed (skills.sh audits).
Recommended Skills
Entra App Registrationmicrosoft/azure-skills
Azure Aigatewaymicrosoft/azure-skills
Lark Openapi Explorerlarksuite/cli
Supabasesupabase/agent-skills
Firebase Auth Basicsfirebase/agent-skills
Firebase Data Connectfirebase/agent-skills
Journey fit
Common Questions / FAQ
Is Resend Cli safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Resend Cli
# Resend CLI ## Installation Before running any `resend` commands, check whether the CLI is installed: ```bash resend --version ``` If the command is not found, install it using one of the methods below: **cURL (macOS / Linux):** ```bash curl -fsSL https://resend.com/install.sh | bash ``` **Homebrew (macOS / Linux):** ```bash brew install resend/cli/resend ``` **Node.js:** ```bash npm install -g resend-cli ``` **PowerShell (Windows):** ```powershell irm https://resend.com/install.ps1 | iex ``` After installing, verify: ```bash resend --version ``` ## Agent Protocol The CLI auto-detects non-TTY environments and outputs JSON — no `--json` flag needed. **Rules for agents:** - Supply ALL required flags. The CLI will NOT prompt when stdin is not a TTY. - Pass `--quiet` (or `-q`) to suppress spinners and status messages. - Exit `0` = success, `1` = error. - Error JSON goes to stderr, success JSON goes to stdout: ```json {"error":{"message":"...","code":"..."}} ``` - Use `--api-key` or `RESEND_API_KEY` env var. Never rely on interactive login. - All `delete`/`rm` commands require `--yes` in non-interactive mode. ## Authentication Auth resolves: `--api-key` flag > `RESEND_API_KEY` env > config file (`resend login --key`). Use `--profile` or `RESEND_PROFILE` for multi-profile. ## Global Flags | Flag | Description | |------|-------------| | `--api-key <key>` | Override API key for this invocation | | `-p, --profile <name>` | Select stored profile | | `--json` | Force JSON output (auto in non-TTY) | | `-q, --quiet` | Suppress spinners/status (implies `--json`) | ## Available Commands | Command Group | What it does | |--------------|-------------| | `emails` | send, get, list, batch, cancel, update | | `emails receiving` | list, get, attachments, forward, listen | | `domains` | create, verify, update, delete, list | | `logs` | list, get, open | | `api-keys` | create, list, delete | | `autom