A CLI tool for initializing specification-driven development projects with flexible, production-ready structures.
# Install globally
npm install -g specpilot
# Create a new project
specpilot init my-project --lang typescript --framework react
# Add specs to existing project
cd existing-project
specpilot add-specs
# Validate specifications
specpilot validateAfter creating a project, follow these steps to populate your specifications using AI:
- Open the generated guide: Check
.specs/README.mdfor full guidance - Copy the onboarding prompt: Use the prompt from
.specs/development/prompts.md - Paste into your AI agent: ChatGPT, Claude, or other AI assistants
- Review generated spec files: Examine the AI-generated requirements and architecture
This AI-assisted approach ensures comprehensive, high-quality specifications tailored to your project needs.
| Command | Description |
|---|---|
init <name> |
Initialize new SDD project |
add-specs |
Add specs to existing project |
validate |
Validate specification files |
list |
Show available templates |
migrate |
Migrate between spec versions |
specify <desc> |
Update project specifications |
# Initialize with specific language/framework
specpilot init api --lang python --framework fastapi
# Update specifications
specpilot specify "REST API for user management" --update
# Validate with auto-fix
specpilot validate --fix- React: SPA applications
- Express: REST APIs
- Next.js: Full-stack apps
- CLI: Command-line tools
- React: SPA applications
- Express: REST APIs
- Next.js: Full-stack apps
- CLI: Command-line tools
- FastAPI: Modern REST APIs
- Django: Full-stack applications
- Data Science: ML/Data Science projects
SpecPilot generates a .specs/ folder with organized subdirectories:
.specs/
βββ project/ # Project config & requirements
βββ architecture/ # System design & API specs
βββ planning/ # Roadmap & task tracking
βββ quality/ # Testing & documentation
βββ development/ # AI prompts & context
project.yaml: Project configuration and rulesrequirements.md: Functional/non-functional requirementsarchitecture.md: System architecture decisionsprompts.md: AI interaction tracking (MANDATED)tasks.md: Task management (backlog/sprint/completed)
SpecPilot requires no global configuration. Each project is self-contained with settings in project.yaml.
sudo chown -R $USER ~/.npm-global
npm config set prefix '~/.npm-global'specpilot list --verbosespecpilot validate --verbose --fixError: "Source structure 'complex' not found"
# For NEW projects, use:
specpilot init my-project
# For EXISTING projects without specs:
specpilot add-specs
# Only use migrate if you have an old .project-spec folder
specpilot migrate --from complex --to simple --backupDEBUG=specpilot specpilot <command>SpecPilot implements Specification-Driven Development (SDD) where specifications come first:
Specifications β Architecture β Code β Tests β Deployment
Benefits:
- Clarity: Everyone understands what needs to be built
- Consistency: Standardized structure across projects
- Quality: Built-in validation and testing
- AI-Ready: Clear context for AI assistants
- Maintainable: Comprehensive documentation
This project follows SDD principles. See .specs/ for contribution guidelines.
git clone https://github.com/girishr/SpecPilot.git
cd SpecPilot
npm install
npm run build
npm link # For local testing- Review
.specs/project/requirements.md - Check
.specs/planning/tasks.md - Update specs when making changes
- Run
specpilot validatebefore committing
- Full Guide: Comprehensive documentation
- CHANGELOG: Version history
- Issues: Bug reports & feature requests
MIT License - see LICENSE file for details.
Built with specification-driven development principles for serious production projects.