I wrote a node express application to show database information for work. The source code is not opened sourced, and I was thinking of using pm2 runtime to run the web application on the server. I'm a bit confused about the AGPL issue, and the online resource I've found doesn't seem to answer the question about the pm2 runtime. I'm a bit confused when it comes to this scenario. If I use pm2 runtime, would I be required to release my source code to comply with the AGPL license?

2 Answers 2


A quick perusal of the PM2 documentation does not give me any indication that your application needs to include any code from PM2 or in any other way have knowledge that it is managed by PM2.

If that is correct, then your application is not a derivative work of PM2, which means that you are free to choose your own license terms for your application, independent of the PM2 license.

For the PM2 Runtime, you will need to comply to the AGPL license, but that only brings a burden if you made changes to it.

  • 1
    I personally use pm2 for managing crashed processes and can confirm your reading as correct (for my typical use case, anyway): pm2 only cares if the work (1) can be launched as a process on your operating system and (2) its current running/termination state can be determined by the operating system. If those are your requirements as well @adviner, this is not communication that creates a derivative with the work being managed.
    – apsillers
    Apr 8, 2023 at 13:53

The license document in Section 5.2 a) is very clear: You are dealing with the AGPLv3 License.

PM2 Runtime is a free open-source software, which is governed by the AGPLv3.0 license (the “AGPL3 License”). Any use of PM2 by the users shall be governed, and subject to the Terms and Conditions of the AGPL3 License.

The AGPL License states in Section 13, that when you offer a 'Covered Work' as a network service, you also have to provide the respective source code. The definition of 'Covered Work' is including a work based on the Program and the way to determine if your node express application is a 'covered work' is described in the GPL FAQ.

So yes, by using pm2 runtime you have to comply with the AGPL license (at least for pm2), but you need to check if your own app is a 'covered work' or an 'aggregate', and based on that if your app also is subject to the AGPL license.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.