원클릭으로
plan-status
Show current status and progress of active feature plans. Pass a stage filename to refresh it against the current codebase.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Show current status and progress of active feature plans. Pass a stage filename to refresh it against the current codebase.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Identify and fix accessibility issues for WCAG 2.1 Level AA compliance, including mobile screen reader support (VoiceOver/TalkBack), touch targets, and keyboard navigation.
Autonomously build an app from staged plans created by /launch-app. Reads plans/active/ stage files and builds each stage with verification, commits, and Slack notifications. Designed for unattended execution via build-app-runner.sh.
Polish components to production quality — interactive states, micro-interactions, and final refinement. Run all three passes or target one area.
Audit and optimize pages for conversion — value props, CTAs, copy, social proof, and friction points. Run a full audit or target a specific area.
Generate multiple design concepts for an app, compare them side-by-side, and implement the chosen direction. Creates detailed design documents with color palettes, typography, spacing, component specs, and interactive HTML mockups.
Apply foundational design system improvements — color palette, typography, spacing, and layout. Run all at once or target a specific area. Use before component-polish for a complete design overhaul.
| name | plan-status |
| description | Show current status and progress of active feature plans. Pass a stage filename to refresh it against the current codebase. |
| argument-hint | [feature-name] | refresh <stage-file> |
Display current status and progress for active feature plans.
Use this when:
/plan-status — show all active plans
/plan-status <feature-name> — show details for specific plan
/plan-status refresh <stage-file> — refresh a stage plan against current codebase
If first argument is refresh, run the Refresh Stage Plan flow below.
Otherwise, run the standard plan status display.
refresh <stage-file> is passed)Refreshes a stage plan to account for decisions and changes made during prior stages.
plans/active/$STAGE_FILE.md (add .md if not present; also check plans/archive/)plans/README.mdplans/archive/ to understand what was actually builtCLAUDE.md, .claude/rules/architecture.md, .claude/rules/api-conventions.mdStage [N] plan refreshed:
Updated:
- [task]: [what changed]
Architecture notes:
- [any decisions from prior stages that affect this stage]
echo "📋 Active Feature Plans"
echo "======================"
echo ""
# Check if plans directory exists
if [ ! -d "plans/active" ] || [ -z "$(ls -A plans/active 2>/dev/null)" ]; then
echo "No active plans found"
echo ""
echo "Create a plan with: /create-plan <feature-name>"
exit 0
fi
# Iterate through active plans
for plan_dir in plans/active/*; do
if [ -d "$plan_dir" ]; then
FEATURE_NAME=$(basename "$plan_dir")
PLAN_FILE="$plan_dir/plan.md"
if [ -f "$PLAN_FILE" ]; then
# Extract frontmatter
TITLE=$(grep "^title:" "$PLAN_FILE" | sed 's/title: *//')
STATUS=$(grep "^status:" "$PLAN_FILE" | sed 's/status: *//')
TYPE=$(grep "^type:" "$PLAN_FILE" | sed 's/type: *//')
# Count completed phases
TOTAL_PHASES=$(grep -c " - id:" "$PLAN_FILE" || echo "0")
COMPLETED_PHASES=$(grep "status: completed" "$PLAN_FILE" | wc -l || echo "0")
# Status emoji
case "$STATUS" in
planning) STATUS_EMOJI="📝" ;;
in_progress) STATUS_EMOJI="🚧" ;;
testing) STATUS_EMOJI="🧪" ;;
complete) STATUS_EMOJI="✅" ;;
*) STATUS_EMOJI="❓" ;;
esac
echo "$STATUS_EMOJI $FEATURE_NAME"
echo " Title: $TITLE"
echo " Status: $STATUS"
echo " Progress: $COMPLETED_PHASES/$TOTAL_PHASES phases"
# Check for linked worktree
if [ -d "worktrees/$FEATURE_NAME" ]; then
echo " Worktree: ✅ worktrees/$FEATURE_NAME"
fi
echo ""
fi
fi
done
echo "========================"
echo "Use: /plan-status <name> for details"
FEATURE_NAME="$1"
PLAN_DIR="plans/active/$FEATURE_NAME"
PLAN_FILE="$PLAN_DIR/plan.md"
# Check if plan exists
if [ ! -f "$PLAN_FILE" ]; then
echo "❌ Plan not found: $PLAN_FILE"
echo ""
echo "Available plans:"
ls -1 plans/active/ 2>/dev/null || echo " (none)"
exit 1
fi
# Parse frontmatter
TITLE=$(grep "^title:" "$PLAN_FILE" | sed 's/title: *//')
STATUS=$(grep "^status:" "$PLAN_FILE" | sed 's/status: *//')
TYPE=$(grep "^type:" "$PLAN_FILE" | sed 's/type: *//')
CREATED=$(grep "^created:" "$PLAN_FILE" | sed 's/created: *//')
# Display header
echo "📋 Plan: $TITLE"
echo "========================================"
echo "Feature: $FEATURE_NAME"
echo "Type: $TYPE"
echo "Status: $STATUS"
echo "Created: $CREATED"
echo ""
# Show phases
echo "Phases:"
echo "-------"
# Extract phase information
awk '
/^phases:/ { in_phases=1; next }
in_phases && /^ - id:/ {
id=$3
getline; status=$3
printf " %s: %s\n", id, status
}
/^---/ && in_phases { exit }
' "$PLAN_FILE"
echo ""
# Count tasks
TOTAL_TASKS=$(grep -c "^\- \[ \]" "$PLAN_FILE" || echo "0")
COMPLETED_TASKS=$(grep -c "^\- \[x\]" "$PLAN_FILE" || echo "0")
echo "Tasks:"
echo "------"
echo "Total: $TOTAL_TASKS"
echo "Completed: $COMPLETED_TASKS"
if [ "$TOTAL_TASKS" -gt 0 ]; then
PERCENT=$((COMPLETED_TASKS * 100 / TOTAL_TASKS))
echo "Progress: $PERCENT%"
# Progress bar
BAR_WIDTH=20
FILLED=$((PERCENT * BAR_WIDTH / 100))
EMPTY=$((BAR_WIDTH - FILLED))
printf "["
printf "%${FILLED}s" | tr ' ' '█'
printf "%${EMPTY}s" | tr ' ' '░'
printf "] $PERCENT%%\n"
fi
echo ""
# Show open questions
OPEN_QUESTIONS=$(grep "^## Open Questions" -A 100 "$PLAN_FILE" | grep "^\- \[ \]" | wc -l)
if [ "$OPEN_QUESTIONS" -gt 0 ]; then
echo "⚠️ Open Questions: $OPEN_QUESTIONS"
echo ""
fi
# Show success criteria
echo "Success Criteria:"
echo "-----------------"
grep "^## Success Criteria" -A 20 "$PLAN_FILE" | grep "^\- \[" | head -5
echo ""
# Worktree status
if [ -d "worktrees/$FEATURE_NAME" ]; then
echo "Worktree: ✅ worktrees/$FEATURE_NAME"
cd "worktrees/$FEATURE_NAME"
BRANCH=$(git branch --show-current)
COMMITS=$(git log --oneline origin/main..HEAD 2>/dev/null | wc -l || echo "0")
echo "Branch: $BRANCH"
echo "Commits: $COMMITS"
cd - > /dev/null
else
echo "Worktree: ❌ Not created"
echo "Create with: /worktree-create $FEATURE_NAME"
fi
echo ""
echo "========================================"
echo "Plan file: $PLAN_FILE"
Show all plans:
/plan-status
Output:
📋 Active Feature Plans
======================
🚧 user-authentication
Title: User Authentication System
Status: in_progress
Progress: 2/4 phases
Worktree: ✅ worktrees/user-authentication
📝 payment-integration
Title: Stripe Payment Integration
Status: planning
Progress: 0/3 phases
========================
Use: /plan-status <name> for details
Show specific plan details:
/plan-status user-authentication
Output:
📋 Plan: User Authentication System
========================================
Feature: user-authentication
Type: feature
Status: in_progress
Created: 2026-02-04
Phases:
-------
research: completed
design: completed
implementation: in_progress
testing: pending
Tasks:
------
Total: 18
Completed: 12
Progress: 66%
[█████████████░░░░░░░] 66%
Success Criteria:
-----------------
- [x] Users can sign up with email/password
- [x] Users can log in
- [ ] Password reset works
- [ ] Session management secure
- [ ] Tests pass
Worktree: ✅ worktrees/user-authentication
Branch: feature/user-authentication
Commits: 8
========================================
Plan file: plans/active/user-authentication/plan.md
For a quick team dashboard, you can create an alias:
alias plans='/plan-status'
# Show all plans
plans
# Show specific plan
plans user-auth
| Status | Emoji | Meaning |
|---|---|---|
planning | 📝 | Defining requirements, not started coding |
in_progress | 🚧 | Active development |
testing | 🧪 | Development complete, testing in progress |
review | 👀 | In code review |
complete | ✅ | Done and merged |
blocked | 🛑 | Waiting on dependency |
paused | ⏸️ | Temporarily stopped |
Update status based on branch activity:
# After making progress
cd worktrees/feature-name
# ... make changes ...
# Update plan status
sed -i 's/status: planning/status: in_progress/' plans/active/feature-name/plan.md
Daily Routine:
/plan-status each morningWeekly Routine:
Status Updates:
status: field in frontmatterphases[].status as you complete each- [ ] tasks as you finish themKeep Plans Updated:
Use with Stand-ups:
Tracking Progress:
# Hook to update plan when pushing commits
# .git/hooks/pre-push
BRANCH=$(git branch --show-current)
FEATURE_NAME=$(echo $BRANCH | sed 's/feature\///')
PLAN_FILE="plans/active/$FEATURE_NAME/plan.md"
if [ -f "$PLAN_FILE" ]; then
# Auto-update to in_progress if was planning
sed -i 's/status: planning/status: in_progress/' "$PLAN_FILE"
fi
Plan not showing:
plans/active/plan.md existsProgress not accurate:
- [ ] and - [x]Worktree status wrong:
worktrees//worktree-create if missing