Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Automated full review pipeline skill. Use when the user wants to run a complete plan review in one command, automatically chain CEO review then design review then engineering review then DX review, surface only the decisions that need human taste judgment, or compress the full planning workflow into a single structured output.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-16 | ✗→✓ | ▲ Improved | 1109% | 0% |
| case-01 | ✓→✗ | ▼ Worse | 82% | 0% |
| case-21 | ✓→✗ | ▼ Worse | 448% | 0% |
| case-18 | ✓→✓ | = Same ✓ | 241% | 0% |
| case-19 | ✓→✓ | = Same ✓ | 279% | 0% |
AutoPlan compresses the full planning review gauntlet into a single structured command. Instead of running CEO → Design → Engineering → DX reviews sequentially and answering 15–30 intermediate questions, AutoPlan auto-decides everything resolvable by principle and surfaces only taste decisions to the human.
PLAN.md, plan.md, spec.md, SPEC.md) is detected in the repo root/spec or /office-hours and has a document ready to reviewBefore running any sub-review, ingest all available context:
bash# Detect plan file PLAN_FILE=$(ls PLAN.md plan.md SPEC.md spec.md PRD.md prd.md 2>/dev/null | head -1) echo "PLAN_FILE: ${PLAN_FILE:-none}" # Detect git context BRANCH=$(git branch --show-current 2>/dev/null || echo "unknown") DIRTY=$(git status --porcelain 2>/dev/null | wc -l | tr -d ' ') echo "BRANCH: $BRANCH | DIRTY_FILES: $DIRTY" # Detect project type signals HAS_UI=$(find . -name "*.tsx" -o -name "*.jsx" -o -name "*.vue" -o -name "*.svelte" 2>/dev/null | head -1) HAS_API=$(find . -name "routes.ts" -o -name "routes.js" -o -name "router.py" -o -name "*.proto" 2>/dev/null | head -1) HAS_CLI=$(grep -r "argparse\|click\|cobra\|clap\|commander" . --include="*.py" --include="*.go" --include="*.rs" --include="*.ts" -l 2>/dev/null | head -1) HAS_ARCH=$(find . -name "*.arxml" -o -name "*.dbc" -o -name "*.ldf" -o -name "system_design*" 2>/dev/null | head -1) HAS_EMBEDDED=$(find . -name "*.c" -o -name "*.cpp" -o -name "*.h" 2>/dev/null | head -1) echo "HAS_UI: ${HAS_UI:-none}" echo "HAS_API: ${HAS_API:-none}" echo "HAS_CLI: ${HAS_CLI:-none}" echo "HAS_ARCH: ${HAS_ARCH:-none}" echo "HAS_EMBEDDED: ${HAS_EMBEDDED:-none}"
Read the plan file fully before proceeding. If no plan file is found, ask the user to paste the plan inline or point to a file path.
Use the following signals to determine which sub-reviews apply. At minimum, CEO review and Engineering review always run. Others are conditional.
| Review | Trigger Condition | |----------------|------------------------------------------------------------------------------------| | CEO Review | Always runs — scope, value, risk, prioritization | | Design Review | HAS_UI is non-empty, OR plan mentions "UI", "screen", "layout", "component", "design system", "visual" | | Eng Review | Always runs — architecture, data model, interfaces, scalability, safety/security | | DX Review | HAS_API or HAS_CLI is non-empty, OR plan mentions "API", "CLI", "SDK", "developer", "integration", "endpoint" | | Embedded/Auto | HAS_EMBEDDED or HAS_ARCH is non-empty, OR plan mentions "ECU", "AUTOSAR", "CAN", "LIN", "embedded", "RTOS", "ISO 26262", "21434" |
Print which reviews will run before starting:
🔍 AutoPlan will run: [CEO] [Eng] [Design?] [DX?] [Embedded?]
Based on detected signals: HAS_UI=<val> HAS_API=<val> HAS_CLI=<val>
Plan file: <file or inline>
Starting pipeline...AutoPlan makes autonomous decisions using these six principles. Reference them when recording auto-decisions in the output.
Auto-decided items are tagged: [AUTO: Principle N] Items needing human taste judgment are tagged: [TASTE GATE]
Execute sub-reviews in this exact sequence. Each review reads the plan, applies its lens, and emits findings into a shared accumulator.
Lens: Strategic value, market timing, prioritization, risk/reward, resource fit.
Auto-decide:
[AUTO: Principle 1] defer them[AUTO: Principle 6] flag as out-of-scopeSurface as [TASTE GATE]:
CEO Review Output Format:
### CEO Review
**Strategic Fit:** <1-sentence verdict>
**Scope Decision:** <what's in / out and why>
**Risk Rating:** Low / Medium / High — <rationale>
**Auto-Decisions:**
- [AUTO: P1] <decision>
**Taste Gates:**
- [TASTE GATE] <question for human>Skip if: Design signals are absent (see Section 3).
Lens: UX coherence, visual hierarchy, accessibility, consistency with design system, component reuse.
Auto-decide:
[AUTO: Principle 5]prefers-reduced-motion safe → [AUTO: Principle 5]Surface as [TASTE GATE]:
Design Review Output Format:
### Design Review
**UX Verdict:** <coherence assessment>
**Accessibility:** <pass/concern + specifics>
**Design System Fit:** <consistent / gaps found>
**Auto-Decisions:**
- [AUTO: P3] Use existing component library for <X> — no custom build needed
**Taste Gates:**
- [TASTE GATE] <aesthetic decision needing human judgment>Always runs.
Lens: Architecture, data model, API contracts, scalability, testability, functional safety, cybersecurity, coding standard compliance.
Auto-decide using the six principles:
[AUTO: Principle 3][AUTO: Principle 4][AUTO: Principle 3][AUTO: Principle 5][AUTO: Principle 4][AUTO: Principle 5][AUTO: Principle 5][AUTO: Principle 5][AUTO: Principle 1][AUTO: Principle 2]Surface as [TASTE GATE]:
Automotive/Embedded-specific (when HAS_EMBEDDED or HAS_ARCH):
[AUTO: Principle 5][AUTO: Principle 5][AUTO: Principle 5][AUTO: Principle 5]Engineering Review Output Format:
### Engineering Review
**Architecture Verdict:** <sound / concerns>
**Data Model:** <approved / issues>
**Security Posture:** <pass / gaps>
**Safety (if applicable):** ASIL-<X> / <standard applied>
**Auto-Decisions:**
- [AUTO: P4] Typed API contracts via OpenAPI spec — no untyped JSON
- [AUTO: P5] TLS 1.3 enforced for all service communication
**Taste Gates:**
- [TASTE GATE] <architectural trade-off needing human judgment>
**Open Issues (blocking):**
- <anything that must be resolved before implementation>Skip if: No API, CLI, or SDK signals detected (see Section 3).
Lens: Developer experience, API ergonomics, CLI usability, SDK onboarding, documentation completeness, error message quality.
Auto-decide:
[AUTO: Principle 4]/v1/ as default unless plan specifies header versioning) → [AUTO: Principle 3][AUTO: Principle 3]--help flag required for all commands → [AUTO: Principle 4][AUTO: Principle 3][AUTO: Principle 4]Surface as [TASTE GATE]:
DX Review Output Format:
### DX Review
**API Ergonomics:** <good / issues>
**CLI Usability:** <good / issues / N/A>
**Documentation Gaps:** <list or "none">
**Auto-Decisions:**
- [AUTO: P3] RFC 7807 error envelope for all 4xx/5xx responses
**Taste Gates:**
- [TASTE GATE] <DX trade-off needing human judgment>When sub-reviews produce contradictory findings, resolve conflicts using this hierarchy:
[TASTE GATE] items surfaced at the approval gate.When a conflict is resolved automatically, log it:
⚠️ CONFLICT RESOLVED: Design preferred custom date picker; Eng flagged a11y risk.
Resolution [AUTO: P5]: Use platform-native date input — accessibility takes priority.After all sub-reviews complete, emit a single consolidated output in this structure:
═══════════════════════════════════════════════════════
AUTOPLAN REVIEW — <Plan Title or Filename>
Ran: <which reviews ran> | Date: <today>
═══════════════════════════════════════════════════════
## Executive Summary
<2–3 sentence overall verdict: is the plan ready to implement, needs minor fixes, or has blockers?>
## Scope (Final)
**In Scope:**
- <item>
**Out of Scope (deferred):**
- <item> [AUTO: P1 — deferred, no stated deadline]
**Blocked (needs resolution before start):**
- <item>
## Auto-Decisions Log
All decisions made automatically by principle. No human input needed.
| # | Decision | Principle | Rationale |
|---|----------|-----------|-----------|
| 1 | <decision> | P3 | <why> |
| 2 | <decision> | P5 | <why> |
...
## ⚡ Taste Gates — Human Approval Required
These are the ONLY items requiring your judgment. Everything else has been decided.
### TASTE GATE 1: <Topic>
**Context:** <what the trade-off is>
**Option A:** <description> — *Recommended if <condition>*
**Option B:** <description> — *Recommended if <condition>*
**Impact if wrong:** <reversible in a sprint / hard to undo / irreversible>
### TASTE GATE 2: <Topic>
...
## Review Findings (Detail)
<CEO Review block>
<Design Review block (if ran)>
<Engineering Review block>
<DX Review block (if ran)>
## Conflicts Resolved
<list of auto-resolved conflicts, or "None">
## Definition of Done
See Section 10 below — pre-populated with items derived from this plan.autoplan --fast or user says "quick review")Fast Path output:
⚡ AUTOPLAN FAST
Verdict: <GO / NO-GO / CONDITIONAL>
Key risks: <1–3 bullets>
Auto-decided taste gates: <list of what was assumed>
Next: <one actionable step>/spec or /office-hoursIf the user just completed a /spec or /office-hours session, AutoPlan can ingest the output directly:
SPEC.md or the last written plan file automaticallyAfter AutoPlan completes:
/ship when code is done or start with <first task>."AutoPlan generates a pre-populated DoD from the plan and review findings. Template:
markdown## Definition of Done — <Plan Title> Generated by AutoPlan on <date> ### Scope - [ ] All In-Scope items from the plan are implemented - [ ] All Out-of-Scope items are documented as deferred (not built) ### Engineering - [ ] All [AUTO] architectural decisions are implemented as specified - [ ] Taste Gate decisions are reflected in the implementation - [ ] Unit test coverage ≥ 80% on business logic - [ ] Integration tests cover all critical user paths - [ ] No MISRA/CERT violations (if embedded) — static analysis clean - [ ] ASIL-<X> requirements met and documented (if automotive) - [ ] Security: TLS enforced, auth validated, secrets not hardcoded - [ ] All API contracts match the OpenAPI/schema spec ### Design (if applicable) - [ ] WCAG 2.1 AA passes (run axe or Lighthouse) - [ ] Responsive layout validated at mobile / tablet / desktop breakpoints - [ ] Reduced-motion mode verified - [ ] Design system tokens used (no hardcoded colors/spacing) ### DX (if applicable) - [ ] API versioning implemented (`/v1/` prefix or agreed scheme) - [ ] Error responses follow RFC 7807 shape - [ ] All CLI commands have `--help` text and correct exit codes - [ ] SDK/client examples updated to reflect final API shape ### Taste Gate Resolutions - [ ] Taste Gate 1: <topic> — resolved as <option chosen> - [ ] Taste Gate 2: <topic> — resolved as <option chosen> ### Review & Sign-off - [ ] AutoPlan consolidated output reviewed by team lead - [ ] No blocking issues remain open - [ ] Plan file updated with all Auto-Decisions and Taste Gate resolutions - [ ] Change committed: `git add <plan file> && git commit -m "docs: finalize autoplan review outputs"`
When running inside a CI pipeline, orchestrator, or spawned sub-agent session (SESSION_KIND=spawned or GSTACK_HEADLESS=true):
AskUserQuestion or any interactive prompt[TASTE GATE AUTO-DECIDED: <topic> → Option A: <description>]AUTOPLAN_RESULT: COMPLETE
BLOCKING_ISSUES: <count>
TASTE_GATES_SURFACED: <count>
TASTE_GATES_AUTO_DECIDED: <count>
REVIEWS_RAN: CEO,ENG[,DESIGN][,DX][,EMBEDDED]
NEXT_ACTION: <one string>Ask once: > I couldn't find a plan file (PLAN.md, SPEC.md, etc.). Please paste your plan inline or tell me the file path.
If the user pastes inline, treat the paste as the plan and proceed normally.
If the plan is fewer than 5 substantive lines or contains only placeholders:
/office-hours first to shape it, then come back."If a sub-review cannot complete (e.g., missing context, ambiguous plan section):
[SKIPPED — insufficient context]If the user says "skip design review" but design signals are strong (e.g., plan has 8 UI sections):
Design review skipped by user request. Note: plan has significant UI scope.When automotive/embedded context is detected, AutoPlan applies additional review logic:
[AUTO: P3][TASTE GATE] if the user must confirm[AUTO: P5]User: "autoplan"
AutoPlan response:
🔍 AutoPlan starting...
Plan file: PLAN.md (247 lines)
Reviews: [CEO] [ENG] [DESIGN] — DX skipped (no API/CLI signals)
Ingesting plan...
═══════════════════════════════════════════════════════
AUTOPLAN REVIEW — "Zone Controller Refactor"
Ran: CEO, Engineering, Design | Date: 2026-07-22
═══════════════════════════════════════════════════════
## Executive Summary
The plan is implementable with two minor scope clarifications and one architectural
decision pending human input. No blocking issues. Recommend proceeding after the
single taste gate below is resolved.
## Auto-Decisions Log
| # | Decision | Principle | Rationale |
|---|----------|-----------|-----------|
| 1 | Defer "multi-zone sync v2" to P2 | P1 | No deadline stated, adds 3 sprints |
| 2 | Use AUTOSAR BSW module for NVM | P3 | Existing BSW available; custom NVM risky |
| 3 | ASIL-B assigned to zone controller | P5 | Body control function; injury risk low-medium |
| 4 | Typed ARXML interface before code | P4 | Interface-first prevents integration rework |
## ⚡ Taste Gates — Human Approval Required
### TASTE GATE 1: State machine implementation approach
**Context:** Zone controller state machine could be implemented in Stateflow (MBD path)
or hand-coded C with a state table (traditional path). Both are ASIL-B compliant.
**Option A:** Stateflow / MBD — auto-generates MISRA-compliant C, easier to review visually
**Option B:** Hand-coded state table in C — more portable, no toolchain dependency
**Impact if wrong:** Hard to change mid-sprint; choose now.
## Definition of Done
[pre-populated checklist — see Section 10]After emitting all output, always end with:
✅ AutoPlan complete.
Auto-decisions: <N> | Taste gates: <N> | Blockers: <N>
Next: <resolve taste gates above, then proceed to implementation>If there are zero taste gates, say:
✅ AutoPlan complete — no taste decisions required. Plan is fully decided. Ready to implement.Other measured skills in the registry, with their headline benchmark lift.