はじめに
ひとつのリポジトリで完結する修正なら、そのリポジトリからセッションを始めれば十分です。一方で、複数のリポジトリにまたがる課題や、何度かに分けて進めたい目標では、「どの作業がどこまで進んだか」「次に何をするか」をまとめておきたくなります。
GitHub Copilot app に追加された Projects は、関連する作業を時間をまたいでまとめ、目標に沿って Copilot と進めるための機能です。単一のセッションだけでは扱いにくい、複数リポジトリにまたがる問題や継続的な作業を、Project という単位で整理できます。🗂️
今回は、リポジトリ単位のセッションとの使い分けから、進捗確認、資料の共有、定期タスクの設定までを整理します。
前回の記事では、個別の作業をセッションで進め、Pull Request につなげる流れを紹介しました。今回はその一段上にある、複数の作業を束ねる Projects を見ていきます。
Projectsとは
Project は、Copilot に継続的な目標を渡し、関連する作業をまとめて進めるための場所です。ひとつ以上のリポジトリにまたがる作業だけでなく、リポジトリを必要としない作業にも使えます。
目標に応じて、Project の中でセッションを始めたり、定期的な自動化を設定したり、成果物を作成したりできます。つまり、Project は「ひとつの依頼を実行するセッション」というより、関連する仕事とその進捗をまとめる単位として考えると分かりやすいです。
| 作業の範囲 | 始め方 |
|---|---|
| 特定のリポジトリ内で完結するタスク | そのリポジトリからセッションを開始する |
| 複数リポジトリにまたがる課題や、継続的な目標 | Project を作成して作業をまとめる |
| リポジトリに依存しない調査や整理 | リポジトリを選ばず Project を作成する |
小さな修正まで Project にまとめる必要はありません。反対に、関連する作業が複数回に分かれるなら、Project に目標や資料を置き、進み具合を確認しながら続けられます。
Projectを作成して、目標を伝える
GitHub Copilot app のサイドバーにある Projects から新しい Project を作成します。Project で使うリポジトリは任意で追加でき、リポジトリを登録せずに始めることもできます。
最初のプロンプトには、単に「調べてください」と書くのではなく、Project の目的、最初に行うタスク、ほしい成果、守ってほしい制約を含めます。たとえば、複数のリポジトリに関係する課題を整理するなら、次のように依頼できます。
このProjectでは、複数のリポジトリにまたがる認証まわりの課題を整理します。
まず、追加したリポジトリを確認し、関連する課題や現在の対応状況をまとめてください。
最初に調査結果と、次に進める作業の候補を提示してください。
変更を加える前に、対象リポジトリと作業内容を確認してください。
この例のように、最初に期待する結果や制約を明示しておくと、Project の目標と個々の作業を結び付けやすくなります。必要な資料がある場合は、作成時または後から Library に追加できます。
Overviewで進捗を確認し、次の作業へつなげる
Project の Overview では、作業を Needs input / Open / Working / Done に分けて確認できます。たとえば、Copilot の判断を待つ作業、Pull Request が開いている作業、進行中のセッション、完了した作業を区別できます。
個々のセッションを開けば、会話だけでなく変更内容や Pull Request、計画も確認できます。必要な情報を補ったり、作業の優先順位を伝えたりして、進行中の仕事に追加の指示を出せます。
大きな目標を最初のプロンプトで完全に分解しきるのではなく、まず動き出し、Overview で状況を見てから次の指示を足す。この反復が、継続的な作業を Project で扱うときの基本になります。
Libraryで資料と成果物を共有する
Project の Library には、ユーザーが追加した資料と、エージェントが生成した成果物がまとまります。仕様書や調査対象の資料など、作業で参照してほしいファイルを追加し、Copilot にはどの資料を使うかも伝えられます。
Project の目標と関連資料を同じ場所に置いておけば、作業を再開するときに必要な文脈を確認しやすくなります。資料を増やしすぎず、Project の目的に関係するものに絞ることも大切です。
繰り返す作業はAutomationsで設定する
定期的に行いたい作業は、Project の会話でタスクとスケジュールを伝えて設定できます。たとえば、Library に追加された資料を毎週確認して、要点をまとめるといった使い方です。
設定した自動化は Automations タブでスケジュールや次回の実行予定を確認できます。スケジュールの編集、一時停止、削除も同じ場所から行えます。継続してほしい作業と、繰り返す頻度・期待する結果を具体的に伝えるのがポイントです。
注意点
GitHub Docs では、Projects はパブリックプレビューとされています。プレビュー中は機能や仕様が変わる可能性があるため、実際に利用するときは最新の公式ドキュメントも確認してください。
また、Project を作っただけで、すべてのリポジトリの作業が自動的に進むわけではありません。使うリポジトリや参照資料を選び、目標と期待する結果を明確に伝え、Overview で進捗を確認しながら方向を整えることが大切です。
おわりに
GitHub Copilot Projects は、複数リポジトリにまたがる課題や、継続的な目標を、関連する作業・資料・進捗と一緒に扱うための機能です。リポジトリ内で完結する仕事はそのリポジトリからセッションを始め、広い目標には Project を使う、という使い分けが基本になります。
Overview で進み具合を追い、Library で資料を共有し、必要なら Automations で定期タスクを設定する。単発のチャットで終わらない仕事を Copilot と進めるとき、Projects はその仕事全体を見渡すための「作業の器」になりそうです。🚀
