CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

email-voice-profile

Build (or refresh) a voice profile of how the user writes email, from their own sent Gmail. The profile is what email-draft-in-voice consumes to ghostwrite email that sounds like them.

Quality

86%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

An excellent, tightly written skill body: lean, concrete, and with a genuine validation feedback loop — the holdout-thread check is stronger than most skills manage. The one real gap is that the bundled scripts/fetch_sent.py is never mentioned in the body, so the corpus-pull step reads as manual work despite an existing automation script.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence throughout: no explanations of what email or Gmail is, no library intros, no padding. Every paragraph carries non-obvious operational knowledge — e.g., "only `--`-delimited signatures are stripped, so a plain signature ... survives at the end of many bodies" and "patterns a generic professional emailer would not share" — so every token earns its place.

5 / 5

Actionability

For an instruction-only skill the guidance is fully concrete: exact paths ("voice/corpus/corpus.jsonl", "voice/email-voice-profile.md"), numeric thresholds ("up to 300", "if fewer than ~50 usable emails survive"), a required output format ("one JSON line per email ... tagged `internal` or `external`"), an exact seven-section profile template, an evidence format with frequencies ("uses 'Best,' in 80% of external mail"), and a validation protocol ("Hold out 3 real threads"). Nothing reads as vague direction.

5 / 5

Workflow Clarity

The four numbered sections give a clear pull → study → write → validate sequence with explicit validation and feedback loops: section 4 ("Validate before declaring done") requires holdout-thread drafting, comparison against what was actually sent, and tightening the profile where the real email diverges, plus a user review loop ("ask what feels wrong; their corrections go in as hard rules"). Section 1 adds an early checkpoint ("if fewer than ~50 usable emails survive, tell the user the profile will be rough and ask whether to continue").

5 / 5

Progressive Disclosure

The body is well organized with clear sections sized appropriately for a single-file skill, but the bundle actually contains scripts/fetch_sent.py — which implements exactly section 1's work (fetch up to 300 sent messages, strip quotes/signatures, drop automated mail, write tagged JSONL) — and the body never references it, instead saying "Use the selected email access skill to retrieve". Scored against the actual bundle structure, that is a missed navigation opportunity: a Claude reading this skill would redo manually what the bundled script already automates.

4 / 5

Total

19

/

20

Passed

Description

70%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 specific, well-scoped description with a clear "what" and minimal conflict risk, held back mainly by the absence of an explicit "Use when..." trigger clause. Adding natural trigger phrases (e.g., "Use when the user says 'learn my voice' or wants email drafted in their voice") would lift completeness and trigger-term quality.

Suggestions

Add a "Use when..." clause with concrete trigger phrases, e.g., 'Use when the user says "learn my voice", "study how I write email", or when email-draft-in-voice needs a profile that does not exist yet.'

Include a couple more natural trigger synonyms in the description itself (e.g., "writing style", "tone", "draft like me"), since these phrases currently appear only in the body, not the frontmatter.

Optionally name one concrete deliverable in the description (e.g., "writes a voice profile with register map, sign-offs, and hard rules") to strengthen the action list toward anchor 5.

DimensionReasoningScore

Specificity

The description names concrete, precisely scoped actions — "Build (or refresh) a voice profile of how the user writes email, from their own sent Gmail" — and specifies the exact source (own sent Gmail) and downstream consumer ("what email-draft-in-voice consumes to ghostwrite email that sounds like them"). It sits above the anchor-3 example (which names only a domain plus 1-2 generic actions) but below anchor 5, which requires a comprehensive list of multiple concrete actions.

4 / 5

Completeness

The "what" is clearly and explicitly answered (build/refresh a voice profile from the user's own sent Gmail, consumed by email-draft-in-voice), but there is no "Use when..." clause or equivalent explicit trigger guidance in the description itself — the usage context is only weakly implied by the consumer relationship. Per the judging guideline, a missing 'Use when' clause caps completeness at 3.

3 / 5

Trigger Term Quality

It contains good natural keywords a user would plausibly say: "voice profile", "how the user writes email", "sent Gmail", "ghostwrite email that sounds like them". A few natural trigger phrases are missing — e.g., "learn my voice", "my writing style", "draft like me" — so it does not reach the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

It carves out a clear niche — profiling the user's own sent Gmail for voice-matched ghostwriting — and explicitly names its sibling skill (email-draft-in-voice), making confusion with generic email-drafting or analysis skills unlikely. Trigger overlap risk is minimal.

5 / 5

Total

16

/

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.

Repository

yc-software/qm

Path

skills-seed/email-voice-profile/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.