VisualQ

Recorder

Capture journeys on your live site with the VisualQ Detect Chrome extension.

Recording happens through Scenario Studio and the VisualQ Capture Chrome extension — not through an in-app screenshot overlay.

Learn on site (Scenario Studio)

  1. Open Scenario Studio and build your first steps manually (optional).
  2. Click Learn on site on the blocks screen.
  3. Install or open the VisualQ Capture extension and enter the pairing code.
  4. Open your target URL in Chrome (the dialog shows a clickable link).
  5. On site: use the side panel capture modes (see below).

Confirmed steps appear in the Studio step list in real time. When you are done, import or save from Scenario Studio — steps sync live while you record.

Side panel capture modes

After pairing, the VisualQ Detect side panel on your target site offers four modes:

ModeBehavior
PauseNo capture
ARMCaptures the next click only, then pauses — opens the Detect modal to confirm
ContinuCaptures clicks, form fills, and SPA navigations — Detect modal on each action
AutoSame capture as Continu — automatically matches library steps or creates new ones (AI when needed). Steps marked ⚠ need review in Studio

Keyboard shortcuts: Alt+Shift+P Pause · Alt+Shift+A ARM · Alt+Shift+C Continu · Alt+Shift+O Auto

Say wizard (natural language)

The Say tab lets you add steps one intention at a time (like QA Studio):

  1. Choose Step type — use Navigation for clicks (e.g. accept cookies); Validation only to read a value on the page.
  2. Enter one short instruction and Execute.
  3. The extension plans, runs actions in your tab (up to 3 retries), then Accept or Reject.
  4. Optional Pin Playwright opens the draft editor for a deterministic locator before accept.

Say uses screenshot + DOM context on VisualQ's servers. Each run has a trace id for support. Replay in CI uses saved Playwright steps, not the LLM.

Agent mode

The Agent tab (link from Say) runs a multi-turn loop: the extension sends each screenshot to VisualQ, VisualQ plans the next action, and the extension executes it in-page. The loop continues until you Stop, the agent marks the journey complete, or turn limits are hit. Finish synthesizes milestone Playwright/Gherkin steps onto the stack (not one step per pagination click).

Credentials and model configuration stay on VisualQ — the extension uses a short-lived recorder token, never third-party API keys.

Cross-origin iframe content cannot be targeted from Say — use Advanced → Record instead.

Headless recorder (agents, no extension)

Cloud agents and CI can record journeys without the Chrome extension via MCP invoke (scope mcp_full, plan Hobby+):

  1. agent_start_recording with objective, startUrl, and confirm: true
  2. Loop agent_recording_turn with sessionId (VisualQ runs a managed browser in the cloud and plans each step)
  3. agent_finish_recording with confirm: true — returns synthesized steps and an optional deepLink to Scenario Studio

Available on plans that include MCP full scope (Hobby+). Persist steps with frt_save_feature_draft.

See MCP Tools — headless recorder and MCP integration.

FRT secrets

For passwords and API keys, use the Secret step type in Say. The extension only stores key names (Vars · Secrets). Set values per environment in Settings → Environments → Secrets (encrypted server-side). At record time the extension resolves values over HTTPS; they are never stored in Gherkin or chrome.storage. The same keys are used when FRT scenarios run in the cloud at execution time.

Secret steps use the same vision planner as Navigation (screenshot + full DOM + interactives catalog) to pick the target field; the vault value is injected at execution time.

FRT runtime variables

Use Retrieve value and Assertion in Say to capture and check variables during recording (sessionVariables in the Vars · Secrets drawer). Saved scenarios use Cucumber-safe steps (retrieve … as variable "NAME", variable "NAME" equals "…"). At run time VisualQ keeps a per-scenario variable bag for assertions and extractions. Optional initial variables can be passed on POST /api/frt/run as initialVariables or ci.frtVariables in GitHub Actions.

Complete a single step

From the step list or verify screen, use Complete this step to pair the extension and capture one missing step definition for an existing draft row.

Limits

  • Recording is scoped to the allowed host from your scenario base URL.
  • Pairing codes expire after 15 minutes if the extension never connects.
  • Step matching uses the FRT step library; unknown interactions may require confirming a new step in the Detect modal.

See Roles, rate limits, audit log for API quotas on recorder endpoints.

On this page