118 lines
4.0 KiB
Markdown
118 lines
4.0 KiB
Markdown
---
|
|
allowed-tools: [Skill, Read, Grep, Glob, TodoWrite]
|
|
description: "Create and manage specifications through skills-based planning"
|
|
---
|
|
|
|
# /plan - Lightweight Planning Router
|
|
|
|
ARGUMENTS: $DESCRIPTION
|
|
|
|
## Purpose
|
|
Routes planning requests to specialized skills for specification creation and lifecycle management.
|
|
|
|
## Usage
|
|
```
|
|
/plan # Create new specification (delegates to managing-specifications skill)
|
|
/plan "User Auth" # Create spec with title
|
|
/plan --status # Show dashboard (delegates to managing-specifications skill)
|
|
```
|
|
|
|
## Interactive Specification Creation
|
|
|
|
The planning process is interactive - I'll ask clarifying questions to ensure the specification matches your intent:
|
|
|
|
**What I'll Ask About:**
|
|
- **Type & Scope**: What kind of work (feature/bugfix/refactor) and boundaries
|
|
- **Approach**: If multiple valid approaches exist, you choose which direction
|
|
- **Priorities**: Trade-offs between speed, simplicity, flexibility, maintainability
|
|
- **Dependencies**: What must be done first, what this blocks
|
|
- **Success Criteria**: How we'll know this is complete
|
|
|
|
**You'll make key decisions through structured questions before I generate the specification.**
|
|
|
|
## Execution
|
|
|
|
This command is a lightweight router that delegates to appropriate skills based on the request:
|
|
|
|
**Creating Specifications:**
|
|
When you request a new spec, immediately invoke the **managing-specifications skill** with user requirements.
|
|
|
|
**Managing Specifications:**
|
|
When checking status or managing lifecycle (activate, complete, etc.), invoke the **managing-specifications skill**.
|
|
|
|
**Creating Pull Requests:**
|
|
When user mentions PR or wants to ship completed work, invoke the **reviewing-and-shipping skill**.
|
|
|
|
## Routing Logic
|
|
|
|
### Request Type Detection
|
|
|
|
**New Specification:**
|
|
- Pattern: `/plan`, `/plan "title"`, "create spec", "plan feature"
|
|
- Action: Invoke `managing-specifications` skill
|
|
- Pass: User requirements, title, description
|
|
|
|
**Status Dashboard:**
|
|
- Pattern: `/plan --status`, "show specs", "spec dashboard"
|
|
- Action: Invoke `managing-specifications` skill with status mode
|
|
- Returns: Progress overview, active specs, recommendations
|
|
|
|
**Lifecycle Management:**
|
|
- Pattern: "activate spec-X", "complete spec-X", "move spec-X"
|
|
- Action: Invoke `managing-specifications` skill with spec ID
|
|
- Operations: Draft→Active, Active→Completed, validation
|
|
|
|
**Pull Request Creation:**
|
|
- Pattern: "create pr", "ship spec", "pr for spec-X"
|
|
- Action: Invoke `reviewing-and-shipping` skill with spec ID
|
|
- Returns: Generated PR with rich context
|
|
|
|
## Skill Delegation
|
|
|
|
This command acts as a thin router. All detailed functionality is handled by skills:
|
|
|
|
- **managing-specifications**: Interactive spec creation, requirement gathering, template generation, lifecycle management, progress tracking, status dashboard
|
|
- **reviewing-and-shipping**: Pull request creation from completed specifications
|
|
|
|
## Implementation Notes
|
|
|
|
**No Complex Logic:**
|
|
This command should only:
|
|
1. Parse user intent from arguments
|
|
2. Invoke the appropriate skill with Skill tool
|
|
3. Pass through user requirements/parameters
|
|
|
|
**Example Routing:**
|
|
```
|
|
User: /plan "User Authentication"
|
|
→ Detect: New specification request
|
|
→ Invoke: Skill("managing-specifications") with title="User Authentication"
|
|
→ Skill handles: Requirements, criteria, file creation
|
|
|
|
User: /plan --status
|
|
→ Detect: Status dashboard request
|
|
→ Invoke: Skill("managing-specifications") with mode="status"
|
|
→ Skill handles: Progress calculation, display
|
|
|
|
User: "activate spec-feature-001"
|
|
→ Detect: Lifecycle management
|
|
→ Invoke: Skill("managing-specifications") with operation="activate", spec="spec-feature-001"
|
|
→ Skill handles: Validation, file moving, state updates
|
|
```
|
|
|
|
## Folder Structure Reference
|
|
|
|
Specifications use folder-based state management:
|
|
```
|
|
.quaestor/specs/
|
|
├── draft/ # Planned (unlimited)
|
|
├── active/ # In progress (max 3)
|
|
└── completed/ # Finished
|
|
```
|
|
|
|
**See managing-specifications skill for lifecycle details.**
|
|
|
|
---
|
|
|
|
*Simple, interactive specification planning powered by Agent Skills*
|