Skip to content

Acheron-AI/angular-upgrade-kit

Repository files navigation

Angular Upgrade Kit Banner

🔺 Angular Upgrade Kit

AI Agent Teams for upgrading Angular applications across ANY major version — from v2 to v21+

Version License Angular Claude Code Stars

Quick StartFeaturesHow It WorksInstallationDocsContributing


Angular Upgrade Kit Intro


💡 Why This Exists

Angular upgrades are painful. Really painful.

If you've ever tried upgrading an enterprise Angular app across multiple major versions, you know the drill:

  • 📖 Reading changelogs for every version in between
  • 🔍 Hunting for breaking changes across hundreds of files
  • 🛠️ Manually fixing TypeScript errors, template syntax, and deprecated APIs
  • 🔄 Running ng update, fixing, building, testing... over and over
  • 😰 Praying nothing breaks in production

We faced this exact nightmare: a 142-component enterprise monorepo stuck on Angular 9.1, needing to reach v21. That's 12 major version jumps, each with its own breaking changes, Node.js requirements, and TypeScript constraints.

So we built this — a Claude Code plugin that turns Angular upgrades into an orchestrated, agent-driven pipeline. Eight specialized AI agents work together, each with a focused role, running in parallel tmux panes where you can watch everything happen in real-time.

The result? Angular 9.1 → 21. 142 components. 55 services. 46 modules. 3 internal libraries. Zero regressions.


✨ Features

Feature Description
🎯 Any Version → Latest Supports Angular v2 through v21+ with 18 version reference files
🤖 8 AI Agents Planner, Scout, Upgrader, Builder, Fixer, Test Runner, UI Tester, Verifier
📺 Visual Monitoring Agents run in tmux split panes — watch all work simultaneously
🔒 Safety Hooks 7 lifecycle hooks prevent dangerous commands, protect state files, auto-log failures
📚 Version Knowledge Detailed breaking changes with BEFORE/AFTER code examples for every version
🧩 MCP Integrations Context7 (live docs), Playwright (UI testing), Fetch (changelogs)
🔄 Three-Era Strategy Handles Pre-CLI (v2–v5), Early CLI (v6–v11), and Modern (v12+) Angular
📊 Progress Tracking Automatic state management, audit logs, build reports
🛡️ Zero Dependencies All hooks use Node.js built-ins only — nothing to install
🌐 Cross-Platform Works on macOS, Linux, and Windows

🤖 How It Works

The Agent Team

Four specialized agents run in parallel tmux panes, coordinating via message passing:

┌────────────────────────────────────────────────────────────────────┐
│                         TMUX SESSION                               │
├────────────────┬────────────────┬────────────────┬─────────────────┤
│   @planner     │    @scout      │   @upgrader    │    @builder     │
│                │                │                │                 │
│ • Roadmap      │ • Deps audit   │ • ng update    │ • Library build │
│ • Risk map     │ • Pattern      │ • Fix configs  │ • App build     │
│ • Node matrix  │   scanning     │ • Apply fixes  │ • Error fix     │
│ • Timeline     │ • Compat       │ • TS version   │ • Run tests     │
│                │   check        │                │                 │
│  ROADMAP ────► │  CLEAR ──────► │ APPLIED ─────► │  PASSED         │
└────────────────┴────────────────┴────────────────┴────────┬────────┘
                                                            │
                                                      ┌─────┴──────┐
                                                      │ @verifier  │
                                                      │            │
                                                      │ GO/NO-GO   │
                                                      │ git commit │
                                                      └────────────┘

The Three-Era Strategy

The plugin recognizes that Angular upgrades fall into three distinct eras, each requiring a fundamentally different approach:

Era 1: Pre-CLI (v2→v5)          Era 2: Early CLI (v6→v11)        Era 3: Modern (v12→v21+)
┌─────────────────────┐         ┌─────────────────────┐         ┌─────────────────────┐
│ • Manual pkg edits  │         │ • ng update works   │         │ • Full schematics   │
│ • No schematics     │  v5→v6  │ • View Engine era   │ v11→v12 │ • Ivy-only          │
│ • SystemJS/Webpack  │ ──────► │ • RxJS 5→6 → 6→7   │ ──────► │ • Agent Teams       │
│ • Node 6.x/8.x     │  ERA    │ • Ivy preview→def   │  ERA    │ • MDC, Signals      │
│ • TS 2.x            │  SHIFT  │ • Node 8→12.x      │  SHIFT  │ • Node 14→22.x     │
└─────────────────────┘         └─────────────────────┘         └─────────────────────┘

🚀 Quick Start

# 1. Plan your upgrade path
/upgrade-plan

# 2. Start upgrading one version at a time
/upgrade-to 14

# 3. Check progress
/upgrade-status

# 4. If build fails, fix and retry
/upgrade-fix

All Commands

Command Purpose
/upgrade-plan Generate full upgrade roadmap with effort estimates
/upgrade-to <V> Upgrade to the next Angular version
/upgrade-mdc v14→v15 Material MDC migration (4 parallel workers)
/upgrade-controlflow v17 control flow syntax migration
/upgrade-status Show progress dashboard
/upgrade-fix Re-run build-fix-verify cycle
/upgrade-verify Re-run GO/NO-GO verification gate
/test-ui On-demand Playwright browser smoke tests

📦 Installation

Method 1: Claude Code Plugin (Recommended)

# Add the Acheron marketplace and install
/plugin marketplace add https://github.com/Acheron-AI/angular-upgrade-kit
/plugin install angular-upgrade-kit

Method 2: Interactive Install Script

