An AI skill for guiding contributions to TYPO3 Core through systematic workflows, automated quality checks, and best practices enforcement.
This skill provides comprehensive guidance for contributing to TYPO3 Core, including:
- Gerrit-based code review workflow
- Automated CI/CD debugging
- Commit message formatting
- WIP (Work in Progress) state management
- Testing and quality assurance
- Account setup and prerequisites
- Step-by-step guidance from setup to patch submission
- Automated detection of common issues
- Best practices enforcement at every stage
- Systematic debugging of failed GitLab CI jobs
- Pattern recognition for common failures
- Automated fix suggestions
- Pre-submission validation
- Code style enforcement (CGL)
- PHPStan static analysis
- Comprehensive test coverage
- Gerrit workflow reference
- Commit message format guidelines
- Troubleshooting guide with 60+ scenarios
- WIP state management
Ensure you have:
- Git configured with your TYPO3.org email
- SSH key uploaded to review.typo3.org
- Docker (for DDEV) or native PHP 8.2+ environment
Use this skill in Claude Code by referencing it from your project's skill configuration.
The skill activates automatically when working on TYPO3 Core contributions. It guides you through:
- Setup Phase: Prerequisites verification, environment configuration
- Development Phase: Code changes, testing, validation
- Submission Phase: Gerrit patch submission, CI monitoring, WIP management
- Review Phase: Addressing reviewer feedback, iterating on changes
This skill covers: TYPO3 Core code contributions (PHP, JavaScript, CSS, tests)
- Submission via Gerrit (review.typo3.org)
- Git commit-msg hooks and validation
- Forge issue tracking
- GitLab CI/CD pipeline
Not covered: TYPO3 Documentation contributions
- For documentation work, use: https://github.com/netresearch/typo3-docs-skill
- Documentation uses GitHub Pull Requests, not Gerrit
- Different format (reStructuredText) and workflows
typo3-core-contributions/
├── SKILL.md # Main skill definition
├── README.md # This file
├── references/
│ ├── account-setup.md # Prerequisites and account configuration
│ ├── commit-message-format.md # Commit message standards
│ ├── ddev-setup-workflow.md # DDEV environment setup
│ ├── gerrit-workflow.md # Complete Gerrit submission workflow
│ └── troubleshooting.md # 60+ troubleshooting scenarios
├── scripts/
│ ├── setup-typo3-coredev.sh # Automated environment setup
│ └── verify-prerequisites.sh # Prerequisites checker
└── assets/
└── images/ # Workflow diagrams and screenshots
# Verify prerequisites
./scripts/verify-prerequisites.sh
# Setup TYPO3 Core development environment
./scripts/setup-typo3-coredev.sh# Create feature branch
git checkout -b feature/issue-number-description
# Make changes, commit with proper format
git commit -m "[BUGFIX] Fix indexed search null handling
Resolves: #105737
Releases: main"# Submit as WIP (Work in Progress)
git push origin HEAD:refs/for/main%wip
# After CI passes, mark as ready
git commit --amend --allow-empty --no-edit
git push origin HEAD:refs/for/main%readyThe skill provides systematic debugging:
- Check ALL failed job logs
- Identify failure patterns (cgl, phpstan, unit tests)
- Fix all issues in ONE patchset
- Re-submit and verify
# Set WIP state
git push origin HEAD:refs/for/main%wip
# Remove WIP state
git commit --amend --allow-empty --no-edit
git push origin HEAD:refs/for/main%readyOpen review URL and click "Start Review" button.
Note: SSH gerrit review command does NOT support WIP flags.
Required structure:
[TYPE] Short description (max 52 chars)
Extended description explaining the why and how.
Resolves: #12345
Releases: main, 12.4
Types: BUGFIX, FEATURE, TASK, DOCS, CLEANUP, SECURITY
Required: At least one Resolves: line
Optional: Related: (but cannot be used alone)
Common failure patterns:
Build/Scripts/cglFixMyCommit.sh
git commit --amend --no-editBuild/Scripts/runTests.sh -s phpstan
# Fix reported issuesBuild/Scripts/runTests.sh -s unit path/to/test
# Fix test failuresThe skill includes comprehensive troubleshooting for:
- Account Issues: Email mismatch, SSH authentication, commit-msg hook
- CI Failures: CGL, PHPStan, unit tests, functional tests
- Gerrit Issues: WIP state, patch conflicts, rebase requirements
- Testing Issues: Test failures, coverage gaps, fixture setup
- Code Quality: Naming conventions, type safety, defensive programming
See references/troubleshooting.md for detailed solutions.
This skill was developed and validated through:
- Forge Issue #105737: TypeError in indexed search
- 7 patchsets with iterative CI debugging
- GitHub PR #397: Documentation improvements
- Live Gerrit testing: WIP workflow validation
All workflows have been tested on actual TYPO3 Core submissions.
Recent additions:
- ✅ WIP state management (command-line and web UI)
- ✅ CI failure investigation protocol (423 lines)
- ✅ Comprehensive troubleshooting guide (60+ scenarios)
- ✅ PHPStan error guidance
- ✅ Code style enforcement patterns
- ✅ Documentation scope clarification
To improve this skill:
- Test on real TYPO3 Core contributions
- Document edge cases in troubleshooting guide
- Add automation scripts for common tasks
- Validate against official TYPO3 documentation
- TYPO3 Docs Skill - For documentation contributions
MIT License - See LICENSE file for details
Created for use with Claude Code and TYPO3 Core contributions.
Maintained by: Netresearch DTT GmbH
For issues or questions:
- Open an issue in this repository
- Reference official TYPO3 documentation
- Test workflows on live Gerrit instance
Version: 1.1.0 Last Updated: 2025-10-27 Status: Production-ready, validated on live submissions