メモ
Copilot コーディング エージェント is in パブリック プレビュー and subject to change.
人間のソフトウェア開発者に対して行うのと同じように、 の issue を Copilot に割り当てることができます。 Copilot は issue の処理を開始し、pull request を発生させ、処理が完了したら、レビューを要求します。 詳しくは、「Copilot へのタスクの割り当てについて」をご覧ください。
以前に Copilot を使用して issue を処理したことがない場合は、良い結果を得るための有用なアドバイスを「Best practices for using Copilot to work on tasks」でご覧ください。
Copilot に issue を割り当てることで、issue の処理を開始するように Copilot に依頼できます。
以下のようにして Copilot に issue を割り当てることができます。
- .com で (次のセクションをご覧ください)
- Mobile 上
- API を使用して (この記事の後半をご覧ください)
- CLI を使用する (「
gh issue edit
」をご覧ください)
別のユーザーを割り当てるのとまったく同じ方法で、.com の Copilot に issue を割り当てることができます。
で、リポジトリのメイン ページに移動します。
リポジトリ名の下にある [イシュー] をクリックします。
Copilot に割り当てる issue を開きます。
右側のメニューで [担当者] をクリックします。
担当者の一覧から [Copilot] をクリックします。
ヒント
Copilot に issue を割り当てると、issue のタイトル、説明、および現在存在するすべてのコメントが送信されます。 Issue を割り当てた後、Copilot はその issue に追加された以降のコメントを認識せず、したがってそれに応答しません。 さらに詳しい情報がある場合、または元の要件に変更がある場合は、Copilot が発生させる pull request にコメントとして追加してください。
.com のその他の場所から Copilot に issue を割り当てることもできます。
- リポジトリの [Issues] ページにある issue の一覧から。
- プロジェクト で issue を表示しているとき。
GraphQL API に要求を行うことで、Copilot に issue を割り当てることができます。
personal access tokenや App ユーザーからサーバーへのトークンなどのユーザー トークンを使用して API で認証していることを確認してください。
GraphQL API のリポジトリの
suggestedActors
に Copilot が含まれているかどうかを確認して、Copilot コーディング エージェント がリポジトリで有効になっていることを確認します。monalisa
をリポジトリ所有者に置き換え、octocat
を名前に置き換えます。GraphQL query { repository(owner: "monalisa", name: "octocat") { suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) { nodes { login __typename ... on Bot { id } ... on User { id } } } } }
query { repository(owner: "monalisa", name: "octocat") { suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) { nodes { login __typename ... on Bot { id } ... on User { id } } } } }
ユーザーとリポジトリで Copilot コーディング エージェント が有効になっている場合、クエリから返される最初のノードの
login
値はcopilot-swe-agent
です。Copilot に割り当てる issue の GraphQL グローバル ID をフェッチし、
monalisa
をリポジトリの所有者、octocat
を名前、9000
を issue 番号に置き換えます。GraphQL query { repository(owner: "monalisa", name: "octocat") { issue(number: 9000) { id title } } }
query { repository(owner: "monalisa", name: "octocat") { issue(number: 9000) { id title } } }
replaceActorsForAssignable
GraphQL のミューテーションを使用して、issue を Copilot に割り当てます。ISSUE_ID
を前のステップで返された ID に置き換え、BOT_ID
をその前のステップで返された ID に置き換えます。GraphQL mutation { replaceActorsForAssignable(input: {assignableId: "ISSUE_ID", assigneeIds: ["BOT_ID"]}) { assignable { ... on Issue { id title assignees(first: 10) { nodes { login } } } } } }
mutation { replaceActorsForAssignable(input: {assignableId: "ISSUE_ID", assigneeIds: ["BOT_ID"]}) { assignable { ... on Issue { id title assignees(first: 10) { nodes { login } } } } } }
Copilot に issue を割り当てた直後に、Copilot は issue に対して 👀 の応答を残します。
数秒後、Copilot は、元の issue にリンクされた下書きの pull request を開きます。 イベントが issue のタイムラインに表示され、pull request にリンクされます。
Copilot が issue を処理するためのエージェント セッションを開始します。 "Copilot started work" イベントが pull request タイムラインに表示され、Copilot が機能すると、通常の状態の更新で pull request 本文が更新され、コミットがブランチにプッシュされます。
Copilot の処理状況を確認する場合は、[View session] をクリックします。 セッション ログ ビューアーが表示され、Copilot による issue の処理のライブ ログが表示されます。 Issue に対する Copilot の処理を停止する場合は、[Stop session] をクリックします。 「Copilot コーディング エージェント ログの使用」を参照してください。
Copilot が終了すると、エージェント セッションが終了し、Copilot がレビューを要求し、通知をトリガーします。 さらに、pull request タイムラインに "Copilot finished work" イベントが表示されます。
Copilot が issue の処理を完了したら、pull request を十分に確認し、変更が必要な内容についてコメントする必要があります。 「Copilot によって作成された pull request をレビューする」を参照してください。