Agent skill

Unity Asset

by Besty0728 in Besty0728/Unity-Skills

“Manage Unity AssetDatabase operations”

— description from SKILL.md by Besty0728
MITAuto-check passedGame Development

Install Unity Asset

skills CLI
$ npx skills add Besty0728/Unity-Skills --skill unity-asset -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Besty0728/Unity-Skills unity-asset --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Besty0728/Unity-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/'SkillsForUnity/unity-skills~/skills/asset' .claude/skills/unity-asset && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
unity-asset
GitHub stars
1.8k
Token cost
~2.9k tokens
SKILL.md length
1,007 words
Files
1
Skills in repo
82
Repo updated
First seen
Licence
MIT

At a glance

  • Works in 5 steps: Organize assets in logical folders → Use consistent naming conventions → Refresh after external file changes → …
  • SKILL.md covers Triggers, Operating Mode, Skills Overview and Skills, plus 4 more sections
  • Calls curl

About this skill

Unity Asset is a skill in Besty0728/Unity-Skills (1.8k stars). Its SKILL.md is about 2.9k tokens. Licence: MIT.

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Organize assets in logical folders
  2. Use consistent naming conventions
  3. Refresh after external file changes
  4. Use search filters for efficiency
  5. Backup before bulk delete operations

What it can do on your machine

Read from SKILL.md and the folder at commit ec8aa7c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Unity Asset loads about 2.9k tokens when it runs. Until then it costs about 12 tokens; SKILL.md has 1,007 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~12
When it runs · the whole SKILL.md, loaded when a task matches
~2.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Besty0728/Unity-Skills at commit ec8aa7c, republished under its MIT licence (© Besty0728). 1,007 words, ~2,865 tokens.

