Claude Code skills · updated 2026-10-03
Angular upgrade skill for Claude Code — removed APIs, support dates
Finds every Angular API that will stop your next ng update
On a 4-file sample Angular project it printed 35 findings (10 errors, 18 warnings, 7 info) from 32 rules, each with file:line and the fix.
Get it on Whop - $12 onceGet it on Gumroad
Who it's for
For Angular teams one or more majors behind who have to plan the ng update and tell the lead what breaks first.
What breaks, and when
Angular 18 support ended 2025-11-19, so a project pinned there gets no patches and no security fixes; TestBed.get() was removed in Angular 20.
What it printed on the bundled example
== Angular Upgrade Lint — 35 findings (10 errors, 18 warnings, 7 info) in 4 files · 32 rules
ERROR package.json:9 [angular-major-out-of-support]
Angular 18 is pinned here. Angular 18-month window: v18 shipped 2024-05-22, support ended 2025-11-19. That was 323 days before 2026-10-08 — no patches and no security fixes are being published for this major. Upgrade one major at a time with `ng update @angular/core@N @angular/cli@N`.
WARNING package.json:11 [flex-layout]
`@angular/flex-layout` was retired by the Angular team and receives no further releases. Replace the directives with CSS grid or flexbox, or with the community fork you vendor yourself.
ERROR src/app/dashboard.component.spec.ts:1 [waitforasync-rename]
The `async()` test helper was removed in Angular 18 (it collided with the `async` keyword). Import and call `waitForAsync()` instead — same behaviour, new name.
WARNING src/app/dashboard.component.spec.ts:2 [http-client-testing-module]
`HttpClientTestingModule` has been deprecated since Angular 18. Use `provideHttpClient()` plus `provideHttpClientTesting()` in the testing providers.
What you get
- A scanner Claude runs over every .ts, .html and .json file - not a guess from memory
- 32 rules: removed APIs, deprecations up to Angular 20, the support window per major, NgModule-era forms
- For each finding: file:line, the Angular version it changed in and the replacement
- Claude proposes the edits and applies them only after you say yes; exit 1 in CI on any error
Install
Unzip into ~/.claude/skills/ (all projects) or your-repo/.claude/skills/ (one repo), then ask Claude Code: "We're still on Angular 18 and want to move to the current major. Can you go through the repo and tell me which APIs we use that were removed or deprecated, and whether our version is still supported? Don't edit anything yet.". Needs Node 16+.
unzip angular-upgrade-check.zip -d ~/.claude/skills/
Ask Claude
“We're still on Angular 18 and want to move to the current major. Can you go through the repo and tell me which APIs we use that were removed or deprecated, and whether our version is still supported? Don't edit anything yet.”
What it does not do
Reads files only; it does not run ng update, npm install or the Angular compiler.
FAQ
What is a Claude Code skill?
A folder with a SKILL.md and scripts that Claude Code loads when your request matches it. You ask in plain words and Claude runs the scanner the skill carries.
How is this different from asking Claude without the skill?
The skill carries a dated rule table and a scanner that reads every file, so Claude quotes the exact date and line instead of answering from memory.
Does it send my code anywhere?
Reads files only; it does not run ng update, npm install or the Angular compiler.
How do I install it?
Unzip into ~/.claude/skills/ (all projects) or your-repo/.claude/skills/ (one repo), then ask Claude Code: "We're still on Angular 18 and want to move to the current major. Can you go through the repo and tell me which APIs we use that were removed or deprecated, and whether our version is still supported? Don't edit anything yet.". Needs Node 16+.
What do I get when I buy?
The zip. On Whop it is in your library as a download lesson with the zip attached; on Gumroad it is the product file.