CtrlK
BlogDocsLog inGet started
Tessl Logo

browser-automation

Browser automation powers web testing, scraping, and AI agent interactions. The difference between a flaky script and a reliable system comes down to understanding selectors, waiting strategies, and anti-detection patterns. This skill covers Playwright (recommended) and Puppeteer, with patterns for testing, scraping, and agentic browser control. Key insight: Playwright won the framework war. Unless you need Puppeteer's stealth ecosystem or are Chrome-only, Playwright is the better choice in 202

28

Quality

20%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./.agent/skills/browser-automation/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

7%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This skill is essentially a skeleton with no substantive content. It spends tokens on persona description and capability tags rather than actionable guidance, contains truncated text ('For scraping, yo'), and delegates all real content to sub-skill files that aren't provided in the bundle. Without any executable code, concrete examples, or workflow steps, it fails to serve as a useful skill document.

Suggestions

Add a Quick Start section with executable Playwright code (e.g., launching a browser, navigating to a page, clicking an element) so the skill provides immediate actionable value.

Remove the persona/narrative paragraphs ('You are a browser automation expert...') and the capabilities bullet list — these waste tokens on things Claude already knows or that belong in frontmatter.

Add at least one concrete workflow with validation steps, e.g., a scraping workflow: launch browser → navigate → wait for selector → extract data → validate output.

Fix the truncated content ('For scraping, yo') and ensure the Patterns section has actual content or is removed if all patterns are in sub-skills.

DimensionReasoningScore

Conciseness

The content is padded with persona-building fluff ('You are a browser automation expert who has debugged thousands of flaky tests...'), explains concepts Claude already knows (evolution from Selenium to Puppeteer), and includes a capabilities list that duplicates frontmatter. The actual instructional content is nearly zero. The body text even appears truncated mid-sentence ('For scraping, yo').

1 / 3

Actionability

There is no executable code, no concrete commands, no specific examples, and no copy-paste ready guidance anywhere in the content. The skill describes concepts abstractly and delegates everything to sub-skill files without providing any actionable content itself.

1 / 3

Workflow Clarity

There are no steps, no sequences, no validation checkpoints, and no workflow of any kind. The content is a vague overview with links to sub-skills but provides no process guidance for any browser automation task.

1 / 3

Progressive Disclosure

The skill does reference sub-skill files with clear one-level-deep links, which is a reasonable structure. However, no bundle files are provided to verify these references exist, the overview content itself is essentially empty (truncated text, no quick-start), and the 'Patterns' section header has no content beneath it before the sub-skill links.

2 / 3

Total

5

/

12

Passed

Description

32%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description reads more like an opinionated blog introduction than a skill description, spending words on commentary ('Playwright won the framework war') rather than concrete capabilities and trigger conditions. It lacks a 'Use when...' clause entirely, is truncated (cuts off at '202'), and uses narrative voice rather than concise action-oriented language. The core domain is identifiable but the description would benefit significantly from restructuring.

Suggestions

Add an explicit 'Use when...' clause with trigger terms like 'browser automation', 'Playwright', 'Puppeteer', 'headless browser', 'web scraping', 'e2e testing', 'end-to-end testing', 'browser control'.

Replace the opinionated commentary with concrete action descriptions, e.g., 'Automates browser interactions including navigating pages, clicking elements, filling forms, taking screenshots, handling authentication flows, and extracting page content.'

Fix the truncated text (ends at '202') and remove subjective statements like 'Playwright won the framework war' that don't help Claude decide when to use this skill.

DimensionReasoningScore

Specificity

Names the domain (browser automation) and some actions (web testing, scraping, AI agent interactions), and mentions specific frameworks (Playwright, Puppeteer), but much of the description is opinion/commentary rather than listing concrete capabilities like 'fill forms, click buttons, take screenshots'.

2 / 3

Completeness

The description explains 'what' at a high level (browser automation with Playwright/Puppeteer) but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per the rubric, a missing 'Use when' clause caps completeness at 2, and the weak 'what' further reduces it.

1 / 3

Trigger Term Quality

Includes relevant keywords like 'browser automation', 'Playwright', 'Puppeteer', 'scraping', 'web testing', 'selectors', but misses common user terms like 'headless browser', 'web crawling', 'e2e testing', 'end-to-end', 'selenium', or file extensions. Also the description appears truncated (ends with '202').

2 / 3

Distinctiveness Conflict Risk

The mention of specific frameworks (Playwright, Puppeteer) and browser automation provides some distinctiveness, but the broad terms 'web testing' and 'scraping' could overlap with general testing skills or web scraping skills that don't involve browser automation.

2 / 3

Total

7

/

12

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
Dokhacgiakhoa/antigravity-ide
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.