# Web Browse

Open a REAL external web page in Kiro Crew's Browser panel.

- Repository: https://github.com/kirodotdev/KiroCrew (4711 stars)
- Category: Testing
- License: Apache-2.0
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add kirodotdev/KiroCrew --skill web-browse -g -a claude-code -y`
Codex: `npx skills add kirodotdev/KiroCrew --skill web-browse -g -a codex -y`
Cursor: `npx skills add kirodotdev/KiroCrew --skill web-browse -g -a cursor -y`
Gemini CLI: `npx skills add kirodotdev/KiroCrew --skill web-browse -g -a gemini-cli -y`

## Description

Open a REAL external web page in Kiro Crew's Browser panel. Primary path is the `browser` MCP tool (native panel); playwright-cli is the fallback for remote/plain-browser sessions and attached logged-in browsers. Use when the user wants to VIEW or verify a public URL (dev server = web-preview).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Web Browse: open a real page for the user to look at

Your PRIMARY way to open a page in the dashboard's **Browser** panel is the
**`browser` MCP tool**, it drives the built-in Electron panel in-process, with
no separate Chromium and no macOS security prompt:

    browser(op="navigate", args={"url": "https://example.com"})

Other ops: `snapshot` (get element refs), then `click` / `type` / `press_key` /
`hover` / `select_option` / `screenshot` / `wait_for` / `back` / `console`. Call
`snapshot` first to get refs before a `click`/`type`.

**The tool opens PUBLIC `http(s)` URLs, plus loopback origins the operator
listed.** A loopback, `.localhost`, private, link-local, CGNAT or metadata
address is refused, with an error pointing at `playwright-cli open <url>`, the
path that prompts for the approval such a target requires. The one exception is
an exact `host:port` (`localhost`, `127.0.0.1` or `[::1]` plus a port) the
operator listed in the dashboard's local-origins setting; the gateway's own port is
refused even when listed, and you cannot edit that list. So a local dev server
is the `playwright-cli` path (see the **web-verify** and **web-preview**
skills) unless the operator told you its origin is listed: then `navigate` opens
it in the panel, and a refusal means it is not listed, so fall back to
`playwright-cli`.

If the tool returns guidance that **no native panel is serving this session** (a
remote gateway, or a plain-browser dashboard with no Electron panel), THEN fall
back to `playwright-cli` (below). Do not reach for `playwright-cli` first: on the
desktop app it spawns its own unsigned Chromium and triggers a macOS security
prompt, and the user is watching the built-in panel, not that window.

## Fallback (and attach / logged-in sessions): `playwright-cli`

The dashboard's right-side **Browser** panel also shows a live `playwright-cli`
session. When the `browser` tool reports no native panel, open a page with:

The rest: https://github.com/kirodotdev/KiroCrew/blob/HEAD/src/kiro_crew/builtin_skills/web-browse/SKILL.md