Download SKILL.mdSave it as .claude/skills/unity-asset/SKILL.md (or your agent's skills folder).
name
unity-asset
description
Manage Unity AssetDatabase operations

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

  • Organizing project assets
  • Importing or relocating files
  • Querying asset metadata
  • Scripting AssetDatabase operations
  • 整理工程资源、导入或移动文件、查询资源元数据、脚本化 AssetDatabase 操作

Unity Asset Skills

BATCH-FIRST: Use *_batch skills when operating on 2+ assets.

Operating Mode

  • Approval:本模块 Mixed —— asset_find / asset_get_info / asset_get_labels 标 SkillMode.SemiAuto,可直接执行;写类 skill (asset_move / asset_move_batch / asset_duplicate / asset_create_folder / asset_create_folder_batch / asset_refresh / asset_reimport* / asset_set_labels) 走默认 SkillMode.FullAuto,需 grant。
  • Auto / Bypass:FullAuto 直接执行。
  • 含 NeverInSemi 高危 skill:asset_import / asset_import_batch (标 RiskLevel = "high" —— 写入项目);asset_delete / asset_delete_batch (Operation.Delete)。这些在 Approval/Auto 下返 MODE_FORBIDDEN,仅 Bypass 或 Allowlist 命中可调。

DO NOT (common hallucinations):

  • asset_create does not exist → use asset_create_folder (folders), material_create (materials), script_create (scripts)
  • asset_rename does not exist → use asset_move with new path
  • asset_search does not exist → use asset_find with searchFilter syntax (e.g. t:Texture2D player)
  • asset_copy does not exist → use asset_duplicate

Routing:

  • For texture/model/audio import settings → use importer module (SkillMode.FullAuto)
  • For material creation → use material module (SkillMode.FullAuto)
  • For script creation → use script module

Skills Overview

Single ObjectBatch VersionUse Batch When
asset_importasset_import_batchImporting 2+ files
asset_deleteasset_delete_batchDeleting 2+ assets
asset_moveasset_move_batchMoving 2+ assets
asset_create_folderasset_create_folder_batchCreating 2+ folders

No batch needed:

  • asset_duplicate - Duplicate single asset
  • asset_find - Search assets (returns list)
  • asset_refresh - Refresh AssetDatabase
  • asset_get_info - Get asset information
  • asset_reimport - Force reimport asset
  • asset_reimport_batch - Reimport multiple assets

Skills

asset_import

Import an external file into the project.

ParameterTypeRequiredDescription
sourcePathstringYesExternal file path
destinationPathstringYesProject destination
asset_import_batch

Import multiple external files.

ParameterTypeRequiredDefaultDescription
itemsjson stringYes-JSON array of per-item objects (see example below)

items currently expects a JSON string, not a native array.

Returns: {success, totalItems, successCount, failCount, results: [{success, sourcePath, destinationPath}]}

python
import json

unity_skills.call_skill("asset_import_batch", items=json.dumps([
    {"sourcePath": "C:/Downloads/tex1.png", "destinationPath": "Assets/Textures/tex1.png"},
    {"sourcePath": "C:/Downloads/tex2.png", "destinationPath": "Assets/Textures/tex2.png"}
]))
asset_delete

Delete an asset from the project.

ParameterTypeRequiredDescription
assetPathstringYesAsset path to delete
asset_delete_batch

Delete multiple assets.

ParameterTypeRequiredDefaultDescription
itemsjson stringYes-JSON array of per-item objects (see example below)

items currently expects a JSON string, not a native array.

Returns: {success, totalItems, successCount, failCount, results: [{success, path}]}

python
import json

unity_skills.call_skill("asset_delete_batch", items=json.dumps([
    {"path": "Assets/Textures/old1.png"},
    {"path": "Assets/Textures/old2.png"}
]))
asset_move

Move or rename an asset.

ParameterTypeRequiredDescription
sourcePathstringYesCurrent asset path
destinationPathstringYesNew path/name
asset_move_batch

Move multiple assets.

ParameterTypeRequiredDefaultDescription
itemsjson stringYes-JSON array of per-item objects (see example below)

items currently expects a JSON string, not a native array.

Returns: {success, totalItems, successCount, failCount, results: [{success, sourcePath, destinationPath}]}

python
import json

unity_skills.call_skill("asset_move_batch", items=json.dumps([
    {"sourcePath": "Assets/Old/mat1.mat", "destinationPath": "Assets/New/mat1.mat"},
    {"sourcePath": "Assets/Old/mat2.mat", "destinationPath": "Assets/New/mat2.mat"}
]))
asset_duplicate

Duplicate an asset.

ParameterTypeRequiredDescription
assetPathstringYesAsset to duplicate
asset_find

Find assets by search filter.

ParameterTypeRequiredDefaultDescription
searchFilterstringYes-Search query
limitintNo50Max results to return

Search Filter Syntax:

FilterExampleDescription
t:Typet:Texture2DBy type
l:Labell:ArchitectureBy label
nameplayerBy name
Combinedt:Material playerMultiple filters

Returns: {count, totalFound, assets: [{path, name, type}]}

asset_create_folder

Create a folder in the project.

ParameterTypeRequiredDescription
folderPathstringYesFull folder path
asset_create_folder_batch

Create multiple folders.

ParameterTypeRequiredDefaultDescription
itemsjson stringYes-JSON array of per-item objects (see example below)

items currently expects a JSON string, not a native array. The parent folder of each entry must already exist, so order nested folders outermost-first within one call.

Returns: {success, totalItems, successCount, failCount, results: [{target, success, path, guid}]}

python
import json

unity_skills.call_skill("asset_create_folder_batch", items=json.dumps([
    {"folderPath": "Assets/Art"},
    {"folderPath": "Assets/Art/Textures"}
]))
Show full SKILL.md (440 more words)Show less
asset_refresh

Refresh the AssetDatabase after external changes, e.g. files you wrote or deleted with your own file tools.

No parameters.

Returns: {success, message, compileTriggered}. When the refresh starts a script compilation (a .cs, .asmdef, .asmref, .rsp or .dll changed), compileTriggered is true and the result adds status:"accepted", jobId, waitUrl (/jobs/<jobId>?wait=90), serverAvailability and, when Unity reported the files, scriptChanges (up to 20 paths; scriptChangesTruncated counts the rest). compileTriggered:false means there is nothing to wait for.

Wrote a .cs yourself? Call asset_refresh, then GET its waitUrl, retrying the same URL through the domain reload: curl -s --retry 20 --retry-connrefused --retry-all-errors --retry-delay 2 "http://localhost:<port>/jobs/<jobId>?wait=90". status:"completed" means the new types are ready to use; "failed" lists the compile errors in resultData.compilation.errors. The diagnostics are project-wide (compilation.scope:"project"); compilation.compiled:false means no compilation followed the refresh.

asset_get_info

Get information about an asset.

ParameterTypeRequiredDescription
assetPathstringYesAsset path
asset_reimport

Force reimport of an asset.

ParameterTypeRequiredDescription
assetPathstringYesAsset path to reimport
asset_reimport_batch

Reimport multiple assets matching a pattern.

ParameterTypeRequiredDescription
searchFilterstringNoAssetDatabase search filter (default *)
folderstringNoFolder root to search (default Assets)
limitintNoMax assets to reimport (default 100)
asset_set_labels

Set labels on an asset (overwrites existing labels).

ParameterTypeRequiredDescription
assetPathstringYesAsset path
labelsstringYesComma-separated labels (e.g. "ui,icon,hud"). Empty entries are dropped

Returns: {success, assetPath, labels: [...]}

asset_get_labels

Get the labels currently attached to an asset.

ParameterTypeRequiredDescription
assetPathstringYesAsset path

Returns: {success, assetPath, labels: [...]}


Minimal Example

python
import unity_skills

# GOOD: 1 API call instead of 4
unity_skills.call_skill("asset_move_batch", items=[
    {"sourcePath": "Assets/tex1.png", "destinationPath": "Assets/Textures/tex1.png"},
    {"sourcePath": "Assets/tex2.png", "destinationPath": "Assets/Textures/tex2.png"},
    {"sourcePath": "Assets/tex3.png", "destinationPath": "Assets/Textures/tex3.png"},
    {"sourcePath": "Assets/tex4.png", "destinationPath": "Assets/Textures/tex4.png"}
])

Best Practices

  1. Organize assets in logical folders
  2. Use consistent naming conventions
  3. Refresh after external file changes
  4. Use search filters for efficiency
  5. Backup before bulk delete operations

Exact Signatures

Exact names, parameters, defaults, and returns are defined by GET /skills/schema or unity_skills.get_skill_schema(), not by this file.

Common Errors

Full transport-level codes (COMPILING/RATE_LIMIT etc.) → ../../references/protocol-error-codes.md

ErrorTriggerFix
TARGET_NOT_FOUNDThe source file, asset path, or target asset could not be found.Verify the path with asset_find / asset_get_info, ensure the file exists, and retry with the exact project-relative path.
MISSING_PARAMA required path parameter is empty or not provided (caught by path validation).Provide the required assetPath, sourcePath, destinationPath, or folderPath.
SEMANTIC_INVALIDThe path is invalid (e.g., contains .., does not start with Assets//Packages/, or the folder already exists).Use a normalized project-relative path under Assets/ or Packages/; choose a different folder name if it already exists.
SKILL_ERRORA low-level AssetDatabase or filesystem operation failed, such as Failed to delete asset, AssetDatabase.MoveAsset returned an error, or folder creation failed.Resolve the issue described in the message (e.g., close locked files, fix parent path) and retry.

© Besty0728, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in SkillsForUnity/unity-skills~/skills/asset of Besty0728/Unity-Skills.

Open the folder on GitHubat commit ec8aa7c

Compare with similar skills

Unity Asset next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Unity Asset compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Unity Asset this skillBesty0728/Unity-Skills1.8k—~2.9kAutomated safety check: PassMIT
Image to Three.js Modelimg2threejs/img2threejs18k1 repos~8.2kAutomated safety check: PassApache-2.0
Web CloneJane-xiaoer/claude-skill-web-clone1k2 repos~2.7kAutomated safety check: PassMIT
Threejs Game Directormajidmanzarpour/threejs-game-skills2.4k—~2.2kAutomated safety check: PassMIT
Game Asset Generatorhtdt/godogen7.1k—~2.8kAutomated safety check: PassMIT
Threejs Gameplay Systemsvalkor-ai/loom1.2k1 repos~1.4kAutomated safety check: PassApache-2.0

Similar skills

  • Image to Three.js Model

    img2threejs/img2threejs

    Rebuilds the object in a reference image as a procedural, animation-ready Three.js model written entirely in code, using staged sculpting with quality checks.

    18k GitHub starsUsed in 1 repo~8.2k tokens
    Game DevelopmentAuto-check passed
  • Web Clone

    Jane-xiaoer/claude-skill-web-clone

    网站复刻 / 克隆方法论。USE WHEN 用户说 复刻网站、克隆网站、clone website、抄个站、仿站、 照着这个站做一个、reproduce site、还原某个网页效果、把这个站搬下来改成我的、 复刻某个交互/WebGL/Canvas/Three.js 效果。提供「先拿真源码 → 判路径 → 逆向拆解 → 搭工程 → 替换内容」的可移植决策树,覆盖静态站 /…

    1k GitHub starsUsed in 2 repos~2.7k tokens
    Game DevelopmentAuto-check passed
  • Threejs Game Director

    majidmanzarpour/threejs-game-skills

    Entrypoint for building, upgrading, and finishing Three.js browser games.

    2.4k GitHub stars~2.2k tokensUpdated 10 days ago
    Game DevelopmentAuto-check passed
  • Generates game art from text prompts: PNG images, GLB 3D models, rigged characters, animations and sprites, with background removal.

    7.1k GitHub stars~2.8k tokensUpdated 6 days ago
    Game DevelopmentAuto-check passed
  • Build and iterate playable Three.js game systems: starter scaffold, architecture, design briefs, core loops, level and encounter design, entities, input, camera, collision and physics, scoring…

    1.2k GitHub starsUsed in 1 repo~1.4k tokens
    Game DevelopmentAuto-check passed
  • Uloop Execute Dynamic Code

    CyberAgentGameEntertainment/NovaShader

    Execute C with Unity APIs when existing uloop tools cannot inspect or edit enough.

    1.6k GitHub starsUsed in 1 repo~1.9k tokens
    Game DevelopmentAuto-check passed

More from Besty0728/Unity-Skills

All 82 skills in this repo
  • Unity Skills

    Besty0728/Unity-Skills

    Automate the Unity Editor through a local REST API — scripts, scenes, prefabs, assets, materials, lighting, tests and hundreds of other Editor operations.

    1.8k GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Unity Animator

    Besty0728/Unity-Skills

    Edit Unity Animator Controllers and drive runtime parameters

    1.8k GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Unity Architecture

    Besty0728/Unity-Skills

    Advise on Unity gameplay and system architecture. An agent skill from Besty0728/Unity-Skills.

    1.8k GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Unity Batch

    Besty0728/Unity-Skills

    Unified batch and async-job orchestration. An agent skill from Besty0728/Unity-Skills.

    1.8k GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Unity Behavior

    Besty0728/Unity-Skills

    Drive Unity Behavior behavior graphs and blackboard variables

    1.8k GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Unity Console

    Besty0728/Unity-Skills

    Capture and query the Unity Editor console. An agent skill from Besty0728/Unity-Skills.

    1.8k GitHub stars~1.8k tokensUpdated today
    Auto-check passed

Questions about Unity Asset

How do I install Unity Asset in Claude Code?

Run `npx skills add Besty0728/Unity-Skills --skill unity-asset -a claude-code`. Or copy the skill folder (SkillsForUnity/unity-skills~/skills/asset in Besty0728/Unity-Skills) into .claude/skills/unity-asset in your project. Claude Code loads it when a task matches its description.

How do I install Unity Asset in Codex?

Run `npx skills add Besty0728/Unity-Skills --skill unity-asset -a codex`. Or copy the skill folder (SkillsForUnity/unity-skills~/skills/asset in Besty0728/Unity-Skills) into .agents/skills/unity-asset in your project. Codex loads it when a task matches its description.

Can I use Unity Asset in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Besty0728/Unity-Skills --skill unity-asset -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/unity-asset, .gemini/skills/unity-asset, .github/skills/unity-asset and .opencode/skills/unity-asset in your project.

What does Unity Asset need to run?

Going by SKILL.md and its folder, Unity Asset needs the command-line tools its instructions call (curl).

Does Unity Asset access the network?

SKILL.md contains no URLs. Its commands use curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Unity Asset safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Unity Asset use?

Unity Asset is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Unity Asset use?

About 2.9k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Unity Asset?

Skills that share tags, products or a category with Unity Asset: Image to Three.js Model (img2threejs/img2threejs, 18k stars), Web Clone (Jane-xiaoer/claude-skill-web-clone, 1k stars), Threejs Game Director (majidmanzarpour/threejs-game-skills, 2.4k stars) and Game Asset Generator (htdt/godogen, 7.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Unity Asset?

Besty0728 (a GitHub user) maintains it in Besty0728/Unity-Skills, which has 1,815 GitHub stars. The repository holds 82 skills in this directory. The repository was last updated on October 7, 2026.

Source: Besty0728/Unity-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.