Files

21 KiB

Pipeline Documentation

com.unity.pipeline lets a client — CLI, CI, or an agent — drive a running Unity Editor (or a development Player) over a local HTTP API by executing registered commands. This is the documentation index; the README has the full narrative overview, install steps, and CLI walkthrough.

Guides

Page What it covers
Creating commands The command-authoring API: [CliCommand]/[CliArg], the handler + response pattern, and the MainThreadRequired / RuntimeOnly flags.
Creating authoring commands Building content-authoring commands: the authoring root sandbox, ObjectRef in / AuthoringResult out, and undo grouping — with a worked example for a new content type.
Safety & mutations Conventions shared by state-changing commands: the confirm/dry_run gate, Undo grouping via AuthoringUndoScope, and the path sandbox.
Connectivity How servers bind localhost, the port ranges, the port/descriptor file, and the bearer-token auth workflow.
Runtime connection & setup Running the server in a development Player via RuntimePipelineManager and the dev-build gating.
Hot reload The two hot-reload flavors (in-place and override) with examples, plus the Roslyn / in-memory-assembly architecture.
Tests architecture Writing command tests via PipelineClient (over HTTP) and via direct command calls.

Command reference

Page Commands
Asset & file commands Create / import / move / copy / rename / delete / find assets, import settings, folders, text files.
Scene commands Create / open / save scenes, build-settings list, hierarchy, active scene.
GameObject & component commands Create / find / transform / parent / tag / layer GameObjects; add / remove / read / set components.
Prefab commands Create, instantiate, variant, apply / revert overrides, unpack, edit prefab contents.
Script commands Create and attach scripts; get / set serialized fields.
Animation commands Create AnimationClips (+ curves), AnimatorControllers (parameters / layers / states / transitions), and Timeline assets.
Material & shader commands Read / set material shader properties and keywords; list and introspect shaders.
Baking commands Bake / clear lighting, NavMesh, and occlusion culling (async — poll the matching *_bake_status).
Navigation & selection commands Read / set the Editor selection; run Unity Search queries.
Capture commands Screenshot the game / scene view and capture UI Toolkit visual elements.
Build, compilation & test commands Build the Player, switch build target, read/write build settings, list targets/profiles, recompile scripts, and run tests (async — poll the matching *_status).
Project settings commands Read / change Audio, Graphics, Input, Physics, Player, Quality, Tags & Layers, and Time settings (get_*/set_*, gated by confirm/dry_run).
Package Manager commands List / search / add / remove / resolve UPM packages and poll operation status.
Editor lifecycle & observability commands Play / stop / pause, focus, menus, screenshots, console logs, performance stats, authoring root.
Runtime commands Player-side commands: status, quit, frame rate, time scale, log, console, eval, hot reload.

Command index

Every available command, grouped by area. Each name links to its full reference (parameters + return type).

Asset & file commands

Command Description
create_asset Create a ScriptableObject / Object asset at a path.
import_asset Import an external file into the project.
move_asset Move / rename an asset (keeps its GUID).
copy_asset Copy an asset (fresh GUID).
rename_asset Rename an asset in place.
delete_asset Delete an asset (needs confirm).
find_assets Find assets by type / name / label.
set_import_settings Set an asset's importer settings and re-import.
get_import_settings Read an asset's importer settings.
create_folder Create a folder under the authoring root.
read_text_file Read a UTF-8 text file.
write_text_file Write a UTF-8 text file, then import it.

Scene commands

Command Description
create_scene Create and save a new scene.
open_scene Open an existing scene.
save_scene Save an open scene.
save_all Save all dirty open scenes.
list_open_scenes List open scenes and their state.
set_active_scene Set which open scene is active.
get_scene_hierarchy Return a scene's GameObject tree.
add_scene_to_build Add a scene to Build Settings.
remove_scene_from_build Remove a scene from Build Settings.

GameObject & component commands

Command Description
create_gameobject Create a GameObject or primitive.
create_gameobjects Batch-create GameObjects / primitives.
find_gameobjects Find GameObjects by name / tag / component / path.
set_transform Set local position / rotation / scale.
set_parent Reparent a GameObject (or detach to root).
set_active Set a GameObject's active state.
set_tag Set a GameObject's tag.
set_layer Set a GameObject's layer.
rename_gameobject Rename a GameObject.
delete_gameobject Delete a GameObject (undoable).
add_component Add a component by type name.
remove_component Remove a component.
get_component_properties Read a component's serialized properties.
set_component_properties Set a component's serialized properties.

Prefab commands

Command Description
create_prefab Save a GameObject as a prefab.
instantiate_prefab Instantiate a prefab into a scene.
create_prefab_variant Create a prefab variant.
apply_prefab_overrides Apply instance overrides to the source.
revert_prefab_overrides Revert instance overrides.
unpack_prefab Unpack a prefab instance.
save_prefab_contents Edit a prefab in an isolated stage and save.

Script commands

Command Description
create_script Create a C# script from a template.
attach_script Attach a MonoBehaviour by type / asset.
set_serialized_field Set a serialized field on a component / asset.
get_serialized_fields Read serialized fields.

Animation commands

