Copilot Workspaceで"管制官"になろう

下記に自由にIssueを立ててください
その内容でCopilot Workspaceに依頼します

https://github.com/eltociear/copilot-workspace-web

# Copilot Workspaceとは

引用 - [GitHub Copilot Workspace：GitHub Copilotネイティブの開発環境へようこそ](https://github.blog/jp/2024-04-30-github-copilot-workspace/)

> GitHub Copilot Workspaceでは、開発者は自然言語でコードのブレインストーミング、計画、ビルド、テスト、実行を行うことができます。この新しいタスク中心の開発者体験では、GitHub Copilot を搭載したさまざまなエージェントを開発プロセスの最初から最後まで活用し、開発者はプロセスの各ステップを完全にコントロールできます。

まとめるとGitHub上にて自然言語でまるっと開発を進めてくれる生成AIエージェントです！！！
2024/4/30よりテクニカルプレビューが解放されており、
ウェイティングリストに登録すると後ほど使えるようになります

## 感想

2021/6/29にテクニカルプレビューが始まったGitHub Copilotも遂にここまで来たのかって印象です

私がCopilot Workspaceを使ってみた感触ですが、
これは指示をもとに上流から下流工程までやってくれる中級SEという感じです
上手く活用することで自分のコーディング量が最高80%ぐらい減らせるかも？と思いました
（とはいえ使いこなすにはまあまあ力は要りそうです）

なのでももはやCopilot（副操縦士）の域を超えてただのPilot（操縦士）になっており
人間サイドはそれを見守る管制官の立場になるのではないかと思いました

## ライブプレビュー

先に行われた「AI駆動開発(AI-Driven Development) 勉強会 第2回」にて
GitHubの[服部さん（@yuhattor）](https://x.com/yuhattor)がライブプレビューを見せてくれました

<iframe width="560" height="315" src="https://www.youtube.com/embed/Lk3UUS4rOiQ?si=Qq8DtJ-jAK2phXUD&amp;start=967" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

このプレビューでは自作の電卓アプリに対して「Adding power operation」（冪乗の計算を追加して）の命令を行うと
コードベースを検索してきてSpecification（仕様）を表示し、
このファイルにこの変更を加えますというPlan（計画）を立て、
そのPlanを元にImplementation（実装）を進め、
その内容でPull Request（PRタイトルとメッセージも自動記入）が作られます

# 実際に使ってみた

1. 🔹Issueを作って「Open in Workspace」押下
![スクリーンショット 2024-06-15 15.53.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/9fef7ea1-2c0d-aff2-963f-665524d26752.png)
※日本語入力でも可能
※Issueのメッセージは書かなくても大丈夫だが、この内容もプロンプトになるのでわかっている詳細を書いておくと良い、または[日本語で書いて等の命令を追加](https://qiita.com/eltociear/items/46785a470eb05e450c5f)や[特手のプレフィックスを付加する命令](https://qiita.com/eltociear/items/b817c6523cdf78840835)を行うこともできます

1. 🔹Issueを元にSpecification（仕様）を検討し
![スクリーンショット 2024-06-15 15.58.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/b5893ea8-1f21-2a73-31e5-852a088a0da6.png)

1. 🔹Specification（仕様）からPlan（計画）を立て
![スクリーンショット 2024-06-15 15.59.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/1783be1e-25e4-9e06-641f-7dbece2fea74.png)

1. 🔹自動コーディング
![スクリーンショット 2024-06-15 16.00.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/76311dff-46c2-bf72-bcfc-a346f841e3c3.png)
この自動コーディングしている様子は覗き見ることができるので、
Copilotくんの頑張りがわかって面白いです

1. 🔹PRタイトルと説明も自動記述
![スクリーンショット 2024-06-15 16.00.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/61f87378-4f33-bbaf-b61a-691f354e3d5f.png)

あとは内容を見てPRをマージし、実際に確認するだけですね😋

## 動かない場合は別途、Sessionで修正依頼

![スクリーンショット 2024-06-15 16.05.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/7eea042a-05a0-754d-7914-44f01ad50450.png)

エラーメッセージやその詳細を入力することで対応してくれます

また、出来上がっているものに対してもSessionで改修依頼
資料作成等にも結構色々使える様子です

# モデル
引用 - [Discord | GitHub Next copilot-workspace](https://discord.com/channels/735557230698692749/1243565983881232395/1243612268252364952)
> Copilot Workspace is powered by GPT-4 Turbo. We continually evaluate new models to ensure we’re using the best one for our needs, but as of now, GPT-4 Turbo is the model in use
翻訳: Copilot Workspace は GPT-4 Turbo を搭載しています。私たちは常に新しいモデルを評価して、ニーズに最適なものを使用していることを確認していますが、現時点では GPT-4 Turbo が使用されているモデルです

現在はGPT-4 Turboとのことです
また、

> As GPT-4o is also still kind of in it's (too) early stage, don't expect it soon.
翻訳: GPT-4o もまだ (あまりにも) 初期段階にあるため、すぐには期待しないでください。

でした

しかし、いずれはGPT-4oやそれ以降のモデルも採用されると思いますので
Copilot Workspaceも爆発的に進化していく、、、、かもですね！
![スクリーンショット 2024-06-15 16.14.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188242/cd51c0d5-8f1a-13e8-edca-f560d0dca95f.png)

# まとめ
1. Copilot Workspaceは現在TP中
1. 簡単プロンプトでもちゃんと動いてくれる（とはいえプロンプト力は大事）
1. モデルの進化で”Pilot”自体を任せられる？

GitHubによるCopilotの最新機能"Copilot Workspace"はいかがでしたでしょうか
生成AIを用いた新たな開発へのアプローチは日進月歩で日々すごいものが出てきており、
とてもとても面白い状態ではありますがちょっとキャッチアップが遅れるとすぐ置いて行かれた感もする今日この頃、、、

この機能もまだTPの段階ではありますがGAされた時のインパクトはなかなかありそうかと思います
ぜひWaiting Listに登録して見てください

または、下記にIssueを立ててみてください
Issueが立ったらそれをCopilot Workspaceに依頼します
https://github.com/eltociear/copilot-workspace-web