# Flow Tools

## Introduction

**Flow Tools** are tools used to build and manage intelligent agent workflows, allowing developers to define multi-step task processes through visual interfaces or code. These workflows can include calling external APIs, processing data, executing logical decisions, and more, ultimately forming a complete automated task chain.

* **Visual Workflow Design**: Users can intuitively design each step and logic of the workflow via a drag-and-drop interface.
* **Multi-step Task Chains**: Supports defining multiple sequential or parallel task steps to implement complex business logic.

## Create a Flow Tool

<figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2F1BQhV0jhRF9b5P392cjF%2F1.drawio.png?alt=media&#x26;token=8862d7f5-8182-4d68-b8f2-b1d28dc583e7" alt=""><figcaption></figcaption></figure>

First, select the **Tool** panel. Here, you can choose either **Create From Blank** or **Create From Template**. In this example, we’ll go with the first option — **Create From Blank**.

<figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2FUiBEG4a50ONbArmoToPY%2Fd052944f340af2c0486fbee7949e73fc.png?alt=media&#x26;token=e6c9e023-5005-4b60-8f08-612b1edb0ab1" alt=""><figcaption></figcaption></figure>

After clicking **Create**, you will be redirected to the **Tool Creation Panel**, where you need to configure the following information:

* **Avatar**\
  The icon or image representing your tool. This helps visually identify the tool in the interface.
* **Name**\
  The internal name of the tool. **Tool name can only contain letters, numbers, and underscores** (e.g., `my_custom_tool`). This name is used programmatically and must follow naming rules.
* **Display Name**\
  The name shown to users, such as when the tool is used by an agent. **There are no restrictions on characters**, so you can use spaces, symbols, or non-English characters if needed (e.g., `My Custom Tool`).
* **Description**\
  A brief explanation of what the tool does. This helps others (and yourself) understand the purpose of the tool at a glance.
* **Create Tool Type**\
  Choose the type of tool to create.

<figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2FXrharllz8PhWcZBu5CF8%2F6eb820e5bd956afd80a41adc84012f2f.png?alt=media&#x26;token=187a1a61-ec3e-48ac-88aa-7109f018f7af" alt=""><figcaption></figcaption></figure>

After clicking **Create** in the creation panel, you will be redirected to the **Flow Tool Orchestration** panel. Here, you can customize your tool using a variety of powerful nodes—almost the same as in AgentFlow.

## Flow Tool Example

The following presents a simplified **Enhanced Knowledge Search Flow Tool** along with its implementation method. This tool&#x20;

<figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2FgWG492WbtZHA8GEoOOkb%2F5b2d604fc2d4758950e8fe52b88f3a73.png?alt=media&#x26;token=8d06310c-4524-45a6-bdfc-5a1153e6f5ff" alt=""><figcaption></figcaption></figure>

This flow tool, aside from the start and end nodes, uses only two core components:

An LLM node for extracting the query, and a knowledge search node for retrieving information from the WorkFX

<div align="center"><figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2Fnl06P8y1KB1LLFF2wjaa%2Ff4b576ecc0b39fdb3e49586e67388fa9.png?alt=media&#x26;token=75d4c5c2-de00-449b-9665-b6a3b57b4a46" alt=""><figcaption></figcaption></figure></div>

The configuration of the LLM node is shown above. Users are free to customize it to enable more complex functionalities; this setup is for demonstration purposes only. The blue text indicates a reference to the query from the start node, which serves as the default input for the tool.

<figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2FMk9HYka0YlBE2iEWe0ZR%2F44f9596f1e4dbb8420eda612a2be7773.png?alt=media&#x26;token=61c5ba43-a4b5-4273-9fc0-940d7fd65c72" alt=""><figcaption></figcaption></figure>

The configuration of the Knowledge Search node includes the following:

* **Knowledge Selection**: Choose one or more knowledge sources to define the search scope. In this example, the *WorkFX* introduction document is selected.
* **Search Parameters**: Configure the following parameters:
  * **TopK**: Specifies the number of top relevant results to return.
  * **Score Threshold**: Sets the minimum relevance score required for results to be considered.
* **Enhanced Domain Mode**:

  * Optional feature;
  * Improves retrieval performance when enabled;
  * May result in slower responses and higher computational cost;
  * Not enabled in this example.

  <figure><img src="https://4046886348-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYf4L4Z4IuV1CQn3whQYb%2Fuploads%2F0DFGH0P49WrPIN29xc7P%2Ff4b961244f5a33258b4f523852438f8e.png?alt=media&#x26;token=60d40caf-a933-4897-b20b-e0bb08d3e39b" alt=""><figcaption></figcaption></figure>

In the End Node, select the `text` output from the **Knowledge Search node** as the final output

* This will pass the retrieved text to the user or downstream processes.
