About skill bots
APPLIES TO: SDK v4
A skill is a bot that can perform a set of tasks for another bot. A skill can be consumed by another bot, facilitating reuse. In this way, you can create a user-facing bot and extend it by consuming your own or 3rd party skills. With minor modifications, any bot can act as a skill.
- Implement access restrictions via a claims validator.
- As appropriate, check for initialization parameters in the initial activity's value property.
- Send messages to the user as normal.
- Signal skill completion or cancellation via an
- Provide the return value, if any, in the activity's value property.
- Provide an error code, if any, in the activity's code property.
Some skills can perform a variety of tasks or actions. For example, a to-do skill might allow create, update, view, and delete activities that can be accessed as discrete conversations.
- See how to implement a skill for a simple skill that implements one action.
- See how to use dialogs within a skill for a skill that uses dialogs to implement multiple actions.
A skill manifest is a JSON file that describes the actions the skill can perform, its input and output parameters, and the skill's endpoints. With v2.1 of the skill manifest schema, the manifest can also describe proactive activities the skill can send and dispatch models the skill uses.