Acho que o seguinte faz o que você quer:
start /B %comspec% /c "daemon flag | app2 flags" & app flag
Isto dá uma nova encarnação do shell cmd , rodando em background e manipulando o pipe, o que é feito implicitamente tanto pelo uso de start com um arquivo batch quanto pelo comando equivalente do Linux.
Haverá, é claro, confusão se app2 e app gerarem saída, e ainda mais confusão se ambos solicitarem entrada do console (igualmente verdadeiro no Linux e no Windows).