Communitygithub.com

gamedev-skills/awesome-gamedev-agent-skills

ゲーム開発AIエージェントスキル集:一度インストールすれば、マスタールーターがエンジンとタスクに応じて適切なスキルを読み込みます。Godot、Unity、Unreal、Webなどに対応した66のオリジナル、バージョン固定スキル(+マスタールーター)を、Claude Code、Cursor、Codex、Copilot、Gemini CLIなどで動作するポータブルなSKILL.md形式で提供します。

awesome-gamedev-agent-skills とは?

このスキルは、ゲーム開発のあらゆるタスクに対応するAIエージェント用の統合ディスパッチャーです。プロジェクトのフィンガープリントからエンジン(Godot、Unity、Unreal、Bevy、Phaser、PixiJS、three.js、LÖVE、pygame、Roblox)を自動検出し、リクエストの内容から必要な専門スキル(AI、プロシージャル生成、セーブシステム、シェーダーなど)を分類・解決します。さらに、ジャンル固有のテンプレート(プラットフォーマー、ローグライク、RPGなど)やワークフロー(ゲームジャム、Steam公開など)も組み合わせ可能です。これにより、開発者は複雑なゲーム制作の各局面において、エンジン固有のAPIやベストプラクティスを即座に参照でき、コーディングエージェントが正確で効率的なコードを生成できるようになります。Claude Code、Cursor、Codex、Copilot、Gemini CLIなど、主要なAIコーディングエージェントで動作するポータブルなSKILL.md形式を採用しており、インストール後はマスタールーターが自動的に適切なスキルを選択・読み込みます。

対応✓Claude Code✓Codex CLI✓Cursor✓Gemini CLI
npx skills add gamedev-skills/awesome-gamedev-agent-skills

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

マスタールーター — ゲーム開発スキルディスパッチャー

ゲーム開発作業のエントリーポイント。プロジェクトのフィンガープリントから1つのエンジンを特定し、リクエストからタスクを分類し、最小限の専門スキルセットを特定し、それらを読んでから行動するよう指示します。ディスパッチとコンポジションを行います — エンジンAPIを再教育はしません。

使用するタイミング

  • ゲーム開発リクエストの開始時に使用 — ゲーム、レベル、プレイヤー、敵、シェーダー、UI、セーブシステム、マルチプレイヤー、入力、オーディオ、AI、ダイアログ、プロシージャルコンテンツの構築またはデバッグ — どのスキルを読み込むかを決定するため。
  • ユーザーがエンジンやジャンルを指定したとき、「ゲームを作る」と言ったとき、または「どのスキルを使えばいいですか?」と尋ねたときに使用します。

使用すべきでないタイミング: 適切なスキルが読み込まれ、タスクがその範囲内に完全に収まっている場合、そのスキルから作業を進め、毎ターンルーターを再実行しないでください。タスクが新しいエンジンや関心事にピボットする場合のみ、再ルーティングしてください(ルーターのステップ6)。

ルーティングアルゴリズム

  1. エンジン検出 — プロジェクトフィンガープリント → 最大1つのエンジンスキルセット(または「不明」)。§1。
  2. タスク分類 — フレーズ → 分野 + 最大1つのジャンル + ワークフロー。§2。
  3. 解決 — 最小限のセット:エンジンスキル + 分野 + ジャンル + ワークフロー。§3。
  4. 読み取り(段階的開示) — 選択されたSKILL.mdのボディのみを開く;references/は要求があった場合のみ。§4。
  5. コンポーズ — 順序:エンジン基礎 → 分野概念 → ジャングルー → ワークフロー。§5。
  6. フォールバック — エンジン不明または該当スキルがない場合 → 質問するかGodotをデフォルトに;ギャップを明示。§6。

1. エンジン検出(プロジェクトフィンガープリント)

最も信頼性の高いシグナルをスキャンし、厳密に1つのエンジンを選択します。最初の一致で停止します。

