agentleFS
batihandevbatihandev/unity-mcp-skills/skills/animator/SKILL.md

unity-animator

Skill7 starsChanged 7 months agoMITView on GitHub

Use when users want to create animation controllers, add parameters, play animations, or control animation state machines.

The file

We split this skill into the rules it gives an agent

7 rules. About 0 are common, 7 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Create a new Animator Controller.

    line 55
  2. Distinctive:

    Add a parameter to a controller.

    line 65
  3. Distinctive:

    Add a state to an Animator Controller layer.

    line 137
  4. Distinctive:

    Add a transition between two states in an Animator Controller.

    line 149
  5. Distinctive:

    Create controller before adding parameters

    line 172
  6. Distinctive:

    Use meaningful parameter names

    line 173
  7. Distinctive:

    Use layers for independent animations (body + face)

    line 176

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Unity Animator Skills

Overview

Control Unity's animation system - create controllers, manage parameters, and control playback.

Common Mistakes

DO NOT (common hallucinations):

  • animator_create_clip / animator_add_clip do not exist → AnimationClips are created via Unity Editor or asset import
  • animator_set_speed does not exist → use component_set_property on Animator component with propertyName="speed"

Routing:

  • For Timeline animation → use timeline module
  • For component properties on Animator → use component module
  • For animation import settings → use importer module

Skills Overview

SkillDescription
animator_create_controllerCreate new Animator Controller
animator_add_parameterAdd parameter to controller
animator_get_parametersList all parameters
animator_set_parameterSet parameter value at runtime
animator_playPlay animation state
animator_get_infoGet Animator component info
animator_assign_controllerAssign controller to GameObject
animator_list_statesList states in controller
animator_add_stateAdd a state to a controller layer
animator_add_transitionAdd a transition between two states

Parameter Types

TypeDescriptionExample Use
floatDecimal valueSpeed, blend weights
intInteger valueState index
boolTrue/falseIsGrounded, IsRunning
triggerOne-shot signalJump, Attack

Skills

animator_create_controller

Create a new Animator Controller.

ParameterTypeRequiredDefaultDescription
namestringYes-Controller name
folderstringNo"Assets/Animations"Save folder

Returns: {success, name, path}

animator_add_parameter

Add a parameter to a controller.

ParameterTypeRequiredDefaultDescription
controllerPathstringYes-Controller asset path
paramNamestringYes-Parameter name
paramTypestringYes-float/int/bool/trigger
defaultFloatfloatNo0Initial float value
defaultIntintNo0Initial int value
defaultBoolboolNofalseInitial bool value

animator_get_parameters

Get all parameters from a controller.

ParameterTypeRequiredDescription
controllerPathstringYesController asset path

Returns: {success, parameters: [{name, type, defaultFloat/defaultBool/...}]}

animator_set_parameter

Set a parameter value at runtime.

ParameterTypeRequiredDescription
namestringYesGameObject name
paramNamestringYesParameter name
paramTypestringYesfloat/int/bool/trigger
floatValuefloatNo*Float value
intValueintNo*Integer value
boolValueboolNo*Boolean value

*Use the appropriate value for paramType (trigger doesn't need a value)

animator_play

Play a specific animation state.

ParameterTypeRequiredDefaultDescription
namestringYes-GameObject name
stateNamestringYes-Animation state name
layerintNo0Animator layer
normalizedTimefloatNo0Start time (0-1)

animator_get_info

Get Animator component information.

ParameterTypeRequiredDescription
namestringYesGameObject name

Returns: {gameObject, instanceId, hasController, controllerPath, speed, applyRootMotion, updateMode, cullingMode, layerCount, parameterCount}

animator_assign_controller

Assign a controller to a GameObject.

ParameterTypeRequiredDescription
namestringYesGameObject name
controllerPathstringYesController asset path

animator_list_states

List all states in a controller layer.

ParameterTypeRequiredDefaultDescription
controllerPathstringYes-Controller asset path
layerintNo0Layer index

Returns: {success, states: [{name, tag, speed}]}

animator_add_state

Add a state to an Animator Controller layer.

ParameterTypeRequiredDefaultDescription
controllerPathstringYes-Controller asset path
stateNamestringYes-Name for the new state
clipPathstringNonullAnimation clip asset path to assign
layerintNo0Layer index

Returns: {success, controller, stateName, layer}

animator_add_transition

Add a transition between two states in an Animator Controller.

ParameterTypeRequiredDefaultDescription
controllerPathstringYes-Controller asset path
fromStatestringYes-Source state name
toStatestringYes-Destination state name
layerintNo0Layer index
hasExitTimeboolNotrueWhether transition waits for exit time
durationfloatNo0.25Transition duration in seconds

Returns: {success, from, to, layer, hasExitTime, duration}


Recipe Path

Recipe path rule: ../../recipes/animator/<command>.md

See ../../recipes/animator/README.md for the full command index.

Best Practices

  1. Create controller before adding parameters
  2. Use meaningful parameter names
  3. Triggers reset automatically after firing
  4. Set parameters before playing states
  5. Use layers for independent animations (body + face)
  6. States must exist in controller before playing

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.