Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Drive a headless browser to navigate pages, read content, click, and fill forms — for sites that need JavaScript rendering or interaction beyond a plain HTTP fetch.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | -29% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 10% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -33% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 24% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -4% | 0% |
Drive a real headless browser (Chromium) to accomplish web tasks that a plain http_request cannot: pages that render content with JavaScript, multi-step flows, forms, and anything gated behind a click.
The browser is registered only because this skill declares requires.capabilities: [browser]. All navigation is forced through the agent's egress proxy, so it obeys the same allowlist, SSRF, and DNS-rebinding protections as every other web tool. Add the domains you need to egress_domains; a page that redirects off-allowlist is blocked.
You drive the browser through six tools. You never see raw HTML — every observation is a compact digest: the page title, URL, a numbered list of interactive elements ([3] input(email) "Work email"), and the start of the page text.
{url, wait_ms?} — load a page, get its digest.{max_elements?, scroll_pages?, scroll_to_index?} —re-read the current page (after it changed on its own, to scroll, or to see more elements). Returns a fresh digest with new indices and generation.
{index, generation} — click the element at index fromthe latest digest. Returns the resulting page digest.
{index, text, generation, submit?} — type into an input(or pick a select option by label). submit: true presses Enter. Password and payment fields are refused unless this skill opts in.
{mode?, selector?, max_chars?, offset?} — pull pagecontent: text (readable markdown, default), links, or html (scoped to a CSS selector). Long content is paginated — pass the offset from the previous call's header to continue.
{full_page?, filename?} — capture a PNG for theuser (attached to the reply; you will not see the image). Use only when the user wants a visual — read pages with digests and browser_extract.
browser_navigate to the target URL. Read the digest's [N] elements andnote the Generation number.
generation to browser_click / browser_fill with theelement's index. Every action returns a fresh digest — read it, don't assume the old indices still hold.
returns an error with a fresh digest — retry using the new indices and generation.
browser_extract with mode: text andpaginate via offset. Use mode: links to enumerate links.
digest.
egress_domains in the frontmatter above (real domains, wildcards, or $VAR/${VAR} references expanded from the agent env). It ships empty, so every navigation is blocked until at least one host resolves; production builds also reject an open egress policy.
Other measured skills in the registry, with their headline benchmark lift.