Files
Claude-Code-Game-Studios/.claude/skills/help/SKILL.md
Donchitos f36494e70c Model routing, PostCompact hook, parallel spawning, error recovery
Model tier assignment:
- model: haiku → help, sprint-status, story-readiness, scope-check,
  project-stage-detect, changelog, patch-notes, onboard (read-only/format)
- model: opus → review-all-gdds, architecture-review, gate-check
  (multi-doc synthesis, high-stakes verdicts)

PostCompact hook:
- New .claude/hooks/post-compact.sh — fires after compaction, reminds
  Claude to re-read production/session-state/active.md to restore context
- Registered in settings.json between PreCompact and Stop

Parallel Task spawning:
- review-all-gdds: Phase 2 (consistency) and Phase 3 (design theory) now
  explicitly instructed to spawn as parallel Task agents simultaneously

Error Recovery Protocol:
- Standard BLOCKED-handling section added to: review-all-gdds,
  architecture-review, dev-story, team-combat, team-qa, team-narrative,
  team-level, team-ui, team-audio, team-release, team-polish
- Pattern: surface blocker → assess dependencies → offer 3 options via
  AskUserQuestion → always produce partial report

Coordination rules:
- Added Model Tier Assignment table with routing rationale
- Added Subagents vs Agent Teams section (experimental agent teams docs)
- Added Parallel Task Protocol (when/how to spawn parallel agents)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 15:33:21 +11:00

7.2 KiB

name, description, argument-hint, user-invocable, allowed-tools, context, model
name description argument-hint user-invocable allowed-tools context model
help Analyzes what is done and the users query and offers advice on what to do next. Use if user says what should I do next or what do I do now or I'm stuck or I don't know what to do [optional: what you just finished, e.g. 'finished design-review' or 'stuck on ADRs'] true Read, Glob, Grep !echo "=== Live Project State ===" && echo "Stage: $(cat production/stage.txt 2>/dev/null | tr -d '[:space:]' || echo 'not set')" && echo "Latest sprint: $(ls -t production/sprints/*.md 2>/dev/null | head -1 || echo 'none')" && echo "Session state: $(head -5 production/session-state/active.md 2>/dev/null || echo 'none')" haiku

Studio Help — What Do I Do Next?

This skill figures out exactly where you are in the game development pipeline and tells you what comes next. It is lightweight — not a full audit. For a full gap analysis, use /project-stage-detect.


Step 1: Read the Catalog

Read .claude/docs/workflow-catalog.yaml. This is the authoritative list of all phases, their steps (in order), whether each step is required or optional, and the artifact globs that indicate completion.


Step 2: Determine Current Phase

