{% include 'header.jinja2' %}

### What is an Assistant?

Assistants are the building blocks of the automation system. They are the components that decides the actual work of the automation system.
They can be used to perform a wide variety of tasks, from sending notifications, building pipelines and organizing workflow.

## Options

Below are the options for this assistant.

{% with options=component.options %}
    {% include 'options.jinja2' %}
{% endwith %}

{% if component.schedulable %}
    ## Scheduling

    This assistant can be scheduled to run at a specific time or periodically.
{% endif %}
{% if component.reactive %}
    ## Reactive

    This assistant can be triggered by content based events on stores which it is monitoring.
{% endif %}

{% if component.event_types %}
    ## Custom Events

    This assistant also supports custom events that you can use to trigger automations. These events are listed below.


    {% for event_type in component.event_types %}
        ### {{ event_type.label }}

        {% if event_type.description is defined %}
            {{ event_type.description }}
        {% endif %}

        {% if event_type.options is defined %}

            {% with options=event_type.options %}
                {% include 'options.jinja2' %}
            {% endwith %}
        {% endif %}

    {% endfor %}
{% endif %}



