> ## Documentation Index
> Fetch the complete documentation index at: https://tbd-6fc993ce-hypeship-docker-sandboxes-integration.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Live View

Humans-in-the-loop can access the live view of Kernel browsers in real-time to resolve errors or take unscripted actions.

To access the live view, visit the `browser_live_view_url` provided when you create a Kernel browser:

<CodeGroup>
  ```typescript Typescript/Javascript theme={null}
  import Kernel from '@onkernel/sdk';

  const kernel = new Kernel();

  const browser = await kernel.browsers.create();
  console.log(browser.browser_live_view_url);
  ```

  ```python Python theme={null}
  from kernel import Kernel

  kernel = Kernel()

  browser = kernel.browsers.create()
  print(browser.browser_live_view_url)
  ```
</CodeGroup>

## Query parameters

The `browser_live_view_url` supports additional query parameters to customize the live view:

* `readOnly` (bool): when set to `true`, the view will be non-interactive.

Example:

```
https://api.onkernel.com/browser/live/<TOKEN>?readOnly=true
```

## Embedding in an iframe

The live view URL can be embedded in an iframe to integrate the browser view into your own application or dashboard.

```html theme={null}
<iframe src={browser.browser_live_view_url}></iframe>
```

<Info>
  Embedded third-party iframes like live view must have focus to receive keyboard events. On Safari, focus requires a user-initiated event — calling `.focus()` on the iframe element within a user-initiated event handler is recommended.

  To enable clipboard sharing, add `allow="autoplay; clipboard-read; clipboard-write"` to the iframe element.

  If your application uses a **Content Security Policy (CSP)**, you'll need to add the following directives to allow the live view iframe and its WebSocket connection:

  ```
  frame-src https://*.onkernel.com:8443;
  connect-src https://*.onkernel.com:8443
              wss://*.onkernel.com:8443;
  ```
</Info>

## Kiosk mode

Kiosk mode provides a fullscreen live view experience without browser UI elements like the address bar and tabs. You can enable kiosk mode when creating a browser by setting the `kiosk_mode` parameter to `true`.

<Info>
  Kiosk mode triggers a Chromium restart, which can take several seconds. Use [browser pools](/browsers/pools/overview) to access kiosk mode browsers faster.
</Info>

<CodeGroup>
  ```typescript Typescript/Javascript theme={null}
  const browser = await kernel.browsers.create({
      kiosk_mode: true
  });
  ```

  ```python Python theme={null}
  kernel_browser = kernel.browsers.create(
      kiosk_mode=True
  )
  ```
</CodeGroup>

## URL lifetime

`browser_live_view_url` becomes invalid once the browser is [deleted](/browsers/termination) manually or via timeout.
