CLI Citadel
Une commande dans le dossier du projet : la CLI envoie le code utile, attend l’analyse et affiche la note, les failles et leur correctif. Aucune archive à préparer.
Installer et se connecter
Créez un compte gratuit sur citadelscan.com, puis une clé d’API dans Console › CLI & IDE. Une clé agit en votre nom dans un espace ; elle n’est affichée qu’une fois et se révoque à tout moment.
npm install -g citadelscan
citadel loginLa clé est enregistrée dans ~/.citadel/config.json, lisible par vous seul. La variable CITADEL_API_KEY, si elle existe, passe avant.
Analyser un projet
cd my-app
citadel scanÀ la première analyse d’un projet, la CLI vous demande de confirmer que vous êtes propriétaire du code ou autorisé à l’analyser. Le projet est créé dans votre espace s’il n’existe pas.
| Option | Effet |
|---|---|
| --project <name> | Projet Citadel (par défaut : nom du package.json, sinon du dossier) |
| --fail-on <severity> | Code de sortie 1 dès une faille ouverte de cette gravité ou plus : critical, high, medium, low |
| --json | Résultat complet en JSON (même format que l’API) |
| --yes | Confirme l’autorisation d’analyser (indispensable en CI) |
| Code de sortie | Signification |
|---|---|
| 0 | Analyse terminée |
| 1 | Une faille a atteint le seuil --fail-on |
| 2 | Erreur : clé invalide, envoi refusé, analyse en échec |
Ce qui est envoyé
- Dans un dépôt git : les fichiers suivis et non ignorés, selon votre .gitignore. Un .env commité est envoyé, car c’est justement un secret exposé à signaler.
- Hors git : le dossier, sans les .env locaux ni les fichiers d’identifiants (.ssh, .npmrc, *.pem, *.key…).
- Toujours écartés : médias, binaires, dossiers de build, node_modules et vendor, fichiers de plus de 5 Mo (sauf fichiers de dépendances).
- Refusés : votre dossier personnel, la racine d’un disque, et un dossier qui ne ressemble pas à un projet de code.
Archive limitée à 50 Mo. Personne chez Citadel ne lit votre code : il est analysé automatiquement dans un environnement isolé, puis supprimé.
Intégration continue
Ajoutez la clé comme secret CITADEL_API_KEY. Le build échoue si une faille élevée ou critique est ouverte.
- name: Citadel
run: npx -y citadelscan scan --yes --fail-on high
env:
CITADEL_API_KEY: ${{ secrets.CITADEL_API_KEY }}citadel:
image: node:22
script:
- npx -y citadelscan scan --yes --fail-on high
variables:
CITADEL_API_KEY: $CITADEL_API_KEYErreurs fréquentes
| Message | Que faire |
|---|---|
| Invalid or revoked API key | Créez une nouvelle clé dans la console, puis citadel login. |
| Archive au-dessus de 50 Mo | Ajoutez les gros fichiers de données au .gitignore, ou reliez le dépôt GitHub dans la console (jusqu’à 250 Mo). |
| Quota d’analyses atteint | Attendez le mois suivant ou passez à une offre supérieure. |
| Projet relié à GitHub | Il est déjà analysé à chaque push : utilisez --project avec un autre nom. |
Le plan gratuit inclut 10 analyses par mois, CLI et MCP compris, sans carte bancaire.
Personne ne lit votre code : il est analysé automatiquement dans un environnement isolé, puis supprimé. Confidentialité du code