Check in this order:

  1. Read production/stage.txt — if it exists and has content, this is the authoritative phase name. Map it to a catalog phase key:

    • "Concept" → concept
    • "Systems Design" → systems-design
    • "Technical Setup" → technical-setup
    • "Pre-Production" → pre-production
    • "Production" → production
    • "Polish" → polish
    • "Release" → release
  2. If stage.txt is missing, infer phase from artifacts (most-advanced match wins):

    • src/ has 10+ source files → production
    • production/stories/*.md exists → pre-production
    • docs/architecture/adr-*.md exists → technical-setup
    • design/gdd/systems-index.md exists → systems-design
    • design/gdd/game-concept.md exists → concept
    • Nothing → concept (fresh project)

Step 3: Read Session Context

Read production/session-state/active.md if it exists. Extract:

  • What was most recently worked on
  • Any in-progress tasks or open questions
  • Current epic/feature/task from STATUS block (if present)

This tells you what the user just finished or is stuck on — use it to personalize the output.


Step 4: Check Step Completion for the Current Phase

For each step in the current phase (from the catalog):

Artifact-based checks

If the step has artifact.glob:

  • Use Glob to check if files matching the pattern exist
  • If min_count is specified, verify at least that many files match
  • If artifact.pattern is specified, use Grep to verify the pattern exists in the matched file
  • Complete = artifact condition is met
  • Incomplete = artifact is missing or pattern not found

If the step has artifact.note (no glob):

  • Mark as MANUAL — cannot auto-detect, will ask user

If the step has no artifact field:

  • Mark as UNKNOWN — completion not trackable (e.g. repeatable implementation work)

Special case: production phase — read sprint-status.yaml

When the current phase is production, check for production/sprint-status.yaml before doing any glob-based story checks. If it exists, read it directly:

  • Stories with status: in-progress → surface as "currently active"
  • Stories with status: ready-for-dev → surface as "next up"
  • Stories with status: done → count as complete
  • Stories with status: blocked → surface as blocker with the blocker field

This gives precise per-story status without markdown scanning. Skip the glob artifact check for the implement and story-done steps — the YAML is authoritative.

Special case: repeatable: true (non-production)

For repeatable steps outside production (e.g. "System GDDs"), the artifact check tells you whether any work has been done, not whether it's finished. Label these differently — show what's been detected, then note it may be ongoing.


Step 5: Find Position and Identify Next Steps

From the completion data, determine:

  1. Last confirmed complete step — the furthest completed required step
  2. Current blocker — the first incomplete required step (this is what the user must do next)
  3. Optional opportunities — incomplete optional steps that can be done before or alongside the blocker
  4. Upcoming required steps — required steps after the current blocker (show as "coming up" so user can plan ahead)

If the user provided an argument (e.g. "just finished design-review"), use that to advance past the step they named even if the artifact check is ambiguous.


Step 6: Check for In-Progress Work

If active.md shows an active task or epic:

  • Surface it prominently at the top: "It looks like you were working on [X]"
  • Suggest continuing it or confirm if it's done

Step 7: Present Output

Keep it short and direct. This is a quick orientation, not a report.

## Where You Are: [Phase Label]

**In progress:** [from active.md, if any]

### ✓ Done
- [completed step name]
- [completed step name]

### → Next up (REQUIRED)
**[Step name]** — [description]
Command: `[/command]`

### ~ Also available (OPTIONAL)
- **[Step name]** — [description] → `/command`
- **[Step name]** — [description] → `/command`

### Coming up after that
- [Next required step name] (`/command`)
- [Next required step name] (`/command`)

---
Approaching **[next phase]** gate → run `/gate-check` when ready.

Formatting rules:

  • for confirmed complete
  • for the current required next step (only one — the first blocker)
  • ~ for optional steps available now
  • Show commands inline as backtick code
  • If a step has no command (e.g. "Implement Stories"), explain what to do instead of showing a slash command
  • For MANUAL steps, ask the user: "I can't tell if [step] is done — has it been completed?"

Step 8: Gate Warning (if close)

After the current phase's steps, check if the user is likely approaching a gate:

  • If all required steps in the current phase are complete (or nearly complete), add: "You're close to the [Current] → [Next] gate. Run /gate-check when ready."
  • If multiple required steps remain, skip the gate warning — it's not relevant yet.

Step 9: Escalation Paths

After the recommendations, if the user seems stuck or confused, add:

---
Need more detail?
- `/project-stage-detect` — full gap analysis with all missing artifacts listed
- `/gate-check` — formal readiness check for your next phase
- `/start` — re-orient from scratch

Only show this if the user's input suggested confusion (e.g. "I don't know", "stuck", "lost", "not sure"). Don't show it for simple "what's next?" queries.


Collaborative Protocol

  • Never auto-run the next skill. Recommend it, let the user invoke it.
  • Ask about MANUAL steps rather than assuming complete or incomplete.
  • Match the user's tone — if they sound stressed ("I'm totally lost"), be reassuring and give one action, not a list of six.
  • One primary recommendation — the user should leave knowing exactly one thing to do next. Optional steps and "coming up" are secondary context.