Windows desktop app stuck on Log In after browser shows “All set” (cursor:// callback fires but session never completes)

Where does the bug appear (feature/product)?
Cursor desktop app on Windows (not Bugbot, not Cloud Agent)

Describe the Bug
I can sign in on the Cursor website with this account, but the Windows desktop app never leaves the Log In / Sign Up screen.

What happens

  1. I open the Cursor desktop app and click Log In.
  2. Chrome opens the Sign in to Cursor desktop page (loginDeepControl with a challenge).
  3. I click Sign in. The browser then shows: All set! Feel free to return to Cursor. (loginDeepPage)
  4. Clicking Return to Cursor does nothing. There is no Copy link address on that button (it is not a normal link).
  5. The desktop app stays on Log In / Sign Up. If I click Log In again, it starts a new challenge and the loop repeats.

What I already verified

  • The desktop protocol handler works: Chrome shows Open Cursor and the app comes to the front.
  • Chrome DevTools console on loginDeepPage logs many times: Launched external handler for the desktop auth login route.
  • Opening that same auth route from the address bar also shows Open Cursor. After I click Open Cursor, the app still stays on Log In.
  • Developer: Reload Window only reloads the same Log In screen. The app is not actually signed in with a stuck UI.
  • Ctrl+Shift+I does nothing on the login window. Ctrl+Shift+P works. Developer: Toggle Developer Tools opens DevTools for the app.
  • Website Agents works with this account (Star Gold, [email protected]). Only the desktop app fails.

What I already tried

  • Uninstall and reinstall about 4 times. Login still stuck.
  • User settings.json includes http.proxySupport set to on, and cursor.general.disableHttp2 set to true.
  • Fully quit Cursor from Task Manager, then try login again.
  • Return to Cursor, Open in app, and the desktop auth login route.

Environment

  • OS: Windows
  • Browser used for login: Google Chrome (many extensions)
  • Desktop app never reaches the editor, only the Log In screen

Ask
Please help complete desktop login. Website login succeeds and the desktop protocol is launched, but the app never finishes the session. Is this the known Windows callback or HTTP/2 issue? Is there a supported workaround such as Edge, HTTP/1.1, a clean AppData wipe, or an older build?

Hi there!

We detected that this may be a bug report, so we’ve moved your post to the Bug Reports category.

To help us investigate and fix this faster, could you edit your original post to include the details from the template below?

Bug Report Template - Click to expand

Where does the bug appear (feature/product)?

  • Editor, Tab & Chat (autocomplete, Composer, in-editor agent)
  • Terminal & commands
  • Models, pricing & API keys (availability, Auto/Max, BYOK/Bedrock)
  • MCP & tools
  • Cloud Agents & Automations (cursor.com/agents, scheduled/event)
  • BugBot & Code Review
  • Cursor CLI
  • Cursor Mobile
  • Remote (SSH / Dev Containers / WSL)
  • Account, billing & login
  • Something else…

Describe the Bug
A clear and concise description of what the bug is.


Steps to Reproduce
How can you reproduce this bug? We have a much better chance at fixing issues if we can reproduce them!

  1. …
  2. …
  3. …

Expected Behavior
What is meant to happen here that isn’t working correctly?


Screenshots / Screen Recordings
If applicable, attach images or videos (.jpg, .png, .gif, .mp4, .mov)


Operating System

  • Windows 10/11
  • MacOS
  • Linux

Version Information

  • For Cursor IDE: Menu → About Cursor → Copy
  • For Cursor CLI: Run agent about in your terminal
IDE:
Version: 2.xx.x
VSCode Version: 1.105.1
Commit: ......

CLI:
CLI Version 2026.01.17-d239e66

For AI issues: which model did you use?
Model name (e.g., Sonnet 4, Tab…)


For AI issues: add Request ID with privacy disabled
Request ID: f9a7046a-279b-47e5-ab48-6e8dc12daba1
For Background Agent issues, also post the ID: bc-…


Additional Information
Add any other context about the problem here.


Does this stop you from using Cursor?

  • Yes - Cursor is unusable
  • Sometimes - I can sometimes use Cursor
  • No - Cursor works, but with this issue

The more details you provide, the easier it is for us to reproduce and fix the issue. Thanks!

Hey, thanks for the detailed report. From the description, it’s pretty clear where to look.

Quick summary of what’s happening, because it changes the direction of the investigation. The browser login on our side completes fine every time. But the app cancels the sign-in on its own. After you click Log In, it polls api2.cursor.sh about every 0.5 seconds for around 3 minutes to pick up the session. The Return to Cursor button only brings the app to the foreground, it does not transfer the login. So it’s expected that it “does nothing” on Windows. What’s not expected is that none of the app requests ever reach us. Something on this PC or network is blocking Cursor specifically, but not Chrome, from reaching api2.cursor.sh. The proxy and HTTP/2 settings you changed don’t affect this step, so you can revert them.

Two quick checks to narrow it down:

  1. Open this URL in Chrome: https://api2.cursor.sh/auth/poll?uuid=test&verifier=test
    You should get a small response like “not found”. If the page doesn’t load at all (connection error, timeout, DNS error), the network is blocking it. In that case, connect the PC to a phone hotspot and try Log In in Cursor again.

  2. If Chrome opens that URL fine, the block is at the app level. Temporarily pause any antivirus web protection or web shield, check Windows Firewall (and any third-party firewall) for a rule for Cursor.exe, close any VPN or proxy, then click Log In again.

If it still hangs after both steps, let’s capture what the app is seeing:

  1. Open Cursor and stay on the Log In screen.
  2. Press Ctrl+Shift+P, type Developer: Toggle Developer Tools, then press Enter.
  3. In DevTools, open the Network tab, then type api2 in the filter.
  4. Go back to Cursor, click Log In, and finish the browser login as usual.
  5. In Network, look for requests named poll. Click one and tell me what you see in the Status column, like (failed) net::ERR_... or a number.
  6. Check the Console tab too. If you see any red errors, paste them here.
  7. Share your Cursor version. Press Ctrl+Shift+P, search About, then Copy.

This will show exactly where it fails, and we can take it from there. Let me know how it goes.