このクイック スタートでは、.NET 用 GitHub Copilot モダン化を使用して.NET プロジェクトを評価し、移行します。 次のタスクを実行します。
- サンプル プロジェクトを評価する (Contoso University)
- 移行プロセスを開始する
Prerequisites
Windowsオペレーティングシステム
Visual Studio 2026 (または Visual Studio 2022 バージョン 17.14.17 以降)。
.NETデスクトップ開発ワークロード次のオプション コンポーネントが有効になっています。
- GitHub Copilot
- GitHub Copilot モダン化支援エージェント
GitHub Copilot サブスクリプション (有料または無料)。
GitHub アカウントで Visual Studio にサインインし、Copilot にアクセスします。
Important
サブスクリプションを変更する場合は、Visual Studioを再起動する必要があります。
コードは C# で記述する必要があります。
注
これらの前提条件は、Visual Studioに適用されます。 その他の開発環境については、「 GitHub Copilot モダン化のインストール」を参照してください。
アプリの準備状況を評価する
.NET 評価用の GitHub Copilot モダン化は、アプリの準備の課題を見つけ、その影響を学習し、推奨される移行タスクを確認するのに役立ちます。 各移行タスクには、Azure リソースの設定、構成の追加、およびコード変更の参照が含まれています。 移行を開始するには、次の手順に従います。
.NET移行コーパイロットサンプルリポジトリをコンピュータにクローンします。
Visual Studioで、サンプル リポジトリから Contoso University ソリューションを開きます。
ソリューション エクスプローラーで、ソリューション ノードを右クリックし、Modernize を選択します。
GitHub Copilot チャット ウィンドウが開き、ウェルカム メッセージと定義済みのオプションが表示されます。 使用可能な選択肢から Migrate to Azure を選択し、Copilotに送信します。
Tip
手順 3 と 4 の代わりに、GitHub Copilot Chat を直接開き、
@Modernize Migrate to Azureを送信して評価と移行のフローを開始できます。新しいCopilot チャット セッションが開き、ウェルカム メッセージが表示されます。 評価が自動的に開始され、移行準備のためにプロジェクトが分析されます。
評価が完了すると、包括的な評価レポートの UI ページと、チャット ウィンドウに移行タスクの一覧が表示されます。
アプリの移行
.NET 用の GitHub Copilot モダン化には、一般的な移行シナリオ用 の定義済みタスク が含まれており、Microsoft のベスト プラクティスに従います。
移行タスクを開始する
次のいずれかの方法で移行タスクを開始します。
オプション 1. 評価レポートから実行する
前の手順の評価レポートで [タスクの実行 ] ボタンを選択して、移行タスクを開始します。
方法 2. Copilot チャットで送信する
チャットで移行タスク番号 (1.1 など) またはその名前を送信します。
計画と進行状況トラッカーの生成
- 移行を開始すると、GitHub Copilot は、事前に定義されたプロンプトを使用して、エージェント モードで "モダン化:
<source technology>から<target technology>に移行する" という名前のセッションを開始します。 - このツールは、
.appmod/.migrationフォルダーに次の 2 つのファイルを作成します。-
plan.md: 全体的な移行計画。 -
progress.md: GitHub Copilotがタスク完了時に更新する進行状況トラッカー。
-
- 続行する前に、これらのファイルを編集して移行をカスタマイズします。
コードの修復を開始する
計画と進行状況トラッカーに問題がない場合は、次のような移行プロセスを開始するためのプロンプトを入力します。
The plan and progress tracker look good to me. Go ahead with the migration.GitHub Copilot移行プロセスを開始し、モデル コンテキスト プロトコル (MCP) サーバーでナレッジ ベース ツールを使用するための承認を求める場合があります。 メッセージが表示されたら、アクセス許可を付与します。
Copilot計画と進行状況の追跡に従って、次の作業を行います。
- 依存関係を管理します。
- 構成の変更を適用します。
- コードを変更します。
- ソリューションをビルドし、コンパイルと構成のすべてのエラーを修正し、ビルドが成功したことを確認します。
- セキュリティの脆弱性を修正します。
既定のチャット メッセージ
.NET 用の GitHub Copilot モダン化には、ワークフローを合理化するための既定のチャット メッセージ オプションが用意されています。
定義済みのオプションのいずれかを選択し、チャットで送信します。
- モダナイゼーション評価の実行: アプリケーションのAzure互換性や移行の準備状況を特定するための新しい評価を開始します。
- 評価レポートの表示: 前の評価レポートを開き、結果に基づいて移行タスクの概要を表示します。 以前の評価が存在しない場合は、最初に新しい評価が実行されます。
- 上位の移行タスクを参照する: 特定の評価結果に関係なく、推奨される移行タスクと一般的な最新化シナリオが表示されます。
Tip
これらの既定のメッセージは、カスタム プロンプトを入力せずに一般的なワークフローをすばやく移動するのに役立ちます。 また、独自のメッセージを入力して、特定の質問やニーズに対してCopilotを操作することもできます。
次のステップ
Prerequisites
任意のプランでアクティブな GitHub Copilot サブスクリプションを持つGitHub アカウント。
最新バージョンの Visual Studio Code。 バージョン 1.101 以降である必要があります。
- Visual Studio CodeにおけるGitHub Copilot。 セットアップ手順については、「 Visual Studio Code で GitHub Copilot を設定する」を参照してください。 必ず、Visual Studio Code内のGitHub アカウントにサインインしてください。
- GitHub Copilot 現代化。 インストール後に Visual Studio Code を再起動します。
プロジェクトをビルドしてテストするための.NET開発環境。
アプリの準備状況を評価する
.NET 評価用の GitHub Copilot モダン化は、アプリの準備の課題を見つけ、その影響を学習し、推奨される移行タスクを確認するのに役立ちます。 各移行タスクには、Azure リソースの設定、構成の追加、およびコード変更の参照が含まれています。 移行を開始するには、次の手順に従います。
.NET移行コーパイロットサンプルリポジトリをコンピュータにクローンします。
Visual Studio Codeで、サンプル リポジトリから Contoso University ソリューションを開きます。
GitHub Copilot モダン化拡張機能を開きます。
[クイック スタート] セクションで、[評価の開始] を選択します。 [評価レポート] ページが開きます。
ページの右上隅にある [ 評価の実行 ] を選択します。
評価が自動的に開始され、移行準備のためにプロジェクトが分析されます。
評価が完了すると、包括的な評価レポートの UI ページと、チャット ウィンドウに移行タスクの一覧が表示されます。
アプリの移行
.NET 用の GitHub Copilot モダン化には、一般的な移行シナリオ用 の定義済みタスク が含まれており、Microsoft のベスト プラクティスに従います。
チャットベースの移行 (推奨)
チャットベースの移行は、移行を開始するための推奨される方法です。
AppModernization-DotNetカスタム エージェントは、アプリケーションの最新化タスク用に最適化されています。 このエージェントを使用すると、単純な自然言語プロンプトを使用して、複雑な移行シナリオを実行できます。
カスタム エージェントを選択して移行を開始するには、次の手順を実行します。
Visual Studio Codeで.NET プロジェクトが開いていることを確認します。
Activity Bar のチャット アイコンを選択して、Copilot チャット ウィンドウを開きます。
チャット ウィンドウで、チャット入力ボックスの上部にあるエージェント セレクターのドロップダウン メニューを見つけます。 一覧から AppModernization-DotNet を選択します。 このカスタム エージェントは、アプリケーションの最新化と移行のシナリオ.NET向けに設計されています。
チャット ウィンドウで
migrate from <source> to <target>形式を使用してプロンプトを入力します。 例えば次が挙げられます。migrate from rabbitmq to Azure service busエージェントは、コードを分析し、移行計画を作成し、コードを変更し、検証を実行して、概要を生成します。 [ 続行] を選択して各手順を続行し、[ 続行] を選択して変更を受け入れます。
UI から移行タスクを開始する
UI から移行タスクを開始することもできます。
オプション 1. 評価レポートから実行する
前の手順の評価レポートで [タスクの実行 ] ボタンを選択して、移行タスクを開始します。
方法 2. 定義済みタスクを適用する
TASKS - .NET セクションで特定のタスクを実行します。 たとえば、
計画と進行状況トラッカーの生成
移行を開始すると、GitHub Copilotはエージェント モードでセッションを開始します。
このツールは、 .github/appmod/code-migration/<target-branch-name> フォルダーに次の 2 つのファイルを作成します。
-
plan.md: 全体的な移行計画。 -
progress.md: GitHub Copilotがタスク完了時に更新する進行状況トラッカー。
続行する前に、これらのファイルを編集して移行をカスタマイズします。
コードの修復を開始する
計画と進行状況トラッカーに問題がなければ、「 続行 」と入力して移行を開始します。
GitHub Copilot移行プロセスを開始し、モデル コンテキスト プロトコル (MCP) サーバーでナレッジ ベース ツールを使用するための承認を求める場合があります。 メッセージが表示されたら、アクセス許可を付与します。
Copilot計画と進行状況の追跡に従って、次の作業を行います。
- 依存関係を管理します。
- 構成の変更を適用します。
- コードを変更します。
- プロジェクトをビルドし、コンパイルと構成のすべてのエラーを修正し、ビルドが成功したことを確認します。
- セキュリティの脆弱性を修正します。
繰り返し選択するか、「 続行」 と入力してツールまたはコマンドの使用を確認し、コードの変更が完了するまで待ちます。
注
Visual Studio Code では、最新化では、.NET コードを更新して Azure に移行するときに最適な結果を得るために、Claude Sonnet 4.5 を使用する AppModernization-DotNet カスタム エージェントが既定で使用されます。 Sonnet 4.5 が使用できない場合は、'auto' モデルにフォールバックします。 [エージェント] メニューから [カスタム エージェントの構成] を選択すると、カスタム エージェントを構成して "モデル" 設定を変更できます。 または、チャット ウィンドウの言語モデル ピッカーを使用して、現在のチャット セッションのモデルを切り替えることができます。
検証の反復
コードの変更が完了すると、移行ツールによって検証が開始され、イテレーション ループが修正されます。 このループには、次の 5 つの手順が含まれます。
- 現在の依存関係の一般的な脆弱性と露出 (CVE) を検出して修正します。
- プロジェクトをビルドし、ビルド エラーを解決します。
- コードを分析して機能の一貫性を確認します。
- 単体テストの失敗についてプロジェクトを分析し、テストが成功するまでそれらを修正する計画を自動的に生成します。
- 最初のコード移行で見逃した移行項目のコードを分析し、修正します。
すべてのプロセスが完了すると、移行ツールによって概要が生成されます。 コードの変更を確認し、[ 保持] を選択して確認します。
Prerequisites
- 任意のプランでアクティブな GitHub Copilot サブスクリプションを持つGitHub アカウント。
- Copilot CLI がインストールされています。
プラグインをインストールする
ターミナルで
copilotを実行して CLI Copilot開始します。copilotマーケットプレースを追加し、プラグインをインストールします。
/plugin marketplace add microsoft/github-copilot-modernization /plugin install github-copilot-modernization@github-copilot-modernizationプラグインがインストールされていることを確認します。
/plugin list一覧に
github-copilot-modernizationが表示されます。
アプリの準備状況を評価する
GitHub Copilot最新化評価は、アプリの準備の課題を見つけ、その影響を学習し、推奨される移行タスクを確認するのに役立ちます。
.NET移行コーパイロットサンプルリポジトリをコンピュータにクローンします。
Contoso University プロジェクト フォルダーに移動します。
cd dotnet-migration-copilot-samples/ContosoUniversity最新化エージェントCopilot CLI を開始します。
copilot --agent=github-copilot-modernization:modernizeImportant
最新化のプロンプトを実行する前に、
github-copilot-modernization:modernizeエージェントを選択する必要があります。 Copilot CLI セッションに既に参加している場合は、/agentを使用し、一覧からgithub-copilot-modernization:modernizeを選択します。アプリケーションを評価するようにエージェントに依頼します。
copilot> modernize my applicationエージェントは評価フェーズを自動的に開始し、依存関係、フレームワーク、Azure移行の機会など、移行の準備状況についてプロジェクトを分析します。
評価が完了すると、エージェントは結果の概要を表示し、"計画に進む?" と尋ねます。
アプリを移行する
評価を確認した後、計画と実行のフェーズを続行します。
完全な最新化 (→計画の評価→実行)
エージェントは、各フェーズを確認すると、完全なワークフローを自動的に実行します。
- 評価 →結果を確認→続行することを確認します。
-
計画 → エージェントは、確認と確認→移行計画 (
plan.md) を生成します。 - 実行 → エージェントは、コードの変更を適用し、ビルドを実行し、結果を検証する特殊な Executor エージェントにタスクをルーティングします。
エージェントはすべてを処理します。各チェックポイントで確認するだけです。
特定の移行タスク
移行する内容が既にわかっている場合は、評価をスキップして実行に進みます。
copilot> migrate from local SQL Server to Azure SQL Database
複数のタスクの場合は、それらを一覧表示します。
copilot> migrate from RabbitMQ to Azure Service Bus and upgrade to .NET 9
無人実行
プロンプトなしで完全に自律的に実行するには、 --allow-all フラグを使用します。
copilot --agent=github-copilot-modernization:modernize --allow-all
エンタープライズ プレイブック
モダン化ポリシーを埋め込むには、Markdown ファイルを .github/modernize/playbook/ ディレクトリに配置します。 計画フェーズでは、プレイブックの制約が評価結果とマージされます。プレイブック ポリシーは、評価の推奨事項よりも優先されます。
詳細については、「Copilot CLI でGitHub Copilotモダン化を使用してAzureする.NET アプリを移行する」を参照してください。
Validation
エージェントは、コード変更を適用した後、検証チェックを実行します。
- プロジェクトをビルドし、ビルド エラーを解決します。
- 依存関係の一般的な脆弱性と露出 (CVE) を検出し、修正します。
- テストを実行し、エラーを修正します。
すべての検証チェックに合格すると、エージェントによって概要が生成されます。 結果を確認し、次のことを確認します。
dotnet build
dotnet test
次のステップ
.NET