CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

testland/print-stylesheet-tests

Use when an app has a Print button or print stylesheet that is untested, or printed and PDF copies break in the wrong places. Tests print CSS with Playwright print emulation and page.pdf(): @page size and margins, page breaks, orphans and widows, and print-only rules.

Quality

90%

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

Overview
Quality
Evals
Security
Files

Quality

Content

85%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 well-structured, code-forward skill with a genuinely instructive worked example and correct use of a one-level-deep reference file for advanced @page geometry. The two weaknesses are moderate: the overview steps duplicate the detailed sections, and the PDF-inspection helper functions the assertions depend on are undefined.

Suggestions

Define or stub the PDF-inspection helpers (getPdfPageCount, extractTextPerPage, getPdfDimensions, renderPdfPage) once — e.g. a short setup snippet naming the library or the pdf-snapshot-tester functions they map to — so the assertion code is copy-paste ready.

Collapse the 7-item 'How to use' list into a 2–3 sentence overview or fold it into the Step headings, removing the duplication with the detailed Step 1–6 sections.

Consider moving the anti-patterns table's cross-engine row detail into references/page-geometry.md alongside the other pdf-snapshot-tester pairing notes to keep the main file lean.

DimensionReasoningScore

Conciseness

Prose is tight and limited to non-obvious facts ("preferCSSPageSize: true lets CSS @page { size: A4 } win over the API format option"), but the 7-item "How to use" list substantially duplicates the six detailed Step sections that follow. Matches 4 (efficient with minor trimming possible); not 5 because of that duplication, not 3 because padding is limited.

4 / 5

Actionability

The Playwright structure is fully executable (goto, emulateMedia, page.pdf options, expect assertions), but the PDF-inspection helpers used by the assertions (getPdfPageCount, extractTextPerPage, renderPdfPage, hasBrandColorAtTop) are never defined or imported — only "Use a PDF inspector lib or pair with pdf-snapshot-tester". Matches 4 (mostly executable, minor gaps); not 3 since the core code is real and runnable, not 5 since the page-level assertions are not copy-paste ready.

4 / 5

Workflow Clarity

Clear numbered sequence (How to use 1–7, then Steps 1–6) where every step ends in an assertion, and the Worked example demonstrates an explicit feedback loop: baseline count assertion fails → extractTextPerPage pinpoints the totals table straddling pages 2/3 → re-add break-inside: avoid → re-run passes. Matches 5; not 4 because error recovery is shown end-to-end.

5 / 5

Progressive Disclosure

Verified against the bundle: references/page-geometry.md exists and is clearly signaled ("Advanced @page geometry ... covered in [references/page-geometry.md])") exactly one level deep, with the advanced pseudo-class/margin material appropriately split out of SKILL.md. Matches 5 (clear overview, well-signaled one-level-deep references); not 4 because there are no organization gaps.

5 / 5

Total

18

/

20

Passed

Description

92%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 strong description: explicit 'Use when' triggers phrased in natural user language, a concrete third-person capability list covering the whole print-CSS domain, and a distinct niche. The only gap is minor keyword coverage of common synonyms like 'PDF export' or 'print layout'.

DimensionReasoningScore

Specificity

"Tests print CSS with Playwright print emulation and page.pdf(): @page size and margins, page breaks, orphans and widows, and print-only rules" lists multiple concrete actions that comprehensively cover the print-CSS testing domain, in third-person voice. It matches the 5 anchor; it is not 4 because no meaningful capability is left out.

5 / 5

Completeness

Explicitly answers both: "Use when an app has a Print button or print stylesheet that is untested, or printed and PDF copies break in the wrong places" (when, with concrete triggers) and the tested-capabilities list (what). It matches the 5 anchor; not 4 because the 'when' clause is fully explicit rather than improvable.

5 / 5

Trigger Term Quality

Natural phrases users would say are present ("Print button", "print stylesheet", "printed ... copies break in the wrong places", "PDF"), but a few natural variations are missing (e.g. "PDF export", "print layout", "printing"). It is above 3 because the included terms are exactly what affected users say, below 5 because coverage is not comprehensive with synonyms/extensions.

4 / 5

Distinctiveness Conflict Risk

Clear niche — testing print CSS via Playwright print emulation and page.pdf() — with distinct triggers ("Print button or print stylesheet that is untested"), so conflict risk with generic Playwright or PDF skills is minimal. Matches the 5 anchor; not 4 because the triggers would not plausibly fire a different skill.

5 / 5

Total

19

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 2 missing

Warning

Total

15

/

16

Passed

Reviewed

On this page