Пакет Unity Pipeline и Unity CLI: Инструкция по установке и пошаговое руководство

Aug 13, 2026
установка пакета Unity Pipeline

Основные выводы

  • Пакет Unity Pipeline работает внутри редактора Unity и предоставляет доступ к командам через HTTP и JSON API.
  • Unity CLI — это автономный клиент, позволяющий терминалам, агентам и сценариям автоматизации выполнять эти команды.
  • Встроенные и пользовательские команды поддерживают повторяющиеся рабочие процессы, такие как настройка проекта, перекомпиляция, тестирование и управление во время выполнения.
  • Один и тот же контракт команд может использоваться для работы с интерфейсом командной строки Unity , рабочими процессами агентов и пользовательскими интерфейсами.

Обзор

Unity CLI — бесплатный сервис, находящийся в стадии бета-тестирования. В сочетании с пакетом Unity Pipeline вы сможете управлять редактором из терминала для непрерывной интеграции, написания скриптов и работы с агентами искусственного интеллекта.

Пакет Unity Pipeline добавляет в редактор Unity легковесный сервер, позволяющий ему напрямую взаимодействовать с терминалом или другими инструментами по стандартным веб-протоколам. Вы можете запускать такие команды, как проверка состояния, компиляция или запуск тестов, извне. Поскольку эти операции выполняются асинхронно, они остаются активными даже при перезагрузке редактора после изменения скрипта. Такая настройка делает вашу автоматизацию последовательной, предсказуемой и простой в написании скриптов.

Инструкция по установке

Компоненты

  • Unity CLI : Unity CLI — это автономный исполняемый файл, устанавливаемый отдельно от редактора, который подключается к запущенному редактору и управляет им из терминала. Для работы пакета Pipeline требуется Unity версии 6.0 или более поздней.
  • Пакет Unity Pipeline : устанавливается в проект (com.unity.pipeline) через командную строку. Данный пакет запускается внутри редактора и автоматически запускает локальный сервер при загрузке редактора.
  • Команды : Каждая команда представляет собой функцию в проекте, помеченную соответствующим тегом, чтобы Unity автоматически её регистрировала. Встроенные команды охватывают режим воспроизведения, состояние, перекомпиляцию и запуск тестов, с возможностью добавления собственных команд.
  • Оценка: Этот код запускает C# непосредственно внутри работающего экземпляра Unity (редактора или запущенной сборки) для выполнения разовых действий. Он выполняет произвольные коды C# и защищен токеном безопасности; рассматривайте его как удаленное выполнение кода и используйте только для локальной разработки.
тест

Архитектура

  • Клиенты : Вызывающая сторона, например, терминал , агент , система CI/CD или пользовательский интерфейс.
  • Unity CLI : Основной клиент, преобразующий команды в вызовы API ; пользовательский интерфейс также может напрямую взаимодействовать с протоколом.
  • Протокол: HTTP + JSON и договор между клиентом и Unity.
    • Любой клиент, способный отправлять HTTP-запросы, может управлять Unity на любом языке программирования. По умолчанию сервер подключается к localhost, поэтому клиенты работают на той же машине, что и редактор; удаленные пользователи получают к нему доступ по любому сетевому пути, который вы укажете.
  • Пакет Unity Pipeline : Установлен в проекте, автоматически запускается вместе с редактором.
    • Пакет Pipeline содержит два сервера: сервер редактора (режим воспроизведения, статус, перекомпиляция, запуск тестов, настройка проекта) и сервер среды выполнения (редактирование в реальном времени в процессе сборки через менеджер конвейера среды выполнения).

Настройка

Шаг 1: Установите Unity CLI.

Unity CLI — это автономный исполняемый файл (экспериментальная версия). Установите его с помощью скрипта или через менеджер пакетов, затем проверьте. Полные инструкции см. в документации Unity CLI .

# macOS / Linux — install script

curl -fsSL https://public-cdn.cloud.unity3d.com/hub/prod/cli/install.sh | UNITY_CLI_CHANNEL=beta bash

# macOS / Linux — Homebrew (keeps it current)

brew install --cask unity-cli

# Windows — PowerShell install script

$env:UNITY_CLI_CHANNEL='beta'; irm https://public-cdn.cloud.unity3d.com/hub/prod/cli/install.ps1 | iex
unity --version          # verify it's on your PATH

