[This article is prerelease documentation and is subject to change.]

How does it work?

When you sign in to Copilot Studio, it determines which copilots you're allowed to access, based on the license associated with your credentials. The list of copilots available to you depends on these permissions. If you don't see the copilot you wish to extend, verify your credentials. Also try connecting to the copilot itself, or try to trigger any jobs that must occur to prepare the copilot for use. See the sections detailing the authoring experience for examples.

A maker starts by selecting the copilot they wish to extend in:

  • Custom copilots
  • Copilots created by Microsoft
  • Other copilots that they have maker access to in their organization

Select a copilot to extend by selecting Copilots in the main menu and then choosing from the list of custom copilots and Microsoft Copilots.

View existing extensions for a copilot

After selecting a copilot, you can view the extensions currently available for the copilot within the configuration/authoring panel for the copilot.

The steps to view existing extensions for a copilot depends on the type of copilot:

  • Custom copilot: Select Actions.
  • Microsoft Copilot: Select Extensions or Actions, depending on which is shown for the copilot.

The list of available extensions appears.

Creating your own new extension

You can also create your own new extensions.

The steps depend on the type of copilot:

  • Custom copilot: Select Add an action.
  • Microsoft Copilot: Depending on what is shown for the copilot, select Add extension and then New Action, or select Add Action.

You can then select a type of action from a list of available options to start the process of extending the copilot with more capabilities.

Copilot Studio guides you through the configuration steps. The details of the steps depend on whether you're extending a custom copilot or Microsoft Copilot.

Detailed configuration steps are covered later in the documentation. After completion, the user can publish the action for the copilot. This action is now ready for an administrator to review and approve. Once approved, the action is available to all users who have permission to use it, within that specific organization.

Copilot Studio offers multiple ways to make the extension process easy and comprehensive, including:

  • Authoring: Author the extension for the copilot, which results in an action being created.
  • Testing: Validate that the action works with your copilot by testing it during or after the publishing process.
  • Editing: Save drafts of actions in progress, or edit actions and publish the outcomes for use.
  • Export/Import: Take existing completed actions and distribute them to other organizations within your company or to your own customers if you're an ISV. You can also export the package to be submitted for certification with Microsoft to make your action available in the online catalog.
  • Provide behaviors: Inform users they're about to make a change to data and ask permission before taking action, provide a card for easy display of results, provide sample questions users might ask the copilot.
  • Branding: Provide icons and branding information for your action for the purposes of distribution.

What happens after you publish your action?

Once an action is published, your copilot administrator has to review and enable the plugin for use. When an administrator enables a copilot, they must also determine which groups of users have permission to use it. The location for managing permissions might differ depending on the copilot. More information is available in the administration documentation. Once activated, a plugin appears in the environment where it was created. The plugin can also be exported for use in other copilots. Exporting creates a package that can be deployed in other environments, removing the need to recreate the action for each environment you wish to use it in.

More information on the import and export of actions is available in Export solutions.

Published actions can also be submitted to Microsoft for certification. Certification is done using the Partner Center and involves a review of the action and certification by Microsoft. After that it appears in the action catalog where all users of Copilot Studio can use to extend their copilots as well.

For more information on certification, see the following documents:

Extend a copilot by authoring an action

Copilot Studio provides a quick and easy way to author a copilot action using a step-by-step wizard to guide you through the process.

It can be used to extend Microsoft-provided copilots or custom copilots. Once you pick the copilot you would like to extend, it walks you through a series of steps to create the action.

The wizard asks you to:

  • Choose the type of handler/source you want to use
  • Supply authentication information if necessary for type of handler/source you chose
  • Select the actions you want to include in the plugin
  • Define the input and output parameters for each action
  • Provide other enhanced experiences such as:
    • User consent dialogs
    • Adaptive cards to display your results, and conversation starting questions
    • Branding information for certification

After you have completed these steps, you can publish the action. An administrator can then review your action and activate it. Once the action is activated, you can use it within your organization, deploy it to other organizations, or submit it to Microsoft for certification, to make it available to the general public.

