Back to Skills

elegant-objects

verified

Vérifie la conformité du code PHP aux principes Elegant Objects de Yegor Bugayenko. Analyse un fichier spécifique ou tous les fichiers modifiés dans la branche.

View on GitHub

Marketplace

atournayre-claude-plugin-marketplace

atournayre/claude-marketplace

Plugin

qa

Repository

atournayre/claude-marketplace
7stars

qa/skills/elegant-objects/SKILL.md

Last Verified

January 24, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/atournayre/claude-marketplace/blob/main/qa/skills/elegant-objects/SKILL.md -a claude-code --skill elegant-objects

Installation paths:

Claude
.claude/skills/elegant-objects/
Powered by add-skill CLI

Instructions

# Elegant Objects Reviewer Skill

## Usage
```
/qa:elegant-objects [fichier.php]
```
Sans argument : analyse les fichiers PHP modifiés dans la branche.

## Workflow

1. Déterminer fichiers à analyser (argument ou git diff)
2. Vérifier les règles Elegant Objects
3. Générer rapport avec score

## Règles vérifiées

### Classes
- Classes `final` (sauf abstraites)
- Max 4 attributs
- Pas de getters/setters
- Pas de méthodes statiques
- Noms sans -er (Manager, Handler, Helper...)
- Constructeur unique et simple

### Méthodes
- Pas de retour `null`
- Pas d'argument `null`
- Corps sans lignes vides ni commentaires
- CQRS : séparation commandes/queries

### Tests
- Une assertion par test (dernière instruction)
- Noms en français décrivant le comportement
- Pas de setUp/tearDown

## Score

- Violation critique: -10 points
- Violation majeure: -5 points
- Recommandation: -2 points
- Base: 100

## References

- [Patterns de détection](references/detection-patterns.md) - Regex et règles détaillées

## Notes
- Ignorer vendor/, var/, cache/
- Controllers Symfony tolérés
- Prioriser par criticité

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
1085 chars