shashankreddy509

Claude TDD Kit — Data skill for Claude Code

Data community

Claude Code plugin marketplace: the developer day-loop plus a gated TDD build pipeline.

How to install Claude TDD Kit

This entry records only its repository, not the path inside it, so there is no exact command to give. Open shashankreddy509/claude-tdd-kit and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Claude TDD Kit does

Claude Code plugin marketplace: the developer day-loop plus a gated TDD build pipeline. Two independent plugins.

Alternatives in Data

README

claude-tdd-kit

[![validate](https://github.com/shashankreddy509/claude-tdd-kit/actions/workflows/ci.yml/badge.svg)](https://github.com/shashankreddy509/claude-tdd-kit/actions/workflows/ci.yml)

**An AI coding agent will tell you it's done when it isn't.** It writes the code, writes tests that pass because they only assert what the code already does, reviews its own diff, finds nothing, and reports success. The build is green and nothing has been proven.

This kit turns each of those claims into something that can be checked. Every stage leaves evidence on disk, and the next stage refuses to continue without it.

Before / after: shipping a ticket

Without the kit With tdd-pipeline
Tests Written after the code, pass first time Stage 1.5 runs the new tests before any implementation exists and requires a non-zero exit. Tests that already pass stop the run: "they assert existing behavior and prove nothing."
Evidence The model says "all tests pass" The real process exit codes go into tasks/receipts/.json: red.exit, green.exit, the command that ran, and the HEAD sha
Review The same context that wrote the code reads it Separate specialist reviewer agents check the diff plus its callers. Every Critical finding goes to a verifier that tries to refute it
Opening the PR Happens whenever the model decides it's finished /ship reads the receipt and refuses if it's missing, if stage != "complete", if sha is stale, if red.exit == 0 (the tests never failed), if green.exit != 0, if any Critical is confirmed or unverified, or if review found any 🟠 Must-fix

A model can talk its way past a rule written in markdown. It can't create a receipt file that doesn't exist or a `sha` that matches a HEAD that has moved.


What it is

Two Claude Code plugins, installed from one marketplace. Each one works on its own:

  • dev-day is the session loop. /start-session loads the corrections y