Input Handling
April 20, 2025 ยท View on GitHub
By default, concurrently doesn't send input to any commands it spawns.
In the below example, typing rs to manually restart nodemon does nothing:
$ concurrently 'nodemon' 'npm run watch-js'
rs
To turn on input handling, it's necessary to set the --handle-input/-i flag.
This will send rs to the first command:
$ concurrently --handle-input 'nodemon' 'npm run watch-js'
rs
To send input to a different command instead, it's possible to prefix the input with the command index, followed by a :.
For example, the below sends rs to the second command:
$ concurrently --handle-input 'npm run watch-js' 'nodemon'
1:rs
If the command has a name, it's also possible to target it using that command's name:
$ concurrently --handle-input --names js,server 'npm run watch-js' 'nodemon'
server:rs
It's also possible to change the default command that receives input.
To do this, set the --default-input-target flag to a command's index or name.
$ concurrently --handle-input --default-input-target 1 'npm run watch-js' 'nodemon'
rs