
GitHub CLI、有効期限付きで自動更新されるOAuthトークンに対応 オプトインで提供
GitHubGitHub CLI認証OAuthトークン管理
GitHub は2026年10月21日、GitHub CLI で有効期限付きアクセストークンとローテーションするリフレッシュトークンを使えるようにしたと発表した。CLI が自動で更新するためログイン状態は維持され、漏えいしたトークンも数時間で使えなくなる。v2.103.0 以降でオプトイン提供。既存ユーザーは申告しない限り変更はない。
何が発表されたか
GitHub CLI(gh)で、有効期限付きの OAuth アクセストークンと、ローテーションするリフレッシュトークンを使えるようになった。パブリックプレビューで、GitHub CLI v2.103.0 以降が対象。
- gh が必要に応じてアクセストークンを自動更新するため、サインイン状態は維持される
- GitHub は、漏えいしたアクセストークンが「無期限ではなく数時間で使えなくなる」と説明している
- 有効化はオプトイン。1回のサインインだけなら
gh auth login --expiring、以後すべてのサインインに適用するならgh config set expiring_credentials enabled - 現在の状態とアクセストークンの期限は
gh auth statusで確認できる
提供範囲は github.com と ghe.com。GitHub Enterprise Server では GHES 3.23 以降で有効期限付きトークンが発行され、それより前のバージョンではオプトインしても期限なしトークンにフォールバックする。既存のサインインや手動で設定したトークンはそのまま使える。
取るべき対応
影響を受けるのは、gh を使って開発や自動化を行っているチーム全般。まず確認すべきは次の点だ。
gh auth tokenを1回だけ実行して結果を保存しているスクリプトやエクステンションは、期限切れのトークンを保持してしまう可能性がある。都度トークンを読み直す実装に変える- 長期間有効なトークンを前提とするワークフローは、現時点ではオプトインを見送るよう案内されている
- Git over HTTPS を使う場合は
gh auth setup-gitを実行し、gh に認証情報を任せる構成が推奨されている - git は 2.46 以降が強く推奨。それより古いバージョンでも動作するが、アップグレードの案内が一度表示される
期限は設定されていないが、GitHub は将来のリリースで新規サインインの既定を有効期限付きに切り替える計画を示している。日付は未定のため、ローカル開発環境や CI がどの方式でトークンを取得しているかを今のうちに棚卸ししておきたい。
