Content
85%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A well-structured procedural skill: five sequenced steps with explicit stop conditions, a validation step, error-recovery feedback loops, and a clean one-level-deep bundle whose references are each gated by a read condition. The main cost is redundancy — four rules are repeated near-verbatim across Procedures and Error Handling, inflating token use without adding information.
Suggestions
State the pre-create() 'downloading' passive-state rule once (e.g., in Step 3) and have Step 4.6 and the Error Handling bullet reference it instead of restating it.
Consolidate the 'tools is EXPERIMENTAL' warning into a single location (Step 2.7) and drop the repeats in Step 3.2 and Error Handling bullet 4.
Merge the iframe 'allow="language-model"' and Web Worker limitations into one 'Context requirements' note instead of repeating them across Step 2, Step 3/4, and Error Handling.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is mostly efficient — imperative instructions with no explanation of concepts Claude already knows — but it could be meaningfully tightened: the pre-create() 'downloading' passive-state rule is stated three times (Step 3.7, Step 4.6, Error Handling bullet 2), the 'tools is EXPERIMENTAL' warning three times (Step 2.7, Step 3.2, Error Handling bullet 4), the iframe 'allow="language-model"' requirement three times (Step 3.5, Step 4.3, Error Handling bullet 6), and the Web Worker exclusion twice (Step 2.6, Error Handling bullet 5). Not 4 because the duplication is more than minor — four distinct rules are each repeated near-verbatim across sections. Not 2 because there is no padding or over-explanation; every line is actionable instruction. | 3 / 5 |
Actionability | Guidance is concrete and executable throughout: an exact command ("node scripts/find-frontend-targets.mjs ."), a concrete code artifact to adapt ("Read assets/language-model-service.template.ts and adapt it"), precise API names and options ("responseConstraint", "omitResponseConstraintInput", "AbortController", "measureContextUsage()"), and exact attribute values ("allow=\"language-model\""). Per the rubric's code-vs-instruction note, an instruction-only skill is not penalized for absent inline code when guidance is this specific, and the common cases (availability gating, streaming, structured output, download UX) are each covered. Not 4 because there are no real gaps — even fallback and deprecated-surface handling names exact options. | 5 / 5 |
Workflow Clarity | Five clearly sequenced steps with explicit decision checkpoints ("stop and ask the user which app", "stop and explain that this skill does not apply") and an explicit validation step (Step 5: test short/long responses, verify session reuse/destroy behavior, "Run the workspace build, typecheck, or tests after editing"). Error recovery feedback loops exist: "Read references/troubleshooting.md if the integration throws NotSupportedError" plus a dedicated Error Handling section with specific remediations. Not 4 because checkpoints and feedback loops are explicit rather than implied, matching the top anchor. | 5 / 5 |
Progressive Disclosure | The body is a clear procedural overview with well-signaled, one-level-deep references, each tied to a read condition: "Read references/prompt-api-reference.md before writing code", examples.md for message shapes, compatibility.md for browser generations, polyfills.md for installation, troubleshooting.md on NotSupportedError, plus the assets template and the discovery script. All referenced files exist with substantive content. Not 4 because every reference is both signaled and conditional, and no content that belongs in a bundle file is inlined. | 5 / 5 |
Total | 18 / 20 Passed |