CtrlK
BlogDocsLog inGet started
Tessl Logo

prompt-api

Implements and debugs browser Prompt API integrations in JavaScript or TypeScript web apps. Use when adding LanguageModel availability checks, session creation, prompt or promptStreaming flows, structured output, download progress UX, or iframe permission-policy handling. Don't use for server-side LLM SDKs, REST AI APIs, or non-browser providers.

75

Quality

92%

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

92%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.

An exemplary procedure-style skill: a tightly sequenced five-step workflow with explicit stop conditions, validation, and error-recovery guidance, concrete API-level directives throughout, and clean delegation of detail to an existing, purpose-conditioned bundle. The only real weakness is redundancy between the Procedures and Error Handling sections, where three rules are stated multiple times.

Suggestions

Deduplicate the 'downloading before create()' guidance, which appears in Step 3 item 7, Step 4 item 6, and Error Handling bullet 2 — state the rule once and cross-reference it from the other sites.

The Error Handling section largely restates procedure content (iframe allow, Web Worker limitation); keep only the genuinely new recovery guidance there (NotSupportedError alignment, polyfill fallback) and trim the repeats to save tokens.

DimensionReasoningScore

Conciseness

The body is dense, procedural, and free of concept explanation Claude already knows — every step is a directive, not a tutorial. However, several rules are stated two or three times: the "downloading before create()" guidance appears in Step 3 item 7, Step 4 item 6, and Error Handling bullet 2; iframe `allow="language-model"` appears in Step 3 item 5 and Error Handling bullet 5; the Web Worker limitation appears in Step 2 item 6 and Error Handling bullet 4. This matches the anchor for efficient content with minor instances that could be trimmed, not level 5 where every token earns its place.

4 / 5

Actionability

Guidance is fully concrete and directive throughout: an executable command (`node scripts/find-frontend-targets.mjs .`), exact file reads with conditions (`references/prompt-api-reference.md`, `assets/language-model-service.template.ts`), exact API methods and options (`prompt()`, `promptStreaming()`, `responseConstraint`, `measureContextUsage()`), and explicit do/don't rules ("Do not pass `tools` to `availability()`", "Do not depend on `params()`, `topK`, or `temperature`"). Code is delegated to a real 381-line template asset rather than inlined, which is appropriate for an instruction-driven skill; the guidance itself is specific and covers the common cases. Matches the fully actionable anchor.

5 / 5

Workflow Clarity

A clear five-step sequence (identify surface → confirm viability → implement wrapper → wire UX → validate) with explicit checkpoints and feedback loops: stop-and-ask conditions ("stop and ask the user which app should receive the integration", "stop and explain that this skill does not apply"), a validation step ("Run the workspace build, typecheck, or tests after editing"), and an Error Handling section with recovery redirects (NotSupportedError handling, worker redirect, iframe requirement). Matches the anchor for clear sequence with explicit validation steps and feedback loops for error recovery.

5 / 5

Progressive Disclosure

The SKILL.md body is a ~50-line procedural overview that delegates all detail to one-level-deep, well-signaled bundle files, each referenced with a purpose condition: "Read `references/prompt-api-reference.md` before writing code", "Read `references/examples.md` when the feature needs a spec-valid message shape", "Read `references/compatibility.md` when the feature must support multiple browser generations", plus `polyfills.md`, `troubleshooting.md`, the discovery script, and the service template — all verified to exist. Matches the anchor for a clear overview with well-signaled one-level-deep references and easy navigation.

5 / 5

Total

19

/

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: concrete capability list, explicit 'Use when' triggers with negative boundary guidance, third-person voice, and clear browser-only distinctiveness. The only gap is missing common user synonyms for the Prompt API ecosystem (Chrome built-in AI, Gemini Nano), which slightly narrows trigger matching.

Suggestions

Add widely used synonyms such as 'Chrome built-in AI', 'Gemini Nano', or 'on-device AI' to the trigger terms so users who name the platform rather than the API still match the skill.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — "Implements and debugs browser Prompt API integrations", "LanguageModel availability checks, session creation, prompt or promptStreaming flows, structured output, download progress UX, or iframe permission-policy handling" — comprehensively covering the skill's scope. This matches the anchor for multiple specific concrete actions with comprehensive coverage; it is not level 4 because there are no meaningful gaps in the capability list.

5 / 5

Completeness

Explicitly answers both what ("Implements and debugs browser Prompt API integrations in JavaScript or TypeScript web apps") and when ("Use when adding LanguageModel availability checks... download progress UX, or iframe permission-policy handling"), plus negative triggers ("Don't use for server-side LLM SDKs, REST AI APIs, or non-browser providers"). This matches the anchor for clearly and explicitly answering both with concrete trigger phrases.

5 / 5

Trigger Term Quality

Strong natural keywords users would say: "Prompt API", "session creation", "structured output", "prompt", "promptStreaming", "availability checks", "iframe permission-policy". Not level 5 because common user-facing synonyms like "Chrome built-in AI", "Gemini Nano", "window.ai", or "on-device model" are absent, so a few natural phrasings users actually use would not match.

4 / 5

Distinctiveness Conflict Risk

The explicit exclusion clause ("Don't use for server-side LLM SDKs, REST AI APIs, or non-browser providers") carves out a clear browser-only niche with distinct triggers, minimizing overlap with the many server-side AI skills. Matches the anchor for a clear niche with minimal conflict risk.

5 / 5

Total

19

/

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
webmaxru/web-ai-agent-skills
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.