'Show a per-file checkbox progress dashboard of plans/ (open) and plans/complete/ (archived) plan documents. Use when reviewing which plans are ready to archive or checking work-in-flight at a glance.'
Install
npx skillscat add kinginyellows/yellow-plugins/plan-status Install via the SkillsCat registry.
SKILL.md
What It Does
Read-only dashboard of the local plan corpus. Walks plans/*.md (open) andplans/complete/*.md (archived), counts checked/unchecked task boxes in each
file, and renders a plain-text table. Open plans at 100% completion are
annotated -- ready to complete so the next archival step is obvious.
When to Use
- Reviewing which plans are ready to archive.
- Checking work-in-flight across the plan corpus at a glance.
- Confirming a plan has no remaining unchecked boxes before starting its
archival workflow.
Usage
Phase 1: Open plans
set -euo pipefail
if [ -z "$(command find -H plans -maxdepth 1 \( -type f -o -type l \) -name '*.md' ! -name '.*' 2>/dev/null | head -1)" ]; then
printf 'plans/ is empty (no open plans).\n\n'
exit 0
fi
printf 'Open plans (plans/):\n'
printf '%-60s %s\n' 'File' 'Progress'
printf '%-60s %s\n' '----' '--------'
for f in plans/*.md; do
[ -f "$f" ] || continue
checked=$(grep -ciE '^[[:space:]]*- \[x\]' "$f" 2>/dev/null || true)
unchecked=$(grep -cE '^[[:space:]]*- \[ \]' "$f" 2>/dev/null || true)
: "${checked:=0}"
: "${unchecked:=0}"
total=$((checked + unchecked))
annotation=''
if [ "$total" -gt 0 ] && [ "$unchecked" -eq 0 ]; then
annotation=' -- ready to complete'
fi
printf '%-60s [ %d/%d ]%s\n' "$f" "$checked" "$total" "$annotation"
done
printf '\n'Phase 2: Archived plans
Each Bash code block runs in its own subprocess — variables from Phase 1
do not survive. Re-derive locally.
set -euo pipefail
if [ ! -d plans/complete ]; then
printf 'Archived plans (plans/complete/): (0) — directory does not exist yet.\n'
exit 0
fi
count=$(command find -H plans/complete -maxdepth 1 \( -type f -o -type l \) -name '*.md' ! -name '.*' 2>/dev/null | wc -l | tr -d ' ')
if [ "$count" -eq 0 ]; then
printf 'Archived plans (plans/complete/): (0)\n'
exit 0
fi
printf 'Archived plans (plans/complete/): (%d)\n' "$count"
printf '%-60s %s\n' 'File' 'Progress'
printf '%-60s %s\n' '----' '--------'
for f in plans/complete/*.md; do
[ -f "$f" ] || continue
checked=$(grep -ciE '^[[:space:]]*- \[x\]' "$f" 2>/dev/null || true)
unchecked=$(grep -cE '^[[:space:]]*- \[ \]' "$f" 2>/dev/null || true)
: "${checked:=0}"
: "${unchecked:=0}"
total=$((checked + unchecked))
printf '%-60s [ %d/%d ]\n' "$f" "$checked" "$total"
doneNotes
- The
[ 0/0 ]rendering for zero-task plans is intentional and surfaces
prose-style or research-style plan files that have no task list. - The
-- ready to completeannotation appears ONLY on files inplans/
(not on already-archived files). It is purely advisory — running the
plan-completion workflow is the explicit archival action. - Archived files with stray
- [ ]lines are visible in this dashboard
but are NOT blocked: PR-diff-scoped validation only checks files newly
added or modified by the current PR. The dashboard exists to surface
those cases for opportunistic cleanup.