Notre avis
Cette compétence ajuste le seuil maximum de lignes par classe/module dans RuboCop, identifie les violations et génère un plan de refactorisation.
Points forts
- Automatise la mise à jour de la configuration RuboCop
- Identifie systématiquement les classes et modules trop longs
- Propose des stratégies de refactorisation concrètes
- Crée un plan d'exécution structuré via /plan-execute
Limites
- Nécessite que RuboCop soit déjà configuré dans le projet
- Les suggestions de refactorisation restent génériques et peuvent nécessiter des ajustements manuels
- Ne couvre pas d'autres métriques de qualité comme la complexité cyclomatique
Utilisez cette compétence lorsque vous souhaitez réduire la taille des classes ou modules et appliquer les nouvelles limites de manière automatisée.
Évitez cette compétence si vous n'utilisez pas RuboCop ou si vous préférez une approche manuelle de refactorisation sans planification structurée.
Analyse de sécurité
SûrThe skill only runs read-only Ruby linter commands (rubocop) to analyse code and produce a refactoring plan. There are no destructive, network, or obfuscated operations. The bash usage is confined to legitimate development tooling.
Aucun point d'attention détecté
Exemples
Reduce max lines for classes and modules to 100 using RuboCop.Find all classes over 120 lines in my Ruby project and create a plan to refactor them.name: plan-reduce-max-lines description: This skill should be used when reducing the maximum class/module lines threshold and fixing all violations. It updates the RuboCop configuration, identifies classes and modules exceeding the new limit, generates a brief with refactoring strategies, and creates a plan with tasks to split oversized files. allowed-tools: ["Read", "Bash", "Glob", "Grep"]
Reduce Max Lines
Target threshold: $ARGUMENTS lines per class/module
If no argument provided, prompt the user for a target.
Step 1: Gather Requirements
- Read current config from
.rubocop.ymlor.rubocop.local.yml(Metrics/ClassLengthandMetrics/ModuleLength) - Run RuboCop with the target threshold to find violations:
bundle exec rubocop --only Metrics/ClassLength,Metrics/ModuleLength --format json 2>&1 - Note for each violation:
- File path
- Class/module name
- Current line count
If no violations at $ARGUMENTS, report success and exit.
Step 2: Compile Brief and Delegate
Compile the gathered information into a structured brief:
Reduce max class/module lines threshold to $ARGUMENTS.
Classes/modules exceeding threshold (ordered by line count):
1. [file:ClassName] - [current] lines (target: $ARGUMENTS)
2. ...
Configuration change: .rubocop.local.yml, Metrics/ClassLength Max to $ARGUMENTS, Metrics/ModuleLength Max to $ARGUMENTS
Refactoring strategies: extract concerns, extract service objects, remove duplication, delete dead code, simplify logic
Verification: `bundle exec rubocop --only Metrics/ClassLength,Metrics/ModuleLength --format simple 2>&1 | grep "offense" | wc -l` -> Expected: 0
Invoke /plan-execute with this brief to create the implementation plan.
Expert Next.js App Router
Developpement
Un skill qui transforme Claude en expert Next.js App Router.
Générateur de README
Developpement
Crée des README.md professionnels et complets pour vos projets.
Rédacteur de Documentation API
Developpement
Génère de la documentation API complète au format OpenAPI/Swagger.