tdd

Plan and execute vertical slices with tracer bullets for test-driven development.

113|23|Updated Mar 23, 2026
One-click install
npx skills add https://github.com/opensage-agent/opensage-adk --skill tdd-opensage-agent
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tdd
Source: https://github.com/opensage-agent/opensage-adk/tree/main/src/opensage/bash_tools/tdd
Command: npx skills add https://github.com/opensage-agent/opensage-adk --skill tdd-opensage-agent

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the common pitfall of horizontal slicing, where developers write all tests before implementation, leading to brittle, coupled, and low-quality test suites.

Core Features & Use Cases

  • Vertical Slicing Workflow: Guides the user through the tracer bullet approach, ensuring each test is paired with minimal, functional code.
  • Interface-First Design: Provides clear guidelines on designing deep modules and testable interfaces that survive internal refactoring.
  • Use Case: When building a new feature, use this Skill to ensure your tests verify user-facing behavior rather than internal implementation details, resulting in a robust and maintainable codebase.

Quick Start

Use the tdd skill to help me plan and execute a vertical slice for the new user authentication feature.

Frequently Asked Questions about tdd

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is vertical slicing in test-driven development?

Vertical slicing in test-driven development pairs each behavior-driven test with minimal functional code using tracer bullets. This prevents the brittle, coupled test suites caused by writing all tests before implementation, ensuring tests verify public interfaces.

How do I write behavior-driven tests that survive refactoring?

To write behavior-driven tests that survive refactoring, design deep modules with testable interfaces first. Verify user-facing behavior through iterative red-green-refactor cycles rather than testing internal implementation details to maintain a robust codebase.

Why does writing all tests before implementation lead to low-quality code?

Writing all tests before implementation, or horizontal slicing, leads to low-quality code because it creates brittle and coupled test suites. It contrasts with vertical slicing, which iteratively pairs behavior-driven tests with minimal functional code.

Can I use the red-green-refactor cycle for new feature planning?

Yes, you can use the red-green-refactor cycle for new feature planning by executing vertical slices. This disciplined test-driven development workflow guides you to build minimal functional code paired with behavior-driven tests for user-facing behavior.

When should I not use horizontal slicing for my testing workflow?

You should not use horizontal slicing when building new features that require maintainable, deep module design. It causes brittle, coupled test suites by verifying internal implementation details instead of public interfaces through iterative red-green-refactor cycles.