はじめに
この記事を開いていただき、ありがとうございます。
最近、GitHub Copilot を VSCode で使い始めました。
Copilotというと
- コード補完
- AIがコードを書いてくれる
というイメージが強かったのですが、実際に使ってみると
「ちょっとしたレビューや補完」にもかなり便利だと感じました。
特に便利だったのが次の3つです。
- VSCodeとGitHub Copilotの連携
- ⌘ + I(Command + I)でAIに直接指示できる
- ワークスペースを使って関連フォルダをまとめておく
今回はその中でも、
実際に使って便利だった使い方をまとめてみます。
GitHub Copilot と VSCode の連携
まずは基本ですが、VSCodeでは拡張機能を入れることで
Copilotを利用できます。
インストールする拡張機能
- GitHub Copilot
- GitHub Copilot Chat
インストール後、GitHubでログインすれば
すぐに利用できるようになります。
⌘ + I(Command + I)でAIに直接指示できる
Copilotを使っていて
「これは便利だ」と思ったのが ⌘ + I です。
コードや文章を選択して
⌘ + I
を押すと、AIに直接指示できます。
例えば
- コードの改善
- リファクタリング
- 型追加
- 説明生成
などをその場でお願いできます。
実際に使って便利だった例
API設計書の不足項目を補完してもらう
API設計書を作っているときに
Copilotが便利だと感じる場面がありました。
API設計書を書いていると、
- 他のAPIにはある項目
- でも次のAPIには書かれていない項目
ということに気づくことがあります。
例えばこんな感じです。
例:API設計書
API名:ユーザー取得
リクエスト
GET /api/users/{id}
レスポンス
{
id
name
email
}
別のユーザー関連APIを見ると
{
id
name
email
created_at
updated_at
}
のように、ユーザー情報として一般的に含まれる
**作成日時(created_at)や更新日時(updated_at)**が含まれていることがあります。
つまり、このAPIのレスポンスには
- created_at(作成日)
- updated_at(更新日)
といった ユーザー情報としてよく使われる項目が抜けている可能性があります。
そこでCopilotに聞く
不足している部分を選択して
⌘ + I
を押して、例えば次のように入力します。
Copilotに送ったプロンプト(クリックで表示)
他のユーザー関連APIには
created_at や updated_at が含まれているので
ここにも追加した方がいいと思います。
不足している項目を補完してください。
するとCopilotが
{
id
name
email
created_at
updated_at
}
のように自然に補完してくれます。
「不足しているかも」という曖昧な指示でも補完してくれる
以下のようにもう少しラフにプロンプトを描いても、
少しラフに書いたプロンプト(クリックで表示)
他のユーザー関連APIと比べて
このAPIのレスポンスに不足している項目がある気がします。
追加した方が良さそうなものを補完してください。
かなり自然な提案をしてくれました。
これは
- コード
- ドキュメント
- 設計書
どれでも使えるので便利だと思いました。
VSCodeワークスペースを使うとさらに便利
もう一つ感じたのが
VSCodeのワークスペースとの相性の良さです。
例えば
- docs
- api-spec
のように、関連するフォルダを
同じワークスペースに入れておくと
Copilotが
- プロジェクト構成
- APIの構造
- 型定義
などを踏まえて提案してくれることがあります。
実際に使っていて
関連フォルダをまとめておいた方が
AIの提案が自然になる
と感じました。
最近使い始めて感じたこと
Copilotを使う前は
「コード補完ツール」
くらいのイメージでした。
でも実際は
- 設計書の補完
- リファクタリング提案
など、
ちょっとした相談相手のように使える
ツールだと感じました。
また、足りないところを補うだけでなく、文言を統一したい時にも指示するだけで変更してくれるので、設計書の補完だけでなく、コードやドキュメント作成にも幅広く使えそうだと感じました。
まとめ
GitHub Copilotを最近使い始めて
特に便利だと感じたのは次の3つです。
- VSCodeと簡単に連携できる
- ⌘ + IでAIに直接指示できる
- 設計書などの不足項目も補完してくれる
まだ使い始めたばかりですが、
「不足しているものを補完してもらう」使い方は
かなり便利だと感じました。
今後も色々試しながらより効率的にできるようにしていきたいと思います。
ここまで読んでいただき、ありがとうございました!