Linux desktop app: OAuth login fails after Google consent (no handler for callback deeplink)
Status Open
Maintainer reply None cached
Workaround ✓ Mentioned in description ↑
Activity 0 comments · opened Oct 10, 2026
Environment
- Claude Code desktop app on Ubuntu (headless server, no desktop environment)
- Recurs on every app/server restart
- Not reproducible on Windows
Repro
- Launch the Claude Code desktop app
- Choose Google sign-in
- Complete the Google OAuth consent in the browser
- The browser attempts to hand control back to the app and fails — the OS reports no application is registered to open the callback link
Expected
Login completes.
Actual
Login fails at the browser→app handoff. The app returns via a custom URL-scheme deeplink (e.g. claude://…), and no x-scheme-handler is registered on a headless Linux box. The registration also doesn't persist across reboots, so it recurs on every restart.
Workaround
The terminal claude login works reliably because it uses a loopback redirect (http://localhost:<port>) that needs no OS protocol-handler registration.
Suggested fix
On Linux, fall back to the loopback redirect for the desktop app's OAuth flow, or register the x-scheme-handler persistently at install and document the headless-server case. (Windows is unaffected because the handler is written to the registry at install.)