Exekra Studio Guide
What is Exekra Studio?
Exekra Studio is the visual workflow designer authors use to build automations. It is an Electron desktop application for Windows that connects to your Hub over HTTPS to load and save workflows. The activity catalogue, including every property the activity exposes, is sourced from the same registry the Runner uses at execution time, so what you see in Studio matches what runs in production.
Studio uses a canvas-based interface powered by React Flow. Authors drag activities from a toolbox onto the canvas, connect them with edges, and configure their properties on the right.
First launch
Enter the Hub URL
On first launch, Studio asks for the HTTPS URL of your Hub (for example https://hub.example.local:8443). Studio caches this and reconnects automatically next time.
Sign in
Use the Developer account that was issued for you on the Hub. Once signed in, Studio loads your workflow list.
Open or create a workflow
Pick an existing workflow to continue editing, or start a new one. New workflows open with an empty canvas and the toolbox visible.
The workspace
Studio organizes the workflow editor into four main surfaces.
Toolbox
The catalogue of activities you can drag onto the canvas. Activities are grouped by category and searchable from the top of the toolbox.
Canvas
The visual surface where the workflow is built. Activities are connected by edges that define the order of execution. Branches and loops expand inline on the canvas.
Properties panel
Configuration for the selected activity. Each activity has its own property schema (inputs, optional fields, output variable names). Property editors are activity-aware so Excel, Email, Browser, Database, and other categories each get tailored controls.
Console panel
Real-time log output from test runs. Each line shows the activity, status, and any message. Useful for tracing data flow during authoring.
Building a workflow
Drag activities onto the canvas
Pick activities from the toolbox by name or by searching. Drop them where you want them on the canvas.
Connect activities with edges
Drag from the output handle of one activity to the input handle of the next. Sequential activities have a single outgoing edge. Branch activities (If, Switch) expose multiple labelled outgoing edges, one per branch.
Configure each activity
Click an activity to open its Properties panel. Fill in the required fields, set any optional ones, and name the output variable if the activity produces a result.
Use loops and branches where needed
Drop If, For Each, While, and other control-flow activities to express decisions and iteration. Activities can be nested inside branches and loops.
Test the workflow
Click Run to execute against a local Runner. The Console panel streams the execution log. Inspect variable values and step-by-step status as the workflow runs.
Save a draft or publish
Save while you iterate. When the workflow is ready, click Publish to promote the latest draft to a published version that triggers can fire.
Activities
Activities are the building blocks of every workflow. The catalogue ships with 147 activities across 16 categories, all sourced from a shared registry that Studio and Runner read at startup.
Info
For the full activity catalogue with every property, default value, and output variable, see the Activities reference.
The 16 toolbox categories:
| Category | Examples |
|---|---|
| API | HTTP Request, REST GET / POST / PUT / DELETE |
| Browser | Open Browser, Navigate, Click Element, Type Text, Get Text, Screenshot |
| Central Storage | Workflow-wide key / value storage activities |
| Data | Data table operations, transformations, filters, joins |
| Database | Execute Query, parameterized statements |
| Date & Time | Now, format, parse, add / subtract intervals |
| Documents | PDF, Word, PowerPoint read / write |
| Send via SMTP / Outlook / Office 365, Get Emails, Save Attachments | |
| Excel | Read Excel, Write Excel, Read / Write Cell, Pivot Tables, Execute Macro |
| File & Folder | Copy, move, delete, read, write files; ZIP operations |
| Logic & Loops | If, Switch, For Each, While, Do While |
| Remote File Transfer | FTP and SFTP get, put, list, delete |
| System | Run process, environment variables, system info |
| Text | Replace, split, trim, format, regex |
| User Interaction | Message box, input prompt, attended-mode confirmation |
| Workflow | Sub-workflow invocation, comment, log, stop |
Logic and control flow
Studio supports the structured control-flow primitives most automations need.
Available control flow
- If: True and False branches with a condition expression
- Switch: multiple case branches against a single value
- For Each: iterate over a list, data table rows, or array
- While and Do While: condition-driven loops
- Try / Catch: error containment with an alternate path
- Stop: terminate the workflow early
Branch and loop activities expand inline on the canvas. Activities dropped inside a branch belong to that branch; the same is true for loop bodies. Branches can be nested arbitrarily (for example, an If inside a branch of another If).
Variables and expressions
Variables flow data between activities. An activity that produces output writes to a named variable; downstream activities reference that variable in their inputs.
Variable syntax
Studio supports two reference forms. Use whichever is clearer for the situation; both are evaluated by the same expression engine.
| Form | When to use | Example |
|---|---|---|
| ${name} | Canonical variable reference. Recommended in plain-text inputs and messages. | Hello ${customer.firstName} |
| {expression} | Inline expression. Evaluates math, comparisons, function calls, and dotted variable paths. | Order total: {orderItems.length * 1.07} |
Dotted paths address nested fields on object-typed variables (for example, ${FileExists.path} or {response.body.userId}). Indexed access works too ({rows[0].name}).
Expressions you can write inside braces
- Arithmetic:
+ - * / % ** - Comparisons:
== != > < >= <= - Logical:
&& || ! - Math functions:
Math.round(),Math.floor(), and the rest of theMathAPI - String concatenation and template substitution
The expression evaluator is sandboxed; it rejects references to require, import, eval, window, document, process, and other host-side identifiers, so an expression cannot escape into Node or the renderer.
Variable scope
Variables produced inside a branch or loop body are scoped to that body. Variables produced at the top level of the workflow are available everywhere after the producing activity. Use the Variables panel to see what is in scope for the activity you have selected.
Browser recording
Click Record in the toolbar and enter a target URL. Interact with the page normally. The Exekra browser extension captures clicks, typed text, dropdown selections, and navigation, converting each action into a workflow activity. Each captured action stores a multi-layered selector (CSS, XPath, text-anchor) so the Runner can find the element reliably at replay. Password fields are masked automatically and never captured.
See Browser extension for the selector capture model and the supported recording action types.
Testing your workflow
Studio runs Test executions against a local Runner installed on the same machine. This lets you iterate without consuming Hub queue capacity.
- Run starts a Test execution from the beginning of the workflow.
- The Console panel streams logs in real time as each activity runs.
- Per-activity status colors on the canvas show what completed, what is running, and what failed.
- Output values are visible in the Variables panel after each activity completes; use them to confirm the workflow is producing what you expect.
- Stop a Test execution at any point with the Stop button in the toolbar.
Saving drafts and publishing
Authoring is non-destructive. While you iterate, every save creates a new draft version with an auto-incremented number; all drafts are retained for audit and rollback.
When the workflow is ready, click Publish. The latest draft is promoted to a published version. Only one version per workflow is published at a time; that version is what triggers fire and what the Hub assigns to Runners.
Tip
Published versions are immutable. To change a published workflow, edit the draft, save, and publish again. The previous published version remains accessible for audit and rollback.
What to read next
- Triggers: how to schedule a workflow, fire it from a webhook, or run it on demand
- Versioning & environments: promoting workflows across environments and rolling back
- Activities: the full activity catalogue
- Execution lifecycle: what happens after a published workflow is triggered
Was this page helpful?
A quick signal helps us prioritise improvements.