~4 min5 / 5

Editing Recordings

Recordings are a first draft — great for capturing the happy path quickly, but they usually need cleanup before they are ready for production. This guide shows you how to review, refine, and harden a recorded workflow.

Opening a Recording in the Designer

  1. Stop the recording session — click Stop Recording or press Escape
  2. The Recording Review dialog shows all captured actions as a list
  3. Click Open in Designer to load the workflow onto the canvas
  4. Alternatively, open the saved .gbw file from Projects → Recent

Common Cleanup Tasks

IssueHow to fix
Extra clicks or accidental actionsSelect the activity on the canvas and press Delete
Hardcoded text in TypeIntoReplace the literal string with a variable: {"{{"} inputText {"}}"}
Brittle selector (uses positional idx)Click the activity → Properties → open Selector Editor → rebuild with automationid or name
Missing delays / race conditionsInsert WaitForElement before flaky steps instead of fixed Delay
No error handlingWrap critical steps in Try/Catch — select activities → right-click → Wrap in Try/Catch
Duplicate steps (e.g., two clicks on same button)Delete the redundant one — keep the one with the better selector
Wrong activity type (e.g., Click recorded instead of TypeInto)Delete the wrong activity, drag the correct one from Activity Catalog, reconfigure properties

Refining Selectors

Recorded selectors are generated automatically and may use fragile attributes. To improve one:

  1. Click the activity on the canvas
  2. In the Properties Panel, click the 📎 Selector field
  3. Click Open Selector Editor
  4. Use Re-indicate Element to re-pick the target from the live application
  5. Review the attribute table — uncheck fragile attributes (e.g., idx, dynamic class names)
  6. Click Validate — a green tick confirms the element is found
  7. Click Save

Parameterising a Recording

Turn a recorded one-off automation into a reusable workflow by replacing hardcoded values with variables:

  1. Open the Variables Panel (Ctrl + Shift + V)
  2. Add a new variable for each value that should change between runs (e.g., customerEmail, invoiceId)
  3. In each activity's property field, replace the literal value with {{variableName}}
  4. When the workflow is deployed to Orchestrator, these variables can be passed as job input

Adding Loops and Conditions

Most recordings capture a single iteration. To process multiple items:

  1. Select all activities that should repeat
  2. Right-click → Wrap in ForEach (or drag a ForEachRow / While around them)
  3. Configure the loop variable (e.g., currentRow)
  4. Update inner activities to reference the loop variable instead of hardcoded values
Use the AI CopilotSelect a group of recorded activities and ask the Copilot:"Wrap these steps in error handling and add a retry for the click" — it will suggest the refactored structure without losing your selector configurations.

Validating Before Deployment

  • Run the workflow with F5 on the target machine to confirm all selectors resolve
  • Check the Output Panel for warnings about unresolved variables or failed waits
  • Use F6 (Debug) with breakpoints to step through and inspect variable values at each stage
  • Once clean, upload to Orchestrator → Workflow Registry for team-wide access
Was this helpful?