はじめに
Copilotの機能であるcoding agentを使ってみたく、Copilot Pro+に登録してPro+のプランの範囲で使用できるだけ使ってみました。
今回は、使ってみた際の良かったissue内容やあまり意図通りに行かなかった内容をまとめようと思います。
Copilot coding agentとは?
まずCopilot coding agentは、githubのCopilotの機能として追加された現段階ではプレビューの機能で、
できることは、リポジトリのIssueにアサインすることでそのissueを自動的に修正し、プルリクエストまで作成してくれます。
また、プルリクエストを自動で作ってくれる機能もあります。
導入方法や簡単な使い方は下記にまとめましたので、使ってみたい方はこちらを参考にしてみてください
任せて良かった点
思い通りに修正してくれた点は、修正内容が明確で細かく指示した場合にはほとんど意図通りに修正してくれました。
例えば、下記のようにかなり細かく内容を指定して、issueを作成することでかなりの精度で修正を行なってくれました。
- 機能タイトル / Feature Title
- 解決したい課題 / Problem Statement
- 提案する解決策 / Proposed Solution
- 機能カテゴリ / Feature Category
- 技術的アプローチ / Technical Approach
- 影響するコンポーネント / Affected Components
- ユーザーストーリー / User Stories
- 受入条件 / Acceptance Criteria
- モックアップ・参考資料 / Mockups & References
また、UI/UX関連でかなり大雑把に「より使いやすく、見た目も良くすることを実現する」のような指示をすると、普通に使いやすいUI/UXになっていて、感動しました。
下記画像は全てCopilotが作成しました。私はデザインに関しては勉強不足なため、Copilotに任せた方がいいものが作れそうです。
他にも、Copilotに任せるためのissueテンプレートを作成して、のようなissueもかなり細かく、バグ用や新機能用などissueの内容それぞれで作成してくれました。
少し微妙だった点
やはり、使用できる量が私には少なかったです。
Copilot Pro+はプレミアムリクエストが月に1500回のリクエストまで利用できます。(それ以上は課金制)
その範囲だとissueを割り当てて、プルリクエストの修正依頼などもCopilotに任せると15個くらいで私は上限になってしまいました。
やはり、任せる内容はかなり精査してリクエストを節約しないといけません。
また、意図通りにいかなかった点は、大きな機能を任せるとあまりうまく行きませんでした。
例えば、テストコードがなく少し量のあるソースに対して、1からテストコードを作成するようなタスクをお願いすると、テストコードは作成してくれますが、コンパイルエラーが発生していたり、それ修正いらないよね?というようなファイルを修正していたりしていました。
まとめ
現時点でissueに関しては、プロトタイプはAIに任せず一旦作成しておいて、それを参考にして修正してもらう方がCopilotの作成したプルリクエストの内容も理解しやすいですし、エラーになっている部分なども修正が簡単になります。
今後は、1つずつCopilotに任せるタスクと自分でやるタスクを分けて考えたいと思います。
Copilot coding agentはかなり精度が良く、ある程度意図した通りに実装してくれます。
この機能がもっと安く使用できるよになると、本当に多くのエンジニアがコードを書かずにレビューのみをやるだけでいい未来が待っていると思います。