├── skills/typo3-core-contributions/
│ ├── SKILL.md # Main skill definition
│ ├── references/ # Reference documentation
│ │ ├── account-setup.md
│ │ ├── commit-message-format.md
│ │ ├── commit-msg-hook.md
│ │ ├── ddev-setup-workflow.md
│ │ ├── forge-api.md
│ │ ├── gerrit-review-patterns.md
│ │ ├── gerrit-workflow.md
│ │ ├── modern-typo3-patterns.md
│ │ ├── t3o-gitlab-workflow.md
│ │ └── troubleshooting.md
│ └── scripts/ # Automation scripts
│ ├── create-commit-message.py
│ ├── create-forge-issue.sh
│ ├── query-forge-metadata.sh
│ ├── setup-typo3-coredev.sh
│ ├── t3o-gitlab.py
│ ├── validate-commit-message.py
│ └── verify-prerequisites.sh
├── .github/workflows/ # CI workflows
├── assets/ # Images and diagrams
├── Build/ # Build tooling
├── evals/ # Skill evaluations
├── docs/ # Architecture and plans
│ ├── ARCHITECTURE.md
│ └── exec-plans/
└── composer.json # Package definition
No Makefile or npm scripts. Key scripts live in skills/typo3-core-contributions/scripts/:
bash skills/typo3-core-contributions/scripts/verify-prerequisites.sh— check TYPO3 account, Gerrit SSH, Git configbash skills/typo3-core-contributions/scripts/setup-typo3-coredev.sh— automated TYPO3 Core dev environment setuppython3 skills/typo3-core-contributions/scripts/validate-commit-message.py— validate commit message formatpython3 skills/typo3-core-contributions/scripts/create-commit-message.py— generate compliant commit messagespython3 skills/typo3-core-contributions/scripts/t3o-gitlab.py— git.typo3.org helper: access level, issues, merge requests, links, bot-wall probe
- Route by host first —
review.typo3.orgis Gerrit (Core),forge.typo3.orgis Redmine (Core issues),git.typo3.org/services/t3o-sites/**is ordinary GitLab for the t3o sites. Onlygit.typo3.org/typo3/CI/cmsbelongs to the Core workflow - Gerrit, not GitHub PRs — TYPO3 Core uses Gerrit (
review.typo3.org) for code review. t3o site repositories use GitLab merge requests instead, againstdevelop, never merged by their author - Commit message format — must start with
[TYPE](BUGFIX, FEATURE, TASK, DOCS, CLEANUP, SECURITY), includeResolves: #<issue>andReleases:lines - WIP workflow — submit as WIP first (
refs/for/main%wip), mark ready only after CI passes - Preserve Change-Id — always amend commits to keep the Gerrit Change-Id
- Analyze before coding — understand the issue deeply before writing any fix
- Fix ALL CI failures in one patchset — do not iterate one failure at a time
- Scope boundary — this skill covers code contributions only; documentation contributions use typo3-docs-skill
- Verify a write, never a status code — on git.typo3.org a label write below Reporter answers HTTP 200 and drops the field; read the returned object back
- Fingerprint live responses from t3o sites —
extensions.typo3.orgis behind Anubis, which serves an HTTP 200text/htmlchallenge page to browser user agents
- SKILL.md — full skill definition
- Gerrit Workflow
- Commit Message Format
- Troubleshooting — 60+ scenarios
- Account Setup
- DDEV Setup
- t3o Sites on git.typo3.org
- Architecture