Workflow Editor
Build an automation without writing code. Drag blocks onto a timeline, fill in a few fields, and Orbe turns it into a real, runnable workflow — the same kind the SDK runs, driven through the internal channel so there is no automation trace.
- Blocks, not code. Each block is one clear step — open a page, wait for text, click, type, read, branch, loop.
- It runs for real. A workflow is an ordinary Orbe flow; what you build in the editor is exactly what runs, and Validate checks it before you run.
- No trace. Workflows run through the same internal channel as the SDK — no CDP, no
navigator.webdriver, no debug port. See Automation & SDK. - Deterministic. The engine does exactly what the blocks say — no hidden AI at run time — so what you see is what runs.
Orbe ships a few example workflows you can read and adapt — Basic login, Warm-up browsing, and Post from a CSV list.
The editor
The editor has three panes and a toolbar:
- Palette (left) — the blocks you can add, grouped by category.
- Canvas (middle) — your workflow as a top-to-bottom timeline. Branches and loops nest inside their block, indented.
- Inspector (right) — the fields of the selected block, and your list of variables.
The toolbar, left to right: Validate; ▶ Run — runs the workflow on the profile selected in your Profiles list (with none selected, it asks you to pick one); Pacing: On — this workflow's account-safety pacing, saved per workflow; ✦ AI; and More ▾ with Undo, Redo, Save flow…, Open flow…, ⇄ Convert a script from another tool… and Allowed steps…. A review button also appears when an imported workflow has steps waiting for your review.
Blocks
Blocks are grouped by what they do. Each maps to one real step Orbe can run.
| Group | Blocks | What they do |
|---|---|---|
| Navigate | Open profile · Go to URL · Delay · Wait for element · Close | Open the profile, move to a page, pause, wait until a piece of text appears, close. |
| Act | Mouse click · Type text · Scroll · Scroll until | Human-timed input: click by the element's text (or coordinates), type into a field, scroll, or scroll down until something appears. |
| Read | Read page text · List elements · Screenshot | Read the page on the browser side (no script in the page), list actionable elements, or capture the frame. |
| Data | Set variable | Store a value to reuse later in the workflow. |
| Control | If · For (repeat) · While · Retry · Try · Assert · Stop | Branch on a condition, repeat a set of steps, retry on failure, try a step with a fallback, assert the page is in the expected state, or stop the run. |
This is a quick tour of the groups. For the complete, always-current list — every block with its fields and an example — see Blocks & Actions.
Fields. Selecting a block shows its fields in the Inspector. A few examples: Go to URL takes the address; Wait for element takes the text to wait for and an optional timeout; Mouse click takes the element's visible text (or an x,y pair); Type text takes the text, the field to focus first, and whether to press Enter; If takes a condition (text present, element present, or a variable equals a value); For repeats a number of times or once per row of your data. Required fields are marked, and Save won't accept a block with a required field missing.
Branches & loops
Control blocks are containers: an If, For or Retry block holds the steps that run inside it, nested and indented on the timeline. There are no wires to draw — the order of a workflow is simply the order of the blocks, and you reorder by dragging.
- If — run one set of steps when a condition holds (for example, a piece of text is present), and optionally another set otherwise.
- For (repeat) — run a set of steps a number of times, or once for each row of your data source.
- Retry — run a set of steps, and try again if they fail, up to a limit.
- Stop — end the run, with an optional reason.
Variables
A variable holds a value you reuse. Drag a variable into a field to insert it as {{name}} — for example, typing {{username}} into a login field.
Your variables come from several places, gathered into one list in the Inspector:
- variables you declare on the workflow,
- columns of a data source (a CSV), when you loop over rows,
- a Set variable block,
- the result of a Read page text or List elements block.
Picking an element
Blocks that act on the page — Mouse click, Wait for element and the like — find their target by its visible text. That is enough most of the time. When several elements share the same text (three "Follow" buttons, a "Next" in both the header and the footer), the block would be ambiguous, so the editor gives you a small element helper in the Inspector to pin down exactly one:
| Field | What it does |
|---|---|
| Text | The visible text to match. |
| Match | Contains (default) or Exact — whether the text is part of, or all of, the element's label. |
| Scope | Limit the search to a container (for example, only inside the sidebar), so the same text elsewhere is ignored. |
| Nth | When more than one still matches, pick the 1st, 2nd, … by index. |
Test & run
- Validate checks the workflow for problems before you run it.
- ▶ Run checks it again, then runs it on the profile selected in your Profiles list — one profile per run.
The editor runs one profile at a time; to run many profiles from code, see Running accounts at scale.
Everything a workflow does still passes through Orbe's discipline layer — the proxy check, checkpoint stops, account-safety pacing and the out-of-hours warning. See Safe by default.
Build with AI
Describe what you want in plain words to your own AI assistant — Claude, Cursor, or any MCP client — and let it draft the workflow for you. This works through Orbe's MCP server with two data-only tools:
list_blocks— the assistant reads the blocks Orbe supports and their fields, so it builds with exactly these steps and nothing else.submit_flow— the assistant sends the workflow it wrote into Orbe as a draft. It is validated and saved, but never run — it opens in the editor for you to review, adjust and run yourself.
Shortcuts & block controls
Add a block by dragging it from the palette. Reorder by dragging too: drop a block onto another to place it right after it, or inside a control block to nest it. Right-click a block for Duplicate (copies it, with any blocks inside it, right after the original) and Delete step — both can be undone.
| Key | Action |
|---|---|
Ctrl+Z / Ctrl+Y | Undo / redo |
Ctrl+S | Save — to the file you last saved or opened; the first time, it asks where |
Delete / Backspace | Delete the selected block (when the canvas has focus — typing in a field never deletes a block) |
Safety
- A workflow is data, not code. It is a list of Orbe's own steps — there is no block that runs arbitrary Python or JavaScript, so a workflow you import or that an assistant drafts cannot do anything outside the steps Orbe already offers.
- Imported and AI-drafted workflows are validated before they run — an unknown step is refused.
- Runaway protection. A run has a ceiling on total steps and time (and a cap on how long any single wait can block), so a broken or shared workflow cannot spin forever.
- Stealth is kept. A workflow runs through the internal channel exactly like the SDK — no CDP, no debug port, human-timed input.
See also Automation & SDK and Running accounts at scale.