CtrlK
BlogDocsLog inGet started
Tessl Logo

agentmail

Email infrastructure for AI agents. Create accounts, send/receive emails, manage webhooks, and check karma balance via the AgentMail API.

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

High

Do not use without reviewing

Fix and improve this skill with Tessl

tessl review fix ./skills/agentmail/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%Scale 1-3

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

This is a comprehensive and highly actionable API skill with excellent executable examples covering both curl and TypeScript SDK usage. However, it suffers from being a monolithic document (~200 lines) that would benefit significantly from splitting into a concise overview with references to detailed sub-files. The workflow guidance is good but lacks explicit karma-check validation steps before costly operations, despite the document itself warning about this.

Suggestions

Split the content into multiple files: keep Quick Start and API table in SKILL.md, move TypeScript SDK to SDK.md, Types to TYPES.md, Common Patterns to PATTERNS.md, and Karma details to KARMA.md with clear navigation links.

Add an explicit karma-check step at the beginning of the common patterns workflows (e.g., check balance >= 11 before creating account + sending email) to match the document's own guidance about always checking balance.

Remove the 'When to Use' section and introductory paragraph — Claude can infer applicability from the API reference itself, saving tokens.

Consolidate the curl and SDK examples to avoid duplication — show one format in Quick Start and reference the other in a separate file.

DimensionReasoningScore

Conciseness

The skill is mostly efficient with good use of code examples and tables, but it's quite long (~200 lines) with some redundancy. The TypeScript SDK section largely duplicates the curl examples, the Types section could be in a separate reference file, and the 'Common patterns' section adds significant length. Some explanatory text like 'AgentMail gives AI agents real email addresses' and the 'When to Use' section explain things Claude can infer from the API itself.

2 / 3

Actionability

Excellent actionability throughout — every endpoint has a complete, executable curl example or TypeScript SDK call. The common patterns section provides copy-paste-ready polling loops for verification emails and reply waiting. Error handling includes specific error codes and status values.

3 / 3

Workflow Clarity

The common patterns section shows clear multi-step workflows (sign up + poll for verification, send + wait for reply), but there's no explicit karma-checking validation step before operations that cost karma, despite the document noting that karma=0 returns HTTP 402 and saying 'Always check balance before operations that cost karma.' This missing validation checkpoint in a workflow involving resource-consuming operations caps the score.

2 / 3

Progressive Disclosure

All content is in a single monolithic file with no references to external files. The full API reference table, TypeScript SDK examples, type definitions, common patterns, karma system details, and error handling are all inline. The Types section, detailed karma rules, and SDK reference would be better split into separate files with clear navigation links from the main SKILL.md.

1 / 3

Total

8

/

12

Passed

Description

67%Scale 1-3

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

The description is strong in specificity and distinctiveness, clearly naming the AgentMail API and listing concrete actions like creating accounts, sending/receiving emails, and managing webhooks. However, it lacks an explicit 'Use when...' clause, which weakens completeness, and could benefit from additional natural trigger terms users might employ when needing this skill.

Suggestions

Add a 'Use when...' clause, e.g., 'Use when the user needs to send or receive emails programmatically, set up email accounts for agents, or interact with the AgentMail API.'

Include additional natural trigger terms such as 'inbox', 'mail', 'email automation', 'programmatic email', or 'agent email' to improve discoverability.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: 'Create accounts, send/receive emails, manage webhooks, and check karma balance via the AgentMail API.' These are clear, actionable capabilities.

3 / 3

Completeness

Clearly answers 'what does this do' with specific actions, but lacks an explicit 'Use when...' clause or equivalent trigger guidance, which caps this dimension at 2 per the rubric guidelines.

2 / 3

Trigger Term Quality

Includes relevant terms like 'email', 'send/receive emails', 'webhooks', 'AgentMail API', and 'accounts', but misses common user variations like 'inbox', 'mail', 'SMTP', or 'email automation'. The term 'karma balance' is domain-specific and may not be naturally used by most users.

2 / 3

Distinctiveness Conflict Risk

The description is clearly scoped to the AgentMail API specifically, with a distinct niche of 'email infrastructure for AI agents.' This is unlikely to conflict with general email or communication skills due to the specific API and agent-focused framing.

3 / 3

Total

10

/

12

Passed

Validation

90%

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

Validation — 10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
popey/claude-code-skills
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.