20 CLI commands in 10 min

Oct 8, 2026|10 Min
Thomas Krogh-Jacobsen
Thomas Krogh-Jacobsen - Unity Technologies
Senior Technical Content Marketing Manager

Para tu comodidad, tradujimos esta página mediante traducción automática. No podemos garantizar la precisión ni la confiabilidad del contenido traducido. Si tienes alguna duda sobre la precisión del contenido traducido, consulta la versión oficial en inglés de la página web.

En nuestro último artículo vimos cómo empezar con la Unity CLI y el paquete Pipeline. Si no has probado ninguno antes o simplemente necesitas un repaso, échale un vistazo aquí.

En este artículo queríamos compartir algunos comandos más que puedes añadir a tu caja de herramientas de desarrollador. Con más de 140 comandos, y más que se añaden con cada actualización, no necesitas aprenderlos todos. Sin embargo, memorizar algunos de los comandos esenciales y saber qué más opciones están disponibles te preparará para aprovechar mejor los flujos de trabajo de desarrollo de IA. Siéntete libre de hojear y seleccionar aquellos que son nuevos y omitir los que ya conoces. Vamos a sumergirnos.

Una breve advertencia antes de entrar en los detalles: se están añadiendo nuevas características y mejoras frecuentemente. En el momento de escribir esto, estoy usando la versión 1.0.0-beta.10 de Unity CLI combinada con 0.6.0-exp.1 del paquete com.unity.pipeline y Unity 6000.6.0f1. Como tal, las cosas pueden cambiar en el futuro y si encuentras problemas, consulta la documentación de la CLI de Unity: https://docs.unity.com/en-us/unity-cli/use-unity-cli.

1. Usa --help para cualquier comando

Probablemente ya sabes y has usado el comando unity --help. Sin embargo, --help se puede adjuntar a cualquier nivel de un comando anidado para obtener documentación instantánea. Cuando tengas dudas, simplemente añade --help al final.

Aquí hay algunos ejemplos:

Probablemente ya sabes y has usado el comando unity --help. Sin embargo, --help se puede adjuntar a cualquier nivel de un comando anidado para obtener documentación instantánea. Cuando tengas dudas, simplemente añade --help al final.

Aquí hay algunos ejemplos:
# Documentación para obtener todos los editores disponibles

editores de unity --help

# Obtener parámetros para instalar un módulo específico

unity install-modules --help

# Ayuda para comandos de Authentication

unity auth --help

# Ayuda para el comando de inicio de sesión específicamente

unity auth login --help

Cada pantalla de ayuda mostrará instantáneamente exactamente lo que hace el comando, qué opciones están disponibles y qué argumentos espera.

La bandera --help es también lo que usan los agentes para explorar la herramienta, por lo que al iniciar una sesión nueva con su CLI puede pedir a su agente que ejecute --help para asegurarse de que está conectado.

2. Enumera los comandos

Hablando de documentación y de encontrar tu camino entre las muchas opciones disponibles, también está este comando (cuando se ejecuta sin argumentos):

comando unity

Este comando se conecta a un Editor de Unity en ejecución a través del servidor local del paquete Pipeline y te da una lista de cada comando registrado que la API de Editor expone a la shell y el agente puede usar para trabajar dentro de Unity.

Un ejemplo de una forma de usar comandos podría ser:
unity command editor_play


Para hacer que el Editor conectado entre en Modo Reproducción (nuestro equivalente CLI de hacer clic en el botón Reproducir) para que tus scripts comiencen a ejecutarse sin tener que tocar la interfaz de usuario del Editor. De manera similar, el contraparte es:
unity command editor_stop


Para asegurar que tu agente esté al tanto de lo que puede hacer la CLI (y porque a veces se siente como una caja negra), un consejo que puedes usar al comenzar un nuevo prompt es ser más exploratorio y darle a Claude, Codex, etc. contexto sobre lo que puede hacer la CLI. Puedes hacer eso ejecutando un comando como:
Ejecuta "unity command" en un bash y dime qué puede hacer, y prueba un simple comando "eval"

