Skip to content
Open
Show file tree
Hide file tree
Changes from 12 commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
213053c
Remove title field from generate-spec prompt
iaminawe Oct 17, 2025
a645aa6
Remove title field from prompts and parser
iaminawe Oct 17, 2025
b285a82
Remove title field from test fixtures
iaminawe Oct 17, 2025
e795fe8
feat: add reverse-engineer-codebase prompt for contextual analysis
iaminawe Oct 21, 2025
e0471a5
refactor: rename reverse-engineer-codebase to generate-codebase-context
iaminawe Oct 21, 2025
5f071b6
docs: add comprehensive research analysis for prompt improvements
iaminawe Oct 21, 2025
e8c27f6
feat: enhance generate-codebase-context with evidence citations and c…
iaminawe Oct 21, 2025
754c5ea
docs: add comprehensive progress tracking and future roadmap
iaminawe Oct 21, 2025
5a8cedf
docs: add research directory README with complete overview
iaminawe Oct 21, 2025
f5ce583
docs: add accurate PR description for new prompt creation
iaminawe Oct 21, 2025
9fe9884
docs: emphasize NEW prompt creation in PR description
iaminawe Oct 21, 2025
1ec8b01
refactor: reorganize documentation structure
iaminawe Oct 21, 2025
c19cfe2
fix: resolve pre-commit markdownlint issues
iaminawe Oct 21, 2025
6fc25c6
chore: remove accidentally committed WARP.md session notes
iaminawe Oct 21, 2025
27b548e
Merge branch 'main' into add-reverse-engineer-codebase-prompt
iaminawe Oct 21, 2025
50061d7
fix: resolve pre-commit markdownlint issues
github-actions[bot] Oct 21, 2025
f387337
fix: resolve pre-commit issues after merge from main
iaminawe Oct 21, 2025
f3c2b1e
fix: convert emphasis to headings to resolve MD036 linting issues
github-actions[bot] Oct 21, 2025
705f76d
feat: enhance generate-spec prompt with evidence-based approach
iaminawe Oct 21, 2025
02ff6fb
feat: enhance generate-codebase-context with advanced analysis features
iaminawe Oct 21, 2025
f93790c
feat: add explicit 'What NOT to Do' section to generate-spec
iaminawe Oct 21, 2025
098785a
refactor: condense generate-codebase-context prompt from 1264 to 930 …
iaminawe Oct 21, 2025
e432810
fix: add blank lines in code blocks for markdownlint compliance
iaminawe Oct 21, 2025
b6535ee
Merge branch 'main' into add-reverse-engineer-codebase-prompt
iaminawe Oct 23, 2025
d1274aa
feat: add comprehensive codebase context analysis for mcp-spec-driven
iaminawe Oct 23, 2025
78db745
chore: update repository URLs to spec-driven-workflow
iaminawe Oct 23, 2025
98ea2db
fix: update research doc paths and restore Phase 4 checkpoint
github-actions[bot] Oct 23, 2025
e0a8fda
fix: resolve markdown linting issues in claude-code-feature-dev-compa…
github-actions[bot] Oct 23, 2025
ba6f472
fix: add blank line and language specifier to code block in claude-co…
github-actions[bot] Oct 23, 2025
059d75d
fix: apply markdownlint formatting fixes
iaminawe Oct 23, 2025
1f8152d
fix: add Phase 5.5 to execution rules in generate-context prompt
github-actions[bot] Oct 24, 2025
f1119ae
docs: resolve CodeRabbit nitpick comments
github-actions[bot] Oct 24, 2025
a1c31ba
Merge branch 'main' into add-reverse-engineer-codebase-prompt
iaminawe Oct 24, 2025
c265968
fix: add blank line before list in research-synthesis.md
iaminawe Oct 24, 2025
9565791
fix: convert emphasis to headings in generate-spec.md (MD036)
iaminawe Oct 24, 2025
789bcd9
Merge branch 'main' into add-reverse-engineer-codebase-prompt
iaminawe Oct 24, 2025
1b75ddd
chore: revert generate-spec to default from main
iaminawe Oct 27, 2025
760ad8b
chore: remove progress.md for now
iaminawe Oct 27, 2025
7995397
chore: remove reference to progress.md
iaminawe Oct 27, 2025
c45c7e0
Merge branch 'main' into generate-context-prompt
iaminawe Nov 10, 2025
ba75202
refactor: enhance generate-spec context assessment and remove researc…
iaminawe Nov 10, 2025
2039200
docs: add generate-context prompt to workflow documentation
iaminawe Nov 10, 2025
61b094b
fix: add blank line before list in README.md (markdownlint MD032)
iaminawe Nov 10, 2025
9dbb526
chore: revert unrelated task file URL changes
iaminawe Nov 10, 2025
42115f4
docs: clarify 00N-SYSTEM.md naming pattern with examples
iaminawe Nov 10, 2025
9217cfd
docs: fix step numbering and artifact naming consistency in README
github-actions[bot] Nov 10, 2025
4c1eb4d
fix: correct ordered list numbering for markdownlint compliance
iaminawe Nov 10, 2025
332589f
fix: complete ordered list numbering fix in TLDR section
iaminawe Nov 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
137 changes: 137 additions & 0 deletions WARP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
# WARP.md

