CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

unit-tests

Use when running unit tests in the VS Code repo. Covers the runTests tool, scripts/test.sh (macOS/Linux) and scripts/test.bat (Windows), and their supported arguments for filtering, globbing, and debugging tests.

Quality

81%

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

67%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-structured reference: nearly every option has executable copy-paste commands, the preferred-tool-to-fallback ordering is explicit, and edge cases (integration tests, stale build output) are flagged. The main defects are the bloated, self-repetitive --workers paragraph and the conceptual-only runTests example.

Suggestions

Rewrite the --workers section as short bullet points and remove the verbatim repetition ('because every worker loads all test files of the run. Every worker loads all test files of the run...'), or move its edge-case details to a reference file.

Replace the runTests 'Example (conceptual)' with a concrete invocation showing the files/testNames parameters, and show the --runList input file format alongside its existing example.

Add an explicit post-run verification cue for the shell path (e.g. check the Mocha summary line for executed-test counts), mirroring the validation loop already present for the runTests tool.

DimensionReasoningScore

Conciseness

Most sections are lean command-plus-note pairs, but the --workers section is a ~200-word single paragraph that even repeats itself verbatim ('because every worker loads all test files of the run. Every worker loads all test files of the run and runs the files it claims'). This matches anchor 3 — mostly efficient but includes unnecessary explanation that could be tightened — rather than anchor 4's 'minor instances'.

3 / 5

Actionability

Every shell option ships a copy-paste-ready command (e.g. './scripts/test.sh --run src/vs/editor/test/common/model/model.test.ts --grep "should split lines"'), covering the common cases. It falls short of anchor 5 only because the runTests section is explicitly 'Example (conceptual)' with no literal invocation, and the --runList file format is never shown.

4 / 5

Workflow Clarity

The decision flow is clear and ordered (prefer runTests; fall back to platform scripts; satisfy the compilation prerequisite first) and includes one explicit validation loop ('If discovery is unavailable, pending, or reports no executed tests, treat the request as unvalidated and use the repository's configured test command'). Minor gaps — no explicit verify-tests-ran step for the shell path — keep it at anchor 4 rather than 5.

4 / 5

Progressive Disclosure

With no bundle files, the single SKILL.md is well-organized with descriptive section headers and navigable structure. However, at ~115 lines the dense --workers reference material is inlined where a separate reference file would fit, matching anchor 4 ('most content appropriately placed; minor organization gaps') rather than the well-split anchor 5.

4 / 5

Total

15

/

20

Passed

Description

87%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: it explicitly states both what it covers (specific tools, scripts, and argument categories) and when to use it, in third person, with concrete trigger phrasing. Its only weakness is that it enumerates a subset of capabilities (filtering, globbing, debugging) rather than the full option surface.

DimensionReasoningScore

Specificity

Names concrete tools ('the runTests tool, scripts/test.sh (macOS/Linux) and scripts/test.bat (Windows)') and argument capabilities ('filtering, globbing, and debugging tests'), but coverage is not comprehensive — options like coverage, timeouts, and parallel workers are unmentioned, so it sits at 'several specific actions; minor gaps' rather than anchor 5.

4 / 5

Completeness

Explicitly answers both questions: 'Use when running unit tests in the VS Code repo' is a concrete when-trigger, and 'Covers the runTests tool, scripts/test.sh... and their supported arguments for filtering, globbing, and debugging tests' is a clear what. The 'when' is explicit and concrete, so it is not anchor 4 where the trigger 'could be more explicit'.

5 / 5

Trigger Term Quality

'running unit tests' is exactly the phrase a user would naturally say, reinforced by 'VS Code repo' and concrete script names, but common variations and synonyms ('run tests', 'Mocha', 'test suite') are missing, so it falls short of anchor 5's comprehensive synonym coverage while clearly exceeding anchor 3.

4 / 5

Distinctiveness Conflict Risk

The dual scoping to 'unit tests' and 'the VS Code repo' carves out a clear niche with distinct triggers and minimal conflict risk — a user asking to run integration tests or tests in another repo would not match it.

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

referenced_paths_exist

Referenced path issues: 3 missing

Warning

Total

15

/

16

Passed

Repository

microsoft/vscode

Path

.github/skills/unit-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.