I’ve been looking so far unsuccessfully to find a way to launch an application from the command line, in the same way that it would get initialised through Shotgun Desktop/tk-multi-launchapp, setting up an environment via the before_app_launch hook etc. My configuration has all my apps set up as SoftwareEntities, which works well in Shotgun Desktop and in the web browser.
My goal here is to be able to send a job to the farm that initialises a Nuke environment, and starts Nuke with a script that generates a quicktime and uploads it to shotgun as a Version (hopefully using tk-multi-reviewsubmission?). I want it to initialise a Nuke environment on the farm, since I’d like to be able to use this tool from any app (eg. to be able to publish renders from Houdini) - in that case I won’t be already in a Nuke environment that I could copy to the farm environment.
I found the SoftwareLauncher API, but it doesn’t show any software versions when I run scan_software():
(sgtk imported, with an authenticated user) >>> tk = sgtk.sgtk_from_path("/path_to_project") >>> context = tk.context_from_path("/path_to_project") >>> launcher = sgtk.platform.create_engine_launcher(tk, context, "tk-nuke") >>> software_versions = launcher.scan_software() >>> software_versions 
Could this because all my software is in Shotgun in the form of Software Entities?