@jfstudios26/lpm-assistant
v1.0.0
Published
Standalone process manager with an authenticated REST + WebSocket API for the LPM Assistant iOS app. Spawns, supervises, and auto-restarts processes — no PM2 required.
Maintainers
Readme
lpm-assistant
Standalone process manager + companion agent for the LPM Assistant iOS app. Spawns and supervises your processes directly (no PM2 needed), with crash-loop autorestart, cpu/mem metrics, and log capture, and exposes an authenticated REST + WebSocket API so the app can view status, stream logs, and start/stop/ restart/delete processes. Can import an existing PM2 setup.
Install
npm install -g @jfstudios26/lpm-assistantInstalls two commands: lpm-assistant (runs the agent daemon + prints a pairing
QR) and lpm (a PM2-style CLI: lpm list, lpm logs, lpm start, lpm diagnose…).
Run
Keep it alive as a boot-persistent service. Recommended: systemd — it
auto-starts on reboot, restarts on crash, and stays out of your PM2 list. A
ready-made unit is in deploy/lpm-assistant.service:
which lpm-assistant # note the path
sudo cp deploy/lpm-assistant.service /etc/systemd/system/
sudo nano /etc/systemd/system/lpm-assistant.service # set User= and ExecStart=
sudo systemctl daemon-reload
sudo systemctl enable --now lpm-assistant
lpm-assistant --show-pairing # print the QR to pairOn first run it prints a QR code on every startup. Scan it in LPM Assistant to
pair, or run lpm-assistant --show-pairing to display it again.
Security
- A random bearer token is generated on first run and stored at
~/.lpm-assistant/config.json(mode0600). Rotate it withlpm-assistant --rotate-token. - TLS is required for the iOS app (App Transport Security blocks plain
HTTP). Front the agent with a reverse proxy such as Caddy for automatic
HTTPS. See the project's
docs/DEPLOYMENT.md.
Requirements
Node.js 18+. PM2 is not required — it's only used if you run
--import-pm2 / --cutover to migrate an existing PM2 setup.
Licence
Copyright © JF Studios. Licensed under the GNU AGPL-3.0-or-later — see
LICENSE. You may run this software, but any modified version you
distribute or run as a network service must publish its source under the same
licence.
