Content
78%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 strong, highly actionable reference skill: executable BAD/GOOD pairs, real commands, and a clean one-level-deep bundle that checks out against the actual references/ directory. Its main weakness is redundancy — overlapping 'When to Apply'/'Use When' sections, a prose-heavy Mindset section, and a duplicated `as`-assertion example — that costs tokens without adding guidance.
Suggestions
Merge 'When to Apply' and 'Use When' into a single trigger list — they currently restate the same conditions in two forms.
Trim the Mindset paragraph to its actionable core (verify with tsc --noEmit, prefer narrowing over asserting, use exhaustive switches) and cut the philosophical framing.
Remove the duplication between the 'Type X is not assignable to type Y' Quick Fix and the 'NEVER silence type errors with unchecked assertions' Anti-Pattern, which show the same before/after code.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The code-heavy sections are lean, but there is avoidable slack: the "Mindset" paragraph carries philosophical prose Claude does not need ("A type guard is a promise the compiler will hold you to only if the runtime check underneath it is honest"), "When to Apply" and "Use When" restate the same triggers, and the unsafe-`as` fix appears in both Quick Fixes and Anti-Patterns. This fits the anchor for 'mostly efficient but could be tightened' better than the minor-trim anchor above it. | 3 / 5 |
Actionability | Guidance is fully executable: runnable commands ("npx tsc --noEmit", "rg -n \"\\bany\\b|@ts-ignore| as \" src") and complete copy-paste TypeScript BAD/GOOD pairs covering the common cases (undefined guard, `as` replacement, discriminant widening, exhaustive switch), matching the anchor for copy-paste ready coverage. | 5 / 5 |
Workflow Clarity | Each pattern is an unambiguous BAD-to-GOOD transform and an explicit verification checkpoint is written ("Verify a narrowing actually narrows by re-running `tsc --noEmit` after the change"), but the find-fix-verify pieces sit in separate sections with no sequencing that binds them into a workflow, leaving a minor gap versus the explicit-sequence anchor. | 4 / 5 |
Progressive Disclosure | A References table clearly signals six one-level-deep files with a "Covers" description each; all six referenced paths exist in references/ and match their advertised topics, while high-frequency patterns are kept inline and deeper detail (multi-level brands, pattern matching) is correctly deferred — matching the well-signaled, easy-navigation anchor. | 5 / 5 |
Total | 17 / 20 Passed |