Write tool and Web search hanging indefinitely

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

The Write tool and Web search tool hang indefinitely with relatively small requests.

Steps to Reproduce

Request an agent to write a planning doc for example, or conduct a small research task on the web.

Expected Behavior

The request should complete usually in <30 seconds

Operating System

MacOS

Version Information

Version: 3.6.31 (Universal)
VS Code Extension API: 1.105.1
Commit: 81fcf2931d7687b4ff3f3017858d0c6dee7e2a60
Date: 2026-05-31T17:46:29.630Z
Layout: glass
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
xterm.js: 6.1.0-beta.220
OS: Darwin arm64 25.2.0

For AI issues: which model did you use?

Any model, Auto, Opus etc

Does this stop you from using Cursor

Sometimes - I can sometimes use Cursor

Hey, thanks for the report. The symptom, hangs forever, usually fits the extension host or execution pipeline class of issues, but with the current description we can’t reproduce it. I’ll need a bit more detail:

  1. When the tool hangs, do you see any error text in the UI like “Execution backend unavailable” or “Agent Execution Timed Out”? Please share a screenshot of that state.
  2. Did this start after a specific update, or has it always been happening?
  3. Are you using Remote SSH or WSL, or is everything local?
  4. If you can catch it while it’s hanging, copy the Request ID: chat menu (top right) > Copy Request ID.

For now, you can also try:

  • Cursor Settings > Network > Run Diagnostics and check if there are any connectivity issues.
  • If you’re on a corporate network or using a VPN or proxy, enable App Settings Cmd+Shift+,, search for “HTTP/2”, disable HTTP/2, then restart.
  • Test without extensions: run cursor --disable-extensions from a terminal and see if it still hangs.

Let me know what you find. The error message and Request ID will make it much clearer where to dig next.

I am having the same issue.

Intel(R) Core™ Ultra 7 155H (1.40 GHz);
16.0 GB (15.6 GB usable);NVIDIA GeForce RTX 4060 Laptop GPU (8 GB)
Intel(R) Arc™ Graphics (128 MB);

Windows: 64-bit operating system, x64-based processor

Edition Windows 11 Home
Version 25H2
Installed on ‎27/‎04/‎2025
OS build 26200.8524
Serial number PF4ZWSXT
Experience Windows Feature Experience Pack 1000.26100.315.0

Error message after hanging

The agent execution provider did not respond in time. This may indicate the extension host is not running or is unresponsive. Request ID: 7b5d0b66-05e7-469b-81db-9789d15da97e

‘CopyID’ =

