ai-behavior-trees-util…
Engine-neutral behavior tree and utility AI code for NPCs in any language: Blackboard, reactive composites, decorators and…
Exports Godot 4.7 projects: templates, export_presets.cfg for desktop, Web and Android, command-line exports and web COOP/COEP headers. Use on "No export template found", a blank web build, a SharedArrayBuffer error or files missing after export. Not for tests in CI
Claude Code
$ npx -y skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export --agent claude-code
Codex
$ npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export -a codex -y
Cursor
$ npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export -a cursor -y
Gemini CLI
$ npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export -a gemini-cli -y
GitHub Copilot
$ npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export -a github-copilot -y
OpenCode
$ npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export -a opencode -y
Windsurf
$ npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill godot-export -a windsurf -y
name: godot-export description: > Exports Godot 4.7 projects: templates, export_presets.cfg for desktop, Web and Android, command-line exports and web COOP/COEP headers. Use on "No export template found", a blank web build, a SharedArrayBuffer error or files missing after export. Not for tests in CI (`godot-gdscript-headless-testing`), store uploads (`steam-publish`, `itch-publish`) or netcode (`godot-multiplayer`).
Turn a project into builds from export presets on the command line, then prove the build runs. Targets **Godot 4.7**; export templates must match the editor version exactly, so read `config/features` in `project.godot` and the CI's Godot version first.
1. **Read `export_presets.cfg`.** Each `[preset.N]` has a `name` (what the CLI wants), a `platform` and an `export_path`. If the file is missing, create presets in *Project > Export* or ask the user to; avoid hand-writing a full preset from nothing. 2. **Install matching templates** (*Editor > Manage Export Templates*, or unpack the `.tpz` so its files land in the folder the error message names, for example `~/.local/share/godot/export_templates/4.7.2.stable/` on Linux). `--export-pack` needs none. 3. **Export from the CLI**, from the project folder, into a folder that already exists: `godot --headless --export-release "<preset name>" build/<platform>/<file>`. 4. **Per platform:** Web needs COOP/COEP headers only when the preset's *Thread Support* is on (off by default); Android needs SDK paths and a keystore; macOS needs signing and notarization to pass Gatekeeper. 5. **Verify before you finish:**
failure (missing template, unknown preset, unwritable path); the reason is in the log.
then `godot --headless --main-pack build/game.pck --quit-after 300 > run.log 2>&1` and `grep -nE "SCRIPT ERROR|^ERROR:" run.log`. This catches files the preset's filters left out and `res://` writes, because it loads only what was packed.
`./build/linux/game.x86_64 --headless --quit-after 300`.
to launch the build on the device and report whether it starts, saves and loads.
mkdir -p build/windows build/linux build/web # Godot will not create the folder godot --headless --export-release "Windows Desktop" build/windows/game.exe godot --headless --export-release "Linux" build/linux/game.x86_64 godot --headless --export-release "Web" build/web/index.html godot --headless --export-debug "Windows Desktop" build/windows/game_debug.exe godot --headless --export-pack "Linux" build/game.pck # .zip for a ZIP pack godot --headless --export-patch "Linux" build/patch1.pck --patches build/game.pck
func _ready() -> void:
if OS.has_feature("dedicated_server") or DisplayServer.get_name() == "headless":
start_server_only() # skip rendering and UI
if OS.has_feature("web"):
apply_web_settings()
if OS.has_feature("demo"): # a custom tag set in one preset's Features
limit_content()const SAVE_PATH := "user://savegame.tres" # res:// is read-only inside a .pck
func _ready() -> void:
print(OS.get_user_data_dir()) # where user:// lives on this platformversion (including beta/rc). Install the exact version; 4.7 can download one platform's templates instead of the full set.
then lists the presets it found. Quote the name.
not exported unless listed in the preset's *Filters to export non-resource files* (`include_filter="*.json"`). Resources excluded by `exclude_filter` vanish too.
`user://`.
does not send `Cross-Origin-Opener-Policy: same-origin` and `Cross-Origin-Embedder-Policy: require-corp`. Turn threads off, enable the host's option (itch.io has one), or use the PWA option that adds the headers. `file://` never works.
`.godot/export_credentials.cfg`, not `export_presets.cfg`. Keep `.godot/` ignored and supply secrets in CI through environment variables or a restored file.
ship `--export-release`.
flag, feature tags, web, Android and Apple setup, PCK patches and DLC, and why PCK encryption needs custom templates.
<img src="docs/assets/awesome-gamedev-agent-skills-banner.png" width="820" alt="awesome-gamedev-agent-skills — game-dev skills for AI coding agents.
Engine-neutral behavior tree and utility AI code for NPCs in any language: Blackboard, reactive composites, decorators and…
Engine-neutral game audio technique: bus layout, volume sliders in decibels, loudness, ducking music under dialogue, adaptive…
Builds and tunes game cameras, engine-neutral with Godot and Cinemachine 3 mappings: 2D follow with deadzone and look-ahead,…
Plans, generates or sources, and validates consistent game art: style guides, sprites, pixel art, tilesets, icons and textures,…
Builds engine-neutral branching dialogue with Ink, Yarn Spinner or a small JSON graph runner: lines, choices, conditions,…
Designs engine-neutral enemy and NPC AI: picks FSM, behavior tree, utility or GOAP, and builds perception, steering and A*…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.