Components of an extension

Extensions created in Copilot Studio have a few components that are brought together to create the action for use in copilots.

  • Handlers and content sources
  • Authentication
  • Actions
  • Inputs and outputs
  • Enhanced features (user consent, conversation starters, adaptive cards, branding, solution management)

Handlers and content sources - action types

有多个输入处理程序和内容源可用来作为插件的基础。在Copilot Studio中,这些源称为动作。这些不同类型的操作的共同点是在提交查询时与源的详细信息进行通信的基本结构。以下操作类型可用:

  • 会话:在Microsoft Copilot Studio中内置的会话操作使您能够扩展副驾驶的行为。您可以创建Microsoft Copilot原生不具备的新功能,例如调用特定API,应用复杂的业务逻辑,或访问需要在Microsoft Copilot访问之外配置的数据源。这些配置类似于在copilot Studio画布中构建的常规副驾驶主题。
  • 连接器:连接器操作在Microsoft Dataverse中用于连接到其他数据源。创建时,连接器包含可与连接器一起使用的特定操作。可以使用Microsoft认证的连接器或在组织或租户中创建的自定义连接器。
  • 流:Microsoft Power automation云流可以从副驾驶中调用,以执行操作、检索信息,并使用连接器自动执行跨其他应用程序和数据源的流程。
  • 提示:这些是AI提示模板,用于根据用户输入定制文本内容的生成。这些模板可以用于各种场景,如总结、行动项目、情感或实体提取、翻译文本等等。此外,您可以添加自己的Dataverse数据来增强知识来源并获得特定于业务的答案。

Select type for new action

Not every action type is available for every copilot:

Feature Copilot for Microsoft 365 Copilot for Sales Copilot in Dynamics 365 Customer Service
Conversational Available Not available Not available
Connector Available Available Available
Prompt Available Not available Available
Flow Available Not available Not available

In the documentation that follows, these action types are presented in two categories:

  • 会话行为:会话行为
  • AI动作:连接器、提示、流程

Conversational actions

这些操作类似于用于创建功能副驾驶的Copilot Studio中的标准主题。

您以与主题类似的方式创建、配置和发布会话操作。之后,它们被添加到动作注册表中,并可用于Microsoft Copilot。

有关这些插件如何工作以及如何创建和使用它们的详细信息,请参阅创建会话操作。

AI actions

These actions let you connect your copilot to data or perform activities. During this preview, you can use actions in Microsoft Copilot. You can't use actions in custom copilots that you build with Microsoft Copilot Studio.

You create and configure AI actions in Copilot Studio. You can also create and edit some types of AI actions in Power Apps.

The following table describes each type of AI plugin, with links to articles explaining where and how to create them:

AI plugin type Description Creation in Copilot Studio Creation in Power Platform
Prompts (AI builder) Prompts enable your users to use natural, plain language to get answers and perform actions with Microsoft Copilot. They use natural language understanding (NLU) to understand a user's intent and map it to an associated piece of information, data, or activity. Generate content or extract insights with AI Builder prompts Create a custom prompt (preview) in Power Automate or Power Apps
Power Automate flows Flows can be called from within a Microsoft Copilot chat that can perform actions or retrieve information across the end user's environment. Create custom automation with Power Automate flows Not available
Power Platform custom connectors Custom connectors let your plugin retrieve and update data from external sources accessed through APIs. Connectors make it possible to access data from popular enterprise systems such as Salesforce, Zendesk, MailChimp and GitHub, and are routinely used by makers in their Power Apps and flows. Update or get answers about external data with connectors  

Authentication

In order to use the content sources, you have to define authentication for the source. Sources require specific types of authentication. When you select your content, the source provides the needed prompts for authentication.

