GitHub Copilot Agent Modeの使い方|自律コーディング
GitHub Copilot Agent Modeは、チャットで依頼を伝えるだけで複数ファイルにまたがる編集からターミナルコマンドの実行、エラー発生時の自己修正までを自律的に行ってくれるモードです。この記事では、ほかのモードとの違い、呼び出し方や承認フロー、具体的な依頼例、向いているタスクと向いていないタスクを順番に解説します。
前提・動作環境
- VS Code: 最新版を使用してください。Agent Mode関連の機能はアップデートで頻繁に改善されています。
- 拡張機能: GitHub CopilotとGitHub Copilot Chatの両方が必要です。導入手順は「VS CodeでGitHub Copilotを使う方法」で解説しています。
- GitHubアカウント: サインイン済みであることが前提です。Copilot Freeプランでも利用できますが、組織アカウントでは管理者が無効化している場合があります。
- モデル: チャット欄のモデルピッカーから選択したモデルがAgent Modeでも使われます。契約プランによって選べる範囲は異なります。
Agent Modeとは(補完・通常Chat・Editsとの違い)
Copilotにはいくつかの応答スタイルがあり、それぞれ役割が異なります。
- インライン補完: コードを書いている最中に続きの候補を提示するだけで、こちらが逐一Tabキーで確定する必要があります。
- 通常のChat(Ask): 質問への回答やコードの説明を返しますが、ファイルを直接書き換えません。
- Edits: 対象ファイルを自分で指定し、その範囲内で編集案を出してもらう、比較的ガイド付きの編集モードです。
- Agent Mode: 依頼内容だけを伝えれば、どのファイルを変更すべきかを自身が判断し、必要なコマンド実行も含めて反復的にタスクを完了まで進めます。
つまりAgent Modeは、人が細かく指示を出す必要がなく、複数ファイル・複数ステップにまたがる作業をまとめて任せられる点が最大の特徴です。エラーが発生した場合も、その内容を読み取って自分で修正を試みてくれます。
Agent Modeの使い方(モード切り替えと指示の出し方)
Agent Modeを使う手順はシンプルです。
- チャットビュー(
Ctrl+Alt+I)を開きます。 - チャット入力欄下部のモード選択ドロップダウンから「Agent」を選択します。キーボードショートカットの
Ctrl+Shift+Iでも直接切り替えられます。 - 依頼内容を自然な文章で入力します。「〇〇機能を追加して」「このエラーを直して」のように、目的ベースの粒度で指示するのがコツです。
指示を送ると、関連しそうなファイルを自分で特定し、編集案をエディタ上にストリーミングで反映しながら作業を進めます。必要であればターミナルコマンドの実行も提案してきます。基本的な操作方法全体は「GitHub Copilotの使い方完全ガイド」もあわせて参考にしてください。
変更の確認と承認、ツール実行の仕組み
Agent Modeは自律的に動きますが、何でも無断で実行するわけではありません。
- ファイル編集の確認: 変更されたファイルはエディタ上でインライン差分として表示され、変更箇所ごとに「Keep」(採用)か「Undo」(取り消し)を選べます。提示された変更をそのまま鵜呑みにせず、差分を見て判断できる仕組みになっています。
- ターミナルコマンドの承認: コマンド実行が必要な場合は、実行前に必ず承認を求められます。設定で信頼できるコマンドパターンを登録しておけば、安全な操作は自動承認し、リスクのある操作だけ確認を求めるようにもできます。
- サンドボックス実行: macOS/Linux環境では、ファイルシステムやネットワークアクセスをOSレベルで制限したサンドボックス内でコマンドを実行するオプションもあり、より安心して自動承認の範囲を広げられます。
いずれの場合も変更内容やコマンドの中身は必ず自分の目で確認してから承認することが重要です。自律的に動くからといって、レビューを省略してよいわけではありません。
実践例で見るAgent Modeの使い方
具体的にどのような依頼が向いているか、2つの例で見てみましょう。
例1: 小さな機能の追加 「一覧画面にキーワード検索用の入力欄を追加して、入力値でリストをフィルタリングできるようにして」のように依頼すると、該当するコンポーネントファイルを特定し、入力欄の追加とフィルタリング処理の実装を一度に行います。関連するスタイルやテストファイルがあれば、そちらの修正案も合わせて出してくれます。
例2: バグ修正の依頼 「ログイン後にユーザー名が表示されないバグを直して」のように、現象だけを伝える依頼も可能です。コードベースを調べて原因箇所を特定し、修正を試みます。修正後にエラーが出れば、その内容を読み取って追加の修正を繰り返す点が、通常のChatとの大きな違いです。
Agent Modeの使いどころと限界
Agent Modeは、要件がある程度明確な機能追加や、原因調査を含むバグ修正など、1つのリポジトリ内で完結する作業に向いています。一方で、複数リポジトリにまたがる変更や、長時間かかる大規模なリファクタリングのようなタスクには不向きです。大規模な変更や、人が付きっきりで見ていられないような長時間タスクは、クラウド上で動作するCoding Agentに任せる方が適しています。Coding Agentの具体的な使い方は「Copilot Coding Agentの使い方」で解説しています。
つまずきポイント/よくあるエラー
- Agentの選択肢が出てこない: 組織アカウントの場合、管理者側でAgent Modeが無効化されている可能性があります。
- ターミナルコマンドが実行されずに止まる: 承認待ちの状態で放置されていないか確認してください。自動承認を設定していない場合は、都度チャット欄での承認操作が必要です。
- 意図と違うファイルまで変更された: 依頼が大きすぎたり曖昧だったりすると、想定外の範囲まで手を広げることがあります。差分を確認し、不要な変更はUndoで取り消してから指示を具体化して再依頼しましょう。
- 同じ修正を繰り返してループする: エラー修正が堂々巡りになる場合は、一度チャットを打ち切り、エラーメッセージの要点を自分で整理してから依頼し直すと解決しやすくなります。
よくある質問
Agent ModeとEditsはどう使い分ければよいですか?
変更対象のファイルが明確で、範囲を絞って編集してほしい場合はEditsが向いています。一方、どのファイルを直せばよいか自分でも分からない場合や、複数ファイル・複数ステップにまたがる作業をまとめて任せたい場合はAgent Modeが適しています。
Agent Modeが実行したコマンドは元に戻せますか?
ファイル編集はインライン差分の「Undo」で個別に取り消せます。ターミナルコマンドは実行前に承認を求められる仕組みなので、内容を確認してから承認するかどうかを判断してください。
Agent Modeは無料プランでも使えますか?
Copilot Freeプランでも利用できますが、月間の利用回数には上限があります。組織アカウントでは管理者側の設定でAgent Mode自体が無効化されていることもあるため、選択肢が表示されない場合はまず確認してください。プラン内容は変わることがあるため、最新情報は公式サイトで確認してください。
まとめ
GitHub Copilot Agent Modeは、依頼内容を伝えるだけで複数ファイルの編集やターミナルコマンドの実行、エラーの自己修正までを自律的に進めてくれるモードです。チャットビューのモード選択から「Agent」を選び、目的ベースの粒度で指示を出すのが基本的な使い方になります。ファイル変更のインライン差分確認とターミナルコマンドの承認フローが用意されているため、必ず内容を確認してから採用するようにしましょう。1つのリポジトリで完結する機能追加やバグ修正には向いていますが、大規模で長時間の作業はCoding Agentに任せるのがおすすめです。導入や基本操作については「VS CodeでGitHub Copilotを使う方法」「使い方完全ガイド」「Coding Agentの使い方」もあわせてご覧ください。