# test-driven-development

> Claude/Codex skill by [@obra](https://omgskills.com/library/obra/index.md) · 280k stars · 223k installs · Updated 2026-08-29

Use when implementing any feature or bugfix, before writing implementation code

Tags: ai, brainstorming, coding, obra, sdlc, skills, subagent-driven-development, superpowers

## Install

```sh
git clone https://github.com/obra/superpowers /tmp/superpowers && ln -s /tmp/superpowers/skills/test-driven-development ~/.claude/skills/test-driven-development
```

## From README

Test-Driven Development (TDD) Overview Write the test first. Watch it fail. Write minimal code to pass. Core principle: If you didn't watch the test fail, you don't know if it tests the right thing. Violating the letter of the rules is violating the spirit of the rules. When to Use Always: New features Bug fixes Refactoring Behavior changes Exceptions (ask your human partner): Throwaway prototypes Generated code Configuration files Thinking "skip TDD just this once"? Stop. That's rationalization. The Iron Law Write code before the test? Delete it. Start over. No exceptions: Don't keep it as "reference" Don't "adapt" it while writing tests Don't look at it Delete means delete Implement fresh from tests. Period. Red-Green-Refactor RED - Write Failing Test Write one minimal test showing what should happen.

## Links

- HTML page: https://omgskills.com/skills/obra/superpowers/test-driven-development/
- GitHub: https://github.com/obra/superpowers
- Author: [@obra](https://omgskills.com/library/obra/index.md)

## More from this repo

- [systematic-debugging](https://omgskills.com/skills/obra/superpowers/systematic-debugging/index.md) — Used when encountering any bug, test failure, or unexpected behavior, before proposing fixes
   - [@obra](https://omgskills.com/library/obra/index.md) · 285k stars
- [brainstorming](https://omgskills.com/skills/obra/superpowers/brainstorming/index.md) — You MUST use this before any creative work - creating features, building components, adding functionality, or modifying...
   - [@obra](https://omgskills.com/library/obra/index.md) · 280k stars
- [dispatching-parallel-agents](https://omgskills.com/skills/obra/superpowers/dispatching-parallel-agents/index.md) — Used when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
   - [@obra](https://omgskills.com/library/obra/index.md) · 280k stars
