In both my work and personal Macbooks, Cursor just infinitely loads without opening anything.
Clearing the cache and the extension cache in Application Support works, but after a restart, it’s broken again.
Hey, thanks for the report. We can see the screenshot with the loader stuck.
Darwin 25.3.0 = macOS Tahoe 26.3. There was a known freeze on Tahoe in 3.0.x, fixed in 3.1.14 plus macOS 26.4. Since you’re already on 3.2.11 and you’re hitting this again, it’s either a regression or a separate bug where the local DB grows over time (which would explain why only clearing the cache helps).
Can you help narrow it down:
Check the size of state.vscdb:
ls -lh ~/Library/Application\ Support/Cursor/User/globalStorage/state.vscdb*
If it’s gigabytes, that’s almost certainly the cause. Try deleting only state.vscdb and state.vscdb.backup (make a backup first), not the whole Application Support/Cursor, and see if the fix lasts longer.
Run with extensions disabled:
cursor --disable-extensions
Does it still reproduce?
After it freezes again, share a fresh main.log from ~/Library/Application Support/Cursor/logs/ (the most recent folder by time).
Is macOS Tahoe updated to 26.4+ now? Apple menu > About This Mac.
@Andreeas, the same diagnostics would be useful for you too. What Cursor version and macOS or Windows version are you on, and does deleting only state.vscdb help instead of doing a full restart?
Okay, if --disable-extensions fixes it, the issue is in some extension, not in state.vscdb. Also, 1,2 GB is actually abnormal, normal size is about 20 to 30 MB, and there’s a known issue where cursorDiskKV grows without control. But that’s separate from your crash.
About state.vscdb: don’t delete it. Deleting the global state.vscdb can cause an endless Loading Chat… in all projects, and that’s a documented bug. Instead, rename it to state.vscdb.old and keep it in the same folder. Cursor will create a new file, and if chats become unavailable you can roll back. You can delete the backup state.vscdb.backup after you rename the main file.
To find the culprit extension:
Run Extension Bisect: Cmd+Shift+P then type Help: Start Extension Bisect. Cursor will disable half your extensions and ask if the bug still happens. In about 5 to 10 rounds, it will find the extension that causes it.
Or use Process Explorer: Cmd+Shift+P then Developer: Open Process Explorer. Check which extensionHost is using lots of CPU or memory during startup.
Once you find the extension, post its name and version here. If you can, also export logs: Cmd+Shift+P then Developer: Export Logs, then attach Window, Extension Host, and Main.
About a permanent fix: until we know which extension it is, I can’t give an exact answer. If it’s a popular one, it’s probably already reported and there’s work in progress to make it compatible with Cursor 3.x.
Andreeas and Anveena, same for you. Run cursor --disable-extensions and on Windows run cursor.exe --disable-extensions from a terminal. If the issue goes away, run Extension Bisect and share which extension is responsible.
--disable-extensions is not working anymore.
I renamed state.vscdb and had to login again.
After logging in Cursor is stuck on a blank Loading.... screen @deanrie
Edit: Got through loading screen, but IDE is stuck like before now, infinite loading on top
@Dave_Howson, let’s dig in. The 1,2 GB size is that known bloated DB issue. It’s in the backlog and we don’t have an ETA for a fix yet. The part where it’s stuck on an empty Loading screen after renaming state.vscdb and logging in again is a different stage. It’s more likely something is blocking startup while restoring the session or workspace, not the DB itself.
Try this in order:
Force quit completely. In Activity Monitor, kill all Cursor and Cursor Helper processes, not just Cmd+Q.
Check if esbenp.prettier-vscode is installed. Anveena found via Extension Bisect in this same thread that it breaks startup. If it’s installed, delete this folder:
Launch Cursor, log in, and check if it works. If it opens, you can slowly copy back what you need from Cursor.bak/User/ like settings.json, keybindings.json, snippets, and check after each file that Loading doesn’t come back.
If Cursor still gets stuck even with a fresh folder, send a new main.log from ~/Library/Application Support/Cursor.bak/logs/ from the most recent folder. Then I can check what it’s hanging on.
@Anveena, thanks for the great detective work with Extension Bisect, that really helps. esbenp.prettier-vscode is not compatible with the current extension host in Cursor 3.x. As a workaround, use the built-in formatter or an alternative like Prettier ESLint until there’s a compatible version. What version of prettier-vscode are you on?
@Andreeas, same steps for you. What Cursor version and OS are you on, and does cursor --disable-extensions help. On Windows, run cursor.exe --disable-extensions from a terminal. If it helps, run Extension Bisect Cmd+Shift+P then type Help: Start Extension Bisect and tell us which extension it finds.
Prettier is removed. cursor --disable-extensions --new-window works, but as soon as I open my workspace, it’s stuck in the loading screen
Moving all of cursor settings to .bak and opening fresh works.
I don’t want to restore even at this point. Clean state is fine.
Only issue is, this works for now, but will eventually fail again I’m sure, as this has happened many times before.
@Dave_Howson, ok, the symptoms changed. If an empty window opens but a specific workspace freezes the IDE, then it’s not the global state.vscdb. It’s workspace specific storage. Each workspace stores its state in ~/Library/Application Support/Cursor/User/workspaceStorage/<hash>/, and it can grow on its own. This is a known pattern with bloat in workbench.find.history and cursorDiskKV.
Try this step by step, don’t wipe everything:
Run this to find large workspace folders:
du -sh ~/Library/Application\ Support/Cursor/User/workspaceStorage/* | sort -h | tail -20
If something is in the hundreds of MB or in GB, that’s a good candidate.
Match the hash to your workspace using the workspace.json file inside that folder:
Open the workspace again. Cursor will create a fresh folder.
If the workspace freezes again after some time, grab two main.log files during the freeze, one from just before and one from just after, from the newest folder in ~/Library/Application Support/Cursor/logs/. Those logs usually show what the startup is getting stuck on.
No ETA on a real fix for the bloat yet, but locally this keeps the workspace usable without doing a full wipe.
I did all the above. The workspaceStorage directory of the workspace that I’m getting stuck on was 165MB.
I moved the json to a backup and still the same result. main.log for this after the move is