-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Open
Labels
area:authbugSomething isn't workingSomething isn't workinghas reproHas detailed reproduction stepsHas detailed reproduction stepsplatform:macosIssue specifically occurs on macOSIssue specifically occurs on macOS
Description
Environment
- OS: macOS 15.6.1 (Sequoia)
- Claude Code Version: 2.1.4
Problem
OAuth tokens are not being persisted to disk. Each new terminal session requires running /login before the & (web handoff) feature works.
Expected Behavior
After authenticating once, the OAuth tokens should persist across terminal sessions, allowing & web handoff to work without re-authentication.
Actual Behavior
~/.claude.jsoncontainsoauthAccountwith account metadata (email, org UUID, display name)- No
accessToken,refreshToken, orexpiresAtfields are stored - Must run
/loginin each new terminal session to use&web handoff - After
/login, web handoff works correctly for that session
Diagnostic Output
$ cat ~/.claude.json | python3 -c "import sys,json; d=json.load(sys.stdin); print(json.dumps(d.get('oauthAccount', {}), indent=2))"
{
"accountUuid": "...",
"emailAddress": "...",
"organizationUuid": "...",
"hasExtraUsageEnabled": false,
"displayName": "...",
"organizationRole": "admin",
"workspaceRole": null,
"organizationName": "..."
}Note: No token fields present. Grep for token|accessToken|refreshToken|expires only returns API usage token counts, not OAuth credentials.
Additional Context
~/.config/claude-code/directory does not exist- No keychain entry found for "claude-code"
autoUpdatesis set tofalsein config
Metadata
Metadata
Assignees
Labels
area:authbugSomething isn't workingSomething isn't workinghas reproHas detailed reproduction stepsHas detailed reproduction stepsplatform:macosIssue specifically occurs on macOSIssue specifically occurs on macOS