CtrlK
BlogDocsLog inGet started
Tessl Logo

angular-migration

Master AngularJS to Angular migration, including hybrid apps, component conversion, dependency injection changes, and routing migration.

52

Quality

58%

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 ./skills/angular-migration/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

50%Scale 1-3

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

The skill provides excellent concrete code examples covering all major migration scenarios (components, services, DI, routing, forms), making it highly actionable. However, it is significantly too verbose—much of the content explains concepts Claude already understands, and generic advice sections (best practices, common pitfalls, migration timeline) add little value. The workflow lacks explicit validation checkpoints critical for a migration process, and the referenced bundle files don't exist.

Suggestions

Cut the content by at least 50%: remove the 'Use this skill when/Do not use this skill when' lists, generic best practices, common pitfalls, and migration timeline sections. Keep only the code examples and brief contextual headers.

Add explicit validation checkpoints to the workflow: e.g., 'After migrating each component, run `ng test` and verify hybrid app loads correctly before proceeding to the next component.'

Either provide the referenced bundle files (references/hybrid-mode.md, scripts/analyze-angular-app.sh, etc.) or remove the dead references from the Resources section.

Move the detailed before/after code examples into referenced files (e.g., references/component-migration.md) and keep only one concise example in the main SKILL.md as a pattern demonstration.

DimensionReasoningScore

Conciseness

The skill is extremely verbose at ~300+ lines. It explains basic concepts Claude already knows (what AngularJS directives are, what services are, basic routing concepts). The migration timeline with generic advice like 'Install Angular CLI' and 'Set up testing' adds little value. The best practices and common pitfalls sections are generic platitudes. Much of this content could be cut by 60%+ while preserving all actionable information.

1 / 3

Actionability

The skill provides fully executable, copy-paste ready code examples for every migration scenario: hybrid bootstrap, component migration (controllers and directives), service migration, DI downgrade/upgrade, routing, and forms. Before/after patterns are concrete and complete.

3 / 3

Workflow Clarity

The Instructions section provides a 4-step high-level workflow, and the Migration Timeline gives phased guidance. However, there are no explicit validation checkpoints or feedback loops (e.g., 'run tests after each component migration, fix failures before proceeding'). For a destructive migration process, the lack of concrete verification steps caps this at 2.

2 / 3

Progressive Disclosure

The Resources section references multiple supporting files (references/, assets/, scripts/) suggesting good structure, but no bundle files are actually provided, making these dead references. The main file itself is monolithic with all migration patterns inline rather than appropriately split into referenced files. The content that should be in those reference files is duplicated in the main skill.

2 / 3

Total

8

/

12

Passed

Description

67%Scale 1-3

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 does well at specifying concrete migration tasks and occupying a clear niche, making it distinctive. However, it lacks an explicit 'Use when...' clause, which is critical for Claude to know when to select this skill. Some natural trigger terms users might use (e.g., 'upgrade', 'ngUpgrade', '$scope to component') are missing.

Suggestions

Add a 'Use when...' clause, e.g., 'Use when the user asks about upgrading or migrating from AngularJS (1.x) to Angular (2+), or mentions ngUpgrade, hybrid bootstrapping, or converting AngularJS controllers/directives to Angular components.'

Include additional natural trigger terms users might say, such as 'upgrade', 'ngUpgrade', '$scope', 'AngularJS 1.x', 'Angular 2+', and 'controller to component'.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: hybrid apps, component conversion, dependency injection changes, and routing migration. These are distinct, well-defined migration tasks.

3 / 3

Completeness

Clearly answers 'what' (AngularJS to Angular migration with specific subtasks) but lacks an explicit 'Use when...' clause or equivalent trigger guidance, which caps this at 2 per the rubric.

2 / 3

Trigger Term Quality

Includes relevant terms like 'AngularJS', 'Angular', 'migration', 'hybrid apps', 'component conversion', but misses common user phrases like 'upgrade', 'ng-upgrade', 'ngUpgrade', '$scope', or file extensions. Users might say 'upgrade from AngularJS' rather than 'migration'.

2 / 3

Distinctiveness Conflict Risk

Very clear niche: AngularJS-to-Angular migration is a highly specific domain unlikely to conflict with other skills. The combination of 'AngularJS', 'Angular', and 'migration' creates a distinct trigger profile.

3 / 3

Total

10

/

12

Passed

Validation

90%

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

Validation — 10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
popey/claude-code-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.