Supervise any process in any language — Node.js, Python, Go, Rust, Ruby, PHP, or anything else that runs on Linux. Proxy HTTP/WS/TCP/UDP, rate-limit, and monitor everything from a single static binary.
Linux · Any language · Zero config to start
No config files required to get started. Everything you need is built in.
localhost:6789 with real-time CPU, memory, connection stats, and per-instance LED event indicators.APM doesn't care what stack you use. If it compiles, interprets, or just runs on Linux — APM can start it, supervise it, proxy it, and restart it when it crashes. No plugins. No adapters. No wrapper scripts.
If your app runs on Linux and talks to stdout — APM has you covered.
One line. Detects your arch, downloads the right binary, asks for sudo only when it needs to copy itself to /usr/sbin/apm.
$ curl -fsSL https://processmanager.dev/install.sh | bash
wget alternative
$ wget -qO- https://processmanager.dev/install.sh | bash
Prefer to inspect first? Download manually →
# Simple start
$ apm run node server.js
# With proxy + multi-instance
$ apm run node server.js \
-instances 4 \
-server http://0.0.0.0:3000
# /etc/apm/apm.conf
worker {
name myapp;
exec node;
params server.js;
instances 4;
restart true;
watch *.js;
server http://0.0.0.0:3000;
}
$ apm load /etc/apm/apm.conf
$ apm list
$ apm restart myapp
$ apm reload /etc/apm/apm.conf
$ apm monitor
$ apm gui
$ apm stop myapp
Wacatac.B!ml. This is a known false positive: its ML heuristic misfires on statically compiled Go binaries and UPX-compressed executables. It has been reported to Microsoft for review. All other major antivirus engines report these files as clean — see the VirusTotal links below for full scan results.