--- name: browse description: | Visual feedback browser automation with multi-session, multi-tab, iframe support, and enterprise primitives. Navigate sites, interact with elements, manage tabs/sessions, handle file uploads, dropdowns, iframes, and verify results using the screenshot-analyze-act-verify loop. Use when asked to "open a site", "test a page", "fill a form", "check a deployment", "browse to", "click on", "verify the UI", "compare pages side by side", or any task involving web interaction. Also use proactively when a task would benefit from checking a live URL. allowed-tools: Browser,Read,Grep,Glob --- # Browse — Visual Feedback Browser Automation You have a `Browser` tool with an action-based interface. This skill teaches you how to use it effectively with a **screenshot → analyze → act → verify** loop that prevents blind clicking. ## Core Principle Never act without seeing. Never assume an action worked. Always verify. ``` OBSERVE → DECIDE → ACT → VERIFY (get_state (analyze (click/ (get_state + screenshot elements) type) + screenshot + compare) ``` ## Starting a Session Every browser session starts the same way: 1. **Navigate** to the target URL 2. **Observe** the page with `get_state` — this returns the DOM with indexed interactive elements AND the page text 3. **Screenshot** to see the visual layout ``` Browser { action: "navigate", url: "https://example.com" } Browser { action: "get_state" } Browser { action: "screenshot" } ``` Read the screenshot to understand the visual layout. The `get_state` output gives you: - URL and title - Scroll position (how far down the page you are) - Interactive element count (links, inputs, buttons) - Indexed elements: `[0]