C'est Unix. À moins que ça me soit imposé, je supporte juste Unix. Puis la plupart des devs que je connais qui bossent sous Windows ont tous au moins « Git Bash » qui vient avec un environnement GNU à peu près décent, voir bossent avec des VM Linux via Vagrant, Docker et compagnie.
Le système « un plugin
une fonctionnalité » de Gulp est pas spécialement mauvais, c'est juste la conséquence de vouloir se passer des interfaces POSIX. Dans un makefile, tu bosses avec des commandes, stdin, stdout. C'est standard, c'est puissant, et ça marche. Si tu veux te passer de ça pour des raisons de portabilité ou autre, tu te retrouves avec plein de softs/commandes qui ne supportent pas nativement une interface simple et standard. Tu as donc besoin pour chacune de tes dépendances, d'un plugin supplémentaire pour faire la liaison avec ton task manager, ou de le faire toi-même ce qui ajoute rapidement beaucoup de bloat à ton code (et je sais de quoi je parle, à savoir passer d'un makefile de 120 lignes (qui commençait à être bien poilu quand même) à un équivalent JavaScript de 300 lignes, parce qu'on avait besoin d'accéder aux API natives pour optimiser certaines parties).
Mais en tout cas essaie un peu tout ça, que ce soit make, Grunt, Gulp, Broccoli, Jake, Rake, Phake, Cake, ShellJS/make (oui, ils sont beaucoup à réinventer make), y'a que en testant (et en réécrivant d'un outil à l'autre) que tu te feras ton propre avis sur le sujet.