When I open any file from Godot project in Cursor, Cursor becomes extremely slow. This does not go away and persists over time. Even if I close all other files and restart Cursor, it’s constantly eating about 10-20% of CPU, and if I navigate through the file (e.g. scroll the wheel and click here and there), Cursor stutters every several seconds.
This started to happen yesterday, so I believe this may be related to 2-3 latest updates.
It’s very frustrating… I’m used to fast working, so waiting several seconds to perform simple action is a bummer. I think I’ll switch to plain Visual Code for now.
Steps to Reproduce
For me this is reproducible by opening any Godot project and trying to open a GDScript file in Cursor.
Expected Behavior
Everything runs smoothly.
Operating System
Windows 10/11
Current Cursor Version (Menu → About Cursor → Copy)
Hey, the issue might be related to an extension, such as linters that start checking your code in the background. Try launching in safe mode using this command in the terminal: cursor --disable-extensions, and check if the problem persists.
Also, check the built-in task manager, then use Process Explorer inside Cursor.
It would be great if you could share info and screenshots of the processes in use.
With –disable-extensions it freezes much less frequently and not so obtrusive. Both with & without this launch arg, in Process Explorer I always see this:
The highlighted line spikes to 20% CPU usage with no extra info (the memory also jumps from 600-800 MB to 1GB+). During the freeze I also don’t see other suspicious processes in this window. Sometimes “extension host” is launched, but it goes away so quickly that I don’t even know what it’s doing.
Check the file size:
• Open gs_black_hole.gd in a plain text editor
• If the file is really large (>100 MB), that might be the cause
• There might be circular references or huge data arrays inside the file
Try opening another .gd file:
• Create a simple test file test.gd with a couple of lines
• If it also uses a lot of memory, the issue is in the language server
base size for “window” line in Process Explorer with all scripts closed - 600 MB
the script it’s 5 KB (113 lines of code, max 70 symbols in a line)
it’s a @tool script, but it does not have arrays within it directly
though, there may be data in its fields transitively (e.g. it contains links to data tables which in turn do contain data in Dictionary; but I don’t understand how that should affect code completion even for tool-script)
I tried to create a simple test.gd (with all other scripts closed), but when I started to write basic extends Resource class_name … I got another freeze for 1-2 seconds. After that I had no problems with this simple script, but did have with other scripts much larger.
I also want to mention that all these files have not caused such issues until recently. Not sure about the LS, I will have to dig into that. But as a quick check – is there a way I can downgrade Cursor to another version?
Btw, just noticed that even with no scripts opened, when I switch to Cursor from another window (alt-tab) and hit Ctrl+P to open a file – there’s almost always 2-3 seconds delay before I see the popup open.
It’s also weird that with –disable-extensions and no scripts opened, Cursor constantly grows and shrinks in memory (to be precise – that “window …” line in Process Explorer). E.g. I switch to another Desktop, wait a bit (e.g. right now I’m writing this message), then switch back to the Desktop where Cursor is and then I see how it grows from ~500 MB to something like 700-800. Then I switch between windows several times and I see how it grows to 1.2 GB and then shrinks down to 600 MB. Again, this is all with –disable-extensions