Tools

execute_playwright_code

Run Playwright/TypeScript code against a browser session

Execute Playwright/TypeScript automation code against an existing Kernel browser session. This tool is a thin passthrough: it runs your code in the browser's VM and returns the result. It does not manage browser lifecycle — create and delete sessions with manage_browsers.

session_id is required. Unlike earlier versions, this tool no longer creates a browser when session_id is omitted, and no longer deletes the browser after execution. Create a session with manage_browsers (action create), pass its session_id here, then delete it with manage_browsers when done.
Use computer_action with the screenshot action instead of page.screenshot() in your code. To read page state, return only what you need — prefer a targeted selector (e.g. await page.locator('h1').innerText()) or a region-scoped accessibility snapshot (e.g. await page.locator('main').ariaSnapshot()) rather than dumping the whole page.

Parameters

ParameterDescription
codePlaywright/TypeScript code with page, context, and browser objects in scope; the value you return is sent back. Required.
session_idExisting browser session ID to run against. Required.

Example

{
  "session_id": "session_abc123",
  "code": "await page.goto('https://example.com'); return await page.title();"
}

Returns:

{
  "success": true,
  "result": "Example Domain"
}
To capture a video recording around your automation, start a recording with manage_replays before your calls and stop it when done.

On this page