Claude Code 游戏工作室:把单次会话变成完整游戏开发团队
本文目录
Claude Code 游戏工作室(Claude Code Game Studios)#
把单次 Claude Code 会话变成一间完整的游戏开发工作室。
49 个智能体,74 项技能,一支协同作战的 AI 团队。
为什么存在#
用 AI 单人开发游戏很有威力——但单次聊天会话没有任何结构。没人会阻止你硬编码魔法数字、跳过设计文档,或者写出意大利面条式代码。没有质量保证(Quality Assurance, QA)环节,没有设计评审,也没有人问一句「这真的符合游戏愿景吗?」
Claude Code 游戏工作室通过给你的 AI 会话赋予真实工作室的结构来解决这个问题。你得到的不再是一个通用助手,而是按工作室层级组织起来的 49 个专业智能体——守护愿景的总监、掌管各自领域的部门主管,以及动手干活的专家。每个智能体都有明确的职责、上报路径(escalation paths)和质量关卡(quality gates)。
结果:所有决策仍然由你来做,但你现在有了一支会问对问题、及早发现错误,并把项目从第一次头脑风暴到上线都组织得井井有条的团队。
目录#
- 包含内容
- 工作室层级
- 斜杠命令
- 产出的是游戏还是文档?
- 快速开始
- 配置
- 升级
- 项目结构
- 工作原理
- 设计哲学
- 自定义
- 平台支持
- 社区
- 支持本项目
- 许可证
包含内容#
| 类别 | 数量 | 描述 |
|---|---|---|
| 智能体(Agents) | 49 | 覆盖设计、编程、美术、音频、叙事、质量保证和制作的专业子智能体(subagents) |
| 技能(Skills) | 74 | 覆盖每个工作流阶段的斜杠命令(slash commands)(/start、/design-system、/create-epics、/create-stories、/dev-story、/story-done 等) |
| 钩子(Hooks) | 15 | 在提交、推送、资源变更、设计文档读取、写入与登记表、会话生命周期、智能体审计轨迹以及缺口检测时自动校验 |
| 规则(Rules) | 14 | 14 条路径作用域规则(path-scoped rules),在编辑玩法、引擎、AI、UI、网络代码、场景和资源文件等时强制执行 |
| 模板(Templates) | 62 | 62 份文档模板:游戏设计文档(Game Design Document, GDD)、UX 规格、架构决策记录(Architecture Decision Record, ADR)、冲刺计划、HUD 设计、无障碍等 |
工作室层级#
智能体按三个层级组织,与真实工作室的运作方式一致:
第一层 — 总监(Directors)
creative-director technical-director producer
第二层 — 部门主管(Department Leads)
game-designer lead-programmer art-director
audio-director narrative-director qa-lead
release-manager localization-lead
第三层 — 专家(Specialists)
gameplay-programmer engine-programmer ai-programmer
network-programmer tools-programmer ui-programmer
systems-designer level-designer economy-designer
technical-artist sound-designer writer
world-builder ux-designer prototyper
performance-analyst devops-engineer analytics-engineer
security-engineer qa-tester accessibility-specialist
live-ops-designer community-manager
每个智能体都在自己的 frontmatter 中声明所用模型:三位总监使用 Opus,lead-programmer 和十五位专家指定 Sonnet,其余三十位继承你当前会话的模型。请把这些层级理解成角色资历,而不是计费方案——工作室的大部分成员跑的就是你已经在用的那个模型。
引擎专家#
模板为三大主流引擎都提供了智能体组合。使用与你的项目匹配的那一组:
| 引擎 | 主导智能体 | 子专家 |
|---|---|---|
| Godot 4 | godot-specialist | GDScript、Shaders、GDExtension |
| Unity | unity-specialist | DOTS/ECS、Shaders/VFX、Addressables、UI Toolkit |
| Unreal Engine 5 | unreal-specialist | GAS、Blueprints、Replication、UMG/CommonUI |
斜杠命令#
在 Claude Code 中输入 / 即可访问全部 74 项技能:
上手与导航 /start /help /project-stage-detect /setup-engine /adopt /settings
游戏设计 /brainstorm /map-systems /design-system /quick-design /review-all-gdds /propagate-design-change
美术与资源 /art-bible /asset-spec /asset-audit
UX 与界面设计 /ux-design /ux-review
架构 /create-architecture /architecture-decision /architecture-review /create-control-manifest
故事与冲刺 /create-epics /create-stories /dev-story /sprint-plan /sprint-status /story-readiness /story-done /estimate
评审与分析 /design-review /code-review /balance-check /content-audit /scope-check /perf-profile /tech-debt /gate-check /consistency-check /security-audit
QA 与测试 /qa-plan /smoke-check /soak-test /regression-suite /test-setup /test-helpers /test-evidence-review /test-flakiness /skill-test /skill-improve
制作 /milestone-review /retrospective /bug-report /bug-triage /reverse-document /playtest-report
发布 /release-checklist /launch-checklist /changelog /patch-notes /hotfix /day-one-patch
创意与内容 /prototype /vertical-slice /onboard /localize
团队编排(在单个功能上协调多个智能体) /team-combat /team-narrative /team-ui /team-release /team-polish /team-audio /team-level /team-live-ops /team-qa
产出的是游戏还是文档?#
这是个合理的问题,而答案是一次测量,而不是一个示例项目。用同一份需求简报在四个不同的 modes.rigor 级别下各构建了一款游戏,并统计了每款游戏在写下第一行游戏代码之前产出的文档数量:
| modes.rigor | 第一行游戏代码之前的文档数 | 时间 |
|---|---|---|
| minimal | 1(一页简报) | 0 分钟 |
| standard | 30 | 58 分钟 |
它们全都产出了可运行、经过测试的游戏。随后两位盲测评审和一次真人试玩把 standard 构建排在最后——多出来的 29 份文档换来的是可追溯性,而不是更好的游戏。
它会运行游戏并亲眼查看
上面的测量关乎成本。另一半问题是这东西到底能不能用,而对游戏来说,这意味着必须有人亲眼看——测试通过并不能说明菜单有没有画到屏幕外。因此,任何改变玩家所见内容的故事(story),在游戏被启动、观察,并把截图保存在 production/qa/evidence/ 之前都不算关闭。解析检查不等于运行。这条规则在每个 rigor 级别都成立,包括 minimal——在 minimal 下自动化测试可以豁免,但亲眼查看不能。
这些游戏本身刻意没有随仓库发布:这是一个你克隆下来用于启动自己项目的模板,而别人做的游戏放在你的仓库里只是杂物,不是证据。
快速开始#
前置条件#
- Git
- Claude Code —— 推荐使用原生安装器(在 Node.js 22+ 上,
npm install -g @anthropic-ai/claude-code也可用) - Python 3 —— 每项技能和每个钩子都要读取
project.yaml;没有它,所有设置都会静默回退到默认值 - Bash —— 运行每个钩子;macOS 和 Linux 自带,Windows 上随 Git for Windows 提供
- 推荐:jq(用于钩子校验)
如果缺少可选工具,钩子会优雅降级——你只是失去校验——但有一个刻意的例外:当没有 Python 可以校验数据 JSON 时,暂存了数据 JSON 的提交会被阻止。
安装#
克隆仓库或作为模板使用:
git clone https://github.com/Donchitos/Claude-Code-Game-Studios.git my-game
cd my-game
在项目根目录(包含 CLAUDE.md 和 project.yaml 的那个目录)打开 Claude Code 并启动会话:
claude
如果在 src/ 这样的子目录中启动,就会跳过项目的钩子、拒绝规则(deny rules)和先询问权限模式(ask-first permission mode)。
运行 /start —— 系统会询问你处在什么阶段(毫无头绪、模糊概念、设计清晰、已有工作),并引导你进入正确的工作流。不做任何假设。
如果你已经清楚自己要什么,也可以直接跳到特定技能:
/brainstorm—— 从零探索游戏创意/setup-engine godot 4.7—— 如果已经确定,就配置你的引擎/project-stage-detect—— 分析现有项目
配置#
仓库根目录的 project.yaml 是工作室在你的项目上如何行事的唯一事实来源——引擎、命名约定,以及一个控制每项技能强制执行多少流程的 modes 块。/start 会替你写它;你很少需要手动编辑。
最重要的问题是 modes.rigor —— minimal、standard 或 full。它是六个独立旋钮之上的一个统一入口(workflow —— 要求哪些 GDD 章节、docs.density、qa.level、story_granularity、review_mode —— 有多少总监智能体审查你的工作,以及 team.size),所以 /start 只问一次,而不是问六次:
minimal(默认)—— 游戏马拉松(jam)速度。不要求 GDD,文档精简,最少的 QA 证据,单人审查。/start→/setup-engine→/brainstorm(一页简报)→/create-stories→/dev-story↔/story-done。standard—— 5 个必填 GDD 章节,均衡的文档深度,标准 QA 证据,精简审查。full—— 全部 8 个 GDD 章节,详尽文档,每种故事类型都有完整 QA 证据,完整总监审查。
minimal 是默认值,因为更重的层级要花更多成本才能走到可运行代码,却并没有产生更好的结果,而且当新人接手项目时也带不来任何回报。项目成长后,用一次 /settings 调用把它调高——/help 和 /gate-check 看到迹象时会建议你这么做。
两个逃生口可以防止单一设置变成粗糙的一刀切工具。system_overrides 让单个系统采用比其他部分更高的标准——你的战斗系统得到全套处理,而其他一切保持轻量。testing.strict 按测试类型(logic、integration、visual、UI、config)设置:缺失证据是阻塞故事,还是仅仅警告。
如果你想要混合配置,六个底层旋钮中的任何一个仍然可以单独设置(例如 workflow: full 搭配 docs.density: terse —— 全面但紧凑)。其中两个——review_mode(full / lean / solo)和 team.size——也是个人设置:rigor 设定团队范围的默认值,但你可以在被 git 忽略的 project.local.yaml 中按开发者覆盖它们,而无需改动共享配置。modes.automation(AI 在行动前停下来询问的频率)位于 rigor 之外,同样可以个人覆盖。
用 /settings 技能查看或修改任何设置:
/settings # view effective config
/settings modes.review_mode # view one setting
/settings modes.rigor=full # write to project.yaml (team-wide)
/settings --local modes.review_mode=solo # write to project.local.yaml (just you)
完整 schema 和各设置的行为:.claude/docs/effects-map.md。
升级#
已经在使用这个模板的旧版本?参见 UPGRADING.md,其中有分步迁移说明、各版本之间变更的明细,以及哪些文件可以安全覆盖、哪些需要手动合并。
项目结构#
CLAUDE.md # Master configuration
.claude/
settings.json # Hooks, permissions, safety rules
agents/ # 49 agent definitions (markdown + YAML frontmatter)
skills/ # 74 slash commands (subdirectory per skill)
hooks/ # 18 scripts (bash) — 15 event hooks, two helpers they
# source (yaml-helper.sh, update-check.sh), and one
# opt-in diagnostic you wire yourself
rules/ # 14 path-scoped coding standards
statusline.sh # Status line script (context%, model, stage, epic breadcrumb)
docs/
workflow-catalog.yaml # 7-phase pipeline definition (read by /help)
templates/ # 62 document templates (+ per-section guidance)
src/ # Game source code (Godot). The code root is
# ENGINE-SPECIFIC: Unity compiles only
# Assets/, Unreal builds from Source/<Module>/
assets/ # Art, audio, VFX, shaders, data files
design/ # GDDs, narrative docs, level designs
docs/ # Technical documentation and ADRs
tests/ # Test suites (unit, integration, performance, playtest)
tools/ # Build and pipeline tools
prototypes/ # Throwaway prototypes (isolated from src/)
production/ # Sprint plans, milestones, release tracking
studio-tests/ # QA for the skills and agents themselves — see below
测试你的自定义
CCGS 是一个供你编辑的模板。studio-tests/ 用来检查编辑过或新写的技能是否依然站得住脚——它是全部 74 项技能和 49 个智能体的目录,包含按类别划分的质量评分标准、行为规格,以及编写你自己规格的模板。
/skill-test static [name] # structural linter — 7 compliance checks
/skill-test category [name] # category-specific quality rubric
/skill-test spec [name] # behavioral spec assertions
/skill-test audit # coverage report across skills and agents
/skill-improve [name] # test-fix-retest loop; keeps or reverts on score change
它测试的是框架,而不是你的游戏——游戏测试位于 tests/。
工作原理#
智能体协作#
智能体遵循结构化的委派模型:
- 垂直委派 —— 总监委派给主管,主管委派给专家
- 横向协商 —— 同层级智能体可以互相咨询,但不能做出有约束力的跨领域决策
- 冲突解决 —— 分歧上报到共同上级(设计问题上到
creative-director,技术问题上到technical-director) - 变更传播 —— 跨部门变更由
producer协调 - 领域边界 —— 未经明确委派,智能体不修改自己领域之外的文件
协作,而非自主#
这不是一个自动驾驶系统。每个智能体都遵循严格的协作协议:
- 提问 —— 智能体在提出方案前先提问
- 呈现选项 —— 智能体展示 2-4 个选项及利弊
- 你来决定 —— 始终由用户拍板
- 草稿 —— 智能体在定稿前展示工作
- 批准 —— 没有你的签字,什么都不会写入
控制权始终在你手里。智能体提供的是结构和专业能力,而不是自主权。
在项目根目录启动的终端会话,开箱即用就是这种表现。引导式和自主式的自动化设置,以及 Claude Code 自带的自动模式,会用其中一些提示换取速度;进入自动模式的路径见 setup-requirements.md。
自动化安全#
钩子在每次会话中自动运行:
| 钩子 | 触发时机 | 作用 |
|---|---|---|
validate-commit.sh | PreToolUse(Bash、PowerShell) | 检查硬编码值、TODO 格式、JSON 有效性和设计文档章节——如果命令不是 git commit 则提前退出 |
validate-push.sh | PreToolUse(Bash、PowerShell) | 对推送到受保护分支,以及对 git tag、git merge、gh release、butler push 和 steamcmd +run_app_build 发出警告——其他命令则提前退出 |
validate-read.sh | PreToolUse(Read) | 拒绝整文件读取超过 40 KB 的设计文档,并返回其标题,让重试时只读取一个章节(features.read_guard) |
validate-write.sh | PreToolUse(Write/Edit) | 当写入会破坏技能声明的规则时发出警告,但从不阻止:技能永不覆盖的文件、配置守卫、原型边界、本地化冻结 |
validate-registry.sh | PreToolUse(Write/Edit) | 当对实体登记表或 TR-ID 登记表的写入会删除或重新编号条目,或设置其表头未列出的状态时发出警告 |
validate-assets.sh | PostToolUse(Write/Edit) | 检查 assets/、Assets/ 或 Content/ 下的数据文件 JSON,以及 Godot 的 assets/ 中的资源命名——如果文件不在其中任何一个路径下则提前退出 |
session-start.sh | 会话打开 | 显示当前分支和最近提交,帮助定位 |
detect-gaps.sh | 会话打开 | 检测全新项目(建议运行 /start),以及在存在代码或原型时缺失的设计文档 |
pre-compact.sh | 压缩前 | 记录压缩日志(其输出不会到达 Claude——之后由 session-start.sh 恢复上下文) |
notify.sh | 权限提示时,或空闲约一分钟 | 通过 PowerShell 显示 Windows 通知 |
session-stop.sh | 每次响应结束时,在后台 | 将 active.md 归档到会话日志,并记录 git 活动 |
log-agent.sh | 智能体被启动 | 审计轨迹开始——记录子智能体调用 |
log-agent-stop.sh | 智能体停止 | 审计轨迹结束——补全子智能体记录 |
validate-agent-artifact.sh | 智能体停止 | 当子智能体停止却没有写入其任务简报所指定的文件时发出警告 |
validate-skill-change.sh | PostToolUse(Write/Edit) | 在任何 .claude/skills/ 变更后建议运行 /skill-test |
注:validate-commit.sh、validate-push.sh、validate-read.sh、validate-write.sh、validate-registry.sh、validate-assets.sh 和 validate-skill-change.sh 会在每次 Bash、PowerShell、Read、Write 或 Edit 工具调用时触发,并在命令或文件路径不相关时立即退出(exit 0)。这是正常的钩子行为——不是性能问题。
settings.json 中的权限规则会自动允许测试运行,并在 Bash 和 PowerShell 工具中阻止危险操作(force push、rm -rf、读取 .env 文件)。像 git status、git log 和 ls 这样的只读命令不需要规则:Claude Code 会在不询问的情况下运行它们。git 规则会匹配 git 之后的任意位置,因此,只要一条 git 命令的文本中先出现 push 后出现 + 或 -f、先出现 clean 后出现 -f、或先出现 reset 后出现 --hard——包括像 git commit -m "push + pull" 这样的提交信息——也会被拒绝:请改写信息。
路径作用域规则#
编码标准会根据文件位置自动强制执行。下面的路径是 Godot 的布局。每条规则同时也匹配 Unity 和 Unreal 的布局:代码规则匹配 Assets/**/Gameplay/ 下的 C# 和 Source/**/Gameplay/ 下的 C++(以及 Core、AI、Networking、UI),数据规则匹配 Assets/**/Data/ 和 Content/**/Data/ 下的 JSON,着色器按文件类型匹配,测试匹配 Assets/Tests/ 下的 C# 和 Source/**/Tests/ 下的 C++。
| 路径 | 强制执行内容 |
|---|---|
src/gameplay/** | 数据驱动取值,使用 delta time,不引用 UI |
src/core/** | 热路径零分配,线程安全,API 稳定性 |
src/ai/** | 性能预算,可调试性,数据驱动参数 |
src/networking/** | 服务器权威,版本化消息,安全 |
src/ui/** | 不持有游戏状态,支持本地化,无障碍 |
design/gdd/** | 按 modes.workflow 要求的章节,公式格式,边界情况 |
design/narrative/** | 设定一致性,角色口吻,正典层级 |
assets/data/**/*.json | JSON 有效性,命名约定,schema 规则 |
assets/shaders/** | 命名约定,性能目标,跨平台规则 |
**/*.tscn、**/*.tres | 尽量在编辑器内修改场景和资源文件;安全的手工编辑规则 |
tests/** | 测试命名,覆盖率要求,fixture 模式 |
prototypes/** | 放宽的标准,必须提供 README,记录假设 |
设计哲学#
这个模板扎根于专业游戏开发实践:
- MDA 框架(Mechanics, Dynamics, Aesthetics)—— 用于游戏设计的机制、动态、美学分析
- 自我决定理论(Self-Determination Theory)—— 用自主性、胜任感、归属感理解玩家动机
- 心流设计(Flow State Design)—— 通过挑战与技能的平衡提升玩家投入
- 巴特尔玩家类型(Bartle Player Types)—— 受众定位与验证
- 验证驱动开发(Verification-Driven Development)—— 先测试,再实现
自定义#
这是一个模板,不是锁死的框架。一切都可以自定义:
- 增删智能体 —— 删除不需要的智能体文件,为你的领域添加新文件
- 编辑智能体提示词 —— 调整智能体行为,添加项目特定知识
- 修改技能 —— 调整工作流以匹配你团队的流程
- 添加规则 —— 为你的项目目录结构创建新的路径作用域规则
- 调整钩子 —— 调节校验严格度,添加新检查
- 选择引擎 —— 使用 Godot、Unity 或 Unreal 智能体组合(也可以都不用)
- 调节流程重量 ——
project.yaml中的modes.rigor及其底层旋钮(见配置)。在任何技能上用--review solo按次覆盖。
平台支持#
主要开发环境是 Windows 10 搭配 Git Bash。钩子和脚本也在 macOS 上测试过——使用其自带的 bash 3.2 和 BSD 工具,分别在有和没有 jq 的情况下——也在 Linux 上测试过。所有钩子都使用 POSIX 兼容模式(grep -E,而不是 grep -P),并为缺失的工具提供回退。notify.sh 钩子使用 PowerShell 发送 Windows 通知,在其他平台上是空操作——macOS/Linux 的桌面通知尚未接通。请为任何平台特定的故障提交 issue。
社区#
- 讨论(Discussions)—— 用 GitHub Discussions 提问、交流想法、展示你的作品
- 问题(Issues)—— 缺陷报告和功能请求
支持本项目#
Claude Code 游戏工作室是免费开源的。如果它为你节省了时间或帮助你发布了游戏,可以考虑支持它的持续开发:
- Buy Me a Coffee —— 一次性支持
- GitHub Sponsors —— 通过 GitHub 的定期支持
赞助帮助资助维护技能、添加新智能体、跟进 Claude Code 和引擎 API 变化,以及回应社区问题所花的时间。
为 Claude Code 而构建。持续维护和扩展——欢迎通过 GitHub Discussions 贡献。
许可证#
MIT 许可证。详情见 LICENSE。