awesome-gamedev-agent-skillsSAFE
74 game-dev skills for AI coding agents — Godot, Unity, Unreal, Phaser, PixiJS, three.js, Bevy, pygame, LÖVE, Roblox. Portable SKILL.md Agent Skills (the format Anthropic launched as Claude Skills), with a router that loads the right skill for your engine and task. Runs in Claude Code, Cursor, Kiro,
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
<img src="docs/assets/awesome-gamedev-agent-skills-banner.png" width="820" alt="awesome-gamedev-agent-skills — game-dev skills for AI coding agents. 76 skills and a router across 12 engines, including an art-direction and asset-production workflow.">
76 game-dev skills for your AI coding agent — install once, and a router loads the right skill for whatever you're building.
[](LICENSE) [](skills/) [](docs/SKILL-FORMAT.md) [](https://github.com/gamedev-skills/awesome-gamedev-agent-skills/commits/main)
Agent Skills are small capability files an AI agent loads only when it needs them. This repo gives your agent 76 game-dev skills and a router that picks the right ones for you. You describe what you're building; the agent loads the matching engine and task skills before it writes code.
- Cross-engine. Godot, Unity, Unreal, Ebitengine, Phaser, PixiJS, three.js, Bevy, pygame, LÖVE, Defold, Roblox.
- You don't pick skills. The router detects your engine and task and loads only what fits.
- Art direction, not one-off generations. The asset workflow locks a visual target, builds
families, normalizes outputs deterministically, and checks them inside the game.
- Built to trust. Every skill is written from primary docs, version-pinned to a stated
engine release, and checked by a validator. Current baselines and upgrade policy live in version support.
Contents
- Quick start
- What you can ask
- [How the r
1ebbf8f974afOBSERVED · 2026-10-23Install
Commands as the repository documents them. They are shown, not run.
npx skills add gamedev-skills/awesome-gamedev-agent-skills
claude plugin install gamedev@awesome-gamedev-agent-skills
claude plugin install router@awesome-gamedev-agent-skills
claude plugin install godot@awesome-gamedev-agent-skills # or: unity · unreal · ebitengine · web-engines · other-engines
npx skills add gamedev-skills/awesome-gamedev-agent-skills
npx skills add gamedev-skills/awesome-gamedev-agent-skills
Host compatibility
What the documentation claims. We have not run a compatibility test.
| Host | Status | Notes |
|---|---|---|
| claude-code | mentioned | |
| codex | mentioned | |
| copilot | mentioned | |
| cursor | mentioned | |
| gemini-cli | mentioned | |
| windsurf | mentioned |
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
---
name: router
description: >
Routes any game-development request to the right specialized skill(s): it detects the engine
(Godot, Unity, Unreal, Ebitengine, Bevy, Phaser, PixiJS, three.js, Defold, LÖVE, pygame, Roblox) and the task, then
reads the chosen skill before acting. Use to make a game or to decide which skill applies — for
players, levels, enemies, shaders, art direction, sprites, tiles, textures, 3D assets, UI/UX,
cameras, game feel, physics, input, audio, saving, multiplayer, AI, dialogue, procedural
generation, or performance, for genres (platformer,
roguelike, RPG, FPS, tower-defense, card game, visual novel, survival-crafting, puzzle), and for
shipping (game jam, Steam, itch). Start here
when unsure which gamedev skill to use.
---
# Master Router — Game-Development Skill Dispatcher
The entry point for game-development work. It fingerprints the project to pick **one** engine,
classifies the task from the request, names the **minimal** set of specialized skills, and tells
you to read them before acting. It **dispatches and composes** — it does not re-teach engine APIs.
## When to use
- Use at the **start of any game-development request** — building or debugging a game, level,
player, enemy, shader, UI, save system, multiplayer, input, audio, AI, dialogue, procedural
content, or visual asset set — to decide which skill(s) to load.
- Use when the user names an engine or genre, says "make a game", or asks "which skill should I
use?".
**When *not* to use:** once the right skill is loaded and the task is squarely inside it, work
from that skill — don't re-run the router every turn. Re-route only when the task **pivots** to a
new engine or concern (router step 6).
## Routing algorithm
1. **Detect engine and version** — project fingerprint → at most one engine skill set (or
"unknown"), then read the project's version source. §1.
2. **Classify task** — phrasing → discipline(s) + at most one genre + workflow(s). §2.
3. **Resolve** — the minimal set: engine skill(s) + discipline(s) + genre + workflow(s). §3.
4. **Read (disclosure)** — open only the chosen `SKILL.md` bodies; `references/` only on demand. §4.
5. **Compose** — order: engine fundamentals → discipline concept → genre glue → workflow. §5.
6. **Fallback** — engine unknown or no skill fits → ask or default to Godot; state any gap. §6.
---
## 1. Engine detection (project fingerprint)
Scan for the highest-confidence signal; **choose exactly one** engine. Stop at the first match.
| # | Engine | Primary signal | Skill set root |
|:-:|--------|----------------|----------------|
| 1 | Godot | `project.godot` | `skills/godot/` |
| 2 | Unreal | `*.uproject` | `skills/unreal/` |
| 3 | Unity | `Assets/` **and** `ProjectSettings/ProjectVersion.txt` | `skills/unity/` |
| 4 | Ebitengine | `go.mod` requiring `github.com/hajimehoshi/ebiten/v2` | `skills/ebitengine/` |
| 5 | Bevy | `Cargo.toml` with a `bevy` dependency | `skills/other-engines/bevy-ecs/` |
| 6 | Phaser | `package.json` dep `phaser` | `skills/web-engines/phaser-*` |
| 7 | PixiJS | `package.json` dep `pixi.js` | `skills/web-engines/pixijs-rendering/` |
| 8 | three.js | `package.json` dep `three` | `skills/web-engines/threejs-*` |
| 9 | Defold | `game.project` | `skills/other-engines/defold-core/` |
| 10 | LÖVE | `conf.lua` / `main.lua` calling `love.*` | `skills/other-engines/love2d-core/` |
| 11 | pygame | `*.py` with `import pygame` | `skills/other-engines/pygame-core/` |
| 12 | Roblox | `*.rbxl(x)` / `*.project.json` (Rojo) | `skills/other-engines/roblox-*` |
For secondary signals, the Godot-C#/Unity/Bevy, Defold/LÖVE/Lua and multi-web disambiguation
rules, monorepos, and plain-text engine mentions, read `references/engine-detection.md`.
After identifying the engine, read its version from project metadata or dependency locks before
choosing APIs. Existing projects keep their pinned version unless migration is requested; the
catalog baseline is only for new projects. The exact version sources are in the detection reference
and `../docs/VERSION-SUPPORT.md`.
## 2. Task classification (phrasing → category)
After the engine, read the request for task signals (three **additive** categories):
- **disciplines** (cross-engine concepts): `create-game-assets`, `game-ai`, `ai-behavior-trees-utility-ai`, `procedural-gen`, `dialogue-systems`,
`save-systems`, `audio-design`, `shader-programming`, `physics-tuning`, `level-design`,
`input-systems`, `game-feel`, `camera-systems`, `game-ui-ux`, `performance-optimization`.
Triggered by concept words ("sprite sheet", "art direction", "texture", "pathfinding",
"save slots", "fragment shader", "screen shake", "camera follow", "HUD/menu",
"optimize/low FPS").
- **genres** (whole-game templates): `platformer`, `roguelike`, `rpg`, `fps-shooter`,
`tower-defense`, `card-game`, `visual-novel`, `survival-crafting`, `puzzle`. Triggered by genre
words ("make a roguelike", "deckbuilder").
- **workflows** (process/shipping): `game-jam`, `prototype-fast`, `steam-publish`,
`itch-publish`. Triggered by process words ("publish on Steam", "vertical slice").
File signals sharpen this: `*.yarn`/`*.ink` → `dialogue-systems`/`visual-novel`; `steam_appid.txt`
→ `steam-publish`; `*.inputactions` → `unity-input-system`.
## 3. Routing table (task → category → skill)
### 3a. Engine skills — read the one matching the detected engine + sub-task
- **Godot** (`skills/godot/`): language `godot-gdscript` / `godot-csharp`; structure
`godot-nodes-scenes`, `godot-signals-groups`; 2D `godot-2d-movement`, `godot-tilemap`; 3D
`godot-3d-essentials`; physics `godot-physics`; UI `godot-ui-control`; animation
`godot-animation`; shaders `godot-shaders`; data `godot-resources`; audio `godot-audio`;
netcode `godot-multiplayer`; headless CLI tests `godot-gdscript-headless-testing`; ship
`godot-export`.
- **Unity** (`skills/unity/`): scripting `unity-csharp-scripting`; input `unity-input-system`;
physics `unity-physiTrust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (3 observation(s))
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (5)
prefix = hashlib.sha1(url.encode("utf-8")).hexdigest() + "-"archive = lib / f"{hashlib.sha1(url.encode()).hexdigest()}-ImV0YWci.zip"f'<a href="../../{slug2}/">{html.escape(CATEGORIES[slug2][0])}</a>'Pillow
docs/assets/awesome-gamedev-agent-skills-banner.png
Gates applied: no_behavioural_pass.
1ebbf8f974affull audit observations/trust-audit/skill/gamedev-skills__awesome-gamedev-agent-skills.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-23 | 1ebbf8f974af | SAFE | B | 89 | first audit |
Questions
What does the awesome-gamedev-agent-skills skill do?
74 game-dev skills for AI coding agents — Godot, Unity, Unreal, Phaser, PixiJS, three.js, Bevy, pygame, LÖVE, Roblox. Portable SKILL.md Agent Skills (the format Anthropic launched as Claude Skills), with a router that loads the right skill for your engine and task. Runs in Claude Code, Cursor, Kiro,
Is awesome-gamedev-agent-skills safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can awesome-gamedev-agent-skills access on my machine?
The audit observed that it reads or writes files. Each of those is consistent with what it says it does. Secrets in the source: none found.
Which assistants does awesome-gamedev-agent-skills work with?
Its documentation mentions claude-code, codex, copilot, cursor, gemini-cli and windsurf. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (1ebbf8f974af), read on 2026-10-23. The repository is watched, and a new audit runs when it changes — this is the first audit.
Add this badge to your README
Shows this page's audit result and links back to it. It updates when the audit does.
[](https://modelsatlas.com/skills/gamedev-skills/awesome-gamedev-agent-skills/)
Not your listing, or something out of date? Claim or update your listing.