CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

generate-snapshot-tests

Generate snapshot test files for Sentry frontend React components. Use when asked to "generate snapshot tests", "add snapshot tests", "create visual snapshots", "write snapshot tests", "add visual regression tests", or "snapshot this component". Accepts an optional component path or name via $ARGUMENTS.

70

Quality

88%

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

82%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 highly actionable, well-sequenced workflow skill whose executable examples and decision tables leave little ambiguity about what to produce. The main costs are repeated theme-loop/eslint boilerplate across sections and examples, the absence of a run-and-verify step, and examples that could be offloaded to a reference file.

Suggestions

Condense the repeated theme-loop boilerplate and eslint-disable suppression comment: state the ThemeProvider wrapper and no-restricted-imports comment once in Step 4, then let the Examples omit or abbreviate those lines (e.g., '// themes wrapper as in Step 4') to cut a substantial share of the body's tokens.

Add a validation step after Step 5, such as 'Verify the generated file: run the snapshot test (or typecheck the file) and confirm both light and dark cases are discovered' — this closes the workflow's only checkpoint gap.

Move the three full worked Examples into references/examples.md and keep one-line pointers in the body ('Button-style variant example: see references/examples.md'), which shortens the always-loaded SKILL.md while keeping the patterns one level deep.

DimensionReasoningScore

Conciseness

Efficient throughout — no explanations of concepts Claude already knows; guidance is delivered via compact tables and targeted code. Minor trimmable repetition: the ThemeProvider theme-loop boilerplate and the eslint-disable suppression comment are repeated across Step 4, all three Examples, and the Anti-Patterns section, and the Switch example contains two nearly identical it.snapshot.each blocks. Not 5 because of this repetition; not 3 because none of it is genuinely unnecessary explanation.

4 / 5

Actionability

Fully executable, copy-paste-ready code examples covering the common cases (variant component, interactive component with state combinations, multi-prop combinations), plus concrete search paths, a three-way import decision table, and explicit no-op handler guidance. Matches the anchor for fully executable code whose examples cover the common cases.

5 / 5

Workflow Clarity

Steps 1-5 are clearly sequenced (locate component, determine import path, identify props, write file, order snapshots) and a closing Checklist provides pre-completion checkpoints. Not 5 because there is no explicit validation step such as running or type-checking the generated snapshot test to confirm it works; not 3 because the sequence is strong, the checklist is present, and this is a non-destructive single-file generation task.

4 / 5

Progressive Disclosure

A single-file skill with well-organized sections, clear headers, and no external references to manage. Minor organization gap: the three full Examples (~130 lines of boilerplate-heavy code) could live in a references/ file to slim the always-loaded body. Not 5 because the skill exceeds 50 lines and inlines content that could be split; not 3 because the structure is good, not merely serviceable.

4 / 5

Total

17

/

20

Passed

Description

90%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 description with explicit what/when structure and comprehensive natural trigger phrases. The only weakness is that the capability description is a single action, leaving the description thinner on specifics than the skill body actually delivers.

DimensionReasoningScore

Specificity

Names the domain ('Sentry frontend React components') and one concrete action ('Generate snapshot test files') plus input handling ('Accepts an optional component path or name via $ARGUMENTS'), but does not list several specific actions — no mention of light/dark theme coverage, variant enumeration, or colocated .snapshots.tsx naming. This matches the anchor for naming the domain with 1-2 concrete actions without comprehensive coverage.

3 / 5

Completeness

Explicitly answers both questions: the 'what' ('Generate snapshot test files for Sentry frontend React components') and the 'when' (an explicit 'Use when asked to...' clause with concrete trigger phrases). Matches the anchor requiring both what AND when with concrete trigger phrases.

5 / 5

Trigger Term Quality

Six natural user phrasings are quoted verbatim — 'generate snapshot tests', 'add snapshot tests', 'create visual snapshots', 'write snapshot tests', 'add visual regression tests', 'snapshot this component' — covering synonyms and common variations a user would naturally say. No natural term is missing.

5 / 5

Distinctiveness Conflict Risk

A clear niche — Sentry frontend snapshot test generation — with distinctive trigger phrases that would not plausibly fire for unrelated skills. Minimal conflict risk.

5 / 5

Total

18

/

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

getsentry/sentry

Path

.agents/skills/generate-snapshot-tests/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.