Babysitter test-driven-development
Use when implementing any feature or bugfix, before writing implementation code. Enforces RED-GREEN-REFACTOR cycle.
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/methodologies/superpowers/skills/test-driven-development" ~/.claude/skills/a5c-ai-babysitter-test-driven-development-7e5236 && rm -rf "$T"
manifest:
library/methodologies/superpowers/skills/test-driven-development/SKILL.mdsource content
Test-Driven Development (TDD)
Overview
Write the test first. Watch it fail. Write minimal code to pass.
Core principle: If you did not watch the test fail, you do not know if it tests the right thing.
The Iron Law
NO PRODUCTION CODE WITHOUT A FAILING TEST FIRST
Write code before the test? Delete it. Start over. No exceptions.
RED-GREEN-REFACTOR
- RED - Write one failing test showing desired behavior
- Verify RED - Run test, confirm it fails for the right reason
- GREEN - Write simplest code to pass (YAGNI)
- Verify GREEN - Run test + full suite, all must pass
- REFACTOR - Clean up while keeping tests green
- COMMIT - Frequent small commits
Red Flags (STOP and Start Over)
- Code before test
- Test passes immediately
- "I'll test after"
- "Too simple to test"
- Rationalizing "just this once"
Agents Used
- Process agents defined in
test-driven-development.js
Tool Use
Invoke via babysitter process:
methodologies/superpowers/test-driven-development