> For the complete documentation index, see [llms.txt](https://docs.flxbl.io/flxbl/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flxbl.io/flxbl/codev/inspect/browser-sessions.md).

# Browser Sessions

Sometimes you need to actually click through a change, not just run tests — to reproduce a bug, walk a stakeholder through a feature, or sanity-check a pull request in a real org. Browser Sessions give you a cloud browser, already logged in to a review environment, that you drive live and that records itself for replay.

<figure><img src="/files/9XnNjJjl9kU5iA0hS31h" alt="The Browser Sessions page"><figcaption><p>Browser Sessions — live and recorded cloud-browser sessions, with replay</p></figcaption></figure>

## Recording a session

There are two ways to start one.

On a pull request, comment `sfp record`. codev starts a browser on the [review environment](/flxbl/codev/inspect/review-environments.md) assigned to that pull request and replies with a link to open it. (The PR needs a review environment first — comment `sfp assign` if it does not have one.)

From the Browser Sessions page, or an environment's **Browser Sessions** tab, use **Record session** and pick either a pull request's review environment or a named environment. You can point the session at a Lightning path to land on when it opens.

A session takes around twenty seconds to provision. Once it is **live**, open the browser tab and drive it — everything you do is recorded. The browser is logged in to the org through Salesforce's frontdoor, so you never handle an access token yourself.

## Replaying

Stop a session with `sfp record stop` or the **Stop** button, and codev finalises the recording. Every session has a **Replay** — a video you can watch afterwards, with a page selector when the session moved across several pages. Replays are available on the Browser Sessions page and on an environment's Browser Sessions tab, and a per-pull-request view gathers the sessions for one PR.

## Lifecycle and limits

A session runs for up to 60 minutes; you can extend an active one in steps of up to 15 minutes, never past that cap. It ends when you stop it, when the pull request is closed or merged, or when the cap is reached. Its status moves through **provisioning → live → ended** (or **expired** / **error**).

## Who can record

Recording against a pull request's review environment is open to project **members** — the review-environment assignment is the reviewer's own grant of access. Recording against a named, shared environment auto-logs into that org, so it is limited to **owners**.

## Setup

Browser Sessions are powered by [Browserbase](https://www.browserbase.com). Configure the Browserbase integration once — an API key and a project ID — under **Settings → Integrations → Browserbase**. Until it is configured, the page prompts you to set it up.

## Related

* [Review Environments](/flxbl/codev/inspect/review-environments.md)
* [IssueOps: comment commands](/flxbl/codev/issueops/issueops.md)
* [Environments: access and locks](/flxbl/codev/environments/access-and-locks.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.flxbl.io/flxbl/codev/inspect/browser-sessions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
