playwright-cli
Automate browser interactions, test web pages and work with Playwright tests.
Use this plugin when the task involves native Windows desktop apps or browser surfaces that do not have a stronger structured integration available.
Claude Code
$ npx -y skills add virtengine/bosun --skill windows-desktop-control --agent claude-code
Codex
$ npx skills add virtengine/bosun --skill windows-desktop-control -a codex -y
Cursor
$ npx skills add virtengine/bosun --skill windows-desktop-control -a cursor -y
Gemini CLI
$ npx skills add virtengine/bosun --skill windows-desktop-control -a gemini-cli -y
GitHub Copilot
$ npx skills add virtengine/bosun --skill windows-desktop-control -a github-copilot -y
OpenCode
$ npx skills add virtengine/bosun --skill windows-desktop-control -a opencode -y
Windsurf
$ npx skills add virtengine/bosun --skill windows-desktop-control -a windsurf -y
Use this plugin when the task involves native Windows desktop apps or browser surfaces that do not have a stronger structured integration available.
Pick one of these modes before taking action:
1. UIA-first mode: preferred for native Windows apps with accessible controls. 2. Visible-display mode: for quick manual-adjacent automation on the user’s active screen. 3. Isolated-display mode: for non-interrupting automation on a secondary or virtual display that Windows exposes. 4. Coordinate-fallback mode: for canvas apps, remote surfaces, or controls that UI Automation cannot reach reliably.
1. Call `list_windows` and `focus_window` to target the correct app. 2. Call `uia_inspect` to find stable selectors. 3. Use `uia_invoke`, `type_text`, or `press_keys`. 4. Capture a `screenshot` after important mutations.
1. Call `list_displays` and choose the non-user display by `displayId` or `displayName`. 2. Launch or find the app with `launch_app` or `list_windows`. 3. Call `move_window` to place the window on that display. Use `fitToDisplay: true` when full-display placement is better than a preserved window size. 4. Use `screenshot` against that display, then prefer `uia_*` actions. 5. If coordinate fallback is required, pass `displayRelative: true` so coordinates stay local to the isolated display.
1. Capture a display-specific `screenshot`. 2. Use `click`, `double_click`, `drag`, or `scroll` with `displayRelative: true` when you are targeting a specific monitor. 3. Re-capture a `screenshot` after each mutation that could change layout or focus.
1. Use `screenshot` with `virtualScreen: true` to inspect the full multi-monitor layout. 2. Use `list_displays` to resolve the right target display before moving windows or clicking.
Automate browser interactions, test web pages and work with Playwright tests.
Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…