【入門】GitHub Copilot Coding Agentで始めるAI開発自動化 ― できること・使い方まとめ

今回は、新しく公開された GitHub Copilotの新しい機能「**Copilot Coding Agent**」について、いろいろ触ってみたので、できることや具体的な使い方をまとめました。

「AIに仕事を奪われる」なんて言われる時代ですが、むしろ「面倒な作業をAIに奪ってもらう」くらいの気持ちで活用していきましょう。

## Copilot Coding Agentとは？
簡単に言うと、**コードを書いてくれるAIの相棒が、PRまで作ってくれるようになりました。**

これまでの Github copilotでは、VS Codeの拡張機能やCodespaceなどエディタを主体として操作していましがが、Coding Agentは、Web UIやチャット経由でも「直接リポジトリを自動操作できるエージェント」になりました。チャットやIssueなどから自然言語で指示し、AIがリポジトリへの自動修正・PR作成まで実行でき、「**自然言語での指示からコードの自動生成・修正・Pull Request(PR)作成まで**」を一貫して実施できるAIエージェントです。  
「あのコード書くの面倒だなぁ…」「バグ修正したいけど原因特定が大変…」という煩雑な手作業を減らし、開発プロセス全体の自動化・効率化を支援してくれます。

### 歴史
GitHub Copilot Coding Agentは、最初「**Project Padawan**」（スターウォースファンにはニヤリとくるネーミング）というコードネームで2025年2月に発表されました。そして2025年5月19日のMicrosoft Buildカンファレンスで正式に「**Copilot Coding Agent**」として公開プレビュー版が発表。これは従来のVS Code内での「Agent Mode」をさらに発展させたもので、GitHubプラットフォーム全体に統合された独立型AIエージェントとなっています。もはや「AI搭載の同僚」と言っても過言ではありません。

## 利用できるプラン（2025年5月時点）
利用できるプランは以下の通りです。
* **Copilot Pro+（個人/組織向け）** → 利用可能
* **Copilot Business（組織向け）** → 利用可能
* **Copilot Enterprise（大規模組織・追加の管理/セキュリティ機能）** → 利用可能

## 何ができるの？――主な機能一覧
### 1. コードの自動生成・修正
- 指定したリポジトリに、**関数やクラス、ファイル、設定などを自動生成**。まるで「クリエイト・テーブル」のようにサクッと作れます。
- 既存のコードに対して、**リファクタリングや改善提案**を自動で実施。「これ、技術的負債かも…」と思っていた箇所も救済できます。

**例:**  
「`main.py`に新しいログ出力機能を追加してください」 
「`UserService`クラスのメソッドをリファクタリングして」

### 2. バグ修正・テスト自動生成
- バグレポートやエラー内容を伝えると、**該当箇所をAIが特定し修正PRを作成**。
- 新旧機能のテストコードを自動生成し、**テストの抜け漏れを防止**。

**例:**  
「APIのバグを修正してテストも追加してほしい」  
「`user.py`にユニットテストを書いて」

### 3. ドキュメント・コメントの自動生成
- **READMEや関数コメント、APIドキュメント**を自動作成・更新。
- コードの説明文や使い方ガイドも生成可能。

**例:**  
「README.mdを最新仕様に合わせて更新して」  
「`login`関数に詳細なコメントを追加」  

### 4. Pull Request（PR）の自動作成・管理
- 指示内容に基づき、**差分を作成して自動でPRを作成**。
- PRタイトルや説明文もAIが自動記述し、**レビューの効率化**。

**例:**  
「新機能の追加をPRとして作成して」  
「この修正内容でPRを出して」  

### 5. コードレビューと改善提案
- コードの問題点や改善案をAIがレビュー時にフィードバック。
- セキュリティやパフォーマンス観点でのアドバイスも可能。

**例:**  
「このPRのコードレビューをして」  
「パフォーマンス改善案を挙げて」  

## 使い方ガイド

### Step 1. Copilot Coding Agentの有効化
たとえば個人向けのPro+プランでは以下の方法で有効にできます。
[GitHub設定画面でのCoding Agent設定]![2025-05-21_Github_coding Agent_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/64345/23d79d1c-9167-4e12-a488-7fe5a96697c8.png)
*ユーザー設定画面からCoding Agentの有効化や適用範囲を設定できます*

### Step 2. Copilot Coding Agentにアクセスできる場所

Coding Agentは以下の場所から利用できます。
- **GitHub.com の Copilot Chat**（右下Copilotアイコンからアクセス...あのニコニコしたアイコン）
- **Pull Request画面やコード閲覧画面のCopilotパネル**
- **VS Code/JetBrainsなどエディタ内のCopilot Chatパネル**

必ずしもIssueに書く必要はありません。チャットUIで直接指示してください。

GitHub Copilotチャットインターフェースの例
![2025-05-21_Github_coding Agent_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/64345/019be88e-c70e-431e-95ba-c6b1689c182d.png)
*Copilot Chatでリポジトリについて質問したり、タスクを指示したりできます*

### Step 3. リポジトリやブランチを指定

