[BUG] OAuth authentication is currently not supported
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
As of Nov 18, the VS Code Claude Code extension no longer authenticates.
- Claude Code OAuth tokens are being rejected with: 'OAuth authentication is currently not supported'
- This started after the Nov 18 outage
- OAuth flow completes but tokens can't be used with the API
Details:
Before this problem, the oauth authentication flow had me authorize a session in a browser, enter the key it gave me in the claude code extension UI entry field, and it successfully connected me to my previous sessions. Now after authorizing the session in a browser, retrieving the key, and entering in the VS Code Claude Code field for the key, the contents of the Claude Code extension disappear. I see this output in the console:
2025-11-20 17:37:51.394 [info] Received message from webview: {"type":"request","requestId":"0ttf1749pns","request":{"type":"login","method":"claudeai"}}
2025-11-20 17:37:51.395 [info] Starting OAuth login flow: method=claudeai
2025-11-20 17:37:51.415 [info] From claude: 2025-11-20T17:37:51.414Z [DEBUG] Ripgrep first use test: PASSED (mode=builtin, path=/home/jupyter/.vscode-server/extensions/anthropic.claude-code-2.0.47-linux-x64/resources/native-binary/claude)
2025-11-20 17:37:51.424 [info] From claude: 2025-11-20T17:37:51.424Z [DEBUG] Skills and commands included in Skill tool:
2025-11-20T17:37:51.424Z [DEBUG] Slash commands included in SlashCommand tool:
2025-11-20 17:37:51.425 [info] From claude: 2025-11-20T17:37:51.425Z [ERROR] "Error: Error: Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the \"X-Api-Key\" or \"Authorization\" headers to be explicitly omitted\n at validateHeaders (/$bunfs/root/claude:731:1013)\n at buildHeaders (/$bunfs/root/claude:731:8516)\n at async buildRequest (/$bunfs/root/claude:731:7582)\n at async makeRequest (/$bunfs/root/claude:731:3410)\n at processTicksAndRejections (native:7:39)"
Failed to fetch subscription: AxiosError: Request failed with status code 401
What Should Happen?
Claude Code VSCode extension should authenticate the session successfully.
Error Messages/Logs
Steps to Reproduce
- In VS Code, run the command: Claude Code: Logout.
- Reload the window: Developer: Reload Window.
- In the Claude Code extension, click Claude.ai Subscripion. Copy the URL to a browser.
- Authorize the session in the browser. Copy the key.
- In VS Code Claude Code Extension enter the key from step 4.
Result: The Claude Code extension goes blank, and this output is in the logs:
2025-11-20 18:18:53.398 [info] From claude: 2025-11-20T18:18:53.398Z [DEBUG] Skills and commands included in Skill tool:
2025-11-20T18:18:53.398Z [DEBUG] Slash commands included in SlashCommand tool:
2025-11-20 18:18:53.399 [info] From claude: 2025-11-20T18:18:53.399Z [ERROR] "Error: Error: Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the \"X-Api-Key\" or \"Authorization\" headers to be explicitly omitted\n at validateHeaders (/$bunfs/root/claude:731:1013)\n at buildHeaders (/$bunfs/root/claude:731:8516)\n at async buildRequest (/$bunfs/root/claude:731:7582)\n at async makeRequest (/$bunfs/root/claude:731:3410)\n at processTicksAndRejections (native:7:39)"
2025-11-20 18:18:53.399 [info] From claude: 2025-11-20T18:18:53.399Z [ERROR] "Error: Error: Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the \"X-Api-Key\" or \"Authorization\" headers to be explicitly omitted\n at validateHeaders (/$bunfs/root/claude:731:1013)\n at buildHeaders (/$bunfs/root/claude:731:8516)\n at async buildRequest (/$bunfs/root/claude:731:7582)\n at async makeRequest (/$bunfs/root/claude:731:3410)\n at processTicksAndRejections (native:7:39)"
2025-11-20 18:18:53.400 [info] From claude: 2025-11-20T18:18:53.400Z [DEBUG] Ripgrep first use test: PASSED (mode=builtin, path=/home/jupyter/.vscode-server/extensions/anthropic.claude-code-2.0.47-linux-x64/resources/native-binary/claude)
2025-11-20 18:19:52.389 [info] From claude: 2025-11-20T18:19:52.389Z [DEBUG] Getting matching hook commands for SessionEnd with query: other
2025-11-20T18:19:52.389Z [DEBUG] Found 0 hook matchers in settings
2025-11-20 18:19:52.390 [info] From claude: 2025-11-20T18:19:52.389Z [DEBUG] Matched 0 unique hooks for query "other" (0 before deduplication)
2025-11-20 18:19:52.391 [info] From claude: 2025-11-20T18:19:52.390Z [DEBUG] Cleaned up session snapshot: /home/jupyter/.claude/shell-snapshots/snapshot-bash-1763662732886-7tv6p3.sh
2025-11-20 18:19:52.391 [info] From claude: 2025-11-20T18:19:52.391Z [DEBUG] LSP server manager shut down successfully
2025-11-20 18:19:52.391 [info] From claude: 2025-11-20T18:19:52.391Z [DEBUG] BigQuery metrics exporter flush complete
2025-11-20T18:19:52.391Z [DEBUG] BigQuery metrics exporter flush complete
2025-11-20 18:19:52.391 [info] From claude: 2025-11-20T18:19:52.391Z [DEBUG] BigQuery metrics exporter shutdown complete
2025-11-20 18:19:56.129 [info] Received message from webview: {"type":"request","requestId":"xxx","request":{"type":"login","method":"claudeai"}}
2025-11-20 18:19:56.131 [info] Starting OAuth login flow: method=claudeai
2025-11-20 18:20:10.576 [info] Received message from webview: {"type":"request","requestId":"xxx","request":{"type":"submit_oauth_code","code":"xxx#xxx"}}
2025-11-20 18:20:10.577 [info] Handling manual auth code input
2025-11-20 18:20:10.607 [info] Received message from webview: {"type":"request","requestId":"xxx","request":{"type":"submit_oauth_code","code":"xxx#xxx"}}
2025-11-20 18:20:10.608 [info] Handling manual auth code input
2025-11-20 18:20:11.022 [error] Failed to fetch subscription: AxiosError: Request failed with status code 401
2025-11-20 18:20:11.025 [info] Saving OAuth tokens to secure storage
2025-11-20 18:20:11.025 [info] Login successful
2025-11-20 18:20:11.025 [info] Getting authentication status
2025-11-20 18:20:11.026 [info] OAuth tokens found in secure storage
2025-11-20 18:20:11.026 [info] Auth status: method=claudeai
2025-11-20 18:20:11.026 [info] Closing Claude on channel: xxx
Claude Model
Sonnet (default)
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
Claude Code for VS Code v 2.0.47
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
VS Code integrated terminal
Additional Information
_No response_
This issue has 8 comments on GitHub. Read the full discussion on GitHub ↗