CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

react-modernization

Upgrade React applications to latest versions, migrate from class components to hooks, and adopt concurrent features. Use when modernizing React codebases, migrating to React Hooks, or upgrading to latest React versions.

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./plugins/framework-migration/skills/react-modernization/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 pattern catalog with strong executable before/after examples and a properly signaled one-level-deep reference file. It is held back by verbosity in areas Claude already knows and the absence of an explicit migration workflow with validation steps.

Suggestions

Add a numbered migration workflow with explicit validation checkpoints (e.g., run tests / check console warnings after each version bump and after each component conversion) — batch codebase migration currently has no feedback loop.

Trim before/after examples of React 18 behavior Claude already knows (automatic batching, flushSync, Suspense basics) down to one-line notes, keeping only the class-to-hooks mappings that add real value.

Move inline upgrade commands into the body (e.g., the npm/install commands for each React version) so the version-upgrade section is executable without opening the reference file.

DimensionReasoningScore

Conciseness

The body is mostly efficient code, but the ~300 lines include full before/after explanations of React 18 behavior Claude already knows well (automatic batching, flushSync opt-out, Suspense basics), and the Counter example duplicates state the hooks version makes obvious. It could be tightened to the migration-specific mappings that actually add value.

3 / 5

Actionability

Concrete, executable before/after code dominates the body (class-to-hooks, lifecycle-to-useEffect, context-to-useContext, createRoot), so guidance is mostly copy-paste ready. Minor gaps: no actual upgrade commands (e.g., installing react@18) in the body, and the codemod commands that would automate migration live only in the reference file.

4 / 5

Workflow Clarity

The 'React 16 → 17 → 18' heading and per-version breaking-change lists give a rough upgrade sequence, but the class-to-hooks migration has no step ordering and there are no validation checkpoints or feedback loops (no test/verify steps) for what is a batch codebase transformation, which caps this dimension.

3 / 5

Progressive Disclosure

The body has clear sections and ends with a well-signaled, one-level-deep pointer to references/details.md, which exists and contains the codemod, performance, TypeScript, and checklist material. Minor gap: some full React 18 feature examples inline in SKILL.md arguably belong in the reference.

4 / 5

Total

14

/

20

Passed

Description

83%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 with concrete third-person capabilities and an explicit 'Use when...' trigger clause covering multiple natural phrases. Its only weaknesses are slightly incomplete action coverage and a few missing trigger synonyms.

DimensionReasoningScore

Specificity

The description lists several concrete actions — "Upgrade React applications to latest versions, migrate from class components to hooks, and adopt concurrent features" — in third-person voice, but omits capabilities the body covers (codemods, state management, TypeScript), so coverage has minor gaps rather than being comprehensive.

4 / 5

Completeness

It explicitly answers both what ("Upgrade React applications... migrate from class components to hooks... adopt concurrent features") and when ("Use when modernizing React codebases, migrating to React Hooks, or upgrading to latest React versions") with concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural phrases like "modernizing React codebases", "migrating to React Hooks", and "upgrading to latest React versions" match what users would actually say, though common variations such as "React 18" or "functional components" are missing.

4 / 5

Distinctiveness Conflict Risk

The React modernization niche with class-to-hooks migration triggers is mostly distinct, but there is minor overlap risk with general React development or web-migration skills.

4 / 5

Total

17

/

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

wshobson/agents

Path

plugins/framework-migration/skills/react-modernization/SKILL.md

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.