最初に修正・提案したいリポジトリやブランチを伝えます。「どこで作業するのか」をAIに教えてあげましょう。

```text
「github/hello-worldのmainブランチに新しいエンドポイントを追加して」
「foobar/sample-app の develop ブランチにバリデーションを追加してください」
```

**ポイント：**  
リポジトリをまたぐ作業や、現在とは異なるブランチの場合は、必ず明示的に「owner/repo」「branch名」を記載しましょう。AIは優秀ですが明示しないと迷子になります...まだね。

### Step 4. やりたいことを自然言語で指示

日本語・英語どちらでもOK。  
「AIっぽく難しく言わなきゃ」なんて考えず、普段同僚に頼むような感じで要望をそのまま伝えましょう。

```text
「バグを修正して」  
「テストを自動生成して」  
「APIドキュメントを作成して」
「UserServiceクラスのリファクタリングをお願いします」
「READMEを最新仕様に更新して」 
```
### Step 5. AIが自動でPRを作成

指示内容をもとにAIが修正し、PRを作成します。  
内容を確認・レビューしてマージします。

Copilotが作成したPRとリファクタリング提案
![2025-05-21_Github_coding Agent_04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/64345/94f68781-19ae-496d-b953-a29ddb1f187a.png)

*Copilotが自動でリファクタリングを行い、PRを作成した例。修正内容の説明も丁寧です*

また、以下のように直接Issueを書いて、Copilotに担当を割り当てることも可能です。
![2025-05-21_Github_coding Agent_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/64345/9362c968-0bdb-4c42-abac-26ff9844e016.png)
*新しいIssueを作成し、右側の「Assignees」からCopilotを選択できます*


## Copilot Coding Agent活用のコツ

- **要件はできるだけ具体的に！**  
  ファイル名・クラス名・変更内容を明示すると、意図通りの結果になりやすいです。

- **Issueライクに構造化すると精度UP**  
  「目的」「背景」「期待する動作」などを箇条書きにするとAIが理解しやすくなります。

- **小さな要望から試してみる**  
  いきなり「システム全体を再設計して」とか言わず、まずは「リファクタリング」や「コメント追加」など簡単な指示から始めてみましょう。

- **大きな修正は小分け推奨**  
  「全部書き直して」よりも「この関数」「あのクラス」と小さな単位で頼むと失敗しにくいです。

- **複数の要望も一度に指示できる**  
  「バグ修正とテスト追加」を同時に依頼できます。

- **出力フォーマットやコーディング規約も指定できる**  
  例：「PEP8準拠で書いて」「JSDocコメントを追加して」など。

- **自動PR作成でレビュー効率UP**  
  PRの説明文やタイトルも自動生成されるため、レビューやチーム共有もスムーズです。

- **生成内容は必ず確認・レビュー**  
  AIによる変更は意図しない影響を及ぼすことも。PR内容は必ずチェックしましょう。

## 具体的な指示例

### 新機能実装の指示例

1. **フィーチャー追加**
   ```
   users-serviceリポジトリのmainブランチに、ユーザーのプロフィール画像をアップロードする機能を追加してください。画像は最大5MBまでのJPEG、PNG形式のみ許可し、S3に保存するようにします。
   （画像容量の制限忘れて炎上したことあるんです...）
   ```

2. **APIエンドポイント作成**
   ```
   api-gatewayのdevelopブランチに、商品在庫を検索するRESTエンドポイントを追加してください。クエリパラメータとして商品名、カテゴリ、在庫数の範囲を受け取れるようにします。
   ```

3. **UI機能実装**
   ```
   frontend-appのfeature/dashboardブランチで、ダッシュボード画面にデータ可視化グラフを追加してください。Chart.jsを使用して、過去30日間のユーザーアクティビティを表示するラインチャートを実装します。
   ```

### リファクタリング・最適化の指示例

1. **パフォーマンス改善**
   ```
   backend-serviceのutils/database.jsファイルを最適化してください。特に大量データを扱うfetchAllRecordsメソッドのクエリ実行が遅いので、インデックスを活用するなどしてパフォーマンスを改善してください。
   ```

2. **コード品質向上**
   ```
   auth-serviceのsrc/middlewareディレクトリにあるファイルをリファクタリングしてください。重複コードを削減し、より読みやすく保守しやすい構造にしてください。ESLintのルールにも準拠するようにします。
   ```

### バグ修正の指示例

1. **エラー対応**
   ```
   order-serviceのcheckout処理で「Cannot read property 'id' of undefined」エラーが発生しています。このバグを修正し、未定義値の適切な処理を追加してください。
   ```

2. **セキュリティ修正**
   ```
   api-gatewayのauthentication.jsにXSSとCSRF脆弱性があります。適切なバリデーションと防御策を実装してセキュリティを強化してください。
   ```

### テスト作成の指示例

1. **ユニットテスト追加**
   ```
   core-libraryのsrc/utils/formatter.jsに対するユニットテストをtests/utilsディレクトリに追加してください。全ての公開メソッドに対して、通常ケース、エッジケース、エラーケースのテストを作成してください。Jest使用。
   ```

