CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

testland/stryker-mutation

Use when a JavaScript or TypeScript suite has high coverage but bugs still slip through, and the team wants mutation testing to find weak tests. Sets up StrykerJS: the Jest, Vitest, Mocha or Karma runner, stryker.conf.json, thresholds and incremental runs on pull requests.

Quality

92%

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

Overview
Quality
Evals
Security
Files

Quality

Content

88%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 high-quality, action-dense skill body: every step gives runnable commands, validation is built into the workflow before expensive operations, and failure modes get dedicated judgement rules. The main improvements are trimming the concept-explainer overview and moving the CI workflow/config reference into bundle files to slim the always-loaded context.

DimensionReasoningScore

Conciseness

The body is dense and Stryker-specific — config tables, commands, and anti-patterns all earn their place — but includes minor over-explanation: the Overview paragraph explains what mutation testing is ("Mutation testing plants small bugs (mutants) in production code and re-runs the tests") and the 'When to use' section restates the frontmatter description. Matches the score-4 anchor ('efficient; minor instances of over-explanation that could be trimmed'); not score 5 because a few sentences could be cut without loss.

4 / 5

Actionability

Fully executable throughout: "npm install --save-dev @stryker-mutator/core @stryker-mutator/jest-runner", a complete stryker.conf.json example, "npx stryker run --dryRunOnly", "npx stryker run --mutate src/cart.ts", and a copy-paste-ready GitHub Actions workflow. Matches the score-5 anchor ('copy-paste ready code or commands; specific examples cover the common cases').

5 / 5

Workflow Clarity

Six clearly sequenced steps with explicit validation checkpoints: Step 3 mandates a cheap dry run first ("a failing dry run means the runner or config is wrong"), a single-file trial run, then the full run; Step 4 closes the loop ("Add that test, re-run the file with --mutate src/cart.ts, and confirm the mutant is now Killed"), and the 'Judgement rules' section gives error-recovery guidance. Matches the score-5 anchor ('explicit validation steps; feedback loops for error recovery').

5 / 5

Progressive Disclosure

Well-organized single-file skill with clear section headers and clearly signaled one-level-deep external links ([introduction][si], [configuration][cfg], [incremental][inc]), but no bundle files exist while the body runs ~175 lines — the ~30-line CI workflow YAML and the config-field reference table are candidates for a references/ file. Matches the score-4 anchor ('good structure; most content is appropriately placed; minor organization gaps'); not score 5 since content that could be split out is inlined.

4 / 5

Total

18

/

20

Passed

Description

92%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 pairs an explicit, natural 'Use when' trigger with a concrete inventory of what the skill sets up, all in third person and without padding. Trigger coverage is good though not exhaustive — synonyms like 'mutation score' or 'test quality' would make it even more discoverable.

DimensionReasoningScore

Specificity

Quotes: "Sets up StrykerJS: the Jest, Vitest, Mocha or Karma runner, stryker.conf.json, thresholds and incremental runs on pull requests" — multiple specific concrete actions (runner setup, config file, thresholds, incremental PR runs) with comprehensive coverage of the skill's scope. This matches the score-5 anchor ('lists multiple specific concrete actions; comprehensive coverage') and exceeds the score-4 anchor, which expects minor gaps in coverage.

5 / 5

Completeness

Explicitly answers 'when' with a concrete trigger clause ("Use when a JavaScript or TypeScript suite has high coverage but bugs still slip through, and the team wants mutation testing to find weak tests") and 'what' with concrete capabilities ("Sets up StrykerJS: ... thresholds and incremental runs on pull requests"). Matches the score-5 anchor exactly; score 4 would require the 'when' to be less explicit or specific.

5 / 5

Trigger Term Quality

Quotes: "JavaScript or TypeScript suite", "high coverage but bugs still slip through", "mutation testing", "weak tests", "pull requests" — good, natural keyword coverage a user would actually say. Not score 5 because a few natural synonyms are missing (e.g., 'mutation score', 'test quality', 'tests don't catch bugs'); clearly above score 3, which expects missing common variations.

4 / 5

Distinctiveness Conflict Risk

Clear niche: StrykerJS mutation testing for JavaScript/TypeScript, distinct from generic testing or coverage skills and from sibling mutation-testing skills for other ecosystems (.NET, Java, Python). Trigger conditions ('high coverage but bugs still slip through') are unlikely to fire for the wrong skill, matching the score-5 anchor's 'clear niche with distinct triggers; minimal conflict risk'.

5 / 5

Total

19

/

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.

Reviewed

On this page