CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

email

Email sending integration guidance — Resend (native Vercel Marketplace) with React Email templates. Covers API setup, transactional emails, domain verification, and template patterns. Use when sending emails from a Vercel-deployed application.

63

Quality

79%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/vercel/skills/email/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

Highly actionable content with copy-paste-ready code across all the main Resend + React Email patterns, undermined by inline version/date-stamped details that will go stale, missing validation loops for batch and webhook flows, and a monolithic single-file structure that inlines advanced material better kept in reference files.

Suggestions

Remove or relocate time-sensitive details (SDK 6.9.x, React Email 5.2.9, 'February 2026' Broadcast heading) into a clearly-labeled versions/deprecations section, and drop the download-count and maintenance-status chatter.

Add validation checkpoints for risky flows: verify the webhook payload signature before processing events, and show per-recipient error handling after resend.batch.send instead of discarding errors.

Split advanced patterns (Broadcast API, Webhook Management API, suppressed-status notes) into a references file and keep SKILL.md as a concise overview that links to it.

DimensionReasoningScore

Conciseness

The body is mostly lean code with minimal prose, but it carries several pieces of unnecessary time-sensitive padding inline — 'Current Resend SDK version: **6.9.x** (actively maintained, weekly downloads ~1.6M)', 'React Email 5.x (latest 5.2.9, @react-email/components 1.0.8)', and a 'Broadcast API (February 2026)' date heading — none placed in a deprecation/versions section, which the rubric explicitly penalizes. The download-count and maintenance chatter could be trimmed entirely. Not a 2, because the core content is executable code rather than explanation of concepts Claude already knows.

3 / 5

Actionability

Nearly every section is copy-paste-ready executable code: client init, two complete API routes, a full React Email template, CLI commands ('npx react-email dev', 'npx react-email@latest resend setup'), batch sending, a server action, idempotency headers, and webhook handlers. Specific examples cover the common sending cases end-to-end, matching the 5 anchor.

5 / 5

Workflow Clarity

Setup → send → template → verify-domain → patterns is a coherent topical order and domain verification is a numbered sequence with a wait step, but validation checkpoints are largely absent: the batch sending and broadcast sections have no feedback loop, and the webhook route does no signature verification before trusting event payloads. Per the rubric's cap, missing validation in batch operations holds this at 3 even though the individual sections are clear.

3 / 5

Progressive Disclosure

This is a ~350-line single-file skill with no bundle files (no references/, scripts/, or assets/ exist) and no external reference files; everything is inline under good section headers. The 5-anchor exception for under-50-line skills doesn't apply, and content that would naturally live in a reference file — the Broadcast API, Webhook Management API, and suppressed-status details — is inlined in the main body, matching the 3 anchor ('content that should be separate is inline').

3 / 5

Total

14

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete coverage areas, an explicit 'Use when' trigger clause, and a well-differentiated Resend + Vercel + React Email niche. The only soft spots are a slightly generic opening phrase ('Email sending integration guidance') and a handful of missing natural trigger synonyms such as 'newsletter' or 'contact form'.

DimensionReasoningScore

Specificity

The description lists several specific coverage areas — 'API setup, transactional emails, domain verification, and template patterns' — anchored to concrete technologies (Resend, React Email, Vercel Marketplace). It falls just below the 5 anchor because these are coverage domains rather than fully concrete actions (no verbs like 'send', 'verify', 'render'), and 'Email sending integration guidance' is slightly generic.

4 / 5

Completeness

It explicitly answers both questions: the 'what' ('Email sending integration guidance — Resend... Covers API setup, transactional emails, domain verification, and template patterns') and the 'when' ('Use when sending emails from a Vercel-deployed application'). The 'when' clause contains a concrete, natural trigger phrase, matching the 5 anchor.

5 / 5

Trigger Term Quality

Good natural keyword coverage: 'sending emails', 'transactional emails', 'domain verification', 'template patterns', plus product names Resend and React Email. It misses several common variations users would say — 'newsletter', 'contact form', 'email API', 'SMTP' — so it does not reach the comprehensive 5 anchor.

4 / 5

Distinctiveness Conflict Risk

A clear niche defined by a specific stack — Resend on Vercel with React Email — with distinct product-name triggers ('Resend', 'React Email', 'Vercel Marketplace'). Overlap risk with generic email/mail skills is minimal, matching the 5 anchor.

5 / 5

Total

18

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository

openai/plugins

Path

plugins/vercel/skills/email/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.