1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHubAdvent Calendar 2024

Day 6

【AI時代の開発】GitHub Copilot Workspaceのプレビューアクセスをもらったので試してみた

Last updated at Posted at 2024-12-25

これは何?

GitHub Copilot WorkspaceというGitHubの最新AI機能が使えるようになったので使用感など書いていきます。

GitHub Copilot Workspace公式からテクニカルプレビューに申し込めます。


GitHub Copilot Workspaceはなにが違うのか

従来のGitHub Copilotでは,2024/12/25現在では以下の機能を使うことができます。

  • エディタ上でのコードの提案
  • Copilot Chatによ: チャットでAIに質問することができる
    • プロンプトとして開いているコードやリポジトリ全体を入れることが可能
      • コードの要約やテストコードの作成も可能
    • 作成したコードをそのままソースに反映することが可能
  • Copilot Explain
    • チャットでAIに直してほしいところをいうと反映してくれる
    • Copilot Chatよりも修正に特化しているのでスピーディーに編集できる

これだけでも,すごいのですが,Copilot Workspaceではより上流工程からAIアシスタントとコーディングできるのが特徴です。

GitHub Copilot Workspace公式に書いてあることをベースに抜粋しておきます。

  • タスクの作成: プロジェクトの開始時になにをしないといけないかの計画の洗い出し
  • 計画の立案: Issueを解決するための計画をリストで作成してくれる
  • GitHub Copilot Workspaceで直接コードを実行できるらしい

Copilot Workspaceを実際に使ってみる

注意

公式のマニュアルリポジトリのVSCode用はこちらになります。現状全機能を試しているわけではないので,適宜こちらを参照してください。

ベースでは自分のアドベントカレンダーの題材にもしているリポジトリを使いました。

動作イメージ

  1. https://copilot-workspace.githubnext.com/にアクセスする
    image.png

  2. あたらしいリポジトリを作ってもよいのですが,今回は既存のリポジトリを選びます。するとこのようなページが表示されます。
    image.png

    VSCodeで開きたい場合,VSCodeアイコンを押すとVSCodeで開けます。拡張機能のインストールやら言われたとおりやります。
    (自分はこのアイコンがリポジトリを選ぶまで表示されないのにすぐに気がつけなかったので記載しておきます。)

  3. Taskを入力する ※2024/12/25現在では,VSCodeからの編集はできなさそう。

    # Form認証機能を作成するための計画
    
    ## 実装方針
    
    - 認証画面はhtmlで作成する
    - localhost/formにアクセスした際に認証画面を表示する
    - ユーザが認証した場合,redisにある認証情報と照らし合わせる
    - 認証失敗の場合は再度認証画面を返し,認証成功ならリクエストを転送する
    
  4. Brainstormを押す
    image.png
    正しいかはちゃんと見てないですが,すごく具体的な実装プランを書いてくれました。感動!
    image.png

  5. planを作成する
    image.png

  6. Implimented Selected Taskを押す
    image.png
    編集すべき箇所を比較でき,pull requestまで作成できる模様。
    ちなみに各編集内容に関してもボタン一つで説明してくれる。More Options→Explain changes
    image.png

    image.png

    現状ブラウザで作成したTask,Taskをもとに作成したBrainstormはVSCodeとsyncしますが,PlanはSyncしていなさそうです。
    ローカルで動作検証などすると思うので個人的にはVSCodeからPlanを作成してImplimented Selected Taskを押すのが良さそうです。
    ですが,自分の環境だと,VSCodeから実行した際に以下のエラーが出たので調査中
    image.png
    再度ブラウザからVSCodeで開くを実行するとpushするためのアイコンが現れました。
    image.png
    リモートにpushするのは嫌なので,チェックを外して実行するとブランチが変更され,ローカルに変更が適用されました。
    image.png
    どうやらブランチ名はブラウザで開いているGitHub copilot workspaceに紐付いているようでブランチ名を変更するとセッションが切れてしまいます。
    TODO: 名前を指定する方法を調べる


感想

タスクを切るところから編集してpull requestまで全部やってくれるので,人間に必要なのはテストとレビューだけという状態になりました。
AIはこれからUIの戦いになるという話を聞いたことがありますが,デザインと機能が洗練されていてGitHubというプラットフォームは今後さらに使われるようになるだろうなと感じました。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?