CtrlK
BlogDocsLog inGet started
Tessl Logo

imap-smtp-email

Read and send email via IMAP/SMTP. Check for new/unread messages, fetch content, search mailboxes, mark as read/unread, and send emails with attachments. Works with any IMAP/SMTP server including Gmail, Outlook, 163.com, vip.163.com, 126.com, vip.126.com, 188.com, and vip.188.com.

61

Quality

73%

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

Fix and improve this skill with Tessl

tessl review fix ./SKILLs/imap-smtp-email/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 excellent executable command documentation and a well-gated send workflow. The main costs are length from inlined reference material (server table, config reference, troubleshooting) and an internal contradiction between the pre-configured-accounts guidance and the create-a-.env section.

Suggestions

Resolve the configuration contradiction: mark the "Configuration Reference" section explicitly as the legacy `.env` fallback (or move it to a reference file) so it does not contradict the "Configuration is Pre-configured" instruction.

Move the provider server table, `.env` reference, and Troubleshooting into a `references/servers.md` (or similar) file, leaving SKILL.md as a lean command overview — the provider list currently appears three times in one file.

Trim Security Notes and the 163.com callout to a single authoritative mention instead of repeating the authorization-code guidance in three places.

DimensionReasoningScore

Conciseness

The command documentation is tight, but the body spends tokens on things Claude already knows or that duplicate other sections: the "Common Email Servers" host/port table, the annotated `.env` reference re-explaining TLS ports ("587 for STARTTLS, 465 for SSL"), Security Notes repeating the frontmatter provider list, and the provider roster appearing three times (intro line, table, 163.com callout). This is 'mostly efficient but includes some unnecessary explanation or could be tightened' — not 2, since there is no conceptual padding about what email or IMAP is, and every section does carry operational content.

3 / 5

Actionability

Every subcommand has copy-paste-ready invocations with flags, defaults, and option semantics (`node scripts/imap.js check [--limit 10] [--mailbox INBOX] [--recent 2h]`), and the send command includes five worked examples covering text, HTML, attachments, multiple recipients, and `--to-account`. All referenced scripts (imap.js, smtp.js) exist in the bundle. This fully matches the 'copy-paste ready, specific examples cover the common cases' anchor.

5 / 5

Workflow Clarity

The risky operation (sending) has an explicit validation checkpoint — details must be reviewed with the user and sending is gated on `--confirmed` — plus post-send interpretation guidance (accepted ≠ delivered; call out `rejected`/`pending`), error-recovery direction (script errors route to LobsterAI Settings), and a troubleshooting section. Not 5 because the body contradicts itself on configuration: "Do NOT ask the user to create or edit these files" vs. a "Configuration Reference" section opening with "Create `.env` in the skill folder", which leaves the actual setup sequence ambiguous for the fallback path.

4 / 5

Progressive Disclosure

Section structure is clean and all script references are real, but the SKILL.md is a ~250-line monolith inlining material that belongs in reference files: the full two-protocol CLI reference, the provider server table, the `.env` configuration reference, and troubleshooting could each be split out with one-level-deep pointers. The bundle contains only `scripts/` (imap.js, smtp.js, config.js, attachment-storage.js) — no `references/` — so the body has nowhere to offload detail. This matches 'some structure but content that should be separate is inline'; it is above 2 because headers are present and the inline material is at least well organized.

3 / 5

Total

15

/

20

Passed

Description

75%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, specific description that names concrete capabilities and provider triggers, with excellent distinctiveness. Its one material weakness is the absence of an explicit "Use when..." trigger clause, which caps completeness.

Suggestions

Append an explicit trigger clause, e.g. "Use when the user asks to read, send, search, or manage email, check for unread messages, or work with IMAP/SMTP providers like Gmail, Outlook, or 163.com."

Add natural synonyms such as "inbox" or "check my email" to broaden trigger-term coverage.

DimensionReasoningScore

Specificity

The description enumerates concrete actions — "Check for new/unread messages, fetch content, search mailboxes, mark as read/unread, and send emails with attachments" — covering the full read/manage/send surface of email, which matches the comprehensive multi-action anchor. It is not a level below because that anchor (4) requires only 'several' actions with minor gaps, while this lists every core email operation.

5 / 5

Completeness

The "what" is clear and concrete (read/send/manage email via IMAP/SMTP), but there is no "Use when..." clause or equivalent explicit trigger guidance, which per the judging guidelines caps completeness at 3. It is not 2 because the "what" is specific and multi-action rather than vague; it is not 4+ because "when" is entirely absent rather than merely implicit.

3 / 5

Trigger Term Quality

Good natural-keyword coverage: "read and send email", "new/unread messages", "attachments", "search mailboxes", plus provider names users actually say (Gmail, Outlook, 163.com, 126.com). Not 5 because highly natural terms like "inbox", "mail", or "check my email" are absent — coverage is strong but a few common synonyms are missing.

4 / 5

Distinctiveness Conflict Risk

Email via IMAP/SMTP with named providers is a clear niche with distinct triggers ("email", "unread", "IMAP", "Gmail"), so conflict risk with other skills is minimal — matching the clear-niche anchor. It cannot be a 4 because there is no credible closely-related skill whose triggers this description would also capture.

5 / 5

Total

17

/

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

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
netease-youdao/LobsterAI
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.