Notre avis
Cette compétence met à jour la configuration RuboCop pour réduire le seuil maximal de lignes par classe/module et corrige les violations générées.
Points forts
- Automatise la mise à jour de la configuration RuboCop
- Identifie les classes et modules dépassant le nouveau seuil
- Propose des stratégies de refactorisation concrètes
Limites
- Nécessite que le projet utilise RuboCop
- Ne modifie pas directement le code, seulement le plan
- Suppose que l'utilisateur valide et exécute le plan
Lorsque vous souhaitez appliquer une règle de style plus stricte sur la taille des classes/modules dans un projet Ruby.
Si le projet n'utilise pas RuboCop ou si le seuil cible n'est pas encore déterminé.
Analyse de sécurité
SûrThe skill only runs RuboCop via bundle exec with fixed options, reads local config files, and compiles a brief. No destructive, exfiltrating, or obfuscated actions. Standard development tool usage.
Aucun point d'attention détecté
Exemples
Use plan-reduce-max-lines to reduce the class/module line limit to 100 and fix violations.Reduce max class lines to 80 and generate a refactoring plan.Run plan-reduce-max-lines with threshold 120.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.