mcpField
T
typo3-core-contributions

typo3-core-contributions

github.com/dirnbauerDevelopment3364 installsUpdated 13w ago
Repository

About typo3-core-contributions

typo3-core-contributions is a skill for developers contributing patches to TYPO3 Core. It guides work from Forge issue analysis through Gerrit submission, CI debugging, and review updates.

Key features

  1. 01Forge issue analysis and creation
  2. 02Gerrit patch submission workflow
  3. 03Commit format and Git operations
  4. 04CI log diagnosis and local checks
  5. 05Review feedback and patchset updates

Use cases

  1. 01Prepare and submit a TYPO3 Core patch
  2. 02Investigate failures in TYPO3 CI jobs
  3. 03Amend a commit after Gerrit review

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/dirnbauer/webconsulting-skills --skill typo3-core-contributions

After installing, type/typo3-core-contributionsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
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
troubleshooting.md
scripts/
create-commit-message.py
create-forge-issue.sh
query-forge-metadata.sh
setup-typo3-coredev.sh
validate-commit-message.py
verify-prerequisites.sh

Details

From the project README

TYPO3 Core Contributions

Guide for contributing to TYPO3 Core: Forge issues, Gerrit patches, CI debugging, and review workflows.

When to Use

  • Forge issue analysis or creation (forge.typo3.org/issues/*)
  • Patch submission, CI debugging, Gerrit review workflow
  • Commit message formatting, cherry-picks, rebasing

Prerequisites

Run ${CLAUDE_SKILL_DIR}/scripts/verify-prerequisites.sh to check: TYPO3.org account, Gerrit SSH (ssh -p 29418 <user>@review.typo3.org), Git email matching Gerrit. See references/account-setup.md.

Workflow

  1. Setup: Account + environment (${CLAUDE_SKILL_DIR}/scripts/setup-typo3-coredev.sh, references/ddev-setup-workflow.md)
  2. Branch: git checkout -b feature/<issue>-description
  3. Analyze: Understand root cause, reproduction steps, affected versions before coding
  4. Develop: Implement fix + tests, validate with typo3-conformance-skill
  5. Commit: Follow format below, include Resolves: #<issue> + Releases:
  6. Push: git push origin HEAD:refs/for/main (starts as WIP)
  7. CI: Wait for all jobs. Read actual GitLab logs at git.typo3.org/typo3/CI/cms/-/jobs/<id>. Fix ALL failures in one amend+push
  8. Ready: Mark ready via git push origin HEAD:refs/for/main%ready or Gerrit UI "Start Review"
  9. Review: Address feedback, amend commit, preserve Change-Id. Fetch reviewer's patchset first to preserve their message edits: git fetch origin refs/changes/XX/NNNNN/N && git reset --soft FETCH_HEAD
  10. Update: git commit --amend && git push origin HEAD:refs/for/main

Commit Format

[TYPE] Subject (imperative mood, max 52 chars)

How and why (not what). Wrap at 72 chars.

Resolves: #12345
Releases: main, 13.4, 12.4

Types: [BUGFIX], [FEATURE] (main only), [TASK], [DOCS], [SECURITY] Breaking: [!!!][TYPE] prefix, Releases: main only Required: Every commit MUST have Resolves: (not just Related:)

CI Debugging

Read ALL failing job logs (never guess). Common jobs: cgl pre-merge (code style), phpstan (static analysis), unit/functional (tests). Fix all in one patchset. Local checks:

./Build/Scripts/runTests.sh -s unit && ./Build/Scripts/runTests.sh -s functional
./Build/Scripts/cglFixMyCommit.sh
./Build/Scripts/runTests.sh -s phpstan

Key Operations

TaskCommand
Push to Gerritgit push origin HEAD:refs/for/main
Mark readygit push origin HEAD:refs/for/main%ready
Set WIPgit push origin HEAD:refs/for/main%wip
Rebasegit fetch origin && git rebase origin/main
Cherry-pick patchgit fetch origin refs/changes/XX/NNNNN/N && git cherry-pick FETCH_HEAD
Install hookcp Build/git-hooks/commit-msg .git/hooks/ && chmod +x .git/hooks/commit-msg
Fix email mismatchGIT_COMMITTER_EMAIL="registered@email" git commit --amend --no-edit
Forge API${CLAUDE_SKILL_DIR}/scripts/create-forge-issue.sh, references/forge-api.md

References

TopicFile
Account setupreferences/account-setup.md
Commit formatreferences/commit-message-format.md
Gerrit workflowreferences/gerrit-workflow.md
Review patternsreferences/gerrit-review-patterns.md
Modern patternsreferences/modern-typo3-patterns.md
DDEV setupreferences/ddev-setup-workflow.md
Forge APIreferences/forge-api.md
Commit hookreferences/commit-msg-hook.md
Troubleshootingreferences/troubleshooting.md

Credits & Attribution

This skill is based on the excellent work by Netresearch DTT GmbH.

Original repository: https://github.com/netresearch/typo3-core-contributions-skill

Copyright (c) Netresearch DTT GmbH — Methodology and best practices (MIT / CC-BY-SA-4.0)

Special thanks to Netresearch DTT GmbH for their generous open-source contributions to the TYPO3 community, which helped shape this skill collection. Adapted by webconsulting.at for this skill collection

Comments

Markdown supported