Claude Media
「Anthropic profile login expired」の対処法

「Anthropic profile login expired」の対処法

Claude Codeで「Anthropic profile login expired」と出たときの原因と対処。ANTHROPIC_PROFILE経由の認証特有のエラーで、/loginでは直らないケースを見分けます。

Claude Codeが「Anthropic profile login expired」と表示するのは、ANTHROPIC_PROFILE経由で認証しているときに限られるエラーです。プロファイルの保存済みログインが期限切れで、かつそのプロファイルに更新用の資格情報が無いため、Claude Codeはリクエストを送らずローカルで停止します。同じ資格情報を使ったリトライは同じ結果にしかならないため、Claude Codeはあえてリクエストを送信しません。/loginを実行しても直らないことがあるのがこのエラーの特徴で、直るかどうかはメッセージの文言で見分けられます。

Anthropicプロファイルとは何か

Anthropicプロファイルは、~/.config/anthropic(macOS/Linux)または%APPDATA%\Anthropic(Windows)にある、名前付きの認証設定ファイルです。ant auth loginコマンドで作成したプロファイルはuser_oauthモード、Workload Identity Federation(WIF)向けに設定したプロファイルはoidc_federationモードで動きます。通常の/loginによるclaude.aiログインやANTHROPIC_API_KEYとは別系統の認証方式で、企業がant CLIやWIFで統一的に資格情報を配布する運用で使われます。

Claude Codeがどのプロファイルを使うかは3通りあります。ANTHROPIC_PROFILE環境変数で名前を明示指定する方法、ANTHROPIC_FEDERATION_RULE_IDANTHROPIC_ORGANIZATION_IDの両方を設定してfederation変数経由で指定する方法、そして環境変数を設定せず、設定ディレクトリ内のactive_configファイルやdefaultという名前のプロファイルをClaude Codeが自動で見つける方法です。Claude Codeはこの順に確認し、最初に見つかったものを使います。このエラーはいずれの経路でも発生しますが、対処が変わります。

メッセージの文言で対処が変わる

「Anthropic profile login expired」には2つの表示パターンがあり、どちらが出るかでこの後の対処が違います。

文言出る条件/loginで直るか
Anthropic profile login expired · Re-authenticate your Anthropic profile出る条件ANTHROPIC_PROFILEを明示的に設定している/loginで直るか直らない(プロファイルが優先されるため)
Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile出る条件Claude Codeが設定ディレクトリから自動検出したプロファイル/loginで直るか直る(有効な/loginログインがプロファイルより優先される)

ANTHROPIC_PROFILEを自分で設定した場合、Claude Codeはそのプロファイルを保存済みログインより常に優先します。これは、意図的に指定したプロファイルを他の認証情報で勝手に上書きしないための設計です。したがって/loginでサインインし直しても、エラーの原因になっているプロファイル自体は更新されず、次のリクエストでも同じエラーが出ます。一方、環境変数を設定しておらず自動検出されたプロファイルが原因の場合は、有効な/loginログインがあればそちらが優先されるため、/loginだけでエラーが止まります。

v2.1.234より前のClaude Codeは、自動検出されたプロファイルが原因のときも常に「Re-authenticate your Anthropic profile」の文言を表示しており、/loginで解決できる状況かどうかがメッセージから判断できませんでした。

対処手順

まず/statusを実行し、現在の認証元を確認します。Profileの行に、通常ならLogin methodが表示される位置にプロファイル名が表示されていれば、このエラーの対象になっている認証経路です。エラーメッセージだけを見て/loginを試す前に、この確認を挟むと無駄な手順を避けられます。ANTHROPIC_PROFILEを明示設定した記憶がなければ、自動検出されたプロファイルが原因である可能性が高く、/loginだけで直る見込みが立ちます。

/status

自動検出されたプロファイルがuser_oauthモードで、かつ有効な/loginログインが同時に存在する場合、Claude Codeはそちらを優先し、プロファイルを黙って読み飛ばします。この判定はデバッグログにも記録され、--debug起動時は「claude.aiログインを代わりに使う」という趣旨の警告行が残ります。つまりuser_oauthモードの自動検出プロファイルが失効していても、/login側が生きていればそもそもこのエラー自体が出ません。この場合にエラーが出ているなら、その時点で有効な/loginログインも無い状態です。一方oidc_federationモード(WIF向け)の自動検出プロファイルは、/loginの状態にかかわらず常に優先されるため、/loginが有効でもこのエラーは出ます。

文言が「Re-authenticate your Anthropic profile」で終わる場合は、そのプロファイルを作成したツールで再認証します。ant auth loginで作ったプロファイルならant auth loginを再実行し、WIFのプロファイルなら管理者が発行した資格情報を配布し直してもらいます。管理者がプロファイルの資格情報を発行している運用では、自分で直せないため新しい資格情報の再発行を依頼します。

文言が/loginを案内している場合は、次のいずれかで解決します。

/login

プロファイルを今後使わない設定にしたい場合は、ANTHROPIC_PROFILEを設定していればそれをunsetし、/loginANTHROPIC_API_KEYなど別の方式で認証します。シェルの設定ファイル(~/.zshrc~/.bashrc)にも同じ変数のエクスポート行が残っていないか、あわせて確認します。active_configファイルやdefaultという名前のプロファイルが自動検出されている場合は、user_oauthモードならant auth logoutを実行するか、設定ディレクトリのconfigs/からプロファイルのファイル自体を削除します。

