# User interaction

## Intents

The initial interactions with your Skill will start with a general utterance from the User. Your Skill must register intents that it can handle and Mycroft will then determine which Skill can respond to the Users request.

{% content-ref url="/pages/-LrP8tIBGwfOZG9Hfpp8" %}
[Intents](/docs/skill-development/user-interaction/intents.md)
{% endcontent-ref %}

## Statements

Mycroft can speak any information that you need to communicate to the User.

{% content-ref url="/pages/-MGkRwRu1t4Gg4wfsvHL" %}
[Statements](/docs/skill-development/user-interaction/statements.md)
{% endcontent-ref %}

## Prompts

If you need to prompt the User for information, you can use a range of methods to ask different types of questions.

{% content-ref url="/pages/-MGkRwRvU5qpdc6sls9U" %}
[Prompts](/docs/skill-development/user-interaction/prompts.md)
{% endcontent-ref %}

## Parsing Utterances

A common process within a Skill is to parse the contents of an utterance. Mycroft provides a range of easy to use methods for this task.

{% content-ref url="/pages/-MGkY8rT-ErnfTI2WUBm" %}
[Parsing Utterances](/docs/skill-development/user-interaction/parsing.md)
{% endcontent-ref %}

## Confirmations

Confirmations are used to verify that the input from the User was understood correctly. These may be verbal or non-verbal.

{% content-ref url="/pages/-MGkRwRwUYsLxIwkHm6X" %}
[Confirmations](/docs/skill-development/user-interaction/confirmations.md)
{% endcontent-ref %}

## Conversational Context

For more complex cases, a Skill can add context to the Intent Parser to create more natural conversational interaction.

{% content-ref url="/pages/-LodOWTcSAJBMMNMmFCu" %}
[Conversational Context](/docs/skill-development/user-interaction/conversational-context.md)
{% endcontent-ref %}

## Converse

Converse allows a recently active Skill to inspect utterances before the normal intent handling process.

{% content-ref url="/pages/-MGkRwRyNQW4Q2pMk9DI" %}
[Converse](/docs/skill-development/user-interaction/converse.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mycroft-ai.gitbook.io/docs/skill-development/user-interaction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
