| name | claude-code-game-studios |
| description | Turn Claude Code into a full game dev studio with 49 specialized AI agents, 73 workflow skills, and complete coordination system |
| triggers | ["set up game development studio agents","configure multi-agent game dev workflow","use Claude Code Game Studios","install game dev agent hierarchy","create game with specialized AI agents","set up studio coordination system","use game development workflow skills","configure game dev QA and production pipeline"] |
Claude Code Game Studios
Skill by ara.so — Claude Code Skills collection.
What It Does
Claude Code Game Studios transforms a single Claude Code session into a complete game development studio with:
- 49 specialized agents organized in a 3-tier studio hierarchy (Directors → Department Leads → Specialists)
- 73 slash commands covering brainstorming, design, architecture, implementation, QA, and release
- 12 automated hooks for validation, session tracking, and quality gates
- 11 path-scoped rules enforcing coding standards per domain (gameplay, engine, AI, UI, network)
- 41 document templates for GDDs, ADRs, sprint plans, accessibility specs, and more
Instead of one general-purpose AI assistant, you get a coordinated team with clear responsibilities, escalation paths, and quality gates — while you stay in full control of every decision.
Installation
Prerequisites
npm install -g @anthropic-ai/claude-code
brew install jq
python3 --version
Setup New Project
git clone https://github.com/Donchitos/Claude-Code-Game-Studios.git my-game-project
cd my-game-project
claude
/start
Add to Existing Project
cd your-existing-game
git clone https://github.com/Donchitos/Claude-Code-Game-Studios.git .ccgs-temp
cp -r .ccgs-temp/.claude .
cp .ccgs-temp/CLAUDE.md .
rm -rf .ccgs-temp
claude
/adopt
Studio Hierarchy
Agents are organized in three tiers matching real studio structure:
Tier 1 — Directors (Opus Model)
creative-director:
technical-director:
producer:
Tier 2 — Department Leads (Sonnet Model)
game-designer:
lead-programmer:
art-director:
audio-director:
narrative-director:
qa-lead:
release-manager:
localization-lead:
Tier 3 — Specialists (Sonnet/Haiku Model)
gameplay-programmer, engine-programmer, ai-programmer,
network-programmer, tools-programmer, ui-programmer
systems-designer, level-designer, economy-designer,
live-ops-designer, ux-designer
technical-artist, sound-designer
qa-tester, accessibility-specialist, performance-analyst,
devops-engineer, analytics-engineer, security-engineer,
community-manager
writer, world-builder, prototyper
Engine Specialists
godot-specialist:
- gdscript-programmer
- shader-programmer
- gdextension-programmer
unity-specialist:
- dots-ecs-programmer
- shader-vfx-programmer
- addressables-programmer
- uitoolkit-programmer
unreal-specialist:
- gas-programmer
- blueprint-programmer
- replication-programmer
- umg-commonui-programmer
Core Workflow Commands
Phase 1: Onboarding & Setup
/start
/help
/project-stage-detect
/setup-engine godot 4.6
/adopt
Phase 2: Game Design
/brainstorm
/map-systems
/design-system combat
/quick-design
/review-all-gdds
/propagate-design-change
Example: Design a combat system
/design-system combat
Phase 3: Architecture
/create-architecture
/architecture-decision
/architecture-review
/create-control-manifest
Example: Architecture Decision Record
/architecture-decision
Phase 4: Implementation
/create-epics
/create-stories combat
/dev-story GAME-123
/story-done GAME-123
/sprint-plan
/sprint-status
Example: Implement a story
/dev-story GAME-45
Phase 5: Quality & Review
/code-review src/combat/
/design-review combat
/balance-check
/perf-profile
/tech-debt
/security-audit
/consistency-check
Phase 6: Testing
/qa-plan
/smoke-check
/soak-test
/regression-suite
/test-setup
/test-helpers
/test-evidence-review
Example: QA workflow
/story-done GAME-45
Phase 7: Release
/release-checklist
/launch-checklist
/changelog
/patch-notes
/hotfix
/day-one-patch
Team Coordination Commands
For features requiring multiple departments:
/team-combat
/team-narrative
/team-ui
/team-release
/team-polish
/team-level
/team-live-ops
/team-qa
Example: Multi-agent feature
/team-combat
Project Structure
my-game/
├── CLAUDE.md # Master config (agent registry)
├── .claude/
│ ├── settings.json # Hooks, permissions, safety rules
│ ├── agents/ # 49 agent definitions
│ │ ├── creative-director.md
│ │ ├── gameplay-programmer.md
│ │ └── ...
│ ├── skills/ # 73 slash commands
│ │ ├── start/
│ │ │ ├── SKILL.md
│ │ │ └── metadata.json
│ │ └── ...
│ ├── hooks/ # 12 automation hooks
│ │ ├── validate-commit.sh
│ │ ├── session-start.sh
│ │ └── ...
│ ├── rules/ # 11 coding standards
│ │ ├── gameplay-code.md
│ │ ├── engine-code.md
│ │ └── ...
│ └── docs/
│ ├── workflow-catalog.yaml
│ └── templates/ # 41 doc templates
├── src/ # Game source code
├── assets/ # Art, audio, data
├── design/ # GDDs, narrative docs
├── docs/ # ADRs, technical docs
├── tests/ # Test suites
├── production/ # Sprint plans, stories
└── prototypes/ # Isolated experiments
Configuration
Engine Selection
Edit CLAUDE.md to activate your engine's specialists:
## Active Specialists
### Godot 4
- godot-specialist (tier-2-lead)
- gdscript-programmer
- shader-programmer
- gdextension-programmer
<!-- Disable unused engines:
### Unity
- unity-specialist (tier-2-lead)
...
-->
Hook Configuration
Edit .claude/settings.json:
{
"hooks": {
"session.open": [".claude/hooks/session-start.sh"],
"session.close": [".claude/hooks/session-stop.sh"],
"preToolUse": {
"Bash": [
".claude/hooks/validate-commit.sh",
".claude/hooks/validate-push.sh"
]
},
"postToolUse": {
"WriteFile": [".claude/hooks/validate-assets.sh"],
"EditFile": [".claude/hooks/validate-skill-change.sh"]
}
}
}
Permission Rules
{
"permissions": {
"allowed_commands": [
"git status",
"git log",
"pytest tests/",
"npm test"
],
"blocked_paths": [
".env",
"secrets/",
"production/credentials/"
]
}
}
Common Patterns
Start New Game from Scratch
/start
/brainstorm
/map-systems
/design-system [system-name]
/create-architecture
/setup-engine godot 4.6
/create-epics
/create-stories [epic-name]
/sprint-plan
Import Existing Project
/adopt
/reverse-document src/combat/
/architecture-review
Daily Development Loop
/sprint-status
/dev-story GAME-67
/story-done GAME-67
/code-review src/inventory/
Pre-Release Workflow
/gate-check alpha
/regression-suite
/perf-profile
/release-checklist alpha
/changelog
/patch-notes
Real Code Examples
Godot 4 Combat System (GDScript)
# Generated by /dev-story GAME-12 (gameplay-programmer)
# Design: design/systems/combat.md
# ADR: docs/adr/0003-combat-state-machine.md
class_name CombatController
extends Node
## Combat state machine following design/systems/combat.md
## Manages turn order, damage resolution, status effects
signal turn_started(combatant: Combatant)
signal turn_ended(combatant: Combatant)
signal combat_ended(victor: Team)
enum CombatState { SETUP, PLAYER_TURN, ENEMY_TURN, RESOLUTION, ENDED }
@export var turn_time_limit: float = 30.0 # From combat.md: 30s turn timer
@export var damage_formula: DamageFormula # Injected, see ADR-0003
var _state: CombatState = CombatState.SETUP
var _turn_queue: Array[Combatant] = []
var _active_combatant: Combatant
func _ready() -> void:
assert(damage_formula != null, "DamageFormula required")
_initialize_turn_queue()
func execute_action(action: CombatAction) -> void:
# Validates action legality (design constraint: one action per turn)
assert(action.actor == _active_combatant, "Not active combatant's turn")
var result := damage_formula.calculate(action)
_apply_damage(result)
_check_status_effects()
_end_turn()
Unity DOTS Combat (C#)
using Unity.Entities;
using Unity.Mathematics;
using Unity.Collections;
[UpdateInGroup(typeof(SimulationSystemGroup))]
public partial struct CombatResolutionSystem : ISystem
{
public void OnUpdate(ref SystemState state)
{
var ecb = new EntityCommandBuffer(Allocator.TempJob);
foreach (var (action, entity) in
SystemAPI.Query<RefRO<CombatAction>>()
.WithEntityAccess())
{
var damage = CalculateDamage(
action.ValueRO.AttackerPower,
action.ValueRO.DefenderArmor,
action.ValueRO.CriticalChance
);
ecb.SetComponent(action.ValueRO.Target, new Health
{
Current = math.max(0, GetHealth(action.ValueRO.Target) - damage)
});
ecb.DestroyEntity(entity);
}
ecb.Playback(state.EntityManager);
ecb.Dispose();
}
private float CalculateDamage(float power, float armor, float critChance)
{
baseDamage = power * ( / ( + armor));
isCrit = UnityEngine.Random. < critChance;
baseDamage * (isCrit ? : );
}
}
Unreal Engine 5 GAS Ability (C++)
#pragma once
#include "CoreMinimal.h"
#include "Abilities/GameplayAbility.h"
#include "MeleeAttackAbility.generated.h"
UCLASS()
class MYGAME_API UMeleeAttackAbility : public UGameplayAbility
{
GENERATED_BODY()
public:
UMeleeAttackAbility();
virtual void ActivateAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo,
const FGameplayEventData* TriggerEventData
) override;
protected:
UPROPERTY(EditDefaultsOnly, Category = "Combat")
float BaseDamage = 10.0f;
UPROPERTY(EditDefaultsOnly, Category = "Combat")
float AttackRange = 200.0f;
(EditDefaultsOnly, Category = )
TSubclassOf<UGameplayEffect> DamageEffectClass;
:
;
;
};
Troubleshooting
Hooks Not Running
ls -l .claude/hooks/
chmod +x .claude/hooks/*.sh
.claude/hooks/validate-commit.sh
Agent Not Found
ls .claude/agents/ | grep gameplay-programmer
grep "gameplay-programmer" CLAUDE.md
Skill Fails to Load
cat .claude/skills/dev-story/metadata.json | jq .
python3 -m json.tool .claude/skills/dev-story/metadata.json
/skill-test dev-story
/skill-improve dev-story
Validation Errors on Commit
git commit -m "Add combat system"
git commit -m "Add combat system"
Context Limit Warnings
claude compact
/sprint-plan
Engine Specialist Not Available
<!--
- godot-specialist
-->
- godot-specialist (tier-2-lead)
- gdscript-programmer
- shader-programmer
Support & Community
License
MIT License — see LICENSE file for details.