vm-planning
VM Planning Skill
Professional-grade planning for any development task, feature, or implementation with codebase awareness and best practices.
When to Use
- "Create a plan for..."
- "I need to plan..."
- "Help me plan the implementation of..."
- "Generate an implementation plan for..."
- "Plan a new feature"
- "Break down this task into steps"
- "Create a roadmap for..."
- "I need a detailed implementation strategy"
Workflow
Step 1: Initial Confirmation
ALWAYS start by asking:
ask_user_input_v0({
"questions": [
{
"question": "Do you want to proceed to create a plan?",
"type": "single_select",
"options": [
"Yes! Let's plan it!",
"No, Thanks."
]
}
]
})
If "No, Thanks." → Stop with:
No problem! Let me know when you need help planning something. 📋
If "Yes! Let's plan it!" → Proceed to Step 2
Step 2: Analyze User Request
Read and understand what the user wants to achieve:
- Extract the main goal/feature
- Identify technical requirements
- Understand constraints (time, technology, scope)
- Detect dependencies
- Clarify ambiguities (ask follow-up questions if needed)
Example Analysis:
User Request: "Add user authentication with OAuth"
Analysis:
✓ Main Goal: Implement OAuth authentication
✓ Requirements: OAuth providers (Google, GitHub?), JWT tokens, session management
✓ Dependencies: Need auth library, database for users
✓ Scope: Login, logout, protected routes, user profile
✓ Questions: Which OAuth providers? Existing user system?
Step 3: Codebase Context Selection
Prompt for analysis depth:
ask_user_input_v0({
"questions": [
{
"question": "How would you like to proceed with codebase analysis?",
"type": "single_select",
"options": [
"Check entire codebase + AGENTS.md, package.json and README.md (Recommended)",
"Quick"
]
}
]
})
Option 1: Comprehensive (Recommended)
Analyzing codebase... 🔍
Reading:
✓ AGENTS.md - Team conventions, workflows
✓ package.json - Dependencies, scripts, tech stack
✓ README.md - Project overview, setup
✓ Source files - Architecture, patterns, existing code
✓ Config files - Build, lint, test setup
Framework Detected: Next.js 14 + TypeScript
State: Redux Toolkit
Database: PostgreSQL + Prisma
Auth: Currently using email/password only
API: RESTful + tRPC
Cross-referencing with best practices...
Option 2: Quick
Quick analysis... ⚡
Detected:
- Framework: React 18
- Language: TypeScript
- Package Manager: npm
Proceeding with general best practices...
Step 4: Generate Plan
Create comprehensive plan covering:
- Overview - What we're building and why
- Technical Approach - How to implement it
- Architecture - Components, modules, data flow
- File Structure - New files and modifications
- Implementation Steps - Ordered tasks with details
- Dependencies - Packages, APIs, services needed
- Testing Strategy - How to validate
- Edge Cases - Potential issues and solutions
- Timeline - Realistic time estimates
- Checklist - Tasks to complete
Display progress:
Creating plan... 📝
✓ Analyzed requirements
✓ Cross-referenced codebase
✓ Identified architecture patterns
✓ Planned implementation steps
✓ Added testing strategy
✓ Estimated timeline
Plan complete!
Step 5: Export or Implement
Prompt for next action:
ask_user_input_v0({
"questions": [
{
"question": "Where would you like to export the plan?",
"type": "single_select",
"options": [
"Custom path and name (I'll specify)",
"Proceed with the plan!",
"Cancel"
]
}
]
})
Option 1: Custom path and name
- Ask user: "Please provide the path and filename (e.g., docs/AUTH_PLAN.md or ./FEATURE_PLAN.md):"
- Validate path is valid
- Export plan to specified location
- Respond:
Plan exported to {path}! 📋
Option 2: Proceed with the plan!
- Show confirmation prompt:
ask_user_input_v0({
"questions": [
{
"question": "Are you sure you want to proceed with implementing the plan?",
"type": "single_select",
"options": [
"Yes.",
"No."
]
}
]
})
- If "Yes." → Start implementation following the plan
- If "No." → Export to default location and stop
Option 3: Cancel
- Stop with:
Plan not exported. You can generate it again anytime! 📋
Planning Principles
1. Accuracy & Feasibility
DON'T mislead:
- ❌ Suggest impossible timelines
- ❌ Recommend unavailable libraries
- ❌ Ignore existing architecture
- ❌ Skip critical steps
- ❌ Assume user knowledge
DO ensure:
- ✅ Realistic time estimates
- ✅ Compatible with existing stack
- ✅ Follow project conventions
- ✅ Include all necessary steps
- ✅ Explain technical decisions
Example - Bad Plan:
## Implementation Plan
1. Add authentication (30 minutes)
2. Done!
Why bad: No details, unrealistic timeline, missing steps
Example - Good Plan:
## Implementation Plan
### Phase 1: Setup (2 hours)
1. Install dependencies
- npm install next-auth @prisma/client bcrypt
- npm install -D @types/bcrypt
2. Configure Prisma schema
- Add User model with authentication fields
- Create migration: npx prisma migrate dev
3. Set up environment variables
- NEXTAUTH_SECRET, NEXTAUTH_URL
- OAuth credentials (GOOGLE_ID, GOOGLE_SECRET)
### Phase 2: Implementation (4 hours)
[... detailed steps ...]
Why good: Specific commands, realistic time, detailed steps
2. Context Awareness
Analyze existing codebase:
// Detected pattern: Using custom API wrapper
// File: src/lib/api.ts
export async function apiRequest(endpoint: string, options?: RequestInit) {
const response = await fetch(`${API_BASE_URL}${endpoint}`, options);
return response.json();
}
// Plan should use this pattern, not fetch directly:
✅ "Use existing apiRequest() helper"
❌ "Use fetch() directly"
Respect conventions:
// Detected: Project uses named exports
export const UserService = { ... }; // ✅ Existing style
// Plan should follow:
export const AuthService = { ... }; // ✅ Consistent
export default AuthService; // ❌ Inconsistent
3. Completeness
Include ALL necessary aspects:
✅ Setup Requirements
- Environment variables
- API keys / credentials
- Database migrations
- Configuration files
✅ Implementation Details
- File-by-file breakdown
- Code snippets for complex logic
- Integration points with existing code
✅ Testing Strategy
- Unit tests to write
- Integration tests needed
- Manual testing steps
- Edge cases to verify
✅ Documentation
- README updates
- API documentation
- Inline code comments
- Usage examples
✅ Deployment Considerations
- Environment setup
- Build configuration
- Migration scripts
- Rollback plan
Plan Template
# [Feature Name] Implementation Plan
**Created**: YYYY-MM-DD
**Estimated Time**: X-Y hours
**Complexity**: Low/Medium/High
**Impact**: Low/Medium/High
## Overview
### Goal
[Clear description of what we're building]
### Why
[Business value, user benefit, or technical necessity]
### Success Criteria
- [ ] Criterion 1
- [ ] Criterion 2
- [ ] Criterion 3
## Technical Approach
### Architecture Decision
[Chosen approach and why]
**Alternatives Considered:**
1. Alternative 1 - Rejected because...
2. Alternative 2 - Rejected because...
### Technology Stack
- Framework: Next.js 14
- Language: TypeScript 5.0
- Database: PostgreSQL + Prisma
- Authentication: NextAuth.js
- State: Redux Toolkit
### Integration Points
- Existing user management system
- Payment processing module
- Email notification service
## Current State Analysis
### Existing Code
src/ ├── app/ │ ├── api/ (REST endpoints) │ └── (routes)/ ├── components/ (React components) ├── lib/ │ ├── db.ts (Prisma client) │ └── api.ts (API wrapper) └── types/ (TypeScript types)
### Identified Patterns
- Using server components by default
- API routes in app/api/
- Shared utilities in lib/
- Type definitions in types/
### Gaps to Fill
- ❌ No authentication system
- ❌ No protected route middleware
- ❌ No user session management
## File Structure
### New Files to Create
src/ ├── app/ │ ├── api/ │ │ └── auth/ │ │ └── [...nextauth]/ │ │ └── route.ts (NEW) │ ├── login/ │ │ └── page.tsx (NEW) │ └── dashboard/ │ └── page.tsx (NEW) ├── lib/ │ ├── auth.ts (NEW) │ └── authOptions.ts (NEW) ├── middleware.ts (NEW) └── types/ └── auth.ts (NEW)
### Files to Modify
- prisma/schema.prisma (Add User, Account, Session models)
- package.json (Add dependencies)
- .env.example (Add auth variables)
- README.md (Add auth setup instructions)
Best Practices
✅ Do:
- Break down into phases
- Include time estimates
- Add code examples
- Plan for edge cases
- Document decisions
- Include rollback plans
- Add success criteria
- Consider testing early
❌ Don't:
- Skip prerequisites
- Underestimate time
- Ignore existing patterns
- Assume knowledge
- Forget error handling
- Overlook edge cases
- Rush into implementation
Output Messages
After plan creation:
✅ Plan Created Successfully!
Summary:
- Phases: 5
- Total Steps: 28
- Estimated Time: 12-15 hours
- Complexity: Medium
- Files to Create: 8
- Files to Modify: 4
Plan includes:
✓ Detailed implementation steps
✓ Code examples
✓ Testing strategy
✓ Edge cases & solutions
✓ Timeline with phases
✓ Success criteria
After export:
✅ Plan Exported!
Location: {path}
Size: 15.2 KB
Sections: 10
Next steps:
1. Review the plan
2. Gather team feedback
3. Start with Phase 1
4. Track progress with checklist
Good luck! 🚀
After implementation start:
✅ Implementation Started!
Following plan: {plan_name}
Current Phase: Phase 1 - Setup & Configuration
Next Step: Install dependencies
Progress will be tracked automatically.
Let's build this! 💪
Framework-Specific Adjustments
React/Next.js
- Focus on component structure
- Consider server vs client components
- Plan for state management
- Include routing strategy
Node.js/Express
- Plan middleware order
- Structure route handlers
- Plan error handling
- Consider validation layer
Python/Django
- Plan models and migrations
- Structure views and serializers
- Plan URL patterns
- Include admin integration
Go
- Plan package structure
- Consider interfaces
- Plan error handling
- Include testing approach
Integration with Existing Code
Always:
- Read existing code first
- Match naming conventions
- Follow established patterns
- Respect architecture decisions
- Maintain consistency
- Reuse existing utilities
- Update related documentation
Example:
Detected: Project uses custom logger in lib/logger.ts
Plan: Use existing logger instead of console.log
✅ import { logger } from "@/lib/logger";
❌ console.log("message");
Quality Assurance
Before finalizing plan:
-
Technical Review
- Code examples compile
- Commands are correct
- Paths are valid
- Dependencies exist
-
Feasibility Check
- Timeline is realistic
- Team has required skills
- No missing prerequisites
- Resources are available
-
Completeness Audit
- All phases covered
- Testing included
- Documentation planned
- Edge cases addressed
-
Clarity Validation
- Steps are clear
- Examples are helpful
- Terms are explained
- Success is measurable
Final Notes
This skill creates production-ready implementation plans that:
- Are accurate and don't mislead
- Consider existing codebase
- Follow best practices
- Include all necessary details
- Provide realistic timelines
- Account for edge cases
- Enable successful execution
Every plan is tailored to the specific request, codebase, and team context. 🎯
More from zeal422/dev-toolbelt-by-vm
vm-bug-hunter
Detects actual programming errors including syntax, runtime, logical, semantic, linker, resource, security, type, and index/attribute errors. Auto-detects language and focuses on legitimate bugs, not hallucinations.
15vm-test-generator
Generates unit tests, integration tests, and edge cases for existing code. Auto-detects testing framework (Jest, Vitest, Pytest, Go test, etc.) and creates comprehensive tests to prevent regression.
10vm-code-refactor
Intelligent code refactoring based on best practices. Detects code smells, applies design patterns, improves readability, enforces SOLID principles, and optimizes performance. Auto-detects framework and generates comprehensive refactoring plans.
9vm-codebase-audit
Audit codebases with full recognition and PR review for uncommitted changes. Detects SEO issues, technical problems, security vulnerabilities, accessibility issues, performance bottlenecks, and more. Supports Normal, Strict, and Expert modes with Complete Audit or PR Review options.
9vm-codebase-indexer
Indexes an entire codebase into a local semantic vector store so the agent can search it efficiently instead of reading every file. Use when asked to "index the codebase", "scan the project", or before doing large-scale code analysis tasks.
4