If you're bold (and doing this remotely might be bold, at least with the current prototype), you could install the Attended Sysupgrade package (luci-app-attendedsysupgrade).
This is an astonishingly cool enhancement to the ImageBuilder. It is a LuCI package that sends a list of your local packages to the ImageBuilder which builds an image with everything you have installed, then ships the firmware back to your browser, which then automatically installs it.
I have used it several times, with complete success. But to date, I have only used it on devices I can walk to in a few minutes. If you're curious, you can watch how it works: https://youtu.be/H7xcmhbYsX8 - 4 minutes and 53 seconds to an updated router.
So definitely test this locally before upgrading remote devices. Cheers!