# Add and connect steps

> Add steps from the palette, draw the arrows that order them, and clear the warnings that stop a workflow activating.

Steps are added from a searchable palette, and ordered by the arrows you draw
between them. An arrow means "wait for that, then run"; steps with no arrow
between them run in parallel.

## Outcome

Your workflow's steps are on the canvas in the right order, with no step left
unreachable.

## 1. Add a step

There is no drag-and-drop tray. Open the palette one of three ways:

- click the `+` beneath a selected step,
- click the `+` under the **Start here — add the first step** card on an empty
  canvas, or
- press `Cmd`/`Ctrl` + `K` with focus on the canvas.

Type in **Search steps…** and the palette narrows; a **Recent** section
remembers what you reached for last. Clicking an entry places the step already
wired to whatever it was opened from.

Seven step types can be added this way. See [Step
types](/help/workflows/step-types) for the full list.

## 2. Connect it

Drag from one step's handle to another's.

While you drag, every step the connection cannot legally reach outlines itself
in red. That is either a cycle — the target already leads back to where you
started — or a step already reachable from where you started.

Hodoflow keeps the graph free of arrows that another path already implies, so
adding a shortcut can silently remove one. A toast at the bottom of the screen
tells you when that happened and why. The graph still runs in exactly the same
order; only the redundant arrow is gone.

## 3. Clear the warnings

A step with no arrow coming into it shows **No parent step** on its card and
counts toward the **invalid nodes** total in the toolbar. So does a step that
is not fully configured.

Invalid nodes will not stop you saving. They will stop you activating.

**Checkpoint:** the toolbar's **invalid nodes** count reads zero.

## Handling errors

Select a step and use **On error** to create a recovery branch or connect to an
existing step. Several fault sources can share the same recovery step, and
fault branches can reconnect to the main flow. Legacy compensation connections
must be explicitly converted or removed before activation. See
[On error paths](/help/workflows/error-and-compensation).

## Working with several steps at once

Drag a box around steps, or shift-click them, and the inspector switches to
**Duplicate**, **Copy**, and **Delete** for the whole selection.

## Common problems

**The step I want is not in the palette.** Six step types run in the engine but
have no palette entry yet. [Step types](/help/workflows/step-types) marks which.

**My arrow disappeared right after I drew another one.** The new arrow made the
old one redundant, so it was pruned. Nothing about the run order changed.

**A step outlines red while I drag.** That connection would create a cycle, or
duplicate a path that already exists. Connect from a different step, or change
the direction.

**The canvas says `No parent step`.** Nothing runs that step. Draw an arrow
into it, or delete it.

## Next step

[Configure and test a step](/help/workflows/configure-and-test-steps).