This file provides guidance to WARP (warp.dev) when working with code in this repository.

## Project Overview

This is a **Spec Driven Development (SDD) MCP** project that provides a ubiquitous framework for spec driven development using MCP (Model Context Protocol) technology. The framework consists of structured Markdown prompts and workflows that guide AI agents through specification creation, task list generation, and task management.

## Development Environment

- **Python**: 3.12 (see `.python-version`)
- **Package Manager**: `uv` (modern Python package and project manager)
- **Dependencies**: FastMCP for building MCP servers and clients
- **Release Process**: Semantic Release via GitHub Actions (planned)

## Common Development Commands

### Environment Setup
```bash
# Install dependencies
uv sync

# Activate virtual environment (if needed)
source .venv/bin/activate
```

### Running the Application
```bash
# Run the basic hello script
python hello.py

# Run with uv
uv run hello.py
```

### Development Tools
```bash
# Install development dependencies
uv sync --group dev

# Install pre-commit hooks (when available)
pre-commit install
```

## Architecture and Structure

### Core Framework Components

The project implements a **prompt-driven workflow system** with three main phases:

1. **Specification Generation** (`prompts/generate-spec.md`)
- Guides creation of detailed feature specifications
- Uses structured questioning to gather requirements
- Outputs numbered specs in `/tasks/` directory as `[n]-spec-[feature-name].md`

2. **Task List Generation** (`prompts/generate-task-list-from-spec.md`)
- Converts specifications into actionable task lists
- Creates demoable units of work with proof artifacts
- Outputs task files as `tasks-[spec-file-name].md`

3. **Task Management** (`prompts/manage-tasks.md`)
- Provides guidelines for executing and tracking tasks
- Defines task states: `[ ]` (not started), `[~]` (in progress), `[x]` (completed)
- Enforces one-task-at-a-time completion protocol

### Key Design Principles

- **Simple**: Transparent access to underlying tools and processes
- **Ubiquitous**: Works with any AI agent and model
- **Reliable**: Delivers consistent results through structured workflows
- **Flexible**: Compatible with existing workflows and tools
- **Scalable**: Handles projects of any size

### Workflow States and Transitions

Tasks follow a strict progression:
- Parent tasks contain demoable units of work with demo criteria and proof artifacts
- Subtasks must be completed sequentially (one at a time)
- All subtasks must pass tests before parent task completion
- Each completed parent task requires a commit using conventional commit format

## File Organization

```
/
├── prompts/ # Core SDD workflow prompts
│ ├── generate-spec.md # Specification generation workflow
│ ├── generate-task-list-from-spec.md # Task list creation from specs
│ └── manage-tasks.md # Task execution and management guidelines
├── tasks/ # Generated specs and task lists (created as needed)
│ ├── [n]-spec-[name].md # Feature specifications
│ └── tasks-[spec].md # Task lists derived from specs
├── hello.py # Basic test script
├── pyproject.toml # Python project configuration
├── uv.lock # Dependency lock file
└── README.md # Project documentation
```

## Working with the SDD Framework

### Generating a New Feature Spec

Reference the `prompts/generate-spec.md` workflow to create specifications. The process involves:
1. Providing initial feature description
2. Answering structured clarifying questions
3. Generating spec with required sections (goals, user stories, requirements, etc.)
4. Saving as `/tasks/[n]-spec-[feature-name].md`

### Creating Task Lists from Specs

Use `prompts/generate-task-list-from-spec.md` to convert specs into actionable tasks:
1. Analyze existing spec file
2. Generate high-level parent tasks (demoable units)
3. Break down into detailed subtasks
4. Save as `/tasks/tasks-[spec-file-name].md`

### Task Execution Protocol

Follow `prompts/manage-tasks.md` guidelines:
- Work on one subtask at a time
- Mark tasks in progress with `[~]`
- Complete full test suite before marking parent tasks complete
- Use conventional commits for completed parent tasks
- Update relevant files section as you work

## Important Notes

- The `/tasks/` directory is created dynamically as specs and task lists are generated
- Each parent task must include **Demo Criteria** and **Proof Artifact(s)** - these are mandatory
- Task completion requires passing all tests and proper commit messages
- The framework is designed to work with any AI tool and model through MCP technology

## Future Planned Features

- User-defined output formats (Markdown, Jira, GitHub issues)
- Customizable prompts for the SDD workflow
- Integration with project management tools via MCP
Loading
Loading