AuditPro
AuditPro est une extension VS Code d'audit de code local. Elle agrege plusieurs controles statiques dans une Webview lisible, sans appel a une API de LLM.
Elle aide a reperer rapidement les fichiers difficiles a maintenir, les dependances vulnerables, les secrets probables, les alertes ESLint et les exports potentiellement inutilises. Le rapport genere aussi un prompt pret a copier vers un agent IA de code pour corriger les problemes detectes.
Fonctionnalites
- Analyse de complexite heuristique sur les fichiers JavaScript et TypeScript.
- Detection de secrets probables avec des expressions regulieres.
- Detection d'exports potentiellement inutilises dans le workspace.
- Execution d'ESLint si le projet audite possede une installation locale dans
node_modules.
- Execution de
npm audit --json si package.json et package-lock.json sont presents.
- Tableau de bord Webview avec score global, alertes triees par criticite, top des fichiers complexes et prompt d'action pour agent IA.
AuditPro fonctionne comme un agregateur d'analyse statique:
- Scan local des fichiers
.js, .jsx, .ts, .tsx, .mjs et .cjs.
- Exclusion des dossiers non pertinents comme
node_modules, dist, build, out, .git, .vscode, .vscode-test et .claude.
- Analyse de complexite heuristique en comptant les branches (
if, for, while, case, catch), les operateurs logiques, les ternaires, les fonctions, la taille des fichiers et le nombre de parametres.
- Detection de secrets par expressions regulieres: cles AWS probables, tokens GitHub, cles privees, mots de passe ou tokens assignes en dur, URL avec identifiants.
- Execution d'ESLint via le binaire local du projet audite (
node_modules/.bin/eslint) quand il existe.
- Execution de
npm audit --json quand le projet contient package.json et package-lock.json.
- Detection simple du code mort en cherchant les exports nommes qui ne semblent pas references ailleurs dans le workspace.
- Generation d'un score global base sur la criticite des alertes.
- Generation d'un prompt synthetique a copier dans un agent IA pour appliquer les corrections avec contexte.
Tout est execute localement dans VS Code. AuditPro n'envoie pas le code vers un service externe.
Tester en developpement
Si Node/npm sont installes uniquement dans WSL, ouvrez obligatoirement le projet en mode WSL dans VS Code. Depuis un terminal WSL:
cd /home/tristanroth/projets/vscode_projet/auditpro
code .
Dans VS Code, le coin inferieur gauche doit indiquer WSL: .... Sinon, lancez la commande VS Code WSL: Reopen Folder in WSL.
- Installer les dependances de l'extension:
npm install
- Compiler:
npm run compile
- Ouvrir ce dossier dans VS Code:
code .
Lancer l'extension avec F5.
Dans la fenetre "Extension Development Host", ouvrir un projet a auditer.
Ouvrir la palette de commandes avec Ctrl+Shift+P, puis lancer:
AuditPro: Lancer l'audit du projet
Le rapport s'ouvre dans un onglet Webview.
Commandes utiles
npm run compile
npm run watch
npm run lint
npm test
Limites actuelles
Les analyses de complexite et de code mort sont volontairement heuristiques. Elles sont rapides et locales, mais ne remplacent pas encore une analyse AST complete. npm audit depend du comportement de npm et peut necessiter un acces au registre npm.