Migrate from AngularJS to Angular using hybrid mode, incremental component rewriting, and dependency injection updates. Use when upgrading AngularJS applications, planning framework migrations, or modernizing legacy Angular code.
Install with Tessl CLI
npx tessl i github:Dicklesworthstone/pi_agent_rust --skill angular-migration89
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
Hybrid app bootstrap setup
UpgradeModule import source
100%
100%
AppModule imports UpgradeModule
100%
100%
ngDoBootstrap implemented
100%
100%
Angular bootstrapped first
83%
100%
strictDi enabled
100%
100%
Correct AngularJS module name
100%
100%
Incremental strategy chosen
100%
100%
4-phase migration plan
90%
100%
Services-first ordering
100%
100%
TypeScript syntax in .ts files
100%
100%
Without context: $0.3369 · 6m 35s · 15 turns · 121 in / 4,810 out tokens
With context: $0.6080 · 9m 27s · 26 turns · 487 in / 6,515 out tokens
Service migration and DI bridge
@Injectable providedIn root
100%
100%
HttpClient constructor injection
100%
100%
Observable return types
100%
100%
downgradeInjectable import
100%
100%
AngularJS factory registration
100%
100%
InjectionToken for legacy service
100%
100%
useFactory with $injector lookup
100%
100%
deps: ['$injector']
100%
100%
Token provider in NgModule
100%
100%
No $http in Angular service
100%
100%
Without context: $0.5351 · 6m 57s · 24 turns · 153 in / 8,646 out tokens
With context: $0.6757 · 13m 33s · 23 turns · 177 in / 7,945 out tokens
Component, routing, and forms migration
No $scope in Angular components
100%
100%
ngOnInit for initialization
100%
100%
Observable subscribe for service calls
0%
100%
@Input on product property
100%
100%
@Output EventEmitter for remove
100%
100%
Routes array type
100%
100%
RouterModule.forRoot
100%
100%
Reactive Forms — FormGroup
100%
100%
Reactive Forms — FormBuilder
57%
100%
Validators applied in FormGroup
100%
100%
No ng-model in Angular templates
100%
100%
Without context: $0.4626 · 4m 52s · 20 turns · 153 in / 6,634 out tokens
With context: $0.4585 · 5m 14s · 17 turns · 129 in / 5,972 out tokens
Table of Contents
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.