The interface is localized. Skill descriptions and documents are machine-translated by AI into your language; code, commands, paths and technical terms stay in the original, and the author's document governs.
Explore skills
Productivity · SKILL.md

unity-timeline

unity-timeline

Edit Unity Timeline assets and tracks

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill documentation

GitHub

name: unity-timeline description: Edit Unity Timeline assets and tracks

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

  • Building cutscenes or sequences
  • Creating Timeline assets
  • Adding tracks and clips
  • 制作过场或序列、创建 Timeline 资产、添加轨道与片段

Timeline Skills

Create and modify Unity Timeline assets — add typed tracks, drop clips on tracks, bind objects, set duration / wrap mode, and play/pause/stop the editor preview through the PlayableDirector.

Operating Mode

  • Approval:查询类 skill(timeline_list_tracks,源码标 SkillMode.SemiAuto)直接执行;其余变更/播放类(timeline_create / add_*_track / timeline_add_clip / timeline_set_duration / timeline_play / timeline_set_binding,标 SkillMode.FullAuto)需用户 grant,grant 后服务端一步执行返结果。
  • Auto / Bypass:未被禁列表拦截的 skill 直接执行。
  • 本模块含 Delete 类 skill:timeline_remove_track 标记为 SkillOperation.Delete,被 IsForbiddenInSemi 静态拦截 —— 仅 Bypass 模式或加入 Allowlist 才能调用。
  • timeline_play 仅驱动 Editor 预览(PlayableDirector.Evaluate / Play 在编辑器上下文),不会进入 Play mode。

DO NOT (common hallucinations):

  • timeline_create_animation / timeline_add_track do not exist → use the typed track skills: timeline_add_animation_track, timeline_add_audio_track, timeline_add_activation_track, timeline_add_control_track, timeline_add_signal_track
  • timeline_add_keyframe does not exist → Timeline uses clips, not direct keyframes; use timeline_add_clip
  • timeline_set_duration sets the Timeline asset duration, not individual clip duration

Routing:

  • For Animator parameters/states → use animator module
  • For runtime animation playback → use editor_play or write C# via script module

Skills

timeline_create

Create a new Timeline asset and Director instance.

ParameterTypeRequiredDefaultDescription
namestringYes-Name of the timeline/object
folderstringNo"Assets/Timelines"Folder to save asset

Returns: { success, assetPath, gameObjectName, directorInstanceId }

timeline_add_audio_track

Add an Audio track to a Timeline.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringNo"Audio Track"Name of the new track

Returns: { success, trackName }

timeline_add_animation_track

Add an Animation track to a Timeline, optionally binding an object.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringNo"Animation Track"Name of the new track
bindingObjectNamestringNo-Name of the GameObject to bind (animator)

Returns: { success, trackName, boundObject }

timeline_add_activation_track

Add an Activation track to control object visibility.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringNo"Activation Track"Name of the new track

Returns: { success, trackName }

timeline_add_control_track

Add a Control track for nested Timelines or prefab spawning.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringNo"Control Track"Name of the new track

Returns: { success, trackName }

timeline_add_signal_track

Add a Signal track for event markers.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringNo"Signal Track"Name of the new track

Returns: { success, trackName }

timeline_remove_track

Remove a track by name from a Timeline.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringYes-Name of the track to remove

Returns: { success, removed }

timeline_list_tracks

List all tracks in a Timeline.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path

Returns: { count, tracks: [{ name, type, muted, clipCount }] }

timeline_add_clip

Add a clip to a track by track name.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringYes-Name of the target track
startdoubleNo0Clip start time in seconds
durationdoubleNo1Clip duration in seconds

Returns: { success, trackName, clipStart, clipDuration }

timeline_set_duration

Set Timeline duration and wrap mode.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
durationdoubleNo0Fixed duration in seconds
wrapModestringNo-Wrap mode: Hold/Loop/None

Returns: { success, duration, wrapMode }

timeline_play

Play, pause, or stop a Timeline (Editor preview).

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
actionstringNo"play"Action: play/pause/stop

Returns: { success, action, time }

timeline_set_binding

Set the binding object for a track.

ParameterTypeRequiredDefaultDescription
namestringNo-GameObject name with PlayableDirector
instanceIdintNo0GameObject instance ID
pathstringNo-GameObject hierarchy path
trackNamestringYes-Name of the track
bindingObjectNamestringYes-Name of the object to bind

Returns: { success, trackName, boundTo }

Exact Signatures

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

Saved skills