code: function npm () {
  
      // duplicate the generic cmd object
      const _npm = Object.create(_cmd);
      _npm.cmd = 'npm';
  
      // no-args
      const noargs = ['run', 'test'];
      noargs.forEach((m) => {
          Object.defineProperty(_npm, m, {
              get: function () {
                  this.args.push(m);
                  return this;
              }
          });
      });
  
      // single-arg fn
      ['prefix'].forEach((m) => {
          Object.defineProperty(_npm, m, {
              value: function (p) {
                  this.args.push(`--${m}`, p);
                  return this;
              }
          });
  
      });
  
      // function to use to add extra scripts
      //  npm.useScript('compile','build')
      _npm.useScript = (...scripts) => {
          scripts.forEach((m) => {
              Object.defineProperty(_npm, m, {
                  get: function () {
                      this.args.push(m);
                      return this;
                  }
              });
          });
      };
  
      return _npm;
  }
docs: Function to create a new instance of the npm command. This sets up the run, test, and prefix options If you wish to add 'scripts' eg build compile etc, the useScript() function can be used.