A comprehensive, language-agnostic starter repository for implementing AI-assisted Test-Driven Development with Claude Code. Fork this to bootstrap any project with a proven TDD workflow that leverages specialized AI agents for each development phase.
This framework adapts to any programming language or technology stack - from JavaScript to Rust, from Python to Go. The AI agents understand your project's specific language and apply TDD principles appropriately.
This starter gives you:
- 5 Specialized AI Agents for the TDD workflow (Coordinator, QA, Developer, Architect, Code Reviewer)
- Adaptive Project Initialization that discovers your tech stack and generates appropriate configuration
- Linear Integration Commands for managing Epics, Stories, and Subtasks
- Documentation Templates for PRD, Architecture, and Contributing guides
- Language-Agnostic Structure that adapts to any technology stack
# Fork on GitHub, then clone
git clone https://github.com/[your-username]/[your-project-name]
cd [your-project-name]# Open in Claude Code
claude .
# Run the initialization command
> initialize-project
The initialization will:
- Detect your existing technology stack and documentation
- Interview you to create missing documentation (PRD, Architecture)
- Generate a customized CLAUDE.md configuration
- Setup project structure and tooling
If using Linear for issue tracking:
# Linear MCP should be installed and configured
# The initializer will help configure team and project IDs
.
├── .claude/ # Claude Code configuration
│ ├── agents/ # Specialized TDD agents
│ │ ├── coordinator.md # Orchestrates workflow
│ │ ├── qa.md # Writes tests from AC
│ │ ├── developer.md # Implements code
│ │ ├── architect.md # Refactors design
│ │ └── code-reviewer.md # Reviews and validates
│ └── commands/ # Workflow commands
│ ├── initialize-project.md
│ ├── generate-claude-md.md
│ ├── create-epic.md
│ ├── create-story.md
│ ├── create-subtasks.md
│ ├── check-overlap.md
│ └── fetch-context.md
├── docs/ # Documentation
│ ├── templates/ # Interview templates
│ │ ├── prd-interview.md
│ │ └── architecture-interview.md
│ ├── design/ # Design documents
│ │ ├── epics/
│ │ ├── stories/
│ │ └── story-design-template.md
│ ├── adr/ # Architecture Decision Records
│ │ └── 0000-template.md
│ ├── prd.md # Product Requirements (template)
│ └── architecture.md # Architecture Doc (template)
├── src/ # Source code (your code)
├── tests/ # Test files (your tests)
├── scripts/ # Build/deploy scripts
├── config/ # Configuration files
├── ABOUT.md # TDD methodology guide
├── CONTRIBUTING.md # Development standards
└── CLAUDE.md # Generated configuration
This repository implements a Test-Driven Development workflow:
graph LR
Context[Fetch Context] --> Design[Technical Design]
Design --> Red[Write Tests]
Red --> Green[Implement]
Green --> Refactor[Improve]
Refactor --> Review[Review]
Review --> Validate[Validate]
Validate --> Merge[Merge]
- Context: Fetch requirements from Linear (Epic → Story → Subtask)
- Design: Create/review technical design (with ADR if needed)
- Red: QA agent writes failing tests from acceptance criteria
- Green: Developer agent implements minimal code to pass
- Refactor: Architect agent improves design keeping tests green
- Review: Code Reviewer agent validates against standards
- Validate: Run CI/CD and verify Definition of Done
- Merge: Complete PR and update Linear
- Orchestrates the entire TDD workflow
- Never writes code directly
- Gates phase transitions
- Updates Linear status
- Writes comprehensive tests from acceptance criteria
- Covers edge cases and error conditions
- Maps tests to specific AC items
- Implements minimal code to pass tests
- Adds missing tests discovered during implementation
- Keeps changes small and focused
- Refactors code while maintaining green tests
- Enforces architectural patterns
- Optimizes performance and security
- Verifies acceptance criteria satisfaction
- Checks security, performance, and maintainability
- Provides pass/fail decision with feedback
create-epic: Generate well-structured epics with minimal overlapcreate-story: Create stories that reference epics efficientlycreate-subtasks: Break stories into atomic, hour-sized taskscheck-overlap: Remove duplication between hierarchy levelsfetch-context: Get full Epic → Story → Subtask context
Epic (Multi-sprint feature)
└── Story (Single-sprint deliverable)
└── Subtask (Hours-based implementation)
This framework is truly language-agnostic. The initialization process automatically detects and adapts to your technology stack, generating appropriate configurations and applying language-specific best practices while maintaining consistent TDD principles.
The framework can automatically detect and adapt to:
- JavaScript/TypeScript: package.json, tsconfig.json
- Python: requirements.txt, setup.py, Pipfile
- Go: go.mod, go.sum
- Java: pom.xml, build.gradle
- Rust: Cargo.toml
- C#: *.csproj, *.sln
- Ruby: Gemfile
- PHP: composer.json
- And many more...
No language preference - the framework provides the same powerful TDD workflow regardless of your technology choice.
Based on detection, CLAUDE.md will include:
- Correct test commands for your framework
- Appropriate build and lint commands
- Language-specific best practices
- Relevant Definition of Done items
- ABOUT.md: Complete TDD methodology and workflow details
- CONTRIBUTING.md: Development standards and guidelines
- docs/prd.md: Product Requirements template
- docs/architecture.md: Architecture template
After initialization:
- CLAUDE.md: Your project-specific configuration
- Custom PRD: Based on your interview responses
- Custom Architecture: Based on your technical choices
- Read ABOUT.md to understand TDD
- Review agent definitions in
.claude/agents/ - Practice with
fetch-contextand the QA agent - Follow the Red → Green → Refactor cycle
- Ensure everyone has Claude Code installed
- Configure Linear MCP for issue tracking
- Establish ADR practice for architectural decisions
- Use the coordinator agent for workflow orchestration
Edit agent definitions in .claude/agents/ to match your:
- Coding standards
- Test frameworks
- Review criteria
- Definition of Done
Create new commands in .claude/commands/ for:
- Project-specific workflows
- Integration with other tools
- Custom automation
Modify templates in docs/templates/ to include:
- Industry-specific requirements
- Compliance needs
- Company standards
We welcome contributions! See CONTRIBUTING.md for:
- Development setup
- Coding standards
- Pull request process
- Testing guidelines
See ABOUT.md for tools that support similar workflows.
MIT License - See LICENSE for details
- Fork this repository
- Clone to your local machine
- Open in Claude Code
- Run
initialize-project - Answer initialization interviews
- Review generated CLAUDE.md
- Configure Linear (if using)
- Create your first Epic/Story
- Start TDD workflow with coordinator
- Always start with context: Use
fetch-contextbefore beginning work - Let agents specialize: Don't have one agent do everything
- Maintain documentation: Keep PRD and Architecture current
- Use ADRs: Document significant decisions
- Small PRs: One story per PR maximum
- Update Linear: Keep issue status current
Ready to implement bulletproof TDD with AI assistance? Fork this repo and run initialize-project in Claude Code!