addressables-design
Source-anchored design rules for Unity Addressables 1.22.3/2.9.1
Edit Unity Timeline assets and tracks
Claude Code
$ npx -y skills add Besty0728/Unity-Skills --skill timeline --agent claude-code
Codex
$ npx skills add Besty0728/Unity-Skills --skill timeline -a codex -y
Cursor
$ npx skills add Besty0728/Unity-Skills --skill timeline -a cursor -y
Gemini CLI
$ npx skills add Besty0728/Unity-Skills --skill timeline -a gemini-cli -y
GitHub Copilot
$ npx skills add Besty0728/Unity-Skills --skill timeline -a github-copilot -y
OpenCode
$ npx skills add Besty0728/Unity-Skills --skill timeline -a opencode -y
Windsurf
$ npx skills add Besty0728/Unity-Skills --skill timeline -a windsurf -y
name: unity-timeline description: Edit Unity Timeline assets and tracks
Create and modify Unity Timeline assets: add typed tracks, place clips, bind objects, set duration and wrap mode, and play, pause or stop the editor preview through the PlayableDirector. Parameters come from the schema (`GET /skills/schema?names=<skill>&wire=v2`); execution and dryRun rules: root [SKILL.md](../../SKILL.md).
Create a Timeline asset and a PlayableDirector instance.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name | string | Yes | - | Name of the timeline and its GameObject | | folder | string | No | "Assets/Timelines" | Folder to save the asset |
**Returns**: `{success, assetPath, gameObjectName, directorInstanceId}`
Add an Audio track.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector (`name`, `entityId`, `instanceId` default 0, or `path`) | | trackName | string | No | "Audio Track" | Name of the new track |
**Returns**: `{success, trackName}`
Add an Animation track, optionally binding an object.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | trackName | string | No | "Animation Track" | Name of the new track | | bindingObjectName | string | No | - | Name of the GameObject to bind (with an Animator) | | bindingEntityId | string | No | - | Entity ID of the GameObject to bind; outranks `bindingObjectName` |
**Returns**: `{success, trackName, boundObject}`
Add an Activation track to control object visibility.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | trackName | string | No | "Activation Track" | Name of the new track |
**Returns**: `{success, trackName}`
Add a Control track for nested Timelines or prefab spawning.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | trackName | string | No | "Control Track" | Name of the new track |
**Returns**: `{success, trackName}`
Add a Signal track for event markers.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | trackName | string | No | "Signal Track" | Name of the new track |
**Returns**: `{success, trackName}`
Remove a track by name.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | trackName | string | Yes | - | Name of the track to remove |
**Returns**: `{success, removed}`
List the tracks in a Timeline.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector |
**Returns**: `{count, tracks: [{name, type, muted, clipCount}]}`
Add a clip to a track.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | trackName | string | Yes | - | Name of the target track | | start | double | No | 0 | Clip start time in seconds | | duration | double | No | 1 | Clip duration in seconds |
**Returns**: `{success, trackName, clipStart, clipDuration}`
Set the Timeline duration and wrap mode.
| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | name, entityId, instanceId, path | - | No | - | Target GameObject with a PlayableDirector | | duration | double | No | 0 | Fixed duration in seconds | | wrapMode | string | No | - | `Hold`, `Loop` or `None` |
**Returns**: `{success, duration, wrapMode}`
Play, pause or stop the Timeline in the editor preview.
| Parameter | Type | Required | Default | Description | |--
REST API-based AI-driven Unity Editor Automation Engine Let AI control Unity scenes directly through Skills 🎉 We are now indexed by DeepWiki! Got questions? Check out the AI-generated docs → The current official maintenance baseline is Unity 2022.3+.
Source-anchored design rules for Unity Addressables 1.22.3/2.9.1
Manage Addressables groups, entries, profiles and content builds (com.unity.addressables, reflection-based)
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.