
code-reviewer
by elsolal
SKILL.md
name: code-reviewer description: Effectue une revue de code approfondie en 3 passes successives pour optimiser et améliorer le code. Utiliser après les tests, quand on veut améliorer la qualité du code, ou avant de finaliser une feature. model: opus context: fork allowed-tools:
- Read
- Grep
- Glob
argument-hint:
user-invocable: true
hooks:
pre_tool_call:
- matcher: "Read.\.ts|Read.\.js|Read.\.tsx|Read.\.jsx" command: "npm test --passWithNoTests 2>/dev/null | tail -5 || echo '⚠️ Tests non exécutés - vérifier manuellement'" post_tool_call:
- matcher: "Read" command: "echo '--- Analysing file for review ---'" knowledge: quality:
- ../../knowledge/testing/test-quality.md
- ../../knowledge/testing/nfr-criteria.md risk:
- ../../knowledge/testing/risk-governance.md
- ../../knowledge/testing/probability-impact.md patterns:
- ../../knowledge/testing/error-handling.md
- ../../knowledge/testing/feature-flags.md
Code Reviewer (3 Passes)
📥 Contexte review chargé automatiquement
Fichiers modifiés récemment
!git diff --name-only HEAD~5 2>/dev/null | head -15 || echo "Pas de commits récents"
Diff actuel (staged + unstaged)
!git diff --stat 2>/dev/null | tail -20 || echo "Pas de changements en cours"
Derniers commits
!git log --oneline -5 2>/dev/null || echo "Pas d'historique git"
ESLint/TypeScript errors actuels
!npm run lint 2>&1 | tail -20 || npm run typecheck 2>&1 | tail -20 || echo "Pas de linter configuré"
Knowledge Base
Fichiers de knowledge disponibles dans ../../knowledge/testing/
Quality (charger pour review)
| Fichier | Description |
|---|---|
test-quality.md | Definition of Done, anti-patterns de tests |
nfr-criteria.md | Security, performance, reliability criteria |
Risk Assessment
| Fichier | Description |
|---|---|
risk-governance.md | Scoring matrix, gate decision rules |
probability-impact.md | Probability/Impact scale definitions |
Best Practices
| Fichier | Description |
|---|---|
error-handling.md | Exception handling, retry validation |
feature-flags.md | Feature flag governance, cleanup |
Process
La review se fait en 3 passes obligatoires, chacune avec un focus différent. Entre chaque passe : appliquer les corrections, puis passer à la suivante.
Severity Classification
| Sévérité | Critères | Action |
|---|---|---|
| 🔴 Critical | Bugs, failles sécurité, data loss | Fix obligatoire |
| 🟡 Medium | Performance, code smells | Fix recommandé |
| 🟢 Minor | Style, nommage | Nice-to-have |
Pass 1: Correctness & Logic
Focus: Le code fait-il ce qu'il doit faire ?
Checklist
- Logique métier correcte
- Tous les cas gérés (nominal + erreurs)
- Pas de bugs évidents
- Types corrects
- Pas de failles de sécurité
Questions
- Que se passe-t-il si input null/undefined ?
- Erreurs propagées correctement ?
- Race conditions possibles ?
Output
## Review Pass 1: Correctness
### Issues trouvées
| Sévérité | Fichier | Ligne | Description | Fix |
|----------|---------|-------|-------------|-----|
| 🔴 Critical | ... | ... | ... | ... |
| 🟡 Medium | ... | ... | ... | ... |
| 🟢 Minor | ... | ... | ... | ... |
### Actions avant Pass 2
1. [Fix 1]
2. [Fix 2]
⏸️ STOP - Appliquer corrections → Validation → Pass 2
Pass 2: Readability & Maintainability
Focus: Le code est-il facile à comprendre et maintenir ?
Checklist
- Nommage clair et cohérent
- Fonctions de taille raisonnable
- Commentaires utiles (pas évidents)
- Structure logique
- Pas de code dupliqué
- Abstractions appropriées
Questions
- Un nouveau dev comprendrait-il ce code ?
- Noms explicites ?
- Code smells ?
Output
## Review Pass 2: Readability
### Améliorations suggérées
| Type | Fichier | Suggestion | Impact |
|------|---------|------------|--------|
| Naming | ... | Renommer X → Y | Clarté |
| Structure | ... | Extraire fonction | DRY |
| Comments | ... | Ajouter doc | Maintenance |
### Refactoring
1. [Before/After exemple 1]
2. [Before/After exemple 2]
⏸️ STOP - Appliquer améliorations → Validation → Pass 3
Pass 3: Performance & Optimization
Focus: Le code est-il optimal ?
Checklist
- Pas d'opérations O(n²) évitables
- Pas de re-renders inutiles (si frontend)
- Queries optimisées (si DB)
- Pas de memory leaks
- Lazy loading si pertinent
- Caching si pertinent
Questions
- Ce code scale-t-il ?
- Calculs redondants ?
- Ressources libérées ?
Output
## Review Pass 3: Performance
### Optimisations
| Type | Impact estimé | Effort | Priorité |
|------|--------------|--------|----------|
| [Optim 1] | -Xms latence | Low | P1 |
| [Optim 2] | -X% memory | Medium | P2 |
### Code optimisé
[Before/After pour chaque optimisation]
⏸️ STOP - Appliquer optimisations → Validation finale
Résumé Final
## ✅ Code Review Complete
### Métriques
- Issues critiques: X (toutes résolues)
- Refactoring: X appliqués
- Optimisations: X faites
### Changements
- Fichiers modifiés: X
- Lignes: +X / -X
### Qualité finale
- Correctness: ✅
- Readability: ✅
- Performance: ✅
### Prêt pour merge: ✅
Output Validation
Avant de conclure, valider :
### ✅ Checklist Output Code Review
| Critère | Status |
|---------|--------|
| Pass 1 (Correctness) complète | ✅/❌ |
| Pass 2 (Readability) complète | ✅/❌ |
| Pass 3 (Performance) complète | ✅/❌ |
| Toutes issues 🔴 résolues | ✅/❌ |
| Tests toujours passent | ✅/❌ |
| Lint/Types OK après refactoring | ✅/❌ |
| Diff final documenté | ✅/❌ |
**Score : X/7** → Si < 6, compléter les passes manquantes
Auto-Chain
Après les 3 passes de review, proposer automatiquement :
## 🔗 Prochaine étape
✅ Code Review terminée (3 passes).
**Résumé :**
- Pass 1 (Correctness): ✅
- Pass 2 (Readability): ✅
- Pass 3 (Performance): ✅
- Issues critiques résolues: [X]
**Statut : PRÊT POUR MERGE** 🎉
**Options :**
→ 📦 **Créer le commit ?**
→ 🔀 **Créer la PR ?**
→ 🔄 **Nouvelle feature ?** (retour au début)
---
**[C] Commit** | **[P] Pull Request** | **[N] Nouvelle feature** | **[R] Réviser encore**
⏸️ STOP - Attendre confirmation
Transitions
- Vers commit : "Prêt à committer les changements ?"
- Vers PR : "Prêt à créer la Pull Request ?"
- Retour code-implementer : "Besoin de modifications supplémentaires"
- Retour test-runner : "Besoin de tests additionnels"
スコア
総合スコア
リポジトリの品質指標に基づく評価
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
レビュー
レビュー機能は近日公開予定です