# Debugger

## What is the Debugger?

The **debugger** is designed to simplify the debugging process. It allows you to add breakpoints to start and pause your automation as needed, enhancing your development workflow and experience.

## How Do I Use the Debugger?

To use it, hover over the left side of the line where you want to add a debug point and click on the bug icon (:spider:) that appears. Two options appear: a **Start** and a **Pause** point. Click to enable either one:

* **Start:** Will run the automation **from** this line.
* **Pause:** Will run the automation **until** this line *(execution will stop at the line before)*.

{% hint style="success" %}
Add all debugging markers *before* running the automation. Markers added while the automation is running will not take effect until the next run.
{% endhint %}

## Visual Markers

These are the markers used in the interface to indicate different states of execution:

* **Start:** A **green** dot marks where automation execution will begin.

![Debugger Start Point](/files/jLu8fAC99TM8CsOub3PL)

* **Stop:** A **red** dot indicates that automation execution pauses before this line.

  ![Debugger Pause Point](/files/zer0iFmcnUh3uG9Ayn0W)
* **Paused:** A **yellow** line marks where the automation is currently paused.

  ![Debugger Paused Marker](/files/JmAplfJsboHUBAoVLpVz)

## Important Notes

### 1. Multiple Breakpoints

You can add multiple breakpoints within a single run. Utilizing multiple breakpoints can significantly enhance your development workflow, making it easier to identify and resolve issues within your automations.

### 2. Execution Start Point

Execution is context-dependent and does not guarantee it will begin from a specified line. The system automatically adjusts the start point based on execution history and surrounding control structures.

{% hint style="info" %}
For example, if the start point is inside a loop, the system can move the start point to the beginning of the loop.
{% endhint %}


---

# 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.kognitos.com/legacy/legacy-experience/writing-automations/using-the-editor/debugger.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.
