Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Procs View

A read-only view of what is running on your machine: the processes as a tree by parent pid with CPU % and resident memory, the listening TCP / UDP ports with the process that owns each one, and a detail of the selected process (pid, ppid, user, state, uptime, CPU / memory, full command line, cwd, executable, children, listening ports). Values that need privileges you do not have are shown as (no access).

Processes come from sysinfo; ports from lsof on macOS and ss on Linux. Both are re-read every 2 seconds while the view is shown (procs-refresh-interval in the config) and on r.

The System graphs

The System pane on top graphs the machine totals as btop-style filled area charts: the global CPU % (with the recent peak) and the used memory over the last procs-history samples (120 by default — 4 minutes at the 2 s interval), plus a Swp line when swap is present. Every sample column is colored by its load — green below 50 %, yellow from 50 %, red from 80 % — and the percentage labels carry the same color.

c swaps the CPU chart for one small gauge per core in the same gradient. The charts fill from the right until the buffer is full, sample only while the view is shown, and always cover the whole machine — they draw numbers only, never per-process data. The detail pane adds the same history for the selected process: a colored CPU % area chart and a resident-memory chart under the CPU / MEM fields.

Key bindings

KeyAction
j / k / Ctrl+d / Ctrl+u / g / GMove in the process tree (detail follows)
sCycle the sort: CPU → MEM → PID (shown in the pane title)
cToggle the CPU graph: history ⇄ one bar per core
Enter / i / lFocus the detail pane
/ n NSearch command lines (processes) or address / port / name (ports)
Tab / Shift+TabCycle panes: Processes → Ports → Detail → System
Enter (ports)Jump to the process that owns the port
j / k / Ctrl+d / Ctrl+u (detail)Scroll
h / Esc (detail)Back to the process list
rRefresh now

Constraints

  • The view only inspects — it never sends a signal. There is no kill, no renice, no stop.
  • Environment variables are never read or displayed.
  • Values that require privileges you lack show as (no access); port ownership may be incomplete without them.
  • Sampling pauses while another view is shown, so the graphs only cover time spent on this view.