VS Codeを使っていてGitHub Copilotからログアウトしたいけれど、やり方が分からなかったり、サインアウトしたはずなのに勝手に再接続されて困っていませんか。アカウントの切り替えや別の契約への移行、あるいは認証エラーの解消など、正しくログアウトしたい場面は結構ありますよね。
今回は、VS CodeにおけるCopilotのログアウト手順から、ログアウトできないトラブルの対処法までを分かりやすく解説します。この記事を読めば、スムーズにサインアウトを完了させて希望通りのアカウント環境を整えられるようになりますので、ぜひ参考にしてみてくださいね。
- VS CodeでCopilotからサインアウトする標準的な3つの操作手順
- 別のアカウントやEnterprise環境へ切り替える際の注意点
- ログアウトできない・セッションが残存する場合の強制クリア手順
- サインアウトせずにAI補完機能のみを一時停止させる便利な設定
VS CodeでCopilotからログアウトする基本手順
VS CodeでGitHub Copilotからログアウトする操作は、主にエディタの画面上から行えます。標準的なアプローチが3パターンありますので、ご自身のやりやすい方法を試してみてください。
Accountsメニューからの手順
最も手軽で分かりやすいのが、VS Codeのアクティビティバー(画面左側または下部にあるアイコン列)にあるアカウントメニューを使う方法です。日頃から視覚的に確認しやすい場所にあるため、初心者の方でも迷わずに操作を完了できます。
アクティビティバーの下部にある人物アイコン(Accounts)をクリックすると、現在サインインしているアカウントの一覧が表示されます。その中から連携しているGitHubアカウントを選択し、コンテキストメニューから「Sign Out(サインアウト)」をクリックすれば完了です。この操作により、エディタ内に一時保持されていたアクティブなセッション情報がクリアされ、GitHub Copilotとの通信が停止します。
ワンポイント注意
アカウント一覧に「ユーザー名 (GitHub)」と「ユーザー名 (GitHub Copilot Chat)」が分かれて表示されている場合があります。Copilot Chat側だけをログアウトしてもコード補完機能の認証は残ってしまうため、完全にログアウトしたい場合は親元である「ユーザー名 (GitHub)」を選んでサインアウトしましょう。個別にサインアウトを行うと、チャット機能だけがオフになりインライン補完は動作し続けるという予期せぬ挙動につながることがあります。
なお、サインアウトを行った直後は、ステータスバーにあるCopilotのアイコンに打ち消し線が入ったり、未認証状態を示す警告表示に切り替わったりします。これでAccountsメニューからの正規のログアウト処理は無事に完了となります。
コマンドパレットでの手順
キーボード操作だけでサクッと済ませたい場合や、画面上のアイコンを非表示にしている場合は、コマンドパレットを活用するのがおすすめです。マウスを使わずに数秒でログアウト操作を実行できるため、普段からキーボードショートカットを多用する開発者にとっては最も効率的な手順と言えます。
ショートカットキー(WindowsならCtrl + Shift + P、macOSならCmd + Shift + P)を押してコマンドパレットを開き、GitHub: Sign Outと入力して実行します。これで連携されているGitHubの認証情報がリセットされます。検索窓に「Sign Out」と入力するだけでも関連するサインアウトコマンドが絞り込まれますので、一覧から該当する項目を選択してください。
操作後は、設定をキレイに反映させるために、コマンドパレットからDeveloper: Reload Windowを実行してウィンドウを再読み込みしておくと安心ですよ。メモリ上に残った一時的なキャッシュが完全に破棄され、エディタ全体が新しくリセットされた状態で再起動するため、認証の不整合トラブルを防ぐことができます。
拡張機能のアカウント管理
VS Codeには、拡張機能ごとに利用するアカウントを細かく指定できる機能も備わっています。複数のGitHubアカウントを所持していて、特定の拡張機能だけ別のアカウントで認証させたいといった高度な運用を行っている場合に、このアカウント管理メニューが非常に役立ちます。
コマンドパレットを開き、Accounts: Manage Extension Account Preferencesを選択すると、対応している拡張機能の一覧が表示されます。ここで「GitHub Copilot」や「GitHub Copilot Chat」を選び、紐づいているアカウントを個別に解除したり変更したりすることが可能です。例えば、全体のGit操作には個人アカウントを紐付けつつ、Copilotの拡張機能のみ会社用のアカウントで認証させるといった柔軟な切り替えが行えます。
もし意図しないアカウントが自動的に割り当てられてしまう場合は、この設定項目で拡張機能とアカウントの結びつきを一回解除(Unset)してから、再度必要なアカウントを指定し直すとスムーズに解決しますよ。
別アカウントに切り替える方法
「個人用アカウントから仕事用のアカウントに変更したい」という場面もよくありますよね。アカウントを切り替える際は、単にログアウトするだけでなく、ブラウザ側のセッションにも注意が必要です。VS Codeは認証時にローカルのデフォルトブラウザを開いてOAuth認証を行うため、ブラウザ側のログイン状態と強固に連動しています。
具体的な切り替えの手順は以下の通りです。
- ブラウザでGitHub(github.com)にアクセスし、あらかじめログアウトしておく
- VS Codeのアカウントメニューから現在のGitHubアカウントをサインアウトする
- VS Codeで「Sign in with GitHub」を実行し、ブラウザで新しいアカウントを使って認可する
ブラウザ側に以前のアカウントでログインした状態が残っていると、VS Codeで再サインインした際に同じアカウントで勝手に認証されてしまうことがあるので気をつけましょう。ブラウザで事前にサインアウトしておくか、シークレットウィンドウ(プライベートモード)を使って認証URLを開くことで、確実に狙ったアカウントへの切り替えが行えます。
個人用と企業用アカウント変更
個人向けのCopilot Pro/Freeから、会社などで導入されているCopilot BusinessやEnterpriseに変更する場合、認証情報のバッティングに気を付ける必要があります。特に組織アカウントではSSO(シングルサインオン)やIP制限などのセキュリティポリシーが適用されていることが多く、適切な手順を踏まないと「ライセンスが割り当てられていません」といったエラーが発生しやすくなります。
VS Code内では、エディタ全体のGitHub認証と、Copilotチャット機能の認証が別々に保持されることがあります。アカウント変更を行った後は、以下の3つのポイントをチェックしておくとトラブルを防げます。
- Accountsメニューに表示されているユーザー名が新しいものになっているか
- ステータスバーのCopilotアイコンにカーソルを置いた際、対象のアカウント名が表示されるか
- 実際にチャットやコード補完を試して、新しいサブスクリプションで動いているか
切り替え後にEnterprise環境側のポリシーでアクセスが拒否される場合は、組織のSAML認証や2要素認証が完了しているかをブラウザ側で確認し、必要に応じてVS Codeの再起動を行ってください。
トークン認証エラー時の対策
「Your GitHub token is invalid」といったエラーメッセージが表示されて動作しなくなった場合は、認証トークンの情報が古くなっていたり壊れていたりする可能性が高いです。有効期限切れやパスワード変更、組織の権限変更などが原因で、ローカルに保持されていた認証トークンがGitHubサーバー側で拒否されてしまう状況です。
この場合も、一度サインアウトを実行してから再ログインするのが基本の対処法となります。それでも解消しない場合は、GitHub側の設定ページ(Settings > Applications)を開き、「Authorized OAuth Apps」からVS CodeやCopilotの連携許可(Revoke)を取り消した上で、再度VS Codeからサインインを試みてください。
また、企業内ネットワークやVPNを経由している場合は、プロキシサーバーやSSL証明書の問題でトークン検証が不完全になることもあります。通信環境を一度確認し、証明書エラーが起きていないかも併せてチェックしてみると良いでしょう。
VS CodeでCopilotからログアウトできない時の対処法
「サインアウト操作をしたのに、VS Codeを再起動したらまたログイン状態に戻ってしまった…」という経験はありませんか。実は、認証トークンがOSやエディタ内部のキャッシュとして複数箇所に保存されていることが原因なんです。
ここでは、完全にセッションを削除するための強制パージ手順を解説します。
OS資格情報の削除手順
OSレベルの資格情報ストアにトークンが残っていると、VS Codeが起動時にそれを読み込んで自動的に再接続してしまいます。エディタ側でいくらログアウト操作を行っても、OS側のストレージからトークンが自動保管されているためにセッションが復活してしまうわけです。これを防ぐには、OSごとの管理画面から手動で関連する資格情報を削除する必要があります。
Windowsの場合:
スタートメニューから「資格情報マネージャー」を開き、「Windows 資格情報」を選択します。「汎用資格情報」のリスト内にあるgit:https://github.comやvscode-vscode.github-authentication、GitHubに関連する項目を探して「削除」をクリックします。
macOSの場合:
「キーチェーンアクセス(Keychain Access)」を起動し、検索窓にgithubまたはvscodeと入力します。検索結果に出てくるvscode-vscode.github-authenticationなどのエントリを右クリックして削除します。
これらのOSレベルでの削除を実行した後にVS Codeを起動すれば、キャッシュによる自動再接続が打ち切られ、確実に未ログイン状態を作り出すことができます。
グローバルステートのクリア
VS Code自体の内部ファイルに旧アカウントの情報がキャッシュされている場合もあります。OSの資格情報を消してもログアウト状態が反映されない時は、エディタのグローバルストレージに保存されているJSONファイルを手動で修正または初期化しましょう。この作業を行う際は、必ずVS Codeを完全に終了させた状態で実施してください。
以下のパスにあるglobalState.jsonファイルをテキストエディタで開きます。
| OS | ファイルの格納パス |
|---|---|
| Windows | %APPDATA%\Code\User\globalStorage\globalState.json |
| macOS | ~/Library/Application Support/Code/User/globalStorage/globalState.json |
| Linux | ~/.config/Code/User/globalStorage/globalState.json |
ファイルの中から、以前利用していたGitHubのユーザー名や認証ID、あるいはgithub.authenticationといったキーが記述されている行を探して削除し、保存後にVS Codeを起動し直します。編集に不安がある場合は事前にバックアップを取っておくと安心です。
GitHub側の認証無効化
お使いのPC側だけでなく、GitHubのサーバー側に残っている連携許可をリセットするのも効果的です。クライアント側のキャッシュをどれだけ削除しても問題が解決しない場合は、サーバー側でトークンの有効性を失効(Revoke)させるのが最も確実で強力なアプローチとなります。
WebブラウザでGitHubにログインし、Settings > Applications に進みます。「Authorized OAuth Apps」タブにある「GitHub for VS Code」や「GitHub Copilot」の項目から「Revoke」を実行して権限を取り消しましょう。これにより、ローカルに残っていた古いトークンが無効化され、次回VS Codeから接続する際に必ず新しく認証を求める画面が表示されるようになります。
このアクセス取り消し処理は即座に反映されるため、ゾンビ状態になっていた古いセッションを根底からクリアしたい場合に非常に有効な手段です。
GHEへのサインイン画面ループ
GitHub Enterprise(.ghe.comなど)のアカウントを利用した後に通常のアカウントへ戻そうとすると、「Sign in to GHE.com」という表示が何度も出て一般のGitHubにログインできなくなる現象があります。企業用と個人用のアカウントを行き来する開発者が特に遭遇しやすいトラブルの一つです。
これは、設定ファイル(settings.json)内にエンタープライズ向けの認証設定が残っていることが原因です。VS Codeの設定からsettings.jsonを開き、以下の記述がないか確認してみてください。
削除すべき設定記述:
"github.copilot.advanced": {
"authProvider": "github-enterprise"
}
もしこの記述があれば削除するか、"authProvider": "github"に修正してファイルを保存します。その後、ウィンドウをリロードすれば通常アカウントでログインできるようになります。設定ファイル内の不要なパラメータを取り除くことで、無限ループから抜け出すことができます。
サジェストの無効化と一時停止
「コードの自動補完を一時的に止めたい」「特定のファイルでAIの提案を出さないようにしたい」という目的であれば、無理にログアウトする必要はありません。ログアウトしてしまうと毎回サインインし直す手間がかかりますが、設定変更だけでサジェストをオフにできます。用途に応じて設定を切り替える方が遥かにスマートです。
例えば、settings.jsonに以下の記述を追加すると、AI機能を一括で無効化できます。
{
"chat.disableAIFeatures": true
}
また、Markdownやテキストファイルでのみ補完を止めたい場合は、以下のように言語ごとの有効・無効を設定するのが便利です。
{
"github.copilot.enable": {
"*": true,
"plaintext": false,
"markdown": false
}
}
状況に合わせて、ログアウトと設定の変更を使い分けてみてくださいね。必要のない場面でだけ機能を休止させることで、作業効率を落とさずに快適な開発環境を維持できます。
VS CodeでCopilotからログアウトする方法のまとめ
今回は、VS CodeでCopilotからログアウトする方法や、ログアウトできない時の解決策について解説しました。
基本的にはAccountsメニューやコマンドパレットから簡単にログアウトできますが、トークンやキャッシュが残ってしまう場合はOSの資格情報マネージャーや設定ファイルの確認が必要です。ご自身のトラブルの状況に合わせて、適切な手順を試してみてくださいね。
