High CPU usage of the Cursor Helper (Plugin): extension-host process when running Cursor with VPN restricting public networks

Hey, thanks for the report and the Activity Monitor screenshot. It really helps narrow things down.

The two top processes are built-in extension hosts. Cursor’s own network traffic goes through them. It makes sense they spike when the VPN allows opening a connection but doesn’t reply to it. There are two paths here: a couple quick tests you can do right now, and a CPU profile for a precise root cause.

Quick tests (while you collect profiles)

  1. Cursor Settings (not VS Code settings) > Network > Run Diagnostics. Please run it and share the results.
  2. Switch HTTP Compatibility Mode to HTTP/1.1. App Settings Cmd+, > search for “HTTP/2” > enable “Disable HTTP/2”. Restart Cursor and check if CPU drops. VPN proxies often buffer HTTP/2 streams, and switching to HTTP/1.1 can fix it.
  3. If possible, try the VPN in TUN mode instead of system proxy, or set up split tunneling to exclude the Cursor process or the domains *.cursor.sh, *.cursorapi.com, *.cursor.com from the tunnel. System proxy mode is usually what buffers streams. Related case with analysis: Timeout waiting for EverythingProvider - #10 by deanrie

CPU profile (to pinpoint the exact cause)

  1. Turn on the VPN in the mode that restricts public network access, open Cursor on the same project, and wait until the two Cursor Helper (Plugin): extension-host processes spike CPU again.
  2. Cmd+Shift+P > type “Start Extension Host CPU Profiler” > Enter.
  3. In the list, pick “Local: agent-exec”.
  4. If it asks to restart for profiling, accept, wait for CPU to spike again, then repeat step 2.
  5. Record for about 30 seconds while CPU is high.
  6. Cmd+Shift+P > “Stop Extension Host Profiler” > Enter.
  7. Cmd+Shift+P > “Save Extension Host Profile” > Enter, save the .cpuprofile file.
  8. Repeat steps 2 to 7 for “Local: always-local”.
  9. Cmd+Shift+P > “Developer: Open Process Explorer” > Enter, then take a screenshot while CPU is high.

Please attach the two .cpuprofile files (zip them) and the Process Explorer screenshot here or via DM.

A couple questions

  • Is Cursor using the VPN proxy via system settings, or via its own http.proxy setting in Cursor Settings (not VS Code settings), search “proxy”?
  • Does CPU stay high if you fully quit the VPN client, not just leave it in restricted mode?

Let me know which quick test helped. That alone will narrow this down a lot.