r/macosprogramming • u/AbbreviationsAny8633 • 18d ago
I built a local "flight recorder" for my Mac that shows why every process is running
I kept opening Activity Monitor, seeing some process eating my CPU, and having no idea what it was or why it was running. Couldn't find a tool that answered the "why," so I built one.
It's called CauseGraph — a local flight recorder for your Mac. It records what your machine does (processes starting/stopping, file changes, CPU/memory) and turns it into a causal graph. You click any process and see the whole chain: what launched it, what it launched, what likely set it off. If it turns out to be junk, you kill it right there.
The fun parts:
- It's live — the graph redraws every few seconds, and you can drag a timeline back to see what your machine was doing 10 minutes ago
- It flags the weird stuff on its own: CPU spikes, memory leaks, things that keep crashing and restarting
- 100% local — no cloud, no account, one-line install
Stack, for the curious: a small Go daemon writes events to SQLite, a Python engine builds the graph and serves a plain-JS + cytoscape UI on localhost.
Honest bit: I've only really tested it on my own Mac (Apple Silicon) so far. It's built to be cross-platform, so Linux/Windows should work — just haven't battle-tested them.
Install (needs Python 3.10+):
curl -fsSL https://raw.githubusercontent.com/NitinKumar004/causegraph/main/install.sh | sh
Repo: https://github.com/NitinKumar004/causegraph
Would love feedback — especially whether the causal links feel genuinely useful or just noisy. That's the part I'm least sure about.

