work-plan
This skill should be used when the user asks to "show work plan", "what's the plan for feature N", "show progress", "view execution plan", or wants to see phase breakdown, progress status, and next actions for a feature.
What this skill does
# Work Plan
Generate a comprehensive execution plan showing current status, phase breakdown, and next actions. **Writes output to `{feature-path}/work-plan.md`** for persistent tracking.
## User Input
FEATURE_ID = $ARGUMENT (optional, defaults to current branch feature)
Accept feature ID like "001" or "001-mcp-integration". If not provided, extract from current git branch.
## Output Behavior
- **Primary output**: Write full work plan to `{feature-path}/work-plan.md`
- **Console output**: Show condensed summary with key status and next action
- **Updates**: Subsequent runs overwrite the file with current state (timestamp included)
## Workflow
### Step 1: Extract Feature ID
1. If ARGUMENT provided:
- Format "NNN" (e.g., "001"): Search `backlog/plans/` and `backlog/plans/_completed/` for matching folder
- Format "NNN-slug" (e.g., "001-mcp-integration"): Use directly
2. If no ARGUMENT:
- Run `git branch --show-current`
- Extract feature ID from branch name (e.g., `feature/001-mcp-integration` → `001-mcp-integration`)
- If not on a feature branch, show error and list available features
**Note**: In-progress features are in `backlog/plans/{NNN}-{slug}/`, completed features in `backlog/plans/_completed/{NNN}-{slug}/`
### Step 2: Load Feature Context
Read the following files:
- `{feature-path}/tasks.md` (required)
- `{feature-path}/spec.md` (for feature name/description)
- `specs/tests/{feature-id}.md` (if exists, for spec test info)
- Current git branch status
### Step 3: Parse tasks.md
Extract:
**Phase Information**:
- Phase headers: `## Phase N: Name`
- For each phase: number, name, description, task range, task count, completed count
- Entry spec test task (`[SPEC]` with "→ expect ALL FAIL")
- Exit spec test task (`[SPEC]` with "→ expect ALL PASS")
**Dependency Information**:
- Find dependency diagram (after "## Dependencies" header)
- Parse dependency arrows (──►, ──┬──►, etc.)
- Build dependency graph
**Overall Metrics**:
- Total task count, completed count, percentage
### Step 4: Determine Status
For each phase:
- **Complete**: All tasks checked (`- [x]`)
- **In Progress**: Some tasks checked
- **Not Started**: No tasks checked
- **Blocked**: Depends on incomplete phases
Identify current phase and next action.
### Step 5: Generate Work Plan
Build the work plan with these sections (see `references/output-format.md` for detailed templates):
1. **Current Status** - Feature name, branch, progress, current phase
2. **Phase Overview** - Table with status, progress, blocks
3. **Recommended Execution Plan** - Per-phase commands and goals
4. **Parallel Execution Strategy** - Wave structure for independent phases
5. **Quick Commands Reference** - Command table
6. **Success Criteria** - Completion checklist
7. **Manual Testing Strategy** - What needs manual testing and when
8. **Next Action** - Specific recommended command
### Step 6: Write to File
Write the complete work plan to `{feature-path}/work-plan.md`:
```markdown
<!-- Auto-generated by /work-plan - Updated: {ISO timestamp} -->
# Work Plan: Feature {NNN} - {Feature Name}
{All sections from Step 5}
```
**File behavior**:
- Creates new file if doesn't exist
- Overwrites existing file with fresh state on each run
- Includes timestamp header for tracking when last updated
### Step 7: Display Summary to Console
Show a condensed summary to the user (NOT the full file contents):
```
✅ Work plan written to: {feature-path}/work-plan.md
## Quick Status
- **Progress**: {completed}/{total} tasks ({percentage}%)
- **Current Phase**: {phase-name} ({status})
## Next Action
{next action recommendation with command}
```
This keeps console output minimal while the full details live in the file.
### Next Action Logic
| State | Recommendation |
|-------|----------------|
| Wrong branch / no tasks | Prime and start Phase 1 |
| Phase in progress | Continue current phase |
| Phase blocked | Complete blocking phase first |
| Ready for next | Start next phase |
| Multiple independent ready | Run phases in parallel |
| All complete | Final verification, create PR |
## Error Handling
**Feature not found**:
```
❌ Error: Feature '{feature-id}' not found
Available features:
{list folders in backlog/plans/ and backlog/plans/_completed/}
Usage: /work-plan {feature-number}
```
**tasks.md not found**:
```
❌ Error: tasks.md not found at {feature-path}/tasks.md
This feature may not follow the methodology structure.
```
## Output Guidelines
- Keep output concise but actionable
- Use emojis for visual clarity (✓, ⚠️, ✅, 🔄, ⏸️, 🔒)
- Provide specific commands, not just guidance
- Always include "Next Action" - never leave user wondering what to do
## Additional Resources
### Reference Files
For detailed output templates, consult:
- **`references/output-format.md`** - Full templates for all output sections
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.