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 batchgit 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/batch)<a href="https://agentmods.dev/skills/besty0728/unity-skills/batch"><img src="https://agentmods.dev/badge/skills/besty0728/unity-skills/batch/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/batch"><img src="https://agentmods.dev/badge/skills/besty0728/unity-skills/batch.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.00011 | $0.02085 |
| Opus 5.5 | $0.00004 | $0.00834 |
| Sonnet 5.5 | $0.00002 | $0.00417 |
| Haiku 4.5 | $0.00001 | $0.00209 |
Grade A, and why
unity-batch 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 14d 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.
Copies of this mod
1 near-identical copy found in the catalogue:
- unity-batch — 86% identical, 281 lines differ
How it starts
The opening of the file, as written. The whole thing — 87 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Triggers
- Operating on many objects at once
- Running or polling long async jobs
- Preview-then-commit bulk edits
- 一次性操作大量对象、运行或轮询长时异步任务、先预览后提交的批量编辑
Unity Batch Skills
The POST /skills/batch endpoint, query → preview → execute bulk edits, execution reports and async jobs. Parameters come from the schema, never from a skill's name; execution and dryRun rules: root SKILL.md.
POST /skills/batch — several skills, one HTTP call
An HTTP endpoint, not a skill: never send skills_batch to POST /skill/<name>. It runs up to 50 ordinary skill calls in order inside one main-thread job, each through the full single-skill pipeline (validation, permission gate, its own Undo group, audit): one round trip and one main-thread wake-up instead of N, the biggest saving once there are 3+ writes.
POST /skills/batch
{
"steps": [
{"skill": "gameobject_create", "args": {"name": "Cube", "primitiveType": "Cube"}},
{"skill": "component_add", "args": {"instanceId": {"$ref": "$0.instanceId"}, "componentType": "Rigidbody"}}
],
"continueOnError": false
}
| Body field | Default | Meaning |
|---|---|---|
steps |
required | {skill, args} objects, in order. More than 50 → 400 SEMANTIC_INVALID; split the call. |
continueOnError |
false |
false = stop at the first failure; true = record it and keep going. |
params |
none | Values for {"$param":"name"} or {"$param":"name","default":X} nodes in args; static, resolved before $ref; a missing slot without default fails that step. |
$ref: an args object whose only key is$ref,{"$ref":"$N.path"}, is replaced by the value atpath(e.g.instanceId,results[0].path; bare$N= the whole result) in the result of earlier successful stepN(0-based). Only structured args are scanned, never strings. A ref that cannot resolve (forward, failed step, no match) fails its step withSEMANTIC_INVALID. Refer to created objects through$ref(instanceId, orentityIdon Unity 6000.4+) rather than by name: a same-named existing object may win a name lookup.- Query:
?mode=dryRun(the batch dryRun gate) validates every step, executes nothing and never halts; a step may name an object an earlier step would create (a warning notes the skipped live checks) and$refargs get a structural check only (refsValidated).?mode=transactionalis all-or-nothing with Undo rollback, rejected up front (400) for an unknown skill, a step that may trigger a domain reload, orcontinueOnError:true.?diff=1adds a netsceneDiff;?wire=v2slims dryRun step payloads;expectInstance/expectProjectwork as on/skill.?mode=planis not supported.mode/dryRunmay sit in the body instead: each key resolves query-first and a blank value counts as absent. Any key outside these (body:steps,params,continueOnError,mode,dryRun) is400 UNKNOWN_PARAM.
What ships with it
22 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.
- reference/batch_cleanup_temp_objects.md 970 B
- reference/batch_execute.md 2.1 KB
- reference/batch_fix_missing_scripts.md 734 B
- reference/batch_preview_rename.md 1.5 KB
- reference/batch_preview_replace_material.md 852 B
- reference/batch_preview_set_property.md 1.3 KB
- reference/batch_query_assets.md 812 B
- reference/batch_query_components.md 781 B
- reference/batch_query_gameobjects.md 1.3 KB
- reference/batch_replace_material.md 878 B
- reference/batch_report_get.md 458 B
- reference/batch_report_list.md 354 B
- reference/batch_retry_failed.md 687 B
- reference/batch_set_render_layer.md 887 B
- reference/batch_standardize_naming.md 866 B
- reference/batch_validate_scene_objects.md 516 B
- reference/job_cancel.md 330 B
- reference/job_list.md 363 B
- reference/job_logs.md 637 B
- reference/job_progress.md 1.2 KB
- reference/job_status.md 1.5 KB
- reference/job_wait.md 2.1 KB
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.
- 14d ago Changed · -226 lines 9718756f6a0c
- 1mo ago Changed · +2 lines 9257f2649937
- 1mo ago First seen · 311 lines · 11 tokens per session scan A d4d7a183a79c
unity-batch is a skill published in the GitHub repository Besty0728/Unity-Skills (1,864 stars, last pushed today), licensed MIT. It adds 11 tokens to every session and 2,085 once invoked, about $0.0000 per session on Opus 5.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-08-30.
Other skills, from other repositories
pufferlib
Version-aware guidance for PufferLib reinforcement-learning environments, vectorization, policies, PuffeRL training, evaluation, and safe checkpoint review. Covers the native 5.0 build and environment API, published 3.0.0 Gymnasium/PettingZoo adaptation, and a pinned historical 4.0 profile.
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.
unity
Inspect, automate, and debug a running Unity Editor. Use for Unity scenes, assets, project state, Console logs, and Editor C# execution.
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.
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…