PHPackages                             netresearch/agent-typo3-core-contributions - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. netresearch/agent-typo3-core-contributions

ActiveAi-agent-skill

netresearch/agent-typo3-core-contributions
==========================================

Netresearch AI skill for TYPO3 Core contribution workflow and patch submission

v1.9.0(1mo ago)10[1 issues](https://github.com/netresearch/typo3-core-contributions-skill/issues)(MIT AND CC-BY-SA-4.0)ShellCI passing

Since Dec 16Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/netresearch/typo3-core-contributions-skill)[ Packagist](https://packagist.org/packages/netresearch/agent-typo3-core-contributions)[ RSS](/packages/netresearch-agent-typo3-core-contributions/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (19)Used By (0)

TYPO3 Core Contributions Skill
==============================

[](#typo3-core-contributions-skill)

An AI skill for guiding contributions to TYPO3 Core through systematic workflows, automated quality checks, and best practices enforcement.

🔌 Compatibility
---------------

[](#-compatibility)

This is an **Agent Skill** following the [open standard](https://agentskills.io) originally developed by Anthropic and released for cross-platform use.

**Supported Platforms:**

- ✅ Claude Code (Anthropic)
- ✅ Cursor
- ✅ GitHub Copilot
- ✅ Other skills-compatible AI agents

> Skills are portable packages of procedural knowledge that work across any AI agent supporting the Agent Skills specification.

Overview
--------

[](#overview)

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**

Features
--------

[](#features)

### 🔄 Complete Contribution Workflow

[](#-complete-contribution-workflow)

- Step-by-step guidance from setup to patch submission
- Automated detection of common issues
- Best practices enforcement at every stage

### 🤖 CI/CD Integration

[](#-cicd-integration)

- Systematic debugging of failed GitLab CI jobs
- Pattern recognition for common failures
- Automated fix suggestions

### ✅ Quality Gates

[](#-quality-gates)

- Pre-submission validation
- Code style enforcement (CGL)
- PHPStan static analysis
- Comprehensive test coverage

### 📝 Documentation

[](#-documentation)

- Gerrit workflow reference
- Commit message format guidelines
- Troubleshooting guide with 60+ scenarios
- WIP state management

Quick Start
-----------

[](#quick-start)

### Prerequisites

[](#prerequisites)

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

Installation
------------

[](#installation)

### Marketplace (Recommended)

[](#marketplace-recommended)

Add the [Netresearch marketplace](https://github.com/netresearch/claude-code-marketplace) once, then browse and install skills:

```
# Claude Code
/plugin marketplace add netresearch/claude-code-marketplace
```

### npx ([skills.sh](https://skills.sh))

[](#npx-skillssh)

Install with any [Agent Skills](https://agentskills.io)-compatible agent:

```
npx skills add https://github.com/netresearch/typo3-core-contributions-skill --skill typo3-core-contributions
```

### Download Release

[](#download-release)

Download the [latest release](https://github.com/netresearch/typo3-core-contributions-skill/releases/latest) and extract to your agent's skills directory.

### Git Clone

[](#git-clone)

```
git clone https://github.com/netresearch/typo3-core-contributions-skill.git
```

### Composer (PHP Projects)

[](#composer-php-projects)

```
composer require netresearch/typo3-core-contributions-skill
```

Requires [netresearch/composer-agent-skill-plugin](https://github.com/netresearch/composer-agent-skill-plugin).

Scope
-----

[](#scope)

**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:
- Documentation uses GitHub Pull Requests, not Gerrit
- Different format (reStructuredText) and workflows

Directory Structure
-------------------

[](#directory-structure)

```
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

```

Key Workflows
-------------

[](#key-workflows)

### 1. Initial Setup

[](#1-initial-setup)

```
# Verify prerequisites
./scripts/verify-prerequisites.sh

# Setup TYPO3 Core development environment
./scripts/setup-typo3-coredev.sh
```

### 2. Create Patch

[](#2-create-patch)

```
# 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"
```

### 3. Submit to Gerrit

[](#3-submit-to-gerrit)

```
# 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%ready
```

### 4. Handle CI Failures

[](#4-handle-ci-failures)

The skill provides systematic debugging:

1. Check ALL failed job logs
2. Identify failure patterns (cgl, phpstan, unit tests)
3. Fix all issues in ONE patchset
4. Re-submit and verify

WIP State Management
--------------------

[](#wip-state-management)

### Command-Line Approach (Recommended)

[](#command-line-approach-recommended)

```
# 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%ready
```

### Web UI Alternative

[](#web-ui-alternative)

Open review URL and click "Start Review" button.

**Note**: SSH `gerrit review` command does NOT support WIP flags.

Commit Message Format
---------------------

[](#commit-message-format)

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)

CI/CD Debugging
---------------

[](#cicd-debugging)

Common failure patterns:

### CGL (Code Style)

[](#cgl-code-style)

```
Build/Scripts/cglFixMyCommit.sh
git commit --amend --no-edit
```

### PHPStan

[](#phpstan)

```
Build/Scripts/runTests.sh -s phpstan
# Fix reported issues
```

### Unit Tests

[](#unit-tests)

```
Build/Scripts/runTests.sh -s unit path/to/test
# Fix test failures
```

Troubleshooting
---------------

[](#troubleshooting)

The 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.

Real-World Testing
------------------

[](#real-world-testing)

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.

Updates and Enhancements
------------------------

[](#updates-and-enhancements)

Recent additions:

### v1.1.0 (2025-10-27)

[](#v110-2025-10-27)

- ✅ 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

Contributing
------------

[](#contributing)

To improve this skill:

1. Test on real TYPO3 Core contributions
2. Document edge cases in troubleshooting guide
3. Add automation scripts for common tasks
4. Validate against official TYPO3 documentation

Resources
---------

[](#resources)

### Official TYPO3 Documentation

[](#official-typo3-documentation)

- [Contribution Guide](https://docs.typo3.org/m/typo3/guide-contributionworkflow/main/en-us/)
- [Gerrit Documentation](https://gerrit-review.googlesource.com/Documentation/user-upload.html)
- [TYPO3 Forge](https://forge.typo3.org/)

### Related Skills

[](#related-skills)

- [TYPO3 Docs Skill](https://github.com/netresearch/typo3-docs-skill) - For documentation contributions

License
-------

[](#license)

This project uses split licensing:

- **Code** (scripts, workflows, configs): [MIT](LICENSE-MIT)
- **Content** (skill definitions, documentation, references): [CC-BY-SA-4.0](LICENSE-CC-BY-SA-4.0)

See the individual license files for full terms.

Author
------

[](#author)

Created for use with Claude Code and TYPO3 Core contributions.

Maintained by: Netresearch DTT GmbH

Support
-------

[](#support)

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

---

**Made with ❤️ for Open Source by [Netresearch](https://www.netresearch.de/)**

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance72

Regular maintenance activity

Popularity2

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 98.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~7 days

Total

16

Last Release

41d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/acffee6a64e18f21593794b335dd8786001148f7df89fd8372a54d3dd09d91a4?d=identicon)[netresearch](/maintainers/netresearch)

---

Top Contributors

[![CybotTM](https://avatars.githubusercontent.com/u/326348?v=4)](https://github.com/CybotTM "CybotTM (82 commits)")[![renovate[bot]](https://avatars.githubusercontent.com/in/2740?v=4)](https://github.com/renovate[bot] "renovate[bot] (1 commits)")

---

Tags

agent-skillsai-agentclaude-code-skillcontributiongerritopen-standardskilltypo3typo3-cms

### Embed Badge

![Health badge](/badges/netresearch-agent-typo3-core-contributions/health.svg)

```
[![Health](https://phpackages.com/badges/netresearch-agent-typo3-core-contributions/health.svg)](https://phpackages.com/packages/netresearch-agent-typo3-core-contributions)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
