Глобально надо поставить gulp-cli, а не gulp, а локально надо ставить gulp. Gulp-cli это утилита, или программа, которая зарегистрирует в консоли команду gulp. CLI - command line interface, интерфейс командной строки, как-то так. Это надо, чтобы Вы могли в консоли запускать задачи с помощью команды типа 'gulp task'. Если gulp-cli не поставить, то для запуска задач пришлось бы писать что-то типа 'node gulpfile.js', а тогда проблема, что в нем ещё надо указать, какую задачу конкретно запускать надо, потому что node запустит просто скрипт, и выполнятся все задачи, которые там объявлены и вызваны. Либо пришлось бы в package.json регистрировать скрипты под алиасы, сокращенные команды, и для запуска пришлось бы писать npm run task, а в package.json надо тогда описать этот task. Сложно, короче. Gulp-cli умеет принимать название task'a и вызвать его из gulpfile.js. Теперь в gulpfile описываете задачи, и через gulp вызываете.