# Workflow Builder

<figure><img src="/files/L4469FQeEqEcKk8SCiPU" alt=""><figcaption></figcaption></figure>

The **Workflow Builder** allows developers to create **multi-step, logic-driven AI agents** using a visual drag-and-drop interface.

It’s ideal for building **complex agents**, **tool chains**, or **multi-agent orchestration**—all without writing extensive code.

***

#### **Accessing the Workflow Builder**

1. Go to the sidebar and click **“Workflow”**.
2. You will see two sections:
   * **My Workflows** – All workflows you have created.
   * **Workflow Templates** – Ready-made templates to accelerate development.

From here, you can create a new workflow **from scratch** or **use a template** to customize it for your scenario.

***

<figure><img src="/files/I8lX8guo11SRW7MvliWc" alt=""><figcaption></figcaption></figure>

#### **Key Concepts**

* **Node** – A modular step in your workflow, such as a prompt call or API request.
* **Connection** – A directional link that passes outputs from one node to the next.
* **Variable** – A data placeholder for passing user input, intermediate results, or API responses between nodes.
* **Preview** – The built-in testing area where you can simulate inputs and debug outputs in real time.

***

#### **Creating a Workflow from Scratch**

1. Click **“Create Workflow”**.
2. Enter a **name and description** for your workflow.
3. Drag and drop nodes from the **Node Library** onto the canvas. Common node types include:
   * **Prompt Node** – Send instructions to an LLM and get responses.
   * **Model API Node** – Call models like GPT-4o, Claude, DeepSeek, or Qwen.
   * **Condition Node** – Branch logic based on input or results (if/else).
   * **API Node** – Connect to external services or databases.
   * **MCP/Tool Node** – Use modular compute services like web search or blockchain tools.
4. Connect nodes with **arrows** to define execution flow.
5. Assign **variables** to pass data between nodes.
6. Use the **Preview** panel to test step by step.

***

#### **Using Workflow Templates**

**Templates** are pre-built workflows for common tasks that save time and demonstrate best practices.

**Example Templates:**

* **Twitter Thread Generator** – Turn structured ideas into a social media thread.
* **Document Q\&A** – Answer questions based on an uploaded PDF or knowledge base.
* **Travel Planner** – Generate personalized itineraries for users.
* **Prompt Chaining** – Multi-step reasoning using sequential prompt calls.
* **Image Sentiment Classifier** – Categorize images as positive, neutral, or negative.

**How to Use Templates:**

1. Browse the **Workflow Templates** page.
2. Click a template to **preview its structure and logic**.
3. Click **“Use Template”** to copy it to your workspace.
4. Customize nodes, prompts, and connections to fit your use case.

***

#### **Testing and Debugging**

1. Click **“Preview”** to test the workflow with sample input.
2. Observe outputs at each node to verify correct execution.
3. Adjust logic or nodes if you encounter unexpected results.

***

#### **Saving and Publishing**

* **Save** – Keeps your workflow as a **draft** for further editing.
* **Publish as an Agent** – Convert your workflow into a **live agent** that can be submitted for review and listed on **ChainOpera AI Terminal**.
* Publishing requires that your agent has **all required fields** completed (icon, name, category, short & full description, intent).

***

#### **Best Practices for Workflow Design**

* Keep workflows **modular**: Break large processes into smaller or reusable flows.
* Use **clear variable names** to track data flow.
* Minimize unnecessary branching to keep workflows maintainable.
* Test iteratively to catch logic errors early.


---

# 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://docs.chainopera.ai/core/workflow-builder.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.
