Running dot rendering when foo.dot changes. fast-live-reload fast-live-reload -o\ foo.dot -e "dot -Tpng -o foo.png foo.dot" Gulp var gulp = require("gulp"); var shell = require("gulp-shell"); gulp.task("watch", function () { gulp.watch("foo.dot", shell.task(["dot -Tpng -o foo.png foo.dot"])); }); Running commands when files change, with a parallel program. Start in parallel the tsc watcher. When files change in either test/ or lib/ run mocha test/test_promise.js. fast-live-reload fast-live-reload -o\ -ep "tsc -w src/main/node/exports.ts --out lib/core-promise.js" \ test/ lib/ -e "mocha test/test_promise.js" Gulp //? Run compass watch, and copy files. Run "compass watch" in parallel. Proxy http://192.168.0.14/ and inject the reload script When files change in src/ , run "grunt sync" then notify the server. fast-live-reload fast-live-reload \ -ep "compass watch" \ -s http://192.168.0.14/ \ src -e "grunt sync" Gulp //?