13 KiB
PM Commands: Spec Management System - Implementation Summary
Date: 2025-11-10 Status: ✅ COMPLETE Version: PM Commands 2.0 + Spec Management
🎯 Overview
Implemented a comprehensive Spec Management System for PM Commands, enabling spec-first development workflow with Linear Documents integration. This enhances the existing PM Commands 2.0 (Interactive Mode) with 6 new spec-focused commands plus a context-aware help system.
📊 What Was Built
6 New Spec Management Commands
1. /ccpm:spec:create <type> "<title>" [parent-id]
Purpose: Create Epic/Feature with Linear Document
Features:
- Creates Linear Initiative (Epic) or Parent Issue (Feature)
- Generates associated Linear Document for specs
- Pre-populates with appropriate template (Epic Spec or Feature Design)
- Links document to issue
- Supports hierarchy (Features can belong to Epics)
Templates Included:
- Epic Spec Template: Vision, User Research, Architecture, Features Breakdown, Timeline, Security
- Feature Design Template: Requirements, UX, Technical Design, Testing, Implementation Plan, Risks
2. /ccpm:spec:write <doc-id> <section>
Purpose: AI-assisted spec writing with codebase analysis
Sections:
requirements- Functional, non-functional, acceptance criteriaarchitecture- System design, component breakdown, tech stackapi-design- RESTful endpoints, request/response, validationdata-model- Database schema, TypeScript types, migrationstesting- Unit, integration, E2E strategiessecurity- Auth, validation, rate limiting, audit logsuser-flow- User journeys, wireframes, error statestimeline- Task breakdown, estimates, milestonesall- Write all sections sequentially
AI Capabilities:
- Analyzes existing codebase for patterns
- Fetches library documentation via Context7 MCP
- Follows project conventions
- Generates specific, testable content
3. /ccpm:spec:review <doc-id>
Purpose: AI-powered spec validation
Analysis:
- Completeness Score (0-100%) based on required vs optional sections
- Quality Assessment: Specificity, testability, clarity, consistency
- Risk Identification: Scope creep, technical risks, timeline issues
- Grading: A (90-100%), B (75-89%), C (60-74%), D (50-59%), F (<50%)
Output:
- Detailed review report
- Actionable recommendations
- Best practices checklist
- Missing sections identified
4. /ccpm:spec:break-down <epic-or-feature-id>
Purpose: Generate implementation items from spec
Breakdown Logic:
- Epic → Features: Parses "Features Breakdown" table, creates Parent Issues
- Feature → Tasks: Parses "Task Breakdown" checklist, creates Sub-Issues
Features:
- Auto-extracts from spec sections
- AI suggests missing items
- Detects and preserves dependencies
- Maps priorities (P0=Urgent, P1=High, etc.)
- Converts time estimates to Linear points
- Shows preview before creation
- Requires user confirmation
5. /ccpm:spec:migrate <project-path> [category]
Purpose: Migrate existing markdown specs to Linear
Discovery:
- Scans
.claude/directory: docs, plans, enhancements, tasks, research, analysis - Categorizes files: Epic, Feature, Task, Documentation
- Auto-detects based on content patterns and file location
Migration Process:
- Discover all markdown files in project
- Categorize by type (Epic/Feature/Task/Doc)
- Show detailed preview for EVERY file (MANDATORY)
- Ask confirmation before ANY creation
- Create Linear Issues + Documents
- Extract checklists → create sub-tasks
- Move originals to
.claude/migrated/ - Create breadcrumb files with Linear links
Safety:
- ✅ ALWAYS shows full preview before migration
- ✅ Requires explicit confirmation
- ✅ Original files moved (NOT deleted)
- ✅ Can rollback from
.claude/migrated/ - ✅ Preserves full content in Linear Documents
6. /ccpm:spec:sync <doc-id-or-issue-id>
Purpose: Sync spec with implementation reality
Drift Detection:
- Requirements Drift: Missing, extra, or changed features
- API Drift: Endpoint signatures, new/missing endpoints
- Data Model Drift: Schema changes, field modifications
- Task Drift: Status mismatches between spec checklist and Linear
Sync Options:
- Update spec to match reality (recommended)
- Update implementation to match spec
- Hybrid approach (choose per item)
- Review only
Drift Score: 0-100% (lower is better, 0% = perfect sync)
1 New Help Command
7. /ccpm:utils:help [issue-id]
Purpose: Context-aware help and command suggestions
Features:
- General Mode: Shows all commands categorized
- Context-Aware Mode: Analyzes issue status and suggests relevant commands
- Priority-Based Suggestions: High/Medium/Low based on current state
- Interactive Actions: Quick action menu for common workflows
- Workflow Guidance: Spec-first vs Task-first flowcharts
Smart Suggestions:
- Status "Planning" → Suggest: Create spec, Write spec, Break down
- Status "In Progress" → Suggest: Next action, Sync spec, Quality checks
- Status "Verification" → Suggest: Run verification
- Status "Done" → Suggest: Finalize, Final spec sync
- Label "blocked" → Suggest: Fix issues, Review status
📁 Files Created
Spec Management Commands (6 files)
`$CCPM_COMMANDS_DIR/`
├── create.md - Create Epic/Feature with spec doc (459 lines)
├── write.md - AI-assisted spec writing (934 lines)
├── review.md - Spec validation & grading (333 lines)
├── break-down.md - Epic→Features, Feature→Tasks (413 lines)
├── migrate.md - Migrate .claude/ specs to Linear (634 lines)
└── sync.md - Sync spec with implementation (536 lines)
Help Command (1 file)
`$CCPM_COMMANDS_DIR/`
└── help.md - Context-aware help (434 lines)
Documentation Updates (1 file)
`$CCPM_COMMANDS_DIR/`
└── README.md - Updated with spec management section
Total: 8 files created/modified, ~3,743 lines of documentation
🔄 Integration with Existing PM Commands
Spec Management enhances PM Commands 2.0 (Interactive Mode + 10 workflow commands):
Combined Workflow Options
Option 1: Spec-First Workflow (Recommended for Personal Project)
1. /ccpm:spec:create epic "User Auth"
2. /ccpm:spec:write DOC-123 all
3. /ccpm:spec:review DOC-123
4. /ccpm:spec:break-down WORK-100 ← Creates Features
5. /ccpm:spec:write DOC-124 all ← For each feature
6. /ccpm:spec:break-down WORK-101 ← Creates Tasks
7. /ccpm:implementation:start WORK-201
8. /ccpm:spec:sync WORK-101 ← Keep in sync
9. /ccpm:verification:check WORK-201
10. /ccpm:complete:finalize WORK-201
Option 2: Task-First Workflow (Quick tasks)
1. /ccpm:planning:create "Add dark mode" personal-project
2. /ccpm:implementation:start WORK-300
3. /ccpm:verification:check WORK-300
4. /ccpm:complete:finalize WORK-300
Option 3: Migrate Existing → Spec Workflow
1. /ccpm:spec:migrate ~/personal/personal-project
2. Review migrated items in Linear
3. /ccpm:spec:sync DOC-XXX ← Sync with codebase
4. Continue with spec-first workflow
All PM Commands (25 Total)
Spec Management (6):
/ccpm:spec:create/ccpm:spec:write/ccpm:spec:review/ccpm:spec:break-down/ccpm:spec:migrate/ccpm:spec:sync
Planning (3):
/ccpm:planning:create/ccpm:planning:plan/ccpm:planning:quick-plan
Implementation (3):
/ccpm:implementation:start/ccpm:implementation:next/ccpm:implementation:update
Verification (3):
/ccpm:verification:check/ccpm:verification:verify/ccpm:verification:fix
Completion (1):
/ccpm:complete:finalize
Utilities (9):
/ccpm:utils:status/ccpm:utils:context/ccpm:utils:report/ccpm:utils:insights/ccpm:utils:auto-assign/ccpm:utils:sync-status/ccpm:utils:rollback/ccpm:utils:dependencies/ccpm:utils:agents/ccpm:utils:help← NEW
🎯 Use Cases
Use Case 1: New Feature Development (personal-project)
Scenario: Building "Task Comments System" feature
# 1. Create Feature with Spec
/ccpm:spec:create feature "Task Comments System"
# Creates: WORK-100 + DOC-123
# 2. Write Comprehensive Spec
/ccpm:spec:write DOC-123 requirements
/ccpm:spec:write DOC-123 api-design
/ccpm:spec:write DOC-123 data-model
/ccpm:spec:write DOC-123 testing
# AI generates detailed specs based on codebase
# 3. Review & Validate
/ccpm:spec:review DOC-123
# Output: Grade A (92%) - Ready for approval
# 4. Break Down into Tasks
/ccpm:spec:break-down WORK-100
# Creates: WORK-101, WORK-102, WORK-103 (subtasks)
# 5. Implement
/ccpm:implementation:start WORK-101
# Works on first subtask
# 6. Keep Spec in Sync
/ccpm:spec:sync WORK-100
# Detects: API added optional field not in spec
# Updates spec to match reality
Use Case 2: Migrating Existing Specs
Scenario: You have 45 markdown files in .claude/ to migrate
# 1. Run Migration
/ccpm:spec:migrate ~/personal/personal-project
# Output: Detailed preview for ALL 45 files
# - 2 Epics → Linear Initiatives + Spec Docs
# - 12 Features → Parent Issues + Design Docs
# - 25 Tasks → Issues (some with subtasks)
# - 6 Docs → Reference documents
# 2. Confirm after reviewing preview
# → Creates all items in Linear
# 3. Review in Linear
/ccpm:utils:report personal-project
# Shows all migrated items organized
# 4. Continue with spec workflow
/ccpm:spec:sync WORK-102
/ccpm:spec:break-down WORK-103
Use Case 3: Daily Development
Morning:
/ccpm:utils:report personal-project
# Shows: 5 active tasks, 2 blocked, 3 in verification
/ccpm:utils:help WORK-150
# Suggests: Continue with /ccpm:implementation:next WORK-150
During Work:
/ccpm:implementation:next WORK-150
# AI: Next task is Task 3 (no dependencies, ready)
/ccpm:spec:sync WORK-150
# Drift Score: 15% (minor - API signature changed)
# Updates spec to match
End of Day:
/ccpm:verification:check WORK-150
# All checks pass
/ccpm:complete:finalize WORK-150
# Creates PR, updates Jira (with confirmation)
✅ Key Features
1. Safety First
- Migration: ALWAYS shows full preview, requires confirmation
- External Systems: Never writes to Jira/Confluence/Slack without explicit approval
- Rollback: Original files preserved in
.claude/migrated/
2. AI-Powered
- Codebase Analysis: Searches existing code for patterns
- Library Docs: Fetches latest via Context7 MCP
- Smart Suggestions: Context-aware next actions
- Complexity Analysis: Estimates and risk identification
3. Spec-First Development
- Linear Documents as source of truth
- Epic → Feature → Task hierarchy
- Sync Detection for spec drift
- Automated Breakdown from specs
4. Interactive & Guided
- Context-Aware Help: Suggests commands based on status
- Interactive Mode: Every command suggests next action
- Workflow Guidance: Built-in flowcharts and examples
5. Migration-Friendly
- Discovers all markdown specs automatically
- Categorizes intelligently (Epic/Feature/Task)
- Preserves full content and metadata
- Safe with backup and rollback
🚀 Next Steps for User
Getting Started with Spec Management
-
Migrate Existing Specs (if you have any):
/ccpm:spec:migrate ~/personal/personal-project -
Create First Epic with Spec:
/ccpm:spec:create epic "Your Epic Name" /ccpm:spec:write DOC-XXX all /ccpm:spec:review DOC-XXX -
Break Down into Features:
/ccpm:spec:break-down WORK-XXX -
Start Implementation:
/ccpm:implementation:start WORK-YYY -
Keep Spec in Sync:
/ccpm:spec:sync WORK-XXX
Daily Workflow
Morning:
/ccpm:utils:report personal-project
/ccpm:utils:help WORK-XXX # Get context-aware suggestions
During Work:
/ccpm:implementation:next WORK-XXX
/ccpm:spec:sync WORK-XXX # Periodically
End of Day:
/ccpm:verification:check WORK-XXX
/ccpm:complete:finalize WORK-XXX
📚 Documentation
Main README:
- ``$CCPM_COMMANDS_DIR/
README.md
Spec Command Docs:
- ``$CCPM_COMMANDS_DIR/
*.md
Help Command:
/ccpm:utils:help # General help
/ccpm:utils:help WORK-123 # Context-aware help
🎉 Summary
Implemented:
- ✅ 6 Spec Management Commands
- ✅ 1 Context-Aware Help Command
- ✅ Comprehensive documentation
- ✅ Safety-first migration process
- ✅ AI-powered spec writing
- ✅ Spec-implementation sync detection
- ✅ Integration with PM Commands 2.0
Benefits:
- 📐 Spec-first development workflow
- 🔄 Keep specs in sync with code
- 📦 Migrate existing markdown specs
- 🤖 AI-assisted spec writing
- 🎯 Context-aware guidance
- ✅ Linear Documents as source of truth
Total Commands: 25 (was 19 in PM Commands 2.0, now 25 with Spec Management)
Ready to use! 🚀