3. Verificando estado y ejecutando múltiples instancias

Si necesitas comprobar si Unity CLI se está ejecutando, puedes usar simplemente el comando:
estado de Unity
Debería devolver algo como esto:
Editor de Unity (puerto 7800): readyProject: /Users/thomaskr/Github/UnityProjects/MyAwesomeProjectVersion: 6000.6.0d1PID: 85009
Si ves el estado ready junto a la primera línea, significa que el Editor está activo y accesible. También confirma en qué puerto está el Editor, la ruta del Proyecto, la Versión del Editor y un identificador de proceso (PID).

unity status ya enumera cada Editor conectado, por lo que responde "¿cuáles están ejecutándose?" por sí mismo. Cuando necesitas saber específicamente cuáles de esos proyectos tienen instalado y accesible el paquete Pipeline, usa:
# canal

lista de pipeline de unity
Que muestra cada proyecto de Unity que la CLI conoce que tiene el paquete Pipeline en ejecución, enumerando cada proyecto junto con su puerto de servidor y si es actualmente accesible.

Cuando varios editores se ejecutan como en el ejemplo anterior, puedes apuntar a uno pasando --project-path con su ruta de proyecto. De lo contrario, la CLI elige el Editor cuyo proyecto contiene el directorio actual.

4. Banderas cortas y largas

La mayoría de los comandos también ofrecen un atajo de una sola letra diseñado para una escritura rápida en su flujo de trabajo diario en la terminal. Así que en lugar de ejecutar unity --help también puedes usar unity -h, ambos te dan la misma respuesta pero te ahorran algunas pulsaciones de teclas.

unity --help # Versión de bandera larga (mejor legibilidad)

unity -h # Versión con bandera corta (más rápido en el día a día)

5. Revisa el tamaño de tu proyecto

Si buscas liberar espacio, este comando puede ayudarte a identificar rápidamente el tamaño de tus proyectos de Unity:


Huella de disco por carpeta para un proyecto, para que puedas ver cuánto es regenerable (Biblioteca/Temporal)

tamaño de proyectos de unity

# Resumir cada proyecto registrado, ordenado por tamaño

tamaño de proyectos de unity --all

6. Controlar el formato de salida

Por defecto, los comandos devuelven texto legible por humanos, pero puedes cambiar el formato a JSON cuando un script necesita JSON anidado limpio para analizar. Por defecto, usa salida legible por humanos cuando tu agente esté leyendo un resultado pequeño y plano directamente y no necesite analizarlo programáticamente, cambia a --format json una vez que la respuesta tenga una estructura o tamaño que de otro modo requeriría adivinar con expresiones regulares contra un formato que no está garantizado que se mantenga estable.


JSON legible por máquina

unity editors list --format json

Formato amigable para humanos

lista de editores de unity --format human

7. Previsualizar la instalación del módulo sin descargar

Antes de comprometerte con la descarga y el espacio en disco que ocupan los módulos grandes, puedes usar --dry-run, que te mostrará exactamente qué módulos se instalarían y su tamaño combinado, sin descargar nada.

unity install-modules --module android ios --dry-run

Hacer una prueba de ejecución te proporciona un buen resumen de cómo se verá el proyecto completo.

8. Inspecciona la configuración de una compilación antes de comprometerte con el tiempo de compilación

No hay --dry-run para compilaciones, pero aún puedes validar la forma de una antes de pagar por una compilación. unity build requiere --target o --profile, y varias banderas salen antes de que ocurra cualquier compilación, lo que detecta un objetivo incorrecto o un perfil de compilación faltante en segundos en lugar de minutos.

# Prueba tu compilación antes de ejecutarla

unity build --list-targets

# Listar perfiles

unity build --list-profiles

9. Instalar una versión específica del Editor con todos los módulos a la vez