#エンジンプライマリシグナルスキルセットルート
1Godotproject.godotskills/godot/
2Unreal*.uprojectskills/unreal/
3UnityAssets/ および ProjectSettings/ProjectVersion.txtskills/unity/
4Bevybevy依存関係のあるCargo.tomlskills/other-engines/bevy-ecs/
5Phaserpackage.jsonの依存関係phaserskills/web-engines/phaser-*
6PixiJSpackage.jsonの依存関係pixi.jsskills/web-engines/pixijs-rendering/
7three.jspackage.jsonの依存関係threeskills/web-engines/threejs-*
8LÖVEconf.lua / main.luaがlove.*を呼び出しているskills/other-engines/love2d-core/
9pygame*.pyがimport pygameを含むskills/other-engines/pygame-core/
10Roblox*.rbxl(x) / *.project.json (Rojo)skills/other-engines/roblox-*

二次シグナル、Godot-C#/Unity/BevyおよびマルチWebの曖昧性解消ルール、モノレポ、プレーンテキストのエンジン言及については、references/engine-detection.mdを参照してください。

2. タスク分類(フレーズ → カテゴリ)

エンジン検出後、リクエストからタスクシグナルを読み取ります(3つの加算カテゴリ):

  • 分野(エンジン横断的な概念):game-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。概念ワード(「経路探索」、「セーブスロット」、「フラグメントシェーダー」、「画面振動」、「カメラ追従」、 「HUD/メニュー」、「最適化/低FPS」)によってトリガーされます。
  • ジャンル(ゲーム全体のテンプレート):platformer、roguelike、rpg、fps-shooter、tower-defense、card-game、visual-novel、survival-crafting、puzzle。ジャンルワード(「ローグライクを作る」、「デッキ構築」)によってトリガーされます。
  • ワークフロー(プロセス/リリース):game-jam、prototype-fast、steam-publish、itch-publish。プロセスワード(「Steamで公開」、「バーティカルスライス」)によってトリガーされます。

