UnitySkills is a REST API-based automation engine that lets AI coding agents control Unity Editor projects, including scenes and other editor operations. It is for developers using Unity with supported coding agents and IDEs. The catalogue skills and commands provide the agent workflows used to operate Unity projects through the engine.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Besty0728/Unity-Skills --skill yooasset-designgit clone --depth 1 https://github.com/Besty0728/Unity-SkillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/besty0728/unity-skills/yooasset-design)<a href="https://agentmods.dev/skills/besty0728/unity-skills/yooasset-design"><img src="https://agentmods.dev/badge/skills/besty0728/unity-skills/yooasset-design/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/besty0728/unity-skills/yooasset-design"><img src="https://agentmods.dev/badge/skills/besty0728/unity-skills/yooasset-design.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00021 | $0.02880 |
| Opus 5 | $0.00010 | $0.01440 |
| Sonnet 5 | $0.00004 | $0.00576 |
| Haiku 4.5 | $0.00002 | $0.00288 |
Grade A, and why
unity-yooasset-design scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 98 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Before calling any skill in this module: if you are about to call a skill with parameters guessed from its name or description, STOP — read this file (or fetch its schema via
GET /skills/recommend?includeSchema=true) first. If you already have the parameter definitions from recommend/schema, you may proceed straight to dryRun.
Triggers
- Writing or reviewing YooAsset code
- Initializing packages
- Loading assets via handles
- Setting up hot-update/download
- Choosing a play mode
- 编写或审查 YooAsset 代码、初始化 package、用句柄加载资源、配置热更/下载、选择运行模式
YooAsset - Design Rules
Advisory module. Every rule is distilled from YooAsset v2.3.18 (2025-12-04) source at Assets/YooAsset/. Each rule cites a concrete file/line so the reasoning is auditable and the AI does not improvise against stale memory.
Mode: Documentation only — no REST skills to gate; load freely under any operating mode (Approval / Auto / Bypass).
When to Load This Module
Load before writing or reviewing any of:
YooAssets.Initialize()/CreatePackage()/Destroy()bootstrap code- default package shortcuts:
YooAssets.SetDefaultPackage(...),YooAssets.LoadAssetAsync(...),YooAssets.CreateResourceDownloader(...) ResourcePackage.InitializeAsync(...)with any of the 5EPlayModevariantsLoadAssetSync/Async,LoadSubAssetsAsync,LoadAllAssetsAsync,LoadRawFileAsync,LoadSceneAsyncand their matchingHandleusage / release- Patch flow:
RequestPackageVersionAsync → UpdatePackageManifestAsync → CreateResourceDownloader → BeginDownload FileSystemParametersconstruction (Buildin / Cache / Editor / WebServer / WebRemote / custom)IDecryptionServices/IRemoteServices/IWebDecryptionServicesimplementations- Editor-side
AssetBundleBuilder.Run(...)andAssetBundleCollectorconfiguration - Any code branching on
EOperationStatus/EFileClearMode/PackageDetails
Critical Rule Summary (memorize even if you skip the sub-docs)
| # | Rule | Source anchor |
|---|---|---|
| 1 | Call YooAssets.Initialize() before any CreatePackage() and keep it as a process-level singleton. A second call only logs a warning and returns, but normal architecture should gate it with YooAssets.Initialized. The call creates a [{nameof(YooAssets)}] driver GameObject via DontDestroyOnLoad to pump OperationSystem.Update(). Do not Destroy this driver yourself. |
Runtime/YooAssets.cs:38-64 |
| 2 | ResourcePackage.InitializeAsync(...) has no separate EPlayMode argument: it infers play mode from the concrete InitializeParameters subclass. The five built-in subclasses map 1:1 to the five modes; an unknown subclass throws NotImplementedException, while a recognized but semantically wrong subclass wires the wrong file-system topology and fails later. |
Runtime/ResourcePackage/ResourcePackage.cs:107-135, 170-181, Runtime/InitializeParameters.cs:8-110 |
| 3 | EditorSimulateMode works only when UNITY_EDITOR is defined; WebPlayMode works only when UNITY_WEBGL is defined (and every other mode is rejected on WebGL). |
Runtime/ResourcePackage/ResourcePackage.cs:160-197 |
| 4 | Every AssetHandle / SubAssetsHandle / AllAssetsHandle / RawFileHandle / SceneHandle must be released via Release() or Dispose(). Without release, bundles never unload even with AutoUnloadBundleWhenUnused = true. |
Runtime/ResourceManager/Handle/HandleBase.cs:21-40, Runtime/InitializeParameters.cs:48-49 |
| 5 | LoadAssetSync/Async performs a DEBUG-only type guard that rejects any Type derived from UnityEngine.Behaviour and any type not derived from UnityEngine.Object. Treat the restriction as architectural even though the guard is compiled out of non-DEBUG builds. |
Runtime/ResourcePackage/ResourcePackage.cs:1172-1187 |
| 6 | YooAsset 2.3.18 includes default-package static shortcuts on YooAssets (SetDefaultPackage, Load*, CreateResourceDownloader, etc.). They are valid API, but architecture should prefer explicit ResourcePackage references in multi-package or library code. |
Runtime/YooAssetsExtension.cs:16, 217-295, 479-506 |
| 7 | RequestPackageVersionAsync() returns RequestPackageVersionOperation (exposes .PackageVersion). There is no UpdatePackageVersionOperation class in 2.3.18 — if you think you remember one, you are confusing it with the older name. |
Runtime/ResourcePackage/ResourcePackage.cs:225-231 |
| 8 | Before UpdatePackageManifestAsync, call UnloadAllAssetsAsync(); YooAsset logs a warning when loaders are still alive. |
Runtime/ResourcePackage/ResourcePackage.cs:242-247 |
| 9 | Downloader callbacks (DownloadFinishCallback / DownloadUpdateCallback / DownloadErrorCallback / DownloadFileBeginCallback) must be assigned before BeginDownload(). They are delegate fields, not events — only one subscriber per slot. |
Runtime/DownloadSystem + Runtime/ResourcePackage/Operation/DownloaderOperation.cs:86-101, 330-336 |
| 10 | ResourcePackage.DestroyAsync() must run before YooAssets.RemovePackage(). RemovePackage refuses when InitializeStatus != EOperationStatus.None. |
Runtime/YooAssets.cs:177-190, Runtime/ResourcePackage/ResourcePackage.cs:210-218 |
| 11 | The patch flow is strictly ordered: InitializeAsync → RequestPackageVersionAsync → UpdatePackageManifestAsync(version) → CreateResourceDownloader → BeginDownload. Jumping ahead (e.g. loading assets between version and manifest) is unsupported. |
Runtime/ResourcePackage/ResourcePackage.cs:225, 238, 972, Samples~/Space Shooter/.../PatchLogic/FsmNode/Fsm*.cs |
What ships with it
8 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 98 lines · 21 tokens per session scan A 2037b55a1e53
unity-yooasset-design is a skill published in the GitHub repository Besty0728/Unity-Skills (1,727 stars, last pushed today), licensed MIT. It adds 21 tokens to every session and 2,880 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
pufferlib
Version-aware guidance for PufferLib reinforcement-learning environments, vectorization, policies, PuffeRL training, evaluation, and safe checkpoint review. Use when adapting Gymnasium/PettingZoo environments to published PufferLib 3.0.0 or working with the redesigned native 4.0 source line.
immersive-vibration-response
Provide autonomous, low-power haptic feedback and a playful, opinionated interaction style for players through the local ESP32 vibration bridge. Use for interactive games, embodied-agent play, roleplay, simulations, live narratives, and long-running creative or coding tasks whenever game events, decisions, task…
2dimg2motion
Use when a user provides one baseline image and requests game animation frames, sprite sequences, attack/walk/idle/hit/death/casting motion, transparent PNG frames, a spritesheet, keyframe prompts, or consistent whole-character pose animation.
dotcraft-unity
Use when dotcraft-unity MCP, CLI, or unityexecutecsharp is available, or when the user asks to inspect, automate, capture, or debug Unity Editor state, scenes, assets, Console logs, or GameView output. Provides background-first Unity Editor automation through MCP or CLI.
img2mo-learn
Learn reusable 2D motion-generation knowledge from user-specified action resources with /img2mo-learn . Use when the user provides videos, extracted frame sequences, spritesheets, Spine assets, generated outputs, failed attempts, or reference motion folders and wants to summarize animation timing, pose beats, style…
zu-article-image-skill
A skill for adding meaningful illustrations to finished Markdown articles. It places editable image prompts inside the article and can later generate the images after confirmation.