Skip to main content

Depth and siblings

Steps live at a depth, and steps that share a depth are siblings. Together these define the shape of a workflow and the order the engine runs it in.

Depth

depth is an integer starting at 0. Each depth is a level that runs to completion before the next begins.

The rules the builder enforces:

  • There must be at least one step at depth 0 - the entry point.
  • Depths must be contiguous from 0 (no gaps: 0, 1, 2, …).
  • Each depth is defined once.

Depth 0 runs a single time. Every deeper level runs on the results produced above it - one run per result, or a single batched run (see batches).

Siblings

Steps at the same depth are siblings. In the builder you'll see them grouped together, sometimes labelled "2 siblings" with a shared schema. Siblings:

  • share the same output format and the same multi-output / consume-all behavior,
  • run within the same level, and
  • execute in their defined order.

Use siblings when you want several distinct prompts to run at the same stage - for example, two different analysis angles on the same target - while producing the same shape of output.

Workflow depths and siblings
Depths 0–3 with sibling steps and a batched level.

Repeat runs

Separately from depth, a scan's configuration can set repeat_runs to execute the entire workflow more than once. Each repeat is tracked independently, which is useful when you want multiple passes over the same target to catch non-deterministic findings.

That's the whole workflow model. Next, learn what runs after it in Post-scripts.