CtrlK
BlogDocsLog inGet started
Tessl Logo

email-best-practices

Use when building email features, emails going to spam, high bounce rates, setting up SPF/DKIM/DMARC authentication, implementing email capture, ensuring compliance (CAN-SPAM, GDPR, CASL), handling webhooks, retry logic, or deciding transactional vs marketing.

55

Quality

62%

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 ./.agents/skills/email-best-practices/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

52%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.

A clean, well-organized overview whose fatal flaw is that its entire value proposition — 10 referenced resource files — is absent from the bundle, leaving broken links and no inline substance. As written it functions only as an index to nothing. The scenario paths and architecture diagram show good structural thinking that would score well if the references existed.

Suggestions

Ship the 10 referenced files under ./resources/ (or repoint links to an existing directory) — every link in the Quick Reference table and Start Here section currently 404s (progressive_disclosure).

Add minimal inline actionable content (e.g. the three SPF/DKIM/DMARC DNS records, or a retry-with-idempotency-key code snippet) so the body is not pure navigation (actionability).

Trim the ASCII architecture diagram or fold it into a reference file, and deduplicate the links repeated between Quick Reference and Start Here (conciseness).

DimensionReasoningScore

Conciseness

Lean throughout: no explanations of known concepts, a tight reference table, and short scenario paths. Not 5 because the 19-line ASCII architecture diagram is borderline elaboration for a navigation-only document, and the Quick Reference links are repeated in the Start Here section.

4 / 5

Actionability

The body contains no code, commands, DNS records, or concrete steps — it is pure navigation ('Check Deliverability first'), and every linked ./resources/*.md file is missing from the bundle, so the guidance dead-ends. Not 1 because the scenario-based pointers are structured and specific about which resource fits which problem.

2 / 5

Workflow Clarity

'Start Here' provides clear scenario-to-path sequences (Capture -> Compliance -> Marketing; Deliverability -> Reliability -> Webhooks -> List Management) and the diagram shows pipeline ordering. Not 5 because there are no validation checkpoints or feedback loops anywhere in the flow.

4 / 5

Progressive Disclosure

The structure is well-designed on paper (one-level-deep, clearly signaled references via a Quick Reference table), but all 10 referenced ./resources/*.md targets do not exist in the bundle, so per the guideline to score against the actual bundle structure, navigation fails entirely at runtime. Not 1 because the in-body organization and signaling are themselves clear and conventional.

2 / 5

Total

12

/

20

Passed

Description

72%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 trigger-rich description with excellent natural keywords and a clear niche, but it is entirely 'when' with no explicit 'what'. The 'Use when...' clause is exemplary in breadth; adding a one-line capability statement would lift completeness and specificity.

Suggestions

Lead with a capability statement before the trigger clause, e.g. 'Guidance for building deliverable, compliant email systems: DNS authentication, double opt-in capture, suppression lists, retry logic. Use when...'.

Add 'deliverability' and 'inbox placement' as synonyms to broaden natural trigger coverage (trigger_term_quality).

State explicitly that the skill covers both transactional and marketing email so the 'what' is not only implied by the trigger list (completeness).

DimensionReasoningScore

Specificity

Names the email domain and many concrete topics (SPF/DKIM/DMARC, CAN-SPAM/GDPR/CASL, webhooks, retry logic), but they are framed as trigger scenarios in gerund form rather than statements of what the skill does. Not 4 because no actual capability/action list is given; not 2 because the domain and topics are specific, not generic.

3 / 5

Completeness

Has an explicit, rich 'Use when...' trigger clause, but never states what the skill provides. Anchor 2 covers 'only when present without what', yet the 'when' here is far more explicit than that anchor's example and the 'what' is strongly implied by the listed topics, so it sits between anchors 2 and 4.

3 / 5

Trigger Term Quality

Strong natural phrasings users would actually say ('emails going to spam', 'high bounce rates', 'transactional vs marketing', named regulations). Falls short of anchor 5's 'comprehensive coverage including synonyms' because common variants like 'deliverability' or 'inbox placement' are absent.

4 / 5

Distinctiveness Conflict Risk

Clear niche (email deliverability, compliance, and sending reliability) with distinct trigger phrases like SPF/DKIM/DMARC and CAN-SPAM/GDPR/CASL; minimal overlap risk with other skills.

5 / 5

Total

15

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 19 missing

Warning

Total

15

/

16

Passed

Repository
novuhq/novu
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.