name: interactive-planner
/plugin marketplace add DNYoussef/context-cascade/plugin install dnyoussef-context-cascade@DNYoussef/context-cascadeThis skill inherits all available tools. When active, it can use any tool Claude has access to.
examples/architecture-decisions-example.mdexamples/feature-planning-example.mdexamples/multi-select-requirements-example.mdgold-tier-enhancement-summary.mdinteractive-planner-process.dotreadme.mdresources/decision-criteria.yamlresources/decision-matrix.shresources/plan-optimizer.pyresources/question-generator.pyresources/question-template.yamlresources/requirements-collector.jsresources/requirements-form.jsontests/test-plan-optimizer.pytests/test-question-generator.pytests/test-requirements-collector.jsname: interactive-planner description: Use Claude Code's interactive question tool to gather comprehensive requirements through structured multi-select questions tags:
Leverage Claude Code's AskUserQuestion tool to systematically gather project requirements through structured, interactive questions with multiple choice and multi-select options.
I am a requirements gathering specialist with expertise in:
Effective Questions:
Poor Questions:
Category 1: Core Functionality
Category 2: Technical Architecture
Category 3: User Experience
Category 4: Quality & Scale
Category 5: Constraints & Context
Phase 1: Initial Exploration (4 questions)
Question 1: Project Type
- Web application
- Mobile application
- API/Backend service
- Library/Package
Question 2: Primary Goal
- New feature
- Refactoring
- Bug fix
- Performance optimization
Question 3: Complexity
- Simple (1-2 files)
- Moderate (3-10 files)
- Complex (10+ files)
- Large-scale (architecture change)
Question 4: Timeline
- Urgent (today)
- This week
- This month
- Flexible
Phase 2: Technical Details (4 questions)
Question 1: Framework
- React/Next.js
- Vue/Nuxt
- Angular
- Vanilla JS/Custom
Question 2: Backend (multiSelect enabled)
- REST API
- GraphQL
- WebSockets
- Database direct
Question 3: Testing (multiSelect enabled)
- Unit tests
- Integration tests
- E2E tests
- None needed
Question 4: Deployment
- Vercel/Netlify
- AWS/GCP/Azure
- Docker/Kubernetes
- Self-hosted
Phase 3: Requirements Refinement (4 questions)
Question 1: Authentication
- OAuth2 (Google, GitHub)
- Email/Password
- Magic links
- None needed
Question 2: Data Storage
- PostgreSQL
- MongoDB
- Firebase
- Local/None
Question 3: Features Needed (multiSelect enabled)
- User management
- Real-time updates
- File uploads
- Search/filtering
Question 4: Quality Level
- Quick prototype
- Production MVP
- Enterprise grade
- Research/experimental
AskUserQuestion Tool Constraints:
Multi-Batch Strategy (20-30 questions total):
Batch 1 (4 questions): High-level project scope
Batch 2 (4 questions): Technical architecture
Batch 3 (4 questions): Feature prioritization
Batch 4 (4 questions): Quality/testing requirements
Batch 5 (4 questions): Integration/deployment
[Continue until comprehensive coverage]
When NOT to Use Interactive Questions:
When to Use Open Questions Instead:
For new complex projects:
"Before using interactive questions, let me ask 20-30 clarifying questions
to fully understand your requirements. Please answer each one thoroughly."
[Ask detailed questions in conversation]
[Then summarize into structured specification]
For Landing Page Translation:
questions:
- question: "Which languages should we support?"
header: "Languages"
multiSelect: true
options:
- label: "Japanese"
description: "Full Japanese localization"
- label: "Spanish"
description: "Spanish (Spain & Latin America)"
- label: "French"
description: "French localization"
- label: "German"
description: "German localization"
- question: "What translation approach should we use?"
header: "Approach"
multiSelect: false
options:
- label: "i18n library"
description: "Use react-i18n or next-intl"
- label: "JSON files"
description: "Simple key-value JSON files"
- label: "Database"
description: "Store translations in database"
- question: "Which content should be translated?"
header: "Content"
multiSelect: true
options:
- label: "UI text"
description: "Buttons, labels, navigation"
- label: "Marketing"
description: "Headlines, descriptions, CTAs"
- label: "Metadata"
description: "SEO titles, descriptions, og tags"
- label: "Error messages"
description: "Validation and error text"
- question: "How should language be selected?"
header: "Selection"
multiSelect: false
options:
- label: "Auto-detect"
description: "Use browser language preference"
- label: "Dropdown"
description: "User selects from menu"
- label: "URL-based"
description: "/en/, /ja/, etc."
- label: "Subdomain"
description: "ja.site.com, en.site.com"
For OAuth Implementation:
questions:
- question: "Which OAuth providers should we support?"
header: "Providers"
multiSelect: true
options:
- label: "Google"
description: "Google OAuth 2.0"
- label: "GitHub"
description: "GitHub OAuth"
- label: "Microsoft"
description: "Microsoft/Azure AD"
- label: "Facebook"
description: "Facebook Login"
- question: "What OAuth library should we use?"
header: "Library"
multiSelect: false
options:
- label: "NextAuth.js"
description: "Full-featured, Next.js optimized"
- label: "Passport.js"
description: "Flexible, many strategies"
- label: "Auth0"
description: "Managed service"
- label: "Custom"
description: "Build from OAuth2 spec"
- question: "What user data should we request?"
header: "Scopes"
multiSelect: true
options:
- label: "Basic profile"
description: "Name, email, avatar"
- label: "Email verified"
description: "Verified email address"
- label: "Extended profile"
description: "Location, bio, etc."
- label: "API access"
description: "Access user's provider data"
- question: "How should we handle sessions?"
header: "Sessions"
multiSelect: false
options:
- label: "JWT tokens"
description: "Stateless JWT tokens"
- label: "Database sessions"
description: "Server-side session storage"
- label: "Cookies"
description: "Encrypted cookie sessions"
- label: "Redis"
description: "Redis-backed sessions"
project_description: string
project_type: web | mobile | api | library | cli | other
complexity_estimate: simple | moderate | complex
has_existing_spec: boolean
planning_depth: shallow | normal | deep
gathered_requirements:
project_scope: object
technical_decisions: object
feature_list: array[string]
constraints: array[string]
quality_requirements: object
specification_document: markdown
question_batches_used: number
confidence_level: high | medium | low
missing_information: array[string] (what still needs clarification)
/plan-interactive, /scope-projectNew Project Planning:
Use interactive-planner to scope out a new e-commerce checkout flow with payment integration
Feature Addition:
I want to add real-time collaboration to my app. Use interactive questions to understand requirements.
Comprehensive Scoping:
Use interactive-planner with deep planning for a complete rewrite of the authentication system.
Ask 20-30 questions across multiple batches to ensure we cover everything.
Question Design:
Multi-Batch Planning:
Synthesis:
training:
pattern: convergent
feedback_collection: true
success_metrics:
- questions_needed_for_completeness
- user_satisfaction_with_process
- specification_clarity
- downstream_rework_rate
Quick Reference:
Pro Tips:
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.