# Record Scenarios from Chrome

Use the Composal Recorder side panel to record a QA flow, mark required checks, edit and submit a Scenario, and follow its run.

Use **Composal Recorder** to turn a flow you act out in Chrome into an editable Scenario. Its side panel shows captured steps, required checks, submission, and the resulting run.

## Install the extension

Composal Recorder is currently an **unpacked extension** for Chrome or Chromium 116 or later. Chrome Web Store distribution is not available yet.

If your organization has Recorder enabled, open **Verify → Recorder** in the dashboard and select **Download for Chrome**. You can also find it under **Integrations → Composal Recorder**. Extract the ZIP into a folder you’ll keep, open `chrome://extensions`, enable **Developer mode**, select **Load unpacked**, and choose the extracted folder. Pin Composal Recorder to your toolbar. The dashboard includes installation and connection instructions; choose the Project, Persona, and Environment inside the extension.

To update, finish your recording, replace the extension folder’s contents with a fresh download, and click **Reload** on Chrome’s extensions page.

You can also build it from the [Composal source repository](https://github.com/ComposalAI/vex) if you have access:

```sh
mise exec -- pnpm install
mise exec -- pnpm --filter @composal/recorder package
```

Open `chrome://extensions`, enable **Developer mode**, select **Load unpacked**, and choose `packages/composal-recorder/dist` from that checkout. Pin **Composal Recorder** to the toolbar. A ZIP of the build is also created at `packages/composal-recorder/composal-recorder.zip`; extract it before loading.

If you do not have a build, use [the local CLI recorder](/docs/verify/local-recorder) or **Record a Scenario** in your Project.

## Connect and start recording

1. Open the app you want to test. Use a test account: the recording uses your current Chrome session and your actions change the app normally.
2. Click the **Composal Recorder** toolbar icon to open the side panel.
3. Choose **Connect to Composal**. Approve the named recorder connection and choose your organization in the sign-in tab. Return to the app and choose a Project in the sidebar.
4. Choose **Start recording** and allow website access once.
5. Act out the journey. The sidebar shows clicks, committed field changes, navigation, and required checks as steps. Use **Pause** and **Resume** as needed.

Recording follows your journey across existing tabs, new tabs, windows, websites, and embedded frames. Switch between apps and follow redirects normally; changing sites does not pause capture. File selections are recorded as upload steps with their filenames. For a separate private Chrome window, use `com verify scenarios record --guided` instead.

## Mark a required check

Choose **Mark important element** in the sidebar, or press **Ctrl+Shift+M while the app page has focus**. Move over the page and click the element you want to mark. This selection does not activate the element's normal app action.

In the sidebar, write the specific action or assertion the test must keep, then choose **Add required check**. For example, select **Quantity** and write “Enter 0 and verify that Quantity must be positive appears.” The instruction becomes a required step at that point in the journey. Press **Escape** to cancel page selection.

This shortcut applies to the local Chrome page. In the hosted **Record a Scenario** viewer, press **Ctrl+Shift+M in the outer browser while the remote screen has focus** to mark the currently focused remote element and open its required-check form.

## Review and submit

Choose **Stop and review**. Enter a Scenario name, select an existing Project Persona, and write the expected results, one per line. Review every captured step. Edit, move, remove, or add steps before submitting.

Choose **Create Scenario in Composal**. Your Project permissions control whether you can submit. The extension uploads only this reviewed Scenario, and safe retries retain its creation identity. After submission, edits use **Save changes to Composal** and create a revision. If another editor changed the Scenario, Composal refuses the stale version; reconcile with the latest saved Scenario rather than overwriting it.

For an account Persona that Verify signs in automatically, remove recorded sign-in setup from the journey and configure its [test credentials](/docs/verify/credentials) in the Project.

## Run and iterate

Choose an Environment, then **Run saved Scenario**. This starts a hosted run as soon as its browser plans are ready. The run uses the Environment's URL and configured test accounts. Your local Chrome cookies and session are not uploaded.

The sidebar shows the run's real state and result. Failed runs can include a summary and the blocking step. Use **Open run and evidence** for the full report, captures, and recording. Edit the Scenario, save the revision, then choose **Run saved Scenario again** to check the change.

## Recover a draft

Drafts and edits stay in this browser when you close the sidebar. Reopen it to continue. After restarting Chrome, the draft opens for review so recording does not restart silently.

Choose **Export draft** to save a Scenario YAML file for backup or the CLI. **New recording** asks before discarding the local draft; saved Scenarios and runs remain in Composal. Discard the draft before disconnecting. You can revoke the **Composal Recorder** access token in your Composal account settings.

## Permissions and limits

- Allow website access once when recording starts. The recorder follows tabs and sites automatically until you pause or stop. If access is later changed in Chrome settings, restore it from the sidebar to continue.
- Recording pauses at **1,000 steps** and retains the full captured draft. Continue a longer journey as another Scenario.
- Password and one-time-code values are excluded. Use test accounts and review the draft before submitting.
- Composal credentials remain in trusted extension storage and never reach page scripts. Nothing is uploaded until you submit the Scenario.
- File selections become steps automatically. Use [Project fixtures](/docs/verify/scenarios) to make the selected files available to hosted runs. Chrome-protected pages and native controls are browser UI; recording continues when you return to a website.

See [the local recorder guide](/docs/verify/local-recorder) for private Chrome recording and [Scenario authoring](/docs/verify/scenarios) for refining the saved test.
