From umbraco-upgrade
Scan and audit an Umbraco 15 project to identify all breaking changes, compatibility issues, and migration requirements for upgrading to Umbraco 17 (LTS). Use this skill whenever someone asks to audit, assess, analyze, or scan an Umbraco project for upgrade readiness. Also trigger when someone mentions "Umbraco upgrade", "Umbraco 17 migration", "breaking changes audit", "upgrade assessment", "upgrade readiness", or asks what needs to change to move from U15/U16 to U17. This skill produces a structured audit report that feeds into the umbraco-upgrade-architect skill.
How this skill is triggered — by the user, by Claude, or both
Slash command
/umbraco-upgrade:auditThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Scan an Umbraco 15 codebase and produce a comprehensive inventory of everything affected by the upgrade to Umbraco 17.
Scan an Umbraco 15 codebase and produce a comprehensive inventory of everything affected by the upgrade to Umbraco 17.
Map the solution before scanning. Find:
# Example discovery commands
find . -name "*.sln" -o -name "*.csproj" -o -name "global.json" -o -name "appsettings*.json" | head -50
find . -name "umbraco-package.json" -o -name "package.json" | head -20
find . -path "*/App_Plugins/*" -name "*.ts" -o -path "*/App_Plugins/*" -name "*.js" | head -30
Read the patterns reference file at the plugin's references/patterns.md (two directories up from this skill: ../../references/patterns.md). This contains every pattern ID, regex, file glob, and severity. Use these patterns to drive systematic scanning.
Run the scan script at scripts/scan-project.sh (local to this skill directory) OR execute patterns manually. For each pattern category:
PROJ — Project Configuration Scan .csproj files, appsettings, and global.json for framework versions, package references, and configuration flags.
CS — C# Server-Side Code Scan all .cs files for removed extension methods, deprecated APIs, migration base classes, NPoco usage, Examine customizations, and date handling patterns.
BO — Backoffice / Client-Side Code Scan .ts/.js files in App_Plugins and backoffice extension directories for old imports, AngularJS code, TinyMCE references, and manifest changes.
PKG — Package & Dependency Audit
Extract all NuGet PackageReferences and npm dependencies. Cross-reference against the package compatibility matrix in the plugin's references/package-compatibility.md (two directories up: ../../references/package-compatibility.md).
DEVOPS — CI/CD and Deployment Scan Dockerfiles, CI pipeline configs, and deployment scripts for .NET version references.
Produce a structured report with two outputs:
{
"audit_metadata": {
"project_name": "string",
"current_version": "15.x.x",
"target_version": "17.x.x",
"scan_date": "ISO-8601",
"solution_path": "string",
"project_count": 0,
"total_findings": 0
},
"summary": {
"critical": 0,
"high": 0,
"medium": 0,
"low": 0,
"estimated_total_effort": "string"
},
"findings": [
{
"pattern_id": "CS-001",
"severity": "HIGH",
"category": "cs",
"file": "relative/path/to/file.cs",
"line": 42,
"match": "content.ChildrenAsTable()",
"description": "Usage of removed extension method",
"migration_action": "Replace with IContentService query",
"effort": "S",
"breaking_change_ref": "breaking-changes-16-to-17.md#8"
}
],
"packages": {
"nuget": [
{
"name": "string",
"current_version": "string",
"u17_compatible_version": "string|null",
"status": "compatible|needs-update|incompatible|unknown",
"notes": "string"
}
],
"npm": []
},
"risk_areas": [
{
"area": "Custom Data Access",
"risk": "HIGH",
"finding_count": 5,
"description": "Multiple NPoco direct usages need updating for NPoco 6.x"
}
]
}
Generate a markdown report with:
Save both the JSON and markdown reports to the project workspace:
upgrade-audit/audit-report.jsonupgrade-audit/audit-report.mdWhen running as part of an agent team:
scan_scope parameter: backend, backoffice, packages, devops, or all{
"agent_scope": "backend",
"findings": [...],
"packages": {...}
}
grep -rn with file globs rather than reading every fileDateTime.Now pattern (CS-012) will have false positives. Focus on instances near database operationsnpx claudepluginhub twofoldtech-dakota/umbraco-upgrade --plugin umbraco-upgradeProvides reference checklists for reviewing Umbraco backoffice extensions on code quality, architecture, and UI patterns. Use when validating dashboards, workspaces, property editors, entity actions.
Guides framework and language migrations: version upgrades, breaking changes, dependency audits, codemods, rollbacks. For React 19, Next.js App Router, Python 3.12, Node 22, etc.
Audits Ruby (and optional Rails) projects before upgrades: detects current/target versions, checks gem compatibility, breakage risks, computes paths, runs test baseline. Read-only.