Do not treat this skill as a generic browsing default. Route from the evidence you need, not from tool preference.
Every task must be classified before you choose a route:
static-capable: the evidence can be produced without live browser state, visible confirmation, or page interactionbrowser-required: the evidence depends on rendered state, interaction, live session behavior, or browser-only structures
Only static-capable tasks may fall back to static retrieval, curl, or other non-browser paths. Once a task is browser-required, stay on the browser path and mark missing capability as blocked instead of silently downgrading.
Prerequisite check
This skill is for work inside the user's live browser session, not for launching a separate fresh automation browser.
Before doing browser automation, confirm that your environment already has access to a live browser stack that can provide the capabilities the task depends on.
Treat as browser-required by default
localhost,127.0.0.1, or benchmark-style local fixtures- uploads, downloads, drag-and-drop, hover, keyboard-native entry, or visible confirmation states
- same-origin iframe inspection, Shadow DOM inspection,
details/ collapsed evidence, or lazy-loaded content - any task where "what the page visibly shows" is itself the evidence
Decision guide
- Decide whether the task is
static-capableorbrowser-required - If
static-capable: stay on the cheapest route that still satisfies the evidence target - If
browser-required: load the browser playbook reference - If browser-required capability is uncertain: check the browser capability matrix
- If the user has an active browser debugging context: prefer handoff from that context
Hard rules
- Use browser interaction only when live browser state is part of the evidence or required action
- Once a task is
browser-required, do not silently downgrade - Prefer site-generated DOM links over hand-built URLs
- Prefer MCP-native actions over script-driven interaction
- Only close pages you created
- Do not use
curl,Invoke-WebRequest, or shell HTTP fetches forbrowser-requiredtasks - Do not treat a generic page-opening tool as evidence that localhost deep interaction is available
Experience loop
For browser-required work:
- Check if a matching note exists under
references/site-patterns/for the target domain - If a note exists, read it before the first meaningful browser mutation
- During the run, watch for verified site-specific facts
- Before finishing, decide whether the run produced a reusable fact and update the note
Mirrored from https://github.com/xixu-me/skills — original author: xixu-me, license: MIT. This is an unclaimed mirror. Content and ownership transfer to the author when they claim this account.