Unity CLI, Pipeline и agent skills¶
Настройка проверена 11 октября 2026 года. Корень Git-репозитория: C:\Projects\IdleWorldDomimation. Корень Unity-проекта: C:\Projects\IdleWorldDomimation\IdleWorldDominationUnity.
Установленные компоненты¶
| Компонент | Состояние |
|---|---|
| Unity CLI | Обновлён с 1.0.0-beta.11 до 1.0.0-beta.13; %LOCALAPPDATA%\Unity\bin\unity.exe |
| Unity Editor | Проект использует 7000.0.0a7, согласно ProjectSettings/ProjectVersion.txt |
| Unity Pipeline | com.unity.pipeline версии 0.8.0-exp.1 уже установлен в Packages/manifest.json; обновление не требовалось |
| Авторизация | unity auth status подтвердил активную сессию; секреты не записываются в проект |
| Официальные skills | Все 34 skills из Unity-Technologies/skills, ревизия 9d282100540601cfddc4bbd69f36a239d7a6f55c |
| Skills плагина ArkTarusov | Все 3 skills из ArkTarusov/unity-cli-plugin, ревизия 1b8611dbd61eef663d4aa65d1b289cf5c033b5ad |
Skills установлены через skill-installer в C:\Users\vova\.codex\skills, вместе с их references и scripts. Для другой машины каталог определяется через $CODEX_HOME/skills либо $HOME/.codex/skills. Они доступны агенту со следующего сообщения. Репозиторий игры содержит инструкции, а сами skills являются локальной установкой пользователя.
ArkTarusov установлен в формате Agent Skills, который поддерживает его README для Codex; отдельная регистрация в меню Plugins не выполнялась. Его skill unity-pipeline переименован в unity-pipeline-operations, включая frontmatter и ссылки из unity-cli-core, чтобы не конфликтовать с официальным unity-pipeline. Остальные файлы skills сохранены в исходном виде.
Проверка и команды¶
Set-Location 'C:\Projects\IdleWorldDomimation\IdleWorldDominationUnity'
$unityCli = Join-Path $env:LOCALAPPDATA 'Unity\bin\unity.exe'
$unityProject = (Get-Location).Path
& $unityCli --version
& $unityCli --json --non-interactive auth status
& $unityCli --json --non-interactive pipeline list
& $unityCli --json --non-interactive status --project-path $unityProject
& $unityCli --json --non-interactive command --project-path $unityProject editor_status
# В beta.13 вызов без фильтра выводит теги, а не полные схемы команд.
& $unityCli --json --non-interactive command --project-path $unityProject --query console --detail full
& $unityCli --json --non-interactive command --project-path $unityProject recompile_status
& $unityCli --json --non-interactive command --project-path $unityProject console --level error --tail 50
& $unityCli --json --non-interactive command --project-path $unityProject console_status
В pipeline list найти именно этот проект и проверить isRunning, hasPipelinePackage, pipelineServer.isReachable: все должны быть true. Порт назначается динамически; не фиксировать текущий порт в командах. Проверять код завершения, JSON success, параметры data.parameters и результат операции.
Работать через уже открытый Editor. Не запускать вторую копию или batchmode для того же открытого проекта. Для длительных операций читать соответствующий *_status до завершения. Перед изменениями C# при неактивном окне Editor включить set_autotick --enable true, выполнить recompile и дождаться успешного recompile_status.
Команда get_console_logs --severity error --limit 50 из прежних инструкций отсутствует. Проверенная замена: console --level error --tail 50; console_status отдельно показывает состояние буфера и Console. Команды и параметры сверять с живой схемой, поскольку версии CLI и Pipeline меняются.
Результат проверки: целевой Editor отвечает ready, Pipeline доступен, recompile_status сообщает completed, failed=false, compilationFailed=false. Проверены 37 установленных skills без повторяющихся frontmatter name. Буфер Console содержит исторические ошибки UI, Addressables и предыдущих компиляций; это не чистый журнал текущей задачи. Проверочный вызов устаревшего get_console_logs также добавил диагностическую запись об отсутствующей команде; журнал не очищался. Игровое поведение и ручные acceptance checks не проверялись. Изменения категории feature затрагивают только инструменты и документацию; established/core code не менялся.
Установка на другой машине и обновление¶
Официальные инструкции: Unity CLI и Pipeline package.
Проверить CLI в PATH и по указанному выше абсолютному пути. Если его действительно нет, скачать и выполнить официальный PowerShell installer https://unity.com/install.ps1, затем открыть новую оболочку и проверить unity --version. Обновление: unity self-update --check --json, затем unity self-update --yes в рамках авторизованной задачи настройки инструментов.
Если Pipeline отсутствует, после авторизации выполнить из корня Unity-проекта:
unity auth login
unity --json --non-interactive pipeline install --project-path . --package-version 0.8.0-exp.1
unity --json --non-interactive pipeline list
Дождаться загрузки пакета и завершения компиляции. Не выполнять --force при уже установленном актуальном пакете без необходимости.
Для повторной установки skills использовать skill-installer/scripts/install-skill-from-github.py из локального каталога системных skills Codex:
- Официальный репозиторий:
--repo Unity-Technologies/skills --ref 9d282100540601cfddc4bbd69f36a239d7a6f55c --path <каталоги skills/* с SKILL.md>; установить все 34 каталога, включая references/scripts. - ArkTarusov:
--repo ArkTarusov/unity-cli-plugin --ref 1b8611dbd61eef663d4aa65d1b289cf5c033b5ad --path skills/unity-cli-core skills/unity-editors. - Отдельно ArkTarusov Pipeline:
--repo ArkTarusov/unity-cli-plugin --ref 1b8611dbd61eef663d4aa65d1b289cf5c033b5ad --path skills/unity-pipeline --name unity-pipeline-operations; затем изменить frontmatternameнаunity-pipeline-operationsи соответствующие ссылки вunity-cli-core/SKILL.md.
Installer отказывается перезаписывать существующие каталоги. Перед авторизованным обновлением сохранить их резервные копии, установить выбранную ревизию и повторить переименование ArkTarusov. Обновить таблицу версий и проверить подключение. Общая команда npx skills add из upstream README не учитывает локальное переименование одинаковых skills.
Приоритет инструкций¶
Следовать ../AGENTS.md и ../IdleWorldDominationUnity/AGENTS.md. Официальный unity-cli служит актуальным справочником; unity-pipeline описывает цикл Editor; unity-pipeline-operations дополняет правилами аргументов, сохранения сцен и восстановления. Для конкретной подсистемы читать соответствующий официальный skill.
Примеры из upstream skills не отменяют правила проекта: сцены, префабы и сериализованные assets изменяются через Pipeline; YAML, миграционные editor scripts и menu commands для таких изменений запрещены. Проверка инструментов не подтверждает игровое поведение: игровые acceptance checks остаются ручными.