Skip to content

原文(日本語に翻訳)

古い OAuth トークンによる失敗時に OAuth を更新して再試行するように「Claude の改善に協力する」設定の取得を更新

原文(英語)

Updated "Help improve Claude" setting fetch to refresh OAuth and retry when it fails due to a stale OAuth token

概要

Claude Code v2.1.6 では、「Help improve Claude」設定の取得処理が改善されました。以前のバージョンでは、OAuth トークンが期限切れの場合に設定の取得が失敗し、エラーが表示されていました。この改善により、トークンが古い場合は自動的に更新して再試行するようになり、ユーザー介入なしでスムーズに動作するようになりました。

基本的な使い方

この改善は自動的に適用され、ユーザー側での特別な操作は不要です。

正常な動作:

  1. Claude Code が設定を取得しようとする
  2. OAuth トークンが期限切れの場合、自動的に更新
  3. 更新されたトークンで再度設定を取得
  4. ユーザーには透過的に処理される

実践例

修正前の問題(v2.1.5以前)

OAuth トークンの期限切れ時にエラー:

bash
# Claude Code を起動
$ claude

# 設定を取得しようとする
Fetching user preferences...

# エラーが発生
 Error: Failed to fetch "Help improve Claude" setting
  OAuth token has expired
  Please re-authenticate

# ユーザーが手動で認証し直す必要があった
$ claude auth login

このため:

  • 毎回手動で再認証が必要
  • 作業が中断される
  • エラーメッセージが表示される

修正後の動作(v2.1.6以降)

v2.1.6 では、自動的にトークンを更新:

bash
# Claude Code を起動
$ claude

# 設定を取得しようとする
Fetching user preferences...

# トークンが期限切れの場合
# → 自動的に更新して再試行

# ユーザーには何も表示されず、スムーズに動作
 Preferences loaded

# 作業を継続できる

「Help improve Claude」設定とは

この設定の目的:

bash
/config
# "help" または "improve" で検索

# 設定:
helpImproveClaud: true/false

# true の場合:
# - 使用統計が Anthropic に送信される
# - 製品改善に利用される
# - プライバシーは保護される

# false の場合:
# - データは送信されない

OAuth トークンのライフサイクル

トークンの有効期限:

# トークン取得
$ claude auth login
# → トークン発行(例: 7日間有効)

# 3日後
# → トークンは有効、設定取得成功

# 8日後
# → トークン期限切れ

# v2.1.5 以前:
# → エラー、手動で再認証が必要

# v2.1.6 以降:
# → 自動更新、エラーなし

長期間未使用後の起動

久しぶりに Claude Code を使用する場合:

bash
# 2週間ぶりに起動
$ claude

# v2.1.5 以前:
Error: OAuth token expired
Please run: claude auth login

# v2.1.6 以降:
# 自動的にトークンを更新
# → 問題なく起動

認証エラーのトラブルシューティング

自動更新が失敗した場合(稀):

bash
# 自動更新が失敗した場合のみ
 Error: Failed to refresh OAuth token
  Please re-authenticate manually

# 手動で認証
$ claude auth login

# ブラウザが開く
# → ログイン
# → 認証完了

トークン更新のログ(デバッグモード)

詳細なログを確認:

bash
# デバッグモードで起動
$ claude --debug

# ログ出力例:
[DEBUG] Fetching user preferences...
[DEBUG] OAuth token expired (issued: 2026-01-23)
[DEBUG] Refreshing OAuth token...
[DEBUG] Token refreshed successfully
[DEBUG] Retrying preferences fetch...
[DEBUG] Preferences loaded: helpImproveClaud=true

# 自動更新の流れが確認できる

オフライン環境での動作

インターネット接続がない場合:

bash
# オフラインで起動
$ claude

# v2.1.6:
# OAuth 更新を試みる
# → 失敗(ネットワークエラー)
# → デフォルト設定で継続

Warning: Could not refresh OAuth token (offline)
Using default settings

# エラーではなく警告
# 作業は継続可能

設定の手動確認

現在の設定を確認:

bash
# 設定画面を開く
/config

# "Help improve Claude" 設定を確認
helpImproveClaud: true

# この設定は OAuth 認証後にクラウドから取得される
# v2.1.6 では、トークンが古くても自動更新される

複数デバイスでの使用

複数のマシンで Claude Code を使用:

bash
# マシンA で認証
$ claude auth login

# マシンB で認証
$ claude auth login

# 両方で自動的にトークンが管理される
# v2.1.6 では、どちらのマシンでも
# トークン期限切れ時に自動更新

注意点

  • この改善は Claude Code v2.1.6 で導入されました
  • OAuth トークンが期限切れの場合、自動的に更新されます
  • ユーザーによる手動の再認証は通常不要になりました
  • トークンの更新には有効なインターネット接続が必要です
  • オフライン環境では、デフォルト設定が使用されます
  • 自動更新が失敗した場合のみ、手動での再認証が必要になります
  • この改善により、長期間未使用後の起動がスムーズになりました
  • プライバシー設定は引き続きユーザーがコントロールできます

関連情報