> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Laravel Multiplex — un TUI para gestionar en conjunto los procesos de desarrollo local

> Investigación inicial de laravel/multiplex. Explicamos la interfaz de terminal que utiliza el php artisan dev de Laravel 13, con pestañas por proceso, búsqueda y reinicio automático.

## Introducción

[`laravel/multiplex`](https://github.com/laravel/multiplex) es una interfaz de terminal (TUI) para ejecutar varios comandos a la vez. Se utiliza desde el `php artisan dev` de Laravel 13 y permite gestionar en una sola terminal los procesos necesarios para el desarrollo local, como el servidor de desarrollo de PHP, los workers de cola, la vigilancia de logs y Vite.

Muestra la salida de cada proceso en su propia pestaña, y también soporta buscar y desplazarse por la salida. Al terminar, la salida de cada proceso se vuelve a escribir en el scrollback normal de la terminal, por lo que puedes seguir consultando los logs después de cerrar el TUI.

## Instalación y ejecución directa

En una aplicación Laravel no suele hacer falta instalar Multiplex por separado, ya que `php artisan dev` se encarga de la configuración necesaria. Si quieres usarlo por separado, prepara Node.js 22.13 o posterior e instálalo con npm.

```bash theme={null}
npm install -g @laravel/multiplex
```

Los comandos se pasan con el formato `label,command`.

```bash theme={null}
multiplex 'server,php artisan serve' 'queue,php artisan queue:listen' 'vite,npm run dev'
```

## Modo TUI y modo inline

Si tanto la entrada como la salida estándar son un TTY, se lanza el TUI con pestañas. Con `s` cambias a la vista en modo stream, con `/` buscas en la salida y con `r` reinicias el proceso seleccionado. `q` cierra la ejecución.

En CI o en procesos pasados por pipe, donde no hay TTY, cambia automáticamente al modo inline. Cada línea lleva la etiqueta del proceso y la salida se muestra en el orden en el que llega. Para usar explícitamente el modo inline, pasa `-i`.

```bash theme={null}
multiplex -i 'build,npm run build' 'test,npm test'
```

En modo inline, la ejecución termina cuando termina el último proceso, y los fallos del comando se reflejan en el código de salida. Si quieres manejar el resultado del procesamiento en formato JSON, usa `--json`.

```bash theme={null}
multiplex --json 'build,npm run build' 'test,npm test'
```

## Reinicio automático y cierre

Los procesos que caen se reinician automáticamente tras esperar 1 segundo, hasta un máximo de 5 veces. Los procesos que terminan dentro del primer segundo desde el arranque no se reintentan, ya que es probable que ni siquiera hayan podido iniciarse, por ejemplo por un ejecutable ausente o por un conflicto de puertos. En comandos que solo se ejecutan una vez, como una build o una migración, indica `--no-restart`.

```bash theme={null}
multiplex --no-restart 'build,npm run build'
```

Al salir o al recibir una señal, Multiplex termina el grupo de procesos de los procesos hijos. De este modo puedes detener varios procesos a la vez y evitas la situación en la que solo el servidor de desarrollo se queda ocupando el puerto.

## Consideraciones

A los procesos hijos no se les pasa la entrada estándar. Por eso, los comandos que requieren interacción con el usuario, como `php artisan tinker` o los prompts de confirmación de las migraciones, no se pueden ejecutar desde Multiplex. Ejecuta los comandos interactivos en otra terminal.

Multiplex también expone una API programática, pero los comandos se ejecutan con `sh -c`. No incrustes valores en los que no confíes (archivos de configuración, requests, etc.) dentro de las cadenas de comando.

## Referencias

* [Documentación oficial de Laravel: Artisan - The Dev Command](https://laravel.com/docs/13.x/artisan#the-dev-command)
* [README de laravel/multiplex](https://github.com/laravel/multiplex)


## Related topics

- [Consola Artisan](/es/artisan.md)
- [Laravel Cloud — visión completa del PaaS específico para Laravel](/es/blog/laravel-cloud.md)
- [Introducción a Laravel Nightwatch](/es/blog/nightwatch-introduction.md)
- [Laravel Scout](/es/scout.md)
- [Laravel y el desarrollo con IA](/es/ai.md)