2. **E2Eテストシナリオ**
   ```
   e-commerceプロジェクトのCypressテストに「ユーザーログインから商品購入までの一連のフロー」をテストするシナリオを追加してください。
   ```

### ドキュメント作成の指示例

1. **APIドキュメント**
   ```
   payment-apiのエンドポイントについて、OpenAPI/Swagger形式のドキュメントを作成してください。各エンドポイントのリクエスト・レスポンス形式、必須パラメータ、エラーレスポンスを詳細に記述してください。
   ```

2. **READMEアップデート**
   ```
   microservices-demoプロジェクトのREADME.mdを更新して、最近追加されたキャッシング機能とロギング機能の説明、設定方法、トラブルシューティングセクションを追加してください。
   ```

# GitHub Copilot Coding Agent が利用できる場所

- 自分のリポジトリ・組織のリポジトリ（権限あり）ならCoding Agentは利用可能
- 他人のリポジトリは基本不可**（権限があれば例外的に可）
- チャットUIが主流、Issueからの直接利用は今後拡大の見込み

## リポジトリの種類別

| リポジトリの種類       | 利用可否            | 備考・条件                                                                                          |
|-----------------------|---------------------|-----------------------------------------------------------------------------------------------------|
| 自分のリポジトリ       | 〇（利用可）        | 対象リポジトリに**書き込み権限（Write権限）**が必要。                                               |
| 組織のリポジトリ       | 〇（利用可）        | 組織リポジトリでも**書き込み権限**があれば利用可能。組織のCopilot有効化＋必要なプランも要件。        |
| 他人のリポジトリ       | △（基本的に不可）   | **書き込み権限**があれば利用可能だが、通常は権限がないため不可。PublicリポジトリでもPR作成等は不可。  |
| コントリビュート権限のみ| △（限定的に可）    | コントリビューターとして**書き込み権限**が付与されていれば可。PR作成権限が必要。                    |

---

## 指示方法別の違い（チャット vs Issue）

| 指示方法         | 利用可否・条件                                                                                                   |
|------------------|----------------------------------------------------------------------------------------------------------------|
| Copilotチャット  | **対象リポジトリに「書き込み権限」＋必要なCopilotプラン（Pro+/Business/Enterprise）**があれば利用可能。            |
| Issue            | （2025年5月時点）**Issueから直接Coding Agentに指示できるかは機能のロールアウト状況による。**                    |
|                  | 一部のユーザー・リポジトリで「IssueからPR作成」のような体験が可能な場合もあるが、基本はチャットからの指示が主流。  |

- **必須条件**  
  - Copilot Pro+/Business/Enterpriseプランの契約
  - 対象リポジトリに「書き込み権限（Write）」が付与されていること
- **他人のリポジトリ（Public含む）**  
  - 普通は書き込み権限がないため、Coding Agentは利用不可（フォークして自分のリポジトリで使うことは可能）
- **組織リポジトリ**  
  - 組織側でCopilot有効化＋自分に権限付与が必要
- **Issueからの操作**  
  - 現状はチャット経由の利用が確実。Issueから直接エージェントを呼び出す機能は順次展開中。


## 注意点
- 対象リポジトリやブランチの指定は忘れずに。AIに「どこで」作業するのか教えてあげないと迷子になります。
- AIの提案内容は100%正解とは限らないので、必ずレビュー・テストしましょう。

## まとめ
GitHub Copilot Coding Agentは「**開発の自動化・効率化を加速させるAIパートナー**」です。  
自然言語で指示を出すだけで、修正・追加・テスト・ドキュメント化・PR作成までをワンストップで自動化できます。

ぜひ皆さんも、日々の開発現場でCopilot Coding Agentを活用して、よりスマートな開発ワークフローを体験してみてください。

## 関連リソース

### 公式ドキュメント
- [GitHub Copilot Coding Agent 公式ドキュメント](https://docs.github.com/en/copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/about-assigning-tasks-to-copilot) - 詳細な使用方法とベストプラクティス（英語...翻訳待ち）
- [GitHub Copilot プラン比較](https://github.com/features/copilot) - Pro+、Business、Enterpriseの違い
- [GitHub Actions との連携](https://docs.github.com/en/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions) - バックグラウンド処理の仕組み

### 解説リソース
- [GitHub Blog: Meet the new coding agent](https://github.blog/news-insights/product-news/github-copilot-meet-the-new-coding-agent/) - Coding Agentの詳細解説
- [GitHub Changelog: Coding Agent in public preview](https://github.blog/changelog/2025-05-19-github-copilot-coding-agent-in-public-preview/) - 最新アップデート情報（英語ですが短いです）
- [VS Code Blog: Introducing GitHub Copilot agent mode](https://code.visualstudio.com/blogs/2025/02/24/introducing-copilot-agent-mode) - VS Code上での使い方（スクショ多め）

### コミュニティリソース
- [GitHub Community Discussions](https://github.com/orgs/community/discussions/159068) - 質問・意見交換ができる公式コミュニティ
- [GitHub Issues](https://github.com/github/feedback/discussions/categories/copilot-feedback) - フィードバックの提出先（バグ報告はここで！）