ClaudeMod
Back to browse
Hooks

TDD Guard

Pre-tool hook that blocks code edits unless a failing test exists first — enforces strict test-first discipline by refusing file writes without a red test in scope.

nizos1,960 starsAdded 1 months ago

TDD Guard

npm version npm downloads CI Security License: MIT

Automated Test-Driven Development enforcement for Claude Code.

Overview

TDD Guard ensures Claude Code follows Test-Driven Development principles. When your agent tries to skip tests or over-implement, TDD Guard blocks the action and explains what needs to happen instead.

TDD Guard Demo
Click to watch TDD Guard in action

Features

  • Test-First Enforcement - Blocks implementation without failing tests
  • Minimal Implementation - Prevents code beyond current test requirements
  • Lint Integration - Enforces refactoring using your linting rules
  • Customizable Rules - Adjust validation rules to match your TDD style
  • Flexible Validation - Choose faster or more capable models for your needs
  • Session Control - Toggle on and off mid-session

Getting Started

Requirements

  • Node.js 22+
  • A supported test framework (Vitest, Jest, Storybook, pytest, PHPUnit, Go, Rust)

Installation

Open Claude Code in your project and run:

  1. /plugin marketplace add nizos/tdd-guard
  2. /plugin install tdd-guard@tdd-guard
  3. /tdd-guard:setup

This adds the marketplace, installs the plugin, and configures the test reporter for your project. You may need to restart your terminal session or IDE extension for the setup skill to appear. For manual installation and configuration, see the installation guide.

Configuration

Security

TDD Guard hooks run with your user permissions. We maintain automated security scanning, dependency audits, and welcome source code review. See Claude Code's security considerations for more on hook safety.

Development

Contributing

Contributions are welcome! See the contributing guidelines to get started.

Contributors:

Roadmap

  • Expand language and test framework support
  • Validate file modifications made through MCPs and shell commands
  • Encourage meaningful refactoring opportunities when tests are green
  • Add support for multiple concurrent sessions per project

Support

  • Discussions - Ask questions and share ideas
  • Issues - Report bugs and request features

License

MIT

More Hooks

Hooks

Multi-Agent Observability Hooks

Hooks for observing and debugging multi-agent Claude Code sessions — trace inter-agent messages, log tool calls, visualize agent graphs, and detect loops.

observabilitymulti-agenttracing+3
by Disler
GitHub
Hooks

TypeScript Claude Hooks

TypeScript-specific Claude Code hooks — run tsc type checking, ESLint, and Prettier enforcement after every edit so type errors never accumulate during a session.

typescripteslintprettier+3
by bartolli
GitHub
Hooks

Claude Hooks SDK

PHP/Laravel-style hooks SDK for Claude Code — define, compose, and test hooks with a clean API, middleware chaining, and built-in test helpers.

phplaravelsdk+3
by Beyond Code
GitHub

Command Palette

Search for a command to run...