Cursor Extension Host crashes repeatedly && cursor-socket extension is malformed

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Cursor Extension Host crashes repeatedly. cursor-socket extension is malformed — missing out/ folder (only dist/ present) and no build scripts in package.json.

Steps to Reproduce

  1. ls “/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-socket/”
    → Output: dist package.json extension.webpack.config.js (NO out/ folder)

  2. cat “/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-socket/package.json”
    → No “scripts” section

  3. cd “/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-socket/”

  4. npm run compile
    → npm error Missing script: “compile”

Expected Behavior

cursor-socket extension should have out/ folder with compiled JS and package.json should have build scripts (compile/build).
Extension Host should not crash.

Operating System

MacOS

Version Information

Version: 2.6.20
VSCode Version: 1.105.1
Commit: b29eb4ee5f9f6d1cb2afbc09070198d3ea6ad760
Date: 2026-03-17T01:50:02.404Z
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Darwin arm64 23.6.0

Additional Information

macOS ARM64
Cursor version: [run cursor --version and paste]
Confirms https://forum.cursor.com/t/cursor-socket-extension-missing-out-directory-on-macos-arm64-extension-host-never-starts-v2-6-14/1540

Does this stop you from using Cursor

Yes - Cursor is unusable

Hey, thanks for the report. The picture is clear - out/ is missing, only dist/ present.

This bug was fixed in 2.6.18 but looks like it’s regressed in 2.6.20. You’re not alone - other users are reporting the same thing on recent builds. Flagged this with the team.

One thing - did you download the Apple Silicon or Mac Universal build? If ARM64, try the Universal one from Cursor · Download - helps narrow down which package is affected.

Let me know how it goes.

Result:
Universal build also missing out/ folder:
`ls: dist package.json extension.webpack.config.js`
Still no `out/` directory. Extension Host continues crashing.

Machine:
macOS [14.7.8 (23H730)]
ARM64 Mac [M1 model]

Cursor –V:
Version: 2.6.20 (Universal)
VSCode Version: 1.105.1
Commit: b29eb4ee5f9f6d1cb2afbc09070198d3ea6ad760
Date: 2026-03-17T01:50:02.404Z
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Darwin arm64 23.6.0

Addendum:
I tried to fix manually (and failed) → can’t build it locally.
extension.webpack.config.js requires ‘../cursor.webpack.config’ which doesn’t exist locally.

Webpack fails even after `npm install webpack webpack-cli`.

Full error:
[webpack-cli] Failed to load config: Cannot find module ‘../cursor.webpack.config’

macOS ARM64, Universal build → packaging regression confirmed. :smiling_face_with_tear:

Thanks for checking the Universal build - confirms the issue is in both packages.

Looks like the fix for this didn’t make it into v2.6.20. The next release should include it.

In the meantime, you can try this workaround - create a symlink:

cd "/Applications/Cursor.app/Contents/Resources/app/extensions/cursor-socket"
ln -s dist out

This redirects the Extension Host to dist/, where the compiled code actually lives. Restart Cursor after.

Let me know if that helps.

1 Like

Hi, following up with full diagnostics/what I tried:

TL;DR:
Symlink workaround did not fix the issue. Still crashing after applying ln -s dist out.

Full investigation:

  1. Confirmed cursor-socket missing out/ on both ARM64 and Universal builds (v2.6.20)
  2. Applied symlinkout → dist confirmed in ls -la
  3. Extension Host still crashes repeatedly with exit code 10

Verbose logs show:
[UtilityProcess id: 2, type: extensionHost, pid: 59163]: crashed with code 10 and reason ‘crashed’.

Edit: tested with --disable-extensions flag → Extension Host STILL crashes with code 10.
This rules out any third-party extension as the cause.
Therefore I assume that the crash is in Cursor’s own bundled extension host, not user-installed extensions.

  1. Codebase indexing UI stuck on “Loading” endlessly (can’t disable via UI)
  2. Also tried this: disabled indexing via settings.json:
    “cursor.codebaseIndexing.enabled”: false
    “cursor.indexRepos.enabled”: false
    → No effect, still crashing after restart

Conclusion:
The symlink workaround doesn’t resolve the underlying exit code 10 native crash.
Looks like a deeper packaging regression beyond just the missing out/ folder.

Hope that helps, waiting for v2.6.21+ fix…

Updated to v2.6.21 Universalcursor-socket out/ folder still missing.

Had to reapply symlink workaround manually after update wiped it.
Symlink + disabled indexing via settings.json still required.
Fix has not landed in 2.6.21.

However: after reapplying both workarounds on 2.6.21,
Extension Host is now stable — no more crash popups.

So the symlink + indexing fix combination works as a workaround,
but needs to be manually reapplied after every Cursor update.
A permanent fix in the installer would be appreciated.

Will keep you guys updated

Hey, thanks for the super detailed investigation, it’s really helpful.

Glad the symlink plus turning off indexing stabilized the Extension Host on 2.6.21.

The issue with the fix not making it into the latest builds is on our radar.

Let me know if anything changes.

1 Like

Good news: I’ve updated to latest buildup (stayed in Universal) and after working a bit on it, I don’t see any issue related to the extension host anymore:

Version: 2.6.22 (Universal)

VSCode Version: 1.105.1

Commit: c6285feaba0ad62603f7c22e72f0a170dc8415a0

Date: 2026-03-27T15:59:31.561Z (1 wk ago)

Build Type: Stable

Release Track: Default

Electron: 39.8.1

Chromium: 142.0.7444.265

Node.js: 22.22.1

V8: 14.2.231.22-electron.0

OS: Darwin arm64 23.6.0

Note: The cursor-socket out/ folder still missing, but Extension Host is stable without the symlink this time. The Settings workaround (indexing disabled) is still in place.

Possible the underlying crash was fixed separately from the packaging issue (?)