# TddBee
Autonomous TDD coding plugin for Claude Code. Implements features from specifications using test-driven development with pause/resume capabilities.
## Overview
TddBee converts your specifications into a feature list and implements each feature using strict TDD:
- **RED**: Write failing tests for acceptance criteria
- **GREEN**: Write minimal code to pass tests
- **REFACTOR**: Clean up while keeping tests green
Supports multi-modal inputs: files, text, images, URLs.
## Installation
```bash
# Add from GitHub
/plugin marketplace add nonibytes/busy
/plugin install tddbee@nonibytes-plugins
# Or add from local path
/plugin marketplace add ./path/to/busy
/plugin install tddbee@nonibytes-plugins
```
## Quick Start
### 1. Initialize a Project
```bash
# From a spec file
/tddbee:init spec.md
# From text instructions
/tddbee:init "Build a todo app with user authentication"
# From multiple inputs
/tddbee:init requirements.txt mockup.png "Add dark mode"
```
### 2. Start Autonomous Implementation
```bash
/tddbee:run
```
### 3. Monitor Progress
```bash
/tddbee:status
```
### 4. Pause/Resume
```bash
# Pause gracefully
/tddbee:pause
# Resume later
/tddbee:resume
```
### 5. Update Requirements
```bash
/tddbee:update "Add export to PDF feature"
```
## Commands
| Command | Description |
|---------|-------------|
| `/tddbee:init <inputs>` | Initialize project with specifications |
| `/tddbee:run` | Start autonomous TDD implementation |
| `/tddbee:pause` | Pause work gracefully |
| `/tddbee:resume` | Resume from checkpoint |
| `/tddbee:status` | Show progress and status |
| `/tddbee:update <inputs>` | Update requirements mid-flight |
## Project Structure
After initialization, TddBee creates a `.tddbee/` directory:
```
project/
├── .tddbee/
│ ├── features.json # Feature list with completion status
│ └── config.json # Project configuration
├── ... your app code ...
```
### features.json
The feature list with acceptance criteria:
```json
{
"project": "My Project",
"features": [
{
"id": "F001",
"title": "User can log in",
"description": "Implement user login with email",
"category": "core",
"completed": false,
"acceptance_criteria": [
"Login form accepts email and password",
"Invalid credentials show error message",
"Successful login redirects to dashboard"
]
}
]
}
```
### config.json
Current project state:
```json
{
"project_name": "My Project",
"current_feature": "F003",
"completed_features": 2,
"total_features": 12
}
```
## TDD Workflow
For each feature, TddBee:
1. **Updates status** - Marks feature as in-progress
2. **Writes tests** - Creates tests for ALL acceptance criteria
3. **Runs tests** - Verifies they fail (RED)
4. **Implements code** - Minimal code to pass (GREEN)
5. **Refactors** - Cleans up while tests pass
6. **Verifies criteria** - Confirms ALL acceptance criteria are met
7. **Marks complete** - Sets `completed: true` only when verified
8. **Commits** - Saves progress to git
## Based On
Inspired by [Anthropic's autonomous-coding demo](https://github.com/anthropics/claude-quickstarts/tree/main/autonomous-coding).
## License
MIT