Upgrades TYPO3 extensions between LTS versions (v11-v14) using Extension Scanner, Rector, Fractor, and PHPStan. Handles deprecated APIs, Fluid 5 VHs, HashService removal, and ext_tables.php split.
How this skill is triggered — by the user, by Claude, or both
Slash command
/typo3-extension-upgrade:typo3-extension-upgradeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Systematic framework for upgrading TYPO3 extensions to newer LTS versions.
assets/fractor.phpassets/phpstan.neonassets/phpunit.xmlassets/rector.phpcheckpoints.yamlreferences/api-changes.mdreferences/api-traps.mdreferences/audit-mode.mdreferences/dual-compatibility.mdreferences/multi-version-worktrees.mdreferences/pre-upgrade.mdreferences/real-world-patterns.mdreferences/third-party-dependency-upgrades.mdreferences/toolchain-output.mdreferences/troubleshooting.mdreferences/upgrade-v11-to-v12.mdreferences/upgrade-v12-to-v13.mdreferences/upgrade-v13-to-v14.mdreferences/verification.mdSystematic framework for upgrading TYPO3 extensions to newer LTS versions. Extension code only -- NOT for project/core upgrades.
| Tool | Purpose | Files |
|---|---|---|
| Extension Scanner | Diagnose deprecated APIs | TYPO3 Backend |
| Rector | Automated PHP migrations | .php |
| Fractor | Non-PHP migrations | FlexForms, TypoScript, YAML, Fluid |
| PHPStan | Static analysis | .php |
references/pre-upgrade.md)composer.json constraints for target versionreferences/third-party-dependency-upgrades.md)rector process --dry-run then review and applyfractor process --dry-run then review and applyphp-cs-fixer fixphpstan analyse against each supported dependency version and fix errorsphpunit and fix testsreferences/verification.md)Do NOT blindly apply Rector/Fractor if dual-version compatibility is needed, tests are missing, changes are unclear, or complex APIs (DBAL, Extbase) are affected. Instead: apply specific rules manually, test between each change.
When composer.json widens constraints to a new major version: enumerate API usages, cross-reference the new version's API, flag interface/concrete-only methods, verify mocks against all supported versions, use adapter pattern for signature differences, run PHPStan against each major version. See references/third-party-dependency-upgrades.md.
rector process --dry-run && rector process # PHP migrations
fractor process --dry-run && fractor process # Non-PHP migrations
php-cs-fixer fix && phpstan analyse && phpunit # Quality checks
Config templates in assets/: rector.php, fractor.php, phpstan.neon, phpunit.xml, .php-cs-fixer.php
| Reference | Use when... |
|---|---|
references/pre-upgrade.md | Planning checklist, version audit, risk assessment |
references/api-changes.md | Checking deprecated/removed APIs by TYPO3 version |
references/api-traps.md | Cross-version footguns: TCA restrictions, boot order, DI bypass |
references/upgrade-v11-to-v12.md | Upgrading from TYPO3 v11 to v12 |
references/upgrade-v12-to-v13.md | Upgrading from TYPO3 v12 to v13 |
references/upgrade-v13-to-v14.md | Upgrading from TYPO3 v13 to v14 |
references/dual-compatibility.md | Dual compatibility (v12 + v13) |
references/real-world-patterns.md | Real-world migration examples |
references/toolchain-output.md | Rector/Fractor dry-run output |
references/troubleshooting.md | Rector broke code, PHPStan errors, test failures |
references/third-party-dependency-upgrades.md | Non-TYPO3 dependencies (major version bumps, adapter patterns) |
references/verification.md | Success criteria and real-world testing |
references/multi-version-worktrees.md | Per-LTS worktree layout, backport workflow, cross-version CI matrix |
references/audit-mode.md | Assessing/estimating: ticket only non-automatable findings |
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub netresearch/claude-code-marketplace --plugin typo3-extension-upgrade