大分前にwaitlist入りしていたものが最近許可されたため、用途を研究。
GitHub Next | Copilot Workspace
リポジトリの[Code]プルダウンメニューにLocalとCodespacesに加え、Copilotが登場するようになる。
タスクの内容を記述してStart taskをクリックする。
すると「計画のみ」か「計画と実装」が選べる。
軽微な修正なら、実装までまとめて依頼しても良い。
ただ、完全にまっさらな状態には適さない。
当たり前だが、開発コンテナーなど開発環境まで考慮されていない。
Node.jsなら、よくわからないpackage.jsonを書いてくる。
情報がない状態で頑張っているので、これは仕方ない。
よって、リポジトリを作成後、IDEやCLIなどでテンプレートからプロジェクト生成をしたものを予めコミットしておく。
例えば、.NET Aspire スターター(Blazorなど全部入り)のプロジェクトを生成したものをコミット後、次の内容でタスクを記述する。
WebにLicenseタブを追加して、ライセンスの内容を追加する。
Start taskの後、実装まで任せてみると、
- タブに追加(アイコンなし)
- コンテンツはファイルから読み込む(当然エラー)
と言ったものができあがった。
ビルド時に、LICENSEファイルを実行ディレクトリにコピーするようにcsprojを編集すると表示された。
あとは通常の通りPull Request作成およびマージするだけ。
現状、NuGetパッケージ管理は自分でやらないと駄目っぽいので、手動修正はそれくらいか。
LLMはコマンドプロンプト次第なところがあるので、実装が狙い通りにできるかは別。
探るのが面倒だったら、Planだけ利用するという用途でもいいかもしれない。
PlanもImplementationも気に入らなかったらゴミ箱アイコンで削除できる。
既存プロジェクトにいきなり導入するのはリスクがありそうなので、プライベートリポジトリを新しく作成し、いろいろ試す方がよい。