docs: function Probe(collector) {
    this.fuse();
  
    //
    // Add _auth if username and password are provided via options.
    //
    var config = collector.options.npm || { loglevel: 'silent' };
    if (config.username && config.password) {
      config._auth = new Buffer(config.username +':'+ config.password).toString('base64');
    }
  
    //
    // Name of the probe and the registries the probe should run against.
    //
    this.readable('name', 'publish');
    this.readable('list', ['npmjs']);
    this.readable('config', config);
    this.readable('collector', collector);
  
    //
    // References to the test package that will be published.
    //
    this.readable('live', require('../registries').npmjs.href + 'npm-publish-probe');
    this.readable('map', path.join(__dirname, '..', 'publish'));
    this.readable('package', path.join(this.map, 'package.json'));
    this.writable('module', require(this.package));
  
    //
    // Test the publish module every 6 minutes.
    //
    this.readable('interval', interval);
  }