Шаг 2: Войти

Для управления редактором требуется авторизованная сессия:

unity auth login         # opens a browser sign-in flow

unity auth status        # confirm you're signed in

Шаг 3: Добавьте пакет Unity Pipeline в проект.

Пакет Unity Pipeline запускается внутри редактора и подключается к интерфейсу командной строки Unity . Если вы устанавливаете его из терминала, убедитесь, что находитесь в корневой директории проекта Unity , в который хотите установить программу. Выполните команду `unity pipeline install` , и по умолчанию она выберет текущий каталог или запущенный редактор. Вы также можете добавить com.unity.pipeline через менеджер пакетов. См. документацию по пакету Unity Pipeline.

unity pipeline install

После установки редактор автоматически запускает сервер. Проверьте новое меню «Конвейер» , чтобы убедиться.

Шаг 4: Подключитесь и перечислите команды.

После установки пакета подключитесь к запущенному редактору и выведите список того, что можно автоматизировать с помощью скриптов:

unity command            # list this project's commands

В список входят встроенные команды (режим воспроизведения, статус, перекомпиляция, запуск тестов), а также любые пользовательские команды. Они работают с любым агентом без дополнительной настройки.

Запустите редактор из терминала.

Перейдите в режим воспроизведения, запустите тесты, просмотрите список целей сборки или сделайте снимок экрана.

unity command editor_play

unity command run_tests

unity command list_build_targets

unity command screenshot

Результаты выполнения заданий детерминированы, и приведенный выше пример — лишь малая часть; в Unity List отображается вся встроенная функциональность (сцены, префабы, материалы, анимация, запекание освещения/NavMesh, сборки, скриншоты, пакеты и многое другое).

Пользовательские команды

Пользовательские команды объединяют ряд действий в один вызов из командной строки. Команда — это помеченная функция в проекте. Примеры:

  • Запустить тесты и отправить уведомление: Запустите тестовый набор и отправьте результаты команде за один звонок.
  • Сообщить о неиспользуемых активах: Просканируйте проект и составьте список ресурсов, не имеющих ссылок, для удаления перед сборкой.

Письменная команда является детерминированной и воспроизводимой: один и тот же вызов – один и тот же результат, что также упрощает ее передачу агенту.

Управление во время выполнения

Сервер среды выполнения управляет запущенной сборкой. Включите эту функцию, добавив пустой объект GameObject, добавив компонент Runtime Pipeline Manager и установив флажок «Включить в сборках» . При запущенной сборке, в терминале:

  • Замедлить, приостановить или возобновить время.
  • Изменяйте значения на лету, масштабируйте или перемещайте объект GameObject во время выполнения.
  • Меняйте ресурсы и эффекты во время выполнения.

Для повторяющихся действий пишите команды, которые будут включены в игру (изменение параметров игрового процесса, переопределение игровых режимов). Она является детерминированной, воспроизводимой и вызываемой агентом.

Агенты и оценка

Любая команда доступна любому агенту через CLI или режим MCP: встроенные команды, пользовательские команды и команда eval. У агента есть две передачи:

  • Детерминированные именованные команды для повторяющихся шагов
  • Выполнить одноразовую команду в C#, когда команда еще не существует.

Примером использования может служить ситуация, когда агент использует функцию eval для создания или изменения чего-либо, выполняет детерминированную команду для проверки её работы, делает снимок экрана и сравнивает изображение с приглашением командной строки, повторяя процесс до тех пор, пока не будет найдено совпадение. Функция eval — это произвольный код C# с ограничением по токенам, поэтому область действия агента ограничена.

Безопасность

Пакеты Unity CLI и Pipeline предназначены для локальной разработки, а не для выпускаемых игр. По умолчанию все данные остаются на вашем компьютере; программа работает только во время разработки, а запуск кода в реальном времени (eval) ограничен ключом доступа для каждого проекта, поэтому агент не сможет выполнить произвольный код C# в вашем редакторе без него. Передача командной строки агенту ИИ — это как предоставление любому помощнику доступа к вашему компьютеру: он может делать то же, что и вы, поэтому решайте, к чему вы его пускаете, и используйте команду eval только для локальной работы.

Больше ресурсов

Документация по командной строке Unity

Документация по пакету Unity Pipeline