About vitest
vitest is a repository-focused skill for developers changing tests. It prioritizes existing project configuration and nearby patterns, then verifies behavior with focused test runs.
Key features
- 01Inspect repository configuration and nearby tests
- 02Design regression tests around observable behavior
- 03Follow established Effect testing conventions
- 04Choose the narrowest relevant test command
- 05Investigate discovery, resolution, and flaky-state issues
Use cases
- 01Add regression coverage for a bug fix
- 02Test asynchronous or component changes
- 03Investigate hangs or test discovery failures
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ paulrberg/ agent-skills --skill vitestAfter installing, type/vitestin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlreferences/configuration.mdmocking.mdtesting-patterns.mdtroubleshooting.mdDetails
From the project READMEVitest
Repository configuration, projects, setup, imports/globals, environments, aliases, test placement, and cleanup own the test contract. Inspect them and nearby tests before adding generic patterns. Do not add globals, jsdom, coverage, new setup, or browser mode by default.
Workflow
Define the behavior or regression. Test its observable public result. Mock system boundaries rather than the behavior
under test. Follow local fixture and cleanup ownership. In Effect repositories, use established @effect/vitest
conventions such as it.effect, Layers, and TestClock rather than generic replacements. For a bug fix, reproduce the
failure before relying on a passing result when practical.
Read patterns for component, async, fixture, snapshot, tag, or browser questions. Read mocking for module, timer, spy, or global boundaries. Read configuration for projects, migration, coverage, or reporter selection. Read troubleshooting for hangs, discovery, resolution, or flaky state.
For test changes, run the narrowest established command for the changed behavior, then the affected package suite only
when shared setup or contracts changed. Use nlx vitest run only when no project recipe or script exists. Reuse passing
results until new edits, failures, or unresolved concerns justify another run.
Completion requires a meaningful passing focused test under repository configuration and concise command/result evidence
for test changes. A read-only explanation instead requires supporting configuration or API evidence. Do not add or run
tests merely to satisfy the change workflow. When red-before-green evidence exists, use ### 🧪 Regression covered.
Otherwise, use ### 🧪 Tests verified for executed tests.