ファイルシグナルによりさらに精度が向上します:*.yarn/*.ink → dialogue-systems/visual-novel;steam_appid.txt → steam-publish;*.inputactions → unity-input-system。

3. ルーティングテーブル(タスク → カテゴリ → スキル)

3a. エンジンスキル — 検出されたエンジン + サブタスクに一致するものを読み取る

  • Godot (skills/godot/):言語 godot-gdscript / godot-csharp;構造 godot-nodes-scenes、godot-signals-groups;2D godot-2d-movement、godot-tilemap;3D godot-3d-essentials;物理 godot-physics;UI godot-ui-control;アニメーション godot-animation;シェーダー godot-shaders;データ godot-resources;オーディオ godot-audio;ネットコード godot-multiplayer;出荷 godot-export。
  • Unity (skills/unity/):スクリプティング unity-csharp-scripting;入力 unity-input-system;物理 unity-physics;アニメーション unity-animation;データ unity-scriptableobjects;2D unity-tilemap-2d;AIナビ unity-navmesh;出荷 unity-build-pipeline。
  • Unreal (skills/unreal/):ビジュアルスクリプティング unreal-blueprints;C++ゲームプレイ unreal-cpp-gameplay;入力 unreal-enhanced-input;AI unreal-behavior-trees;VFX unreal-niagara;出荷 unreal-packaging。
  • Web (skills/web-engines/):phaser-core、phaser-arcade-physics;pixijs-rendering;threejs-scene-setup、threejs-gltf-loading、threejs-materials-lighting。
  • その他 (skills/other-engines/):bevy-ecs、pygame-core、love2d-core、roblox-luau、roblox-datastores。

3b. 分野 — エンジンスキルと一緒に読み込む(概念 ↔ エンジンAPI)

概念(発言)分野スキルペアになるもの(エンジンAPI)
敵AI、ビヘイビアツリー、経路探索、ステアリングgame-aiunity-navmesh / unreal-behavior-trees / Godot Nav
プロシージャル、ノイズ、シード、ダンジョン生成procedural-genエンジンのタイルマップ/グリッドスキル
ダイアログ、Yarn、Ink、会話ツリーdialogue-systemsエンジンのUIスキル
セーブ/ロード、スロット、永続化save-systemsroblox-datastores / エンジンIO
適応音楽、ミキサー、ダッキング、SFXaudio-designgodot-audio / Unity AudioMixer
シェーダー、フラグメント、ディゾルブ/アウトラインshader-programminggodot-shaders / エンジンマテリアル
ジッター、トンネリング、固定タイムステップphysics-tuninggodot-physics / unity-physics
ホワイトボックス、ブロックアウト、タイルレイアウト、ペーシングlevel-designgodot-tilemap / unity-tilemap-2d
リバウンド、ゲームパッド、入力バッファリングinput-systemsunity-input-system / unreal-enhanced-input / Godot InputMap
画面振動、ヒットストップ、ジャス、押しつぶし&伸ばし、「パンチを効かせる」game-feelエンジンアニメーション/Tween + camera-systems(振動)
カメラ追従、デッドゾーン、先読み、オービット、一人称camera-systemsgodot-2d-movement / godot-3d-essentials / Cinemachine
HUD、メニュー、UIレイアウト、スケーリング、セーフエリア、フォーカスナビgame-ui-uxgodot-ui-control / Unity UI (UGUI/UI Toolkit)
低FPS、最適化、ドローコール、GCスパイク、プーリング、プロファイラーperformance-optimizationエンジンプロファイラー + physics-tuning

3c. ジャンル — エンジン + 分野をコンポーズする(*を検出されたエンジンにバインド)

ジャンル(発言)コンポーズ内容
プラットフォーマー、ジャンプ、ダブルジャンプgodot-2d-movement(またはエンジン物理) + godot-tilemap/unity-tilemap-2d + level-design + camera-systems + game-feel
ローグライク、プロシージャルダンジョン、パーマデスprocedural-gen + godot-tilemap/unity-tilemap-2d + game-ai + save-systems + game-feel
RPG、ステータス、インベントリ、クエストgodot-resources/unity-scriptableobjects + dialogue-systems + save-systems + game-ui-ux
FPS、一人称、ヒットスキャンgodot-3d-essentials/unreal-cpp-gameplay + input-systems + game-ai + camera-systems + game-feel
タワーディフェンス、ウェーブ、レーンgame-ai + エンジン移動 + level-design + game-ui-ux
カードゲーム、デッキ構築、TCGgodot-resources/unity-scriptableobjects + game-ui-ux(+ エンジンUI)
ビジュアルノベル、分岐ストーリーdialogue-systems + save-systems + game-ui-ux
サバイバル、クラフティング、採取save-systems + godot-resources/unity-scriptableobjects + procedural-gen + game-ui-ux
パズル、マッチ3、グリッドロジックgodot-tilemap/unity-tilemap-2d + level-design + game-feel

3d. ワークフロー — エンジンに依存しないプロセスとリリース

game-jam(ジャム、48時間、Ludum Dare/GMTK)· prototype-fast(バーティカルスライス、MVP、グレーボックス)· steam-publish(Steam、Steamworks、デポ;steam_appid.txt)· itch-publish(itch.io、butler;.itch.toml)。

スキルごとの完全なトリガーリストとすべてのエンジンバインディングについては、references/routing-table.mdを参照してください。

4. 読み取りプロトコル(段階的開示)

  1. プリロード済み: 各スキルのname + descriptionのみがコンテキストにあります。これらとフィンガープリントから判断してください — ボディを事前に読み取らないでください。
  2. 選択時: 選択された各 skills/<category>/<name>/SKILL.md のボディを読み取ってください — そしてそれらのみ。カテゴリ全体を一括読み込みしないでください。
  3. 要求時: スキルのバンドルされたreferences/ファイルは、サブタスクがその深さを必要とする場合にのみ読み取ってください(スキルボディがそのタイミングを指定します)。
  4. ピボット時に再ルーティング: タスクが変更された場合(移動 → セーブ)、新しい関連スキルを選択して読み取り、すべてを読み込んだままにしないでください。

何を、なぜ読み込んだのかを宣言してください。例:「Godotを検出しました(project.godot)。コントローラー用にgodot-2d-movement、ジャンプ感覚用にplatformerを読み込みます。必要であれば、プラットフォーマースキルのfeel-tuning.mdリファレンスを開いて、コヨーテタイム/バッファリングについて確認できます。」

5. コンポジションルール

  • 1つのエンジンセット、加算的概念。 厳密に1つのエンジンスキルセット;タスクに必要な分野を追加し、通常は最大1つのジャンル。ワークフローは独立してアタッチします。
  • 順序: エンジン基礎 → 分野概念 → ジャンルオーケストレーション → ワークフロー。
  • 重複時の所有権: エンジンスキルがAPI/構文を所有;分野スキルがポータブルな概念/アルゴリズムを所有し、コードについてはエンジンスキルに委譲;ジャンルスキルが構造/グルーを所有し、プリミティブを再教育する代わりに外部リンクします。
  • ハンドオフ: ジャンルのcomposesが*-2d-movementのようなスロットを指定する場合、検出されたエンジンにバインドします。そのエンジンに正確なスキルがない場合は、§6およびreferences/routing-table.md(「バインディングギャップ」)を参照してください。

6. 不明エンジン&スキルなしの場合のフォールバック

エンジン不明(フィンガープリントなし、エンジン名の指定なし):

  1. リクエスト内のプレーンテキストのエンジン名を確認します(「Unityで」、「Phaserを使って」)。見つかった場合はそれを採用します。
  2. タスクが純粋な概念/ジャンル/ワークフローの質問である場合、エンジンに依存しない分野/ジャンル/ワークフロースキルに直接ルーティングします — エンジンは不要です(「良いセーブ形式は何?」 → save-systems)。
  3. エンジンの選択が実際に回答を妨げる場合にのみ、1つのターゲットを絞った質問をします(「どのエンジン — Godot、Unity、Unreal、またはWeb/その他のエンジン?」)。ユーザーに好みがなく、必要である場合、Godotをデフォルトにし(ここで最もカバレッジの高いエンジン)、その旨を伝えます。
  4. エンジンを推測したり、推測でエンジンスキルを読み込んだりしないでください。

エンジンは既知だが、サブタスクをカバーするスキルがない場合: 最も近いエンジンスキルと関連分野を読み込み、ギャップを明確に述べてください(例:「専用のUnity 2D移動スキルはありません。unity-csharp-scripting + unity-physicsを使用します」)。スキル名をでっち上げないでください。

複数ジャンルの競合: フレーズから支配的なジャンルを選択します。二次的なジャンルに言及し、ユーザーが確認した場合に読み込むことを提案します。

使用例

リクエスト検出されたエンジン読み込まれたスキル(順序通り)
「Godotのプレイヤーにダブルジャンプを追加して」Godot (project.godot)godot-2d-movement → platformer
「Unity RPGのインベントリを作って」Unity (Assets/+ProjectSettings/)unity-scriptableobjects → rpg → save-systems
「Godotでプロシージャルダンジョンのローグライク」Godotgodot-tilemap → procedural-gen → roguelike
「.yarnファイルからの分岐ダイアログ」(不要)dialogue-systems(+ エンジンが検出された場合はエンジンUIスキル)
「マイグレーション付きのセーブスロットを設計するには?」(なし)save-systemsのみ
「butlerでゲームをitchに公開する」(任意/なし)itch-publishのみ
「ゲームを作りたいけど何を使えばいいかわからない」不明 → 質問、デフォルトGodotルーターが一度質問;その後、例:godot-nodes-scenes
「Godotゲームのヒットをパンチィにしたい」Godot (project.godot)game-feel(+ 振動用camera-systems)
「カメラがプレイヤーをスムーズに追従するようにしたい」(検出されたエンジン)camera-systems(+ エンジン移動スキル)
「Unityゲームが30FPSに落ちる、最適化して」Unity (Assets/+ProjectSettings/)performance-optimization(最初にプロファイリング) → エンジンスキル

参考文献

  • 完全なエンジンフィンガープリント、二次シグナル、曖昧性解消:references/engine-detection.md。
  • スキルごとの完全なトリガーワード、エンジンバインディング、バインディングギャップ:references/routing-table.md。

関連スキル