Para entornos de CI donde la reproducibilidad es importante, puedes instalar una versión exacta del Editor sin el Hub. La versión es un argumento posicional, --cm importa automáticamente módulos hijos, y los módulos de plataforma con nombre provienen del comando separado install-modules.

# La versión es posicional, no una bandera --version

unity install 6000.6.0f1

# Incluir módulos hijos automáticamente

unity install 6000.6.0f1 --cm

# Añadir módulos de plataforma (comando separado, soporta --dry-run)

unity install-modules --module android ios webgl

10. Proceso de instalación y actualización del editor desde la terminal

En lugar de usar el Hub para administrar tu proceso de instalación, usa el comando básico unity install, que te dará una lista de todas las versiones del Editor disponibles que luego puedes instalar sin abrir el Hub.

Guía de instalación interactiva

instalar unity

Una vez que hayas instalado las nuevas versiones, puedes actualizar el proyecto usando el comando upgrade especificando la ruta de la carpeta de tu proyecto y la versión a la que deseas actualizar:
# Reemplace la ruta del proyecto y la versión del editor según sea necesario para su proyecto

unity projects upgrade /Users/thomaskr/Github/UnityProjects/CLIDemo --to 6000.6.0f1

En la captura de pantalla de arriba puedes ver cómo se realizó la actualización en un simple comando de línea.

11. Crear un proyecto desde la terminal

Puedes crear nuevos proyectos a través de la CLI con solo unos pocos comandos:


#La plantilla interactiva predeterminada

unity projects create "CLI demo"

Ejecutar el modo estándar te da un asistente interactivo que te guía a través del proceso. Simplemente elige la versión del editor que deseas usar, enlaza a Unity Cloud y elige plantillas y versiones del Editor durante la creación, lo que facilita mucho configurar un nuevo proyecto de manera similar a como lo harías en el Hub.

Sin embargo, a diferencia del Hub, también puedes automatizar tus configuraciones, en caso de que tengas un flujo de trabajo de configuración frecuente simplemente definiendo las opciones como desees. Aquí hay un ejemplo donde defines una versión de editor específica, una plantilla y una ruta de proyecto.


#Con plantilla (3D, 2D, VR, etc. - simplemente reemplaza los marcadores de posición)

unity projects new "CLI demo" --editor-version 6000.6.0b9 --template com.unity.template.3d --path ~/MyProjects

12. Capturar capturas de pantalla

Si necesitas capturar capturas de pantalla en tus flujos de trabajo, tienes tres comandos diferentes disponibles.

# Capturar la escena o la vista del juego en un archivo PNG, devuelve la ruta. Params: --view, --output, --width, --height

Vista de juego

# Nota: La UI de superposición en el espacio de pantalla NO está en la salida de una cámara, por lo que devuelve negro

captura de pantalla de comando unity --view juego

Vista de escena

captura de pantalla del comando unity ---ver escena

# Capturar a una resolución y cámara específicas, obtener base64 de vuelta en línea

# Lee el búfer de retroceso compuesto, por lo que se incluye la interfaz de usuario superpuesta. Solo Modo de Juego.

unity command capture_game_view --width 1920 --height 1080 --camera "Main Camera" --save_path Screenshots/check.png

El resultado se verá algo así:

Esto puede ser útil para el ciclo de verificación de "implementar esto, tomar una captura de pantalla, comparar con el diseño" de la propia guía de mejores prácticas de Claude Code, ya que la imagen regresa como datos sobre los que el agente puede razonar inmediatamente en lugar de una ruta que luego tiene que abrir por separado.

13. Changelog

Debido a que se están agregando nuevas características rápidamente al paquete Unity CLI y Pipeline, un comando útil que me gusta usar es el registro de cambios, que puedes obtener simplemente ejecutando:

registro de cambios de Unity

Resume los cambios recientes dándote una visión general rápida de lo que debes tener en cuenta y quizás nuevos comandos para probar.

14. Ejecutar C# con Eval

