Validate readiness to advance between development phases. Produces a PASS/CONCERNS/FAIL verdict with specific blockers and required artifacts. Use when user says 'are we ready to move to X', 'can we advance to production', 'check if we can start the next phase', 'pass the gate'.
This skill validates whether the project is ready to advance to the next development phase. It checks for required artifacts, quality standards, and blockers.
Distinct from /project-stage-detect: That skill is diagnostic ("where are we?").
This skill is prescriptive ("are we ready to advance?" with a formal verdict).
The project progresses through these stages:
When a gate passes, write the new stage name to (single line, e.g. ). This updates the status line immediately.
production/stage.txtProductionTarget phase: $ARGUMENTS[0] (blank = auto-detect current stage, then validate next transition)
Also resolve the review mode (once, store for all gate spawns this run):
--review [full|lean|solo] was passed → use thatproduction/review-mode.txt → use that valueleanNote: in solo mode, director spawns (CD-PHASE-GATE, TD-PHASE-GATE, PR-PHASE-GATE, AD-PHASE-GATE) are skipped — gate-check becomes artifact-existence checks only. In lean mode, all four directors still run (phase gates are the purpose of lean mode).
With argument: /gate-check production — validate readiness for that specific phase
No argument: Auto-detect current stage using the same heuristics as
/project-stage-detect, then confirm with the user before running:
Use AskUserQuestion:
[A] Yes — run this gate[B] No — pick a different gate (if selected, show a second widget listing all gate options: Concept → Systems Design, Systems Design → Technical Setup, Technical Setup → Pre-Production, Pre-Production → Production, Production → Polish, Polish → Release)Do not skip this confirmation step when no argument is provided.
Required Artifacts:
design/gdd/game-concept.md exists and has contentdesign/gdd/game-pillars.md)design/gdd/game-concept.md (from brainstorm Phase 4 art-director output)Quality Checks:
/design-review verdict not MAJOR REVISION NEEDED)Required Artifacts:
design/gdd/systems-index.md with at least MVP systems enumerateddesign/gdd/ and individually pass /design-reviewdesign/gdd/ (from /review-all-gdds)Quality Checks:
/review-all-gdds verdict is not FAIL (cross-GDD consistency and design theory checks pass)/review-all-gdds are resolved or explicitly acceptedRequired Artifacts:
[CHOOSE]).claude/docs/technical-preferences.md populated)design/art/art-bible.md with at least Sections 1–4 (Visual Identity Foundation)docs/architecture/ covering
Foundation-layer systems (scene management, event architecture, save/load)docs/engine-reference/[engine]/tests/unit/ and tests/integration/ directories exist.github/workflows/tests.yml (or equivalent)docs/architecture/architecture.mddocs/architecture/architecture-traceability.md/architecture-review has been run (a review report file exists in docs/architecture/)design/accessibility-requirements.md exists with accessibility tier committeddesign/ux/interaction-patterns.md exists (pattern library initialized, even if minimal)Quality Checks:
docs/engine-reference/[engine]/deprecated-apis.mdADR Circular Dependency Check: For all ADRs in docs/architecture/, read each ADR's
"ADR Dependencies" / "Depends On" section. Build a dependency graph (ADR-A → ADR-B means
A depends on B). If any cycle is detected (e.g. A→B→A, or A→B→C→A):
Engine Validation (read docs/engine-reference/[engine]/VERSION.md first):
/architecture-review engine audit shows no deprecated API usageRequired Artifacts:
prototypes/ with a READMEproduction/sprints/design/art/art-bible.mddocs/architecture/architecture.mddocs/architecture/docs/architecture/control-manifest.md
(generated by /create-control-manifest from Accepted ADRs)production/epics/ with at least Foundation and Core
layer epics present (use /create-epics layer: foundation and
/create-epics layer: core to create them, then /create-stories [epic-slug]
for each epic)production/playtests/ or equivalentdesign/ux/), pause menudesign/ux/hud.md (if game has in-game HUD)/ux-review (verdict APPROVED or NEEDS REVISION accepted)Quality Checks:
design/accessibility-requirements.md is addressed in all key screen UX specsproduction/epics/
(not just GDDs — stories must embed GDD req ID + ADR reference)/review-all-gdds and /architecture-review if not done recently)Vertical Slice Validation (FAIL if any item is NO):
Note: If any Vertical Slice Validation item is FAIL, the verdict is automatically FAIL regardless of other checks. Advancing without a validated Vertical Slice is the #1 cause of production failure in game development (per GDC postmortem data from 155 projects).
Required Artifacts:
src/ has active code organized into subsystemsdesign/gdd/ with src/)tests/unit/ and tests/integration/ covering Logic and Integration storiestests/unit/production/qa/production/qa/ (generated by /qa-plan) covering this sprint or final production sprintproduction/qa/ (generated by /team-qa) with verdict APPROVED or APPROVED WITH CONDITIONSproduction/playtests/Quality Checks:
design/difficulty-curve.md)design/accessibility-requirements.mdRequired Artifacts:
src/)/qa-plan output in production/qa/)/team-qa output — APPROVED or APPROVED WITH CONDITIONS)production/qa/evidence/)/balance-check run)/release-checklist or /launch-checklist run)Quality Checks:
qa-leadBefore running artifact checks, read docs/consistency-failures.md if it exists.
Extract entries whose Domain matches the target phase (e.g., if checking
Systems Design → Technical Setup, pull entries in Economy, Combat, or any GDD domain;
if checking Technical Setup → Pre-Production, pull entries in Architecture, Engine).
Carry these as context — recurring conflict patterns in the target domain warrant
increased scrutiny on those specific checks.
For each item in the target gate:
Glob and Read to verify files exist and have meaningful contentSystems Design → Technical Setup gate — cross-GDD review check:
Use Glob('design/gdd/gdd-cross-review-*.md') to find the /review-all-gdds report.
If no file matches, mark the "cross-GDD review report exists" artifact as FAIL and
surface it prominently: "No /review-all-gdds report found in design/gdd/. Run
/review-all-gdds before advancing to Technical Setup."
If a file is found, read it and check the verdict line: a FAIL verdict means the
cross-GDD consistency check failed and must be resolved before advancing.
Bash if a test runner is configuredRead the GDD and check for the 8 required sectionsRead technical-preferences.md and compare against any
profiling data in tests/performance/ or recent /perf-profile outputGrep for hardcoded strings in src/design/gdd/ documents against src/ implementationsFor items that can't be automatically verified, ask the user:
/perf-profile?"Never assume PASS for unverifiable items. Mark them as MANUAL CHECK NEEDED.
Before generating the final verdict, spawn all four directors as parallel subagents via Task using the parallel gate protocol from .claude/docs/director-gates.md. Issue all four Task calls simultaneously — do not wait for one before starting the next.
Spawn in parallel:
creative-director — gate CD-PHASE-GATE (.claude/docs/director-gates.md)technical-director — gate TD-PHASE-GATE (.claude/docs/director-gates.md)producer — gate PR-PHASE-GATE (.claude/docs/director-gates.md)art-director — gate AD-PHASE-GATE (.claude/docs/director-gates.md)Pass to each: target phase name, list of artifacts present, and the context fields listed in that gate's definition.
Collect all four responses, then present the Director Panel summary:
## Director Panel Assessment
Creative Director: [READY / CONCERNS / NOT READY]
[feedback]
Technical Director: [READY / CONCERNS / NOT READY]
[feedback]
Producer: [READY / CONCERNS / NOT READY]
[feedback]
Art Director: [READY / CONCERNS / NOT READY]
[feedback]
Apply to the verdict:
## Gate Check: [Current Phase] → [Target Phase]
**Date**: [date]
**Checked by**: gate-check skill
### Required Artifacts: [X/Y present]
- [x] design/gdd/game-concept.md — exists, 2.4KB
- [ ] docs/architecture/ — MISSING (no ADRs found)
- [x] production/sprints/ — exists, 1 sprint plan
### Quality Checks: [X/Y passing]
- [x] GDD has 8/8 required sections
- [ ] Tests — FAILED (3 failures in tests/unit/)
- [?] Core loop playtested — MANUAL CHECK NEEDED
### Blockers
1. **No Architecture Decision Records** — Run `/architecture-decision` to create one
covering core system architecture before entering production.
2. **3 test failures** — Fix failing tests in tests/unit/ before advancing.
### Recommendations
- [Priority actions to resolve blockers]
- [Optional improvements that aren't blocking]
### Verdict: [PASS / CONCERNS / FAIL]
- **PASS**: All required artifacts present, all quality checks passing
- **CONCERNS**: Minor gaps exist but can be addressed during the next phase
- **FAIL**: Critical blockers must be resolved before advancing
After drafting the verdict in Phase 5, challenge it before finalising.
Step 1 — Generate 5 challenge questions designed to disprove the verdict:
For a PASS draft:
For a CONCERNS draft:
For a FAIL draft:
Step 2 — Answer each question independently. Do NOT reference the draft verdict text — re-check specific files or ask the user.
Step 3 — Revise if needed:
Step 4 — Note the verification in the final report output:
Chain-of-Verification: [N] questions checked — verdict [unchanged | revised from X to Y]
When the verdict is PASS and the user confirms they want to advance:
production/stage.txt (single line, no trailing newline)Example: if passing the "Pre-Production → Production" gate:
echo -n "Production" > production/stage.txt
Always ask before writing: "Gate passed. May I update production/stage.txt to 'Production'?"
After the verdict is presented and any stage.txt update is complete, close with a structured next-step prompt using AskUserQuestion.
Tailor the options to the gate that just ran:
For systems-design PASS:
Gate passed. What would you like to do next?
[A] Run /create-architecture — produce your master architecture blueprint and ADR work plan (recommended next step)
[B] Design more GDDs first — return here when all MVP systems are complete
[C] Stop here for this session
Note for systems-design PASS:
/create-architectureis the required next step before writing any ADRs. It produces the master architecture document and a prioritized list of ADRs to write. Running/architecture-decisionwithout this step means writing ADRs without a blueprint — skip it at your own risk.
For technical-setup PASS:
Gate passed. What would you like to do next?
[A] Start Pre-Production — begin prototyping the Vertical Slice
[B] Write more ADRs first — run /architecture-decision [next-system]
[C] Stop here for this session
For all other gates, offer the two most logical next steps for that phase plus "Stop here".
Based on the verdict, suggest specific next steps:
/art-bible to create the visual identity specification/asset-spec system:[name] to generate per-asset visual specs and generation prompts from approved GDDs/brainstorm to create one/map-systems to decompose the concept into systems/reverse-document or delegate to game-designer/quick-design for changes under ~4 hours (bypasses full GDD pipeline)/ux-design [screen name] to author specs, or /team-ui [feature] for full pipeline/ux-review [file] or /ux-review all to validateAskUserQuestion to offer to create it now:
design/accessibility-requirements.md. Shall I create it from the template?"Create it now — I'll choose an accessibility tier, I'll create it myself, Skip for nowAskUserQuestion to ask for the tier:
Basic — remapping + subtitles only (lowest effort), Standard — Basic + colorblind modes + scalable UI, Comprehensive — Standard + motor accessibility + full settings menu, Exemplary — Comprehensive + external audit + full customizationdesign/accessibility-requirements.md using the template at .claude/docs/templates/accessibility-requirements.md, filling in the chosen tier. Confirm: "May I write design/accessibility-requirements.md?"/ux-design patterns to initialize it/review-all-gdds (run after all MVP GDDs are individually approved)/review-all-gdds/test-setup to scaffold the framework for your engine/qa-plan sprint to generate one before implementation begins/architecture-decision for individual decisions/create-architecture for the full blueprint/architecture-decision
or manually add Engine Compatibility sections to existing ADRs/create-control-manifest (requires Accepted ADRs)/create-epics layer: foundation then /create-epics layer: core (requires control manifest)/create-stories [epic-slug] (run after each epic is created)/story-readiness to validate stories before developers pick them uplead-programmer or qa-tester/playtest-report/playtest-report to structure findings.design/difficulty-curve.md before polishdesign/player-journey.md using the player journey template/sprint-status for current sprint progress snapshot/perf-profile/localize/launch-checklistThis skill follows the collaborative design principle:
Never block a user from advancing — the verdict is advisory. Document the risks and let the user decide whether to proceed despite concerns.