复制安装命令
用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。
复制前请先查看来源、License 和安全提示。
Complete game development workflow skills for Claude Code
用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。
复制前请先查看来源、License 和安全提示。
来源文件:README.md
Complete game development workflow skills for Claude Code
29 interactive AI skills for game development — from creative spark to shipped build. Covers the complete game production workflow: spark exploration, design review, prototype planning, implementation handoff, game feel diagnosis, playability assessment, code review, QA, and release. Built on gstack's engineering architecture and review methodology, fully rewritten for game development.
What this IS: A structured game development support system — it helps you protect early creative sparks, then judge, score, and improve your game design and code when you are ready. What this is NOT: A game builder or code generator — it doesn't implement features or create assets for you.
gstack is Garry Tan's AI engineering workflow for Web/SaaS. gstack-game ports that same methodology to game dev: game design theory (MDA, SDT, Flow State) replaces SaaS metrics (MRR, churn). Core loop, retention hooks, and Sink/Faucet economy models replace API endpoints and database schemas. The engineering backbone (template engine, preamble injection, anti-sycophancy) maintains gstack-level quality.
Who this is for:
/triage — it detects your project state and tells you which skill to run first./spark-lens (have a fragile fragment), /game-import (have a doc), /game-ideation (ready to structure), /game-review (have a GDD).Requirements: Claude Code, Git, Bun v1.0+
Open Claude Code and paste this. Claude does the rest.
Install gstack-game: run
git clone https://github.com/fagemx/gstack-game.git ~/.claude/skills/gstack-game && cd ~/.claude/skills/gstack-game && bun run buildthen add a "gstack-game" section to CLAUDE.md that lists the available skills: /triage, /spark-lens, /game-import, /game-ideation, /game-direction, /game-review, /game-eng-review, /balance-review, /player-experience, /game-ux-review, /plan-design-review, /pitch-review, /prototype-slice-plan, /implementation-handoff, /gameplay-implementation-review, /feel-pass, /build-playability-review, /game-qa, /game-ship, /game-debug, /game-retro, /game-codex, /game-docs, /game-visual-qa, /asset-review, /playtest, /careful, /guard, /unfreeze. Then ask the user if they also want to add gstack-game to the current project.
Add gstack-game to this project: run
cp -Rf ~/.claude/skills/gstack-game .claude/skills/gstack-game && rm -rf .claude/skills/gstack-game/.git && cd .claude/skills/gstack-game && bun run buildthen add a "gstack-game" section to this project's CLAUDE.md listing all available skills.
Real files get committed to your repo (not a submodule), so git clone just works. Everything lives inside .claude/. Nothing touches your PATH or runs in the background.
# Install a single skill:
cp -r /path/to/gstack-game/skills/game-review your-project/.claude/skills/
# Or install everything:
/path/to/gstack-game/bin/install.sh .
You: I have a game design PDF I'd like to review
You: /game-import
Claude: I found your PDF. Let me read it and check what's there.
| Section | Status |
| Core Loop | ✅ |
| Systems Detail | ✅ |
| Progression | ❌ |
| Economy | ❌ |
| Player Motivation | ❌ |
3/8 sections missing. Want me to ask about each gap?
A) Probe the gaps — one question per missing section
B) Just write the GDD — mark gaps as ❌
C) Focus on critical gaps only
You: A
Claude: Your GDD doesn't define how players come back.
What pulls a player back for a second session?
A) New content unlocks
B) Unfinished business — "my character is still growing"
C) Daily rewards / rituals
D) I don't know yet — mark as TBD
→ [walks through each gap with one focused question]
→ Writes docs/gdd.md (116 lines, 5/8 sections)
→ "Ready for /game-review"
You: /game-review
Claude: Mode: A (Mobile/Casual) — weights adjusted
Section 1 — Core Loop: 7/10
"The 4-phase loop is clear but meso-loop is undefined."
A) Continue to Progression B) Dig deeper C) Fast-forward
→ [walks through each section, one issue at a time]
GDD Health Score: 5.8/10
STATUS: DONE_WITH_CONCERNS
You: /player-experience
Claude: Who should I pretend to be?
A) Casual Newcomer (3-min attention)
B) Interested Returner (Day 2-3)
→ [recommends A based on GDD state]
Phase 1 — First Contact (0-30s):
0:00 — I see a loading screen. Emotion: Neutral
0:12 — First tap. Emotion: Engaged ✅ Aha moment
1:30 — Waiting for next wave. Emotion: Bored 🔴
"Would this persona return? My assessment: unlikely — 1:30 dead time."
You: I want to brainstorm a new concept instead
You: /game-ideation
Claude: First — what stage are you at? Do you have a prototype, or just the concept?
→ Level 1: one-line pitch. Let's go deeper.
Fantasy: What should the player FEEL? "Run a dungeon" is a mechanic,
not a feeling. Is it "the satisfaction of watching your empire grow
from nothing"? Or "the evil joy of watching adventurers fall into
your traps"?
→ You pick: evil joy + strategic satisfaction
Core Loop: Describe it in one sentence:
"Place traps → watch adventurers trigger them → collect loot → upgrade → repeat"
Is the 30-second micro-loop fun on its own? Or only fun because of upgrades?
→ Forcing Q: If you remove all upgrades, is "place → trigger" still fun?
Twist: Name the 3 most similar games. How are you different?
Is the difference in mechanics (hard to copy) or art (easy to copy)?
→ Outputs Concept One-Pager
You: /game-review
Claude: [Reads Concept One-Pager]
Mode A (Mobile/Casual) — weights adjusted
Core Loop: 7/10 — micro-loop clear but meso-loop undefined
Progression: 5/10 — D7 retention hook not defined (-3)
Economy: 4/10 — faucets only, no sinks (inflation risk)
GDD Health Score: 5.8/10
STATUS: DONE_WITH_CONCERNS
[Walks through each issue one at a time via AskUserQuestion]
You: /player-experience
Claude: Persona: Casual Newcomer (3-min commute session)
0:00 Open app Curious
0:05 Loading done Tutorial text ⚠️ Wall of text, 3+ lines = skipped
0:12 First trap placed Engaged ✅ Aha moment
0:30 First adventurers Excited ✅ Seeing results
1:30 Waiting for wave Bored 🔴 60s dead time, churn risk
EMOTION ARC: Curious → Excited → Bored
Issue: 1:30 dead time will kill D1 retention
You: /gameplay-implementation-review
Claude: Diff: 847 LOC, 12 files
[Pass 1 — Critical]
🔴 DungeonManager.Update() — new List<>() every frame, GC pressure
🔴 TrapData serialization has no version field — save upgrades will break
⚠️ Damage calc on client side — cheat vector in multiplayer
[Pass 2 — Informational]
Hardcoded magic number: trap_damage = 15
AUTO-FIXED: 2 issues
ASK: 3 issues (one at a time)
Six commands. Concept to code review. Each step's output feeds the next.
gstack-game is a process, not a collection of tools. Skills are ordered the way a game dev sprint runs:
Spark → Think → Plan → Review → Slice → Handoff → Build → Feel → Playability → Test → Ship → Reflect
Each skill feeds the next. /spark-lens can leave an optional spark trace before structure. /game-import converts your PDF into a GDD that /game-review reads. /game-review flags risks that /prototype-slice-plan uses to decide what to build first. /implementation-handoff packages the slice for coding. /feel-pass checks if the build feels alive. /build-playability-review asks "is this worth playing?" before QA. Structured outputs are saved to ~/.gstack/projects/ so downstream skills find them automatically — even across sessions.
| Skill | Your specialist | What they do |
|---|---|---|
/triage | Project Navigator | Detects project state (BLANK/IDEA/DOCUMENTED/REVIEWED/BUILDING/SHIPPING), routes to the right skill. Run this first if unsure. |
/spark-lens | Creative Spark Companion | Protects fragile early ideas, turns moods/images/mechanics into creative riffs, finds the emotional imprint and optional soul slice without critique or scoring |
/game-import | Document Specialist | Convert any format (PDF, Notion, verbal description) into standardized docs/gdd.md. Audit completeness against 8-section standard. Pipeline gateway. |
/game-ideation | Game Design Mentor | Structure concepts with Fantasy/Loop/Twist, challenge assumptions with 6 forcing questions, plan next validation step with Iceberg framework |
/game-direction | Producer / Creative Director | Challenge "why build this game?", 10 cognitive patterns for strategic review, scope decisions (ADD/KEEP/DEFER/CUT) |
/game-review | Senior Game Designer | GDD review: Core Loop, Progression, Economy, Motivation, Risk. Quantified GDD Health Score |
/game-eng-review | Technical Director | Engine choice, rendering pipeline, networking architecture, asset pipeline, platform adaptation |
/balance-review | Economy Designer | Difficulty curves (Flow State), Sink/Faucet economy, Gini coefficient, pity systems, reward psychology |
/player-experience | UX Researcher | First-person player walkthrough, 7 personas (4D: profile/stance/behavior/influence), emotion model, repeat play simulation |
/game-ux-review | UI/UX Designer | HUD readability, menu flow, shop UI, tutorial, controller/touch adaptation, accessibility |
/plan-design-review | Senior Product Designer | Pre-implementation plan review: 7-pass Fix-to-10 (info architecture, interaction states, player journey, AI slop, design system, input/a11y, decisions). Builds DESIGN.md from scratch. Codex + Subagent parallel review |
/pitch-review | Investor / Publisher Lens | Market positioning, differentiation, feasibility, business case, Iceberg validation level |
/prototype-slice-plan | Production Strategist | Decide what to build FIRST: which slice, what hypothesis to test, what to fake, what failure looks like |
/implementation-handoff | Design Translator | Convert design intent into a build package: gameplay requirements, acceptance criteria, MUST/SHOULD/COULD priority |
/gameplay-implementation-review | Senior Game Programmer | Three-pass review: Pass 0 (design intent survival) + Pass 1 (frame budget, memory, sync) + Pass 2 (code quality). Evolved from /game-code-review |
/feel-pass | Game Feel Doctor | Diagnose why a mechanic feels dead: responsiveness, impact, rhythm, clarity, payoff. 7-dimension /14 scoring. The most game-specific skill. |
/build-playability-review | Playability Judge | "Is this worth playing?" — loop closure, session viability, retention signal, peak moments. 6-dimension /12 scoring |
/game-qa | QA Lead | 8-dimension testing: functional, visual, performance, audio, input, compatibility, localization, progression. Quantified Health Score |
/game-ship | Release Engineer | Build → Test → Changelog → PR → platform submission (Steam/App Store/Google Play/Web) |
/game-debug | Debug Specialist | 3-strike hypothesis testing + root cause analysis. No guessing. |
/game-retro | Scrum Master | Delivery rate, bug density trends, velocity, milestone health. Max 3 action items. |
/game-codex | Chaos Engineer | Independent-context adversarial review. Finds exploits, desync, save corruption. |
/game-docs | Technical Writer | Player-friendly patch notes + internal changelog + doc sweep |
/game-visual-qa | Art QA | Style consistency, UI alignment, animation quality, screen adaptation |
/asset-review | Technical Artist | Naming conventions, format specs, performance budget, style consistency |
/playtest | UX Researcher | Test plans, observation metrics, interview questions, data analysis framework |
| Skill | What it does |
|---|---|
/careful | Warns before destructive commands (rm -rf, force push, DROP TABLE) |
/guard | /careful + restricts file edits to a specific directory |
/unfreeze | Removes /guard scope restriction |
| gstack | gstack-game | |
|---|---|---|
| Domain | Web / SaaS products | Game development |
| Vocabulary | user, feature, API, MRR, churn | player, mechanic, core loop, retention, ARPDAU |
| Dependency | Standalone | Standalone (no gstack required) |
Borrowed from gstack:
Fully rewritten:
Each skill's percentage indicates domain judgment completeness, not code quality.
| Score | Meaning |
|---|---|
| 70-80% | Full structure + domain theory + quantitative scoring. Ready to use, expert fine-tuning only |
| 55-65% | Full structure + game vocabulary + AUTO/ASK/ESCALATE. Usable but lacks domain depth |
| 35-40% | Structural skeleton + basic flow. Needs domain expert input |
The engineering backbone matches gstack quality. What's missing is game industry domain judgment — scoring weights, benchmark numbers, engine-specific review points. These need calibration from experienced game professionals. See docs/domain-judgment-gaps.md for the full checklist.
| Source | What we took |
|---|---|
| gstack | Engineering architecture + 6 review methodology principles |
| Claude-Code-Game-Studios | MDA/SDT/Flow theory, Nested Loop, Pillar methodology, economy frameworks |
| guardian (PlayerSimulatorAgent) | Player simulation prompts, Iceberg validation framework, Fantasy/Loop/Twist |
| hakoniwa | 4D persona model (stance/MBTI-behavior/influence), ReACT evidence methodology, community reception prediction, event injection testing |
bun run build # Generate all SKILL.md from templates
bun run gen:skill-docs:check # Check for drift (CI use)
bun test # Run 24 validation tests
skills/my-skill/SKILL.md.tmpl{{PREAMBLE}} for shared behavior injection{{SKILL_NAME}} for auto-filled skill namebun run buildgstack-game/
├── CLAUDE.md ← Full technical docs
├── README.md ← This file
├── README.zh-TW.md ← 繁體中文版
├── ETHOS.md ← Game dev philosophy (Boil the Lake, game edition)
├── CHANGELOG.md ← Version history
├── VERSION ← 0.5.0
├── package.json ← Build scripts
├── bin/ ← 7 utilities (config, diff-scope, telemetry...)
├── scripts/gen-skill-docs.ts ← Template engine
├── skills/ ← 29 skills + shared preamble (many with references/)
├── test/ ← Tier 1 validation tests
└── docs/ ← Domain judgment gaps, source assessment, dev guide
gstack-game includes opt-in usage telemetry, disabled by default.
gstack-config set telemetry off~/.gstack/analytics/skill-usage.jsonl, never leaves your machine.Skill not showing up? Make sure SKILL.md files are generated: cd .claude/skills/gstack-game && bun run build
Template drift? bun run gen:skill-docs:check — if it reports DRIFT, run bun run build to regenerate.
Windows users: Run under Git Bash or WSL. The shell scripts in bin/ require bash.
Claude doesn't see the skills? Add this to your project's CLAUDE.md:
## gstack-game
Available skills: /triage, /spark-lens, /game-import, /game-ideation, /game-direction,
/game-review, /game-eng-review, /balance-review, /player-experience,
/game-ux-review, /plan-design-review, /pitch-review, /prototype-slice-plan, /implementation-handoff,
/gameplay-implementation-review, /feel-pass, /build-playability-review,
/game-qa, /game-ship, /game-debug, /game-retro, /game-codex, /game-docs,
/game-visual-qa, /asset-review, /playtest, /careful, /guard, /unfreeze.
| Doc | What it covers |
|---|---|
| Builder Ethos | Game dev philosophy: Boil the Lake, Search Before Building, Player Time is Sacred |
| Contributing | Three ways to contribute (5min Issue / 30min markdown / advanced template) |
| Domain Judgment Gaps | Expert review checklist — what needs calibration |
| Development Guide | Skill map, migration guide, architecture overview |
| Changelog | Version history |
| CLAUDE.md | Developer handoff for AI agents working on this repo |
MIT
name: guard
description: "Full safety mode. Combines /careful (destructive command warnings) with file scope restriction. Prevents editing files outside a specified directory."
user_invocable: true
preamble-tier: 1setopt +o nomatch 2>/dev/null || true # zsh compat
_GD_VERSION="0.5.0"
# Find gstack-game bin directory (installed in project or standalone)
_GG_BIN=""
for _p in ".claude/skills/gstack-game/bin" ".claude/skills/game-review/../../gstack-game/bin" "$(dirname "$(readlink -f .claude/skills/game-review/SKILL.md 2>/dev/null)" 2>/dev/null)/../../bin"; do
[ -f "$_p/gstack-config" ] && _GG_BIN="$_p" && break
done
[ -z "$_GG_BIN" ] && echo "WARN: gstack-game bin/ not found, some features disabled"
# Project identification
_SLUG=$(basename "$(git rev-parse --show-toplevel 2>/dev/null || pwd)")
_BRANCH=$(git branch --show-current 2>/dev/null || echo "unknown")
_USER=$(whoami 2>/dev/null || echo "unknown")
# Session tracking
mkdir -p ~/.gstack/sessions
touch ~/.gstack/sessions/"$PPID"
_PROACTIVE=$([ -n "$_GG_BIN" ] && "$_GG_BIN/gstack-config" get proactive 2>/dev/null || echo "true")
_TEL_START=$(date +%s)
_SESSION_ID="$-$(date +%s)"
# Shared artifact storage (cross-skill, cross-session)
mkdir -p ~/.gstack/projects/$_SLUG
_PROJECTS_DIR=~/.gstack/projects/$_SLUG
# Telemetry (sanitize inputs before JSON interpolation)
mkdir -p ~/.gstack/analytics
_SLUG_SAFE=$(printf '%s' "$_SLUG" | tr -d '"\\\n\r\t')
_BRANCH_SAFE=$(printf '%s' "$_BRANCH" | tr -d '"\\\n\r\t')
echo '{"skill":"guard","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'"$_SLUG_SAFE"'","branch":"'"$_BRANCH_SAFE"'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true
echo "SLUG: $_SLUG"
echo "BRANCH: $_BRANCH"
echo "PROACTIVE: $_PROACTIVE"
echo "PROJECTS_DIR: $_PROJECTS_DIR"
echo "GD_VERSION: $_GD_VERSION"
# Artifact summary
_ARTIFACT_COUNT=$(ls "$_PROJECTS_DIR"/*.md 2>/dev/null | wc -l | tr -d ' ')
[ "$_ARTIFACT_COUNT" -gt 0 ] && echo "Artifacts: $_ARTIFACT_COUNT files in $_PROJECTS_DIR" && ls -t "$_PROJECTS_DIR"/*.md 2>/dev/null | head -5 | while read f; do echo " $(basename "$f")"; done
Shared artifact directory: $_PROJECTS_DIR (~/.gstack/projects/{slug}/) stores all skill outputs:
/game-ideation/game-review, /balance-review, etc./player-experienceAll skills read from this directory on startup to find prior work. All skills write their output here for downstream consumption.
If PROACTIVE is "false", do not proactively suggest gstack-game skills.
AI models recommend. You decide. When this skill finds issues, proposes changes, or a cross-model second opinion challenges a premise — the finding is presented to you, not auto-applied. Cross-model agreement is a strong signal, not a mandate. Your direction is the default unless you explicitly change it.
Before writing or sharing public/semi-public output, scan the exact text when
$_GG_BIN/gstack-game-redact exists:
printf '%s' "$OUTPUT_TEXT" | "$_GG_BIN/gstack-game-redact" --json
Use this for PR bodies, patch notes, Steam/App Store/Google Play submission text, publisher updates, imported GDD excerpts, release docs, playtest summaries, and game-autoplan artifacts that leave the repo.
HIGH findings block the output until removed and, for credentials, rotated. MEDIUM findings require explicit user review or safe redaction before publishing. Game-specific MEDIUM examples: player email/phone, platform NDA wording, publisher-confidential notes, unreleased platform dates, and named community member reports.
DONE / DONE_WITH_CONCERNS / BLOCKED / NEEDS_CONTEXT. Escalation after 3 failed attempts.
_TEL_END=$(date +%s)
_TEL_DUR=$(( _TEL_END - _TEL_START ))
[ -n "$_GG_BIN" ] && "$_GG_BIN/gstack-telemetry-log" \
--skill "guard" --duration "$_TEL_DUR" --outcome "OUTCOME" \
--used-browse "false" --session-id "$_SESSION_ID" 2>/dev/null &
Activates BOTH destructive command safety (/careful) AND file edit scope restriction.
AskUserQuestion: What directory should I restrict edits to?
When active, before any Edit/Write tool call:
🛡️ GUARD MODE: This file is outside the allowed scope. Scope: [allowed directory] Target: [file being edited]
This edit is BLOCKED. To proceed, either: A) Expand scope to include this file B) Temporarily bypass for this one edit C) Deactivate guard mode
All /careful protections are also active. See /careful for destructive command warnings.
Say "turn off guard mode" or start a new session.
[ -n "$_GG_BIN" ] && "$_GG_BIN/gstack-review-log" '{"skill":"guard","timestamp":"TIMESTAMP","status":"ACTIVATED","scope":"SCOPE","commit":"COMMIT"}' 2>/dev/null || true
评论 (0)
暂无评论,成为第一个评论者吧!