code: public function addPlugin(PluginInterface $plugin)
      {
          $this->io->writeError('Loading plugin '.get_class($plugin), true, IOInterface::DEBUG);
          $this->plugins[] = $plugin;
          $plugin->activate($this->composer, $this->io);
  
          if ($plugin instanceof EventSubscriberInterface) {
              $this->composer->getEventDispatcher()->addSubscriber($plugin);
          }
      }
docs: Adds a plugin, activates it and registers it with the event dispatcher
  
  Ideally plugin packages should be registered via registerPackage, but if you use Composer
  programmatically and want to register a plugin class directly this is a valid way
  to do it.
  
  @param PluginInterface $plugin plugin instance