CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/mailpit-testing

The email-testing home: configures and runs Mailpit - modern dev-mailbox server for SMTP testing with built-in REST API for assertions; default SMTP `1025` + Web UI `8025`; Chaos mode (configurable SMTP errors for resilience testing), message tagging, search filters. Carries the end-to-end email-flow workflow (multipart body, link-rewrite resolution, unsubscribe per RFC 8058, bounce + complaint webhooks) in references/email-flows.md and the legacy MailHog capture patterns + migration path in references/mailhog-legacy.md. Use when developing or testing email-sending code locally / in CI - SMTP capture, full-flow assertions, or migrating an existing MailHog deployment.

72

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

Quality

Content

85%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 well-structured skill body: sequenced steps, copy-paste-ready code, an explicit poll-before-assert validation loop, an anti-patterns table for error recovery, and proper delegation of deep content to three one-level-deep reference files. The two weaknesses are duplicated doc quotes (Steps 5–6 repeat the Overview) and a Chaos-mode step that describes use cases without any concrete command or API example.

Suggestions

Remove the verbatim re-quotes of the Overview's doc text in Steps 5 and 6 ("Chaos feature to enable configurable SMTP errors..." and "automated tagging using filtering and 'plus addressing'") — state each capability once and spend the tokens on a concrete example instead.

Add an executable Chaos-mode example (e.g., the chaos API/config call or a `--tag` flag invocation) to Step 5 so the resilience-testing use cases have something to run, rather than "consult the live docs for current Chaos API shape".

Trim Step 3's framework-equivalent list (Rails/Django/Spring/nodemailer) to one example plus a one-line note that equivalent SMTP env vars exist — Claude already knows these mappings.

DimensionReasoningScore

Conciseness

The body is dominated by executable commands and code rather than prose, but there are minor instances of over-explanation: Steps 5 and 6 re-quote the Overview's doc text verbatim ("Chaos feature to enable configurable SMTP errors..." appears twice), and Step 3 enumerates Rails/Django/Spring equivalents Claude already knows. These could be trimmed without losing guidance, fitting the "efficient with minor over-explanation" anchor rather than the lean anchor.

4 / 5

Actionability

Mostly executable guidance: brew/docker install commands, YAML SMTP config, a complete polling helper with timeout, tag-isolation code, and a CI services block — all copy-paste ready. The gap is Step 5 (Chaos mode), a headline feature that gets zero concrete commands or API calls and defers entirely to "consult the live docs for current Chaos API shape".

4 / 5

Workflow Clarity

Steps 1–7 are clearly sequenced (install → start → configure → assert → chaos → tagging → CI) with an explicit validation checkpoint: poll-until-message-lands with timeout before asserting (Step 4's poll_for_message raises AssertionError on timeout). The anti-patterns table provides error-recovery feedback (failure → why → fix), and the one destructive/batch operation (DELETE /api/v1/messages) is paired with its false-positive rationale. This matches the anchor for explicit validation, feedback loops, and checklists.

5 / 5

Progressive Disclosure

The body is a lean overview-plus-steps document that delegates depth to three real, verified bundle files — references/email-flows.md (full-flow workflow), references/mailhog-legacy.md (legacy capture/migration), and references/migrating-to-mailpit.md — each one level deep and clearly signaled in both "When to use" and the "References" section. No detailed reference material is improperly inlined; navigation is easy.

5 / 5

Total

18

/

20

Passed

Description

92%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 dense, well-structured description: third-person, explicit what-and-when, concrete capabilities with ports and protocol specifics, and unique triggers (Mailpit/MailHog, SMTP capture). Its only weakness is slightly missing natural synonyms like "fake/mock SMTP server" and a length that borders on padded.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions with comprehensive coverage: "configures and runs Mailpit", "REST API for assertions", "Chaos mode (configurable SMTP errors for resilience testing)", "message tagging, search filters", and "migration path". It stays in third-person voice ("configures and runs", "carries") and every clause adds concrete capability or configuration detail (ports 1025/8025, RFC 8058, webhooks) rather than abstract filler.

5 / 5

Completeness

Both halves are explicit: the "what" (configure/run Mailpit, REST assertions, Chaos, tagging, MailHog migration) and a concrete "Use when developing or testing email-sending code locally / in CI - SMTP capture, full-flow assertions, or migrating an existing MailHog deployment" clause. This matches the anchor for clearly and explicitly answering both what and when with concrete trigger phrases.

5 / 5

Trigger Term Quality

Good natural keyword coverage: "testing email-sending code locally / in CI", "SMTP capture", "full-flow assertions", "migrating an existing MailHog deployment", plus tool names (Mailpit, MailHog). A few common user phrasings are missing — e.g., "fake SMTP server", "mock SMTP", "catch outgoing email" — so it falls just short of the comprehensive-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

It claims a clear niche ("The email-testing home") with distinct triggers — Mailpit, MailHog, SMTP capture, ports 1025/8025, RFC 8058 unsubscribe — that no adjacent skill (production email providers, deliverability services) would claim. Overlap risk is minimal; the MailHog migration trigger is uniquely its own.

5 / 5

Total

19

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents