.agent/skills/plan-checker/SKILL.md
Validates plans before execution to catch issues early
npx skillsauth add athility/krashitos-ai-os-portfolio GSD Plan CheckerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Your job: Find problems BEFORE execution, not during. </role>
Question: Does every phase requirement have task(s) addressing it?
Process:
Red flags:
Example issue:
issue:
dimension: requirement_coverage
severity: blocker
description: "AUTH-02 (logout) has no covering task"
plan: "1-01"
fix_hint: "Add task for logout endpoint"
Question: Does every task have Files + Action + Verify + Done?
Required by task type:
| Type | Files | Action | Verify | Done |
|------|-------|--------|--------|------|
| auto | Required | Required | Required | Required |
| checkpoint:* | N/A | N/A | N/A | N/A |
| tdd | Required | Behavior + Implementation | Test commands | Expected outcomes |
Red flags:
<verify> — can't confirm completion<done> — no acceptance criteria<action> — "implement auth" instead of specific steps<files> — what gets created?Example issue:
issue:
dimension: task_completeness
severity: blocker
description: "Task 2 missing <verify> element"
plan: "1-01"
task: 2
fix_hint: "Add verification command"
Question: Are plan dependencies valid and acyclic?
Process:
depends_on from each plan frontmatterRed flags:
Dependency rules:
depends_on: [] = Wave 1 (can run parallel)depends_on: ["01"] = Wave 2 minimumExample issue:
issue:
dimension: dependency_correctness
severity: blocker
description: "Circular dependency between plans 02 and 03"
plans: ["02", "03"]
fix_hint: "Break cycle by reordering tasks"
Question: Are artifacts wired together, not just created in isolation?
Red flags:
What to check:
Component → API: Does action mention fetch call?
API → Database: Does action mention Prisma/query?
Form → Handler: Does action mention onSubmit implementation?
State → Render: Does action mention displaying state?
Example issue:
issue:
dimension: key_links_planned
severity: warning
description: "Chat.tsx created but no task wires it to /api/chat"
plan: "01"
artifacts: ["src/components/Chat.tsx", "src/app/api/chat/route.ts"]
fix_hint: "Add fetch call in Chat.tsx action"
Question: Will plans complete within context budget?
Thresholds: | Metric | Target | Warning | Blocker | |--------|--------|---------|---------| | Tasks/plan | 2-3 | 4 | 5+ | | Files/plan | 5-8 | 10 | 15+ | | Context | ~50% | ~70% | 80%+ |
Red flags:
Example issue:
issue:
dimension: scope_sanity
severity: warning
description: "Plan 01 has 5 tasks - split recommended"
plan: "01"
metrics:
tasks: 5
files: 12
fix_hint: "Split into 2 plans"
Question: Are must-haves derived from phase goal, not invented?
Process:
Red flags:
Read:
- .gsd/ROADMAP.md (phase goals)
- .gsd/REQUIREMENTS.md (if exists)
- .gsd/phases/{N}/*-PLAN.md (all plans)
For each PLAN.md:
- Extract frontmatter (phase, plan, wave, depends_on)
- Extract must_haves
- Parse all task elements
Run all 6 dimension checks, collect issues.
PASSED: No blockers, 0-2 warnings ISSUES_FOUND: Any blockers, or 3+ warnings
## Plan Check Passed ✓
**Phase:** {N}
**Plans checked:** {count}
**Status:** PASSED
No blocking issues found.
Warnings (optional):
- {minor warning}
## Plan Check Failed ✗
**Phase:** {N}
**Plans checked:** {count}
**Status:** ISSUES_FOUND
### Blockers
{issues with severity: blocker}
### Warnings
{issues with severity: warning}
### Recommended Fixes
1. {fix for issue 1}
2. {fix for issue 2}
| Severity | Meaning | Action | |----------|---------|--------| | blocker | Will cause execution failure | Must fix before /execute | | warning | Quality/efficiency risk | Should fix, can proceed | | info | Observation | No action needed |
issue:
dimension: {which of 6 dimensions}
severity: {blocker | warning | info}
description: "{human-readable description}"
plan: "{plan id}"
task: {task number, if applicable}
fix_hint: "{suggested fix}"
/plan completes/execute startsPlan checker is the quality gate between planning and execution.
development
Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state/action separation. Use when building React state management, creating global stores, or implementing reactive state patterns with Zustand.
tools
Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.
tools
Automate Zoho CRM tasks via Rube MCP (Composio): create/update records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.
tools
Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.