
SkillSpector v2.8.2
Scanneur de sécurité pour les compétences des agents IA. Détectez les vulnérabilités, les schémas malveillants, les risques de sécurité, les injections de prompt, l'exfiltration de données et les risques liés à la chaîne d'approvisionnement dans les compétences Claude Code, Codex et MCP avant de les installer.
SkillSpector
Scanner de sécurité pour les compétences d'agents IA. Détectez les vulnérabilités, les schémas malveillants et les risques de sécurité avant d'installer des compétences d'agents.
Aperçu
Les compétences d'agents IA (utilisées par Claude Code, Codex CLI, Gemini CLI, etc.) s'exécutent avec une confiance implicite et une vérification minimale. Dans le sous-ensemble de 31 132 compétences analysées du jeu de données de recherche, 26,1 % des compétences contiennent des vulnérabilités et 5,2 % présentent une intention probablement malveillante.
SkillSpector vous aide à répondre à la question : « Cette compétence est-elle sûre à installer ? »
SkillSpector fait partie du pipeline NVIDIA Verified Skills, qui analyse, évalue et signe les compétences d'agents avant leur publication. Les compétences qui réussissent sont publiées dans le catalogue de compétences NVIDIA.
Documentation
- Analyser les compétences d'agents avant l'installation — Guide hébergé : quand analyser, comment lire un rapport et comment conditionner les installations.
- Guide de développement — Architecture, organisation des paquets et comment étendre le pipeline d'analyse.
- Limites des ressources d'analyse — Plafonds de bundle, d'analyseur, d'artefacts imbriqués, de registre et de résultats en mode fail-closed.
- Extension Pi — Installez SkillSpector comme outil Pi pour analyser les compétences depuis l'intérieur des sessions d'agents.
- Extension OpenCode — Installez SkillSpector comme outil OpenCode et commande
/skillspectorpour analyser les compétences depuis l'intérieur des sessions d'agents.
Fonctionnalités
- Entrée multi-format : analysez des dépôts Git, des URL, des fichiers zip, des répertoires ou des fichiers uniques
- 71 schémas de vulnérabilité répartis en 17 catégories : injection de prompt, exfiltration de données, élévation de privilèges, chaîne d'approvisionnement, agence excessive, gestion des sorties, fuite de prompt système, empoisonnement de mémoire, mauvaise utilisation d'outils, agent malveillant, anti-refus, abus de déclencheur, code dangereux (AST), suivi de teinte, signatures YARA, moindre privilège MCP et empoisonnement d'outils MCP
- Analyse en deux étapes : analyse statique rapide + évaluation sémantique LLM optionnelle
- Recherches de vulnérabilités en direct : SC4 interroge OSV.dev pour des données CVE en temps réel avec repli hors ligne automatique
- Formats de sortie multiples : rapports Terminal, JSON, Markdown et SARIF
- Notation des risques : score de 0 à 100 avec étiquettes de gravité et recommandations claires
- Suppression de référence / faux positifs : acceptez les résultats connus via une règle glob ou une empreinte de référence afin que les réanalyses ne fassent apparaître que les problèmes nouveaux (docs)
Démarrage rapide
Installation
Avis relatif aux logiciels open source : Ce projet téléchargera et installera des projets logiciels open source tiers supplémentaires. Consultez les termes de licence de ces projets open source avant utilisation.
Créez et activez d'abord un environnement virtuel (toutes les cibles make supposent que le venv est actif). Utilisez uv ou pip ; le Makefile utilise uv s'il est disponible, sinon pip.
Installation rapide avec uv (CLI uniquement) :```bash uv tool install git+https://github.com/NVIDIA/skillspector.git
Update later: uv tool update skillspector
Si vous prévoyez d'exécuter `skillspector mcp`, installez l'extra MCP au moment de l'installation :```bash
uv tool install 'skillspector[mcp] @ git+https://github.com/NVIDIA/skillspector.git'
Depuis la source :```bash
Clone the repository
git clone https://github.com/NVIDIA/skillspector.git cd skillspector
Create and activate virtual environment
uv venv .venv && source .venv/bin/activate
or: python3 -m venv .venv && source .venv/bin/activate
Install for production use
make install
Or install with development dependencies
make install-dev
### Docker (aucun Python requis)
Exécutez SkillSpector sans installer Python en le construisant localement à partir du [Dockerfile](https://github.com/nvidia/skillspector/blob/main/Dockerfile) inclus. L'image est basée sur l'image Docker officielle Python `3.12-slim-bookworm`.
**Construire l'image :**```bash
make docker-build
# or: docker build -t skillspector .
Analyser un répertoire local en montant votre répertoire courant dans /scan, le répertoire de travail du conteneur :```bash
docker run --rm -v "$PWD:/scan" skillspector scan ./my-skill/ --no-llm
**Analyser avec l'analyse LLM** en passant les identifiants via un fichier `.env` local :```bash
cat > .env <<'EOF'
SKILLSPECTOR_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ant-...
EOF
| -s | --server | SERVER | http://localhost:8080 | URL du serveur cible |
| -t | --token | TOKEN | null | Jeton d'authentification |
| -c | --config | FILE | null | Fichier de configuration |
| -o | --output | FILE | stdout | Fichier de sortie |
| -v | --verbose | FLAG | false | Activer la sortie détaillée |
| -q | --quiet | FLAG | false | Supprimer la sortie non essentielle |
| -f | --format | FORMAT | json | Format de sortie (json, yaml, table) |
| -n | --no-color | FLAG | false | Désactiver la sortie colorée |
| -h | --help | FLAG | false | Afficher le message d'aide |
| -V | --version | FLAG | false | Afficher la version |
Exemples
# Exécution de base
./tool -s http://localhost:8080
# Avec authentification
./tool -s https://api.example.com -t "your-token-here"
# Utilisation d'un fichier de configuration
./tool -c config.yaml
# Sortie vers un fichier
./tool -s http://localhost:8080 -o results.json
# Mode détaillé
./tool -v -s http://localhost:8080
Fichier de configuration
server: http://localhost:8080
token: your-token-here
output: results.json
verbose: true
format: json
timeout: 30
Sortie
L'outil prend en charge plusieurs formats de sortie :
JSON
{
"status": "success",
"data": {
"id": "12345",
"name": "example",
"timestamp": "2024-01-01T00:00:00Z"
}
}
YAML
status: success
data:
id: "12345"
name: example
timestamp: "2024-01-01T00:00:00Z"
Table
+--------+---------+---------------------+
| ID | NAME | TIMESTAMP |
+--------+---------+---------------------+
| 12345 | example | 2024-01-01T00:00:00Z|
+--------+---------+---------------------+
Codes de sortie
| Code | Signification |
|---|---|
| 0 | Succès |
| 1 | Erreur générale |
| 2 | Mauvaise utilisation de la ligne de commande |
| 3 | Erreur de configuration |
| 4 | Erreur réseau |
| 5 | Erreur d'authentification |
Dépannage
Problèmes courants
Connexion refusée
Error: connection refused
Vérifiez que le serveur est en cours d'exécution et que le port est correct.
Authentification échouée
Error: authentication failed
Vérifiez votre jeton et assurez-vous qu'il n'a pas expiré.