Skip to main content

GitHub Copilot を使った issue の作成

Copilot を使うと、すべてのフィールドを手動で入力することなく、自然言語または画像から構造化された高品質の issue をすばやく生成できます。

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

Anyone with a Copilot license can use Copilot to create issues.
Try Copilot for free

メモ

この機能はパブリック プレビュー段階であり、変更される可能性があります。

手動で issue を作成すると、同じことを繰り返して時間がかかる場合があります。 Copilot を使うと、自然言語でプロンプトを使ったり、スクリーンショットをアップロードしたりして、issue をより短時間で作成できます。 Copilot は、リポジトリの issue フォームまたはテンプレートを使って、タイトル、本文、ラベル、担当者、その他を設定します。

ユーザーがプロセスを制御します。 ユーザーは、新しい issue を送信する前に、Copilot の提案をレビューして修正できます。

Copilot を使った issue の作成

Copilot Chat のイマーシブ ビューから issue を作成できます。

  1. Copilot Chat (https://github.com/copilot) のイマーシブ ビューに移動します。

  2. プロンプト ボックスで、作成する issue について説明します。

    複数のリポジトリに issue をコントリビュートする場合は、repo-owner/repo-name 形式を使って、この issue のターゲット リポジトリを指定します。 リポジトリを指定しないと、Copilot は、ユーザーが最後に issue を作成したリポジトリに基づいてリポジトリを推測します。

    次に例を示します。

    • <所有者/リポジトリ> に、検索にあいまい一致を追加する機能の要求を作成してください。

    • 500 エラーのバグを記録してください。 これは、サイトにログインしようとすると、常に発生すします。

    • アプリケーションのロゴ背景を赤に変更し、「デザイン レビューが必要」というラベルを追加するタスクを作成してください。

    メモ

    Issue を作成するアクセス許可が既に付与されているリポジトリ内に issue を作成するには、Copilot のみを使用できます。 この機能を実行しても、アクセス権が変更されたり、リポジトリのアクセス許可がバイパスされたりすることはありません。

  3. または、次のいずれかの方法を使ってプロンプトに画像を含めることができます。

    • 画像をコピーし、ページの下部にあるプロンプト ボックスに貼り付けます。
    • プロンプト ボックスで をクリックしてから、[Image] をクリックします。 添付する画像ファイルを参照して選択し、[Open] をクリックします。
    • オペレーティング システムのエクスプローラーからプロンプト ボックスに画像ファイルをドラッグ アンド ドロップします。

    画像を貼り付けるかアップロードした後、プロンプトにテキストを追加できます (例: Create an issue because this error appears when trying to reset a password.)。

  4. Copilot により、次のものを含む issue の下書きが作成されます。

    • タイトル案。

    • 必要な変更の詳細。

      お使いのリポジトリに issue フォームまたはテンプレートがある場合、Copilot はプロンプトに基づいて適切なフォームまたはテンプレートを選びます。 フォームまたはテンプレートがない場合は、Copilot は issue の詳細に関する基本的な issue 本文を作成します。

      Copilot は、issue フォームを使っている場合、どのようなデータも失うことなく、プロンプトの情報をフォームの関連フィールドに分割します。 Copilot は、十分な情報がなくて設定できないフィールドがある場合、追加のコンテキストを提供するようユーザーに求めます。

    Copilot は、ユーザーのプロンプトに基づいて、ラベル、担当者、issue の種類などのメタデータも提案できます。

  5. 下書きをレビューします。 次のことを実行できます。

    • Issue の任意の部分を手動で編集します。
    • ユーザーの入力を失うことなく、異なる issue フォームまたはテンプレートを選びます。 Copilot は、ユーザーが選んだフォームまたはテンプレートに従って、内容の形式を変更します。
    • フォローアップ プロンプトを使って、変更を加えるように Copilot に依頼します。
  6. Issue に問題がなければ、[Create] をクリックします。

一度に複数の issue を作成する

プロンプトに複数のタスクまたはバグが含まれている場合、Copilot を使って一度に複数の issue の下書きを作成できます。

例: <所有者/リポジトリ> で、次の 3 つの issue を作成してください: 1) あるタスクの詳細、2) 別のタスクの詳細、3) 3 番目のタスクの詳細

各下書きは個別に表示され、個別にレビューおよび編集できます。 Issue を発行するには、送信する issue ごとに [Create] をクリックします。

Sub-issue の作成

Copilot を使って複数の sub-issue を作成することができます。

次に例を示します。

In octo-org/octo-repo, plan a new user dashboard. Break it down into an epic, and create sub-issues for each main feature and task.

Copilot により、最上位に親 issue があり、その下に sub-issue があるドラフトの issue ツリーが生成されます。

Issue ツリーをレビューし、sub-issue を展開したり折りたたんだりして、各 issue の詳細を編集することができます。

親 issue をクリックすると、ワークベンチにその詳細が表示されます。 親 issue には sub-issue の一覧が表示されます。いずれかをクリックすると、ワークベンチでその詳細を表示および編集できます。 Sub-issue から、[Parent] ドロップダウンを使って issue ツリー内を移動します。 また、ワークベンチの上部にある [Review and create] をクリックして issue ツリー全体を表示し、任意の issue に直接移動することもできます。

Copilot を使って、issue のリンクを解除したり、新しいドラフトをアタッチしたりすることでツリーを変更できます。

たとえば、次のようなことができます。

  • Issue ツリーから sub-issue を削除する:
    Remove sub-issue NAME_OF_ISSUE from the issue tree
  • Issue ツリーに sub-issue を追加する: Add an additional sub-issue with ISSUE_DETAILS to the issue tree

ドラフトの編集が完了し、issue を発行する準備ができたら、[Review and create] をクリックし、[Create issues] をクリックします。

既存の issue の操作

Copilot を使うと、新しい issue をリポジトリ内に既に存在する issue に関連付けることができます。

たとえば、次のようなことができます。

  • 既存の親 issue に sub-issue を追加する:
    Create a sub-issue for octo-org/octo-repo issue #456.
  • 既存の issue に親 issue を追加する: Create a parent issue for octo-org/octo-repo issue #456.
  • 複数の既存の issue に親 issue を追加する: Create a parent issue for octo-org/octo-repo issues #456, #457, and #458.

ドラフトはワークベンチに表示され、レビューおよび編集できます。 Issue を発行するには、[Review and create] をクリックし、[Create issues] をクリックします。

Issue の Copilot への割り当て

Copilot に issue を割り当てるには、Copilot コーディング エージェント を有効にする必要があります。 「ビジネスおよび Enterprise 向け GitHub Copilot コーディング エージェントについて」を参照してください。

作成中に issue を割り当てるには、次の 2 つの方法があります。

  • 自然言語: Assign this issue to Copilot. のような内容で Copilot に指示を出します。
  • 手動: 担当者一覧から [Copilot] を選びます。

Issue が割り当てられ、作成されると、Copilot により、自動的にその issue の処理が開始されます。 この issue には、Copilot が処理中であることを示す 👀 の絵文字リアクションが表示されます。

参考資料