Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
Cursor Bug Report: WSL Extension Loading Failure
Summary
Cursor 2.5.0-pre.16.patch.1 fails to load built-in extensions (including Git Base, Emmet, JSON Language Features, and others) when connected to WSL. The extension host receives vscode-remote:// URIs instead of file:// paths, causing all affected extensions to fail activation.
Environment
- Cursor Version: 2.5.0-pre.16.patch.1
- OS: Windows (connecting to WSL)
- WSL Distro: Ubuntu
- Architecture: x64
Related Issue
During initial WSL connection attempts, Cursor failed to patch the launcher script because it was looking for code and code.cmd files that no longer exist:
2026-01-29 09:48:37.599 [error] Failed to patch code.sh launcher: Error: ENOENT: no such file or directory, open 'c:\Users\<user>\AppData\Local\Programs\cursor\resources\app\bin\code'
The resources\app\bin\ directory only contains cursor, cursor.cmd, cursor-tunnel.exe, and code-tunnel.exe β the code and code.cmd files are missing. Creating symlinks (code β cursor, code.cmd β cursor.cmd) resolved the WSL connection issue but did not fix extension loading.
Primary Error
Multiple built-in extensions fail to activate with the same root cause β the extension loader receives vscode-remote:// URIs when it requires file:// scheme paths:
Activating extension 'vscode.git-base' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/git-base/dist/extension.js', must be of file-scheme.
Cascade Failures
Because Git Base fails to load, dependent extensions also fail:
Cannot activate the 'Git' extension because its dependency 'Git Base' failed to activate
Cannot activate the 'GitHub' extension because its dependency 'Git Base' failed to activate
Cannot activate the 'anysphere.cursor-retrieval' extension because its dependency 'Git' failed to activate
Cannot activate the 'anysphere.cursor-agent-exec' extension because its dependency 'Git' failed to activate
Full List of Affected Extensions
All of these fail with the same βmust be of file-schemeβ error:
vscode.git-basevscode.emmetvscode.extension-editingvscode.markdown-language-featuresvscode.configuration-editingvscode.json-language-featuresvscode.npmvscode.debug-auto-launchvscode.merge-conflictanysphere.cursor-agentanysphere.cursor-polyfills-remoteanysphere.cursor-mcpanysphere.cursor-shadow-workspace
Steps to Reproduce
- Install Cursor 2.5.0-pre.16.patch.1 on Windows
- Connect to WSL (Ubuntu)
- Open Developer Tools (Ctrl+Shift+I) β Console tab
- Observe extension activation errors
Expected Behavior
Extensions should load successfully when connected to WSL. The extension host should resolve vscode-remote:// URIs to local file:// paths before attempting to load extension entry points.
Workaround Attempted
- Created symlinks for missing
codeandcode.cmdfiles (resolved WSL connection, not extension loading) - Removed and reinstalled
~/.cursor-serverin WSL (no effect) - Disabled/re-enabled extensions (no effect)
- Full uninstall/reinstall of Cursor (issue persists)
Root Cause Analysis
The WSL remote extension host appears to be passing unresolved vscode-remote://wsl%2Bubuntu/... URIs to the extension loader instead of first resolving them to local filesystem paths (file:///home/<user>/.cursor-server/...). This suggests a regression in the URI resolution layer of the remote extension host.
Console Log Excerpt
workbench.desktop.main.js:38661 Activating extension 'anysphere.cursor-agent' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/cursor-agent/dist/main', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.git-base' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/git-base/dist/extension.js', must be of file-scheme.
workbench.desktop.main.js:38661 Cannot activate the 'Git' extension because its dependency 'Git Base' failed to activate
workbench.desktop.main.js:38661 Cannot activate the 'GitHub' extension because its dependency 'Git Base' failed to activate
workbench.desktop.main.js:38661 Cannot activate the 'anysphere.cursor-retrieval' extension because its dependency 'Git' failed to activate
workbench.desktop.main.js:38661 Cannot activate the 'anysphere.cursor-agent-exec' extension because its dependency 'Git' failed to activate
workbench.desktop.main.js:38661 Activating extension 'anysphere.cursor-polyfills-remote' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/cursor-polyfills-remote/dist/main', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.emmet' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/emmet/dist/node/emmetNodeMain', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.extension-editing' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/extension-editing/dist/extensionEditingMain', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.markdown-language-features' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/markdown-language-features/dist/extension', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.configuration-editing' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/configuration-editing/dist/configurationEditingMain', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.json-language-features' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/json-language-features/client/dist/node/jsonClientMain', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.npm' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/npm/dist/npmMain', must be of file-scheme.
workbench.desktop.main.js:41441 Cannot activate the 'Git' extension because it depends on the 'Git Base' extension, which is not loaded. Would you like to reload the window to load the extension?
workbench.desktop.main.js:38661 Activating extension 'anysphere.cursor-mcp' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/cursor-mcp/dist/main', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'anysphere.cursor-shadow-workspace' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/cursor-shadow-workspace/dist/extension', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.debug-auto-launch' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/debug-auto-launch/dist/extension', must be of file-scheme.
workbench.desktop.main.js:38661 Activating extension 'vscode.merge-conflict' failed: Cannot load URI: 'vscode-remote://wsl%2Bubuntu/home/<user>/.cursor-server/bin/6a660d2ce321a7b8cb168c733bb17a388c2b8660/extensions/merge-conflict/dist/mergeConflictMain', must be of file-scheme.
workbench.desktop.main.js:41441 Cannot activate the 'GitHub' extension because it depends on the 'Git Base' extension, which is not loaded. Would you like to reload the window to load the extension?
### Steps to Reproduce
Install Cursor 2.5.0-pre.16.patch.1 on Windows
Open PowerShell as Administrator and create symlinks (required to connect to WSL at all):
powershell cd "C:\Users\<user>\AppData\Local\Programs\cursor\resources\app\bin\"
New-Item -ItemType SymbolicLink -Path "code" -Target "cursor"
New-Item -ItemType SymbolicLink -Path "code.cmd" -Target "cursor.cmd"
Open Cursor and connect to WSL (Ubuntu)
Open Developer Tools: Ctrl+Shift+I β Console tab
Observe "must be of file-scheme" errors for multiple extensions
### Operating System
Windows 10/11
### Version Information
Cursor 2.5.0-pre.16.patch.1 on Windows
### Does this stop you from using Cursor
Yes - Cursor is unusable