on-demand launch agent restarting automatically
It probably won't help, but you could try sleeping for a few seconds before exiting. From Daemons and Services Programming Guide:


  Important: If your daemon shuts down too quickly after being launched, launchd may think it has crashed. Daemons that continue this behavior may be suspended and not launched again when future requests arrive. To avoid this behavior, do not shut down for at least 10 seconds after launch.