feat(cursor): support browser login for the agent SDK - #12948
Conversation
|
Effect Service Conventions found 2 blocking convention violations. See the inline review comments in Posted via Macroscope — Effect Service Conventions |
1 similar comment
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
ApprovabilityVerdict: Not approved Macroscope's review found this PR not approvable — This PR adds a new browser-login workflow with persistent credentials, account switching, sign-out, and session lifecycle changes across the server and settings UI. Because it changes authentication-sensitive production behavior and introduces a substantial user-facing capability, human review is appropriate. You can add or adjust custom eligibility rules. Learn more. |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: unavailable · PR result: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
…yash/cursor-sdk-browser-login
|
Effect Service Conventions found 6 blocking violations in Posted via Macroscope — Effect Service Conventions |
|
Correction: the 6 actionable findings are contained in the submitted inline review; no additional findings are described in the summary comment. Posted via Macroscope — Effect Service Conventions |
What changed
Adds Cursor SDK browser sign-in to Settings > Providers > Cursor, with cancellation, account switching, and sign-out. Login links open on the client, so sign-in works with remote environments too.
Each provider instance stores its own credential. Chat sessions, model discovery, and text generation use it; an explicit
CURSOR_API_KEYstill takes precedence. Account changes stop sessions using the old credential, and cancelled or expired login flows cannot save a late result.Why
The V2 Cursor integration only accepted
CURSOR_API_KEY, so an existing Cursor CLI or editor login still appeared unauthenticated. The bundled SDK supportsCursor.auth.login(), which provides its own browser flow and mints the credential needed by SDK operations.Targets Julius's
t3code/codex-turn-mappingbranch, notmain.Validation
ProviderSettingsPanel.tsx.UI changes
The signed-out row has one Sign in button. Signed-in accounts have Switch account and Sign out actions. The account email remains under Display name and is not repeated in the setup row.
Before the UI cleanup during manual testing:
Final signed-in state, with the account email hidden by the app's privacy control:
Checklist
Implemented with GPT-6 Astra in the Codex harness.