Cuando el paquete Unity Pipeline se está ejecutando dentro de tu Editor, la CLI puede compilar y ejecutar fragmentos de C# en vivo en el Editor usando el comando eval. Debido a que no hay recompilación a nivel de proyecto ni recarga de dominio, se ejecuta en milisegundos en lugar de hacerte esperar. Puedes usar esto para ejecutar scripts de configuración automatizados, consultar estados del editor o incluso ejecutar archivos de script C# desde tu disco usando unity command eval_file --file path/to/script.cs.

# Devuelve verdadero si el Editor está actualmente en Modo Juego

unity command eval --code "return UnityEditor.EditorApplication.isPlaying;"

# Registrar una cadena simple en la ventana de la consola

unity command eval --code 'Debug.Log("Fui invocado en la terminal");'

15. Pruebas

La herramienta de pruebas de Unity, también llamada Unity Test Framework, se puede ejecutar directamente desde la CLI.

Unity divide los tests en dos categorías, y la diferencia importa mucho una vez que un agente los ejecuta repetidamente:

  • Pruebas de Modo Edición: se ejecutan instantáneamente, sin presionar Play. Bueno para probar lógica simple (matemáticas, manejo de datos, clases no MonoBehaviour).
  • Pruebas de Modo de Juego: ejecuta brevemente tu juego, de la manera en que lo experimentaría un jugador. Más lento, porque Unity tiene que recargar cosas en segundo plano.

Probablemente quieras empezar con las pruebas de Modo Edición. Son más rápidos, más sencillos de escribir y cubren la mayor parte de lo que necesitas al principio. Una vez que tengas instalado tanto el Test Framework como Unity CLI, puedes invocarlo desde la línea de comandos:

# Ejecutar las pruebas de EditMode del proyecto

unity test --mode EditMode

# Filtrar a un subconjunto y escribir un informe JUnit

unity test --mode EditMode --filter MyNamespace.MyTests --junit-output results.xml

# Ejecutar solo pruebas afectadas por cambios recientes

unity test --affected

Esto se ejecuta en cada prueba de Modo Edición. Añade --junit-output results.xml y también obtienes un informe estructurado de lo que pasó y lo que falló. Luego pídele a tu agente que ejecute las pruebas y resuma lo que encuentra, algo como: "Ejecuta las pruebas de EditMode y dime solo lo que está fallando, en inglés simple." El agente ejecuta el comando, lee el informe y informa, sin necesidad de desplazarse manualmente por los registros.

16. Administra tu nube

Mientras que el inicio de sesión management reside bajo unity auth, puedes usar unity cloud para administrar tu organización y proyectos de Unity Cloud desde la terminal.

# Abre una lista de todos los comandos de nube disponibles

Unity Cloud

# Para obtener el ID de tu organización y cuenta

estado de Unity Cloud

# Solo el id de la organización activa, listo para canalizar

org actual de Unity Cloud

17. Revisar al doctor

Al solucionar problemas o verificar su entorno, puede usar el comando unity doctor en lugar de auditar manualmente la Authentication, las instalaciones y los archivos de registro. El comando ejecuta una comprobación de salud completa de su configuración, incluyendo editores disponibles, configuraciones de proxy y registros de actividad recientes en una sola salida. Es particularmente útil para diagnosticar errores de configuración silenciosos en máquinas de CI durante la configuración inicial.

# Diagnosticar tu configuración

doctor de unity

# Agrega rastreos de errores completos

unity doctor --verbose

Dado que la configuración incorrecta de proxy silencioso es un culpable común de fallos en la compilación, puedes considerar verificar la salud del editor antes de ejecutar las compilaciones. Simplemente puedes automatizar esto para que se ejecute en las máquinas de CI durante la configuración.

También puedes usar el comando unity env. Es un subconjunto de unity doctor que querrías cuando solo necesitas una ruta, por ejemplo, para borrar la caché de descargas o para inspeccionar manualmente user-settings.json.

# rutas resueltas (ruta de instalación, ruta de caché, ruta de configuración)

entorno unity

18. Crear comandos personalizados

