CtrlK
BlogDocsLog inGet started
Tessl Logo

migrate-to-shoehorn

Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

86

Quality

82%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Quality

Discovery

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is an excellent skill description that is concise, specific, and well-structured. It clearly identifies the concrete action (migrating type assertions), names the specific library involved, and provides an explicit 'Use when' clause with multiple natural trigger terms. The description is distinctive enough to avoid conflicts with other skills.

DimensionReasoningScore

Specificity

The description lists a concrete action: 'Migrate test files from `as` type assertions to @total-typescript/shoehorn.' This is a specific, well-defined task with clear technical details about what is being replaced and what it's being replaced with.

3 / 3

Completeness

Clearly answers both 'what' (migrate test files from `as` type assertions to @total-typescript/shoehorn) and 'when' (explicit 'Use when' clause with three trigger scenarios: mentioning shoehorn, replacing `as` in tests, or needing partial test data).

3 / 3

Trigger Term Quality

Includes strong natural trigger terms: 'shoehorn', 'replace `as` in tests', 'partial test data', 'migrate test files', and 'type assertions'. These cover the main ways a user would describe this need.

3 / 3

Distinctiveness Conflict Risk

This is a very specific niche skill targeting a particular library (@total-typescript/shoehorn) and a specific migration pattern (`as` assertions in test files). It is highly unlikely to conflict with other skills.

3 / 3

Total

12

/

12

Passed

Implementation

64%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This skill provides solid, actionable migration patterns with clear before/after examples and a useful reference table. Its main weaknesses are verbosity in explaining concepts Claude already knows (why `as` is problematic, what large objects look like), a vague validation step in the workflow, and an unnecessary 'Gather requirements' section that adds tokens without adding value for Claude.

Suggestions

Remove the 'Gather requirements' step and the 'Why shoehorn?' explanatory section — Claude understands these concepts. Start directly with Install and Migration patterns.

Add an explicit validation command (e.g., `npx tsc --noEmit`) and a feedback loop: 'If type errors remain, check that imports are added and the correct function (fromPartial vs fromAny) is used.'

Condense the 'Large objects' example — the first before/after already demonstrates the same pattern and the comments explaining the problem are unnecessary.

DimensionReasoningScore

Conciseness

The 'Why shoehorn?' section explains problems with `as` that Claude already understands, and the 'Large objects with few needed properties' example is verbose with comments explaining the obvious. The 'Gather requirements' step is also unnecessary padding. However, the migration patterns themselves are reasonably efficient.

2 / 3

Actionability

Provides fully executable before/after code examples for each migration pattern, a concrete install command, a grep command to find targets, and a clear checklist. Everything is copy-paste ready.

3 / 3

Workflow Clarity

The workflow has a clear sequence with a checklist and ends with 'run type check to verify,' but the validation step is vague (no specific command like `npx tsc --noEmit`), and there's no feedback loop for what to do if the type check fails. The 'Gather requirements' step feels out of place in a migration workflow.

2 / 3

Progressive Disclosure

The content is reasonably well-structured with clear sections and a table, but it's somewhat long for a single file with no bundle. The large before/after examples could be more compact, and there are no references to external files for advanced patterns or edge cases.

2 / 3

Total

9

/

12

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.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
mattpocock/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.