About tdd
tdd is a development skill that requires a failing test before production code, then guides work through RED-GREEN-REFACTOR with verification at each stage. It is intended for agents or developers following test-driven development across supported stacks.
Key features
- 01Detects stack and test framework
- 02Writes one failing test at a time
- 03Checks failure for the expected reason
- 04Implements the simplest passing code
- 05Runs the full test suite
- 06Refactors while tests stay green
Use cases
- 01Develop a behavior one test at a time
- 02Investigate a test that passes immediately
- 03Prevent untested production changes
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ fusengine/ claude-plugins --skill tddAfter installing, type/tddin Claude Code to confirm it loaded.
Details
From the project READMEIt never skips a VERIFY step -- a test that passes on first run proves nothing and must be investigated, not accepted.
TDD Skill
Write the test first. Watch it fail. Write minimal code to pass.
The Iron Law
No production code without a failing test first.
Every line of production code must be justified by a test that failed without it. No exceptions. No shortcuts. No "I'll test after."
Agent Workflow
1. DETECT -> Identify stack, test framework, existing test patterns
2. RED -> Write ONE failing test for the next behavior
3. VERIFY -> Run test, confirm it fails for the EXPECTED reason
IF the test fails for a DIFFERENT reason (syntax error, wrong import, missing fixture) → fix the test itself and re-run. Do NOT proceed to GREEN until the failure matches the intended behavior.
4. GREEN -> Write the SIMPLEST code that makes the test pass
5. VERIFY -> Run tests, confirm ALL pass (new + existing)
6. REFACTOR -> Clean up while keeping all tests green
7. REPEAT -> Next behavior = next failing test
CRITICAL: Never skip VERIFY steps. A test that passes on first run proves nothing.
RED-GREEN-REFACTOR Cycle
See references/red-green-refactor.md for the detailed cycle with rules and verification steps.
Reference Guide
| Topic | Reference |
|---|---|
| Full RED-GREEN-REFACTOR cycle | red-green-refactor.md |
| Common mistakes and red flags | anti-patterns.md |
| Per-stack test commands | stack-commands.md |
Quick Reference: Test Commands
| Stack | Run Tests | Watch Mode |
|---|---|---|
| React/Next.js | npx vitest run | npx vitest |
| Laravel | php artisan test | php artisan test --watch |
| Swift | swift test | - |
| Generic TS | bunx vitest run | bunx vitest |
| Go | go test ./... | - |
| Rust | cargo test | cargo watch -x test |
Forbidden Behaviors
- Never write production code before a failing test
- Never skip the VERIFY RED step
- Never accept a test that passes on first run without investigation
- Never mock what you can test directly
- Never write more than one test at a time in RED phase
- Never add features beyond what the current test requires