
Livello di sicurezza automatico delle dipendenze per assistenti di codifica AI che controlla i pacchetti per CVE, typosquatting, abbandono, problemi di vetustà delle versioni e integrità degli hash negli ecosistemi npm, PyPI, RubyGems, Maven, Go e Rust.
Quando gli assistenti di codifica AI come Claude aggiungono pacchetti al tuo progetto, spesso scelgono qualunque versione sembri giusta — senza verificare se presenta vulnerabilità di sicurezza note, se il pacchetto è ancora mantenuto attivamente, o se il nome è a un refuso di distanza da un clone malevolo.
safer-dependencies è un livello di sicurezza per Claude Code: si posiziona tra Claude e i tuoi file manifest ed esegue automaticamente i suoi controlli di sicurezza: le installazioni vulnerabili vengono bloccate prima di essere eseguite, e una versione rischiosa scritta in un manifest viene corretta su disco subito dopo la scrittura. Rileva e corregge dipendenze rischiose — CVE, typosquatting, pacchetti abbandonati e problemi di età della versione, oltre a un periodo di attesa per le nuove release — su npm, PyPI, RubyGems, Maven, Go, Rust e PHP (Composer). Vedi CAPABILITIES.md per sapere esattamente cosa è e cosa non è coperto.
Nuovo qui? GETTING-STARTED.md ti porta da zero a un'installazione funzionante in circa cinque minuti.
Sicurezza e privacy: vedi SECURITY.md (divulgazione delle vulnerabilità), PRIVACY.md (trasmissione dati, nessuna telemetria) e CAPABILITIES.md (cosa lo strumento difende e cosa no).
Licenza (source-available — NON "open source" OSI): Libero da usare e modificare per i tuoi scopi, incluso l'uso interno aziendale/for-profit e la creazione di prodotti che vendi. È richiesta una licenza a pagamento separata solo per monetizzare il software stesso — venderlo, distribuirlo all'interno di un prodotto o servizio venduto, o offrirne le funzionalità a terzi a pagamento (incluso hosted/SaaS/API). La ridistribuzione e i derivati devono mantenere la licenza e citare questo progetto. Vedi LICENSE (Sezione 4 per la restrizione commerciale); richieste di licenza commerciale via github.com/robert-auger.
GETTING-STARTED.md ti porta da zero a un'installazione funzionante in circa cinque minuti — prerequisiti, installazione interattiva e verifica. Per il riferimento completo all'installazione (installazioni globali/progetto/manuali, specifiche Windows, la allowlist dei permessi, aggiornamento e disinstallazione), vedi INSTALLATION.md.
Uso quotidiano: una volta installati gli hook, non c'è nulla da eseguire — safer-dependencies funziona automaticamente in background. Quando Claude aggiunge o installa pacchetti, segnala le dipendenze rischiose e aggiorna le versioni vulnerabili a una sicura sul posto — e blocca un'installazione nota come vulnerabile prima ancora che venga eseguita — così i pacchetti non sicuri vengono individuati e corretti senza che tu debba chiederlo. Puoi comunque invocarlo direttamente in qualsiasi momento: "è sicuro [email protected]?", "verifica la configurazione di safer-dependencies", o "mostra le statistiche di safer-dependencies".
Quando Claude sta per aggiungere un pacchetto al tuo progetto, safer-dependencies intercetta ed esegue 5 controlli:
requirements.txt PyPI con pin --hash=sha256:..., l'hash dichiarato viene validato rispetto agli hash pubblicati da PyPI; una discrepanza genera un AVVISOpaperclip, request, pycrypto, github.com/dgrijalva/jwt-go) vengono bloccati immediatamente con un sostituto suggerito; i pacchetti senza release stabile da 2+ anni ricevono un avviso consultivo STALE:. I pacchetti bloccati vengono rimossi dal manifest e Claude chiederà come procedere; i pacchetti solo obsoleti vengono lasciati al loro posto.Se vengono rilevati problemi, Claude emette avvisi e può fare un passo indietro verso una versione più sicura. Tutti i controlli vengono registrati in ~/.claude/safer-dependencies-audit-YYYY-MM.log (un file per mese di calendario).
La skill si attiva automaticamente quando Claude:
Operazioni su manifest / installazione
package.json, requirements.txt, Gemfile, pom.xml, build.gradle, Cargo.toml, go.mod o qualsiasi altro manifest supportatoimport, require o use per un pacchetto non già dichiarato nel manifestnpm install, bundle install, poetry install, uv sync, go mod tidy, ecc.) — Pre-Install controlla gli argomenti del comando, Post-Install controlla il lockfile risultanteDockerfile o un workflow CI (.github/workflows/*.yml, ecc.) che incorpora passaggi di installazione del package manager con versioni pinnateDomande di selezione e raccomandazione
Espressioni di intenzione d'uso (pre-aggiunta)
Domande su salute e affidabilità dei pacchetti
Comandi di scaffolding
npx create-react-app, npm create vite@latest, django-admin startproject, rails new, cargo new + cargo add, "bootstrap di un nuovo progetto FastAPI"