CtrlK
BlogDocsLog inGet started
Tessl Logo

vitest-testing-skill

Set up Vitest 2.x with TypeScript for unit and component testing using test/describe/it, vi.fn/vi.mock/vi.spyOn, component testing with Testing Library, coverage (v8/istanbul), workspace config, and snapshot testing.

56

Quality

65%

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

Fix and improve this skill with Tessl

tessl review fix ./testing/vitest-testing-skill/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

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

The content is highly actionable, with broad, copy-paste-ready examples across Vitest's main use cases, but it is a long monolithic reference that inlines everything and omits explicit verification checkpoints. Splitting detail into reference files and adding a setup-verification step would lift the weaker dimensions.

Suggestions

Add an explicit validation checkpoint after the scaffold/config sections, e.g. 'Run `npx vitest run --coverage` and confirm thresholds are met before writing more tests.'

Move the larger tangential sections (MSW HTTP mocking, docker test-DB setup) into reference files under references/ and link to them one level deep, reducing the inline volume.

Drop redundant config variants or gate them behind a single conditional note so only the recommended path is presented inline.

DimensionReasoningScore

Conciseness

The body is code-heavy and assumes Claude's competence (no explaining of what Vitest or mocks are), but at ~520 lines it inlines redundant variants (both vitest.config.ts and vite.config.ts) and scope-creep sections like the docker test-DB setup, fitting the mostly-efficient-but-could-be-tightened anchor; not a 2 because there is no padding of basic concepts.

3 / 5

Actionability

Provides fully executable, copy-paste-ready install commands, complete config files, and runnable test examples covering the common cases (unit, vi.fn/vi.mock, vi.spyOn, component, hook, snapshot, timer, workspace, MSW), matching the fully-executable anchor; the few undefined helper references (formatUserDisplay, scheduleTask) are minor and consistent with the rubric's own score-5 example pattern.

5 / 5

Workflow Clarity

Sections imply a rough sequence (prerequisites, scaffold, structure, config, write tests, commands) but lack explicit validation checkpoints such as 'run npx vitest run to verify the setup' or a config/coverage feedback loop, matching the steps-present-but-checkpoints-missing anchor; not a 4 because no verify-step is framed as a checkpoint.

3 / 5

Progressive Disclosure

No bundle files exist and all content is inlined in a single ~520-line SKILL.md with good headers but no external file references; material that could live in separate references (MSW setup, full config variants, docker test-DB) is inline, matching the some-structure-but-could-be-better-organized anchor; not a 2 because the header structure keeps it navigable.

3 / 5

Total

14

/

20

Passed

Description

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

The description is specific and well-keyworded, listing Vitest's concrete testing capabilities and natural trigger terms. Its main weakness is the missing 'Use when...' clause, which caps completeness at 3 despite otherwise strong specificity and distinctiveness.

Suggestions

Append an explicit trigger clause, e.g. 'Use when setting up or migrating to Vitest for unit/component tests, configuring coverage, or writing snapshots/mocks in a Vite + TypeScript project.'

Add a natural synonym or file-extension trigger such as 'frontend testing', 'test runner', or '.test.ts' to broaden trigger-term coverage.

Lead with discrete action verbs (set up, configure, mock, snapshot) rather than listing APIs as nouns to sharpen the 'what' beyond a single 'Set up' verb.

DimensionReasoningScore

Specificity

Enumerates multiple concrete capabilities — 'test/describe/it, vi.fn/vi.mock/vi.spyOn', 'component testing with Testing Library', 'coverage (v8/istanbul)', 'workspace config', and 'snapshot testing' — beyond the leading 'Set up' verb, matching the several-specific-actions anchor with only minor gaps; not a clean 5 since most items are APIs/topics rather than discrete action verbs.

4 / 5

Completeness

States a clear 'what' (set up Vitest 2.x with TypeScript for the listed testing capabilities) but includes no 'Use when...' or equivalent explicit trigger guidance, which per the rubric caps completeness at 3.

3 / 5

Trigger Term Quality

Includes natural terms users say ('Vitest', 'unit and component testing', 'TypeScript', 'coverage', 'snapshot testing') but omits common synonyms/extensions like 'test runner', 'mocking', 'frontend testing', or '.test.ts', fitting the good-coverage-with-a-few-natural-terms-missing anchor.

4 / 5

Distinctiveness Conflict Risk

Names a specific tool, version, and framework ('Vitest 2.x with TypeScript') that distinguishes it from sibling testing skills with only minor overlap risk against a general JS/TS testing skill; not a 5 because 'component testing' and 'Testing Library' still overlap with broader component-testing skills.

4 / 5

Total

15

/

20

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (534 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
achreftlili/deep-dev-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.