From 56a50ab257a5e83580ff5435d735b69b0cf19a1e Mon Sep 17 00:00:00 2001 From: Ziyi Zhang Date: Wed, 16 Sep 2026 13:01:28 -0400 Subject: [PATCH 1/7] fix: quote four skill descriptions that break YAML frontmatter, add a CI check --- .github/workflows/validate-skills.yml | 24 +++++++++ scripts/check-skill-frontmatter.mjs | 54 +++++++++++++++++++ skills/physics-3d-collision/SKILL.md | 9 +++- .../SKILL.md | 9 +++- skills/ui-imgui/SKILL.md | 8 ++- skills/ui/SKILL.md | 10 +++- 6 files changed, 110 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/validate-skills.yml create mode 100644 scripts/check-skill-frontmatter.mjs diff --git a/.github/workflows/validate-skills.yml b/.github/workflows/validate-skills.yml new file mode 100644 index 0000000..d5dad1c --- /dev/null +++ b/.github/workflows/validate-skills.yml @@ -0,0 +1,24 @@ +name: Validate skills + +on: + pull_request: + paths: + - 'skills/**' + - 'scripts/check-skill-frontmatter.mjs' + - '.github/workflows/validate-skills.yml' + push: + branches: [main] + paths: + - 'skills/**' + +jobs: + frontmatter: + name: SKILL.md frontmatter + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + - run: npm install --no-save --no-audit --no-fund js-yaml@4 + - run: node scripts/check-skill-frontmatter.mjs skills diff --git a/scripts/check-skill-frontmatter.mjs b/scripts/check-skill-frontmatter.mjs new file mode 100644 index 0000000..e30dcba --- /dev/null +++ b/scripts/check-skill-frontmatter.mjs @@ -0,0 +1,54 @@ +#!/usr/bin/env node +// Fails when any skills/*/SKILL.md has frontmatter that a strict YAML parser rejects, +// or that lacks a non-empty `name` matching its folder or a non-empty `description`. +// Agents parse the frontmatter with a real YAML parser and silently drop a skill that +// fails, so this is the only place the defect becomes visible. +import { readdirSync, readFileSync, existsSync } from 'node:fs'; +import { join } from 'node:path'; +import yaml from 'js-yaml'; + +const root = process.argv[2] ?? 'skills'; +let checked = 0; +const failures = []; + +for (const dir of readdirSync(root, { withFileTypes: true })) { + if (!dir.isDirectory()) continue; + const path = join(root, dir.name, 'SKILL.md'); + if (!existsSync(path)) { + failures.push(`${path}: missing`); + continue; + } + const text = readFileSync(path, 'utf8'); + const match = text.match(/^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/); + if (!match) { + failures.push(`${path}: no YAML frontmatter block`); + continue; + } + let data; + try { + data = yaml.load(match[1]); + } catch (error) { + failures.push(`${path}: frontmatter is not valid YAML: ${error.message.split('\n')[0]}`); + continue; + } + if (typeof data !== 'object' || data === null) { + failures.push(`${path}: frontmatter is not a mapping`); + continue; + } + if (typeof data.name !== 'string' || data.name.trim() === '') { + failures.push(`${path}: missing or empty name`); + } else if (data.name !== dir.name) { + failures.push(`${path}: name "${data.name}" does not match folder "${dir.name}"`); + } + if (typeof data.description !== 'string' || data.description.trim() === '') { + failures.push(`${path}: missing or empty description`); + } + checked += 1; +} + +if (failures.length > 0) { + console.error(`${failures.length} problem(s) in ${checked} skill(s):`); + for (const failure of failures) console.error(` ${failure}`); + process.exit(1); +} +console.log(`${checked} skills: frontmatter OK`); diff --git a/skills/physics-3d-collision/SKILL.md b/skills/physics-3d-collision/SKILL.md index 826ff45..cf3ca90 100644 --- a/skills/physics-3d-collision/SKILL.md +++ b/skills/physics-3d-collision/SKILL.md @@ -1,6 +1,13 @@ --- name: physics-3d-collision -description: 3D PhysX collision and trigger diagnostics for MonoBehaviour-based Unity projects. Primary scope: OnCollisionEnter / OnTriggerEnter not firing, objects passing through each other, Physics.Raycast missing, ragdoll explosion, AddForce stops working after settling, MeshCollider rules, and similar 3D PhysX symptoms. Adjacent topics (2D physics, OTS / Unity Physics package): provides a brief best-effort answer with a scope disclaimer and a documentation link, rather than refusing outright. When dedicated specialist skills (physics-2d, physics-dots) are installed, those should handle their respective domains and this skill defers to them. +description: >- + 3D PhysX collision and trigger diagnostics for MonoBehaviour-based Unity projects. Primary scope: + OnCollisionEnter / OnTriggerEnter not firing, objects passing through each other, Physics.Raycast + missing, ragdoll explosion, AddForce stops working after settling, MeshCollider rules, and similar + 3D PhysX symptoms. Adjacent topics (2D physics, OTS / Unity Physics package): provides a brief + best-effort answer with a scope disclaimer and a documentation link, rather than refusing + outright. When dedicated specialist skills (physics-2d, physics-dots) are installed, those should + handle their respective domains and this skill defers to them. --- # Skill: physics-3d-collision (PhysX MonoBehaviour) diff --git a/skills/tilemap-ruletile-createfromsegment/SKILL.md b/skills/tilemap-ruletile-createfromsegment/SKILL.md index 2938e05..a8821c4 100644 --- a/skills/tilemap-ruletile-createfromsegment/SKILL.md +++ b/skills/tilemap-ruletile-createfromsegment/SKILL.md @@ -1,6 +1,13 @@ --- name: tilemap-ruletile-createfromsegment -description: Use when the user wants tiles that auto-tile (autotile) as they paint, wants a RuleTile built from existing terrain or edge sprites, or asks to make sprites "tile correctly" or "connect properly". Also converts sprite-segment-3x3grid output patterns into Unity RuleTile TilingRules: 3x3 grid text patterns (X, ., *) become TilingRule neighbor configurations, mapping '.' to 'This' rules and 'X' to 'DontCare', sorted by specificity (more 'This' rules first). Use when creating RuleTiles from sprite analysis or defining tile neighbor rules programmatically. Sprites must be provided as input. +description: >- + Use when the user wants tiles that auto-tile (autotile) as they paint, wants a RuleTile built from + existing terrain or edge sprites, or asks to make sprites "tile correctly" or "connect properly". + Also converts sprite-segment-3x3grid output patterns into Unity RuleTile TilingRules: 3x3 grid + text patterns (X, ., *) become TilingRule neighbor configurations, mapping '.' to 'This' rules and + 'X' to 'DontCare', sorted by specificity (more 'This' rules first). Use when creating RuleTiles + from sprite analysis or defining tile neighbor rules programmatically. Sprites must be provided as + input. required_packages: com.unity.2d.tilemap: ">=1.0.0" com.unity.2d.tilemap.extras: ">=4.0.0" diff --git a/skills/ui-imgui/SKILL.md b/skills/ui-imgui/SKILL.md index 6999e28..e32c593 100644 --- a/skills/ui-imgui/SKILL.md +++ b/skills/ui-imgui/SKILL.md @@ -1,6 +1,12 @@ --- name: ui-imgui -description: Unity IMGUI (Immediate Mode GUI) expert for legacy editor tools using OnGUI/immediate mode. Generates and modifies IMGUI EditorWindows, custom Inspectors, PropertyDrawers, and scripts with IMGUI code (OnGUI, OnInspectorGUI). Use when maintaining existing IMGUI editor code or when user explicitly requests IMGUI/OnGUI. Do not use for NEW editor windows or tools: new editor UI defaults to UI Toolkit (ui-uitk) unless the project already uses IMGUI exclusively or the user asks for OnGUI by name. +description: >- + Unity IMGUI (Immediate Mode GUI) expert for legacy editor tools using OnGUI/immediate mode. + Generates and modifies IMGUI EditorWindows, custom Inspectors, PropertyDrawers, and scripts with + IMGUI code (OnGUI, OnInspectorGUI). Use when maintaining existing IMGUI editor code or when user + explicitly requests IMGUI/OnGUI. Do not use for NEW editor windows or tools: new editor UI + defaults to UI Toolkit (ui-uitk) unless the project already uses IMGUI exclusively or the user + asks for OnGUI by name. --- **Before proceeding:** If the user is asking about creating a **new** editor window, custom inspector, or PropertyDrawer without explicitly mentioning IMGUI/OnGUI, recommend using UI Toolkit (CreateGUI) instead, as it's the modern approach. Only proceed with IMGUI if: diff --git a/skills/ui/SKILL.md b/skills/ui/SKILL.md index 6e857e4..5a099b9 100644 --- a/skills/ui/SKILL.md +++ b/skills/ui/SKILL.md @@ -1,6 +1,14 @@ --- name: ui -description: Unity UI expert for menus, HUDs, screens, panels, buttons, labels, and all visual interface elements. Handles questions about UI in scenes or prefabs (how many elements, what exists, structure analysis), styling changes (colors, borders, backgrounds, fonts, spacing, rounded corners), layout adjustments, and UI generation. Routes to UI Toolkit, uGUI, or IMGUI based on project context. Use for ANY request to build, edit, or understand game UI (menus, HUDs, settings or pause screens) when no framework is named: consult this skill to detect which UI system the project uses before writing any UI code, even for a request that looks simple enough to build directly. +description: >- + Unity UI expert for menus, HUDs, screens, panels, buttons, labels, and all visual interface + elements. Handles questions about UI in scenes or prefabs (how many elements, what exists, + structure analysis), styling changes (colors, borders, backgrounds, fonts, spacing, rounded + corners), layout adjustments, and UI generation. Routes to UI Toolkit, uGUI, or IMGUI based on + project context. Use for ANY request to build, edit, or understand game UI (menus, HUDs, settings + or pause screens) when no framework is named: consult this skill to detect which UI system the + project uses before writing any UI code, even for a request that looks simple enough to build + directly. --- Determine the appropriate UI system for the project and route to the correct specialized skill. From d96324239aabb351f823c9374b6dc0ecb45496ff Mon Sep 17 00:00:00 2001 From: "jonathan.meaney" Date: Thu, 17 Sep 2026 16:34:43 -0400 Subject: [PATCH 2/7] Shortened descriptions to better adhere to Codex character limits --- skills/build-live-game/SKILL.md | 2 +- skills/generate-editor-search-query/SKILL.md | 2 +- skills/implement-in-app-purchases/SKILL.md | 2 +- skills/levelplay-unity-integration/SKILL.md | 2 +- skills/new-unity-project/SKILL.md | 2 +- skills/optimize-text-mesh-pro/SKILL.md | 17 +++++++---------- skills/physics-3d-collision/SKILL.md | 12 +++++------- skills/setup-vivox-voice-chat/SKILL.md | 2 +- skills/ui/SKILL.md | 13 +++++-------- skills/unity-cli/SKILL.md | 2 +- 10 files changed, 24 insertions(+), 32 deletions(-) diff --git a/skills/build-live-game/SKILL.md b/skills/build-live-game/SKILL.md index a92807b..9ed6560 100644 --- a/skills/build-live-game/SKILL.md +++ b/skills/build-live-game/SKILL.md @@ -1,6 +1,6 @@ --- name: build-live-game -description: Build and operate a live game using Unity Services. Use when the user needs to implement, connect, or debug backend-driven features — battle passes, achievements, player progression, cloud saves, leaderboards, matchmaking, virtual economies, server-authoritative logic, anti-cheat, player accounts and authentication, remote configuration, feature flags, A/B testing, analytics, or cloud resource deployment. Triggers on live-ops, live service, backend, server authority, cloud code, cloud save, remote config, player data, retention, monetization loop, season pass, ranking, multiplayer sessions, lobbies, or any Unity Services integration. +description: Builds and operates live games using Unity Services. Use this skill when the user asks about backend-driven or live-ops features — player accounts and authentication, cloud saves, leaderboards, matchmaking, lobbies, achievements, player progression, battle or season passes, virtual economies, server-authoritative logic, cloud code, anti-cheat, remote config, feature flags, A/B testing, analytics, or cloud resource deployment — even if they don't mention Unity Services. --- # Build a Live Game With Unity Gaming Services diff --git a/skills/generate-editor-search-query/SKILL.md b/skills/generate-editor-search-query/SKILL.md index f3b34c6..433ecce 100644 --- a/skills/generate-editor-search-query/SKILL.md +++ b/skills/generate-editor-search-query/SKILL.md @@ -1,6 +1,6 @@ --- name: generate-editor-search-query -description: Generates Unity Search / Quick Search queries and opens the Unity Search window for read-only Unity Editor asset or scene-object lookup requests. Always use when the user asks to find, search, show, locate, filter, look up, query, or list concrete assets or scene objects in the current project or scene, even if Unity Search is not named. Covers materials, textures, prefabs, scenes, scripts, shaders, GameObjects, components, Lights, Cameras, UI objects, labels, paths, references, selected or named assets, and asset types. Also use when the user explicitly mentions Unity Search, Quick Search, Search window, open Search, or asks what Unity Search query to use. Do not use for general project overview, project structure, folder-purpose summaries, gameplay/system explanations, how-to programming questions, web search, repository text search, build logs, package installation, menu or settings search, modifying results, or non-Unity filesystem search unless the user explicitly asks to use Unity Search. +description: Generates Unity Search (Quick Search) queries and opens the Search window for read-only asset or scene-object lookups in the Editor. Use this skill, even if the user doesn't mention Unity Search, when asked to find, filter, or list assets or scene objects, such as materials, prefabs, scripts, GameObjects, components, or references. Don't use this skill for repository or filesystem searches, web searches, project overviews, or how-to programming questions. enabled: true modes: [agent, ask] --- diff --git a/skills/implement-in-app-purchases/SKILL.md b/skills/implement-in-app-purchases/SKILL.md index 96cce31..ca16e73 100644 --- a/skills/implement-in-app-purchases/SKILL.md +++ b/skills/implement-in-app-purchases/SKILL.md @@ -1,6 +1,6 @@ --- name: implement-in-app-purchases -description: Implement, configure, and debug Unity In-App Purchases (IAP) — store connection, product catalog, consumable/non-consumable/subscription purchases, two-step pending-confirm flow, receipt validation, entitlement checking, restore transactions, Apple extensions (promotional purchases, Ask-to-Buy, code redemption), and Google Play extensions (subscription upgrade/downgrade), D2C Capabilities(direct to customer), 3rd party payment provider (Stripe/Coda) via Unity IAP/Unity Cloud. Use when the user needs to add, modify, debug, or migrate from native Android/iOS billing, 3rd party packages(RevenueCat/Adapty/Essential Kit/Unipay supported) to IAP. Triggers on microtransactions (MTX), monetization, real-money purchases, store purchases, buying items, support D2C, purchase via Stripe/Coda, migrate from native billing(Google's BillingClient or Apple's StoreKit/SKPaymentQueue/SKProduct)/RevenueCat/Adapty/EssentialKit/Unipay. +description: Implements, configures, and debugs Unity In-App Purchases (IAP), covering store connection, product catalogs, consumable, non-consumable, and subscription purchases, receipt validation, entitlements, restore transactions, and Apple and Google Play store extensions. Use this skill when the user asks about real-money purchases, microtransactions (MTX), or store monetization, even if they don't mention Unity IAP. Also use it for direct-to-customer (D2C) purchases via Stripe or Coda, and migrations from native billing (StoreKit, Google BillingClient) or third-party plugins such as RevenueCat, Adapty, Essential Kit, or Unipay. --- # Unity In-App Purchasing diff --git a/skills/levelplay-unity-integration/SKILL.md b/skills/levelplay-unity-integration/SKILL.md index cd9fa1e..0d77864 100644 --- a/skills/levelplay-unity-integration/SKILL.md +++ b/skills/levelplay-unity-integration/SKILL.md @@ -1,6 +1,6 @@ --- name: levelplay-unity-integration -description: Integrates the LevelPlay Mediation SDK via the Ads Mediation UPM package. Use when a developer asks about adding ads to a Unity game, implementing rewarded, interstitial, or banner ads, setting up ad mediation, configuring ad networks, installing or updating the Ads Mediation package, troubleshooting LevelPlay namespace errors, resolving Android gradle or iOS CocoaPods dependency issues for ads, configuring ATT or privacy settings for ad compliance, tracking impression-level revenue (ILRD), initializing the LevelPlay SDK, or setting up ad unit IDs. Also use when a developer wants to monetize their Unity game with ads, asks how to get started with LevelPlay, ads, or mediation, or needs help with any part of the LevelPlay integration workflow including platform-specific setup for iOS or Android. Also use when upgrading the LevelPlay or IronSource SDK version, migrating from deprecated IronSource.Agent APIs, or migrating a game from Unity Ads to LevelPlay. +description: Integrates the LevelPlay Mediation SDK via the Ads Mediation package. Use this skill when the user asks about adding or monetizing with ads (rewarded, interstitial, or banner) even if they don't mention LevelPlay. Use it for ad network and mediation setup, ATT and privacy configuration, impression-level revenue (ILRD), SDK initialization and ad unit IDs, Android Gradle or iOS CocoaPods dependency issues for ads, and migrations from Unity Ads, manging the Ads Mediation package, fixing LevelPlay namespace errors, deprecated IronSource.Agent APIs, or older LevelPlay SDK versions. --- # LevelPlay Unity package/SDK Integration diff --git a/skills/new-unity-project/SKILL.md b/skills/new-unity-project/SKILL.md index 2ae0959..9d53374 100644 --- a/skills/new-unity-project/SKILL.md +++ b/skills/new-unity-project/SKILL.md @@ -1,6 +1,6 @@ --- name: new-unity-project -description: Use when starting a brand-new Unity game or project from scratch — "make/start/create a new game", "bootstrap a Unity project", "I want to build a [genre] game", "scaffold/prototype a game", game jam, greenfield, blank project, project setup. A guided flow that gathers the concept, target platforms, and monetization, installs the Editor in the background while it asks, then creates the project and source control and installs packages — delegating the mechanics to the unity-cli and unity-package-management skills and handing off monetization to the dedicated skills. Does not scaffold gameplay code. +description: Guides the creation of a brand-new Unity game or project from scratch, gathering the concept, target platforms, and monetization before creating the project, source control, and packages. Use this skill when the user asks to start, make, or bootstrap a new game or Unity project, including prototypes, game jams, and blank projects. Doesn't scaffold gameplay code. allowed-tools: - Bash - Read diff --git a/skills/optimize-text-mesh-pro/SKILL.md b/skills/optimize-text-mesh-pro/SKILL.md index f57a703..e1ab19e 100644 --- a/skills/optimize-text-mesh-pro/SKILL.md +++ b/skills/optimize-text-mesh-pro/SKILL.md @@ -1,16 +1,13 @@ --- name: optimize-text-mesh-pro description: > - Covers TextMeshPro font stacks, dynamic fallback atlases, padding and - sampling ratios, SDF16, AutoSize discipline, worldspace vs UGUI, and Memory - Profiler font-data capture. Use when the user mentions TextMeshPro, - Text Mesh Pro, TMP (TextMeshPro), font asset, dynamic atlas, TMP localization, - CJK (Chinese, Japanese, Korean) fonts, font alignment across - scripts, mixed western and eastern fonts, text rendering performance, profiler - markers related to text generation or glyph rasterization, font fallback - strategy, font normalization, multilingual or localized text rendering, SDF - font quality, or text-related memory issues—not for UI Toolkit layout - (unity-ui-toolkit) or non-TMP uGUI (unity-ui). + Optimizes TextMeshPro (TMP) rendering, memory, and font setup: font asset + stacks, dynamic fallback atlases, padding and sampling ratios, SDF quality, + AutoSize discipline, and Memory Profiler font-data capture. Use + this skill when the user asks about TMP font assets, font fallbacks, CJK or + multilingual text rendering, text performance or memory issues, worldspace vs UGUI, or profiler + markers for text generation and glyph rasterization. Not for UI Toolkit + layout (ui-uitk) or non-TMP uGUI (ui-ugui). --- # Optimize TextMeshPro diff --git a/skills/physics-3d-collision/SKILL.md b/skills/physics-3d-collision/SKILL.md index cf3ca90..137ff68 100644 --- a/skills/physics-3d-collision/SKILL.md +++ b/skills/physics-3d-collision/SKILL.md @@ -1,13 +1,11 @@ --- name: physics-3d-collision description: >- - 3D PhysX collision and trigger diagnostics for MonoBehaviour-based Unity projects. Primary scope: - OnCollisionEnter / OnTriggerEnter not firing, objects passing through each other, Physics.Raycast - missing, ragdoll explosion, AddForce stops working after settling, MeshCollider rules, and similar - 3D PhysX symptoms. Adjacent topics (2D physics, OTS / Unity Physics package): provides a brief - best-effort answer with a scope disclaimer and a documentation link, rather than refusing - outright. When dedicated specialist skills (physics-2d, physics-dots) are installed, those should - handle their respective domains and this skill defers to them. + Diagnoses 3D PhysX collision and trigger problems in MonoBehaviour-based Unity projects. Use this + skill when the user asks why OnCollisionEnter or OnTriggerEnter doesn't fire, + objects pass through each other, Physics.Raycast misses, ragdolls explode, AddForce stops working + after objects settle, or a MeshCollider misbehaves. For 2D physics or the DOTS Unity Physics + package, dedicated skills (physics-2d, physics-dots) take precedence when installed. --- # Skill: physics-3d-collision (PhysX MonoBehaviour) diff --git a/skills/setup-vivox-voice-chat/SKILL.md b/skills/setup-vivox-voice-chat/SKILL.md index bc128a2..db993a5 100644 --- a/skills/setup-vivox-voice-chat/SKILL.md +++ b/skills/setup-vivox-voice-chat/SKILL.md @@ -1,6 +1,6 @@ --- name: setup-vivox-voice-chat -description: Add and configure in-game voice chat and text chat for Unity multiplayer games using Unity Vivox. Covers microphone setup and mic permissions on Android/iOS, voice activity detection (VAD) tuning, voice volume and mute controls in a settings UI (VoiceVadMinimumVolume, mic slider, mute button, speaking indicator), proximity/3D spatial voice for FPS/co-op games, team/party/lobby/guild voice channels, push-to-talk, muting self and other players, whisper/direct messages, in-game text chat, and Vivox SDK init + Unity Authentication sign-in. Use when the user asks to add voice chat, voice comms, microphone/mic support, a voice-chat settings UI, mute button, VAD threshold, push-to-talk, proximity or spatial voice, team voice, party chat, lobby chat, direct messages, or mentions Vivox, VivoxService, com.unity.services.vivox, JoinGroupChannelAsync, JoinPositionalChannelAsync, LoginAsync, or migrating from legacy Vivox (Client.Instance / LoginSession / AccountId). +description: Adds and configures in-game voice chat and text chat for Unity multiplayer games using Unity Vivox. Use this skill when the user asks about voice chat or comms, microphone setup and permissions, mute and volume controls, voice activity detection (VAD), push-to-talk, proximity or 3D spatial voice, team, party, or lobby voice channels, direct messages, or in-game text chat, even if they don't mention Vivox. Use it when the user mentions VivoxService, com.unity.services.vivox, or migrating from the legacy Vivox client APIs. required_packages: com.unity.services.vivox: ">=16.4.0" --- diff --git a/skills/ui/SKILL.md b/skills/ui/SKILL.md index 5a099b9..c8f179d 100644 --- a/skills/ui/SKILL.md +++ b/skills/ui/SKILL.md @@ -1,14 +1,11 @@ --- name: ui description: >- - Unity UI expert for menus, HUDs, screens, panels, buttons, labels, and all visual interface - elements. Handles questions about UI in scenes or prefabs (how many elements, what exists, - structure analysis), styling changes (colors, borders, backgrounds, fonts, spacing, rounded - corners), layout adjustments, and UI generation. Routes to UI Toolkit, uGUI, or IMGUI based on - project context. Use for ANY request to build, edit, or understand game UI (menus, HUDs, settings - or pause screens) when no framework is named: consult this skill to detect which UI system the - project uses before writing any UI code, even for a request that looks simple enough to build - directly. + Builds, edits, and explains game UI (menus, HUDs, screens, panels, and other visual interface + elements) routing to UI Toolkit, uGUI, or IMGUI based on project context. Use this + skill for any UI request that doesn't name a framework, including questions about existing UI + structure, styling and layout changes, and new UI generation, so the project's UI system is + detected before any UI code is written. --- Determine the appropriate UI system for the project and route to the correct specialized skill. diff --git a/skills/unity-cli/SKILL.md b/skills/unity-cli/SKILL.md index 355a95c..e58ba9a 100644 --- a/skills/unity-cli/SKILL.md +++ b/skills/unity-cli/SKILL.md @@ -1,6 +1,6 @@ --- name: unity-cli -description: Use when interacting with Unity CLI from the terminal, or to control a running/connected Unity Editor from the command line — create or modify GameObjects, edit scenes and assets, inspect the hierarchy, and run C# in a live Editor instead of hand-editing scene or asset files. Also install, upgrade or uninstall editors, create, list or open projects, manage modules, manage licenses, check auth status, read logs, browse Unity releases, build/test projects, configure the Unity MCP server for AI agents, or run any other Unity CLI operation. For a guided idea-to-running-project flow for a brand-new game, use the new-unity-project skill instead. +description: Controls the Unity Editor from the command line via the Unity CLI, creating or modifying GameObjects, editing scenes and assets, inspecting the hierarchy, and running C# in a live Editor instead of manually editing scene files. Use this skill when the user asks to install or manage Unity Editors, manage projects, manage licenses or modules, read logs, browse releases, build or test projects, configure the Unity MCP server, or run any other Unity CLI operation. For a guided flow for a brand-new game, use the new-unity-project skill instead. allowed-tools: - Bash --- From 56c27cb2421a04be979dd452fafeef35ae03cd5a Mon Sep 17 00:00:00 2001 From: "jonathan.meaney" Date: Thu, 17 Sep 2026 16:57:24 -0400 Subject: [PATCH 3/7] Shortened descriptions to better adhere to Codex character limits --- skills/audio-setup-mixers/SKILL.md | 2 +- skills/initialize-ai-navigation/SKILL.md | 2 +- skills/localization/SKILL.md | 2 +- skills/manage-sprite-atlas/SKILL.md | 2 +- skills/migrate-birp-to-urp/SKILL.md | 2 +- skills/optimize-audio/SKILL.md | 2 +- skills/optimize-web/SKILL.md | 2 +- skills/setup-multiplayer-services/SKILL.md | 10 +++++----- skills/sprite-editor/SKILL.md | 2 +- skills/sprite-segment-3x3grid/SKILL.md | 2 +- skills/tilemap-ruletile-createempty/SKILL.md | 2 +- skills/tilemap-ruletile-createfromsegment/SKILL.md | 12 +++++------- skills/ui-imgui/SKILL.md | 11 +++++------ skills/unity-package-management/SKILL.md | 2 +- 14 files changed, 26 insertions(+), 29 deletions(-) diff --git a/skills/audio-setup-mixers/SKILL.md b/skills/audio-setup-mixers/SKILL.md index 30c07f2..f4b636c 100644 --- a/skills/audio-setup-mixers/SKILL.md +++ b/skills/audio-setup-mixers/SKILL.md @@ -1,6 +1,6 @@ --- name: audio-setup-mixers -description: Scans the scene and audio assets to appropriately route Audio Sources into existing Audio Mixer Groups, classifying each source by what it plays. Use when the user asks about cleaning up mixer assignments, routing audio through a mixer, or which group a sound belongs in. Creating mixers and groups, and setting volumes, are not automated — the skill inventories what exists and asks the user to add anything missing. +description: Routes scene Audio Sources into existing Audio Mixer Groups, classifying each source by what it plays. Use this skill when the user asks about cleaning up mixer assignments, routing audio through a mixer, or which group a sound belongs in. Doesn't create mixers or groups or set volumes; it inventories what exists and asks the user to add anything missing. --- # Audio Mixer Setup diff --git a/skills/initialize-ai-navigation/SKILL.md b/skills/initialize-ai-navigation/SKILL.md index 537078a..4b4e521 100644 --- a/skills/initialize-ai-navigation/SKILL.md +++ b/skills/initialize-ai-navigation/SKILL.md @@ -1,6 +1,6 @@ --- name: initialize-ai-navigation -description: Sets up and configures the Unity AI Navigation system — NavMesh surfaces, NavMesh agents, obstacles, links, modifiers, areas and costs. Use when creating walkable navigation meshes, adding pathfinding agents, setting up patrol routes, configuring obstacle avoidance and carving, connecting separate NavMeshes with links, coupling navigation with animation, or troubleshooting navigation issues. +description: Sets up and configures the Unity AI Navigation system — NavMesh surfaces, agents, obstacles, links, modifiers, and area costs. Use this skill when the user asks about walkable navigation meshes, pathfinding agents, patrol routes, obstacle avoidance and carving, connecting NavMeshes with links, or troubleshooting navigation issues. --- Determine what the user needs and guide them through navigation setup. See [navigation-system.md](references/navigation-system.md) for expanded component details, API notes, code recipes, and troubleshooting. diff --git a/skills/localization/SKILL.md b/skills/localization/SKILL.md index 2b9add5..9e92de9 100644 --- a/skills/localization/SKILL.md +++ b/skills/localization/SKILL.md @@ -1,6 +1,6 @@ --- name: localization -description: "Sets up and configures Unity Localization, including locales, String/Asset Tables, CJK font support, and Addressables workflows. Use when the user wants to add languages to a project, translate UI text, support Asian (CJK) languages with TMP fonts, or mentions i18n, l10n, multilingual support, or making a game support multiple languages." +description: "Sets up and configures Unity Localization, including locales, String and Asset Tables, CJK font support, and Addressables workflows. Use this skill when the user asks to add languages to a project, translate UI text, support CJK languages with TMP fonts, or mentions i18n, l10n, or multilingual support." --- This guide covers setting up and configuring Unity Localization, including locales, String and Asset Tables, Addressables integration, and CJK font support via Asset Tables. diff --git a/skills/manage-sprite-atlas/SKILL.md b/skills/manage-sprite-atlas/SKILL.md index d9dd2ec..d8216d7 100644 --- a/skills/manage-sprite-atlas/SKILL.md +++ b/skills/manage-sprite-atlas/SKILL.md @@ -1,6 +1,6 @@ --- name: manage-sprite-atlas -description: Manage SpriteAtlas using prebuild pipeline with IPreprocessBuildWithReport (DEFAULT approach). Use it to configure master atlases, variant atlases, texture settings, packing settings, and platform-specific configurations. Use when the user asks about creating sprite atlases, optimizing sprites, configuring atlas settings, adding sprites to atlases, creating variant atlases, implementing automated atlas generation, or runtime sprite atlas access. Always use prebuild approach unless user explicitly requests manual authoring. +description: Manages SpriteAtlas assets using a prebuild pipeline with IPreprocessBuildWithReport, configuring master and variant atlases, texture and packing settings, and platform-specific overrides. Use this skill when the user asks about creating or optimizing sprite atlases, automated atlas generation, or runtime atlas access. Always use the prebuild approach unless the user explicitly requests manual authoring. --- # Unity SpriteAtlas V2 diff --git a/skills/migrate-birp-to-urp/SKILL.md b/skills/migrate-birp-to-urp/SKILL.md index 9b643ef..b8c8895 100644 --- a/skills/migrate-birp-to-urp/SKILL.md +++ b/skills/migrate-birp-to-urp/SKILL.md @@ -1,6 +1,6 @@ --- name: migrate-birp-to-urp -description: Plans, executes, and troubleshoots Unity projects moving from the Built-in Render Pipeline (BiRP/BIRP/Built-in RP) to the Universal Render Pipeline (URP). Use when the user asks to upgrade, convert, switch, or migrate a project, scene, material, or shader to URP/Universal Render Pipeline; fix pink or magenta materials after URP; convert Built-in materials/shaders; move a 2D project to URP 2D; review lighting, quality, post-processing, baked lightmaps, or reflection probes after URP; or diagnose visual problems after a render-pipeline migration. +description: Plans, executes, and troubleshoots migrations from Unity's Built-in Render Pipeline (BiRP) to the Universal Render Pipeline (URP). Use this skill when the user asks to upgrade, convert, or migrate a project, scene, material, or shader to URP, fix pink or magenta materials, review lighting, quality, or post-processing after migrating, or diagnose visual problems after a render-pipeline change. --- Classify the request, inspect the current project state, choose the correct migration path, and validate the Built-in to URP migration outcome carefully. diff --git a/skills/optimize-audio/SKILL.md b/skills/optimize-audio/SKILL.md index 8c6a5a0..95d50dd 100644 --- a/skills/optimize-audio/SKILL.md +++ b/skills/optimize-audio/SKILL.md @@ -1,6 +1,6 @@ --- name: optimize-audio -description: Optimizes Unity 6 audio memory, CPU cost, and playback quality through correct import settings and mixer configuration. Use when the user wants to reduce audio memory usage, choose the right Load Type for short clips versus music versus ambient beds, configure platform-appropriate sample rates and codecs, force 3D audio to mono, or reduce AudioMixer CPU cost from deep group trees or effects running on silent paths. +description: Optimizes Unity 6 audio memory, CPU cost, and playback quality through import settings and mixer configuration. Use this skill when the user asks to reduce audio memory usage, choose Load Types for clips versus music, configure platform-appropriate sample rates and codecs, force 3D audio to mono, or reduce AudioMixer CPU cost. --- ## Critical Rules diff --git a/skills/optimize-web/SKILL.md b/skills/optimize-web/SKILL.md index f727a03..c963772 100644 --- a/skills/optimize-web/SKILL.md +++ b/skills/optimize-web/SKILL.md @@ -1,6 +1,6 @@ --- name: optimize-web -description: Optimizes Unity 6 WebGL and WebGPU builds for smaller download size, faster initial load, and efficient browser runtime performance. Use when the user's web build is too large, stutters in a specific browser, consumes excessive battery, needs CDN/server compression configured, or needs guidance on resource stripping, shader variant reduction, KTX textures, quality settings, or web profiling. +description: Optimizes Unity 6 WebGL and WebGPU builds for smaller downloads, faster initial load, and efficient browser runtime performance. Use this skill when a web build is too large, stutters, or drains battery, or when the user asks about CDN or server compression, resource stripping, shader variant reduction, KTX textures, or web profiling. --- ## Performance Notes - Take your time to do this thoroughly. diff --git a/skills/setup-multiplayer-services/SKILL.md b/skills/setup-multiplayer-services/SKILL.md index d61d047..d3165be 100644 --- a/skills/setup-multiplayer-services/SKILL.md +++ b/skills/setup-multiplayer-services/SKILL.md @@ -1,11 +1,11 @@ --- name: setup-multiplayer-services description: >- - Guides the development of online multiplayer experiences where players connect, group, and interact in real-time using Unity Multiplayer Services. - Use when the user asks for topology choice, player grouping, hosting, matchmaking, discovery, network setup, - and session-based play (rooms, parties, lobbies) using the Unity Multiplayer Services APIs. - Not for leaderboards, cloud saves, or backend features that involve no real-time connection - between players; those belong to the build-live-game skill. + Guides the development of real-time online multiplayer experiences using Unity Multiplayer + Services. Use this skill when the user asks about topology choice, player grouping, hosting, + matchmaking, discovery, network setup, or session-based play such as rooms, parties, and lobbies. + Not for leaderboards, cloud saves, or backend features with no real-time connection between + players; those belong to the build-live-game skill. --- # Multiplayer SDK (Unity Multiplayer Services) diff --git a/skills/sprite-editor/SKILL.md b/skills/sprite-editor/SKILL.md index 1e5980d..e160dbf 100644 --- a/skills/sprite-editor/SKILL.md +++ b/skills/sprite-editor/SKILL.md @@ -1,6 +1,6 @@ --- name: sprite-editor -description: Edits Unity sprite properties by generating C# editor scripts using ISpriteEditorDataProvider APIs. Handles sprite rectangles, borders, pivots, outlines, and slicing operations (automatic, grid, isometric). Use when working with sprite assets, sprite sheets, texture atlases, or sprite slicing. +description: Edits Unity sprite properties — rectangles, borders, pivots, outlines, and slicing (automatic, grid, isometric) — by generating C# editor scripts using ISpriteEditorDataProvider APIs. Use this skill when the user works with sprite assets, sprite sheets, texture atlases, or sprite slicing. modes: [agent, ask] --- diff --git a/skills/sprite-segment-3x3grid/SKILL.md b/skills/sprite-segment-3x3grid/SKILL.md index 159f75c..0a092ab 100644 --- a/skills/sprite-segment-3x3grid/SKILL.md +++ b/skills/sprite-segment-3x3grid/SKILL.md @@ -1,6 +1,6 @@ --- name: sprite-segment-3x3grid -description: Analyze Sprite textures and output a 3x3 grid representation based on color matching. Segments a Sprite into a 3x3 grid, identifies the majority color of the center cell, and outputs a text pattern showing which cells match the center color. Use when analyzing sprite patterns, documenting sprite structure, or describing sprite color distribution. +description: Segments a Sprite texture into a 3x3 grid and outputs a text pattern showing which cells match the center cell's majority color. Use this skill when the user asks to analyze sprite patterns, document sprite structure, or describe sprite color distribution. --- # Sprite Color Grid Analysis diff --git a/skills/tilemap-ruletile-createempty/SKILL.md b/skills/tilemap-ruletile-createempty/SKILL.md index 8ff652b..fb4f62e 100644 --- a/skills/tilemap-ruletile-createempty/SKILL.md +++ b/skills/tilemap-ruletile-createempty/SKILL.md @@ -1,6 +1,6 @@ --- name: tilemap-ruletile-createempty -description: Creates an empty RuleTile asset without Sprite or Spritesheet inputs. Use ONLY when the user wants a blank RuleTile, HexagonalRuleTile, or IsometricRuleTile for custom rule configuration AND has not provided or referenced any sprites. If the user mentions existing sprites, terrain art, edge tiles, or a tiles folder, use tilemap-ruletile-createfromsegment instead, never this skill. +description: Creates an empty RuleTile, HexagonalRuleTile, or IsometricRuleTile asset without sprite inputs. Use this skill only when the user wants a blank RuleTile for custom rule configuration and hasn't provided or referenced any sprites. If the user mentions existing sprites, terrain art, or edge tiles, use tilemap-ruletile-createfromsegment instead. required_packages: com.unity.2d.tilemap: ">=1.0.0" com.unity.2d.tilemap.extras: ">=4.0.0" diff --git a/skills/tilemap-ruletile-createfromsegment/SKILL.md b/skills/tilemap-ruletile-createfromsegment/SKILL.md index a8821c4..92e2f7c 100644 --- a/skills/tilemap-ruletile-createfromsegment/SKILL.md +++ b/skills/tilemap-ruletile-createfromsegment/SKILL.md @@ -1,13 +1,11 @@ --- name: tilemap-ruletile-createfromsegment description: >- - Use when the user wants tiles that auto-tile (autotile) as they paint, wants a RuleTile built from - existing terrain or edge sprites, or asks to make sprites "tile correctly" or "connect properly". - Also converts sprite-segment-3x3grid output patterns into Unity RuleTile TilingRules: 3x3 grid - text patterns (X, ., *) become TilingRule neighbor configurations, mapping '.' to 'This' rules and - 'X' to 'DontCare', sorted by specificity (more 'This' rules first). Use when creating RuleTiles - from sprite analysis or defining tile neighbor rules programmatically. Sprites must be provided as - input. + Creates Unity RuleTiles from existing terrain or edge sprites so tiles auto-tile as the user + paints, and converts sprite-segment-3x3grid output patterns into RuleTile TilingRules. Use this + skill when the user wants sprites to tile or connect correctly, or to define tile neighbor rules + programmatically. Sprites must be provided as input; for a blank RuleTile with no sprites, use + tilemap-ruletile-createempty instead. required_packages: com.unity.2d.tilemap: ">=1.0.0" com.unity.2d.tilemap.extras: ">=4.0.0" diff --git a/skills/ui-imgui/SKILL.md b/skills/ui-imgui/SKILL.md index e32c593..8a7ced5 100644 --- a/skills/ui-imgui/SKILL.md +++ b/skills/ui-imgui/SKILL.md @@ -1,12 +1,11 @@ --- name: ui-imgui description: >- - Unity IMGUI (Immediate Mode GUI) expert for legacy editor tools using OnGUI/immediate mode. - Generates and modifies IMGUI EditorWindows, custom Inspectors, PropertyDrawers, and scripts with - IMGUI code (OnGUI, OnInspectorGUI). Use when maintaining existing IMGUI editor code or when user - explicitly requests IMGUI/OnGUI. Do not use for NEW editor windows or tools: new editor UI - defaults to UI Toolkit (ui-uitk) unless the project already uses IMGUI exclusively or the user - asks for OnGUI by name. + Generates and modifies legacy Unity IMGUI (immediate mode) editor code: EditorWindows, custom + Inspectors, PropertyDrawers, and scripts using OnGUI or OnInspectorGUI. Use this skill when + maintaining existing IMGUI editor code or when the user explicitly requests IMGUI or OnGUI. Not + for new editor windows or tools, which default to UI Toolkit (ui-uitk) unless the project uses + IMGUI exclusively. --- **Before proceeding:** If the user is asking about creating a **new** editor window, custom inspector, or PropertyDrawer without explicitly mentioning IMGUI/OnGUI, recommend using UI Toolkit (CreateGUI) instead, as it's the modern approach. Only proceed with IMGUI if: diff --git a/skills/unity-package-management/SKILL.md b/skills/unity-package-management/SKILL.md index d687c3c..28d9b1d 100644 --- a/skills/unity-package-management/SKILL.md +++ b/skills/unity-package-management/SKILL.md @@ -1,6 +1,6 @@ --- name: unity-package-management -description: Use when adding, removing, upgrading, or discovering Unity (UPM) packages programmatically from outside the Editor — headless or CI package installs via the C# UnityEditor.PackageManager.Client API, verifying package ids/versions against the Unity registry, or choosing which packages a game needs by genre, platform, and monetization. The Unity CLI does not manage UPM packages, so this skill covers that gap. Triggers on "install a Unity package", "add com.unity.*", "set up packages headless/CI", "which packages for a [genre] game". +description: Adds, removes, upgrades, and discovers Unity (UPM) packages programmatically from outside the Editor via the C# UnityEditor.PackageManager.Client API. Use this skill for headless or CI package installs, verifying package IDs and versions against the Unity registry, or choosing which packages a game needs by genre, platform, and monetization, even if the user just says to install a com.unity.* package. The Unity CLI doesn't manage UPM packages; this skill covers that gap. allowed-tools: - Bash - Read From 72a168b7d3ffce9be35194d59a8024e6bc7c9a36 Mon Sep 17 00:00:00 2001 From: "jonathan.meaney" Date: Fri, 18 Sep 2026 15:06:01 -0400 Subject: [PATCH 4/7] Made further refinements to descriptions to reduce character count --- skills/initialize-ai-navigation/SKILL.md | 2 +- skills/localization/SKILL.md | 2 +- skills/manage-sprite-atlas/SKILL.md | 2 +- skills/ui-imgui/SKILL.md | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/skills/initialize-ai-navigation/SKILL.md b/skills/initialize-ai-navigation/SKILL.md index 4b4e521..5a34385 100644 --- a/skills/initialize-ai-navigation/SKILL.md +++ b/skills/initialize-ai-navigation/SKILL.md @@ -1,6 +1,6 @@ --- name: initialize-ai-navigation -description: Sets up and configures the Unity AI Navigation system — NavMesh surfaces, agents, obstacles, links, modifiers, and area costs. Use this skill when the user asks about walkable navigation meshes, pathfinding agents, patrol routes, obstacle avoidance and carving, connecting NavMeshes with links, or troubleshooting navigation issues. +description: Sets up and configures the Unity AI Navigation system, which includes NavMesh surfaces, agents, obstacles, links, modifiers, and area costs. Use this skill when the user asks about walkable navigation meshes, pathfinding agents, patrol routes, obstacle avoidance and carving, connecting NavMeshes with links, or troubleshooting navigation issues. --- Determine what the user needs and guide them through navigation setup. See [navigation-system.md](references/navigation-system.md) for expanded component details, API notes, code recipes, and troubleshooting. diff --git a/skills/localization/SKILL.md b/skills/localization/SKILL.md index 9e92de9..08a2dbd 100644 --- a/skills/localization/SKILL.md +++ b/skills/localization/SKILL.md @@ -1,6 +1,6 @@ --- name: localization -description: "Sets up and configures Unity Localization, including locales, String and Asset Tables, CJK font support, and Addressables workflows. Use this skill when the user asks to add languages to a project, translate UI text, support CJK languages with TMP fonts, or mentions i18n, l10n, or multilingual support." +description: Sets up and configures Unity Localization, including locales, String and Asset Tables, CJK font support, and Addressables workflows. Use this skill when the user asks to add languages to a project, translate UI text, support CJK languages with TMP fonts, or mentions i18n, l10n, or multilingual support. --- This guide covers setting up and configuring Unity Localization, including locales, String and Asset Tables, Addressables integration, and CJK font support via Asset Tables. diff --git a/skills/manage-sprite-atlas/SKILL.md b/skills/manage-sprite-atlas/SKILL.md index d8216d7..3e561cc 100644 --- a/skills/manage-sprite-atlas/SKILL.md +++ b/skills/manage-sprite-atlas/SKILL.md @@ -1,6 +1,6 @@ --- name: manage-sprite-atlas -description: Manages SpriteAtlas assets using a prebuild pipeline with IPreprocessBuildWithReport, configuring master and variant atlases, texture and packing settings, and platform-specific overrides. Use this skill when the user asks about creating or optimizing sprite atlases, automated atlas generation, or runtime atlas access. Always use the prebuild approach unless the user explicitly requests manual authoring. +description: Manages SpriteAtlas assets using a prebuild pipeline with IPreprocessBuildWithReport, configuring master and variant atlases, texture and packing settings, and platform-specific overrides. Use this skill when the user asks about creating or optimizing sprites, automated atlas generation, or runtime atlas access. Always use the prebuild approach unless the user explicitly requests manual authoring. --- # Unity SpriteAtlas V2 diff --git a/skills/ui-imgui/SKILL.md b/skills/ui-imgui/SKILL.md index 8a7ced5..2bf88c2 100644 --- a/skills/ui-imgui/SKILL.md +++ b/skills/ui-imgui/SKILL.md @@ -1,9 +1,9 @@ --- name: ui-imgui description: >- - Generates and modifies legacy Unity IMGUI (immediate mode) editor code: EditorWindows, custom + Generates and modifies Unity IMGUI (Immediate Mode GUI) editor code: EditorWindows, custom Inspectors, PropertyDrawers, and scripts using OnGUI or OnInspectorGUI. Use this skill when - maintaining existing IMGUI editor code or when the user explicitly requests IMGUI or OnGUI. Not + maintaining existing IMGUI editor code or when the user requests IMGUI or OnGUI. Not for new editor windows or tools, which default to UI Toolkit (ui-uitk) unless the project uses IMGUI exclusively. --- From 430597f1c704d5b2fe46905abf7a1c4e4e21bcf5 Mon Sep 17 00:00:00 2001 From: "jonathan.meaney" Date: Fri, 18 Sep 2026 15:14:53 -0400 Subject: [PATCH 5/7] Reduced description size --- skills/validate-urp-render-graph-renderer-feature/SKILL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/skills/validate-urp-render-graph-renderer-feature/SKILL.md b/skills/validate-urp-render-graph-renderer-feature/SKILL.md index d4400aa..efe3860 100644 --- a/skills/validate-urp-render-graph-renderer-feature/SKILL.md +++ b/skills/validate-urp-render-graph-renderer-feature/SKILL.md @@ -1,6 +1,6 @@ --- name: validate-urp-render-graph-renderer-feature -description: Use when the user wants to review or validate a Unity 6+ URP ScriptableRendererFeature that uses the Render Graph API. Checks for correctness issues - resource wiring, material binding, execution structure, descriptor usage, global resource exposure, and Render Graph best practices. +description: Use to review or validate a Unity 6+ URP ScriptableRendererFeature that uses the Render Graph API. Checks for resource wiring, material binding, execution structure, descriptor usage, global resource exposure, and Render Graph best practices. --- # Skill: Validate a Unity URP Render Graph Renderer Feature From 5c2ebff212f6786db6103f810e17bf954caeda07 Mon Sep 17 00:00:00 2001 From: "jonathan.meaney" Date: Tue, 22 Sep 2026 16:49:33 -0400 Subject: [PATCH 6/7] Further reduced description lengths --- skills/2d-pixel-perfect/SKILL.md | 2 +- skills/audio-setup-mixers/SKILL.md | 2 +- skills/build-live-game/SKILL.md | 2 +- skills/generate-editor-search-query/SKILL.md | 2 +- skills/implement-in-app-purchases/SKILL.md | 2 +- skills/initialize-ai-navigation/SKILL.md | 2 +- skills/levelplay-unity-integration/SKILL.md | 2 +- skills/localization/SKILL.md | 2 +- skills/manage-sprite-atlas/SKILL.md | 2 +- skills/migrate-birp-to-urp/SKILL.md | 2 +- skills/new-unity-project/SKILL.md | 2 +- skills/optimize-audio/SKILL.md | 2 +- skills/optimize-text-mesh-pro/SKILL.md | 9 +-------- skills/optimize-web/SKILL.md | 2 +- skills/physics-3d-collision/SKILL.md | 7 +------ skills/setup-multiplayer-services/SKILL.md | 7 +------ skills/setup-vivox-voice-chat/SKILL.md | 2 +- skills/shader-graph-create-custom-node/SKILL.md | 2 +- skills/sprite-editor/SKILL.md | 2 +- skills/sprite-segment-3x3grid/SKILL.md | 2 +- skills/tilemap-palette-create/SKILL.md | 2 +- skills/tilemap-ruletile-createempty/SKILL.md | 2 +- skills/tilemap-ruletile-createfromsegment/SKILL.md | 7 +------ skills/ui-imgui/SKILL.md | 7 +------ skills/ui-ugui/SKILL.md | 2 +- skills/ui-uitk/SKILL.md | 2 +- skills/ui/SKILL.md | 7 +------ skills/unity-cli/SKILL.md | 2 +- skills/unity-package-management/SKILL.md | 2 +- skills/urp-postprocessing/SKILL.md | 2 +- .../validate-urp-render-graph-renderer-feature/SKILL.md | 2 +- 31 files changed, 31 insertions(+), 63 deletions(-) diff --git a/skills/2d-pixel-perfect/SKILL.md b/skills/2d-pixel-perfect/SKILL.md index cd2c1b0..407f991 100644 --- a/skills/2d-pixel-perfect/SKILL.md +++ b/skills/2d-pixel-perfect/SKILL.md @@ -1,6 +1,6 @@ --- name: 2d-pixel-perfect -description: Sets up, diagnoses, and fixes pixel perfect 2D rendering in Unity projects. Use when working on any retro-style or pixel art 2D game. +description: Sets up, diagnoses, and fixes pixel perfect 2D rendering with PixelPerfectCamera in URP or Built-in. Use when a retro-style or pixel art 2D game looks blurry, jittery, or misaligned. Not for HD 2D or high-resolution art. --- Set up, diagnose, and fix pixel perfect 2D rendering in Unity projects. diff --git a/skills/audio-setup-mixers/SKILL.md b/skills/audio-setup-mixers/SKILL.md index f4b636c..2c6bec4 100644 --- a/skills/audio-setup-mixers/SKILL.md +++ b/skills/audio-setup-mixers/SKILL.md @@ -1,6 +1,6 @@ --- name: audio-setup-mixers -description: Routes scene Audio Sources into existing Audio Mixer Groups, classifying each source by what it plays. Use this skill when the user asks about cleaning up mixer assignments, routing audio through a mixer, or which group a sound belongs in. Doesn't create mixers or groups or set volumes; it inventories what exists and asks the user to add anything missing. +description: Routes Audio Sources into existing Audio Mixer Groups, classifying each source by what it plays. Use when the user asks about cleaning up mixer assignments, routing audio through a mixer, or which group a sound belongs in. --- # Audio Mixer Setup diff --git a/skills/build-live-game/SKILL.md b/skills/build-live-game/SKILL.md index 9ed6560..5d5a48e 100644 --- a/skills/build-live-game/SKILL.md +++ b/skills/build-live-game/SKILL.md @@ -1,6 +1,6 @@ --- name: build-live-game -description: Builds and operates live games using Unity Services. Use this skill when the user asks about backend-driven or live-ops features — player accounts and authentication, cloud saves, leaderboards, matchmaking, lobbies, achievements, player progression, battle or season passes, virtual economies, server-authoritative logic, cloud code, anti-cheat, remote config, feature flags, A/B testing, analytics, or cloud resource deployment — even if they don't mention Unity Services. +description: Builds and operates live games with Unity Services. Use when the user asks about backend or live-ops features such as player accounts, cloud save, leaderboards, achievements, progression and battle passes, economies, cloud code, or remote config. --- # Build a Live Game With Unity Gaming Services diff --git a/skills/generate-editor-search-query/SKILL.md b/skills/generate-editor-search-query/SKILL.md index 433ecce..84ea50f 100644 --- a/skills/generate-editor-search-query/SKILL.md +++ b/skills/generate-editor-search-query/SKILL.md @@ -1,6 +1,6 @@ --- name: generate-editor-search-query -description: Generates Unity Search (Quick Search) queries and opens the Search window for read-only asset or scene-object lookups in the Editor. Use this skill, even if the user doesn't mention Unity Search, when asked to find, filter, or list assets or scene objects, such as materials, prefabs, scripts, GameObjects, components, or references. Don't use this skill for repository or filesystem searches, web searches, project overviews, or how-to programming questions. +description: Generates Unity Search queries and opens the Search window to find assets or scene objects. Use when the user asks to find, filter, or list assets, GameObjects, components, or references in the Editor, not on disk. enabled: true modes: [agent, ask] --- diff --git a/skills/implement-in-app-purchases/SKILL.md b/skills/implement-in-app-purchases/SKILL.md index ca16e73..1a25b8f 100644 --- a/skills/implement-in-app-purchases/SKILL.md +++ b/skills/implement-in-app-purchases/SKILL.md @@ -1,6 +1,6 @@ --- name: implement-in-app-purchases -description: Implements, configures, and debugs Unity In-App Purchases (IAP), covering store connection, product catalogs, consumable, non-consumable, and subscription purchases, receipt validation, entitlements, restore transactions, and Apple and Google Play store extensions. Use this skill when the user asks about real-money purchases, microtransactions (MTX), or store monetization, even if they don't mention Unity IAP. Also use it for direct-to-customer (D2C) purchases via Stripe or Coda, and migrations from native billing (StoreKit, Google BillingClient) or third-party plugins such as RevenueCat, Adapty, Essential Kit, or Unipay. +description: Implements, configures, and debugs Unity In-App Purchases, including subscriptions, receipt validation, and direct-to-customer payments via Stripe or Coda. Use when asked about real-money purchases or microtransactions, or migrating from native store billing, RevenueCat, or Adapty. --- # Unity In-App Purchasing diff --git a/skills/initialize-ai-navigation/SKILL.md b/skills/initialize-ai-navigation/SKILL.md index 5a34385..24448e1 100644 --- a/skills/initialize-ai-navigation/SKILL.md +++ b/skills/initialize-ai-navigation/SKILL.md @@ -1,6 +1,6 @@ --- name: initialize-ai-navigation -description: Sets up and configures the Unity AI Navigation system, which includes NavMesh surfaces, agents, obstacles, links, modifiers, and area costs. Use this skill when the user asks about walkable navigation meshes, pathfinding agents, patrol routes, obstacle avoidance and carving, connecting NavMeshes with links, or troubleshooting navigation issues. +description: Sets up and configures Unity AI Navigation, including NavMesh surfaces, agents, obstacles, and links. Use when the user asks about navigation meshes, pathfinding, patrol routes, or obstacle avoidance. --- Determine what the user needs and guide them through navigation setup. See [navigation-system.md](references/navigation-system.md) for expanded component details, API notes, code recipes, and troubleshooting. diff --git a/skills/levelplay-unity-integration/SKILL.md b/skills/levelplay-unity-integration/SKILL.md index 0d77864..2a55146 100644 --- a/skills/levelplay-unity-integration/SKILL.md +++ b/skills/levelplay-unity-integration/SKILL.md @@ -1,6 +1,6 @@ --- name: levelplay-unity-integration -description: Integrates the LevelPlay Mediation SDK via the Ads Mediation package. Use this skill when the user asks about adding or monetizing with ads (rewarded, interstitial, or banner) even if they don't mention LevelPlay. Use it for ad network and mediation setup, ATT and privacy configuration, impression-level revenue (ILRD), SDK initialization and ad unit IDs, Android Gradle or iOS CocoaPods dependency issues for ads, and migrations from Unity Ads, manging the Ads Mediation package, fixing LevelPlay namespace errors, deprecated IronSource.Agent APIs, or older LevelPlay SDK versions. +description: Integrates the LevelPlay ad mediation SDK via the Ads Mediation package. Use when the user asks about adding rewarded, interstitial, or banner ads, mediation or ad privacy setup, Android or iOS ad dependency build failures, or migrating from Unity Ads or IronSource APIs. --- # LevelPlay Unity package/SDK Integration diff --git a/skills/localization/SKILL.md b/skills/localization/SKILL.md index 08a2dbd..140770f 100644 --- a/skills/localization/SKILL.md +++ b/skills/localization/SKILL.md @@ -1,6 +1,6 @@ --- name: localization -description: Sets up and configures Unity Localization, including locales, String and Asset Tables, CJK font support, and Addressables workflows. Use this skill when the user asks to add languages to a project, translate UI text, support CJK languages with TMP fonts, or mentions i18n, l10n, or multilingual support. +description: Sets up and configures Unity Localization, including locales, String and Asset Tables, and CJK fonts. Use when the user asks to add languages, translate UI text, or mentions i18n or multilingual support. --- This guide covers setting up and configuring Unity Localization, including locales, String and Asset Tables, Addressables integration, and CJK font support via Asset Tables. diff --git a/skills/manage-sprite-atlas/SKILL.md b/skills/manage-sprite-atlas/SKILL.md index 3e561cc..3e4ceb6 100644 --- a/skills/manage-sprite-atlas/SKILL.md +++ b/skills/manage-sprite-atlas/SKILL.md @@ -1,6 +1,6 @@ --- name: manage-sprite-atlas -description: Manages SpriteAtlas assets using a prebuild pipeline with IPreprocessBuildWithReport, configuring master and variant atlases, texture and packing settings, and platform-specific overrides. Use this skill when the user asks about creating or optimizing sprites, automated atlas generation, or runtime atlas access. Always use the prebuild approach unless the user explicitly requests manual authoring. +description: Manages SpriteAtlas assets through a prebuild pipeline, covering master and variant atlases, packing settings, and platform overrides. Use when asked to create or optimize sprite atlases. --- # Unity SpriteAtlas V2 diff --git a/skills/migrate-birp-to-urp/SKILL.md b/skills/migrate-birp-to-urp/SKILL.md index b8c8895..bdf0215 100644 --- a/skills/migrate-birp-to-urp/SKILL.md +++ b/skills/migrate-birp-to-urp/SKILL.md @@ -1,6 +1,6 @@ --- name: migrate-birp-to-urp -description: Plans, executes, and troubleshoots migrations from Unity's Built-in Render Pipeline (BiRP) to the Universal Render Pipeline (URP). Use this skill when the user asks to upgrade, convert, or migrate a project, scene, material, or shader to URP, fix pink or magenta materials, review lighting, quality, or post-processing after migrating, or diagnose visual problems after a render-pipeline change. +description: Plans, executes, and troubleshoots migration from the Built-in Render Pipeline to URP. Use when asked to convert a project, scene, material, or shader to URP, or to fix visuals broken by the change. --- Classify the request, inspect the current project state, choose the correct migration path, and validate the Built-in to URP migration outcome carefully. diff --git a/skills/new-unity-project/SKILL.md b/skills/new-unity-project/SKILL.md index 9d53374..1903804 100644 --- a/skills/new-unity-project/SKILL.md +++ b/skills/new-unity-project/SKILL.md @@ -1,6 +1,6 @@ --- name: new-unity-project -description: Guides the creation of a brand-new Unity game or project from scratch, gathering the concept, target platforms, and monetization before creating the project, source control, and packages. Use this skill when the user asks to start, make, or bootstrap a new game or Unity project, including prototypes, game jams, and blank projects. Doesn't scaffold gameplay code. +description: Guides creating a new Unity project, gathering concept, platforms, and monetization before setting up the project, source control, and packages. Use when the user asks to start a new game or prototype. allowed-tools: - Bash - Read diff --git a/skills/optimize-audio/SKILL.md b/skills/optimize-audio/SKILL.md index 95d50dd..245509e 100644 --- a/skills/optimize-audio/SKILL.md +++ b/skills/optimize-audio/SKILL.md @@ -1,6 +1,6 @@ --- name: optimize-audio -description: Optimizes Unity 6 audio memory, CPU cost, and playback quality through import settings and mixer configuration. Use this skill when the user asks to reduce audio memory usage, choose Load Types for clips versus music, configure platform-appropriate sample rates and codecs, force 3D audio to mono, or reduce AudioMixer CPU cost. +description: Optimizes audio memory, CPU cost, and playback quality through import settings and mixer configuration. Use when asked to reduce audio memory or Audio Mixer CPU cost, change clip Load Types, sample rates or codecs, or force 3D audio to mono. --- ## Critical Rules diff --git a/skills/optimize-text-mesh-pro/SKILL.md b/skills/optimize-text-mesh-pro/SKILL.md index e1ab19e..e4122b5 100644 --- a/skills/optimize-text-mesh-pro/SKILL.md +++ b/skills/optimize-text-mesh-pro/SKILL.md @@ -1,13 +1,6 @@ --- name: optimize-text-mesh-pro -description: > - Optimizes TextMeshPro (TMP) rendering, memory, and font setup: font asset - stacks, dynamic fallback atlases, padding and sampling ratios, SDF quality, - AutoSize discipline, and Memory Profiler font-data capture. Use - this skill when the user asks about TMP font assets, font fallbacks, CJK or - multilingual text rendering, text performance or memory issues, worldspace vs UGUI, or profiler - markers for text generation and glyph rasterization. Not for UI Toolkit - layout (ui-uitk) or non-TMP uGUI (ui-ugui). +description: Optimizes TextMeshPro rendering, memory, and font setup, including font asset stacks, fallback atlases, SDF quality, and worldspace text. Use when the user asks about TMP fonts, CJK or multilingual text, or text performance. --- # Optimize TextMeshPro diff --git a/skills/optimize-web/SKILL.md b/skills/optimize-web/SKILL.md index c963772..ee7f579 100644 --- a/skills/optimize-web/SKILL.md +++ b/skills/optimize-web/SKILL.md @@ -1,6 +1,6 @@ --- name: optimize-web -description: Optimizes Unity 6 WebGL and WebGPU builds for smaller downloads, faster initial load, and efficient browser runtime performance. Use this skill when a web build is too large, stutters, or drains battery, or when the user asks about CDN or server compression, resource stripping, shader variant reduction, KTX textures, or web profiling. +description: Optimizes Unity WebGL and WebGPU builds for smaller downloads and faster load. Use when a web build is too large or stutters, or the user asks about compression, stripping, shader variants, or web profiling. --- ## Performance Notes - Take your time to do this thoroughly. diff --git a/skills/physics-3d-collision/SKILL.md b/skills/physics-3d-collision/SKILL.md index 137ff68..725cb16 100644 --- a/skills/physics-3d-collision/SKILL.md +++ b/skills/physics-3d-collision/SKILL.md @@ -1,11 +1,6 @@ --- name: physics-3d-collision -description: >- - Diagnoses 3D PhysX collision and trigger problems in MonoBehaviour-based Unity projects. Use this - skill when the user asks why OnCollisionEnter or OnTriggerEnter doesn't fire, - objects pass through each other, Physics.Raycast misses, ragdolls explode, AddForce stops working - after objects settle, or a MeshCollider misbehaves. For 2D physics or the DOTS Unity Physics - package, dedicated skills (physics-2d, physics-dots) take precedence when installed. +description: Diagnoses 3D PhysX collision and trigger problems. Use when OnCollisionEnter or OnTriggerEnter doesn't fire, objects pass through each other, raycasts miss, or a MeshCollider misbehaves. Also answers 2D and DOTS physics best-effort. --- # Skill: physics-3d-collision (PhysX MonoBehaviour) diff --git a/skills/setup-multiplayer-services/SKILL.md b/skills/setup-multiplayer-services/SKILL.md index d3165be..c2d98d1 100644 --- a/skills/setup-multiplayer-services/SKILL.md +++ b/skills/setup-multiplayer-services/SKILL.md @@ -1,11 +1,6 @@ --- name: setup-multiplayer-services -description: >- - Guides the development of real-time online multiplayer experiences using Unity Multiplayer - Services. Use this skill when the user asks about topology choice, player grouping, hosting, - matchmaking, discovery, network setup, or session-based play such as rooms, parties, and lobbies. - Not for leaderboards, cloud saves, or backend features with no real-time connection between - players; those belong to the build-live-game skill. +description: Guides real-time online multiplayer with Unity Multiplayer Services. Use when the user asks about network topology, hosting, matchmaking, or session-based play such as rooms, parties, and lobbies, not backend features. --- # Multiplayer SDK (Unity Multiplayer Services) diff --git a/skills/setup-vivox-voice-chat/SKILL.md b/skills/setup-vivox-voice-chat/SKILL.md index db993a5..41a6910 100644 --- a/skills/setup-vivox-voice-chat/SKILL.md +++ b/skills/setup-vivox-voice-chat/SKILL.md @@ -1,6 +1,6 @@ --- name: setup-vivox-voice-chat -description: Adds and configures in-game voice chat and text chat for Unity multiplayer games using Unity Vivox. Use this skill when the user asks about voice chat or comms, microphone setup and permissions, mute and volume controls, voice activity detection (VAD), push-to-talk, proximity or 3D spatial voice, team, party, or lobby voice channels, direct messages, or in-game text chat, even if they don't mention Vivox. Use it when the user mentions VivoxService, com.unity.services.vivox, or migrating from the legacy Vivox client APIs. +description: Adds and configures in-game voice and text chat with Unity Vivox. Use when the user asks about voice chat, microphone permissions, mute controls, proximity voice, team and lobby channels, or direct messages. required_packages: com.unity.services.vivox: ">=16.4.0" --- diff --git a/skills/shader-graph-create-custom-node/SKILL.md b/skills/shader-graph-create-custom-node/SKILL.md index 5e2a37d..691ca95 100644 --- a/skills/shader-graph-create-custom-node/SKILL.md +++ b/skills/shader-graph-create-custom-node/SKILL.md @@ -1,6 +1,6 @@ --- name: shader-graph-create-custom-node -description: "Generates custom Shader Graph nodes from HLSL code. Use when the user wants to create a new Shader Graph node or make existing HLSL code work as a reflected function node." +description: Generates custom Shader Graph nodes from HLSL code. Use when the user wants a new Shader Graph node or to make existing HLSL work as a reflected function node. required_packages: com.unity.shadergraph: ">=17.5.0" --- diff --git a/skills/sprite-editor/SKILL.md b/skills/sprite-editor/SKILL.md index e160dbf..fe05bc1 100644 --- a/skills/sprite-editor/SKILL.md +++ b/skills/sprite-editor/SKILL.md @@ -1,6 +1,6 @@ --- name: sprite-editor -description: Edits Unity sprite properties — rectangles, borders, pivots, outlines, and slicing (automatic, grid, isometric) — by generating C# editor scripts using ISpriteEditorDataProvider APIs. Use this skill when the user works with sprite assets, sprite sheets, texture atlases, or sprite slicing. +description: Edits Unity sprite rectangles, borders, pivots, outlines, and slicing by generating C# scripts. Use when the user works with sprite sheets or sprite slicing. modes: [agent, ask] --- diff --git a/skills/sprite-segment-3x3grid/SKILL.md b/skills/sprite-segment-3x3grid/SKILL.md index 0a092ab..42ebc48 100644 --- a/skills/sprite-segment-3x3grid/SKILL.md +++ b/skills/sprite-segment-3x3grid/SKILL.md @@ -1,6 +1,6 @@ --- name: sprite-segment-3x3grid -description: Segments a Sprite texture into a 3x3 grid and outputs a text pattern showing which cells match the center cell's majority color. Use this skill when the user asks to analyze sprite patterns, document sprite structure, or describe sprite color distribution. +description: Segments a Sprite texture into a 3x3 grid and outputs a pattern of cells matching the center cell's color. Use when the user asks to analyze or document a sprite's structure or color distribution. --- # Sprite Color Grid Analysis diff --git a/skills/tilemap-palette-create/SKILL.md b/skills/tilemap-palette-create/SKILL.md index 56247a3..0e7452b 100644 --- a/skills/tilemap-palette-create/SKILL.md +++ b/skills/tilemap-palette-create/SKILL.md @@ -1,6 +1,6 @@ --- name: tilemap-palette-create -description: Creates a Tile Palette asset. Use when the user wants to organize tiles for 2D level design or create a new Tile Palette from scratch. The user can specify the Grid layout, eg. Rectangular, Hexagonal, Isometric. +description: Creates a Tile Palette asset with a rectangular, hexagonal, or isometric Grid layout. Use when the user wants to organize tiles for 2D level design. required_packages: com.unity.2d.tilemap: ">=1.0.0" --- diff --git a/skills/tilemap-ruletile-createempty/SKILL.md b/skills/tilemap-ruletile-createempty/SKILL.md index fb4f62e..f486ad4 100644 --- a/skills/tilemap-ruletile-createempty/SKILL.md +++ b/skills/tilemap-ruletile-createempty/SKILL.md @@ -1,6 +1,6 @@ --- name: tilemap-ruletile-createempty -description: Creates an empty RuleTile, HexagonalRuleTile, or IsometricRuleTile asset without sprite inputs. Use this skill only when the user wants a blank RuleTile for custom rule configuration and hasn't provided or referenced any sprites. If the user mentions existing sprites, terrain art, or edge tiles, use tilemap-ruletile-createfromsegment instead. +description: Creates an empty RuleTile, HexagonalRuleTile, or IsometricRuleTile asset. Use only when the user wants a blank RuleTile and provides no sprites; with sprites or terrain art, use tilemap-ruletile-createfromsegment. required_packages: com.unity.2d.tilemap: ">=1.0.0" com.unity.2d.tilemap.extras: ">=4.0.0" diff --git a/skills/tilemap-ruletile-createfromsegment/SKILL.md b/skills/tilemap-ruletile-createfromsegment/SKILL.md index 92e2f7c..00187c9 100644 --- a/skills/tilemap-ruletile-createfromsegment/SKILL.md +++ b/skills/tilemap-ruletile-createfromsegment/SKILL.md @@ -1,11 +1,6 @@ --- name: tilemap-ruletile-createfromsegment -description: >- - Creates Unity RuleTiles from existing terrain or edge sprites so tiles auto-tile as the user - paints, and converts sprite-segment-3x3grid output patterns into RuleTile TilingRules. Use this - skill when the user wants sprites to tile or connect correctly, or to define tile neighbor rules - programmatically. Sprites must be provided as input; for a blank RuleTile with no sprites, use - tilemap-ruletile-createempty instead. +description: Creates RuleTiles from existing terrain or edge sprites so tiles auto-tile while painting. Use when the user wants sprites to connect correctly or to define tile neighbor rules, and provides sprites as input. required_packages: com.unity.2d.tilemap: ">=1.0.0" com.unity.2d.tilemap.extras: ">=4.0.0" diff --git a/skills/ui-imgui/SKILL.md b/skills/ui-imgui/SKILL.md index 2bf88c2..f424cb2 100644 --- a/skills/ui-imgui/SKILL.md +++ b/skills/ui-imgui/SKILL.md @@ -1,11 +1,6 @@ --- name: ui-imgui -description: >- - Generates and modifies Unity IMGUI (Immediate Mode GUI) editor code: EditorWindows, custom - Inspectors, PropertyDrawers, and scripts using OnGUI or OnInspectorGUI. Use this skill when - maintaining existing IMGUI editor code or when the user requests IMGUI or OnGUI. Not - for new editor windows or tools, which default to UI Toolkit (ui-uitk) unless the project uses - IMGUI exclusively. +description: Generates and modifies Unity IMGUI editor code such as EditorWindows, custom Inspectors, PropertyDrawers, and OnGUI scripts. Use for IMGUI or OnGUI or maintaining existing IMGUI code. --- **Before proceeding:** If the user is asking about creating a **new** editor window, custom inspector, or PropertyDrawer without explicitly mentioning IMGUI/OnGUI, recommend using UI Toolkit (CreateGUI) instead, as it's the modern approach. Only proceed with IMGUI if: diff --git a/skills/ui-ugui/SKILL.md b/skills/ui-ugui/SKILL.md index df8b825..1a8869a 100644 --- a/skills/ui-ugui/SKILL.md +++ b/skills/ui-ugui/SKILL.md @@ -1,6 +1,6 @@ --- name: ui-ugui -description: Unity uGUI (Canvas-based) UI expert. Understands, edits, and generates Canvas hierarchies, RectTransforms, Layout Groups, and prefab UI. Use for requests involving Canvas, uGUI, RectTransform, or .prefab UI files. +description: Understands, edits, and generates Unity uGUI Canvas hierarchies, RectTransforms, Layout Groups, and prefab UI. Use for requests involving Canvas, uGUI, RectTransform, or prefab UI files. --- Understand existing Unity uGUI, make targeted edits, and generate new Canvas-based hierarchies. diff --git a/skills/ui-uitk/SKILL.md b/skills/ui-uitk/SKILL.md index 355497d..9e61144 100644 --- a/skills/ui-uitk/SKILL.md +++ b/skills/ui-uitk/SKILL.md @@ -1,6 +1,6 @@ --- name: ui-uitk -description: Unity UI Toolkit expert for Unity 6.0+. Understands, edits, and generates UXML and USS files with flex-based layouts. Use for requests involving .uxml, .uss, UI Toolkit, UIElements, UIDocument, UI runtime binding, Custom UI Elements, Manipulators or PanelSettings. +description: Understands, edits, and generates Unity UI Toolkit UXML and USS with flex layouts. Use for requests involving UI Toolkit, UIElements, UIDocument, PanelSettings, custom elements, or UI runtime binding. --- Understand existing Unity UI Toolkit code, make targeted edits, generate new UXML/USS files, Manipulators, and handle UI runtime binding. diff --git a/skills/ui/SKILL.md b/skills/ui/SKILL.md index c8f179d..0b50ee9 100644 --- a/skills/ui/SKILL.md +++ b/skills/ui/SKILL.md @@ -1,11 +1,6 @@ --- name: ui -description: >- - Builds, edits, and explains game UI (menus, HUDs, screens, panels, and other visual interface - elements) routing to UI Toolkit, uGUI, or IMGUI based on project context. Use this - skill for any UI request that doesn't name a framework, including questions about existing UI - structure, styling and layout changes, and new UI generation, so the project's UI system is - detected before any UI code is written. +description: Routes Unity UI requests to the right framework skill (UI Toolkit, uGUI, or IMGUI) and answers UI comparison questions. Use for menus, HUDs, panels, or editor UI when the request doesn't name a framework. --- Determine the appropriate UI system for the project and route to the correct specialized skill. diff --git a/skills/unity-cli/SKILL.md b/skills/unity-cli/SKILL.md index e58ba9a..b73fe04 100644 --- a/skills/unity-cli/SKILL.md +++ b/skills/unity-cli/SKILL.md @@ -1,6 +1,6 @@ --- name: unity-cli -description: Controls the Unity Editor from the command line via the Unity CLI, creating or modifying GameObjects, editing scenes and assets, inspecting the hierarchy, and running C# in a live Editor instead of manually editing scene files. Use this skill when the user asks to install or manage Unity Editors, manage projects, manage licenses or modules, read logs, browse releases, build or test projects, configure the Unity MCP server, or run any other Unity CLI operation. For a guided flow for a brand-new game, use the new-unity-project skill instead. +description: Controls the Unity Editor and projects from the command line, driving a running Editor to edit scenes and assets or run C#. Use when asked to install or manage Editors, licenses, or projects, set up version control, build, test, configure the Unity MCP server, or run any unity command. allowed-tools: - Bash --- diff --git a/skills/unity-package-management/SKILL.md b/skills/unity-package-management/SKILL.md index 28d9b1d..0b334a8 100644 --- a/skills/unity-package-management/SKILL.md +++ b/skills/unity-package-management/SKILL.md @@ -1,6 +1,6 @@ --- name: unity-package-management -description: Adds, removes, upgrades, and discovers Unity (UPM) packages programmatically from outside the Editor via the C# UnityEditor.PackageManager.Client API. Use this skill for headless or CI package installs, verifying package IDs and versions against the Unity registry, or choosing which packages a game needs by genre, platform, and monetization, even if the user just says to install a com.unity.* package. The Unity CLI doesn't manage UPM packages; this skill covers that gap. +description: Adds, removes, upgrades, and discovers Unity (UPM) packages from outside the Editor. Use for headless or CI package installs, verifying package IDs and versions, or choosing which packages a game needs. The Unity CLI doesn't manage packages. allowed-tools: - Bash - Read diff --git a/skills/urp-postprocessing/SKILL.md b/skills/urp-postprocessing/SKILL.md index 3ca6cf7..66277ad 100644 --- a/skills/urp-postprocessing/SKILL.md +++ b/skills/urp-postprocessing/SKILL.md @@ -1,6 +1,6 @@ --- name: urp-postprocessing -description: Sets up, configures, and debugs URP post-processing effects using the Volume framework. Use when the user asks about bloom, tonemapping, color adjustments, depth of field, vignette, motion blur, or other Volume overrides in a URP project. +description: Sets up, configures, and debugs URP post-processing with the Volume framework. Use for bloom, tonemapping, color adjustments, depth of field, vignette, or other Volume overrides. required_packages: com.unity.render-pipelines.universal: ">=14.0.0" --- diff --git a/skills/validate-urp-render-graph-renderer-feature/SKILL.md b/skills/validate-urp-render-graph-renderer-feature/SKILL.md index efe3860..d3b43d6 100644 --- a/skills/validate-urp-render-graph-renderer-feature/SKILL.md +++ b/skills/validate-urp-render-graph-renderer-feature/SKILL.md @@ -1,6 +1,6 @@ --- name: validate-urp-render-graph-renderer-feature -description: Use to review or validate a Unity 6+ URP ScriptableRendererFeature that uses the Render Graph API. Checks for resource wiring, material binding, execution structure, descriptor usage, global resource exposure, and Render Graph best practices. +description: Reviews a Unity 6 URP ScriptableRendererFeature that uses the Render Graph API, checking resource wiring, material binding, execution structure, and best practices. Use to validate a renderer feature. --- # Skill: Validate a Unity URP Render Graph Renderer Feature From b864c2c4ae5011a1cd51756ce3667f131b747467 Mon Sep 17 00:00:00 2001 From: "jonathan.meaney" Date: Wed, 23 Sep 2026 14:23:13 -0400 Subject: [PATCH 7/7] Acted on reviewer feedback --- skills/physics-3d-collision/SKILL.md | 2 +- skills/tilemap-ruletile-createfromsegment/SKILL.md | 2 +- skills/ui/SKILL.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/skills/physics-3d-collision/SKILL.md b/skills/physics-3d-collision/SKILL.md index 725cb16..b6a6f45 100644 --- a/skills/physics-3d-collision/SKILL.md +++ b/skills/physics-3d-collision/SKILL.md @@ -1,6 +1,6 @@ --- name: physics-3d-collision -description: Diagnoses 3D PhysX collision and trigger problems. Use when OnCollisionEnter or OnTriggerEnter doesn't fire, objects pass through each other, raycasts miss, or a MeshCollider misbehaves. Also answers 2D and DOTS physics best-effort. +description: Diagnoses 3D PhysX collision and trigger problems. Use when OnCollisionEnter or OnTriggerEnter doesn't fire, objects pass through each other, raycasts miss, or a MeshCollider misbehaves. Also answers 2D and DOTS physics best-effort if no dedicated skill is available. --- # Skill: physics-3d-collision (PhysX MonoBehaviour) diff --git a/skills/tilemap-ruletile-createfromsegment/SKILL.md b/skills/tilemap-ruletile-createfromsegment/SKILL.md index 00187c9..85428b2 100644 --- a/skills/tilemap-ruletile-createfromsegment/SKILL.md +++ b/skills/tilemap-ruletile-createfromsegment/SKILL.md @@ -1,6 +1,6 @@ --- name: tilemap-ruletile-createfromsegment -description: Creates RuleTiles from existing terrain or edge sprites so tiles auto-tile while painting. Use when the user wants sprites to connect correctly or to define tile neighbor rules, and provides sprites as input. +description: Creates RuleTiles from existing terrain or edge sprites so tiles auto-tile while painting, and converts sprite-segment-3x3grid output patterns into TilingRules. Use when the user wants sprites to connect correctly or to define tile neighbor rules, and provides sprites as input. required_packages: com.unity.2d.tilemap: ">=1.0.0" com.unity.2d.tilemap.extras: ">=4.0.0" diff --git a/skills/ui/SKILL.md b/skills/ui/SKILL.md index 0b50ee9..46b3c57 100644 --- a/skills/ui/SKILL.md +++ b/skills/ui/SKILL.md @@ -1,6 +1,6 @@ --- name: ui -description: Routes Unity UI requests to the right framework skill (UI Toolkit, uGUI, or IMGUI) and answers UI comparison questions. Use for menus, HUDs, panels, or editor UI when the request doesn't name a framework. +description: Routes Unity UI requests to the right framework skill (UI Toolkit, uGUI, or IMGUI) and answers UI comparison questions. Use for menus, HUDs, panels, or editor UI when the request doesn't name a framework. Consult before writing any UI code. --- Determine the appropriate UI system for the project and route to the correct specialized skill.