I use an ARM laptop, but installed a x64 version of node.js on my system. The reason for this is that the ARM version of node.js has major issues and x64 emulation is really good on ARM. Cursor still installs it’s own version of ARM node.js and this causes major issues with my node modules.
For instance. Agents can’t run unit tests.
Steps to Reproduce
Install the x64 version of node.js on an ARM Windows 11 system. Then some node modules stop working in your project when ran by an agent.
Expected Behavior
I expect that Cursor would let me choose which version of node.js I want to use. Or even better know that I use x64.
This is working as expected, but your case is a real edge case. Cursor bundles node.exe at resources/helpers/node.exe, and the architecture of that binary is fixed when the installer is built. That means the ARM64 Cursor build ships an ARM64 Node, and the x64 Cursor build ships an x64 Node. The agent prepends that directory to PATH, so native modules compiled for x64 Node crash when they’re loaded by ARM64 Node. There’s no IDE-side switch for this yet.
A workaround that should help is to install the x64 Cursor build instead of ARM64. On Windows 11 ARM it’ll run via Prism emulation, same as your x64 Node, and the bundled Node inside Cursor will be x64 so it matches your modules. Performance will be a bit lower, but it’s the most direct way to get tests working.
I also reported this internally as a request to let you choose the agent Node on Windows ARM. I can’t share an ETA, but it’s tracked. Let me know if switching to the x64 build helped.
A fix for the bundled-Node conflict that was breaking agent-run unit tests is coming in Cursor 3.8 (dropping this week!). Please give it another try once you’re on that version and let me know if it’s still happening!