Use this skill when the user explicitly wants to connect to a running Chrome browser, scan local CDP ports, specify a `cdp_port`, or share a single browser across multiple agents/tools. By default browser opens no debugging port; pass an explicit `cdp_port` only when the user wants another local tool to attach.
Deprecated: This reference supports the stable
browserimplementation. hatch. Prefer the unifiedbrowsertool when experimental mode is enabled.
By default, browser opens no debugging port: the browser is managed directly by Playwright. This skill covers the cases where a CDP port is wanted on purpose.
This skill focuses on more "explicit" CDP usage:
connect_cdp)cdp_port when launching the browserIn other words:
start opens no debugging port, so users typically do not need to understand or be aware of CDP detailsPrivacy Recommendation
The default
startexposes nothing — no debugging port is opened. Only passcdp_portwhen the user explicitly wants another local tool to attach, and warn about the exposure first.
Warning: One browser instance per workspace
Only one browser can be running or connected per workspace at a time. If a browser instance already exists, you must execute
stopfirst before switching to a new browser or a new CDP connection.
Use this skill only when the user explicitly expresses one of the following intentions:
In the following cases, you should typically not use this skill:
In these cases, use the standard start, adding headed=true if needed — refer to browser_visible.
Default scan range is 9000–10000:
{"action": "list_cdp_targets"}Specify a single port:
{"action": "list_cdp_targets", "port": 9222}Custom scan range:
{"action": "list_cdp_targets", "port_min": 8000, "port_max": 12000}Use cases:
Connect to an existing CDP endpoint:
{"action": "connect_cdp", "cdp_url": "http://localhost:9222"}Characteristics:
open, snapshot, click, type, etc.stop only disconnects — it will not close the external browserUse cases:
If the user explicitly requests a fixed port, or needs to provide the endpoint to other tools, specify cdp_port in start:
{"action": "start", "cdp_port": 9222}To also open a visible window:
{"action": "start", "headed": true, "cdp_port": 9222}Current behavior:
cdp_port is already in use, an error is raised immediately — it will not forcefully reuse the portcdp_port is not specified, no port is opened and none is chosen automaticallyTherefore:
cdp_port proactively when the user has not explicitly requested a portcdp_port explicitly when the user requests a fixed port or external sharingThe current port strategy for multiple workspaces:
127.0.0.1:cdp_port is already in use; if so, fails immediately and prompts the user to choose a different port or stop the old processThis means:
cdp_port, the later one will fail because the port is already in useCDP-related stop behavior differs depending on the type:
For example:
{"action": "start", "cdp_port": 9222}These browsers are launched and owned by QwenPaw. stop will:
For example:
{"action": "connect_cdp", "cdp_url": "http://localhost:9222"}These browsers are not launched by QwenPaw. stop will only:
In short:
start opens no debugging port; surface CDP concepts to the user only when they explicitly ask for themprivate_mode is an explicit parameter for each start call and is not persisted as workspace statef6dbc1d
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.