skills/qe/tdd-coach/SKILL.md
Guide Test-Driven Development workflow — teach red-green-refactor cycle, test-first approach, and TDD best practices. Validate test quality. A teaching / coaching flow rather than a persistent role; dispatched on demand when a developer wants TDD guidance for a specific feature or bug fix. Use when: "guide me through TDD", "red-green-refactor", "test-first approach", "TDD this feature", "teach me TDD", "coach me on TDD".
npx skillsauth add mikeparcewski/wicked-garden tdd-coachInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Guides a developer through a Test-Driven Development cycle — writing a failing test first, making it pass with minimal code, and refactoring while keeping tests green. Teaches the discipline, reviews test quality, and catches common TDD anti-patterns.
This is a coaching flow, not a persistent role. Dispatch this skill when someone wants to TDD a specific feature or bug fix. For persistent test strategy and test automation work, use the test-strategist or test-automation-engineer agents.
Invoke this skill when someone says:
Typical output:
1. RED: Write a failing test
2. GREEN: Write minimal code to pass
3. REFACTOR: Improve code quality (tests stay green)
4. REPEAT
Ask: "What should the code do?" Guide: "Let's write a test that describes that behavior first."
Test quality checklist:
Good vs bad examples:
// Good — describes behavior
test('calculateTotal should sum item prices', () => {
const items = [{price: 10}, {price: 20}];
expect(calculateTotal(items)).toBe(30);
});
// Bad — too vague
test('test calculation', () => {
expect(calculate()).toBeTruthy();
});
Verify the test fails:
npm test -- {test_file}
# Expected: FAIL (the RED)
Guidance:
Anti-pattern: writing extra code "just in case"
Example:
// First iteration — hardcoded
function calculateTotal(items) {
return 30; // Passes the one test
}
// Next test forces real implementation
test('works with different prices', () => {
const items = [{price: 5}, {price: 15}];
expect(calculateTotal(items)).toBe(20);
});
Checklist:
Key rule: tests stay green during refactoring.
For the next behavior:
Quick shape for the three most-asked scenarios (new feature, bug fix, refactoring). Full step-by-step playbooks live in refs/patterns.md#common-tdd-scenarios.
See refs/patterns.md for:
Return a structured coaching block per cycle (feature, phase, current test, status, next step, tips, coverage). Optionally append TDD-cycle progress to the active task via TaskUpdate. Full output template + TaskUpdate snippet: refs/patterns.md#coaching-output-template.
Watch for and surface the common TDD missteps: implementation-before-test, oversized test, missing edge cases, duplication, hardcoded-value-as-premature-solution. Full checklist: refs/patterns.md#teaching-moments-checklist.
development
--- name: large-scale-migration description: How to execute a LARGE MECHANICAL change across any codebase with LEVERAGE instead of an agent-grind or hand-edits — a cross-cutting migration, refactor, rename, dialect/framework/DB port, library adoption, or bulk transform. The map→transform→gate pattern: a deterministic transform driven by a source-of-truth map, proven by a differential-equivalence gate. Use when the work is "migrate all X to Y", "rename Z everywhere", "port to a new DB/dialect/fra
testing
v11 LLM-based work-shape classifier. Replaces the regex archetype detector with the model's own reasoning. Reads the user's prompt, picks the right archetype(s) from the catalog, identifies signals (blast_radius, novelty, reversibility, etc.), and persists to SessionState so subsequent turns steer correctly. Use when: the prompt_submit hook emitted a `<wg classify-due />` directive, OR explicitly invoked at session start, OR when re-classifying after the user changes scope mid-session.
tools
v11 work-shape archetype runner. When a prompt has been routed to one of the 9 archetypes (triage, explore, specify, decide, ship, review, incident, build, migrate), this skill is the entry point. It picks the right per-archetype playbook from refs/ and executes the phase shape declared in `.claude-plugin/archetypes.json`. Use when: a `<wg archetype="X">` or `<wg archetypes>` system-reminder tag appears, an explicit "let's run the X archetype" request, or when one of the per-archetype slash commands resolves to this skill.
development
Show or set the session intent variable. Intent gates how loud the framework is — simple-edit (silent), feature/research (synthesis directive), rigor (full crew context). Auto-detected on turn 1; this skill overrides explicitly. Sticky for the session. Use when: "set intent", "intent override", "/wicked-garden:intent", "make the framework quiet", "force rigor", "what's my intent".