VSCodeでGithubCopilotを利用していて、Githubとの接続が途切れて突然Chat機能が使用不能になる不具合に長らく苦しめられてきました。
この度、Qiitaに解決方法を載せてくださっている方を見つけまして、そのおかげでついに解決しました。ありがたいことです。
参考: VSCode で WSL2 プロジェクトを開くと Copilot 拡張機能が応答しない #copilot – Qiita
初心者目線でかみ砕いたメモを残しておきます。
作業環境
・windows11
・WSLを使用(Ubuntu)
・VSCodeはwindows版をwindows上にインストール
・VSCode上でWSLに接続し、WSL内のプロジェクトフォルダにて作業を行っている
・VSCode上でCopilotChatの機能を使用している
不具合の症状
CopilotChatが突然使用不能になる(チャットのやり取り表示が消え、代わりにサインインを求められる表示が出るが、サインインのボタンを押しても何も動かない)
原因(おそらく)
WSL上ではCopilot拡張機能が正しく動作しないことがある
対策
Copilot拡張機能に関しては、WSL:UBUNTUではなく、LOCALにインストールしたものを使用する。
具体的な手順
/home/<ユーザー名>/.vscode-server/data/Machine/settings.json に次のコードを追加しました。
"remote.extensionKind": {
"GitHub.copilot": ["ui"],
"GitHub.copilot-chat": ["ui"]
}
これにより、拡張機能をwslではなくローカルから呼び出すことができました。適用後は次の画像のとおり、WSL:UBUNTUの方の表示がグレーアウトしました。

setting.jsonについて
setting.jsonという名前のファイルは3種類存在する可能性があるので、混同しないようにしましょう。
Windows側(ローカル)
VS CodeをWindowsで起動したときのユーザー設定
C:\Users\<ユーザー名>\AppData\Roaming\Code\User\settings.json
WSL側(Linuxユーザー設定)
WSL内でVS Codeを使うときのユーザー設定(WSL内でVS Codeを直接起動した場合)
/home/<ユーザー名>/.config/Code/User/settings.json
VS Code Server(リモート拡張)
VS Codeの「リモート – WSL」拡張を使っている場合、
WSL内にVS Code Serverが立ち上がり、その専用の設定ファイル
/home/<ユーザー名>/.vscode-server/data/Machine/settings.json
今回コードを追加するのは、この /home/<ユーザー名>/.vscode-server/data/Machine/settings.json です。
直ってとても快適になりました。よかったよかった。
コメント