> For the complete documentation index, see [llms.txt](https://humley.gitbook.io/humley-studio/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://humley.gitbook.io/humley-studio/enhance-assistant/flow/creating-flow-components.md).

# Creating Flow Components

A **Flow** is a useful way of guiding the end-user through a structured conversation, often made up of a series of questions to gather the required information in order to fulfil their request e.g. answer their question, perform an action etc.

Think of **Components** as unfinished, 'mini-flows' that can be re-used and called from different Flows or other Components. They reduce the need to repeat the creation and editing of common conversation patterns.

The **Flow** page shows a list of all standard Flows and a list (collapsed by default) of all Components.

### Create a new Flow

To create a new Flow, click **Create Flow** and choose the *Standard Flow* card.

#### Set the Flow Details

Set the Flow's basic details.

Enter in the sidebar -

* **Flow Name**\
  Name the Flow. All Flow names must be unique within the Project.
* **Flow Description** (optional)\
  Describe the flow.

In Advanced Options -

* **Exit Entity**\
  The entity that defines all the 'exit' words that allow an end-user to break out of the flow. Defaults to pre-generated entity *@exit\_flow*
* **Exit Text**\
  The response that informs the end-user they have exited the flow. Defaults to *Returning you to the conversation...*

#### Save the Flow Details

Click **Create Flow** in the sidebar to save these details

Once the new Flow's details are saved, the Flow Canvas will be shown.

### Create a new Component

To create a new Component, click **Create Flow** and choose the *Component* card.

#### Set the Component Details

Set the Component's basic details.

Enter in the sidebar -

* **Component Name**\
  Name the Component. All Component names must be unique within the Project.
* **Component Description** (optional)\
  Describe the Component.

In Advanced Options -

* **Exit Entity**\
  The entity that defines all the 'exit' words that allow an end-user to break out of the flow that the Component is part of. Defaults to pre-generated entity *@exit\_flow*
* **Exit Text**\
  The response that informs the end-user they have exited the flow. Defaults to *Returning you to the conversation...*

#### Save the Component Details

Click **Create Component** in the sidebar to save these details

Once the new Component's details are saved, the Flow Canvas will be shown.
