Installing other services as package dependencies

Is there a best practice for requiring reusable Serverless packages as dependencies that will automatically be deployed as part of your own app’s deployment?

As an example, if you’re an agency and a lot of projects you work on need image resizing functionality, is there an established pattern for requiring your pre-built image resizing service?

One approach I’ve thought about taking is simply requiring them as an npm module (with a version constraint), and using a package bundler plugin to include these with the deploy payload during the before:deploy lifecycle hook.

Yes, you can install a service from a GitHub URL.

I’ve seen this, but it’s from a GitHub URL only. What I am after is something that works in a package management sort of way - maybe it leverages npm, and you can give it a particular version.

The plugin that handles service installs literally downloads the zip from GitHub: https://github.com/serverless/serverless/blob/master/lib/plugins/install/install.js#L60