code: function task () {
    run = true;
    var item = messages.shift();
    if (!item) {
      run = false;
  
    // 書き込み
    } else if ('message' in item) {
      if (output_) {
        write(item);
      } else {
        task();
      }
  
    // パスの変更
    } else if (item.path) {
      p_ = path.resolve(p_, item.path);
      task();
  
    // 出力のコントロール
    } else if ('output' in item) {
      output_ = item.output;
      task();
  
    } else {
      task();
    }
  }
docs: タスクの実行
  @method task