Retour aux mises à jour
New releaseSep 8, 2026

SkillSpector v2.11.1

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.

Partager

SkillSpector

Scanner de sécurité pour les skills d'agents IA. Détectez les vulnérabilités, les schémas malveillants et les risques de sécurité avant d'installer des skills d'agents.

Python 3.12+ License: Apache 2.0

Aperçu

Les skills d'agents IA (utilisés 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 skills analysés du jeu de données de recherche, 26,1 % des skills contiennent des vulnérabilités et 5,2 % présentent une intention probablement malveillante.

SkillSpector vous aide à répondre à la question : « Ce skill est-il sûr à installer ? »

SkillSpector fait partie du pipeline NVIDIA Verified Skills, qui analyse, évalue et signe les skills d'agents avant leur publication. Les skills qui réussissent sont publiés dans le catalogue de skills NVIDIA.

Documentation

  • Analyser les skills 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 en mode fail-closed pour les bundles, les parseurs, les artefacts imbriqués, le registre et les résultats.
  • Extension Pi — Installez SkillSpector comme outil Pi pour analyser les skills depuis l'intérieur des sessions d'agents.
  • Extension OpenCode — Installez SkillSpector comme outil OpenCode et commande /skillspector pour analyser les skills 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, agencéité excessive, gestion des sorties, fuite de prompt système, empoisonnement de mémoire, usage détourné d'outils, agent malveillant, anti-refus, abus de déclencheurs, 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 de risque : score de 0 à 100 avec libellés de gravité et recommandations claires
  • Suppression de base de référence / faux positifs : acceptez les résultats connus via une règle glob ou une base de référence par empreinte afin que les réanalyses ne fassent apparaître que les nouveaux problèmes (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) :

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 :

uv tool install 'skillspector[mcp] @ git+https://github.com/NVIDIA/skillspector.git'

Depuis la source :

# 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 (aucune installation de Python requise)

Exécutez SkillSpector sans installer Python en le construisant localement à partir du Dockerfile inclus. L'image est basée sur l'image officielle Docker Python 3.12-slim-bookworm.

Construire l'image :

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 :

docker run --rm -v "$PWD:/scan" skillspector scan ./my-skill/ --no-llm

Scanner avec analyse LLM en passant les identifiants via un fichier .env local :

cat > .env <<'EOF'
SKILLSPECTOR_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ant-...
EOF
docker run --rm \
  -v "$PWD:/scan" \
  --env-file .env \
  skillspector scan ./my-skill/

Ou transmettez les identifiants directement depuis l'environnement de votre shell :

docker run --rm \
  -v "$PWD:/scan" \
  -e SKILLSPECTOR_PROVIDER=anthropic \
  -e ANTHROPIC_API_KEY="$ANTHROPIC_API_KEY" \
  skillspector scan ./my-skill/

Écrire un rapport sur le système de fichiers de l'hôte en écrivant dans le répertoire monté :

docker run --rm --user "$(id -u):$(id -g)" \
  -v "$PWD:/scan" \
  skillspector scan ./my-skill/ --no-llm --format json --output report.json

Alias facultatif pour les scans statiques répétés :

alias skillspector-docker='docker run --rm -v "$PWD:/scan" skillspector'
skillspector-docker scan ./my-skill/ --no-llm

Utilisation de base

# Scan a local skill directory
skillspector scan ./my-skill/

# Scan a single SKILL.md file
skillspector scan ./SKILL.md

# Scan a Git repository
skillspector scan https://github.com/user/my-skill

# Scan a zip file
skillspector scan ./my-skill.zip

Limites de taille

SkillSpector applique deux plafonds indépendants sur les entrées distantes et les archives afin de limiter l'impact des téléchargements surdimensionnés et des bombes zip :

  • Plafond par ingestion : INGEST_MAX_BYTES (100 MiB) — appliqué aux téléchargements d'URL en flux, à la taille décompressée totale des archives zip et à l'utilisation disque après clonage des dépôts Git.
  • Plafond de membres zip : INGEST_MAX_ZIP_MEMBERS (10 000) — plafonne le nombre d'entrées dans un seul zip.

Notez que le plafond d'analyse de 1 Mo par fichier (MAX_FILE_BYTES) est une limite distincte, en aval : elle borne ce que les analyseurs individuels liront dans un répertoire déjà ingéré. Les plafonds d'ingestion ci-dessus bornent la quantité de contenu pouvant atterrir sur le disque en premier lieu. Un dépassement de l'un ou l'autre des plafonds d'ingestion échoue en mode fermé avec une IngestLimitExceededError.

Formats de sortie

# Terminal output (default) - pretty formatted
skillspector scan ./my-skill/

# JSON output - machine readable
skillspector scan ./my-skill/ --format json --output report.json

# Markdown output - for documentation
skillspector scan ./my-skill/ --format markdown --output report.md

Catégories