Claude Codeにおける認証の優先順位について
Claude Codeを使用する際は、予期しないAPI料金の発生を避け、意図したアカウントを使用していることを確認するために、認証方法がどのように優先されるかを理解することが重要です。
重要:システムにANTHROPIC_API_KEY環境変数が設定されている場合、Claude CodeはClaude.aiサブスクリプション(Pro、Max、Team、またはEnterprise)ではなく、このAPIキーを認証に使用します。その結果、サブスクリプションに含まれる使用量ではなく、API使用料金が発生します。
認証の仕組み
Claude Codeは、認証されたサブスクリプションよりも環境変数のAPIキーを優先します。
これは、認証方法を柔軟に選択できるように設計された意図的な動作です。
APIキーが環境変数として設定されている場合、そのキーに関連付けられたAPIアカウントを使用して、API従量課金制の料金が請求されます。
これは、Claude.aiサブスクリプションまたは別のConsoleアカウントでClaude Codeにログインしている場合でも発生します。
ベストプラクティス
ClaudeサブスクリプションでClaude Codeを使用するには:ANTHROPIC_API_KEY環境変数を未設定のままにしてください。
これにより、予期しないAPI料金の発生を防ぎ、サブスクリプションに含まれる使用量を確実に使用できます。
特定のAPIキーを時々使用する必要がある場合は、必要なときだけ一時的に設定してください。
Claude Codeで定期的に/statusを実行して、現在の認証方法を確認してください。
認証の競合に関する警告
Claude Codeは、認証されたサブスクリプションと環境変数のAPIキーの間に競合がある場合に通知します:
初期設定時に、環境変数でAPIキーが検出された場合、Claude Codeはどちらの認証方法を使用するかの確認を求めます
ログイン成功後、両方の認証情報がアクティブな場合は通知が表示され、予期しないAPI料金が発生する可能性があることを警告します
現在の設定の確認
APIキーが環境変数として設定されているかどうかを確認するには、Claude Codeで/statusを実行してください。これにより、現在アクティブな認証方法が表示されます。
環境変数を直接確認するには、ターミナル(Claude Codeの外)で次のいずれかのコマンドを実行してください:
macOS/Linux:
echo $ANTHROPIC_API_KEY
Windows CMD:
echo %ANTHROPIC_API_KEY%
Windows PowerShell:
echo $env:ANTHROPIC_API_KEY
APIキーを一時的に設定する
現在のターミナルセッションのみでAPIキーを使用する必要がある場合:
macOS/Linux:
export ANTHROPIC_API_KEY='your-api-key-here'
Windows CMD:
set ANTHROPIC_API_KEY=your-api-key-here
Windows PowerShell:
$env:ANTHROPIC_API_KEY="your-api-key-here"
APIキー環境変数を永続的に設定する
macOS/Linux:
zshの場合(macOSのデフォルト):
bash
# シェル設定ファイルに追加
echo 'export ANTHROPIC_API_KEY="your-api-key-here"' >> ~/.zshrc
# 変更を適用
source ~/.zshrc
bashの場合:
bash
# シェル設定ファイルに追加
echo 'export ANTHROPIC_API_KEY="your-api-key-here"' >> ~/.bash_profile
# 変更を適用
source ~/.bash_profile
Windows:
システムのプロパティ → 詳細設定 → 環境変数を開く
「ユーザー環境変数」で「新規」をクリック
変数名: ANTHROPIC_API_KEY
変数値: your-api-key-here
OKをクリックしてターミナルを再起動
APIキー環境変数を削除する
macOS/Linux(一時的):
unset ANTHROPIC_API_KEY
macOS(永続的):
# 設定ファイルから削除
sed -i '' '/ANTHROPIC_API_KEY/d' ~/.zshrc
source ~/.zshrc
Linux(永続的)
sed -i '/ANTHROPIC_API_KEY/d' ~/.zshrc
Windows CMD:
set ANTHROPIC_API_KEY=
Windows PowerShell:
Remove-Item Env:ANTHROPIC_API_KEY
Windows(永続的):システム環境変数の設定から変数を削除してください。
避けるべき一般的な問題
シェル設定ファイルに環境変数を設定して、そのことを忘れてしまう。
環境変数を変更した後にターミナルを再起動しない。
環境にAPIキーが設定されているのに、サブスクリプションを使用していると思い込む。
ご質問がある場合は、プロダクトサポートチームまでお問い合わせください。
