CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

migration-migrate-component

Use when a component needs migration to the target architecture or framework version.

Quality

67%

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

Fix and improve this skill with Tessl

tessl review fix ./packs/nuxt/skills/migration-migrate-component/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

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

The body is a lean, well-sequenced 6-step migration workflow with a comprehensive API conversion mapping and explicit validation commands. Minor gaps keep actionability and workflow clarity at 4: steps 4-5 lack concrete how-to detail and there is no error-recovery loop after validation. For a sub-50-line single-purpose skill, token efficiency and structure are excellent.

DimensionReasoningScore

Conciseness

The ~40-line body is pure signal — a one-line goal ('Migrate a Nuxt component from Nuxt 2 / Options API to Nuxt 3 `<script setup lang="ts">`'), a terse analysis checklist, and a 14-row conversion mapping with zero padding. It assumes Claude's competence (no explanation of ref(), script setup, or auto-imports), matching anchor 5; nothing can be trimmed.

5 / 5

Actionability

The conversion table is copy-paste-ready ('props -> defineProps<T>()', '$axios -> $fetch') and validation gives executable commands ('nuxi typecheck', 'npx vitest run --passWithNoTests'). It falls short of anchor 5 because steps like 'Apply composition pattern if there is prop drilling', 'Decompose if > 200 lines', and 'Map who imports this component' give direction without the specific command or example.

4 / 5

Workflow Clarity

A clear 6-step sequence (read architecture docs, analyze, convert, refactor, decompose, validate) ends in explicit validation commands. It misses anchor 5 because there is no feedback loop — nothing instructs what to do when 'nuxi typecheck' fails — leaving error recovery implicit.

4 / 5

Progressive Disclosure

The skill is under 50 lines, single-purpose, has no bundle files, and is organized under a clear '## Steps' section; the only external pointer ('docs/ARCHITECTURE.md section 5') is clearly signaled twice and one level deep. Per the simple-skill guideline this earns anchor 5; nothing that belongs in a separate file is inlined.

5 / 5

Total

18

/

20

Passed

Description

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

The description provides only a trigger clause without stating what the skill actually does, which caps completeness low. It omits the framework names (Nuxt, Vue) and natural synonyms (upgrade, port, composition API) that users would say, leaving trigger quality and distinctiveness mediocre. Overall it reads as a generic component-migration trigger rather than a Nuxt 2-to-3 conversion skill.

Suggestions

Add a 'what' clause stating the concrete action, e.g. 'Migrate a Nuxt component from Nuxt 2 Options API to Nuxt 3 <script setup lang="ts">', before the 'Use when' clause.

Include natural trigger terms users would actually say: Nuxt 2, Nuxt 3, Vue, Options API, composition API, upgrade, port.

Name Nuxt/Vue explicitly to distinguish this skill from generic component-migration skills for other frameworks.

DimensionReasoningScore

Specificity

The description names the domain ('a component needs migration to the target architecture or framework version') but states no concrete actions — the actual conversion work (Nuxt 2 Options API to Nuxt 3 script setup) is entirely absent. It matches anchor 2 ('names the domain but actions are minimal or generic'), not anchor 3, which requires 1-2 concrete actions.

2 / 5

Completeness

Only the 'when' half is present ('Use when a component needs migration...') with no 'what' — the description never states that it converts components to Nuxt 3 '<script setup lang="ts">'. This is an exact match to anchor 2 ('only when is present without what'); it cannot be 3 because a clear 'what' is entirely missing.

2 / 5

Trigger Term Quality

'component', 'migration', and 'framework version' are relevant keywords, but the natural phrases a user would say for this task — 'Nuxt 3', 'Nuxt 2', 'Vue', 'Options API', 'upgrade', 'port' — are all missing. This matches anchor 3 ('some relevant keywords but missing common variations or synonyms'); it sits above anchor 2 because 'migration' and 'component' are genuinely natural terms rather than generic filler.

3 / 5

Distinctiveness Conflict Risk

'a component needs migration' is somewhat specific, but 'target architecture or framework version' names no framework, so a React, Vue, or Angular migration request would match this trigger equally well. This matches anchor 3 ('somewhat specific but could still overlap with similar skills'); it is above anchor 2 because component migration is a narrower niche than 'document files'.

3 / 5

Total

10

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository

fernandezbaptiste/specialist-agent

Path

packs/nuxt/skills/migration-migrate-component/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.