git clone https://github.com/Acheron-AI/angular-upgrade-kit.git
cd angular-upgrade-kit
node scripts/install.js

Method 3: Direct Plugin Directory

git clone https://github.com/Acheron-AI/angular-upgrade-kit.git
claude --plugin-dir ./angular-upgrade-kit

Method 4: Manual Copy

Copy agents/, commands/, hooks/, skills/ into your project's .claude/ directory. Merge settings.json and mcp.json.


📋 Version Compatibility Matrix

Angular Node.js TypeScript Difficulty
2 ^6.9.5 ~2.0 🟢 Easy
4 ^6.9.5 ~2.2 🟢 Easy
5 ^6.9 / ^8.9 2.4–2.5 🟢 Easy
6 ^8.9.4 ~2.7 🔴 Hard (RxJS 5→6)
7 ^8.9 / ^10.9 ~3.1 🟢 Easy
8 ^10.9 ~3.4 🟡 Medium
9 ^10.13 / ^12.11 3.6–3.7 🟡 Medium (Ivy default)
10 ^10.13 / ^12.11 ~3.9 🟢 Easy
11 ^10.13 / ^12.11 ~4.0 🟢 Easy
12 ^12.14 / ^14.15 ~4.2–4.3 🟡 Medium
13 ^14 / ^16 ~4.4 🟡 Medium
14 ^14 / ^16 ~4.6–4.7 🟡 Medium
15 ^14 / ^16 / ^18 ~4.8 🔴 Hard (Material MDC)
16 ^16 / ^18 ~5.0 🟢 Easy
17 ^18 / ^20 ~5.2 🟡 Medium (Control Flow)
18 ^18 / ^20 ~5.4 🟢 Easy
19 ^18 / ^20 / ^22 ~5.5–5.6 🟢 Easy
20 ^20 / ^22 ~5.8 🟡 Medium
21 ^20 / ^22 ~5.8–5.9 🟡 Medium

📂 Plugin Structure

angular-upgrade-kit/
├── .claude-plugin/          # Plugin manifest & marketplace config
├── agents/                  # 8 AI agents
│   ├── planner.md          #   → Upgrade path planning (read-only)
│   ├── scout.md            #   → Pre-upgrade dependency scanning (read-only)
│   ├── upgrader.md         #   → Core ng update execution
│   ├── builder.md          #   → Build verification
│   ├── fixer.md            #   → Build error resolution
│   ├── test-runner.md      #   → Unit test execution
│   ├── ui-tester.md        #   → Playwright browser smoke tests (on-demand)
│   └── verifier.md         #   → Final GO/NO-GO decision gate
├── commands/                # 8 slash commands
├── hooks/                   # 7 lifecycle hooks (Node.js, zero deps)
│   ├── session-start.js    #   → Loads upgrade state into context
│   ├── session-stop.js     #   → Saves session metadata
│   ├── pre-bash-guard.js   #   → Blocks dangerous commands
│   ├── pre-edit-guard.js   #   → Protects state files
│   ├── post-bash-gate.js   #   → Auto-logs build failures
│   ├── post-edit-typecheck.js # → TypeScript check after edits
│   └── subagent-log.js     #   → Agent spawning audit trail
├── skills/
│   ├── angular-upgrade-kit/ # Main skill + 18 version references (v2→v21)
│   ├── material-mdc/        # Material MDC CSS class mapping
│   └── rxjs7/               # RxJS 6→7 migration patterns
├── schemas/                 # JSON schema for upgrade state
├── scripts/                 # Interactive install script
├── docs/                    # Architecture, hooks reference, version guide
├── examples/                # Example project-specific module skills
├── settings.json            # Hook configuration template
└── mcp.json                 # MCP server configuration (Context7, Playwright, Fetch)

🔌 Extensibility

Adding Support for v22+

When Angular v22 is released:

  1. Create skills/angular-upgrade-kit/references/v21-to-v22.md
  2. Follow the template in CONTRIBUTING.md
  3. Update the version table in skills/angular-upgrade-kit/SKILL.md
  4. Submit a PR

Project-Specific Module Skills

For complex projects, you can add module-specific skill files that give agents deeper knowledge about your architecture. See examples/module-skills/ for templates.


📖 Documentation

Document Description
Architecture Plugin structure, agent teams model, hook lifecycle
How Agents Work Agent roles, message passing, context isolation
Hooks Reference All 7 hooks with triggers, inputs, outputs
Version Reference Complete v2→v21 compatibility matrix
Settings Reference Configuration, MCP servers, directory structure
Contributing How to add versions, improve agents, submit PRs
Security Hook data handling, no external calls, exit codes
Changelog Release history

🏆 Production Results

This plugin was battle-tested during a real-world Angular upgrade:

Metric Value
Source Version Angular 9.1
Target Version Angular 21
Version Jumps 12 major versions
Components 142
Services 55
Modules 46
Internal Libraries 3
Regressions 0

🤝 Contributing

Contributions are welcome! Whether it's adding support for a new Angular version, improving agent behavior, or fixing bugs — every PR helps.

PRs Welcome

See CONTRIBUTING.md for guidelines.


🏢 Credits

Tenshkumar K
Creator & Maintainer
LinkedInGitHub

Built at Acheron Software Consultancy Pvt. Ltd. — the first AI open-source contribution from Acheron-AI.


📄 License

MIT — Free for personal and commercial use.


If this plugin saves you time, consider giving it a ⭐ on GitHub!

About

AI Agent Teams for upgrading Angular applications across ANY major version (v2 → v21+). A Claude Code plugin with 8 specialized agents, 18 version reference files, and deterministic lifecycle hooks.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors