> ## Documentation Index
> Fetch the complete documentation index at: https://docs.platform.nora.my/llms.txt
> Use this file to discover all available pages before exploring further.

# Flows

> One canvas, one agent workflow — versioned and safe to publish.

A **Flow** is one agent workflow. You build it on a canvas by dropping Blocks and connecting them.

## When to make a new Flow

One Flow per **use case**, not one per feature. If you're building a support assistant and a research helper, that's two Flows. If your support assistant grows to handle refunds *and* password resets, that's still one Flow — just more Blocks.

## Draft and Published

Every Flow has two versions at any time:

* **Draft** — what you see when you edit. Nothing you do here affects production.
* **Published** — what real users hit. Immutable until you publish again.

You edit in Draft, hit **Publish** when ready, and Nora takes a snapshot. The published pointer moves to that snapshot. All previous snapshots stay reachable for rollback.

## Publishing

Click **Publish** from the toolbar. You'll be asked for a note (what changed). Nora then:

1. Snapshots the current Draft as a new version.
2. Moves the published pointer to it.
3. Starts serving that version to production traffic.

<Note>
  Only Owners and Managers can publish. Empty canvases and re-publishing an unchanged Flow are rejected — this prevents accidental "publish" clicks.
</Note>

## Rollback

If something goes wrong, open **Versions**, pick the version you want, and click **Rollback**. The published pointer moves back; your Draft stays untouched.

Rollback is instant and does not lose any of your in-progress work.

## Versions view

Every publish and every restore is recorded. From the Versions view you can:

* See the full history with notes
* Compare two versions
* Restore an old version into Draft (safe — doesn't touch what's published)
* Rollback the published pointer to any prior version

## Active Flow (for the CLI)

If you use the `nora` CLI, you pin an **active Flow** per workspace with `nora flows use <slug>`. Later commands default to that Flow, similar to `gcloud config set project`.