Request ID: 7b5d0b66-05e7-469b-81db-9789d15da97e
{“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 ULw (vscode-file://vscode-app/c:/Users/heane/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:44341:28583)
at VKd.waitForProviderRegistration (vscode-file://vscode-app/c:/Users/heane/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:44341:33347)
at async _bf._waitForPushRequestContextProviderRegistration (vscode-file://vscode-app/c:/Users/heane/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:47691:4084)
at async _bf.streamFromAgentBackend (vscode-file://vscode-app/c:/Users/heane/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:47691:7354)
at async _bf.getAgentStreamResponse (vscode-file://vscode-app/c:/Users/heane/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:47691:19276)
at async Zut.submitChatMaybeAbortCurrent (vscode-file://vscode-app/c:/Users/heane/AppData/Local/Programs/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:36407:17835)

Cursor Network Diagnostic Results

All Sucess (I’m a new user so not allowed to copy the logs across which contain links)

Hey, thanks for the details. The error text and the Request ID are exactly what we need.

ERROR_EXTENSION_HOST_TIMEOUT / Agent Execution Timed Out [deadline_exceeded] means the extension host isn’t responding in time, so tools like Write and Web search get stuck. Since Network Diagnostics passed, it’s not your network. It’s the extension host itself. This is a known issue and we’re tracking it.

What to try right now:

  1. Fully quit Cursor and reopen it. Don’t just close the window. Or click Reload Window in the error. This often brings a stuck host back.
  2. Run cursor --disable-extensions from a terminal and see if the hang still happens. If it works fine without extensions, then one of your extensions is causing the host to hang.
  3. Open Process Explorer via Ctrl+Shift+P then Developer: Open Process Explorer. When it hangs, check the extensionHost process and see if it’s stuck at 100% CPU.

I’ve increased the trust level on your account, please try uploading the logs.

Let me know if any of the steps help. I’m especially interested in the result with --disable-extensions.

Thanks - now this will seem embarrassing, but… I restarted and it’s fine now..

*Note : I didn’t just file a community note at the first instance, I spent a while trying to figure it out, closing everything out, ending processes, restarting laptop, etc… and it still felt extremely ‘stuck’…

But now, having restarted again, it now works fine. Previously, I had not ‘saved’ the logs on that diagnostic. Here are the diagnostic logs with and without disable-extensions.

With (default):

Cursor Network Diagnostic Results

DNS: Success
Logs:
[2026-06-03T14:30:00.897Z] Host: api2.cursor.sh
[2026-06-03T14:30:00.897Z] Servers: 127.0.0.1
[2026-06-03T14:30:00.897Z] Resolved to 3.212.159.129 in 15ms
[2026-06-03T14:30:00.951Z] Resolved to 3.212.159.129 in 15ms
[2026-06-03T14:30:00.986Z] Resolved to 3.212.159.129 in 1ms
[2026-06-03T14:30:00.998Z] Resolved to 3.212.159.129 in 6ms
[2026-06-03T14:30:01.068Z] Host: api2.cursor.sh
[2026-06-03T14:30:01.068Z] Servers: system
[2026-06-03T14:30:01.069Z] Resolved to 100.52.126.113, 98.83.186.138, 100.52.101.79, 44.207.99.173, 13.217.154.251, 32.198.136.22, 35.172.15.201, 3.213.234.217 in 47ms
[2026-06-03T14:30:01.098Z] Resolved to 100.52.126.113, 98.83.186.138, 100.52.101.79, 44.207.99.173, 13.217.154.251, 32.198.136.22, 35.172.15.201, 3.213.234.217 in 0ms
[2026-06-03T14:30:01.104Z] Resolved to 100.52.126.113, 98.83.186.138, 100.52.101.79, 44.207.99.173, 13.217.154.251, 32.198.136.22, 35.172.15.201, 3.213.234.217 in 1ms
[2026-06-03T14:30:01.110Z] Resolved to 100.52.126.113, 98.83.186.138, 100.52.101.79, 44.207.99.173, 13.217.154.251, 32.198.136.22, 35.172.15.201, 3.213.234.217 in 1ms
[2026-06-03T14:30:01.110Z] Result: true

HTTP/2: Success
Logs:
[2026-06-03T14:30:00.868Z] Start
[2026-06-03T14:30:01.076Z] Host: api2.cursor.sh
[2026-06-03T14:30:01.076Z] Protocol: h2
[2026-06-03T14:30:01.076Z] Result: true in 208ms

SSL: Success
Logs:
[2026-06-03T14:30:00.868Z] Start
[2026-06-03T14:30:01.183Z] URL: https://api2.cursor.sh/
[2026-06-03T14:30:01.183Z] Status: 200
[2026-06-03T14:30:01.183Z] IP: 3.212.159.129
[2026-06-03T14:30:01.183Z] Issuer: C=US; O=Amazon; CN=Amazon RSA 2048 M01
[2026-06-03T14:30:01.183Z] Name: api2.cursor.sh
[2026-06-03T14:30:01.183Z] AltName: DNS:api2.cursor.sh, DNS:prod.authentication.cursor.sh, DNS:*.api2.cursor.sh
[2026-06-03T14:30:01.183Z] DNS Time: 11ms
[2026-06-03T14:30:01.183Z] Connect Time: 91ms
[2026-06-03T14:30:01.183Z] TLS Time: 98ms
[2026-06-03T14:30:01.183Z] Result: true in 315ms

API: Success
Logs:
[2026-06-03T14:30:00.869Z] Start
[2026-06-03T14:30:01.317Z] Result: true

Ping: Success
Logs:
[2026-06-03T14:30:00.871Z] Sending ping 1
[2026-06-03T14:30:01.316Z] Response: ‘ping’ in 445ms
[2026-06-03T14:30:01.316Z] Sending ping 2
[2026-06-03T14:30:01.350Z] Response: ‘ping’ in 34ms
[2026-06-03T14:30:01.350Z] Sending ping 3
[2026-06-03T14:30:01.396Z] Response: ‘ping’ in 46ms
[2026-06-03T14:30:01.396Z] Sending ping 4
[2026-06-03T14:30:01.437Z] Response: ‘ping’ in 41ms
[2026-06-03T14:30:01.437Z] Sending ping 5
[2026-06-03T14:30:01.487Z] Response: ‘ping’ in 50ms
[2026-06-03T14:30:01.487Z] Result: true

Chat: Success
Logs:
[2026-06-03T14:30:00.872Z] Starting stream
[2026-06-03T14:30:01.343Z] Response: ‘foo’ in 469ms
[2026-06-03T14:30:02.408Z] Response: ‘foo’ in 1065ms
[2026-06-03T14:30:03.403Z] Response: ‘foo’ in 995ms
[2026-06-03T14:30:04.406Z] Response: ‘foo’ in 1003ms
[2026-06-03T14:30:05.403Z] Response: ‘foo’ in 997ms
[2026-06-03T14:30:06.428Z] Result: true

Agent: Success
Logs:
[2026-06-03T14:30:00.873Z] Starting stream
[2026-06-03T14:30:00.874Z] Pushing first message
[2026-06-03T14:30:01.359Z] Response: ‘foo’ in 485ms
[2026-06-03T14:30:01.871Z] Pushing next message
[2026-06-03T14:30:01.903Z] Response: ‘foo’ in 544ms
[2026-06-03T14:30:02.406Z] Pushing next message
[2026-06-03T14:30:02.437Z] Response: ‘foo’ in 534ms
[2026-06-03T14:30:02.938Z] Pushing next message
[2026-06-03T14:30:02.969Z] Response: ‘foo’ in 532ms
[2026-06-03T14:30:03.471Z] Pushing next message
[2026-06-03T14:30:03.907Z] Response: ‘foo’ in 938ms
[2026-06-03T14:30:03.907Z] Result: true

Marketplace: Success
Logs:
[2026-06-03T14:30:00.863Z] Host: marketplace.cursorapi.com
[2026-06-03T14:30:01.035Z] Response in 172ms
[2026-06-03T14:30:01.035Z] Response: 200
[2026-06-03T14:30:01.036Z] Response Type: cors
[2026-06-03T14:30:01.036Z] Server: null
[2026-06-03T14:30:01.036Z] Result: OK in 173ms

Authentication: Success
Logs:
[2026-06-03T14:30:00.864Z] Host: prod.authentication.cursor.sh
[2026-06-03T14:30:01.159Z] Response: 200 in 295ms

Authentication UI: Success
Logs:
[2026-06-03T14:30:00.868Z] DNS lookup: authenticator.cursor.sh
[2026-06-03T14:30:00.923Z] Resolved authenticator.cursor.sh to 172.64.152.23 in 24ms

Cursor Tab: Success
Logs:
[2026-06-03T14:30:00.868Z] DNS lookup: api3.cursor.sh
[2026-06-03T14:30:00.897Z] Resolved api3.cursor.sh to 104.18.19.125 in 9ms

Agent Endpoint: Success
Logs:
[2026-06-03T14:30:00.868Z] DNS lookup: agent.api5.cursor.sh
[2026-06-03T14:30:00.949Z] Resolved agent.api5.cursor.sh to 100.30.166.181 in 29ms

Codebase Indexing: Success
Logs:
[2026-06-03T14:30:00.868Z] DNS lookup: repo42.cursor.sh
[2026-06-03T14:30:00.951Z] Resolved repo42.cursor.sh to 32.195.116.17 in 32ms

Downloads: Success
Logs:
[2026-06-03T14:30:00.866Z] Host: downloads.cursor.com
[2026-06-03T14:30:01.219Z] Response: 403 in 353ms

CDN: Success
Logs:
[2026-06-03T14:30:00.868Z] Host: cursor-cdn.com
[2026-06-03T14:30:01.202Z] Response: 404 in 334ms

***************

***************

***************

disable extensions toggled on.

Cursor Network Diagnostic Results

FAILED (2): Chat, Agent

DNS: Success
Logs:
[2026-06-03T14:33:57.396Z] Host: api2.cursor.sh
[2026-06-03T14:33:57.396Z] Servers: 127.0.0.1
[2026-06-03T14:33:57.396Z] Resolved to 54.211.9.20 in 699ms
[2026-06-03T14:33:57.838Z] Resolved to 54.211.9.20 in 26ms
[2026-06-03T14:33:58.094Z] Resolved to 54.211.9.20 in 14ms
[2026-06-03T14:33:58.149Z] Resolved to 54.211.9.20 in 53ms
[2026-06-03T14:33:58.282Z] Host: api2.cursor.sh
[2026-06-03T14:33:58.282Z] Servers: system
[2026-06-03T14:33:58.282Z] Resolved to 32.199.134.82, 3.213.234.217, 98.83.53.152, 3.224.226.247, 32.197.158.221, 107.23.129.242, 44.214.164.147, 54.198.196.99 in 130ms
[2026-06-03T14:33:58.286Z] Resolved to 32.199.134.82, 3.213.234.217, 98.83.53.152, 3.224.226.247, 32.197.158.221, 107.23.129.242, 44.214.164.147, 54.198.196.99 in 0ms
[2026-06-03T14:33:58.293Z] Resolved to 32.199.134.82, 3.213.234.217, 98.83.53.152, 3.224.226.247, 32.197.158.221, 107.23.129.242, 44.214.164.147, 54.198.196.99 in 1ms
[2026-06-03T14:33:58.296Z] Resolved to 32.199.134.82, 3.213.234.217, 98.83.53.152, 3.224.226.247, 32.197.158.221, 107.23.129.242, 44.214.164.147, 54.198.196.99 in 1ms
[2026-06-03T14:33:58.296Z] Result: true

HTTP/2: Success
Logs:
[2026-06-03T14:33:56.673Z] Start
[2026-06-03T14:33:58.071Z] Host: api2.cursor.sh
[2026-06-03T14:33:58.071Z] Protocol: h2
[2026-06-03T14:33:58.071Z] Result: true in 1398ms

SSL: Success
Logs:
[2026-06-03T14:33:56.673Z] Start
[2026-06-03T14:33:58.164Z] URL: https://api2.cursor.sh/
[2026-06-03T14:33:58.164Z] Status: 200
[2026-06-03T14:33:58.164Z] IP: 54.211.9.20
[2026-06-03T14:33:58.164Z] Issuer: C=US; O=Amazon; CN=Amazon RSA 2048 M01
[2026-06-03T14:33:58.164Z] Name: api2.cursor.sh
[2026-06-03T14:33:58.164Z] AltName: DNS:api2.cursor.sh, DNS:prod.authentication.cursor.sh, DNS:*.api2.cursor.sh
[2026-06-03T14:33:58.165Z] DNS Time: 33ms
[2026-06-03T14:33:58.165Z] Connect Time: 1074ms
[2026-06-03T14:33:58.165Z] TLS Time: 260ms
[2026-06-03T14:33:58.165Z] Result: true in 1492ms

API: Success
Logs:
[2026-06-03T14:33:56.676Z] Start
[2026-06-03T14:33:59.494Z] Result: true

Ping: Success
Logs:
[2026-06-03T14:33:56.678Z] Sending ping 1
[2026-06-03T14:33:59.283Z] Response: ‘ping’ in 2605ms
[2026-06-03T14:33:59.283Z] Sending ping 2
[2026-06-03T14:33:59.680Z] Response: ‘ping’ in 397ms
[2026-06-03T14:33:59.680Z] Sending ping 3
[2026-06-03T14:33:59.795Z] Response: ‘ping’ in 115ms
[2026-06-03T14:33:59.796Z] Sending ping 4
[2026-06-03T14:33:59.833Z] Response: ‘ping’ in 37ms
[2026-06-03T14:33:59.833Z] Sending ping 5
[2026-06-03T14:33:59.942Z] Response: ‘ping’ in 109ms
[2026-06-03T14:33:59.942Z] Result: true

Chat: Error: Streaming responses are being buffered by a proxy in your network environment
Logs:
[2026-06-03T14:33:56.681Z] Starting stream
[2026-06-03T14:33:59.282Z] Response: ‘foo’ in 2596ms
[2026-06-03T14:33:59.598Z] Response: ‘foo’ in 316ms
[2026-06-03T14:34:00.593Z] Response: ‘foo’ in 995ms
[2026-06-03T14:34:01.704Z] Response: ‘foo’ in 1111ms
[2026-06-03T14:34:02.600Z] Response: ‘foo’ in 896ms
[2026-06-03T14:34:03.578Z] Result: Error: Streaming responses are being buffered by a proxy in your network environment

Agent: Error: Bidirectional streaming is not supported by the http2 proxy in your network environment
Logs:
[2026-06-03T14:33:56.685Z] Starting stream
[2026-06-03T14:33:56.686Z] Pushing first message
[2026-06-03T14:33:59.158Z] Response: ‘foo’ in 2472ms
[2026-06-03T14:33:59.673Z] Pushing next message
[2026-06-03T14:33:59.797Z] Response: ‘foo’ in 639ms
[2026-06-03T14:34:00.306Z] Pushing next message
[2026-06-03T14:34:00.452Z] Response: ‘foo’ in 655ms
[2026-06-03T14:34:00.957Z] Pushing next message
[2026-06-03T14:34:01.114Z] Response: ‘foo’ in 661ms
[2026-06-03T14:34:01.623Z] Pushing next message
[2026-06-03T14:34:01.742Z] Response: ‘foo’ in 628ms
[2026-06-03T14:34:01.742Z] Result: Error: Bidirectional streaming is not supported by the http2 proxy in your network environment

Marketplace: Success
Logs:
[2026-06-03T14:33:56.659Z] Host: marketplace.cursorapi.com
[2026-06-03T14:33:56.891Z] Response in 232ms
[2026-06-03T14:33:56.891Z] Response: 200
[2026-06-03T14:33:56.891Z] Response Type: cors
[2026-06-03T14:33:56.891Z] Server: null
[2026-06-03T14:33:56.891Z] Result: OK in 232ms

Authentication: Success
Logs:
[2026-06-03T14:33:56.662Z] Host: prod.authentication.cursor.sh
[2026-06-03T14:33:56.780Z] Response: 200 in 118ms

Authentication UI: Success
Logs:
[2026-06-03T14:33:56.674Z] DNS lookup: authenticator.cursor.sh
[2026-06-03T14:33:57.525Z] Resolved authenticator.cursor.sh to 172.64.152.23 in 762ms

Cursor Tab: Success
Logs:
[2026-06-03T14:33:56.674Z] DNS lookup: api3.cursor.sh
[2026-06-03T14:33:57.397Z] Resolved api3.cursor.sh to 104.18.18.125 in 661ms

Agent Endpoint: Success
Logs:
[2026-06-03T14:33:56.674Z] DNS lookup: agent.api5.cursor.sh
[2026-06-03T14:33:57.433Z] Resolved agent.api5.cursor.sh to 54.163.65.150 in 661ms

Codebase Indexing: Success
Logs:
[2026-06-03T14:33:56.674Z] DNS lookup: repo42.cursor.sh
[2026-06-03T14:33:57.497Z] Resolved repo42.cursor.sh to 32.198.148.213 in 760ms

Downloads: Success
Logs:
[2026-06-03T14:33:56.670Z] Host: downloads.cursor.com
[2026-06-03T14:33:56.845Z] Response: 403 in 174ms

CDN: Success
Logs:
[2026-06-03T14:33:56.672Z] Host: cursor-cdn.com
[2026-06-03T14:33:56.950Z] Response: 404 in 278ms

@heaneyben, it’s not embarrassing at all. Freezes like this often get fixed by a full restart, so you’re all good.

But your --disable-extensions test showed an important detail:

Chat: Streaming responses are being buffered by a proxy in your network environment
Agent: Bidirectional streaming is not supported by the http2 proxy in your network environment

This means something in your network setup like a corporate or transparent proxy, VPN, or antivirus traffic inspection is buffering HTTP/2 streaming. When that happens, the agent stops getting responses in time and tool calls can hang until they hit a timeout. The intermittent behavior matches this too, sometimes the proxy streams fine, sometimes it doesn’t.

To avoid this, try turning off HTTP/2:

  • App Settings Ctrl+Shift+,
  • Search for HTTP/2
  • Turn on Disable HTTP/2
  • Restart Cursor

This makes Cursor use HTTP/1.1, which these proxies usually don’t break. Let me know if the hangs come back after this and we can dig deeper.