A simple, standalone terminal UI for monitoring running processes — inspired by htop, easier to use.
servive reads Linux /proc directly. It does not shell out to htop, top, ps, or any other process monitor.
- Linux (uses
/proc) - Node.js ≥ 26.4.0 (OpenTUI’s native renderer needs
--experimental-ffi)
npm install
npm run buildDevelopment (TypeScript via tsx):
npm run devProduction build:
npm run build
npm startOr after build:
node --experimental-ffi dist/index.jsservive [options]
Options:
-r, --refresh MS Refresh interval in milliseconds (default: 1000)
-s, --sort KEY cpu | memory | disk | network | pid | name
-R, --reverse Reverse initial sort direction
-f, --filter TEXT Initial filter (pid, user, name, command)
-k, --kernel Include kernel threads
--max-rows N Cap rendered rows (default: 500)
-v, --version Print version
-h, --help Show helpExamples:
npm run dev -- --sort memory
npm run dev -- --filter node --refresh 500| Key | Action |
|---|---|
↑ / k, ↓ / j |
Move selection |
s |
Cycle sort column |
r |
Reverse sort |
/ or f |
Filter |
Esc |
Clear filter / close help |
t |
Toggle kernel threads |
p |
Pause / resume |
+ / - |
Faster / slower refresh |
x / F9 |
Send SIGTERM |
X |
Send SIGKILL |
? / h |
Help |
q / Ctrl+C |
Quit |
| Column | Source |
|---|---|
| PID / USER / ST / COMMAND | /proc/[pid]/stat, status, cmdline, /etc/passwd |
| CPU% | Delta of utime+stime jiffies |
| MEM% | VmRSS vs /proc/meminfo |
| DISK | Rate from /proc/[pid]/io |
| NET | Open TCP/UDP socket count (see note) |
Host totals in the header come from /proc/stat, /proc/meminfo, /proc/diskstats, and /proc/net/dev.
NET note: Linux does not expose reliable per-process network byte counters through /proc alone on the host network namespace (that needs eBPF / cgroup accounting). servive shows open socket counts per process and host-wide RX/TX rates in the header.
source/
index.ts Entry point
cli/parser.ts argparse + chalk banner
config/defaults.ts Defaults / limits
domain/types.ts Shared types
system/ /proc collectors (standalone)
tui/ OpenTUI app, theme, rows, state
utils/ format / sort / filter helpers
- TypeScript (strict,
source/→dist/) argparse— CLIchalk— colored startup / errors@opentui/core— TUI
MIT