CtrlK
BlogDocsLog inGet started
Tessl Logo

playwright-local

Build browser automation and web scraping with Playwright on your local machine. Prevents 10 documented errors including CI timeout hangs, extension testing failures, and Ubuntu compatibility issues. Includes stealth mode for anti-bot bypass, authenticated sessions, infinite scroll handling, screenshot/PDF generation, and v1.57 Speedboard performance analysis. Use when: automating browsers, scraping protected sites, testing with real IPs, bypassing bot detection, generating screenshots/PDFs, or troubleshooting "target closed", "page.pause() hangs CI", "permission prompts block tests", or "Ubuntu 25.10 installation" errors.

Install with Tessl CLI

npx tessl i github:jezweb/claude-skills --skill playwright-local
What are skills?

86

Does it follow best practices?

Validation for skill structure

SKILL.md
Review
Evals

Discovery

100%

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

This is an excellent skill description that excels across all dimensions. It provides highly specific capabilities, includes natural trigger terms users would actually search for (including specific error messages), has an explicit 'Use when' clause, and is distinctive enough to avoid conflicts with other skills. The inclusion of specific error messages as triggers is particularly effective for discoverability.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: 'browser automation', 'web scraping', 'stealth mode for anti-bot bypass', 'authenticated sessions', 'infinite scroll handling', 'screenshot/PDF generation', and 'v1.57 Speedboard performance analysis'. Also mentions preventing 10 specific documented errors.

3 / 3

Completeness

Clearly answers both what (browser automation, scraping, error prevention, stealth mode, etc.) AND when with an explicit 'Use when:' clause covering multiple trigger scenarios including specific error troubleshooting cases.

3 / 3

Trigger Term Quality

Excellent coverage of natural terms users would say: 'browser automation', 'web scraping', 'Playwright', 'bot detection', 'screenshots', 'PDFs', plus specific error messages like 'target closed', 'page.pause() hangs CI', 'permission prompts block tests', and 'Ubuntu 25.10 installation'.

3 / 3

Distinctiveness Conflict Risk

Highly distinctive with clear niche: specifically Playwright-based local browser automation with unique triggers like specific error messages ('target closed', 'page.pause() hangs CI'), version-specific features (v1.57 Speedboard), and platform-specific issues (Ubuntu 25.10). Unlikely to conflict with generic testing or web skills.

3 / 3

Total

12

/

12

Passed

Implementation

77%

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

This is a comprehensive, highly actionable skill with excellent executable code examples and clear workflow sequences. Its main weakness is verbosity - the document tries to be both a quick reference and complete guide, resulting in ~800 lines that could be trimmed by 30-40% without losing essential information. The progressive disclosure could be improved by moving detailed patterns and advanced topics to referenced files.

Suggestions

Move 'Common Patterns' section (7 patterns, ~150 lines) to a separate patterns.md file with one-line summaries in the main skill

Remove 'Why this matters' explanatory sections - Claude understands why browser binaries need downloading and why networkidle matters for SPAs

Consolidate the comparison table (Playwright Local vs Cloudflare) into 2-3 bullet points - the detailed feature comparison adds tokens without proportional value

Move 'Advanced Topics' (MCP Server, Docker, Speedboard) to advanced.md - these are not needed for basic browser automation

DimensionReasoningScore

Conciseness

While the skill contains valuable information, it's verbose at ~800 lines with some unnecessary explanations (e.g., 'Why this matters' sections explaining obvious concepts, detailed comparison tables). The stealth reality check disclaimer, while useful, adds significant length.

2 / 3

Actionability

Excellent executable code throughout - all examples are copy-paste ready TypeScript/Python with proper imports, error handling patterns, and specific commands. The 7-step stealth setup and common patterns sections provide fully functional implementations.

3 / 3

Workflow Clarity

Multi-step processes are clearly sequenced with explicit validation checkpoints. The stealth setup has numbered steps, the troubleshooting section provides clear problem/solution pairs, and the complete setup checklist provides verification steps. Error recovery patterns include retry with backoff.

3 / 3

Progressive Disclosure

References external files (templates/, references/, scripts/) appropriately, but the main document is monolithic with extensive inline content that could be split. The 'Advanced Topics' and 'Common Patterns' sections could be separate files with summaries in the main skill.

2 / 3

Total

10

/

12

Passed

Validation

68%

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

Validation11 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (1343 lines); consider splitting into references/ and linking

Warning

description_voice

'description' should use third person voice; found second person: 'your '

Warning

metadata_version

'metadata' field is not a dictionary

Warning

license_field

'license' field is missing

Warning

frontmatter_unknown_keys

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

Warning

Total

11

/

16

Passed

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.