Skip to main content

Browser sessions

Unless otherwise noted, id arguments refer to the browser session ID, not invocation IDs returned by Kernel commands.

kernel browsers list

List all browser sessions.
FlagDescription
--output json, -o jsonOutput raw JSON array.

kernel browsers create

Create a new browser session.
FlagDescription
--stealthEnable stealth mode to reduce automation fingerprints.
--headlessLaunch without GUI/VNC access.
--kioskLaunch in Chrome kiosk mode.
--start-url <url>Initial page to open on launch.
--output json, -o jsonOutput raw JSON object.

kernel browsers delete <session-id>

Delete a browser session. Use -y to skip confirmation.
FlagDescription
--yes, -yBypass the confirmation prompt.

kernel browsers view <session-id>

Return a live view URL for remote monitoring and control.
FlagDescription
--output json, -o jsonOutput JSON with liveViewUrl field.

kernel browsers get <session-id>

Get detailed information about a browser session.
FlagDescription
--output json, -o jsonOutput raw JSON object.

kernel browsers update <session-id>

Update a running browser session — change or remove its proxy, load a profile, resize the viewport, or toggle telemetry.
FlagDescription
--proxy-id <id>Set the proxy for the session.
--clear-proxyRemove the proxy from the session.
--profile-id <id>Load a profile by ID (only into a session without one).
--profile-name <name>Load a profile by name (mutually exclusive with --profile-id).
--save-changesSave changes back to the profile when the session ends.
--viewport <WxH@fps>Set viewport size (e.g. 1920x1080@25).
--forceForce a viewport resize even during an active live view or recording.
--telemetry <spec>Toggle telemetry: all to enable, off to disable, or per-category like network=on,page=off.
--output json, -o jsonOutput raw API response as JSON.

kernel browsers curl <session-id> <url>

Make an HTTP request through the browser’s network stack, inheriting its TLS fingerprint, cookies, proxy, and headers. Works like curl, but requests go through the browser session. See Browser curl for examples.
FlagDescription
--request <method>, -XHTTP method (default: GET).
--header <"Key: Value">, -HAdd a request header (repeatable).
--data <body>, -dRequest body.
--data-file <path>Read the request body from a file.
--head, -IFetch headers only.
--include, -iInclude response headers in the output.
--dump-header <path>, -DWrite received headers to a file (- for stdout).
--output <path>, -oWrite the response body to a file.
--fail, -fFail with no body output on HTTP errors.
--silent, -sSuppress progress output.
--max-time <seconds>Maximum time allowed for the request (default: 30).
--write-out <format>, -wPrint text after completion (supports %{http_code}, %{time_total}, %{size_download}).

kernel browsers ssh <session-id>

Open an interactive SSH session to a browser VM. Requires websocat to be installed locally.
FlagDescription
-i, --identity <path>Path to SSH private key (generates ephemeral if not provided).
-L, --local-forward <spec>Local port forwarding (localport:host:remoteport).
-R, --remote-forward <spec>Remote port forwarding (remoteport:host:localport).
--setup-onlySetup SSH on VM without connecting.

Browser logs

kernel browsers logs stream <session-id>

Stream browser logs from the supervisor or a file path.
FlagDescription
--source <source>path or supervisor (required).
--followContinue streaming (default: true).
--path <path>File path when --source=path.
--supervisor-process <name>Supervisor process when --source=supervisor (e.g. chromium).
Log lines longer than 64 KiB are truncated.

Telemetry

kernel browsers telemetry stream <session-id>

Stream live telemetry events (network, console, interaction, page, and system) from a browser session.
FlagDescription
--categories <list>Filter by category: api, console, interaction, network, page, system.
--types <list>Filter by event type (e.g. network_response,console_error).
--seq <n>Resume after sequence number N; replays events with seq > N (default: -1, stream from now).
--output json, -o jsonOutput newline-delimited JSON envelopes.

Replays

kernel browsers replays list <session-id>

List replay recordings for a browser session.
FlagDescription
--output json, -o jsonOutput raw JSON array.

kernel browsers replays start <session-id>

Start recording a replay.
FlagDescription
--framerate <fps>Recording framerate in frames per second.
--max-duration <seconds>Maximum recording duration.
--output json, -o jsonOutput raw JSON object.

kernel browsers replays stop <session-id> <replay-id>

Stop an active replay recording.

kernel browsers replays download <session-id> <replay-id>

Download a replay video.
FlagDescription
-o, --output <path>Output path for the downloaded replay.

Process control

kernel browsers process exec <session-id> [--] [command...]

Execute a command synchronously inside the browser VM.
FlagDescription
--command <cmd>Command to run; defaults to trailing args.
--args <args>Arguments for the command.
--cwd <path>Working directory.
--timeout <seconds>Execution timeout.
--as-user <user>Run as a specific user.
--as-rootRun as root.
--output json, -o jsonOutput raw JSON object.

kernel browsers process spawn <session-id> [--] [command...]

Execute a command asynchronously in the browser VM.
FlagDescription
--command <cmd>Command to run; defaults to trailing args.
--args <args>Arguments for the command.
--cwd <path>Working directory.
--timeout <seconds>Execution timeout.
--as-user <user>Run as a specific user.
--as-rootRun as root.
--output json, -o jsonOutput raw JSON object.

kernel browsers process kill <session-id> <process-id>

Send a signal to a process running in the browser VM.
FlagDescription
--signal <signal>Signal to send (TERM, KILL, INT, HUP; default: TERM).

kernel browsers process status <session-id> <process-id>

Check process status information.

kernel browsers process stdin <session-id> <process-id>

