Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/librefang/librefang/browsernpx skills add librefang/librefang --skill browsergit clone --depth 1 https://github.com/librefang/librefangWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00014 | $0.08639 |
| Opus 5 | $0.00007 | $0.04320 |
| Sonnet 5 | $0.00003 | $0.01728 |
| Haiku 4.5 | $0.00001 | $0.00864 |
Grade A, and why
browser-automation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
Copies of this mod
1 near-identical copy found in the catalogue:
- browser-automation — 100% identical, 0 lines differ
How it starts
The opening of the file, as written. The whole thing — 936 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Browser Automation Skill
Playwright CSS Selector Reference
Basic Selectors
| Selector | Description | Example |
|---|---|---|
#id |
By ID | #checkout-btn |
.class |
By class | .add-to-cart |
tag |
By element | button, input |
[attr=val] |
By attribute | [data-testid="submit"] |
tag.class |
Combined | button.primary |
parent child |
Descendant | div.container button |
parent > child |
Direct child | ul > li |
:nth-child(n) |
Nth element | li:nth-child(2) |
:first-child |
First element | ul > li:first-child |
:last-child |
Last element | ul > li:last-child |
[attr*=val] |
Attribute contains | [class*="price"] |
[attr^=val] |
Attribute starts with | [href^="https"] |
[attr$=val] |
Attribute ends with | [href$=".pdf"] |
:not(sel) |
Negation | button:not(.disabled) |
sel1, sel2 |
Multiple selectors | #submit, button[type="submit"] |
Form Selectors
| Selector | Use Case |
|---|---|
input[type="email"] |
Email fields |
input[type="password"] |
Password fields |
input[type="search"] |
Search boxes |
input[name="q"] |
Google/search query |
textarea |
Multi-line text areas |
select[name="country"] |
Dropdown menus |
input[type="checkbox"] |
Checkboxes |
input[type="radio"] |
Radio buttons |
button[type="submit"] |
Submit buttons |
input[type="file"] |
File upload fields |
input[type="date"] |
Date pickers |
input[type="tel"] |
Phone number fields |
input[autocomplete="cc-number"] |
Credit card fields |
[contenteditable="true"] |
Rich text editors |
Navigation Selectors
| Selector | Use Case |
|---|---|
a[href*="cart"] |
Cart links |
a[href*="checkout"] |
Checkout links |
a[href*="login"] |
Login links |
nav a |
Navigation menu links |
.breadcrumb a |
Breadcrumb links |
[role="navigation"] a |
ARIA nav links |
a[href*="account"] |
Account/profile links |
a[href*="register"], a[href*="signup"] |
Registration links |
header a[href="/"] |
Logo/home link |
footer a |
Footer links |
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 936 lines · 14 tokens per session scan A 43d4e501d6c7
browser-automation is a skill published in the GitHub repository librefang/librefang (364 stars, last pushed 2d ago), licensed MIT. It adds 14 tokens to every session and 8,639 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
browser-automation
Playwright-based browser automation patterns for autonomous web interaction.
browser-automation
Playwright-based browser automation patterns for autonomous web interaction.
scrapling-official
Scrape web pages using Scrapling with anti-bot bypass (like Cloudflare Turnstile), stealth headless browsing, spiders framework, adaptive scraping, and JavaScript rendering. Use when asked to scrape, crawl, or extract data from websites; webfetch fails; the site has anti-bot protections; write Python code to…
ad-ready
Generate advertising images automatically from a product URL + brand profile. ✅ USE WHEN: User provides a product URL (e-commerce link) Want automated product scraping + image generation Have a brand profile to apply (70+ brands available) Need funnel-stage targeting (awareness/consideration/conversion) Want AI to…
deliveroo-order
Turn collected lunch orders into a clean per-person order list for a human to place on Deliveroo. Use in step 2 of the lunch run, after orders are collected. The live menu is fetched automatically by the lobu-team-lunch-finalize reaction (via the Owletto Chrome extension) — this skill never places an order or touches…
web-browse
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.