次の方法で共有


バックグランド プロセスのデバッグ

デバッグ プロセスには、Microsoft Visual Studio Code でデバッガーを構成するための .vscode/launch.json ファイルと .vscode/tasks.json ファイルが含まれます。 Visual Studio Code によってノード デバッガーとブラウザー デバッガーが起動され、Microsoft Edge または Google Chrome によって新しいブラウザー インスタンスが起動されます。

デバッグ プロセス ワークフローは次のとおりです。

  1. launch.json ファイルは、Visual Studio Code でデバッガーを構成します。

  2. Visual Studio Code では、複合 preLaunchTaskStart Teams App Locally.vscode/tasks.json ファイルで実行されます。

  3. その後、Visual Studio Code は、ボットにアタッチバックエンドにアタッチフロントエンドにアタッチボットの起動など、複雑な構成で指定されたデバッガーを立ち上げます。

  4. ブラウザー デバッガーである Microsoft Edge または Google Chrome は、新しいブラウザー インスタンスを起動し、Web ページを開いてクライアントMicrosoft Teams読み込みます。

前提条件を検証する

Microsoft では、デバッグ プロセス中に次の前提条件を確認します。

  • Microsoft 365 Agents Toolkit (以前は Teams Toolkit) は、Node.js がインストールされているかどうかを確認します。 Node.js がインストールされていない場合、デバッグは終了します。

  • Agents Toolkit は、Node.js バージョンが、 package.json ファイルで定義されているバージョンと一致するかどうかを確認します。 バージョンが一致しない場合、Agents Toolkit は出力チャネルに警告メッセージを表示します。

  • 有効な資格情報でサインインしていない場合は、エージェント ツールキットから Microsoft 365 アカウントへのサインインが求められます。

  • ローカル デバッグの終了を防ぐために、開発者テナントのカスタム アプリアップロードが有効になっています。

  • Ngrok がインストールされていない場合、またはバージョンが要件と一致しない場合、Agents Toolkit は Ngrok npm パッケージ ngrok@4.2.2~/.fx/bin/ngrokにインストールします。 Ngrok バイナリ バージョン 2.3 は、ボットとメッセージ拡張機能に適用され、 /.fx/bin/ngrok/node modules/ngrok/binの Ngrok npm パッケージによって管理されます。

    注:

    Agents Toolkit プロジェクト テンプレートでは、v2.3.40 を含む ngrok@4.3.3 npm パッケージが使用されます。 有効なライセンスを取得する方法の詳細については、「 ngrok」を参照してください。

  • Azure Functions Core Tools バージョン 4 がインストールされていない場合、またはバージョンが要件と一致しない場合、Agents Toolkit は ~/.fx/bin/func で Windows と macOS 用の Core Tools npm パッケージ azure-functions-core-tools@3Azure Functionsインストールします。 ~/.fx/bin/func/node_modules/azure-functions-core-tools/bin の Azure Functions Core Tools npm パッケージは、Azure Functions Core Tools バイナリを管理します。 Linux の場合、ローカル デバッグは終了します。

  • .NET Core SDK がインストールされていない場合、またはバージョンが要件と一致しない場合、Agents Toolkit は.NET Core SDK for Windows と macOS を ~/.fx/bin/dotnetにインストールします。 .NET Core SDK のバージョンは、Azure Functionsに適用できます。 Linux の場合、ローカル デバッグは終了します。

    次の表に、.NET Core のバージョンを示します:

    プラットフォーム ソフトウェア
    Windows、macOS (x64)、Linux 3.1 (推奨)、5.0、6.0
    macOS (arm64) 6.0
  • Windows または macOS のタブに localhost 用の開発証明書がインストールされていない場合は、インストールするようにエージェント ツールキットから求められます。

  • バインド拡張機能Azure Functionsインストールされていない場合、Agents Toolkit はapi/extensions.csprojにバインド拡張機能Azure Functionsインストールします。

  • npm パッケージがインストールされていない場合、Agents Toolkit はタブ アプリ、ボット アプリ、メッセージ拡張機能、およびAzure Functionsに適用可能なすべての npm パッケージをインストールします。

  • エージェント ツールキットは、Ngrok を起動して、ボットとメッセージ拡張機能用の HTTP トンネルを作成します。

  • タブ、ボット、メッセージ拡張機能、およびAzure Functionsポートが使用できない場合、ローカル デバッグは終了します。

    次の表に、コンポーネントで使用できるポートのリストを示します:

    コンポーネント ポート
    Tab 53000
    ボットまたはメッセージ拡張機能 3978
    ボットまたはメッセージ拡張機能のノード インスペクター 9239
    Azure Functions 7071
    Azure Functions のノード インスペクター 9229

[ デバッグの開始 (F5)] を選択すると、エージェント ツールキットの出力チャネルに、前提条件を確認した後の進行状況と結果が表示されます。

前提条件チェック概要を示すスクリーンショット。

詳細については、「 前提条件タスクの検証」を参照してください。

ローカル トンネルを開始する

ボットとメッセージ拡張機能の場合、Agents Toolkit は、ボット メッセージング エンドポイントをパブリックにするためにローカル トンネル サービスを開始します。 詳細については、「 ローカル トンネル タスクの開始」を参照してください。

デバッグ リソースを作成する

Agents Toolkit は、m365agents.local.ymlで定義されているライフサイクル provisionを実行して、デバッグに必要な Teams アプリ関連リソースを作成します。 詳細については、「 プロビジョニング タスク使用可能なアクション」を参照してください。

プロジェクトをビルドする

Agents Toolkit は、m365agents.local.yml で定義されているライフサイクル deployを実行してプロジェクトをビルドします。 詳細については、「タスクと使用可能なアクションのデプロイ」を参照してください。

アプリのソース コードのツアーを開始する

デバッグ後、Visual Studio Code の [エクスプローラー] でプロジェクト フォルダーとファイルを表示できます。 次の表に、デバッグに関連するファイルの一覧を示します。

フォルダー名 コンテンツ デバッグ構成の種類
m365agents.local.yml デバッグ用の メイン Agents Toolkit プロジェクト ファイル。 このファイルは、デバッグに必要なライフサイクルとアクションを定義します。
env/.env.local Agents Toolkit プロジェクトの環境変数ファイル。 各環境変数の値は、デバッグ中に使用または生成されます。
.localConfigs アプリ コードの環境変数ファイル。 各環境変数の値は、デバッグ中に生成されます。

プロジェクト フォルダー構造の詳細については、「 エージェント ツールキット プロジェクト」を参照してください。

関連項目