Claude Codeでログインがループする問題 — OAuthのstateパラメータ消失が原因
Claude Codeの/loginで認可がループしstateパラメータが失われる不具合を、原因の説明・公式のリセット手順・コミュニティの回避策からまとめます。
Claude Codeの/loginでAuthorizeをクリックした直後に「Sign in again to continue」へ戻され、そこから認可画面とサインイン画面を行き来するだけで完了しない不具合が2026年7月以降に複数の環境から報告されています。原因はメール再認証のステップを経たあとにAuthorizeリクエストを再構築するサインインWebフロー側でstateパラメータが失われることで、Anthropicのエンジニアもサーバー側の不具合と説明しています。本記事では、GitHubのissueで確認できる再現手順と原因の説明、公式ドキュメントが案内するリセット手順、コミュニティが報告している回避策をまとめます。
Claude Codeのログインがループする不具合とは
この不具合はGitHubのissue #77966として2026年7月16日に報告されました。/loginで「Claude account with subscription」を選び、ブラウザーの認可画面でAuthorizeを押すと、通常はそのままCLIのコールバックに認可コードが返ります。ところがこの不具合では、Authorize後に「Sign in again to continue」という再認証画面へ転送され、そこでメールのサインインリンクを踏んでも認可画面に戻ってしまい、完了しません。
再びたどり着いた認可画面のURLを確認すると、最初のリクエストにはあったstateパラメータとcode_challenge_methodが失われており、redirect_uriもCLIが待ち受けるローカルのlocalhostではなくplatform.claude.comを指すURLに変わっています。ブラウザーが明示的なエラー画面を表示することもあり、その場合は次のメッセージが出ます。
Invalid OAuth Request
Missing state parameter報告者は/loginだけでなくclaude setup-tokenでも同一の失敗が起きることを確認しています。両方のコマンドは同じアカウントOAuthサービスを経由するため、原因はClaude Code側のURL構築ではなくサーバー側にあります。詳しい説明は後述します。
再現手順として報告されている流れ
issueの報告者が示した手順は次の通りです。
/loginを実行し「Claude account with subscription · Pro, Max, Team, or Enterprise」を選ぶ- ブラウザーでOAuthの認可画面が開く(このときのURLにはstateとcode_challenge_methodが含まれている)
- Authorizeをクリックする
- 「Sign in again to continue」に転送される
- Sign in againを選び、メールでのサインインを選択する
- 届いたメールのリンクをクリックする
- 認可が完了する代わりに、stateを欠いた認可画面へ戻される
この流れは1回で失敗することもあれば、同じ環境で成功と失敗が入れ替わることも報告されており、恒常的な失敗というよりは断続的に発生する不具合として扱われています。
いつ、どのバージョンで報告されているか
最初の報告はv2.1.208で、その後複数のバージョンで報告が続き、8月にはAnthropic側の説明と改善の報告が入りました。
| 報告日 | Claude Codeバージョン | 内容 |
|---|---|---|
| 2026-07-16 | Claude Codeバージョンv2.1.208 | 内容issue #77966として最初に報告 |
| 2026-07-17〜18 | Claude Codeバージョンv2.1.212、v2.1.214 | 内容断続的に再現。ブラウザーを一度claude.aiにログインさせておくと成功率が上がるとの報告 |
| 2026-07-21〜23 | Claude Codeバージョンv2.1.216〜v2.1.218 | 内容Firefox・Safariなど複数ブラウザーから同様の報告が続く |
| 2026-07-23 | Claude Codeバージョンv2.1.218 | 内容一時的に素の/loginが成功したとの報告(再発の有無は未確認のまま) |
| 2026-07-25〜08-06 | Claude Codeバージョンv2.1.220〜v2.1.223 | 内容macOS・Windows・Linux・WSL2の各環境から継続して報告 |
| 2026-08-17 | Claude Codeバージョンv2.1.233 | 内容Anthropicのcollaboratorが原因を説明し、担当チームへ引き継いだと投稿(詳細は次節) |
| 2026-08-23 | Claude Codeバージョンv2.1.241 | 内容最初の報告者がループの再発なしを確認 |
issueは2026年8月23日まで更新が続いており、直近の報告ではループそのものの再発は無くなったとされています。詳しい原因の説明は次の節で扱います。
なぜstateパラメーターが消えるのか
Anthropicのリポジトリでcollaborator権限を持つbcherny氏は、2026年8月17日にv2.1.233での検証結果をissueに投稿しました。/loginとclaude setup-tokenのどちらも、最初に生成する認証URLにはstateとcode_challenge_method=S256が正しく含まれており、クライアント側の実装に問題はないとしています。
問題は「Sign in again to continue」というメール再認証のステップを経たあと、サインイン用のWebフローがAuthorizeリクエストを再構築する処理にあり、そこでstateを含む一部のパラメーターが失われるとのことです。この処理はClaude Codeのクライアントコードではなく、アカウントのサインインを担う共有サービス側にあります。bcherny氏はクライアントの更新では修正できないと説明し、担当チームへ引き継いだと述べました。失敗時のURLでredirect_uriがplatform.claude.comを指していた点についても、ブラウザーを開けない環境向けの想定済みフォールバックであり、不具合そのものではないと補足しています。
最初の報告者は8月23日、v2.1.241ではループそのものが再発していないと報告しました。一方で、認証の完了までに1分近くかかることがあるという別の遅延も申告しており、ループの根本原因とこの遅延は別問題として扱われています。バージョンが進むにつれて発生頻度は下がっているという報告があり、claude updateで最新版に上げておくと再現しにくくなる可能性があります。
環境・ブラウザー別に見る報告の傾向
コミュニティの報告には、ブラウザーやOSによって挙動に差があるという声が複数寄せられています。
| 環境 | 報告された症状 | 試された対処 |
|---|---|---|
| macOS + Safari | 報告された症状認可→再サインインのループが繰り返し発生 | 試された対処Chromeなど別ブラウザーに切り替えると成功したとの報告 |
| Firefox系(Firefox本体・Zenなど) | 報告された症状拡張機能・CLIの双方で同一のループ | 試された対処プライベートウィンドウでURLを手動貼り付けし、メールのリンクではなく認証コードを使う |
| Windows(Edge・Chromeシークレットモード) | 報告された症状Cookie削除やブラウザー変更でも解消せず | 試された対処有効な回避策が見つからず、issueへの報告のみ |
| VS Code / JetBrains拡張機能 | 報告された症状拡張機能から開いたリンクでも同じループ | 試された対処認可URLを手動コピーし、別のブラウザーウィンドウで開き直す |
| モバイル端末への転送 | 報告された症状デスクトップブラウザーでのループが解消しない | 試された対処認可URLをスマートフォンのブラウザーで開いたところ完了したとの報告(Linux環境) |
公式に案内されているリセット手順
公式のTroubleshoot installation and loginは、ログイン失敗全般に対する基本の対処として、ログインをリセットしてから再認証する手順を案内しています。
/logout/logoutでいったん完全にサインアウトしたあと、Claude Codeを終了してclaudeから起動し直し、認証をやり直します。
claudeブラウザーが自動で開かない場合や、開いたブラウザーがログインに使いたいものと違う場合は、cキーを押すとOAuthのURLがクリップボードにコピーされるので、手元のブラウザーへ手動で貼り付けます。この方法は、SSH先の端末など通常のブラウザー起動が使えない場面や、URLがターミナルの幅で折り返されてクリックできない場合にも使えます。
WSL2・SSH越し・コンテナ内でClaude Codeを動かしている場合は、ブラウザーがCLIのローカルコールバックサーバーに到達できないため、リダイレクトの代わりにログインコードが画面に表示される設計です。その場合はPaste code here if promptedにコードを貼り付けます。それでもブラウザーが開かない場合は、BROWSER環境変数にWindows側のブラウザーパスを設定するか、claude auth loginを使うと標準入力からのコード貼り付けに切り替わります。
それでも直らない場合の切り分け
公式ドキュメントの「Still stuck」セクションは、既知issueの確認、claude doctorによる診断、/feedbackでの報告を案内し、ログインループのようなアカウント側の問題はサポートへの連絡を勧めています。まずGitHubのissue一覧で既知の不具合を確認し、claude --versionは動くのに解決しない場合はclaude doctorで環境の診断結果を見ます。
/feedbackセッションを起動できる状態であれば、/feedbackでその場から不具合をAnthropicへ報告できます。それでも解決しない場合は、claude.ai(Consoleアカウントの場合はplatform.claude.com)にサインインして左下のアイコンから「Get help」を選び、Anthropicサポートへ連絡するよう案内されています。
issue #77966のコメントでも、資格情報の削除や完全な再インストールを試みても解消しなかったという報告があり、ローカルの設定ファイルやKeychainを繰り返し初期化するより、issueへの追記かサポート窓口への連絡に切り替えたほうが早いケースがあることがうかがえます。
コミュニティが報告している追加の回避策
公式のリセット手順で解決しない場合に、issueのコメント欄で個別に効果があったと報告されている手順もあります。いずれも根本原因を修正するものではなく、断続的な不具合を回避するための対症療法である点は踏まえておく必要があります。
- ブラウザーで先にclaude.aiへ直接ログインしてから
/loginを実行する(認可済みのセッションを事前に作っておく) - 「Sign in again to continue」の画面でメールのリンクではなく「Enter verification code」を選ぶ(6〜7回の失敗後にこの方法で完了したものの、次回起動時に同じループが再発したという報告があります)
- 一度成功したプライベートウィンドウをそのまま閉じずに残しておき、次回の再認証にも同じウィンドウを使う
- 認可URLを別のデバイス(スマートフォンなど)のブラウザーで開く
似ている別の不具合と混同しないために
ログイン関連のエラーにはstateパラメータの消失以外にも複数の系統があり、対処が異なります。
保存済みのログインをAPI側が拒否する「OAuth token revoked」の対処は、いったん成立した認証が後から無効化されるケースで、今回のように/login自体が完了しない症状とは別物です。ANTHROPIC_PROFILE経由の認証に限って起きる「Anthropic profile login expired」の対処法も、/loginでは直らないという共通点はあるものの、原因はプロファイル固有の資格情報切れであり今回の不具合とは系統が異なります。managed settingsのforceLoginGatewayUrlとはが扱う回帰は、Cloud gateway画面への強制的な誘導に関するもので、stateパラメータの消失とは別の不具合です。
Claude Codeの認証方式そのものを整理したい場合はClaude Codeログイン方法3種の使い分け、アカウント作成から/loginまでの基本的な流れはClaudeログイン完全ガイドにまとまっています。
まとめ
Claude Codeの/loginが認可と再サインインの間でループし、stateパラメータが失われる不具合はissue #77966で追跡されています。原因はサインインWebフロー側にあり、クライアントの更新では直せないと説明されています。最初に試せるのは公式が案内する/logoutからの再ログインで、ブラウザーが自動で開かない場合はcキーでURLをコピーして手動で開きます。それでも解消しない場合はブラウザーの切り替えやWSL2向けのコード貼り付けを試します。報告によれば新しいバージョンほどループの再発は少なくなっており、繰り返し発生する場合は既知issueへの追記かAnthropicサポートへの連絡を検討してください。