概要
会社で、Github Copilotの Agent mode, Edit mode, Next Edit Suggestion(NES) を紹介しつつ、自分が普段どのように、使い分けて開発をしているか共有する機会があった。
せっかくなので自分のブログにもメモ。
自分の使い分け
| 機能名 | 使い所 | 良い点 | 悪い点 | 使用感 |
|---|---|---|---|---|
| Copilot Agent | どう作るかイメージが湧かないとき | 曖昧な指示でもいい感じのコードを作ってくれる。 自分より優れたコードも多い。 | 他と比較して狙った通りの出力が難しい。 レスポンスが遅い。 | 後輩エンジニアに仕事を任せてる感じ。 |
| Copilot Edit | 実装イメージがしっかりあって、真似できるコードがあるとき | 単純にコーディング速度だけで言えば、一番早い。 | あらかじめ、ちゃんと実装に必要なファイルを渡す必要がある。 | 後輩エンジニアとペアプロしてる感じ。 |
| Copilot NES | 実装イメージがふわっとしてしかない時 実装イメージあるが真似できるコードがない時 |
今までの仕事の仕方と同じイメージで進められる。 | 劇的に早くはならない。 | 今まで通り。 |
現状
Copilot Edit >= Copilot Next Edit Suggestion(NES) >>>>> Copilot Agent
- 何故、Copilot Agentを使っていないか
- 以前は、既存の改修(Copilot NES & Edit)と、新規開発(Copilot Agent)で同時並行で行っていた。(新規開発は特殊で、プロダクションに乗せないコードだから書き捨てでよかった)
- が、新規開発以外ではCopilot Agentに全部任せるのは厳しい & 新規開発の割合が少なくなってきた。
- だんだん、ボトルネックがコード理解 & コードレビューになってきた。
- そこで、Copilot Agentを使うと、合ってるか分からない大量のコードが生成されることになり、それをチェックする無駄な仕事が増えた。そのため、Copilot Editの方で少しづつレビューしながら作ってもらうようになった。
今後の展望
自動テストは、カバレッジという明確な指標を持てるし、
フロントエンドは、既に自分よりLLMの方が綺麗なコード書いてくれる + BrowserUse等のテスト自動生成も見えてきてるので、
MCPの流れに乗りつつ、その辺りはレビューさえもほとんど不要にしていきたいな。