CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

playwright-ci-caching

Cache Playwright browser binaries in CI/CD pipelines (GitHub Actions, Azure DevOps) to avoid 1-2 minute download overhead on every build.

Quality

81%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

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

A strong, execution-focused skill body: complete copy-paste CI snippets for both GitHub Actions and Azure DevOps, a robust helper script, explicit prerequisites, and practical troubleshooting. The main improvements are trimming the two rationale sections and adding an inline validation step to the workflow rather than relying solely on reactive troubleshooting.

DimensionReasoningScore

Conciseness

The body is dominated by executable YAML and PowerShell that earns its tokens, with a useful OS-path table and targeted troubleshooting. It falls short of 5 because "The Problem" section ("Wastes bandwidth", "Slows down PR feedback loops") restates the description, and "Why Version-Based Cache Keys Matter" spells out consequences ("No manual cache clearing needed") Claude could largely infer.

4 / 5

Actionability

Fully copy-paste-ready guidance: complete GitHub Actions steps (single- and multi-OS), Azure DevOps tasks with cache-hit conditioning, a full playwright.ps1 discovery script with usage examples, and a concrete CPM prerequisites XML snippet. The common cases (both CI platforms, cache-hit vs miss) are all covered executably.

5 / 5

Workflow Clarity

"Core Pattern" lays out a clear 4-step sequence (extract version → cache → conditional install → auto bust) and the install step is explicitly gated on `if: steps.playwright-cache.outputs.cache-hit != 'true'`, with a Troubleshooting section providing error-recovery loops. Not 5 because there is no inline validation checkpoint in the main flow (e.g., verifying the cached browser version matches the SDK before running tests) — verification is deferred to reactive troubleshooting.

4 / 5

Progressive Disclosure

No bundle files exist, and the single file is well-organized with clear sections, a cache-path table, and clearly signaled external references. The inline playwright.ps1 is a project artifact to create, so it legitimately belongs inline. It stays at 4 rather than 5 because at ~215 lines the multi-OS and Azure-specific detail could be split into one-level-deep reference files, and the skill uses no progressive-disclosure structure at all.

4 / 5

Total

17

/

20

Passed

Description

70%Weight 40%Scale 1-5

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

A tight, concrete, buzzword-free description with excellent natural trigger terms (Playwright, GitHub Actions, Azure DevOps, CI/CD) and minimal conflict risk. Its main weakness is the missing explicit "Use when..." trigger clause, which both caps completeness and omits the skill's strongest differentiator — automatic cache invalidation on Playwright version changes.

Suggestions

Add an explicit trigger clause, e.g. "Use when setting up or speeding up Playwright E2E tests in CI, or when browser downloads slow down builds."

Mention the automatic version-based cache invalidation capability, since it is the skill's key differentiator and a phrase users would search for ("cache invalidation", "stale browsers").

Include a few synonym trigger terms such as "E2E tests", "pipeline", and "browser download" to broaden natural keyword coverage.

DimensionReasoningScore

Specificity

"Cache Playwright browser binaries in CI/CD pipelines (GitHub Actions, Azure DevOps)" names a precise domain, two concrete platforms, and a quantified outcome ("avoid 1-2 minute download overhead"), which is noticeably more concrete than the 3-anchor ("Processes PDF files and extracts content"). It stays at 4 rather than 5 because only one core capability (caching) is stated — no mention of version-based cache-key automation, multi-OS path handling, or conditional install that the skill actually delivers.

4 / 5

Completeness

The "what" is clear (cache Playwright browser binaries in CI/CD to avoid download overhead), but there is no "Use when..." clause or equivalent trigger guidance — "on every build" describes the problem's frequency, not when to invoke the skill. Per the judging guideline, a missing 'Use when' clause caps completeness at 3.

3 / 5

Trigger Term Quality

Strong natural keywords users would say verbatim: "Playwright", "CI/CD", "GitHub Actions", "Azure DevOps", "cache", "browser binaries". Not 5 because common phrasings like "E2E tests", "slow builds", "browser downloads", or "pipeline" are missing, so synonym coverage is incomplete.

4 / 5

Distinctiveness Conflict Risk

The combination of "Playwright browser binaries", "cache", and named CI platforms carves out a clear niche with distinct triggers, unlikely to fire for adjacent skills like writing Playwright tests. Minor overlap exists with generic CI-caching skills, but the Playwright-browser-binaries scope keeps conflict risk minimal.

5 / 5

Total

16

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

Aaronontheweb/dotnet-skills

Path

skills/playwright-ci-caching/SKILL.md

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.