调试过程涉及 .vscode/launch.json 和 .vscode/tasks.json 文件来配置 Microsoft Visual Studio Code 中的调试器。 Visual Studio Code启动 Node 调试器和浏览器调试器,Microsoft Edge 或 Google Chrome 启动新的浏览器实例。
调试过程工作流如下所示:
launch.jsonfile 在 Visual Studio Code 中配置调试器。Visual Studio Code在 文件中运行复合 preLaunchTask,即在本地
.vscode/tasks.json启动 Teams 应用。然后,Visual Studio Code 启动复合配置中指定的调试器,例如附加到到自动程序、附加到后端、附加到前段、启动自动程序。
浏览器调试器(Microsoft Edge 或 Google Chrome)启动新的浏览器实例并打开网页以加载Microsoft Teams 客户端。
验证先决条件
在调试过程中,Microsoft检查以下先决条件:
Microsoft 365 代理工具包 (以前称为 Teams 工具包,) 检查是否安装了 Node.js。 如果未安装 Node.js,调试将终止。
代理工具包检查 Node.js 版本是否与文件中
package.json定义的版本匹配。 如果版本不匹配,则代理工具包在输出通道中显示警告消息。如果尚未使用有效凭据登录,代理工具包会提示登录到 Microsoft 365 帐户。
已启用开发人员租户的自定义应用上传,以防止本地调试终止。
如果未安装 Ngrok 或版本不符合要求,代理工具包会在 中
~/.fx/bin/ngrok安装 Ngrok npm 包ngrok@4.2.2。 Ngrok 二进制版本 2.3 适用于机器人和消息扩展,由 中的/.fx/bin/ngrok/node modules/ngrok/binNgrok npm 包管理。注意
代理工具包项目模板使用包含 v2.3.40 的 ngrok@4.3.3 npm 包。 有关如何获取有效许可证的详细信息,请参阅 ngrok。
如果 Azure Functions Core Tools 版本 4 未安装或版本不符合要求,代理工具包会在 中
~/.fx/bin/func安装适用于 Windows 和 macOS Azure Functions Core Tools npm 包azure-functions-core-tools@3。 中的~/.fx/bin/func/node_modules/azure-functions-core-tools/binAzure Functions Core Tools npm 包管理Azure Functions Core Tools 二进制文件。 对于 Linux,本地调试终止。如果未安装 .NET Core SDK 或版本不符合要求,代理工具包会在 中安装适用于 Windows 和 macOS 的
~/.fx/bin/dotnet.NET Core SDK。 .NET Core SDK 版本适用于Azure Functions。 对于 Linux,本地调试终止。下表列出了 .NET Core 版本:
平台 软件 Windows、macO (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 会启动本地隧道服务,使机器人消息传送终结点公开。 有关详细信息,请参阅 启动本地隧道任务。
创建调试资源
代理工具包执行中m365agents.local.yml定义的生命周期provision,以创建调试所需的 Teams 应用相关资源。 有关详细信息,请参阅 预配任务 和 可用作。
生成项目
Agents Toolkit 执行中m365agents.local.yml定义的生命周期deploy来生成项目。 有关详细信息,请参阅 部署任务 和 可用作。
浏览你的应用源代码
调试后,可以在“资源管理器”下查看项目文件夹和文件,Visual Studio Code。 下表列出了与调试相关的文件:
| 文件夹名 | 目录 | 调试配置类型 |
|---|---|---|
m365agents.local.yml |
用于调试的 main Agents Toolkit 项目文件。 | 此文件定义调试所需的生命周期和作。 |
env/.env.local |
代理工具包项目的环境变量文件。 | 调试期间会使用或生成每个环境变量的值。 |
.localConfigs |
应用代码的环境变量文件。 | 调试期间会生成每个环境变量的值。 |
有关项目文件夹结构的详细信息,请参阅 Agents Toolkit 项目。