通常の/loginCLAUDE_CODE_OAUTH_TOKENとの切り分け

このエラーは/login・APIキー・CLAUDE_CODE_OAUTH_TOKEN・サードパーティプロバイダで認証しているセッションには出ません。出るのはAnthropicプロファイルが有効な認証元になっているときだけです。似た文言の「OAuth token revoked」「OAuth token has expired」は、/loginで保存したclaude.aiやConsoleのログインをAPIが401で拒否した場合のエラーで、発生の経路がまったく別です。

「複数の認証設定を切り替える」という同じ文脈でも、Claude Codeアカウント切り替えで扱うCLAUDE_CONFIG_DIRは設定ディレクトリごと個人用・会社用のログインを分ける仕組みで、Anthropicプロファイルとは別の機能です。CLAUDE_CONFIG_DIRを使っているだけならこのエラーは出ません。両者は名前が似ているため混同しがちですが、設定ディレクトリ自体を分けるか、その中の認証方式を切り替えるかという別のレイヤーの話です。

Anthropicプロファイルは、ベアモード・Claude Desktop・クラウドセッションでは読み込まれません。これらの環境ではそもそもANTHROPIC_PROFILEactive_configも参照されないため、同じ症状が出ている場合は原因が別にあります。CIでベアモードのスクリプトを組んでいる場合、プロファイルの失効を心配する必要はなく、ANTHROPIC_API_KEYapiKeyHelper側の認証情報だけを確認すれば足ります。

Anthropicプロファイル利用中に使えない機能

Anthropicプロファイル(またはfederation変数)が有効な認証元になっている間は、claude.aiログインを前提とする機能が使えません。具体的にはclaude.aiコネクタと/schedule(Claude Routine)がこれにあたります。これらの機能を使いたい場合は、プロファイルではなく/loginによるclaude.aiログインへ切り替える必要があります。「Anthropic profile login expired」への対処でプロファイルを止め/loginに切り替えると、副次的にこれらの機能も使えるようになります。

よくある質問

/loginを実行してもエラーが消えません

ANTHROPIC_PROFILE環境変数を確認します。値が設定されていれば、Claude Codeはそのプロファイルを保存済みログインより優先するため/loginは効きません。プロファイルを作成したツール(ant auth loginなど)で再認証するか、プロファイルを使わない設定に切り替えます。

プロファイルを使うのをやめたいだけです

ANTHROPIC_PROFILEを設定している場合はunsetします。自動検出されている場合は、user_oauthモードならant auth logout、いずれのモードでも設定ディレクトリのconfigs/からプロファイルのファイルを削除すれば、Claude Codeは次に見つかる認証方式(/loginANTHROPIC_API_KEY)にフォールバックします。

自動検出プロファイルなのに/loginしても直りません

自動検出プロファイルがoidc_federationモード(WIF向け)の場合は、user_oauthと違って/loginより常に優先されます。この場合は/loginでは直らず、WIFの資格情報自体を管理者に再発行してもらう必要があります。プロファイルをant auth loginで作った覚えがあればuser_oauthモードなので/loginで直るはずで、WIFの設定でプロファイルを配布されているだけならoidc_federationモードの可能性が高いです。

どのプロファイルが原因か分かりません

/statusProfile行にプロファイル名が表示されます。--debugオプション付きで起動すると、~/.claude/debug/<session-id>.txtUsing Anthropic profile authという行が出力の一部として残り、どの経路で選ばれたかを確認できます。

管理者がプロファイルを配布している場合はどうしますか

自分では再認証できないため、管理者に新しい資格情報の発行を依頼します。/statusで確認した認証元とプロファイル名を伝えると特定が早くなります。多くの場合、管理者側でWIFの設定を更新するか、失効した資格情報を無効化して新しいものを配布し直す作業になるため、依頼から反映までにある程度の時間がかかることを見込んでおきます。急ぎで作業を続けたい場合は、一時的に/loginでclaude.aiアカウントに切り替えられないかもあわせて確認すると、待ち時間を減らせます。

ANTHROPIC_FEDERATION_RULE_IDを使っている場合も同じですか

ANTHROPIC_FEDERATION_RULE_IDANTHROPIC_ORGANIZATION_IDを両方設定してfederation変数経由でプロファイルを選択している場合も、Claude Codeは/loginより優先してこの経路を使います。停止したい場合はどちらかの環境変数をunsetします。設定を配布している組織のワークロードアイデンティティ連携の管理者に、資格情報の交換元(ANTHROPIC_IDENTITY_TOKEN_FILEなど)が正しいかをあわせて確認してもらうと切り分けが早くなります。

ANTHROPIC_PROFILECLAUDE_CODE_OAUTH_TOKENはどちらが優先されますか

CLAUDE_CODE_OAUTH_TOKENのほうが優先順位は上です。Claude Codeの認証優先順位は、クラウドプロバイダー資格情報・ANTHROPIC_AUTH_TOKENANTHROPIC_API_KEYapiKeyHelperCLAUDE_CODE_OAUTH_TOKEN・Anthropicプロファイル・/loginの順です。両方を設定していてCLAUDE_CODE_OAUTH_TOKENが有効なら、そちらが使われるためこのエラーは出ません。このエラーが出ている場合はCLAUDE_CODE_OAUTH_TOKENが未設定か無効で、Anthropicプロファイルまで優先順位が下りてきていることを意味します。

この記事を共有:XはてブLinkedIn