CURSOR UNUSABLE - " Agent execution provider did not respond in time. The extension host is not running or is unresponsive. "

I’m on linux ubuntu & only had this problem today
“extension host not running or unresponsive”
I’ve restarted, tried opening in sandbox, tried taking http down to 1.1, tried opening without GPU
reinstalling the .Appimage from the website and updating the app.
I’m on v 3.1.17
I’ve managed to get it to load via terminal with all extension disabled ~/Applications/Cursor-3.1.17-x86_64.AppImage --no-sandbox --disable-extensions but it kept crashing.
I removed the SSH extension, it returned. I deleted the SHH extension folder & removed it from the JSON, it returned, I uninstalled it via te GUI & it returned.
but now the agents have returned to not working when open via the gui icon.
HELP - cursor has been unusable all day!

Hey, this is a known issue. We’re seeing a spike in ERROR_EXTENSION_HOST_TIMEOUT on 3.1.17, and the symptoms match yours exactly. The backend is healthy, and the timeout is on the client side or extension host.

While the fix is still rolling out, try this workaround. Enable Legacy Terminal:

Settings -> Cursor Settings -> Agents -> Legacy Terminal enable

This helped Linux users with a similar issue, see this thread CURSOR AGENT ERROR ON UBUNTU (Agent execution timeout). Main megathread with reports and discussion My chats are just hanging with "Planning next moves" and "Taking longer than expected...". You can subscribe there, you’ll get an update when the fix ships.

If Legacy Terminal doesn’t help, let me know and we can dig deeper. I’ll need the Request ID from the chat. Top right of the chat > Copy Request ID.

Hello sir - thanks for the reply - I turned on the legacy toggle and same error, restarted cursor same error.
Just to let you know my exthost.log is constantly running even when there is no cursor running.

1st couple of lines n.",“type”:“string”},“browserAttachLocation”:{“default”:null,“description”:“Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.”,“oneOf”:[{“type”:“null”},{“enum”:[“ui”,“workspace”],“type”:“string”}]},“cascadeTerminateToConfigurations”:{“default”:,“description”:“A list of debug sessions which, when this debug session is terminated, will also be stopped.”,“items”:{“type”:“string”,“uniqueItems”:true},“type”:“array”},“customDescriptionGenerator”:{“description”:"Customize the textual description the debugger shows for objects (local variables, etc…). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n

8f3fa6e3-b697-4a00-98f2-123d194a3a4d
7410506f-de47-4651-a668-dcc995c32a0a

Thanks for the update. If exthost.log is still being written while Cursor is closed, it’s a sign the extension host process is still running as an orphan. Let’s clean things up and collect some diagnostics.

1. Kill all Cursor processes manually:

pkill -9 -f cursor
ps aux | grep -i cursor

Use the second command to confirm nothing is left. If something is still there, kill it by PID.

2. Clear stale state. Logs and cache can be deleted outright, they regenerate:

rm -rf ~/.config/Cursor/logs
rm -rf ~/.config/Cursor/CachedData

For workspace storage, rename instead of delete so you can roll back if needed:

mv ~/.config/Cursor/User/workspaceStorage ~/.config/Cursor/User/workspaceStorage.bak

If everything works after this, you can delete the .bak folder later. If something breaks (e.g. lost workspace layout), just mv it back.

3. Launch Cursor again and try the agent.

If the issue happens again, please send:

  • Request ID: top right in the chat > Copy Request ID
  • The full exthost.log from ~/.config/Cursor/logs/<latest session>/exthost/exthost.log - best to attach as a file, not paste
  • Output of ps aux | grep -i cursor after you start Cursor and reproduce the issue

This will help confirm if extension host processes are multiplying, or if one specific process is getting stuck.

all above done
Still error in chat fbc6840f-5845-4673-acc8-d91b5522fa56
Not allowed to attached the log file type to this chat so dumped a snapshot into a txt file

exhost log.txt (22.3 KB)

ps aux grep i cursor british.txt (11.2 KB)

Request ID: fb145ab1-ea91-4e19-bf79-cbed4aaccf0f
{“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”:}}
Agent Execution Timed Out [deadline_exceeded]
ConnectError: [deadline_exceeded] Agent Execution Timed Out
at rub (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:38300:25776)
at pgd.waitForProviderRegistration (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:38300:28797)
at async W1d._waitForPushRequestContextProviderRegistration (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:41305:4043)
at async W1d.streamFromAgentBackend (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:41305:7541)
at async W1d.getAgentStreamResponse (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:41305:18486)
at async N3e.submitChatMaybeAbortCurrent (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:29033:16809)
at async Va (vscode-file://vscode-app/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:40288:4233)

Still happening today - is there any chance I can get back to work today @deanrie

Hey, thanks for the logs. I found a specific root cause. In exthost.log there’s this line:

Extension verification failed for anysphere.cursor-agent-exec: Hash mismatch for files: dist/main.js
Activating extension anysphere.cursor-agent-exec failed

cursor-agent-exec is the extension that registers the agent execution provider. In your install bundle, the dist/main.js file is corrupted or was modified, so the hash check fails, the extension can’t activate, and then the client waits for the provider registration until it times out. That’s why you see waitForProviderRegistration in the stack of the last error. This also explains why neither Legacy Terminal nor clearing ~/.config/Cursor helped. The issue is not in user data, it’s in the install files.

Most likely this is leftover from a mixed install AppImage plus reinstall. You need a fully clean reinstall of the system Cursor:

  1. Close Cursor and kill all processes:
pkill -9 -f cursor
ps aux | grep -i cursor
  1. Remove the current install. The command depends on how you installed it:
  • If via .deb: sudo apt remove --purge cursor or whatever the package name is, check dpkg -l | grep -i cursor
  • If the AppImage was unpacked into /usr/share/cursor/: sudo rm -rf /usr/share/cursor
  • Also check and delete any leftover AppImage in ~/Applications/
  1. Download a fresh installer from Cursor · Download and reinstall. Use the .deb, it’s more stable than AppImage on Ubuntu 24.04:
sudo dpkg -i ~/Downloads/cursor_*.deb
  1. Launch Cursor and try the agent again.

You don’t need to touch user data in ~/.config/Cursor, your settings and account will stay. If the error still happens after a clean reinstall, send the new exthost.log and the Request ID and we’ll dig further.

Also about the sandbox errors in the log like Failed to unshare namespaces: EPERM. On Ubuntu 24.04+ this is AppArmor blocking unprivileged user namespaces. It’s not a blocker for the agent, shell exec works without the sandbox. It does not affect the timeout.

All now working after complete reinstall thanks @deanrie :superhero:

I’m getting this error when I enter any prompt, kindly assist at the earliest.

Version: 3.2.21 (user setup)
VSCode Version: 1.105.1
Date: 2026-05-03T01:46:14.413Z
Layout: editor
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: Windows_NT x64 10.0.26200