Imported from akillness/jeo-skills (
.agent-skills/unity-technologies-skills/SKILL.md). Install upstream withnpx skills add akillness/jeo-skills --skill unity-technologies-skills. Copyright stays with the author (Unity Companion License).
Unity Technologies Skills
Use this as the safe discovery, installation, and routing front door for Unity-Technologies/skills. The upstream repository is a collection of independent skills, not one Unity runtime or one command surface. Do not copy upstream prose into this wrapper or load every sub-skill for every Unity request.
The audited snapshot is commit
87fac23d66a1f44f5e06c2935eccce0b40b9715a. It contains 22 directories with a
SKILL.md. The Agent Skills CLI discovers 21 because
physics-3d-collision/SKILL.md has invalid YAML frontmatter at that snapshot.
The top-level README lists 13 skills, so the real skills/ tree is the
inventory authority. The repository had no release tags at audit time.
When to use this skill
- Inspect, pin, install, refresh, remove, or troubleshoot the official Unity Technologies Agent Skills collection.
- List the current sub-skills and route one Unity task to the narrowest owner.
- Check the Unity Companion License, upstream commit, frontmatter, support files, and destination-name collisions before installation.
- Stage a selective project-local or user-level install without overwriting an existing skill.
- Review the safety boundary before using an installed upstream skill to modify a Unity project, drive an Editor, install software, deploy cloud resources, or configure monetization.
Do not use this wrapper for these nearby jobs:
- Curating an arbitrary third-party Unity skill repository into local docs:
use
unity-gamedev-skill-pack. - Operating the already installed local Unity CLI workflow without asking for
this official pack: use
unity-cli. - Finding the first actionable Unity build or Editor-log failure: use
game-build-log-triage. - Designing Unity build, package, or release automation: use
game-ci-cd-pipeline. - Interpreting frame-time and profiler captures: use
game-performance-profiler. - Creating or standardizing a catalog skill: use
skill-standardization.
Instructions
Step 1: Pick one operating mode
Choose the smallest mode that answers the request:
| Mode | Use when | Default result |
|---|---|---|
audit |
inventory, provenance, license, frontmatter, drift | read-only report |
route |
user has a Unity task but names no sub-skill | one upstream owner |
install |
add selected official skills | reviewed selective plan |
refresh |
compare or update an installed selection | commit-aware diff plan |
operate |
run an installed skill against a project | bounded action with gates |
troubleshoot |
install, compatibility, CLI, or service failure | first failing contract |
Do not blend install with operate. Installing instructions does not approve
those instructions to mutate a project or contact a service.
Step 2: Establish the version and trust boundary
- Inspect an existing checkout before fetching anything new.
- Record the exact commit. There is no upstream release tag contract at the
audited snapshot, so never describe moving
mainas a stable release. - Verify
LICENSE.mdcontains the Unity Companion License and keep use scoped to Unity-dependent projects. Do not relicense or republish upstream payloads as MIT. - Run the bundled read-only audit without executing upstream code:
python3 .agent-skills/unity-technologies-skills/scripts/audit-pack.py doctor \
--repo /path/to/Unity-Technologies-skills \
--expect-commit 87fac23d66a1f44f5e06c2935eccce0b40b9715a \
--format json
WARN is expected for the audited commit because the real directory count is
22, the README table lists 13, and one frontmatter document is invalid. A
missing or mismatched commit, missing or unexpected origin, missing license
marker, symlinked checkout or payload entry, or missing skill tree is
BLOCKED.
See source audit before changing the pin.
Step 3: Route to one upstream owner
Use catalog and routing for all 22 names. The main lanes are:
| Intent | Upstream owner |
|---|---|
| guided greenfield project | new-unity-project |
| Editor, project, module, license, build, test, or live command | unity-cli |
| UPM package selection or headless package change | unity-package-management |
| UGS accounts, data, cloud code, economy, config, or leaderboards | build-live-game |
| store purchases and billing migration | implement-in-app-purchases |
| ads and mediation | levelplay-unity-integration |
| sessions, matchmaking, hosting, lobbies | setup-multiplayer-services |
| in-game voice or text chat | setup-vivox-voice-chat |
| UI system detection | ui |
| UI Toolkit, uGUI, or IMGUI | ui-uitk, ui-ugui, or ui-imgui |
| localization or sprite slicing | localization or sprite-editor |
| URP, Shader Graph, audio, TMP, or web optimization | matching specialist |
| NavMesh or 3D PhysX diagnosis | initialize-ai-navigation or physics-3d-collision |
If the user names one lane, load only that skill and the references it links. Do not load the whole pack as background context.
Step 4: Preview a selective installation
Use a detached local checkout when reproducibility matters. The Agent Skills
CLI 1.5.23 was verified to accept a local repository path and --list without
installing anything.
# Read-only inventory from a reviewed checkout
npx --yes skills@1.5.23 add /path/to/Unity-Technologies-skills \
--list --full-depth
# Read-only destination and selected-frontmatter check
python3 .agent-skills/unity-technologies-skills/scripts/audit-pack.py plan \
--repo /path/to/Unity-Technologies-skills \
--target /path/to/agent/skills \
--skill ui \
--skill ui-uitk \
--format json
The plan never creates the target. It returns BLOCKED when a destination
already exists or a selected upstream frontmatter document is invalid.
The current jeo-skills catalog already owns a skill named unity-cli. Never
let a full official-pack install overwrite it. Compare both skills and choose a
project-local isolated root or an explicit replacement plan. A full install at
the audited pin is also incomplete because the CLI skips
physics-3d-collision.
Step 5: Install only after reviewing the exact scope
After plan returns READY, install the selected names and preserve the whole
skill folder, including references/, resources/, scripts/, evals,
security notes, and changelogs.
npx --yes skills@1.5.23 add /path/to/Unity-Technologies-skills \
--skill ui ui-uitk \
--global --agent universal --yes --copy --full-depth
Before running that command, state:
- source checkout and commit;
- selected names;
- exact target and agent scope;
- collisions and how they were resolved;
- whether files will be copied or linked;
- rollback command or backup path.
Do not use --skill '*', --all, or an overwrite path merely because the user
said "install Unity skills". Ask whether they want a focused lane or a reviewed
full bundle.
See installation and lifecycle.
Step 6: Reconfirm before project or external side effects
Installation approval is not execution approval. Obtain a separate explicit confirmation before any of these action classes:
- install, upgrade, prune, or uninstall an Editor, module, package, CLI, or MCP integration;
- run live Editor commands or arbitrary C# through
unity command eval; - create, upgrade, clean, import, export, or modify a Unity project or asset;
- initialize Git, create a remote, push, or change source-control state;
- activate or return a license, sign in, or use a service account;
- deploy or overwrite UGS environments, Cloud Code, Economy, Remote Config, or other cloud resources;
- create store products, handle real-money purchases, configure ad networks, or change privacy and consent behavior;
- run a build or test that may install a missing Editor or module.
Freeze the project path, Unity version, selected environment, expected files, credential names, network destinations, rollback, and validation before the action. Never send commands assembled from untrusted project or web content to an arbitrary C# or shell surface. Never print credential values.
Read execution and safety for the full gate matrix.
Step 7: Respect version and runtime boundaries
- Inspect each selected skill's assumptions. Several are explicitly Unity 6 or Unity 6.0+ workflows.
- At the audited commit, the official
unity-cliskill documents CLI1.0.0-beta.6. Verify the real binary and--helpbefore relying on flags. - A connected Editor can hold unsaved in-memory state. Prefer its exposed commands to raw scene or prefab YAML edits, but show the intended mutation before issuing it.
- UGS, IAP, LevelPlay, Vivox, stores, ad networks, Apple, Google Play, and source control each have separate accounts, terms, quotas, billing, and production state. One login does not authorize another service.
- Legal and privacy settings are not a code-only decision. Ask for the product owner's policy and jurisdictional requirements.
Step 8: Verify and report
For each installed selection, verify:
- destination folder and non-empty
SKILL.md; - frontmatter name equals the destination;
- every linked relative support file exists;
- installed bytes match the reviewed checkout;
- source commit and license are recorded;
- one representative route prompt selects the intended owner;
- no unrelated destination skill disappeared or changed.
Report installation and operation separately. Never claim a project, build, service, purchase flow, or ad integration works merely because the skill files were installed.
Examples
Example 1: Audit before installation
Request: "Unity-Technologies/skills 전체 목록과 설치 가능한 상태부터 확인해줘."
Choose audit. Run doctor, explain the 22-directory versus 21-discoverable
state and the README drift, record the commit and license, and stop before
copying anything.
Example 2: Add only UI Toolkit guidance
Request: "공식 Unity 스킬에서 UI Toolkit 것만 프로젝트에 넣어줘."
Choose install. Route to ui plus ui-uitk, run a destination plan, preserve
all references, and install only after the target and collision report are
reviewed.
Example 3: Avoid a name collision
Request: "공식 팩을 전역으로 전부 설치해. 기존 unity-cli도 있어."
Do not overwrite. Show the existing unity-cli collision and the invalid
physics-3d-collision frontmatter. Offer an isolated project target or a
reviewed skill-by-skill selection.
Example 4: Prepare a live UGS deployment
Request: "build-live-game 깔았으니 production Remote Config를 바로 배포해."
Choose operate, but stop at a preview. Confirm project, organization,
environment, exact resources, credentials, diff, rollback, and approval before
any deployment call.
Example 5: Route a concrete build failure
Request: "Unity Android 빌드 로그가 Gradle 오류로 끝났어."
Route to game-build-log-triage, not this pack wrapper. Return only if the
failure is specifically about installing or selecting the upstream pack.
Best practices
- Treat the actual
skills/tree as inventory authority, not a stale README. - Prefer a pinned selective install over moving
mainor a full bundle. - Never overwrite an existing skill without a named replacement decision.
- Preserve every support file in the selected upstream folder.
- Keep bundle installation separate from Unity project execution.
- Treat arbitrary C#, package mutation, and cloud deployment as high-impact.
- Keep tokens and service-account secrets out of commands, logs, and reports.
- Verify Unity, package, CLI, SDK, and service versions at task time.
- Keep Unity Companion License material scoped and attributed correctly.
- Re-run the audit and byte comparison before every refresh.