---
title: "Advanced control flow"
description: "Apply recipes to repeated records, preserve values, and branch conditionally."
---

> Documentation Index
> Fetch the complete documentation index at: https://help.serialize.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Advanced control flow

Serialize includes control-flow operations inherited from the CyberChef model.

## Fork and Merge

**Fork** splits input using a delimiter and runs the remaining recipe independently for each segment. **Merge** rejoins those branches. This is ideal for newline-delimited timestamps, indicators, hashes, or records.

Choose delimiters carefully. A literal `\\n` argument and an actual newline are different values, and merging with the wrong delimiter can corrupt structured data.

## Register

Register operations retain values for later reuse. They are useful when one part of the input supplies a key, identifier, or parameter needed by a later step. Keep register lifetimes obvious and document what each slot contains.

## Conditional Jump

Conditional Jump changes execution based on matching data. Use it for heterogeneous records only when the condition is explicit and testable. Prefer two simple recipes over one opaque branch tree when the audience must audit the process.

> **Automation limit**
>
> Page-local WebMCP recipes are intentionally bounded to eight operations. Complex interactive recipes can exceed that, but automated workflows should stay short, deterministic, and reviewable.

Source: https://help.serialize.dev/workflows/advanced-control-flow/index.mdx
