Create Project Specification
Interactive specification creation with intelligent tech stack suggestions.
Workflow
Step 1: Gather Project Idea
Ask the user to describe their project idea in free-form text:
"What would you like to build? Describe your project idea - what it does, who it's for, and any key features you have in mind."
Step 2: Analyze and Extract
From the user's description, identify:
- •Core functionality
- •Target users
- •Key features (list them)
- •Potential technical requirements
Step 3: Tech Stack Questions
Use AskUserQuestion to ask about technology choices. Ask contextually relevant questions based on the project type:
Language Selection:
question: "What programming language would you like to use?" options: - TypeScript (Recommended for web projects) - Python (Great for backends, data, ML) - Go (High-performance services) - Other (specify)
If TypeScript/JavaScript selected:
question: "Which package manager do you prefer?" options: - npm (Default, widely supported) - yarn (Fast, reliable) - pnpm (Efficient disk space) - bun (Fast, all-in-one)
Framework (contextual based on project type):
For web frontend:
question: "Which frontend framework?" options: - React (Most popular, large ecosystem) - Vue (Progressive, easy to learn) - Svelte (Compiled, fast) - Vanilla JS (No framework)
For backend API:
question: "Which backend framework?" options: - Express (Node.js, minimal) - Fastify (Node.js, fast) - FastAPI (Python, modern) - Hono (Edge-first, fast)
Database (if needed):
question: "Do you need a database?" options: - SQLite (File-based, simple) - PostgreSQL (Robust, scalable) - MongoDB (Document-based) - None (No database needed)
Testing:
question: "Which testing framework?" options: - Vitest (Fast, Vite-native) - Jest (Popular, full-featured) - Pytest (Python standard) - None (Skip for now)
Step 4: Generate SPEC.md
Create .mpx/SPEC.md with all gathered information:
# Project Specification ## Project Name [Name from user] ## Description [User's description, cleaned up] ## Tech Stack - Language: [selected] - Package Manager: [selected] - Framework: [selected] - Database: [selected] - Testing: [selected] ## Core Features 1. [Feature 1] 2. [Feature 2] ... ## Technical Requirements - [ ] [Auto-generated based on tech stack] - [ ] [e.g., "Set up TypeScript configuration"] - [ ] [e.g., "Configure ESLint and Prettier"] ## Success Criteria - [Generated from features] ## Notes [Any additional context from conversation]
Step 5: Summary
Show the user what was created and suggest next steps:
"Created
.mpx/SPEC.mdwith your project specification.Summary:
- •Project: [name]
- •Tech: [stack summary]
- •Features: [count]
Next steps:
- •Run
/mpx-parse-specto generate phased implementation plan- •Or run
/mpx-init-projectto also initialize git"
Notes
- •Always create SPEC.md in
.mpx/directory - •If
.mpx/doesn't exist, create it - •If SPEC.md already exists, ask before overwriting
- •Be helpful with tech stack suggestions based on project type