Here are some examples:

  • Non-authenticated: MSN Weather connector. This connector action only retrieves public weather data and has no secure content. As a result, the weather connector is open to be used without providing credentials.
  • Flow actions: Cloud flows use the connection and connection settings configured at time of creation.
  • Connector actions: If you use a Connector to access your data source, it has its authentication method built in to the connector. You will not configure it at setup but will be asked to supply credentials before testing or using the connection.
  • Prompt action: Uses your Teams or Power Apps identity. Make sure to share the prompt to the appropriate users or groups after is created.
  • Conversational actions: Conversational actions don’t need any authentication of their own. However a Conversational action can be used to call a connector action, in which case the connector’s authentication mechanism is invoked.

Each source has actions already defined, but when configuring, you can select which of the actions you wish to use. You can select from any number of actions to use with the source. For example, with multiple actions, you could perform the following:

  • Retrieve a list of users
  • Add a new user
  • Update a user's details
  • Delete a user

As long as the actions are present in the source, the handler can carry out any of the actions.

Note

Every action is available to users of the extension. You cannot have role based permissions for a specific action within it. For example, if you had an Order Management extension that allows for retrieving a list of records, updating an order, creating an order, and cancelling an order, then every user with permissions to that extension could take any of those actions. If you need to segment access to specific actions, you would need to create different extensions with different actions in each with appropriate security roles assigned to each plugin.

Input and outputs

Inputs and outputs are specific to an action and provide all of the data input options possible for an action and define the results to return. These parameters are provided by the content source (connectors, and so on) and can't be added to or removed. However, descriptions can be updated to provide a better understanding of the inputs and outputs. They're displayed as part of the setup to provide visibility into what needs to be included in a query and what is returned.

Enhanced features

Enhanced features are available when setting up extensions for some Copilot types.

Enhanced features include:

  • Solutions
  • User consent
  • Conversation starters
  • Adaptive Cards
  • Testing

Not all enhanced features are available in every copilot type.

Solutions

Solutions are essential for application lifecycle management. If saved in a solution an action can be easily moved across environments. By default, the system selects the most suitable solution for you, based on the preferred solution, or a solution where connector components are present. You can also change solution. If you don't specify a solution for your action, the system automatically creates a solution at runtime.

Creating an action

Learn more about solutions in Application lifecycle management (ALM) basics with Microsoft Power Platform.

User consent is a toggle provided on each action. It determines if the copilot will prompt users to continue when executing an action. Turning on this option means that the copilot will ask users if they're sure they want to take the action. This helps prevent unintentional actions that could affect data.

User consent toggle

Best practices:

  • For data retrieve-only actions (get, retrieve, list, and so on), turn off user consent. Such actions only retrieve a set of data and display it. They don't put the data at risk.
  • For other actions (create, update, delete, add, remove, and so on), turn on user consent. Such actions can add or change data in the system, so it's a good idea to prompt users to confirm before taking action. You can always change user-consent settings for the plugin by editing it.

Conversation Starters

Conversation starter lets you create commonly used questions that display as clickable buttons. Conversation starters execute the query immediately. They also show types of queries that can be used. These examples can help users come up with more queries on their own using successful natural language framing. Conversation starters are set at the plugin level rather and are optional. You can edit them at any time.

Use conversational starters

Adaptive cards

Adaptive cards are an optional component configured at the action level. You can add or modify them at any time by editing the plugin. Adaptive cards provide an alternative way of displaying results from a copilot query.

Configure adaptive card

Adaptive cards come in two types:

  • Default: A basic adaptive card that can have a title, a subtitle, a body, and a button that takes the user to a URL location. It provides a more stylized view and a call to action.
  • Custom: Custom adaptive cards are created outside of the wizard and can be uploaded for inclusion in a plugin. These cards are more customizable and can have multiple fields, multiple buttons, and other options. You can create a custom card in Adaptive Card Designer and export it as a file for upload.

When configuring the default adaptive card, you must select a root path. The root path is a segment of the data source's configuration file and it includes all the fields that can be selected to define the title or body. There can be multiple root paths in a source file, and all available paths are available for selection. After you select a root path, you can choose the desired title and body from lists.

Define root path

