GitHub Copilot CLI のエラー

Error: Authentication token found but could not be validated.

結論

トークンはあるが GitHub に拒否された状態。回線の問題だと促されるが、実際は値が無効なことが多い。

確認した版 GitHub Copilot CLI v1.0.80
確認日 2026年8月22日
最終更新 2026年8月22日
根拠 実機で確認

エラー文字列

GitHub Copilot CLI
Error: Authentication token found but could not be validated.

⚠️ 標準エラーに出て、終了コードは 1 です。

Error: Authentication token found but could not be validated.

  Failed to fetch PAT user login (401): GitHub returned: Bad credentials
  Failed to fetch GitHub CLI user login (401): GitHub returned: Bad credentials

Your token may still be valid. Check your network connection and try again.

何が起きているか

トークンは見つかっています。それを GitHub に送ったところ、拒否されました。

🔴 最後の1行に引きずられないこと

Your token may still be valid. Check your network connection and try again. (トークンはまだ有効かもしれません。ネットワーク接続を確認してもう一度お試しください)

⚠️ 401 Bad credentials が返っている時点で、通信は成功しています。 届いた先で「その資格情報は無効だ」と言われた状態です。回線を疑っても直りません。

v1.0.80 で実測しました。無効なトークンを環境変数に入れると、必ずこの文面(ネットワークを疑う案内を含む)が出ます。

(401)Bad credentials が出ていたら、原因はトークンの値です。

🔴 Request ID が付いているなら別のエラー

認証エラーには2種類あり、弾かれた場所が違います。

出るもの どこで弾かれたか 疑うもの
このページ GitHub のユーザー照会(401 Bad credentials トークンの
Error: Authentication failed (Request ID: ...) Copilot のサービス トークンの権限詳細

⚠️ Copilot Requests の権限が無いだけの場合は、このページではなく後者が出ます。

どのトークンが使われるか

上から順に見ます。

優先順 環境変数
1 COPILOT_GITHUB_TOKEN
2 GH_TOKEN
3 GITHUB_TOKEN
4 gh auth login で保存された資格情報

⚠️ 上のものが優先されます。 古い GITHUB_TOKEN が残っていると、gh でログインし直しても、そちらが使われ続けます。

直し方

1. どのトークンが設定されているか確認する

⚠️ 値そのものを画面に出さないこと。 長さと有無だけで足ります。

Windows(PowerShell)

foreach ($n in 'COPILOT_GITHUB_TOKEN','GH_TOKEN','GITHUB_TOKEN') {
  $v = [Environment]::GetEnvironmentVariable($n)
  "{0,-22} {1}" -f $n, $(if ($v) { "設定あり({0}文字)" -f $v.Length } else { "なし" })
}

macOS / Linux

for n in COPILOT_GITHUB_TOKEN GH_TOKEN GITHUB_TOKEN; do
  v=$(printenv "$n")
  printf '%-22s %s\n' "$n" "${v:+設定あり(${#v}文字)}${v:-なし}"
done

2. 古い環境変数を外す

環境変数が残っていると、ログインし直しても効きません。

macOS / Linux

unset COPILOT_GITHUB_TOKEN GH_TOKEN GITHUB_TOKEN

Windows(PowerShell)

Remove-Item Env:COPILOT_GITHUB_TOKEN, Env:GH_TOKEN, Env:GITHUB_TOKEN -ErrorAction SilentlyContinue

⚠️ シェルの設定ファイルやユーザー環境変数に書いてある場合は、そちらも消してください。新しい端末を開くと復活します。

3. ログインし直す

gh auth login

対話セッションの中からでも実行できます。

copilot
/login

4. トークンの「種類」も確かめる

⚠️ ghp_ で始まるクラシックトークンは、値が有効でも受け付けられません。 その場合はこのメッセージではなく Classic Personal Access Tokens (ghp_) are not supported by Copilot. が出ます。

5. CI では有効期限を疑う

CI に置いたトークンは、期限切れや権限変更で無効になっていることがあります。値が入っているかではなく、いま有効かを確認してください。

再発防止

  • 🔴 401 Bad credentials が出たら回線ではなくトークンを見る。 案内文に引きずられない
  • トークンは環境変数と gh の両方に散らばりやすい。片方に決める
  • CI では期限のあるトークンを使い、失効時に気づける形にしておく

この手順で直りませんでしたか?

環境を添えて報告いただければ、追加の原因を検証してこのページに反映します。

エラーを報告する