[Mitigated] HTTP/2 Connection Failures with SSLV3_ALERT_HANDSHAKE_FAILURE, primary affecting users in Ukraine

Hey everyone!

We’re aware of an ongoing issue that appears to primarily affect users connecting from Ukrainian IP addresses. When HTTP/2 is enabled, connections will sometimes fail with an SSL handshake error. This may be exacerbated by unstable internet connections.

This thread consolidates multiple reports so we can track progress in one place!

Symptoms

  • An error message containing
SSLV3_ALERT_HANDSHAKE_FAILURE:../../third_party/boringssl/src/ssl/tls_record.cc:486:SSL alert number 40

Workarounds

Disable HTTP/2 (Reccomended)

  1. Open Cursor Settings
  2. Search for “HTTP/2”
  3. Set HTTP Compatibility Mode to HTTP/1.1
  4. Restart Cursor

Clear App Data (Not Reccomended)

  • Follow the instructions here to clear Application data.

:warning: This is a destructive operation that will delete extensions, themes, chats, and other installation-related data. Users also report that the issue comes back after some time.

Updates

Jan 28, 2026: We believe that we have identified the issue and implemented a mitigation. If you still encounter this issue, please reply to this thread!
Jan 23, 2026: Added note about clearing Application Data
Jan 21, 2026: Consolidated thread created. Issue tracked internally.

5 Likes

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Since last week the chat in the Cursor IDE always gives me Connection error:

Request ID: b98b2bda-1ce1-4868-91ad-d2c66300369d
ConnectError: [internal] 4277788264640:error:10000410:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE:../../third_party/boringssl/src/ssl/tls_record.cc:486:SSL alert number 40

