Something that would be great is a way to let waiting for a program's output not block a script. That way you can have a dialog that runs a program and still interact with it while you wait for its output. I think the right approach would be to tie its use to a Dialog, like FSUtil.Hash() does currently.
Although you can already do this by other means (actually very few things in Opus can't be worked around
), IMHO the most practical option (especially for new users getting into Opus scripting) would be a built-in one.