Skip to content

Configure email

Markdown

.agents/skills/configure-email/SKILL.md — 119 lines of instruction that ship inside the starter. This page is generated from it, so it says what the skill does without republishing it.

The skill description, verbatim — this is the text an agent matches your request against:

Configure transactional email for a ZeroDirs directory site — the submitter receipt, the admin notification and the approval mail. Covers the default Cloudflare Email Sending path (the EMAIL binding, enabling a sending domain, the Workers Paid requirement), switching to Resend as the free-plan alternative (domain verification, RESEND_API_KEY via pnpm cf:secrets), the emailFrom rule, adminNotify, and how to verify with the outbox and the /admin/ configuration report. Use when asked to set up email, switch email providers, fix mail that is not arriving, or explain why submitters get no confirmation.

  1. Decide first
  2. Path A — Cloudflare Email Sending (the shipped default)
  3. Path B — Resend
  4. Verify
  5. What not to do
Terminal window
pnpm exec wrangler email sending enable acme.com
pnpm exec wrangler email sending dns get acme.com # shows the records; wait until they resolve
pnpm dev
pnpm check:config
pnpm cf:typegen
pnpm check
pnpm cf:secrets RESEND_API_KEY # one prompt; its help text says where the key comes from
pnpm exec wrangler email routing addresses create you@example.com

site.config.ts · src/server/email/index.ts · wrangler.jsonc · src/server/email/resend.ts · .dev.vars.example · src/server/env.ts

Skills load themselves — you describe the outcome, not the skill. “Add a Compliance category with an icon and seed it” is enough for an agent that can see .agents/skills/; Claude Code reads .claude/skills/, which pnpm skills:sync mirrors from .agents/ on every install. See Working with an agent.