原文(日本語に翻訳)
古い 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 トークンが期限切れの場合に設定の取得が失敗し、エラーが表示されていました。この改善により、トークンが古い場合は自動的に更新して再試行するようになり、ユーザー介入なしでスムーズに動作するようになりました。
基本的な使い方
この改善は自動的に適用され、ユーザー側での特別な操作は不要です。
正常な動作:
- Claude Code が設定を取得しようとする
- OAuth トークンが期限切れの場合、自動的に更新
- 更新されたトークンで再度設定を取得
- ユーザーには透過的に処理される
実践例
修正前の問題(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 トークンが期限切れの場合、自動的に更新されます
- ユーザーによる手動の再認証は通常不要になりました
- トークンの更新には有効なインターネット接続が必要です
- オフライン環境では、デフォルト設定が使用されます
- 自動更新が失敗した場合のみ、手動での再認証が必要になります
- この改善により、長期間未使用後の起動がスムーズになりました
- プライバシー設定は引き続きユーザーがコントロールできます