El atributo [CliCommand] facilita la escritura de comandos personalizados para proporcionar a tus agentes de IA scripts personalizados. Para usar el comando de CLI solo necesitas un método estático estándar de C# y decorarlo con los atributos [CliCommand] y [CliArg].

El paquete Pipeline descubre automáticamente estos atributos durante la compilación, lo que significa que no se necesita configuración manual ni archivos de registro. Cuando ejecutas unity command sin argumentos, la CLI lista dinámicamente todos los comandos personalizados disponibles junto con los integrados.

Nota: El atributo [CliCommand] hace que los comandos sean descubribles e invocables a través de la CLI. Para la ejecución parametrizada, llamas al método directamente usando unity command eval con sintaxis C#, en lugar de pasar banderas al estilo CLI.

Veamos un rápido comando personalizado "Hola Mundo" en acción.

Crea un nuevo script de C# llamado HelloWorldCommand.cs. Asegúrate de que la clase y el método sean estáticos, e incluye el namespace Unity.Pipeline.Commands:

usando UnityEngine;

using Unity.Pipeline.Commands;

public static class HelloWorldCommand

{

[CliCommand("hello-cli", "A hello world test")]

public static void SayHello()

{

Debug.Log("¡Hola a todos! Soy un comando CLI personalizado.";

}

}

Para ejecutar tu nuevo comando, inicia tu terminal y ejecuta:

comando unity hello-cli

Ejecutarlo imprime el resultado del comando en tu terminal, y la salida Debug.Log aparece en la ventana de Consola del Editor.

Si deseas saber más sobre cómo crear comandos personalizados, lo cubriremos en un artículo futuro.

19. Usando el servidor MCP

Aunque usar la CLI es generalmente el flujo de trabajo recomendado, la CLI de Unity también puede operar como un servidor MCP, si deseas integración nativa de herramientas o si tu agente tiene problemas con los comandos de shell.

MCP simplifica la integración al dar a los agentes acceso directo a nombres de herramientas, descripciones y esquemas estructurados a través de una conexión persistente, evitando la ejecución de shell sin procesar y el análisis de salida. Mientras que CLI se adapta a scripts y flujos de trabajo manuales, MCP integra perfectamente las herramientas de Unity en los flujos de trabajo de IA. Ambos alcanzan las mismas capacidades de Editor, sin diferencia de rendimiento significativa.

Los clientes de IA suelen iniciar el servidor MCP automáticamente. Aunque el servidor se ejecuta de forma independiente, las herramientas del Editor requieren un Editor activo con el paquete Pipeline. Piensa en el MCP como una interfaz alternativa si tu herramienta tiene problemas por alguna razón. En la mayoría de los casos de uso, Unity CLI será la mejor opción.

Configura tu cliente de IA con:

# Ver qué agentes son compatibles

unity mcp configure --list

# Añadir el servidor a Claude Code

unity mcp configure claude-code

# O a Cursor, limitado solo al proyecto actual

unity mcp configure cursor --local

# Previsualizar el cambio de configuración sin escribirlo

unity mcp configure vscode --dry-run

20. Agente Unity para CLI

Unity incluye una habilidad de agente para la CLI. Esto puede ayudar a tu agente a saber qué comandos existen y cómo llamarlos. La CLI puede instalarlo por ti:

# Imprimir las habilidades disponibles sin instalarlas

habilidad de unity

# Enumera los archivos de los que está hecho el conocimiento

unity skill show --list

# Mostrar clientes compatibles y estado de instalación

unity skill install --list

# Instálalo en tu cliente de IA

instalar habilidad unity claude-code

Actualizar a la última versión

refresco de habilidad de unity

¿Cuál es el paso siguiente?

Espero que este haya sido un resumen rápido útil de comandos. Como mencioné, no tienes que memorizarlo todo, pero saber algunos comandos básicos puede ser realmente útil. En nuestro próximo artículo analizaremos de cerca el trabajo con Claude Code y Unity. ¡Feliz codificación de juegos!