Gulp — gulp-stylus + gulp-concat = любовь?
Не городите слишком сложных задач, это системе выполнять не легче. чем вам потом поддерживать. Советую пойти   путем, многими уже принятым: 1) создаете задачу по перегону styl в css с выходом одного файла в каталог build 2) создаете задачу с конкатинацией всех сторонних css тоже в каталог build 3) на третью задачу вешаете конкатинацию всех css из каталога build и делаете с ними уже все операции, минификация, автопрефиксы и тд. Для того чтобы первые две задачи выполнялись до выполнения третьей, третью задачу можно описать как  gulp.task('task3', ['task1', 'task2'], function() {
  // Код третьей задачи
});
Я использую less и потому просто импортирую css в main.less, sass/stylus такого не умеет, потому там норм вариант делать сначала сборку sass/stylus -> css а потом при помощи merge-stream добавлять туда стрим с css внешними (я забираю через main-bower-files) и прогнать все через конкат. Никаких временных файлов, все в памяти и удобно поддерживать. Собственно на проектах с ionic я так обычно и делаю.