at UZc.$streamAiConnect (vscode-file://vscode-app/tmp/.mount_cursor6LiNq3/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:6331:406060)
at async vscode-file://vscode-app/tmp/.mount_cursor6LiNq3/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:565:75277
at async Object.run (vscode-file://vscode-app/tmp/.mount_cursor6LiNq3/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:6399:42465)
at async o (vscode-file://vscode-app/tmp/.mount_cursor6LiNq3/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:2815:1269)
at async Promise.allSettled (index 0)
at async o7r.run (vscode-file://vscode-app/tmp/.mount_cursor6LiNq3/usr/share/cursor/resources/app/out/vs/workbench/workbench.desktop.main.js:2815:6513)

I’m in Ukraine. And I get the same error if I try to connect using VPN with Ukrainian IP (so it’s not an issue related to my internet provider).
And if I use VPN with, say, German or American IP, everything works fine.

Steps to Reproduce

Connect using Ukrainian IP.

Expected Behavior

I should be able to use Cursor without VPN connections (and it worked fine until last week).

Screenshots / Screen Recordings

Operating System

Linux

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.1.39
VSCode Version: 1.105.1
Commit: 60d42bed27e5775c43ec0428d8c653c49e58e260
Date: 2025-11-27T02:30:49.286Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Linux x64 6.8.0-87-generic

Does this stop you from using Cursor

No - Cursor works, but with this issue

8 Likes

Hey, thanks for the report.

Quick workaround to try:

  • App Settings Ctrl+, → search “HTTP/2” → enable “Disable HTTP/2” → restart Cursor → test chat again.

If it still fails, please share:

  • Settings → Network → Run Diagnostics (screenshot)
  • Your ISP and whether you’re using any firewall/proxy (e.g., Zscaler)

Reference: another user hit the same SSL alert and disabling HTTP/2 fixed it: SSLV3_ALERT_HANDSHAKE_FAILURE when creating new chat

Let me know if the HTTP/2 toggle helps.

5 Likes

Disabling HTTP/2 helped.
Thanks a lot!

3 Likes

Hi, I’m sorry but is there a way to enable http2 in cursor? with http1 it feels like much worse and slower experience.
It stopped working for me for about a week already and for my friends from Ukraine as well?

4 Likes

I second this ^

composer-1 was lightning fast for me all the time, and now with HTTP1 (which is the only option) it’s working significantly slower.

2 Likes

Same issue and reverting to HTTP/1.1 doesn’t work

1 Like

The issue is now gone (v2.2.20)

Thanks for resolving it Cursor team!

Sorry for writing back and forth - the issue now happens again. It works with http1 and stops working with http2.

Reinstalling Cursor also didn’t help.

2 Likes

Hello, I’m facing the same issue when I try to run a query. I have Cursor Pro subscription

1 Like

Try change dns server

Same for me, trick with http2 doesnt work

Same issue. When trying to use HTTP2, I’m getting error:
а давай виводити вати без дробних, тоді більше взіле в екран

1116693999424:error:10000410:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE:../../third_party/boringssl/src/ssl/tls_record.cc:486:SSL alert number 40

[internal]

When switching to HTTP 1.1 it throwing error:
We’re having trouble connecting to the model provider. This might be temporary - please try again in a moment.

Fixed the issue.

  1. Removed desktop app.
  2. Removed Cursor folder in Application Support (`rm -rf ~/Library/Application\ Support/Cursor/`)
  3. Installed the app.

The issue has gone so far.

The issue is still relevant. Today, Cursor self-upgraded from v2.1.42 to v2.3.35. I did repeat the steps mentioned here; however, it still doesn’t work fully.
v2.1.42 was supposedly the latest version that didn’t have troubles with HTTP2 connection.

At the moment (v2.3.35), the Auto mode works for me, while the others (tested Composer-1 and Gemini 3 Flash) don’t. It’s a bummer - the tool is completely unusable.

request IDs for debug:

  • 66ffcc91-fb8c-4df3-953c-23f4cdaa8b55 (failed)
  • 7610f538-e383-48a7-9ddb-f8397591db99 (failed)
  • 3bf9cbc4-4d82-4b19-ad7f-e5488f23aeb2 (successful)

@deanrie tagging you for visibility

6 Likes

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

During diagnostics from a network using Google DNS 8.8.8.8, if you ping agent.api5.cursor.sh, it resolves to

agent.api5.cursor.sh.cdn.cloudflare.net - 104.18.19.125

Directly accessing the link results in ERR_SSL_VERSION_OR_CIPHER_MISMATCH, and the IDE shows errors as in the screenshot. The likely cause is incorrectly configured SSL certificates: Fix VERSION_OR_CIPHER_MISMATCH · Cloudflare SSL/TLS docs
.

When using Quad9 DNS 149.112.112.112,

ping resolves to

agent.api5latency-useast.cursor.sh - 100.30.166.181

and there are no SSL issues; HTTP/2 works correctly. Therefore, the problem is related to Cloudflare settings.

There is also an issue in cursor-cli where some requests use an HTTP/2 approach, even though it is explicitly disabled in the settings, so it cannot be used reliably at this time.

My IP is from Ukraine, and DNS resolution may differ when queried from another region.

Steps to Reproduce

as described above

Screenshots / Screen Recordings

Operating System

Windows 10/11
MacOS
Linux

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.2.43 (system setup)
VSCode Version: 1.105.1
Commit: 32cfbe848b35d9eb320980195985450f244b3030
Date: 2025-12-19T06:06:44.644Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Windows_NT x64 10.0.19045

Does this stop you from using Cursor

Yes - Cursor is unusable

Thanks for the detailed report. Since switching to Quad9 DNS fixes the SSL issue - does that workaround also resolve the cursor-cli problem, or does the CLI still fail even with Quad9?

If the CLI still has issues, what command are you running and what error do you see?

I’ve also raised this issue with the team

If I use this DNS (the specific one is not important; the key point is that the routing does not go through Cloudflare), the issue disappears both in the IDE and in the CLI.

Since this problem is related to the network rather than the tool itself, it is necessary to verify that SSL is correctly configured on the server side.

1 Like

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

In 2.1.47-48 HTTP2 stopped working and resorted to 1.1 which is slow but stable. 2.1.49 - HTTP2 worked again and 2.1.50 - HTTP2 does not work again and HTTP1.1 chokes often. I tried different connections and it did not help.

Steps to Reproduce

Hard to say

Screenshots / Screen Recordings

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.1.50 (Universal)
VSCode Version: 1.105.1
Commit: 56f0a83df8e9eb48585fcc4858a9440db4cc7770
Date: 2025-12-06T23:39:52.834Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Darwin arm64 25.1.0

For AI issues: which model did you use?

all models behaves the same for this isue

For AI issues: add Request ID with privacy disabled

Request ID: 954552f8-622a-4915-9450-46c355b58386
ConnectError: [internal] 1185413486912:error:10000410:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE:../../third_party/boringssl/src/ssl/tls_record.cc:486:SSL alert number 40

at nsu.$streamAiConnect (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6409:406134)
at async vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:565:80832
at async Object.run (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6477:42602)
at async o (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2815:1269)
at async Promise.allSettled (index 0)
at async fHr.run (vscode-file://vscode-app/Applications/Cursor.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2815:6519)

Does this stop you from using Cursor

Yes - Cursor is unusable