Flashing XC886 using ULINK2

I would like to automate flashing process for my Infineon XC886 devices.


Currently, I use ULINK2 and I connect to my board via JTAG
https://developer.arm.com/documentation/101407/0540/Command-Line/Program-Flash-Example
and then I call the UV4.exe via command line. This command opens up Keil uVision5 and flashes the application to my MCU. This process works but is not convenient for production since it opens up Keil application everytime I flash my devices.

Can I use uv4.exe in headless mode (not opening application) or should I use different tool/method to flash my devices? Perhaps someone could suggest an alternative?