{
  "schemaVersion": "1.0",
  "item": {
    "slug": "resend-email",
    "name": "resend-email",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/vladchatware/resend-email",
    "canonicalUrl": "https://clawhub.ai/vladchatware/resend-email",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/resend-email",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=resend-email",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/resend-inbound.js",
      "references/voice-bureaucrat.md",
      "scripts/send.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/resend-email"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/resend-email",
    "agentPageUrl": "https://openagent3.xyz/skills/resend-email/agent",
    "manifestUrl": "https://openagent3.xyz/skills/resend-email/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/resend-email/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Resend Email",
        "body": "Send emails from any Resend-verified domain using the Resend API."
      },
      {
        "title": "Quick Start",
        "body": "# Send simple email\nbash skills/resend-email/scripts/send.sh \\\n  --to \"recipient@example.com\" \\\n  --subject \"Subject Line\" \\\n  --body \"Email body text\"\n\n# With custom from address\nbash skills/resend-email/scripts/send.sh \\\n  --to \"recipient@example.com\" \\\n  --from \"you@yourdomain.com\" \\\n  --subject \"Subject\" \\\n  --body \"Body\""
      },
      {
        "title": "Direct API Call",
        "body": "curl -X POST 'https://api.resend.com/emails' \\\n  -H \"Authorization: Bearer $(cat ~/.config/resend/credentials.json | jq -r .api_key)\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"from\": \"noreply@yourdomain.com\",\n    \"to\": [\"recipient@example.com\"],\n    \"subject\": \"Subject\",\n    \"text\": \"Plain text body\"\n  }'"
      },
      {
        "title": "Configuration",
        "body": "Credentials: ~/.config/resend/credentials.json\nDomain: any Resend-verified domain (configured in your Resend account)\nDefault from: set in credentials.json (e.g., noreply@yourdomain.com)"
      },
      {
        "title": "Receiving (Webhook + Clawdbot)",
        "body": "Use this when you want Resend inbound emails to trigger Clawdbot automatically."
      },
      {
        "title": "1) Enable Clawdbot hooks",
        "body": "{\n  hooks: {\n    enabled: true,\n    token: \"<shared-secret>\",\n    path: \"/hooks\",\n    transformsDir: \"~/.clawdbot/hooks\",\n    mappings: [\n      {\n        id: \"resend\",\n        match: { path: \"resend\" }, // relative to /hooks (no leading slash)\n        action: \"agent\",\n        deliver: true,\n        channel: \"telegram\",\n        transform: { module: \"resend-inbound.js\", export: \"transform\" }\n      }\n    ]\n  }\n}\n\nImportant: match.path is relative to /hooks (e.g., /hooks/resend → resend)."
      },
      {
        "title": "2) Expose the webhook (Tailscale Funnel)",
        "body": "If your gateway is local-only, expose it via Funnel:\n\n/Applications/Tailscale.app/Contents/MacOS/Tailscale funnel --bg 18789\n\nMagicDNS + HTTPS certs must be enabled in your tailnet for TLS to work."
      },
      {
        "title": "3) Configure Resend webhook",
        "body": "In Resend → Webhooks:\n\nURL: https://<your-tailnet-host>.ts.net/hooks/resend?token=<shared-secret>\nEvent: email.received\n\nResend cannot set custom headers, so use ?token=."
      },
      {
        "title": "4) Fetch full email content",
        "body": "Resend webhooks do not include body text. Use the receiving API:\n\nGET https://api.resend.com/emails/receiving/:id\n\n(See resend-inbound.js for an example transform that fetches the body.)"
      },
      {
        "title": "Email Voice: The Bureaucrat",
        "body": "See references/voice-bureaucrat.md for the default email tone.\n\nKey traits:\n\nWarm, patient, endlessly polite\nPassive voice (\"it is recommended that…\")\nOfficial jargon (\"compliance framework\", \"pursuant to section 14(b)\")\nEverything framed as \"best practices\"\nBullet points start with \"Please note that…\"\nEnds with \"We appreciate your cooperation\"\n\nTone: DMV supervisor who smiles while denying your form × LinkedIn thought-leader who genuinely believes bureaucracy is beautiful.\n\nWhen drafting emails, apply this voice unless instructed otherwise."
      },
      {
        "title": "HTML Emails",
        "body": "curl -X POST 'https://api.resend.com/emails' \\\n  -H \"Authorization: Bearer $RESEND_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"from\": \"noreply@yourdomain.com\",\n    \"to\": [\"recipient@example.com\"],\n    \"subject\": \"Subject\",\n    \"html\": \"<h1>Hello</h1><p>HTML content</p>\"\n  }'"
      },
      {
        "title": "Notes",
        "body": "send.sh preserves line breaks in --body (no literal \\n output).\nUse --html for rich formatting; default is plain text."
      },
      {
        "title": "Common Patterns",
        "body": "Transactional notification:\n\n# Order confirmation, welcome email, etc.\nbash skills/resend-email/scripts/send.sh \\\n  --to \"customer@example.com\" \\\n  --subject \"Your Request Has Been Processed\" \\\n  --body \"$(cat <<'EOF'\nDear Valued Individual,\n\nPlease note that your recent submission has been received and processed in accordance with standard operating procedures.\n\nIt should be understood that all requests are handled in the order received, pursuant to our established compliance framework.\n\nWe appreciate your cooperation in maintaining an orderly process.\n\nWarm regards,\nClawd\nAgent Services Division\nEOF\n)\"\n\nReply to inquiry:\nApply bureaucrat voice. Be helpful while maintaining the veneer of official procedure."
      }
    ],
    "body": "Resend Email\n\nSend emails from any Resend-verified domain using the Resend API.\n\nQuick Start\n# Send simple email\nbash skills/resend-email/scripts/send.sh \\\n  --to \"recipient@example.com\" \\\n  --subject \"Subject Line\" \\\n  --body \"Email body text\"\n\n# With custom from address\nbash skills/resend-email/scripts/send.sh \\\n  --to \"recipient@example.com\" \\\n  --from \"you@yourdomain.com\" \\\n  --subject \"Subject\" \\\n  --body \"Body\"\n\nDirect API Call\ncurl -X POST 'https://api.resend.com/emails' \\\n  -H \"Authorization: Bearer $(cat ~/.config/resend/credentials.json | jq -r .api_key)\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"from\": \"noreply@yourdomain.com\",\n    \"to\": [\"recipient@example.com\"],\n    \"subject\": \"Subject\",\n    \"text\": \"Plain text body\"\n  }'\n\nConfiguration\nCredentials: ~/.config/resend/credentials.json\nDomain: any Resend-verified domain (configured in your Resend account)\nDefault from: set in credentials.json (e.g., noreply@yourdomain.com)\nReceiving (Webhook + Clawdbot)\n\nUse this when you want Resend inbound emails to trigger Clawdbot automatically.\n\n1) Enable Clawdbot hooks\n{\n  hooks: {\n    enabled: true,\n    token: \"<shared-secret>\",\n    path: \"/hooks\",\n    transformsDir: \"~/.clawdbot/hooks\",\n    mappings: [\n      {\n        id: \"resend\",\n        match: { path: \"resend\" }, // relative to /hooks (no leading slash)\n        action: \"agent\",\n        deliver: true,\n        channel: \"telegram\",\n        transform: { module: \"resend-inbound.js\", export: \"transform\" }\n      }\n    ]\n  }\n}\n\n\nImportant: match.path is relative to /hooks (e.g., /hooks/resend → resend).\n\n2) Expose the webhook (Tailscale Funnel)\n\nIf your gateway is local-only, expose it via Funnel:\n\n/Applications/Tailscale.app/Contents/MacOS/Tailscale funnel --bg 18789\n\n\nMagicDNS + HTTPS certs must be enabled in your tailnet for TLS to work.\n\n3) Configure Resend webhook\n\nIn Resend → Webhooks:\n\nURL: https://<your-tailnet-host>.ts.net/hooks/resend?token=<shared-secret>\nEvent: email.received\n\nResend cannot set custom headers, so use ?token=.\n\n4) Fetch full email content\n\nResend webhooks do not include body text. Use the receiving API:\n\nGET https://api.resend.com/emails/receiving/:id\n\n\n(See resend-inbound.js for an example transform that fetches the body.)\n\nEmail Voice: The Bureaucrat\n\nSee references/voice-bureaucrat.md for the default email tone.\n\nKey traits:\n\nWarm, patient, endlessly polite\nPassive voice (\"it is recommended that…\")\nOfficial jargon (\"compliance framework\", \"pursuant to section 14(b)\")\nEverything framed as \"best practices\"\nBullet points start with \"Please note that…\"\nEnds with \"We appreciate your cooperation\"\n\nTone: DMV supervisor who smiles while denying your form × LinkedIn thought-leader who genuinely believes bureaucracy is beautiful.\n\nWhen drafting emails, apply this voice unless instructed otherwise.\n\nHTML Emails\ncurl -X POST 'https://api.resend.com/emails' \\\n  -H \"Authorization: Bearer $RESEND_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"from\": \"noreply@yourdomain.com\",\n    \"to\": [\"recipient@example.com\"],\n    \"subject\": \"Subject\",\n    \"html\": \"<h1>Hello</h1><p>HTML content</p>\"\n  }'\n\nNotes\nsend.sh preserves line breaks in --body (no literal \\n output).\nUse --html for rich formatting; default is plain text.\nCommon Patterns\n\nTransactional notification:\n\n# Order confirmation, welcome email, etc.\nbash skills/resend-email/scripts/send.sh \\\n  --to \"customer@example.com\" \\\n  --subject \"Your Request Has Been Processed\" \\\n  --body \"$(cat <<'EOF'\nDear Valued Individual,\n\nPlease note that your recent submission has been received and processed in accordance with standard operating procedures.\n\nIt should be understood that all requests are handled in the order received, pursuant to our established compliance framework.\n\nWe appreciate your cooperation in maintaining an orderly process.\n\nWarm regards,\nClawd\nAgent Services Division\nEOF\n)\"\n\n\nReply to inquiry: Apply bureaucrat voice. Be helpful while maintaining the veneer of official procedure."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/vladchatware/resend-email",
    "publisherUrl": "https://clawhub.ai/vladchatware/resend-email",
    "owner": "vladchatware",
    "version": "1.0.3",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/resend-email",
    "downloadUrl": "https://openagent3.xyz/downloads/resend-email",
    "agentUrl": "https://openagent3.xyz/skills/resend-email/agent",
    "manifestUrl": "https://openagent3.xyz/skills/resend-email/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/resend-email/agent.md"
  }
}