Every adaptive card shows the returned values and then lists the references used when compiling the result. Adaptive cards also allow a user to specify the reference view layout. This is how the references used in the query are displayed for more information. It allows for inclusion of a title, URL, and subtitle. These are also dropdowns that can be populated based on the root path selection.

Define reference view layout

Note

When uploading a custom adaptive card template, no edit capabilities are provided in the wizard as the custom card should already include all fields, buttons, and mapped values to be consumed by the copilot. Any field left blank in the Default template doesn't appear on the adaptive card within the copilot.

Testing

For connector actions, a maker can test the new plugin inside of Microsoft 365 by sideloading the plugin created. This is an option on the review screen when the action has been authored. It will prompt the user to select or create a connection, and then create a side loaded test version of the plugin that is available in the M365 environment. This is not visible externally and is not published for admin approval. It is only available for the author so that it can be used only to validate that the plugin is working as expected.

Testing the action

Use actions in Microsoft Copilot

End users in your tenant can use conversational and AI actions in their chats with Microsoft Copilot if:

  • Your Microsoft 365 tenant admin deploys the Copilot Studio app in the Microsoft 365 admin center.
  • The end user enables the connection from within their chat with Microsoft Copilot.

Deploy the Copilot Studio app (admin)

  1. Sign in to the Microsoft 365 admin center with your admin account.
  2. Expand Settings on the side navigation pane and select Integrated apps.
  3. Go to the Available apps tab and select the entry Microsoft Copilot Studio. The app's details pane opens.
  4. Select Deploy to enable the app in chats with Microsoft Copilot.

Deploying the Copilot Studio app

Tenant admins can enable or disable:

  • showing Conversational AI/topic actions and Prompt actions in the M365 Chat app using the "Copilot Studio" app.
  • showing Flow actions in the M365 Chat app using the "Power Automate" app.
  • Connector actions and API actions in the M365 Chat app using the associated apps (the app name will be the connector or action name). Additionally, custom connector actions are available in the Teams store for users to install.

Important

In this release, there are some limitations:

  • Integration with Copilot Studio and Power Automate is enabled by default. That means, plugins created in Copilot Studio will show up for users under "Copilot Studio" or "Power Automate" even if the tenant admins have not explicitly deployed the app for end users. This might change in future.

  • Note that, as an admin, you can still block plugins from showing up for your users by blocking the app in Microsoft 365 Admin Center.

  • The number of Power platform environments enabled for integration is currently limited. Reach out to Microsoft support if you have a large number of Power platform environment (>100) and want specific Power platform environment to be enabled.

    In the future, customers can use the Power Platform admin center to enable or disable plugins in an environment for Microsoft Copilot.

Enable the connection in Microsoft Copilot

Microsoft Copilot end users need to enable plugins before they use them in chat. Available plugins can be enabled through the plugins menu or through the Power Platform plugins configuration portal.

They can get to the portal by asking about plugins in their chat with Microsoft Copilot. They receive a short summary about plugins and a link to the portal:

Asking about plugins

Users can also ask directed questions about data connections or how to perform cross-organizational tasks, for example they could ask:

  • How can I use a plugin?
  • Tell me about Power platform Copilot plugins
  • How can I get data from an external system?
  • How can I get data from Salesforce?

Share AI actions

By default, actions are only visible and usable in Microsoft Copilot by the person who authored them.

However, the action author can share their plugins in the portal where they created them. For example, you can share an AI Builder prompt from the AI prompts page by selecting Share for the prompt. The same applies for Power Automate flows (from the Flows page in Power Automate) or for custom connectors from the Custom connectors page.

Article Description
Create conversational actions Extend a Microsoft Copilot by creating actions that can respond to a user's question with extra data.
Create AI actions for Microsoft Copilot (preview) Extend a Microsoft Copilot by creating actions that perform tasks and query data across a user's environment with flows, AI Builder prompt templates, and connectors.
Use actions with custom copilots (preview) Extend a custom copilot by creating complex topics for use in copilots you build in Copilot Studio, without doing anything complex.