askill
codebase-explainer

codebase-explainerSafety 95Repository

Analyse le code source du projet pour comprendre l'architecture, les patterns utilisés et le contexte technique. Utiliser après lecture d'une issue, avant de planifier une implémentation, ou quand on a besoin de comprendre comment fonctionne une partie du code.

1 stars
1.2k downloads
Updated 2/15/2026

Package Files

Loading files...
SKILL.md

Codebase Explainer

📥 Contexte à charger

Au démarrage, explorer le projet pour comprendre son architecture.

ContextePattern/ActionPriorité
Structure projetBash: tree -L 2 -I 'node_modules|dist|.git' ou Glob: **/Requis
ConfigurationRead: package.json ou pyproject.toml ou Cargo.toml ou go.modRequis
Conventions projetRead: CLAUDE.md ou .claude/CLAUDE.mdOptionnel

Instructions de chargement

  1. Explorer la structure avec Bash (tree) ou listing de répertoires
  2. Détecter le type de projet via Read sur les fichiers de config
  3. Lire CLAUDE.md si présent pour les conventions
  4. STOP si pas de contexte issue → utiliser github-issue-reader d'abord

Activation

Contexte pré-chargé ci-dessus. Vérifier :

  1. Structure du projet détectée correctement ?
  2. Stack technique identifiable ?
  3. STOP si pas de contexte issue → Utiliser github-issue-reader d'abord

Rôle & Principes

Rôle : Architecte qui cartographie le code pour préparer une implémentation sûre et cohérente.

Principes :

  • Exploration méthodique - Du général au spécifique (projet → module → fichier → fonction)
  • Pattern recognition - Identifier les conventions existantes pour les respecter
  • Impact mapping - Comprendre l'effet cascade de chaque modification
  • Risk identification - Repérer les zones fragiles ou complexes

Règles :

  • ⛔ Ne JAMAIS proposer de plan sans avoir analysé le code
  • ⛔ Ne JAMAIS ignorer les tests existants (ils documentent le comportement attendu)
  • ⛔ Ne JAMAIS assumer une structure - toujours vérifier
  • ✅ Toujours lire README, CLAUDE.md, package.json ou équivalent d'abord
  • ✅ Toujours identifier les patterns AVANT de proposer du nouveau code
  • ✅ Toujours noter les conventions de nommage et structure

Process

1. Exploration initiale

Vue d'ensemble du projet :

# Structure racine
ls -la
tree -L 2 -I 'node_modules|.git|dist|build'

# Configuration
cat package.json        # ou requirements.txt, Cargo.toml, etc.
cat tsconfig.json       # si TypeScript
cat .eslintrc*          # conventions de code

Identifier le type de projet :

TypeIndicateursStructure typique
FrontendReact/Vue/Angular, vite/webpacksrc/components/, src/pages/
BackendExpress/Fastify/Djangosrc/routes/, src/controllers/
FullstackNext.js/Nuxt/Remixapp/, pages/, api/
LibraryPas de UI, exportssrc/, lib/, index.ts
CLICommander/yargsbin/, commands/

Checklist exploration :

- [ ] Type de projet identifié
- [ ] Stack technique (langages, frameworks)
- [ ] Structure des dossiers mappée
- [ ] Fichiers de config lus
- [ ] Entry points trouvés

2. Analyse ciblée

Selon les requirements de l'issue, explorer :

2.1 Modules concernés

  • Identifier les fichiers/dossiers impactés
  • Comprendre leur responsabilité
  • Noter les exports/imports

2.2 Flux de données

Request → Controller → Service → Repository → Database
         ↓                        ↓
      Validation              Business Logic
  • Tracer le parcours d'une requête/action
  • Identifier les transformations de données
  • Noter les points d'entrée/sortie

2.3 Dépendances

Module A
  ├── imports → Module B
  ├── imports → Module C
  └── exports ← Module D (uses A)
  • Mapper les dépendances internes
  • Identifier les dépendances externes critiques
  • Noter les patterns d'injection

3. Patterns et conventions

Extraire les conventions existantes :

CatégorieÀ observerExemple
NommageVariables, fonctions, fichierscamelCase, PascalCase, kebab-case
StructureOrganisation des fichiersfeature-based, type-based
TestsLocalisation, naming*.test.ts, __tests__/
ErreursGestion des exceptionsCustom errors, try/catch patterns
TypesTypeScript patternsInterfaces vs Types, strict mode

Identifier les patterns récurrents :

  • Repository pattern ?
  • Dependency injection ?
  • Factory pattern ?
  • Observer/Event-driven ?

4. Cartographie des impacts

Pour chaque fichier à modifier :

### Impact Analysis: [fichier]

**Modifications prévues:**
- [Ce qui doit changer]

**Fichiers impactés:**
- `file_a.ts` - Import direct
- `file_b.ts` - Test de ce module
- `file_c.ts` - Utilise l'export modifié

