Guide contributors through the complete TYPO3 Core contribution workflow from account setup to patch submission for both code and documentation contributions. Use when working with TYPO3 Forge issues, preparing patches for TYPO3 Core, contributing to TYPO3, submitting patches to Gerrit or GitHub PRs, fixing TYPO3 bugs, managing WIP state, or debugging CI failures. By Netresearch.
Inherits all available tools
Additional assets for this skill
This skill inherits all available tools. When active, it can use any tool Claude has access to.
LICENSEREADME.mdassets/commit-template.txtclaudedocs/refactoring-summary.mdcomposer.jsonreferences/account-setup.mdreferences/commit-message-format.mdreferences/commit-msg-hook.mdreferences/ddev-setup-workflow.mdreferences/forge-api.mdreferences/gerrit-review-patterns.mdreferences/gerrit-workflow.mdreferences/modern-typo3-patterns.mdreferences/troubleshooting.mdscripts/create-commit-message.pyscripts/create-forge-issue.shscripts/query-forge-metadata.shscripts/setup-typo3-coredev.shscripts/validate-commit-message.pyscripts/verify-prerequisites.shGuide contributors through the complete TYPO3 Core contribution workflow for both code and documentation.
Activate when:
https://forge.typo3.org/issues/105737)| Repository | Submission | Workflow |
|---|---|---|
| Core Code (typo3/typo3) | Gerrit (review.typo3.org) | This skill |
| Core Docs (TYPO3-Documentation/*) | GitHub PRs | This skill |
Related Skills:
typo3-ddev-skill: Development environment setuptypo3-docs-skill: Documentation format validationtypo3-conformance-skill: Code quality checkstypo3-testing-skill: Test writing and executionUser starts contribution
├─ Has Forge issue URL?
│ ├─ Yes → Prerequisites Check
│ └─ No → Guide to Issue Creation
├─ Prerequisites verified?
│ ├─ Yes → Development Phase
│ └─ No → Setup Phase
├─ Patch ready?
│ ├─ Yes → Submission Phase
│ └─ No → Development Phase
└─ Patch submitted?
├─ Yes → Review & Update Phase
└─ No → Prepare for Gerrit
Run scripts/verify-prerequisites.sh to check:
Critical: Git email MUST match Gerrit email or pushes will be rejected.
references/account-setup.mdAutomated (recommended):
./scripts/setup-typo3-coredev.sh
With typo3-ddev-skill: Use for guided DDEV setup
Manual: See references/ddev-setup-workflow.md
Existing issue: Fetch from Forge URL, determine commit type
New issue: Create at https://forge.typo3.org or via API (scripts/create-forge-issue.sh)
git checkout main && git pull
git checkout -b feature/105737-fix-description
typo3-testing-skilltypo3-conformance-skill BEFORE commitFormat:
[TYPE] Subject line (max 52 chars, imperative)
Description explaining how and why.
Resolves: #12345
Releases: main, 13.4, 12.4
Types: [BUGFIX], [FEATURE], [TASK], [DOCS], [SECURITY], [!!!] (breaking)
Required:
Resolves: #<issue> - Every commit MUST have thisReleases: main, 13.4, 12.4 - Target versionsChange-Id: - Auto-generated, never modifyDetails: references/commit-message-format.md
git push origin HEAD:refs/for/main
Expected: remote: https://review.typo3.org/c/Packages/TYPO3.CMS/+/12345 [NEW]
Multiple revisions are NORMAL - Real patches often have 7-24 patch sets.
When feedback arrives:
git add .
git commit --amend # Preserve Change-Id!
git push origin HEAD:refs/for/main
Rebasing:
git fetch origin && git rebase origin/main && git pushDetails: references/gerrit-workflow.md, references/gerrit-review-patterns.md
After approval (+2 Code Review, +1 Verified):
git checkout main && git pull
git branch -D feature/105737-fix-description
| Scenario | Workflow |
|---|---|
| First contribution | Prerequisites → fetch issue → setup → develop → test → validate → commit → submit |
| Update patch | Make changes → typo3-conformance-skill → amend → push |
| Rebase needed | references/gerrit-workflow.md |
| CI failures | typo3-conformance-skill (CGL) or typo3-testing-skill (tests) |
| Dual-repo fix | Core via Gerrit + Docs via GitHub PR |
| Issue | Solution |
|---|---|
| Permission denied (push) | Check SSH: ssh -p 29418 <user>@review.typo3.org |
| Missing Change-Id | Run composer gerrit:setup |
| Merge conflict | See references/gerrit-workflow.md |
| CI failing | Use typo3-conformance-skill or typo3-testing-skill |
Full troubleshooting: references/troubleshooting.md
| Script | Purpose |
|---|---|
scripts/setup-typo3-coredev.sh | Complete automated setup |
scripts/verify-prerequisites.sh | Check accounts, git, environment |
scripts/create-commit-message.py | Interactive commit message generator |
scripts/validate-commit-message.py | Validate against TYPO3 format |
scripts/create-forge-issue.sh | Create issues via API |
| Topic | File |
|---|---|
| Account setup | references/account-setup.md |
| DDEV setup workflow | references/ddev-setup-workflow.md |
| Commit message format | references/commit-message-format.md |
| Commit-msg hook details | references/commit-msg-hook.md |
| Gerrit workflow | references/gerrit-workflow.md |
| Review patterns | references/gerrit-review-patterns.md |
| Forge API | references/forge-api.md |
| Troubleshooting | references/troubleshooting.md |
| Modern TYPO3 patterns | references/modern-typo3-patterns.md |