From dev-flow
Improve test design, speed, and coverage with behavior-focused tests, useful seams, characterization tests, TDD, and test refactoring. Use when improving tests, optimizing slow suites, adding coverage, refactoring brittle tests, removing test waste, or working test-first. NOT for fixing production bugs (use fixing-code), production-code refactors (use refactoring-code), or reviewing non-test code quality (use reviewing-code).
How this skill is triggered — by the user, by Claude, or both
Slash command
/dev-flow:improving-tests [review|refactor|coverage|tdd|performance|full][review|refactor|coverage|tdd|performance|full]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Follow the base skill. This Claude overlay only defines tool use and execution details.
Follow the base skill. This Claude overlay only defines tool use and execution details.
Improve tests through public behavior seams. Treat suite latency as a quality attribute. Do not inflate coverage with low-value assertions. Do not change production behavior unless the selected TDD slice requires it.
review: find weak, duplicate, brittle, missing, slow, or flaky tests.refactor: simplify tests without changing covered behavior.coverage: add useful tests for uncovered business behavior or error paths.tdd: one red-green-refactor slice at a time.performance: measure slow tests and remove speed waste without weakening behavior.full: review, refactor, performance, and add coverage.If mode is missing, use AskUserQuestion with those options. Ask before adding a
new test framework.
Use TaskCreate and TaskUpdate when the session has more than two steps:
Read, Grep, Glob, and LS to find tests, fixtures, helpers, and nearby patterns.performance mode or slow-suite work, also load the matching references/<language>-performance.md when present.Edit for existing tests and Write only for new files.Use direct reads/search for small scopes. Spawn read-only agents only for broad or mixed-language audits.
Use only commands supported by the repo and available tools. Examples:
go test ./pkg -run TestName
go test ./...
go tool cover -func=/tmp/coverage.out
golangci-lint run ./...
vitest run path/to/file.test.ts
jest path/to/file.test.ts --runInBand
pytest -q --maxfail=1 --tb=short
pytest -q --durations=10 --durations-min=0.5
uv run pytest -q --maxfail=1 --tb=short
bun test
bun run tsc --noEmit
npm test
npx playwright test --list
bunx playwright test --list
If a referenced command is unavailable, report it as skipped with the exact reason. Do not install a test framework or tool without user approval.
For tdd, write one failing test for one behavior, confirm it fails for the expected
reason, implement the smallest passing code, then refactor only while green. Do not
write a bulk suite for imagined future behavior.
it.each consolidation when separate tests make distinct behavior clearer.BLOCKED or Proposed Changes.npx claudepluginhub alexei-led/cc-thingz --plugin dev-flowCreates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.