Typo3 conformance
Skill netresearch/typo3-conformance-skill/skills/typo3-conformance
Agent Skill: TYPO3 extension conformance checker - validates against official standards | Claude Code compatible
npx -y skills add netresearch/typo3-conformance-skill --skill typo3-conformanceAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use when assessing TYPO3 extension quality, conformance checking, standards compliance, modernization to v12/v13/v14 (v14.3 LTS is the default/gold standard), TER readiness, or best practices review. Also triggers on: extension audit, quality score, full assessment, fix all findings, conformance audit, Fluid 5 strict ViewHelpers, ext_tables.php removal, Extbase attributes (Authorize/RateLimit), HashService removal, Bootstrap 5 migration, CSP compliance, ViewHelper security, XLIFF hygiene, PHP 8.4/8.5 compat.
SKILL.md
4.5 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
TYPO3 Extension Conformance Checker
Evaluate TYPO3 extensions against TYPO3 coding standards, architecture patterns, and best practices.
When to Use
- Extension quality / TER readiness
- Scored conformance reports
- Modernization to v12/v13/v14 (v14.3 LTS is default/gold standard)
Delegation
Testing -> typo3-testing | Docs -> typo3-docs | OpenSSF -> enterprise-readiness
Scope: extensions only. Site/project repos (type: project + Compose) — score with the gold checker typo3-14-gold/tools/conformance.
Workflow
Step 0: Context
Read ext_emconf.php + composer.json for version, type, scope.
Steps 1-11: Checks
- Metadata -- key, TYPO3 version, type
- Structure -- composer.json, ext_emconf.php, Classes/, Configuration/, Resources/
- Coding -- strict_types, PSR-12, PHP 8.4 explicit nullable, PHP 8.5 float-to-int
- Prohibited -- no
$GLOBALS, noGeneralUtility::makeInstance()for services - Architecture -- constructor DI, Services.yaml, PSR-14 events (try/catch), PSR-3 logging (LoggerAware+NullLogger), factory fallback
- Backend -- ES6, Modal API, CSRF, CSP (v13+)
- Testing -- PHPUnit, Playwright E2E, coverage >70%
- Practices -- DDEV, runTests.sh, CI/CD
- TER -- publish workflow, upload comment
- Audit -- PHPStan baseline, TCA searchFields, XLIFF, cache has()+get(), query properties, multi-version adapters
- v14 readiness -- no
ext_tables.php/HashService/magic finders; Fluid VHs strict; XLF 2-space. Seereferences/v14-deprecations.md.
Step 12: Verify
Re-run after fixes. Document score delta.
Quick Grep Recipes
grep -rL 'strict_types' Classes/ --include='*.php'
grep -rn '\$GLOBALS' Classes/ --include='*.php'
grep -rn 'GeneralUtility::makeInstance' Classes/ --include='*.php'
grep -rPn '\(\s*[A-Za-z\\]+\s+\$\w+\s*=\s*null' Classes/ --include='*.php' | grep -v '?' # PHP 8.4 implicit nullable
grep -rn '->has(' Classes/ --include='*.php' # cache has()+get() anti-pattern
grep -l 'strict_types' ext_emconf.php # ext_emconf must NOT have strict_types
grep -rn '(int)\s*\$' Classes/ --include='*.php' # PHP 8.5 implicit float-to-int
grep -rn 'data-toggle\|data-dismiss\|data-ride' Resources/ --include='*.html' # Bootstrap 4 in Fluid
grep -rn 'HashService\|GeneralUtility::hmac(\|->findBy[A-Z]\|->findOneBy[A-Z]\|->countBy[A-Z]' Classes/ --include='*.php' # v14 removals
[ -f ext_tables.php ] && echo "WARN: ext_tables.php deprecated (#109438)" # v14.3 deprecation
Scoring
Base (0-100): Architecture(20) + Guidelines(20) + PHP(20) + Testing(20) + Practices(20). Excellence bonus up to 22. Critical issues block regardless.
| Range | Level | Action |
|---|---|---|
| 90+ | Excellent | Production/TER ready |
| 80-89 | Good | Minor fixes |
| 70-79 | Acceptable | Fix before release |
| 50-69 | Needs Work | Significant effort |
| <50 | Critical | Block deployment |
References
See references/:
- Architecture & code:
extension-architecture.md,directory-structure.md,php-architecture.md,coding-guidelines.md,best-practices.md,hooks-and-events.md - Validation:
composer-validation.md,ext-emconf-validation.md,ext-files-validation.md,runtests-validation.md,version-requirements.md,testing-standards.md - Multi-version:
dual-version-compatibility.md,v13-v14-dual-compatibility.md,multi-version-dependency-compatibility.md,v13-deprecations.md,v14-deprecations.md - Practices & backend:
development-environment.md,backend-module-v13.md,ter-publishing.md,report-template.md,excellence-indicators.md,localization-coverage.md,crowdin-integration.md
Asset templates in assets/Build/: PHPStan, PHP-CS-Fixer, Rector, ESLint, Stylelint, TypoScript lint.
What ships with it: 41 files
487.4 KB alongside SKILL.md, 11 of them executable
assets/
- Build/composer-unused/composer-unused.phpruns1.1 KB
- Build/eslint/.eslintrc.json515 B
- Build/php-cs-fixer/php-cs-fixer.phpruns1.0 KB
- Build/phpstan/phpstan-baseline.neon530 B
- Build/phpstan/phpstan.neon3.5 KB
- Build/rector/rector.phpruns4.0 KB
- Build/stylelint/.stylelintrc.json367 B
- Build/typoscript-lint/TypoScriptLint.yml1.1 KB
references/
- backend-module-v13.md40.6 KB
- best-practices.md46.9 KB
- coding-guidelines.md4.8 KB
- composer-validation.md11.9 KB
- crowdin-integration.md38.6 KB
- development-environment.md3.0 KB
- directory-structure.md17.0 KB
- dual-version-compatibility.md3.9 KB
- excellence-indicators.md22.6 KB
- ext-emconf-validation.md18.1 KB
- extension-architecture.md8.6 KB
- ext-files-validation.md11.3 KB
- hooks-and-events.md8.4 KB
- localization-coverage.md7.3 KB
- multi-version-dependency-compatibility.md6.9 KB
- php-architecture.md36.8 KB
- report-template.md4.5 KB
- runtests-validation.md12.4 KB
- ter-publishing.md18.1 KB
- testing-standards.md6.5 KB
- v13-deprecations.md10.5 KB
- v13-v14-dual-compatibility.md10.1 KB
- v14-deprecations.md17.8 KB
- version-requirements.md4.9 KB
scripts/
- check-architecture.shruns6.4 KB
- check-coding-standards.shruns3.9 KB
- check-conformance.shruns7.2 KB
- check-documentation.shruns2.5 KB
- check-file-structure.shruns5.7 KB
- check-phpstan-baseline.shruns3.5 KB
- check-testing.shruns6.1 KB
- checkpoints.yaml62.1 KB
1 more file not listed here. See all 41 in the repository.