Skip to main content

Copilot のコーディング エージェントのトラブルシューティング

タスクを Copilot に割り当てるときに発生する可能性がある問題の解決方法について説明します。

この機能を使用できるユーザーについて

Copilot コーディング エージェント は、有効になっているリポジトリの GitHub Copilot Pro+ および GitHub Copilot Enterprise プランで使用できます。 Copilot コーディング エージェント は、マネージド ユーザー アカウント によって所有されるリポジトリでは使用できません。
Sign up for Copilot

メモ

Copilot コーディング エージェント is in パブリック プレビュー and subject to change. During the preview, use of the feature is subject to GitHub プレリリース ライセンス条項.

Issue の "Assignees" 一覧に Copilot が存在しない

Copilot に issue を割り当てることができるのは、GitHub Copilot Pro+ プランまたは GitHub Copilot Enterprise プランを通じて Copilot にアクセスできる場合のみです。

これらのプランのサブスクリプションをまだお持ちでない場合は、次のボタンをクリックして詳細を確認してください。
Copilot にサインアップする

GitHub Copilot Pro+ または GitHub Copilot Enterprise のいずれかを "持っている" 場合は、Copilot コーディング エージェント がリポジトリで使用可能になっていることをチェックします。__

メモ

Copilot コーディング エージェント が有効になっているかどうかは、Copilot 設定の機能ページ (github.com/settings/copilot/features) で確認できます。

Enterprise Managed User アカウントを使用すると、Copilot が個人用リポジトリで機能しない

Copilot コーディング エージェント は、マネージド ユーザー アカウント によって所有される個人用リポジトリでは使用できません。 これは、Copilot コーディング エージェント は GitHub ホステッド ランナー上で実行されますが、ランナーは マネージド ユーザー アカウント で所有されるリポジトリでは使用できないためです。 詳しくは、「GitHub ホステッド ランナーの概要」をご覧ください。

マネージド ユーザー アカウント を使って、Copilot を個人用リポジトリの issue に割り当てようとすると、GitHub Actions をリポジトリで使用できないというエラー メッセージが表示されることがあります。

Copilot コーディング エージェント を使うには、個人用リポジトリではなく、organization が所有するリポジトリを使う必要があります。

Copilot で Copilot Chat

から pull request を作成できない

Copilot に pull request を作成するように依頼し、pull request を直接作成できないという応答が返された場合は、Copilot コーディング エージェント が使用可能であることを確認します。

重要

VS Code、Visual Studio、JetBrains IDE では、プロンプトで @github チャット参加者をメンションする必要があります。 GitHub.com の Copilot Chat ではこれを省略できます。

Copilot に issue を割り当てたものの、何も起こらない

しばらく待って、ページを更新します。 Copilot が issue に対して 👀 の反応を残していることに気付くはずです。 この後すぐに、Copilot が issue に関連する下書きの pull request を開き、issue のタイムラインに表示されます。

Copilot が pull request を開いたものの、何も起こらない

Pull request のタイムラインに "Copilot が作業を開始した" イベントがある場合は、[View session] をクリックしてセッション ログを確認します。 これらはライブストリーミングされるため、Copilot が何を行っているかを確認できます。

Copilot が pull request のコメントに応答しない

Copilot only responds to comments from people who have write access to the repository.

書き込みアクセス権限を持っているユーザーが、Copilot に割り当てられている pull request にコメントを追加した場合、コメントは Copilot コーディング エージェント に渡されます。 Copilot コーディング エージェント によってコメントが考慮されていることを示す目の絵文字 (👀) がコメントに追加されます。 エージェントがコメントに応答して変更を行う作業に進んだ場合、pull request のタイムラインに "Copilot が作業を開始した" イベントが追加されます。

このようにならない場合は、Copilot が pull request から割り当てを解除されたか、Copilot がコメントに対応できないと判断した可能性があります。

Copilot が pull request に割り当てられていることを確認します。 割り当てられている場合、@copilot 付きのコメントで Copilot を @mentioning することで、Copilot にコメントへの応答を強制できます。

エージェントのセッション ログによると、Copilot の作業が停止しているように見える

Copilot はしばらくの間作業が停止しているように見えた後、再度作業を開始することがあります。

セッションが停止したままの場合、1 時間後にタイムアウトになります。 再試行するには、issue の割り当てを解除した後、Copilot に再割り当てすることができます。

コメントへの応答中に Copilot の作業が停止した場合は、pull request に同じコメントをもう一度追加してみてください。

Copilot がプッシュしても、GitHub Actions のワークフローが実行されない

Copilot が pull request に変更をプッシュしても、GitHub Actions のワークフローは自動的には実行されません。

GitHub Actions のワークフローの実行を許可するには、pull request のマージ ボックスの [Approve and run workflows] ボタンをクリックします。 「Copilot によって作成された pull request をレビューする」を参照してください。

Copilot が CI チェックに合格しない変更をプッシュしている

Issue の作業中、Copilot は、GitHub Actions を利用して独自の一過性の開発環境にアクセスできます。この開発環境では、自動的なテストとリンターを実施することで、プッシュする前に作業の検証を行えます。

何をすべきかについて明確な指示が与えられた場合は、これを実施する可能性が最も高くなります。 これを最も効果的に実施する方法は、.github/copilot-instructions.md ファイルを使用することです。 「Copilot を使用してタスクに取り組むためのベスト プラクティス」を参照してください。

ファイアウォールに関する GitHub Copilot からの警告がある

既定では、Copilot のインターネットへのアクセスはファイアウォールで制限されます。

インターネットへのアクセスを制限すると、Copilot の驚くべき動作や提供された悪意のある指示によってコードやその他の機密情報がリモートの場所に漏洩する可能性がある、データ流出のリスクを管理できます。

Copilot がファイアウォールによってブロックされた要求を行おうとすると、pull request の本文 (Copilot が issue の割り当てに応答している場合) またはコメント (Copilot がコメントに応答している場合) に警告が追加されます。 警告には、ブロックされたアドレスと要求を行おうとしたコマンドが表示されます。

ファイアウォールによってブロックされたことに関する Copilot からの警告のスクリーンショット。

詳しくは、「Customizing or disabling the firewall for Copilot coding agent」をご覧ください。

参考資料