I'm able to install a custom plugin globally via npm i -g @somescope/myplugin then change into the directory where the package is globally installed and can run sfdx plugins:link and all my custom commands are available.
However, I'm not able to use it when installing it from an internal private registry via sfdx plugins:install @somescope/myplugin.
Other custom plugins out on the public GitHub seem to work with doing a global npm install without a link step. See mo-dx, shane-sfdx-plugins, and many others.
What does the sfdx install approach do underneath to associate the plugin with DX that doesn't happen when doing a global npm install?