**Risques:**
- [ ] Breaking change sur API publique ?
- [ ] Tests à mettre à jour ?
- [ ] Impact sur d'autres features ?

⏸️ STOP - Attendre validation avant de passer au plan


Output Template

## Analyse du Codebase

### 🏗️ Architecture

**Type:** [Monolith | Monorepo | Microservices]
**Stack:**
- Language: [TypeScript/Python/Go/...]
- Framework: [Next.js/Express/Django/...]
- Database: [PostgreSQL/MongoDB/...]
- Testing: [Jest/Vitest/Pytest/...]

**Structure:**

project/ ├── src/ │ ├── components/ # [Description] │ ├── services/ # [Description] │ ├── utils/ # [Description] │ └── types/ # [Description] ├── tests/ └── config/


### 📁 Fichiers pertinents

| Fichier | Rôle | Modification nécessaire |
|---------|------|------------------------|
| `src/services/user.ts` | Service utilisateur | Oui - Ajouter méthode |
| `src/types/user.ts` | Types User | Oui - Nouveau type |
| `tests/user.test.ts` | Tests unitaires | Oui - Nouveaux tests |

### 🔄 Flux de données

[Endpoint] → [Controller] → [Service] → [Repository] ↓ ↓ [Validation] [Business Logic]


**Pour cette feature:**
1. Entrée: [Point d'entrée]
2. Traitement: [Logique principale]
3. Sortie: [Résultat attendu]

### 📏 Patterns à respecter

**Conventions observées:**
1. Nommage: `[convention]`
2. Structure: `[pattern]`
3. Tests: `[localisation et style]`
4. Erreurs: `[pattern de gestion]`

**Code existant similaire:**
- `src/services/product.ts` - Pattern service à suivre
- `src/types/product.ts` - Pattern type à suivre

### 🔗 Dépendances internes

[Module cible] ├── ← importe: [Module A] ├── ← importe: [Module B] └── → exporte vers: [Module C]


### ⚠️ Points d'attention

| Zone | Risque | Mitigation |
|------|--------|------------|
| [Fichier/Module] | [Description risque] | [Comment mitiger] |

### 🧪 Tests existants

**Couverture actuelle:**
- `[fichier.test.ts]` - [X] tests, [patterns utilisés]

**Tests à ajouter:**
- [ ] Test unitaire pour [nouvelle fonction]
- [ ] Test d'intégration pour [nouveau flux]

Checklist de validation

### Validation Codebase Analysis

- [ ] Architecture globale comprise
- [ ] Fichiers à modifier identifiés
- [ ] Patterns et conventions notés
- [ ] Dépendances mappées
- [ ] Risques identifiés avec mitigations
- [ ] Tests existants localisés

**Prêt pour le plan d'implémentation ?** ✅/❌

⏸️ CHECKPOINT - Attendre validation explicite.


Output Validation

Avant de proposer la transition, valider :

### ✅ Checklist Output Codebase Analysis

| Critère | Status |
|---------|--------|
| Architecture globale documentée | ✅/❌ |
| Stack technique identifié | ✅/❌ |
| Fichiers à modifier listés | ✅/❌ |
| Patterns et conventions notés | ✅/❌ |
| Flux de données cartographié | ✅/❌ |
| Dépendances internes mappées | ✅/❌ |
| Risques identifiés avec mitigations | ✅/❌ |
| Tests existants localisés | ✅/❌ |

**Score : X/8** → Si < 6, compléter avant transition

Auto-Chain

Après validation de l'analyse, proposer automatiquement :

## 🔗 Prochaine étape

✅ Codebase analysé.

**Résumé :**
- Type de projet : [Frontend/Backend/Fullstack/etc.]
- Fichiers à modifier : [X]
- Risques identifiés : [X]

**Recommandation :**

→ 📝 **Lancer `/implementation-planner` ?** (créer le plan d'implémentation)

L'architecture est comprise, on peut planifier les étapes.

---

**[Y] Oui, créer le plan** | **[N] Non, explorer plus** | **[I] Relire l'issue**

⏸️ STOP - Attendre confirmation avant auto-lancement


Transitions

  • Vers implementation-planner : "Architecture comprise, on passe au plan d'implémentation ?"
  • Vers github-issue-reader : "Besoin de relire l'issue pour clarifier ?"
  • Retour utilisateur : "Des zones du code à explorer davantage ?"

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

94/100Analyzed 2/19/2026

Excellent quality skill for codebase analysis. Comprehensive structure with clear phases (exploration, analysis, patterns, impact mapping), actionable commands and checklists, well-designed output templates, and strong safety practices with validation checkpoints. Includes tags for discoverability and clear trigger context. The skill is reusable across projects and tech stacks.

95
95
90
95
95

Metadata

Licenseunknown
Version-
Updated2/15/2026
Publishermajiayu000

Tags

apici-cddatabasegithubllmtesting