CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/add-to-homescreen-flow-tests

The single install-flow skill: the reference contract for the PWA install flow (installability gate fields, `beforeinstallprompt` handshake, per-platform paths - Android WebAPK / iOS Share menu / Firefox no-op - and the `display-mode` post-install signal, in references/install-flow-reference.md) plus the build-an-X workflow that emits the Add-to-Home-Screen suite. Walks the four-stage timeline, emitting one test per gate cell per [web.dev/articles/install-criteria][install-criteria], the deferred-prompt → `prompt()` → `userChoice` chain per [web.dev/articles/customize-install][customize-install], the iOS Safari manual-metadata branch (`apple-touch-icon`) per [web.dev/learn/pwa/installation][learn-pwa], and the post-install `(display-mode: standalone)` MQ assertion. Output: a Playwright spec with per-stage cells plus a coverage matrix. Use when a PWA's manifest, icons, or install handler change, when install conversion drops at an unknown stage, or when triaging a flaky install assertion.

72

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

86%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, highly actionable builder skill with executable code, a clear seven-step workflow, and properly externalized references. The main gap is the absence of an explicit run-tests-then-fix feedback loop in the workflow itself.

Suggestions

Add an explicit Step 8 validation loop: run the emitted suite, triage any failing cell against its source criterion, and re-emit until every matrix cell passes.

Trim the incidental commentary in the worked example and limitations sections to tighten token budget.

DimensionReasoningScore

Conciseness

Mostly efficient: the bulk of tokens are concrete, executable code that earns its place, with only minor trimmable commentary such as 'a regression invisible until users file a bug'. Not a 5 because some prose around the worked example and limitations could be tightened.

4 / 5

Actionability

Fully executable, copy-paste-ready Playwright/TypeScript code across all seven steps using real APIs (`page.locator`, `request.get`, `chromium.launchPersistentContext`) and concrete selectors, with the page-hook requirement documented.

5 / 5

Workflow Clarity

Seven clearly numbered steps with concrete commands and a per-stage cell mapping; not a 5 because there is no explicit validate→fix→retry feedback loop in the workflow itself (the CI gate is mentioned only at the end of Step 7).

4 / 5

Progressive Disclosure

SKILL.md is a clear overview that points to three real, one-level-deep references (install-flow-reference.md, install-flow-tests.md, install-suite.md), each clearly signaled with markdown links; the contract is externalized while the actionable workflow stays inline.

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 dense but technically precise description that covers concrete capabilities, explicit use-when triggers, and a distinct niche. Its main weakness is verbosity and a leaning toward jargon over natural user phrasing in the trigger terms.

Suggestions

Tighten the run-on sentence into two or three shorter sentences so the what/when boundary reads more cleanly.

Soften jargon-heavy trigger phrasing (e.g. 'beforeinstallprompt handshake') toward terms a developer would naturally say when requesting the skill.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions with comprehensive coverage: 'emitting one test per gate cell', 'deferred-prompt → `prompt()` → `userChoice` chain', 'iOS Safari manual-metadata branch (`apple-touch-icon`)', 'post-install `(display-mode: standalone)` MQ assertion', and 'Output: a Playwright spec with per-stage cells plus a coverage matrix'.

5 / 5

Completeness

Explicitly answers both what (emits a Playwright spec + coverage matrix for the install flow) and when with a concrete 'Use when a PWA's manifest, icons, or install handler change, when install conversion drops at an unknown stage, or when triaging a flaky install assertion' trigger clause.

5 / 5

Trigger Term Quality

Good natural-term coverage (PWA, install flow, manifest, icons, install handler, install conversion, Add-to-Home-Screen) but the description leans technical with jargon like 'beforeinstallprompt handshake', 'userChoice', and 'display-mode MQ assertion' rather than purely natural user phrasing.

4 / 5

Distinctiveness Conflict Risk

Clear niche (PWA install-flow / Add-to-Home-Screen testing) with distinct triggers and minimal overlap risk with other skills; the paired composition with `service-worker-lifecycle-tests` further scopes it.

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.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Reviewed

Table of Contents