Command Description
create_animation_clip Create an empty .anim AnimationClip.
set_animation_curve Add / replace a float curve on a clip.
get_animation_clip Read a clip's curves and metadata.
remove_animation_curve Remove a curve binding (needs confirm).
create_animator_controller Create an .controller AnimatorController.
add_animator_parameter Add a parameter to a controller.
add_animator_layer Add a layer to a controller.
add_animator_state Add a state to a layer.
add_animator_transition Add a transition between states.
get_animator_controller Read a controller's full structure.
create_timeline Create a .playable Timeline asset.
add_timeline_track Add a track to a Timeline.
add_timeline_clip Add a clip to a Timeline track.
get_timeline Read a Timeline's structure.

Material & shader commands

Command Description
get_material_properties Read a material's shader and properties.
set_material_properties Set material shader properties / keywords.
list_shaders Discover available shaders.
get_shader_properties Introspect a shader's property list.

Baking commands

Command Description
bake_lighting Async lightmap bake (poll lighting_bake_status).
lighting_bake_status Status of the last lighting bake.
cancel_lighting_bake Cancel an in-progress lighting bake.
clear_baked_lighting Clear baked lightmaps (needs confirm).
get_lighting_settings Read the active LightingSettings.
set_lighting_settings Apply a subset of lighting settings.
bake_navmesh Async legacy NavMesh bake (poll navmesh_bake_status).
navmesh_bake_status Status of the last NavMesh bake.
cancel_navmesh_bake Cancel an in-progress NavMesh bake.
clear_navmesh Clear the baked NavMesh (needs confirm).
get_navmesh_settings Read legacy NavMesh bake settings.
set_navmesh_settings Apply a subset of NavMesh settings.
bake_navmesh_surfaces Bake NavMeshSurface components (AI Navigation).
bake_occlusion_culling Async occlusion bake (poll occlusion_bake_status).
occlusion_bake_status Status of the last occlusion bake.
cancel_occlusion_bake Cancel an in-progress occlusion bake.
clear_occlusion_culling Clear baked occlusion data (needs confirm).

Navigation & selection commands

Command Description
get_selection Read the current Editor selection.
set_selection Set the Editor selection.
search Run a Unity Search query.

Capture commands

Command Description
capture_game_view Render a camera to a PNG (base64).
capture_scene_view Render the Scene View to a PNG (base64).
capture_editor_element Capture a UI Toolkit element from an EditorWindow (6000.7+).
capture_runtime_element Capture a UI Toolkit element from a runtime panel (6000.7+).

Build, compilation & test commands

Command Description
build Async Player build (poll build_status).
build_status Status / report of the current build.
switch_build_target Switch the active build target (needs confirm).
switch_build_target_status Status of the last target switch.
list_build_targets List known build targets.
get_build_settings Read build configuration.
set_build_settings Set build configuration fields.
list_build_profiles List Build Profile assets (Unity 6).
recompile Force a script recompile (poll recompile_status).
recompile_status Status of the last recompile.
list_tests List available tests without running.
run_tests Run Unity tests with filters.
test_status Status of async test execution.
cancel_tests Cancel running tests.

Project settings commands

Command Description
get_audio_settings Read Audio settings.
set_audio_settings Change Audio settings (needs confirm).
get_graphics_settings Read Graphics settings.
set_graphics_settings Set the default render pipeline (needs confirm).
get_input_settings Read legacy Input Manager axes.
set_input_settings Tune a legacy input axis (needs confirm).
get_physics_settings Read Physics settings.
set_physics_settings Change Physics settings (needs confirm).
get_player_settings Read PlayerSettings.
set_player_settings Change PlayerSettings (needs confirm).
get_quality_settings Read QualitySettings.
set_quality_settings Change QualitySettings (needs confirm).
get_tags_layers Read tags and layers.
set_tags_layers Add / remove tags, name layers (needs confirm).
get_time_settings Read Time settings.
set_time_settings Change Time settings (needs confirm).

Package Manager commands

Command Description
package_list List packages by scope.
package_search Search the registry.
package_add Add a UPM package (needs confirm).
package_remove Remove a UPM package (needs confirm).
package_resolve Resolve / refresh packages.
package_status Status of the last package operation.

Editor lifecycle & observability commands

Command Description
editor_play Enter play mode.
editor_stop Exit play mode.
editor_pause Pause play mode.
editor_status Detailed Editor status.
editor_focus Bring the Editor to the foreground.
menu Execute (or list) Editor menu items.
screenshot Capture Scene / Game view to a PNG file.
set_autotick Keep the editor ticking while unfocused.
get_console_logs Read captured Editor console logs.
clear_console Clear the console / log buffer.
get_performance_stats Read render / memory / frame stats.
get_authoring_root Get the authoring-root folder.
set_authoring_root Set the authoring-root folder.

Runtime commands

Command Description
runtime_status Runtime application status.
quit Quit the application.
set_target_framerate Set the target frame rate.
set_timescale Set the time scale.
simulate_key Simulate a keyboard event (Input System).
simulate_pointer Simulate a pointer event (Input System).
log Write a message to the Unity console.
console Read captured console output.
eval Evaluate C# via Roslyn.
eval_file Evaluate C# from a .cs file.
reload_file Apply in-place [HotReload] edits from a file.
reload_file_override Compile & apply override hot reload.
hotreload_status Hot reload registry status.
cleanup_hotreload Clear old hot reload DLLs / registry.