mcpField
U
unity-gameobject

unity-gameobject

github.com/besty0728Development1.9k87 installsUpdated today
Repository

About unity-gameobject

unity-gameobject is a skill module for managing Unity scene objects and hierarchy. It provides object search, creation, parenting, transformation, and batch operations, with identifier resolution and transform read-back details.

Key features

  1. 01Find objects by name or attributes
  2. 02Create, duplicate, rename, and delete objects
  3. 03Set parent and sibling order
  4. 04Edit transforms and active state
  5. 05Batch operations for multiple objects
  6. 06Inspect object hierarchy and components

Use cases

  1. 01Building or reorganizing a scene hierarchy
  2. 02Spawning and positioning scene objects
  3. 03Applying consistent changes to multiple objects

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/besty0728/unity-skills --skill unity-gameobject

After installing, type/unity-gameobjectin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

reference/
gameobject_create_batch.md
gameobject_create.md
gameobject_delete_batch.md
gameobject_delete.md
gameobject_duplicate_batch.md
gameobject_duplicate.md
gameobject_find.md
gameobject_get_info.md
gameobject_rename_batch.md
gameobject_rename.md
gameobject_set_active_batch.md
gameobject_set_active.md
gameobject_set_layer_batch.md
gameobject_set_parent_batch.md
gameobject_set_parent.md
gameobject_set_sibling_index.md
gameobject_set_tag_batch.md
gameobject_set_transform_batch.md
gameobject_set_transform.md

Details

From the project README

Triggers

  • Building or restructuring scene hierarchy
  • Spawning or removing objects
  • Adjusting transforms
  • 搭建或调整场景层级、新建或删除物体、修改 Transform

Unity GameObject Skills

Create, find, parent and transform scene objects. Parameters come from the schema (recommend includeSchema=true or /skills/schema?names=), which notes the non-obvious ones — never from a skill's name. Execution, dryRun and verification rules: root SKILL.md.

Operating Mode

gameobject_find / gameobject_get_info are SemiAuto (read-only); every other skill is FullAuto. gameobject_delete / gameobject_delete_batch (Operation.Delete) are NeverInSemi: MODE_FORBIDDEN under Approval/Auto, run only under Bypass or an Allowlist hit → operating mode.

Shared rules

  • Identifiers: entityId (string; Unity 6000.4+, where instanceId reads 0), instanceId (int, older Unity), path ("Parent/Child", case-insensitive, optional scene-name prefix), name. Give at least one; precedence entityId > instanceId > path > name, and a stale id or missed path falls through to the next one given.
  • Name matching: an exact name wins (the first in hierarchy order when several share it); otherwise a single whole-word or substring match is used. Several fuzzy matches return TARGET_NOT_FOUND with candidates (path + entityId each) instead of guessing. Non-exact resolutions are listed in top-level resolutionNotes.
  • Spaces: gameobject_create x/y/z and rotX/Y/Z are local to the parent unless space:"world" (applied after parenting). gameobject_set_transform posX/Y/Z and rotX/Y/Z are world, localPosX/Y/Z local; it applies world position, then local position, then rotation, then scale, so local wins on a shared axis and omitted axes keep their value. scaleX/Y/Z is always localScale. RectTransform fields (anchor*, pivot*, sizeDelta*, width/height) are UI-only.
  • Read-back: create, set_transform and their batches return the Transform read back — position (world), localPosition, rotation (world euler, 0–360), scale (local), as gameobject_get_info reports them; no follow-up read needed.
  • Batches (items = JSON array): all-or-nothing. One failed item reverts the whole call (rolledBack:true, the other items reverted:true, error SEMANTIC_INVALID); fix the failed items and resend all. Unknown item keys are ignored and named in warnings. Items take the single skill's identifiers and fields; gameobject_create_batch items may parent to an item created earlier in the same call.

Skills Overview

Use *_batch for 2+ objects (one call instead of N).

SingleBatch
gameobject_creategameobject_create_batch
gameobject_deletegameobject_delete_batch
gameobject_duplicate (sibling <name>_Copy)gameobject_duplicate_batch
gameobject_renamegameobject_rename_batch
gameobject_set_transformgameobject_set_transform_batch
gameobject_set_activegameobject_set_active_batch
gameobject_set_parent (no parent id = unparent)gameobject_set_parent_batch
-gameobject_set_layer_batch
-gameobject_set_tag_batch
gameobject_set_sibling_index (index clamped)-

Query (no batch): gameobject_find (name substring or regex, tag, layer, component), gameobject_get_info (transform, parent, children, components).

Per-skill tables, item fields and return shapes: reference/<skill_name>.md — rarely needed, the schema notes the parameters.

DO NOT (common hallucinations):

  • gameobject_move / gameobject_rotate / gameobject_set_scale / gameobject_set_position do not exist → use gameobject_set_transform
  • gameobject_add_component does not exist → use component_add
  • gameobject_get_transform does not exist → use gameobject_get_info

Elsewhere: components → component_* skills; material or colour → material_* skills; scene_find_objects (SemiAuto) also searches objects.

Exact Signatures

Names, parameters, defaults and required flags come from GET /skills/schema?category=GameObject (or ?names=a,b), not this file.

Common Errors

ErrorFix
TARGET_NOT_FOUND (object, parent, child, layer)Retry with a candidates entry's path / entityId, or locate it via gameobject_find / scene_get_hierarchy.
MISSING_PARAMSupply it (e.g. newName, items); the error (or a dryRun) lists all parameters.
SEMANTIC_INVALIDUse an allowed value from the message (primitiveType, space local/world, a registered tag) or fix the failed results items.

Transport codes (COMPILING, RATE_LIMIT, ...) → error codes.

Comments

Markdown supported