{"id":16558,"date":"2023-11-28T08:00:28","date_gmt":"2023-11-28T16:00:28","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/?p=16558"},"modified":"2023-11-28T04:50:21","modified_gmt":"2023-11-28T12:50:21","slug":"teams-toolkit-for-visual-studio-code-update-november-2023","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/teams-toolkit-for-visual-studio-code-update-november-2023\/","title":{"rendered":"Teams Toolkit for Visual Studio Code update \u2013 November 2023"},"content":{"rendered":"<p>Welcome to the November 2023 update for Teams Toolkit for Visual Studio Code! In this release, we&#8217;re excited to bring you an array of new features to make your Teams app development experience even better, including:<\/p>\n<ul>\n<li>AI Assistant Bot App template<\/li>\n<li>Debug Microsoft Teams Bot Application in Teams App Test Tool<\/li>\n<li>Integrated Adaptive Card Previewer<\/li>\n<li>Refreshed look for Sample App Gallery<\/li>\n<li>License check for Microsoft Copilot for Microsoft 365<\/li>\n<\/ul>\n<p>And several enhancements, new samples, and bug fixes, as well as updates to Teams Toolkit CLI and SDK. Let\u2019s dive in!<\/p>\n<h2>AI Assistant Bot App template<\/h2>\n<p>Embark on a new level of conversational AI with our brand-new <code>AI Assistant Bot<\/code> App template. Powered by the <a href=\"https:\/\/learn.microsoft.com\/microsoftteams\/platform\/bots\/how-to\/teams%20conversational%20ai\/teams-conversation-ai-overview\">Teams AI library<\/a> and the <a href=\"https:\/\/platform.openai.com\/docs\/assistants\/overview\/agents\">OpenAI Assistants API<\/a>, this template demonstrates how to build an intelligent chatbot within Teams. Imagine a bot that can assist users with tasks like solving math problems, all through natural language interactions.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"960\" class=\"wp-image-16559\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-1.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-1.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-1-300x200.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-1-1024x683.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-1-768x512.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>Debug Teams Bot Application in Teams App Test Tool<\/h2>\n<p>Introducing the Teams App Test Tool, seamlessly integrated into Teams Toolkit. This tool empowers developers to debug, test, and iterate on the app design of a Teams bot application within a web-based chat environment. Emulate the behavior, look, and feel of Microsoft Teams without the need for tunnels or a Microsoft 365 account.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"960\" class=\"wp-image-16560\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-2.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-2.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-2-300x200.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-2-1024x683.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-2-768x512.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>Integrated Adaptive Card Previewer<\/h2>\n<p>Preview and edit Adaptive Cards effortlessly with the integrated <a href=\"https:\/\/aka.ms\/acp-docs\">Adaptive Card Previewer<\/a> directly within Teams Toolkit. Enhance your Adaptive Card development experience with this intuitive tool.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"960\" class=\"wp-image-16561\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-3.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-3.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-3-300x200.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-3-1024x683.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-3-768x512.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>Refreshed look for Sample App Gallery<\/h2>\n<p>Navigating the Sample App Gallery is now more user-friendly with a refreshed look and feel. Easily filter sample apps by type, capability, and programming language. Check out the <code>Featured Samples<\/code> at the top or switch to a convenient <code>List View<\/code> that showcases more sample apps in a single glance.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"960\" class=\"wp-image-16562\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-4.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-4.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-4-300x200.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-4-1024x683.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-4-768x512.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>License check for Microsoft Copilot<\/h2>\n<p>Developing with Copilot? We&#8217;ve added a helpful license check UI to ensure that your account has the necessary Microsoft Copilot licenses before you dive into developing Copilot Plugins. Enable the <code>Develop Copilot Plugin<\/code> feature setting via Visual Studio Code in the <a href=\"https:\/\/code.visualstudio.com\/docs\/getstarted\/settings\">User and Workspace Settings<\/a>.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"960\" class=\"wp-image-16563\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-5.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-5.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-5-300x200.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-5-1024x683.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-5-768x512.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>Enhancements<\/h2>\n<p>In addition to the new features, we are also continuing to improve the existing features.<\/p>\n<h3>Recommended Regions in Provision<\/h3>\n<p>When provisioning cloud resources to Azure, Teams Toolkit now provides a list of recommended regions at the top. While you can still choose other regions from the dropdown list, this enhancement streamlines the process.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"939\" class=\"wp-image-16564\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-6.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-6.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-6-300x196.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-6-1024x668.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-6-768x501.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h3>Automatic `npm install` for SPFx Tab App<\/h3>\n<p>Developing with SPFx Tab App is now even more convenient. The toolkit now automatically executes <code>npm install<\/code>\u00a0in the background after the project is scaffolded. Enjoy seamless code <code>intelliSense<\/code> when developing post-project creation.<\/p>\n<p><img decoding=\"async\" width=\"1440\" height=\"960\" class=\"wp-image-16565\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-7.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-7.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-7-300x200.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-7-1024x683.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-7-768x512.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>New Additions to the Sample App Gallery<\/h2>\n<h3>Large Scale Notification Bot<\/h3>\n<p>Explore the architecture of a Teams notification bot app with this new sample. Learn how Teams Toolkit can be used to send individual chat messages to a large number of users in a tenant.<\/p>\n<p><img decoding=\"async\" width=\"1429\" height=\"779\" class=\"wp-image-16566\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-8.jpeg\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-8.jpeg 1429w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-8-300x164.jpeg 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-8-1024x558.jpeg 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-8-768x419.jpeg 768w\" sizes=\"(max-width: 1429px) 100vw, 1429px\" \/><\/p>\n<h3>Graph Connector Bot<\/h3>\n<p>This sample app demonstrates how to build a Teams command bot that queries custom data ingested into Microsoft Graph using Graph connector.<\/p>\n<h2>Develop Bots and Message Extensions using Python<\/h2>\n<p>Exciting news for Python enthusiasts! Teams Toolkit now supports Python. Dive into Teams bot and message extension development using Python with the following samples:<\/p>\n<ul>\n<li>Teams Conversation Bot using Python<\/li>\n<li>Teams Messaging Extensions Search using Python<\/li>\n<\/ul>\n<p><img decoding=\"async\" width=\"1440\" height=\"939\" class=\"wp-image-16567\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-9.png\" srcset=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-9.png 1440w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-9-300x196.png 300w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-9-1024x668.png 1024w, https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2023\/11\/word-image-16558-9-768x501.png 768w\" sizes=\"(max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<h2>Teams Toolkit CLI v2.0.3@beta<\/h2>\n<ul>\n<li>Updated <code>AAD<\/code> to <code>Microsoft Entra<\/code>\u00a0in command descriptions, logs, and error messages. Learn more about <a href=\"https:\/\/devblogs.microsoft.com\/identity\/aad-rebrand\/\">Azure Active Directory rebranding<\/a>.<\/li>\n<li>Enhanced <code>teamsfx m365 sideloading<\/code> Command with support to sideload an xml-based Outlook add-in project. Example command: <code>teamsfx m365 sideloading --xml-path manifest.xml<\/code>.<\/li>\n<li>Added an alias <code>teamsapp<\/code>\u00a0as a root command signature. Now you can use both <code>teamsfx<\/code> and <code>teamsapp<\/code>\u00a0as command prefixes. We recommend transitioning your scripts to use <code>teamsapp<\/code>\u00a0as the command prefix.<\/li>\n<\/ul>\n<h2>Bug Fixes<\/h2>\n<p>We&#8217;ve ironed out a few wrinkles to ensure a smooth experience:<\/p>\n<ul>\n<li>Resolved an issue causing an <code>No localized strings file found<\/code> error in Visual Studio Code output. (#<a href=\"https:\/\/github.com\/OfficeDev\/TeamsFx\/pull\/10090\">10090<\/a>)<\/li>\n<li>Fixed a flickering issue when selecting an option in Quick Pick. (#<a href=\"https:\/\/github.com\/OfficeDev\/TeamsFx\/pull\/10100\">10100<\/a>)<\/li>\n<li>Corrected a string typo in the <code>Create a New App<\/code> dialog. (#<a href=\"https:\/\/github.com\/OfficeDev\/TeamsFx\/pull\/10197\">10197<\/a>)<\/li>\n<\/ul>\n<h2>We \ud83d\udc96 your feedback<\/h2>\n<p>Thank you for all your feedback that has helped make this release possible. Build with us <a href=\"https:\/\/github.com\/officedev\/teamsfx\" target=\"_blank\" rel=\"noopener\">on GitHub<\/a>, share feedback <a href=\"https:\/\/github.com\/officedev\/teamsfx\/issues\" target=\"_blank\" rel=\"noopener\">as an issue<\/a>, or email our team directly at <a href=\"mailto:ttkfeedback@microsoft.com\" target=\"_blank\" rel=\"noopener\">ttkfeedback@microsoft.com<\/a>.<\/p>\n<p>We are excited for you to try <a href=\"https:\/\/learn.microsoft.com\/en-us\/microsoftteams\/platform\/toolkit\/install-teams-toolkit?tabs=vscode#install-a-pre-release-version\" target=\"_blank\" rel=\"noopener\">Teams Toolkit for Visual Studio Code Prelease<\/a>. Please share your experience with us.<\/p>\n<p>For more insights and updates, visit our <a href=\"https:\/\/aka.ms\/M365DevBlog\">Microsoft 365 Dev Center<\/a> and <a href=\"http:\/\/twitter.com\/microsoft365dev\">follow us on X (Twitter) \/ @Microsoft365Dev<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We&#8217;re excited to bring you an array of new features to make your Microsoft Teams app development experience even better.<\/p>\n","protected":false},"author":43243,"featured_media":16590,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[128,9],"tags":[273,270,23,286,285,44],"class_list":["post-16558","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-microsoft-teams","category-sharepoint-framework","tag-adaptive-card-previewer","tag-microsoft-copilot-for-microsoft-365","tag-teams-toolkit","tag-sample-app-gallery","tag-teams-app-test-tool","tag-visual-studio-code"],"acf":[],"blog_post_summary":"<p>We&#8217;re excited to bring you an array of new features to make your Microsoft Teams app development experience even better.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/16558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/users\/43243"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/comments?post=16558"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/16558\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/media\/16590"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/media?parent=16558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/categories?post=16558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/tags?post=16558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}