Write base64-encoded data to a process stdin.
FlagDescription
--data-b64 <data>Base64 payload to write (required).

kernel browsers process stdout-stream <session-id> <process-id>

Stream stdout and stderr from a process.

Filesystem

kernel browsers fs new-directory <session-id>

Create a directory in the browser VM.
FlagDescription
--path <path>Absolute directory path to create (required).
--mode <mode>Directory mode in octal.

kernel browsers fs delete-directory <session-id>

Delete a directory.
FlagDescription
--path <path>Absolute directory path to delete (required).

kernel browsers fs delete-file <session-id>

Delete a file.
FlagDescription
--path <path>Absolute file path to delete (required).

kernel browsers fs download-dir-zip <session-id>

Download a directory as a zip archive.
FlagDescription
--path <path>Absolute directory path to download (required).
-o, --output <path>Output zip file path.

kernel browsers fs file-info <session-id>

Retrieve metadata for a file or directory.
FlagDescription
--path <path>Absolute file or directory path (required).
--output json, -o jsonOutput raw JSON object.

kernel browsers fs list-files <session-id>

List directory contents.
FlagDescription
--path <path>Absolute directory path (required).
--output json, -o jsonOutput raw JSON array.

kernel browsers fs move <session-id>

Move or rename a file or directory.
FlagDescription
--src <path>Absolute source path (required).
--dest <path>Absolute destination path (required).

kernel browsers fs read-file <session-id>

Read a file from the browser VM.
FlagDescription
--path <path>Absolute file path (required).
-o, --output <path>Output path for the downloaded file.

kernel browsers fs set-permissions <session-id>

Update file permissions or ownership.
FlagDescription
--path <path>Absolute path (required).
--mode <mode>File mode bits (octal string).
--owner <user>New owner username or UID.
--group <group>New group name or GID.

kernel browsers fs upload <session-id>

Upload one or more files.
FlagDescription
--file <local:remote>Local-to-remote file mapping (repeatable).
--dest-dir <path>Destination directory for uploads.
--paths <paths>Local file paths to upload.

kernel browsers fs upload-zip <session-id>

Upload a zip file and extract it.
FlagDescription
--zip <path>Local zip file path (required).
--dest-dir <path>Directory to extract into (required).

kernel browsers fs write-file <session-id>

Write a local file to the browser VM.
FlagDescription
--path <path>Destination absolute file path (required).
--mode <mode>File mode in octal.
--source <path>Local source file path (required).

Computer controls

kernel browsers computer click-mouse <session-id>

Click the mouse at specific coordinates.
FlagDescription
--x <coordinate>X coordinate (required).
--y <coordinate>Y coordinate (required).
--num-clicks <n>Number of clicks (default: 1).
--button <button>Mouse button (left, right, middle, back, forward).
--click-type <type>down, up, or click (default: click).
--hold-key <key>Modifier keys to hold (repeatable).

kernel browsers computer move-mouse <session-id>

Move the mouse pointer.
FlagDescription
--x <coordinate>X coordinate (required).
--y <coordinate>Y coordinate (required).
--hold-key <key>Modifier keys to hold (repeatable).

kernel browsers computer screenshot <session-id>

Capture a screenshot.
FlagDescription
--to <path>Output PNG path (required).
--x <coordinate>Region capture top-left X coordinate.
--y <coordinate>Region capture top-left Y coordinate.
--width <pixels>Region width.
--height <pixels>Region height.

kernel browsers computer type <session-id>

Type text into the browser VM.
FlagDescription
--text <text>Text to type (required).
--delay <ms>Delay between keystrokes in milliseconds.

kernel browsers computer press-key <session-id>

Press one or more keys.
FlagDescription
--key <key>Key to press (repeatable).
--duration <ms>Duration to hold keys.
--hold-key <key>Modifier keys to hold (repeatable).

kernel browsers computer scroll <session-id>

Scroll the mouse wheel.
FlagDescription
--x <coordinate>X coordinate (required).
--y <coordinate>Y coordinate (required).
--delta-x <pixels>Horizontal scroll amount (+right, -left).
--delta-y <pixels>Vertical scroll amount (+down, -up).
--hold-key <key>Modifier keys to hold (repeatable).

kernel browsers computer drag-mouse <session-id>

Drag the mouse along a path.
FlagDescription
--point <x,y>Points to drag through (repeatable).
--delay <ms>Delay before dragging starts.
--button <button>Mouse button (left, middle, right; default: left).
--hold-key <key>Modifier keys to hold (repeatable).

Playwright

kernel browsers playwright execute <session-id> [code]

Execute Playwright/TypeScript code against a running browser session.
FlagDescription
--timeout <seconds>Maximum execution time for the snippet.

Extension management

kernel extensions list

List all uploaded extensions.
FlagDescription
--output json, -o jsonOutput raw JSON array.

kernel extensions upload <directory>

Upload an unpacked extension directory.
FlagDescription
--name <name>Optional unique extension name.
--output json, -o jsonOutput raw JSON object.

kernel extensions download <id-or-name>

Download an extension archive.
FlagDescription
--to <directory>Output directory (required).

kernel extensions download-web-store <url>

Download an extension from the Chrome Web Store.
FlagDescription
--to <directory>Output directory (required).
--os <os>Target OS (mac, win, linux; default: linux).

kernel extensions delete <id-or-name>

Delete an uploaded extension.
FlagDescription
--yes, -ySkip confirmation.

kernel browsers extensions upload <session-id> <extension-path>...

Upload one or more unpacked Chrome extensions directly into a running browser session.