Yup, pretty much this. I have a small touchscreen Arduino device that I keep plugged into my PC. When I hit a button on the touchscreen it sends some text over serial (which is really a USB wire). I have a Python script on the PC that continuously reads from the serial port and parses the received data to figure out what to do. Specifically it tells my Discord bot to play a sound :)
All my recommendations are already in your list