Programming custom board with ICSP and hex file

Hi. I have created a custom board, and I have successfully programmed it via ISP. (Program host Arduino with ArduinoISP sketch, and using "Upload using programmer" function to target board)

Now, I will be giving the board to the client, but I would not like to share the main sketch, but the HEX file instead (I know how to get the hex file already). My plan is to send the custom board, including an arduino UNO with the ArduinoISP sketch programmed, along with a custom programming cable.

Is there a way to program the board just by sending the HEX file through ISP?

Is there a way to program the board just by sending the HEX file through ISP?

Yes, the corresponding command is called "avrdude". But don't expect end users to enter cli commands and arguments with more than 20 characters. You probably have to provide your own upload program for that (which might be a wrapper around avrdude though).