open-browserlisted
Install: claude install-skill 0xMaxMa/claude-gateway
# open-browser
When user says "open X in browser", "navigate to X", "open chrome", "browser to X", "switch to tab X", etc.
## Rules
- Use ONLY `mcp__gateway__browser_*` tools — never Python, never CDP direct, never filesystem
- NEVER use `wait: "networkidle"` — it hangs on SPAs. Omit `wait` entirely (fire-and-forget)
- Always check tab state before navigating — tab IDs change between sessions
- Do NOT pass `session_id` — it is injected automatically from agent context
## Fast Open Flow
### Step 1 — Create/resume session
Call `mcp__gateway__browser_create_session` with NO arguments (session_id is auto-injected).
Result contains session status only.
### Step 2 — Check current tabs
Call `mcp__gateway__browser_tabs` — returns list of `{tab_id, url, title}`.
Use this to:
- Know which tab is active / which tab to navigate
- Decide whether to open a new tab or reuse existing one
### Step 4 — Navigate (fire-and-forget)
**Option A — Navigate active tab** (no tab_id):
```
browser_navigate(url)
```
**Option B — Navigate specific tab**:
```
browser_navigate(url, tab_id="t1")
```
**Option C — Open in new tab**:
```
browser_new_tab() → returns tab_id
browser_navigate(url, tab_id=<new_tab_id>)
```
If `browser_navigate` or `browser_navigate_tab` returns error like `tab "t99" not found (available: [t1, t2])` → call `browser_tabs` again and pick correct tab_id.
### Step 5 — Screenshot and confirm
Call `mcp__gateway__browser_screenshot` → `result` is an **absolute file path**.