Skip to content

Cursor using high CPU and draining your MacBook: find the stuck process

Why Cursor or other AI editors drain a MacBook: stuck language servers, orphaned node processes and dev servers. How to find them in Activity Monitor and stop them.

5 min read

Seen on X, 4.5K views
Cursor kept draining my MacBook Biome stuck at 900% CPU, orphaned node processes, a next-server eating 9 GB+
A notification from a watchdog script terminating a runaway node process at 98.8% CPU

Why is Cursor using so much CPU on my Mac?

Most of the time it is not the editor itself but processes it launches: language servers, linters and formatters, the terminal's dev servers and the extension host. When one of them hangs it keeps a core busy until it is killed.

How do I find the stuck process?

Activity Monitor, CPU tab, sorted by % CPU. Look for node, a language server or a linter near the top while you are not building anything. In Terminal:

ps -axo pid,pcpu,rss,comm | sort -k2 -nr | head -10
pgrep -lf node

How do I stop orphaned node processes?

Quit the editor and check whether node processes remain; any left are orphans. Quit them in Activity Monitor, or close the dev servers in each terminal before closing the window. Restarting the language server from the editor's command palette clears a stuck linter without a full restart.

For the general method on any app, see finding what is using the CPU.

Common questions

Why is Cursor draining my MacBook battery?

Usually a process it started: a language server or linter stuck at high CPU, node processes that kept running after a project closed, or a dev server. Activity Monitor sorted by CPU shows which.

How do I kill orphaned node processes on a Mac?

Quit the editor, then in Activity Monitor search node and quit what remains, or run pgrep -lf node in Terminal to list them first.

Read next