Agent skill
plan-list
List and filter plan documents. Use when exploring plans, checking status, finding plans by module, or reviewing plan health.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/plan-list
SKILL.md
Plan Listing
Lists and filters plan documents with flexible filtering and output options.
Overview
This skill lists plan documents by:
- Reading all plan files from
.claude/plans/ - Parsing frontmatter to extract metadata
- Applying filters (status, module, owner)
- Sorting results by specified field
- Formatting output (summary, detailed, timeline)
- Displaying results with color-coded status
Quick Start
List all plans:
/plan-list
List by status:
/plan-list --status=in-progress
List by module:
/plan-list --module=effect-type-registry
Detailed view:
/plan-list --format=detailed
How It Works
1. Parse Parameters
--status: Filter by status (ready, in-progress, blocked, completed, abandoned)--module: Filter by module name--owner: Filter by plan owner--format: Output format (summary, detailed, timeline) [default: summary]--sort: Sort field (created, updated, progress, status) [default: updated]--order: Sort order (asc, desc) [default: desc]--include-archived: Include archived plans from_archive/--stale: Show only stale plans (updated > 30 days)
2. Read Plan Directory
Scan for plan files:
- Read
.claude/plans/*.md - Optionally read
.claude/plans/_archive/*.md - Exclude template files (
_templates/) - Report error if directory doesn't exist
3. Parse Plan Metadata
For each plan file:
- Extract YAML frontmatter
- Parse required fields: name, title, status, progress
- Parse optional fields: modules, owner, created, updated, started
- Calculate derived fields: age, stale status
4. Apply Filters
Filter plans based on parameters:
Status Filter:
- Single status:
--status=in-progress - Multiple statuses:
--status=ready,in-progress - Comma-separated list
Module Filter:
- Single module:
--module=effect-type-registry - Plans with module in
modulesarray
Owner Filter:
- Single owner:
--owner=@spencerbeggs - Plans with matching
ownerfield
Stale Filter:
--stale: Show plans withupdated> 30 days ago- Configurable threshold in design.config.json
5. Sort Results
Sort plans by specified field:
Sort Fields:
created: Plan creation dateupdated: Last update date (default)progress: Progress percentagestatus: Status value (alphabetical)name: Plan name (alphabetical)
Sort Order:
desc: Newest/highest first (default)asc: Oldest/lowest first
6. Format Output
Three output formats:
Summary (default):
Plans (5 active, 2 completed):
Active Plans:
📋 cache-optimization-plan [in-progress, 45%]
Updated: 2 days ago
Module: effect-type-registry
📋 observability-phase-2 [ready, 0%]
Updated: 1 day ago
Module: effect-type-registry
Completed Plans:
✅ design-linking-phase-1 [completed, 100%]
Completed: 3 days ago
Detailed:
Plan: cache-optimization-plan
Title: Cache Optimization Implementation
Status: in-progress (45%)
Module: effect-type-registry
Created: 2026-01-10 (8 days ago)
Updated: 2026-01-16 (2 days ago)
Started: 2026-01-11 (7 days ago)
Owner: @spencerbeggs
Estimated: 2-3 weeks
Implements: effect-type-registry/cache-optimization.md
Phases:
✓ Phase 1: Initial Implementation (100%)
→ Phase 2: Performance Testing (30%)
○ Phase 3: Documentation (0%)
Timeline:
Timeline View (sorted by started date):
Jan 10 ━━━━━━━━━━●━━━━━━━━━━ Jan 31
cache-optimization-plan [45%]
├─ Phase 1 (done)
├─ Phase 2 (active)
└─ Phase 3 (pending)
Jan 12 ━━━━━━━━━━━━━━━━━●━━━ Feb 05
observability-phase-2 [20%]
└─ Phase 1 (active)
7. Generate Report
Output listing results with:
- Summary statistics (total, active, completed)
- Filtered plan list with color-coded status
- Optional health warnings (stale plans)
- Next action suggestions
Usage Patterns
List All Plans
/plan-list
Shows all plans sorted by last update.
Filter by Status
# Active plans only
/plan-list --status=in-progress
# Multiple statuses
/plan-list --status=ready,in-progress
Filter by Module
/plan-list --module=effect-type-registry
Shows only plans for specific module.
Show Stale Plans
/plan-list --stale
Shows plans not updated in 30+ days.
Detailed View
/plan-list --format=detailed --status=in-progress
Shows full metadata for filtered plans.
Timeline View
/plan-list --format=timeline --status=in-progress
Shows Gantt-style timeline of active plans.
Include Archived Plans
/plan-list --include-archived
Shows both active and archived plans.
Sort by Progress
/plan-list --sort=progress --order=asc
Shows plans sorted by progress (lowest first).
Sort by Creation Date
/plan-list --sort=created --order=desc
Shows newest plans first.
Implementation Steps
- Parse arguments from user input (filters, format, sort)
- Read config from
.claude/design/design.config.json - Scan plan directory for
.mdfiles - Parse each plan to extract frontmatter
- Apply filters based on status, module, owner, stale
- Sort results by specified field and order
- Calculate statistics (total, active, completed, stale)
- Format output based on format parameter
- Generate report with color-coded status
- Return exit code (0 = success)
Output Format Details
Status Icons
📋- Active plan (ready, in-progress, blocked)✅- Completed plan❌- Abandoned plan⚠️- Stale plan (warning)
Status Colors
ready- Bluein-progress- Yellowblocked- Redcompleted- Greenabandoned- Gray
Age Formatting
- "1 day ago"
- "5 days ago"
- "2 weeks ago"
- "3 months ago"
Progress Bar (detailed format)
Progress: [████████░░] 45%
Error Messages
No Plans Found
No plans found matching filters
Filters:
Status: in-progress
Module: effect-type-registry
Suggestions:
1. Remove filters: /plan-list
2. Create new plan: /plan-create "My Feature"
3. Check archived plans: /plan-list --include-archived
Invalid Status
✗ Invalid status: {status}
Valid statuses:
- ready
- in-progress
- blocked
- completed
- abandoned
Fix: Use --status={valid-status}
Invalid Module
✗ Module not found: {module}
Available modules:
- effect-type-registry
- rspress-plugin-api-extractor
- design-doc-system
Fix: Use --module={valid-module} or omit --module flag
Plans Directory Missing
✗ Plans directory not found: .claude/plans/
The plans directory doesn't exist yet.
Create it with:
mkdir -p .claude/plans
Or create your first plan:
/plan-create "My First Plan"
Statistics
The summary format includes statistics:
Plans: 12 total (7 active, 4 completed, 1 abandoned)
Status Breakdown:
Ready: 3 plans
In Progress: 4 plans
Blocked: 0 plans
Completed: 4 plans
Abandoned: 1 plan
Health:
Stale: 2 plans (updated > 30 days)
On Schedule: 5 plans
Behind: 2 plans
Examples
See examples.md for detailed usage examples.
Related Skills
plan-validate- Validate plan structureplan-create- Create new plansplan-update- Update plan status/progressplan-explore- Comprehensive plan exploration (Phase 2)design-list- List design docs
Didn't find tool you were looking for?