Indie game development managed through 48 coordinated Claude Code subagents. Each agent owns a specific domain, enforcing separation of concerns and quality.
- Engine: Godot 4.3
- Language: GDScript (primary), C++ via GDExtension (performance-critical)
- Version Control: Git with trunk-based development
- Build System: SCons (engine), Godot Export Templates
- Asset Pipeline: Godot Import System + custom resource pipeline
Note: Engine-specialist agents exist for Godot, Unity, and Unreal with dedicated sub-specialists. Use the set matching your engine.
@.claude/docs/directory-structure.md
@.claude/docs/engine-reference/godot/VERSION.md
@.claude/docs/technical-preferences.md
@.claude/docs/coordination-rules.md
@.claude/docs/coding-standards.md
@.claude/docs/context-management.md
@.claude/skills/gdscript-patterns/SKILL.md
Load this before writing any GDScript. Contains type inference rules, known Godot 4 quirks, collision layer bitmask table, and common runtime pitfalls.
@.claude/skills/godot-scene-builder/SKILL.md
Load when building
.tscnfiles programmatically, running headless validation, or capturing screenshots on Windows via--write-movie.
@.claude/skills/asset-gen/SKILL.md
Load when generating sprites, textures, backgrounds, or reference art. Uses Imagen 3 for text-to-image and Gemini Flash for image editing/variants. Includes background removal via
rembg.
- Always end every response with a "## Suggested Next Steps" section containing actionable prompts/things the user can ask to continue progressing on their game.
- Always run full test suite and auto capture test after each code change. Verify the screenshots by viewing all images. Only report task completion to the user after all tests have passed successfully. Ensure structural and behavioral integrity through rigorous validation before finality.
- Transparency is mandatory regarding incomplete data migration or pending content. Never claim a task is complete if there is content missing or data pending, even if the code architecture is finished. Playability and data completeness are as important as structural code integrity.
- On Windows, always use 'godot_console.exe' with the '--headless' flag for CLI tasks and automated testing. The standard 'godot.exe' detaches from the terminal and does not stream output/logs back to the console, making it unsuitable for remote agent diagnostics.
- All shell commands on this Windows machine are executed via PowerShell. When constructing commands (e.g. for Godot CLI), ensure syntax is PowerShell-compliant (e.g. using $env:VARIABLE instead of %VARIABLE%).
- CRITICAL: NEVER use destructive Git commands (like 'git checkout --orphan', 'git rm -rf .', or forcing branch switches) for local deployments. This wipes untracked and ignored files (like .claude/, .env, and local assets) from the disk. ALWAYS use GitHub Actions or isolated worktrees for deployment tasks to protect the user's workspace. Failure to do so causes catastrophic data loss.
- Godot binary:
godot - GUT tests:
godot --headless -s addons/gut/gut_cmdln.gd -gdir=res://tests/ -gprefix=test_ -gexit 2>&1 - If doesn't work then
& "C:\Users\Grace\AppData\Local\Godot_v4.3\godot.exe" --headless -s addons/gut/gut_cmdln.gd -gdir=res://tests/ -gprefix=test_ -gexit 2>&1(last resort) - ALWAYS try
godotbefore using& "C:\Users\Grace\AppData\Local\Godot_v4.3\godot.exe" - Android exports that invoke the Gradle build must run on Java 17. Java 21 fails with
Invalid Java version 21. Version 17 is the required Java version for Godot gradle builds. - On this machine, set
$env:JAVA_HOME = 'C:\Program Files\Microsoft\jdk-17.0.18.8-hotspot'and prepend$env:JAVA_HOME\binto$env:Pathbefore running Android export orandroid/build/gradlew.bat. - If a CLI Android rebuild needs the signed fallback path, run
android/build_signed_debug.ps1from the repo root instead of callinggradlew assembleDebugdirectly.
tools/playtest_capture.gdexists as a dev capture helper, but it is not currently registered inproject.godotas an autoload. Add it temporarily when a session needs gameplay-event screenshots or scripted captures, then remove it again.- Screenshot output path (Windows):
C:\Users\Grace\AppData\Roaming\Godot\app_userdata\NekoDash\playtest_screenshots\ src/ui/web_capture_router.gdis the only always-registered capture-related autoload. It ships with current exports because it is inproject.godot, applies the Web viewport fix on HTML5 builds, and only routes capture flows when the build has the custom featuredev_captureand the URL includescapture_ui=1.- UI regression screenshot gate (required after UI edits): run
godot --path . --script tools/ui_snapshot_capture.gd 2>&1, then inspectuser://playtest_screenshots/ui_verify/options_current.png,pause_current.png, andlevel_complete_current.pngbefore marking the task complete. - On Windows headless runs,
tools/ui_snapshot_capture.gdcan fail to produce images with the dummy renderer. When that happens, usetools/web_ui_snapshot_capture.ps1against a servedWeb Dev Captureexport and inspect those PNGs instead. - Recommended playtest loop:
- Launch scene with
mcp_godot_run_project(res://scenes/gameplay/gameplay.tscn) - Read runtime logs via
mcp_godot_get_debug_output - Open produced screenshots via
view_image - Stop process via
mcp_godot_stop_project
- Launch scene with
- For end-to-end scripted movement tests, use
tools/playtest_runner.gdas temporary autoloadPlaytestRunner. - Remove any temporary playtest autoloads from
project.godotafter the run unless persistent auto-playtesting is intentionally desired. - Current export audit: see
docs/export-capture-audit.md. Fresh May 10 Windows/Web/Android rebuilds exclude the dev-only capture, test, and editor tooling; useWeb Dev Capturewhen browser-driven capture routing is required. Android packaging is verified again, but it depends on running the export under Java 17.