Use when writing production code that needs tests - new features, bug fixes, refactoring. Enforces RED-GREEN-REFACTOR cycle before any implementation.
Pro scans all 4 files and shows the line behind each finding
Scanned 5/28/2026
npx -y skills add fusengine/agents --skill tdd --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Tdd?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/fusengine-tdd)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: tdd
description: Use when writing production code that needs tests - new features, bug fixes, refactoring. Enforces RED-GREEN-REFACTOR cycle before any implementation.
argument-hint: "[feature-or-file]"
user-invocable: true
---
# 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
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](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](references/red-green-refactor.md) |
| Common mistakes and red flags | [anti-patterns.md](references/anti-patterns.md) |
| Per-stack test commands | [stack-commands.md](references/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
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!