Not sure if this will help anyway, but running dnu and dnx tasks (soon to be aggregated under a single ‘dotnet’) is really easy. Just use child_process’s spawn function:
Granted, you don’t get piping, but I don’t really see a need to pipe output from these commands anyway.
You can then use run-sequence to execute these in order.