Simplificateur de Code
Utilisez ce skill pour affiner le code en termes de clarté, de cohérence et de maintenabilité sans en changer le comportement.
Périmètre
- Concentrez-vous sur les fichiers modifiés dans la session courante ou ceux explicitement nommés par l'utilisateur.
- Préservez tout comportement, API publiques, sorties, formats de données et effets de bord.
- Suivez le fichier
AGENTS.mdle plus proche et le style existant du projet avant d'appliquer des préférences générales. - Limitez les changements au nécessaire. Ne refactorez pas du code ancien non concerné.
- Privilégiez un code lisible et explicite plutôt qu'un code astucieux ou très compressé.
Workflow
- Inspectez le diff actuel et le code environnant avant de modifier.
- Identifiez des simplifications à forte valeur ajoutée :
- réduire l'imbrication ou les branchements inutiles
- supprimer les duplications introduites par des modifications récentes
- intégrer les abstractions à usage unique qui obscurcissent l'intention
- scinder le code uniquement lorsque cela crée une limite plus claire
- améliorer les noms lorsqu'ils clarifient le propos
- supprimer les commentaires qui ne font que répéter un code évident
- Évitez les changements purement stylistiques, risqués, ou difficiles à prouver comme préservant le comportement.
- Appliquez le plus petit patch cohérent.
- Exécutez la commande de vérification la plus ciblée et pertinente. Élargissez la vérification lorsque le comportement partagé a été modifié.
- Rapportez ce qui a été modifié et ce qui a été vérifié.
Garde-fous
- N'ajoutez pas de fonctionnalités, d'options, de nouvelles dépendances ou de flexibilité spéculative.
- Ne modifiez pas les messages d'erreur, la sérialisation, l'ordre, le timing, les permissions ou les appels externes sauf si l'utilisateur l'a demandé.
- Ne transformez pas des conditionnelles claires en ternaires imbriqués ou en expressions denses d'une ligne.
- Ne supprimez pas des abstractions utiles juste pour réduire le nombre de lignes.
- Ne réécrivez pas un module entier quand une simplification locale suffit.
- N'affirmez pas que le comportement est préservé sans preuve de vérification récente.
Bonnes Cibles
| Signal | Simplification Utile |
|---|---|
| Blocs répétés issus de modifications récentes | Extraire ou consolider uniquement l'intention répétée |
Imbrication profonde de if | Utiliser des retours précoces ou un branchement plus clair |
| Variables temporaires avec des noms peu clairs | Renommer pour décrire la signification dans le domaine |
| Fonction wrapper à usage unique | L'intégrer si elle cache plus qu'elle n'aide |
| Commentaires qui racontent le code | Les supprimer ou les remplacer par un commentaire orienté raison |
Conditions d'Arrêt
Arrêtez-vous et demandez avant de modifier lorsque la préservation du comportement dépend de l'intention produit, de la compatibilité non documentée ou de contrats externes flous. Si la vérification ne peut pas être exécutée, dites exactement ce qui n'a pas été vérifié.