Skip to main content
Every Flow has one Draft — the mutable state where you work. Edits are auto-saved as you make them. Nothing about Draft ever affects production.

Draft vs. Published

  • Draft — mutable. Editable by anyone with edit access. Auto-saved. Not visible to production traffic.
  • Published — immutable. Set by publishing the current Draft. What production runs.
You can freely diverge Draft from Published. When Draft has unpublished changes, the Flow shows an “unpublished” badge.

Testing in Draft

Two ways to run against Draft without publishing:
  • Test panel — top-right of the canvas. Type an input, run against Draft. Full trace as if it were production. No side effects (tools use test creds; actions marked “must not run in test” are stubbed).
  • Draft URL — a private URL that runs Draft. Share with teammates for internal testing. Not accessible without workspace auth.
Production URLs (chat, webhook) always run the published version. Even Owners can’t accidentally send prod traffic to Draft.

Concurrent editing

Multiple people can edit the same Draft:
  • Cursor presence — see who’s on which block.
  • Field-level locking — while someone is typing in a prompt, others see it but can’t overwrite.
  • Merge on save — non-conflicting field edits merge automatically.
  • Conflict resolution — for genuinely conflicting edits, Nora prompts the second saver to choose or merge.
Real-time collaboration works reliably up to ~10 concurrent editors.

Restoring Draft from a version

To roll Draft back to an older state: Flow → Versions → pick a version → Restore to Draft. Draft is overwritten with the picked version’s contents. Confirmation required (overwriting Draft is destructive). Production is untouched. Useful for:
  • Recovering from a bad Draft state.
  • Starting a new fix from an older version.
  • Comparing your current Draft with an old baseline (edit-in-place after restore).

Draft-only settings

Some settings apply to Draft testing:
  • Draft data sources — attach a source only in Draft (e.g., test document collection). Not carried to Published unless you promote it.
  • Draft variables — variables in Draft can have different values than Published. Test with dev values, publish with prod values.
Both are useful for testing without polluting production behavior.

Draft lock

Freeze Draft to prevent concurrent edits during a delicate change: Flow → Draft → Lock. Only the locker (or an Owner) can edit until it’s unlocked. Rare, but useful when doing a complex restructure and you don’t want teammates to make conflicting changes.

Discarding Draft changes

If Draft has changes you want to throw away and start fresh from Published: Flow → Draft → Reset to Published. Confirmation required. All Draft-only edits are lost. Prefer restoring Draft from a specific version if you want to keep a checkpoint. Reset is for when you know the changes are wrong.

Draft in the CLI

Common workflow: snapshot Draft, edit the JSON locally (bulk find-replace, structural changes), re-apply. Faster for large refactors than clicking through the UI.