unity-component

Unity Component Skills

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "unity-component" with this command: npx skills add besty0728/unity-skills/besty0728-unity-skills-unity-component

Unity Component Skills

BATCH-FIRST: Use *_batch skills when operating on 2+ objects to reduce API calls from N to 1.

Skills Overview

Single Object Batch Version Use Batch When

component_add

component_add_batch

Adding to 2+ objects

component_remove

component_remove_batch

Removing from 2+ objects

component_set_property

component_set_property_batch

Setting on 2+ objects

Query Skills (no batch needed):

  • component_list

  • List all components on an object

  • component_get_properties

  • Get component property values

Single-Object Skills

component_add

Add a component to a GameObject.

Parameter Type Required Description

name

string No* GameObject name

instanceId

int No* Instance ID (preferred)

path

string No* Hierarchy path

componentType

string Yes Component type name

*At least one identifier required

Returns: {success, gameObject, componentType, added}

component_remove

Remove a component from a GameObject.

Parameter Type Required Description

name

string No* GameObject name

instanceId

int No* Instance ID

componentType

string Yes Component type to remove

Returns: {success, gameObject, componentType, removed}

component_list

List all components on a GameObject.

Parameter Type Required Description

name

string No* GameObject name

instanceId

int No* Instance ID

Returns: {success, gameObject, instanceId, components: [string]}

component_set_property

Set a component property value.

Parameter Type Required Description

name

string No* GameObject name

instanceId

int No* Instance ID

componentType

string Yes Component type

propertyName

string Yes Property to set

value

any Yes New value

Returns: {success, gameObject, componentType, property, oldValue, newValue}

component_get_properties

Get all properties of a component.

Parameter Type Required Description

name

string No* GameObject name

instanceId

int No* Instance ID

componentType

string Yes Component type

Returns: {success, gameObject, componentType, properties: {name: value}}

Batch Skills

component_add_batch

Add components to multiple objects.

unity_skills.call_skill("component_add_batch", items=[ {"name": "Enemy1", "componentType": "Rigidbody"}, {"name": "Enemy2", "componentType": "Rigidbody"}, {"name": "Enemy3", "componentType": "Rigidbody"} ])

component_remove_batch

Remove components from multiple objects.

unity_skills.call_skill("component_remove_batch", items=[ {"instanceId": 12345, "componentType": "BoxCollider"}, {"instanceId": 12346, "componentType": "BoxCollider"} ])

component_set_property_batch

Set properties on multiple objects.

unity_skills.call_skill("component_set_property_batch", items=[ {"name": "Enemy1", "componentType": "Rigidbody", "propertyName": "mass", "value": 2.0}, {"name": "Enemy2", "componentType": "Rigidbody", "propertyName": "mass", "value": 2.0} ])

Common Component Types

Physics

Type Description

Rigidbody

Physics simulation

BoxCollider

Box collision

SphereCollider

Sphere collision

CapsuleCollider

Capsule collision

MeshCollider

Mesh-based collision

CharacterController

Character movement

Rendering

Type Description

MeshRenderer

Render meshes

SkinnedMeshRenderer

Animated meshes

SpriteRenderer

2D sprites

LineRenderer

Draw lines

TrailRenderer

Motion trails

Audio

Type Description

AudioSource

Play sounds

AudioListener

Receive audio

UI

Type Description

Canvas

UI container

Image

UI images

Text

UI text (legacy)

Button

Clickable button

Example: Efficient Physics Setup

import unity_skills

BAD: 6 API calls

unity_skills.call_skill("component_add", name="Box1", componentType="Rigidbody") unity_skills.call_skill("component_add", name="Box2", componentType="Rigidbody") unity_skills.call_skill("component_add", name="Box3", componentType="Rigidbody") unity_skills.call_skill("component_set_property", name="Box1", componentType="Rigidbody", propertyName="mass", value=2.0) unity_skills.call_skill("component_set_property", name="Box2", componentType="Rigidbody", propertyName="mass", value=2.0) unity_skills.call_skill("component_set_property", name="Box3", componentType="Rigidbody", propertyName="mass", value=2.0)

GOOD: 2 API calls

unity_skills.call_skill("component_add_batch", items=[ {"name": "Box1", "componentType": "Rigidbody"}, {"name": "Box2", "componentType": "Rigidbody"}, {"name": "Box3", "componentType": "Rigidbody"} ]) unity_skills.call_skill("component_set_property_batch", items=[ {"name": "Box1", "componentType": "Rigidbody", "propertyName": "mass", "value": 2.0}, {"name": "Box2", "componentType": "Rigidbody", "propertyName": "mass", "value": 2.0}, {"name": "Box3", "componentType": "Rigidbody", "propertyName": "mass", "value": 2.0} ])

Best Practices

  • Add colliders before Rigidbody for physics

  • Use component_list to verify additions

  • Check property names with component_get_properties first

  • Some properties are read-only (will fail to set)

  • Use full type names for custom scripts (e.g., "MyNamespace.MyScript")

Additional Skills

component_copy

Copy a component from one GameObject to another.

Parameter Type Required Default Description

sourceName

string No* null Source GameObject name

sourceInstanceId

int No* 0 Source Instance ID

sourcePath

string No* null Source hierarchy path

targetName

string No* null Target GameObject name

targetInstanceId

int No* 0 Target Instance ID

targetPath

string No* null Target hierarchy path

componentType

string Yes

Component type to copy

*At least one source identifier and one target identifier required

Returns: { success, source, target, componentType }

component_set_enabled

Enable or disable a component (Behaviour, Renderer, Collider, etc.).

Parameter Type Required Default Description

name

string No* null GameObject name

instanceId

int No* 0 Instance ID

path

string No* null Hierarchy path

componentType

string Yes

Component type to enable/disable

enabled

bool No true Whether to enable or disable

*At least one identifier required

Returns: { success, gameObject, componentType, enabled }

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

unity-skills

No summary provided by upstream source.

Repository SourceNeeds Review
General

unity-shader

No summary provided by upstream source.

Repository SourceNeeds Review
General

unity-uitoolkit

No summary provided by upstream source.

Repository SourceNeeds Review
General

unity-scene-contracts

No summary provided by upstream source.

Repository SourceNeeds Review