Skip to main content

Overview

Each step has an action object with a required type field. The available fields depend on the action type.

Common action fields

FieldTypeRequiredDescription
typeActionTypeYesOne of the 12 action types below
selectorSelectorDependsTarget element (required for click, input, select, hover)
valuestringDependsText value — supports {{variable}} template syntax

Action types

click

Click on a DOM element.
action:
  type: click
  selector:
    tagName: button
    innerText: "Submit"
FieldRequiredDescription
selectorYesElement to click

input

Enter text into a form field. The field is cleared before typing.
action:
  type: input
  value: "{{email}}"
  selector:
    tagName: input
    inputType: email
FieldRequiredDescription
selectorYesInput element
valueYesText to enter (supports {{variable}} templates)

select

Choose an option from a <select> dropdown.
action:
  type: select
  value: "us-west-2"
  optionText: "US West (Oregon)"
  selector:
    tagName: select
    name: "region"
FieldRequiredDescription
selectorYesSelect element
valueNoOption value attribute
optionTextNoVisible option text (used when value is not set)
Navigate the browser to a URL.
action:
  type: navigate
  url: "https://app.example.com/dashboard"
FieldRequiredDescription
urlYesDestination URL

scroll

Scroll the page. No additional fields required — the executor scrolls the viewport.
action:
  type: scroll

wait

Wait for a specified condition or duration. Useful for pages that load asynchronously.
action:
  type: wait

hover

Hover over an element to trigger menus or tooltips.
action:
  type: hover
  selector:
    tagName: div
    ariaLabel: "User menu"
FieldRequiredDescription
selectorYesElement to hover

extract

Run a JavaScript expression in the page context and capture the result.
action:
  type: extract
  script: "document.querySelector('.total').textContent"
captures:
  - name: totalAmount
    strategy: expression
    expression: "{{__extracted}}"
FieldRequiredDescription
scriptYesJavaScript to evaluate in the page
The extracted value is available as {{__extracted}} for use in captures.

download

Download a file triggered by a click or navigation.
action:
  type: download
  downloadPath: "./downloads/report.csv"
  selector:
    tagName: a
    innerText: "Download CSV"
FieldRequiredDescription
selectorNoElement that triggers the download
downloadPathNoLocal path to save the file

export

Export a memory collection to a CSV or JSON file.
action:
  type: export
  exportCollection: "products"
  exportFormat: csv
  exportPath: "./output/products.csv"
FieldRequiredDescription
exportCollectionYesName of the memory collection
exportFormatYescsv or json
exportPathYesOutput file path

memory

Perform a memory operation (append or aggregate). This action type is a shorthand — you can also use memoryOperations on any step.
action:
  type: memory
See Memory Operations for details.

key

Press a keyboard key or key combination.
action:
  type: key
  keys: "Enter"
FieldRequiredDescription
keysYesKey name in Playwright format (e.g., Enter, Tab, ArrowDown, Control+a)

Summary table

ActionSelectorValueExtra fields
clickRequired
inputRequiredRequired
selectRequiredOptionaloptionText
navigateurl
scroll
wait
hoverRequired
extractscript
downloadOptionaldownloadPath
exportexportCollection, exportFormat, exportPath
memory
keykeys