In a WSL-remote Cursor window, every agent prompt fails after ~70s with the toast:
Agent Execution Timed Out — The agent execution provider did not respond in time.
This may indicate the extension host is not running or is unresponsive.
Renderer log repeats: [agent-exec] Provider registration timed out (attempt 1/9 … 8/9),
and the failure stack ends in waitForProviderRegistration / _waitForPushRequestContextProviderRegistration (same stack as Cursor Agents stuck). Root cause (from extension-host log + client-code analysis): the bundled extension anysphere.cursor-agent-exec (activationEvents: ["*"]) activates in no extension host
in a remote-WSL window:
the remote exthost loads only vscode.git-base;
the window’s local/UI exthost loads only anysphere.remote-wsl.
It is fully deployed on the remote and activates fine in local windows. Placement is
governed by two server-side Statsig gates — cursor_extensions_isolation_v2 (default ON) and decompose_always_local_ext_host (default OFF), whose local overrides are locked to
internal/dev accounts. With that combo, cursor-agent-exec is force-pinned via fanout
“priming” (primeCursorFanoutRunningLocations) to a local isolated ext host that never
starts in remote-WSL, and remote.extensionKind is structurally bypassed because priming
runs before that setting is read. Net result: the agent-exec provider never registers, so
the client waits out the full retry budget and reports the timeout.
The extension is present and valid; it is simply never placed in a running host.
Steps to Reproduce
Windows 11 + WSL2 (Ubuntu, systemd on).
In Cursor, connect to a WSL remote (anysphere.remote-wsl) and open a folder inside the
WSL filesystem.
Open the same project in a local Windows window → agent works immediately.
Expected Behavior
anysphere.cursor-agent-exec activates in an extension host available to the remote-WSL
window (honoring remote.extensionKind), the provider registers, and agent prompts work —
exactly as they do in local windows and via the WSL cursor-agent CLI.
Confirmed not corrupted install (no hash-mismatch in exthost.log), not dual WSL
extensions (only anysphere.remote-wsl installed), not language-pack related (UI is
English).
Not fixable via settings.json / argv.json / env vars / CLI flags.
Workarounds (both confirmed working)
Use the WSL cursor-agent CLI inside the distro.
Use the local Windows IDE agent (open the project as a local window, not WSL-remote).
Hi again, Just now figured i tried on local, not WSL before, that why it worked. Sorry for misleading you, shouldn’t try before first coffee .
Nothing has changed, WSL still not working / timing out. Recent attempt:
Request ID: 6172bb6f-8518-4165-b3cd-8fb2e9ac92fa
{“error”:“ERROR_EXTENSION_HOST_TIMEOUT”,“details”:{“title”:“Agent Execution Timed Out”,“detail”:“The agent execution provider did not respond in time. This may indicate the extension host is not running or is unresponsive.”,“isRetryable”:false,“shouldShowImmediateError”:true,“additionalInfo”:{},“buttons”:[{“label”:“Reload Window”,“reloadWindow”:{}}],“planChoices”:}}
The agent execution provider did not respond in time. This may indicate the extension host is not running or is unresponsive.
Agent Execution Timed Out [deadline_exceeded]
ConnectError: [deadline_exceeded] Agent Execution Timed Out
at z0w (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:12160:32673)
at qts.waitForProviderRegistration (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:12160:37717)
at async Hcp._waitForPushRequestContextProviderRegistration (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:24547:4072)
at async AOe (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:11913:12020)
at async vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:24547:8080
at async AOe (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:11913:12020)
at async Hcp.streamFromAgentBackend (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:24547:8004)
at async Hcp.getAgentStreamResponse (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:24547:22878)
at async L4e.submitChatMaybeAbortCurrent (vscode-file://vscode-app/c:/Users/mceglare/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.glass.main.js:12144:2399)
Sorry for the delay here. Can you let us know if you’re still facing the issue on Cursor v3.10? The logs in the backend say no, but it’s possible you just haven’t tried since then. Let us know!