
Capa de seguridad automatizada de dependencias para asistentes de codificación de IA que audita paquetes en busca de CVEs, typosquats, abandono, problemas de antigüedad de versiones e integridad de hash en los ecosistemas npm, PyPI, RubyGems, Maven, Go y Rust.
Cuando los asistentes de codificación con IA como Claude añaden paquetes a tu proyecto, a menudo eligen la versión que les suena bien, sin comprobar si tiene vulnerabilidades de seguridad conocidas, si el paquete sigue mantenido activamente o si el nombre está a un error tipográfico de un suplantador malicioso.
safer-dependencies es una capa de seguridad para Claude Code: se sitúa entre Claude y tus archivos de manifiesto y ejecuta sus comprobaciones de seguridad automáticamente: las instalaciones vulnerables se deniegan antes de ejecutarse, y una versión arriesgada escrita en un manifiesto se corrige en disco justo después de la escritura. Detecta y corrige dependencias arriesgadas — CVEs, typosquats, paquetes abandonados y problemas de antigüedad de versión, además de un período de enfriamiento para lanzamientos completamente nuevos — en npm, PyPI, RubyGems, Maven, Go, Rust y PHP (Composer). Consulta CAPABILITIES.md para ver exactamente qué está y qué no está cubierto.
¿Nuevo aquí? GETTING-STARTED.md te lleva de cero a una instalación funcional en unos cinco minutos.
Seguridad y privacidad: consulta SECURITY.md (divulgación de vulnerabilidades), PRIVACY.md (egreso de datos, sin telemetría) y CAPABILITIES.md (contra qué se defiende la herramienta y contra qué no).
Licencia (código disponible — NO es "código abierto" OSI): Gratis para usar y modificar para tus propios fines, incluido el uso interno con fines de lucro/empresarial y la creación de productos que vendas. Se requiere una licencia de pago por separado solo para monetizar el software en sí mismo — venderlo, incluirlo en un producto o servicio que se venda, u ofrecer su funcionalidad a terceros a cambio de una tarifa (incluido alojado/SaaS/API). La redistribución y las obras derivadas deben mantener la licencia y dar crédito a este proyecto. Consulta LICENSE (Sección 4 para la restricción comercial); solicitudes de licencia comercial vía github.com/robert-auger.
GETTING-STARTED.md te lleva de cero a una instalación funcional en unos cinco minutos — requisitos previos, la instalación interactiva y la verificación. Para la referencia completa de instalación (instalaciones globales/de proyecto/manuales, detalles de Windows, la lista de permisos permitidos, actualización y desinstalación), consulta INSTALLATION.md.
Uso diario: una vez instalados los hooks, no hay nada que ejecutar — safer-dependencies funciona automáticamente en segundo plano. Cuando Claude añade o instala paquetes, marca las dependencias arriesgadas y actualiza las versiones vulnerables a una segura en el mismo lugar — y bloquea una instalación conocidamente vulnerable antes de que siquiera se ejecute — de modo que los paquetes inseguros se detectan y corrigen sin que tengas que pedirlo. Aun así puedes invocarlo directamente en cualquier momento: "¿es seguro [email protected]?", "comprueba la configuración de safer-dependencies" o "muestra las estadísticas de safer-dependencies".
Cuando Claude está a punto de añadir un paquete a tu proyecto, safer-dependencies lo intercepta y ejecuta 5 comprobaciones:
requirements.txt de PyPI con pines --hash=sha256:..., el hash declarado se valida contra los hashes publicados por PyPI; una discrepancia emite una ADVERTENCIApaperclip, request, pycrypto, github.com/dgrijalva/jwt-go) se bloquean de inmediato con una alternativa sugerida; los paquetes sin lanzamiento estable en 2+ años reciben una advertencia informativa STALE:. Los paquetes bloqueados se eliminan del manifiesto y Claude preguntará cómo proceder; los paquetes solo obsoletos se dejan en su lugar.Si se encuentran problemas, Claude emite advertencias y puede retroceder a una versión más segura. Todas las comprobaciones se registran en ~/.claude/safer-dependencies-audit-YYYY-MM.log (un archivo por mes calendario).
La skill se activa automáticamente cuando Claude:
Operaciones de manifiesto / instalación
package.json, requirements.txt, Gemfile, pom.xml, build.gradle, Cargo.toml, go.mod o cualquier otro manifiesto compatibleimport, require o use para un paquete aún no declarado en el manifiestonpm install, bundle install, poetry install, uv sync, go mod tidy, etc.) — Pre-Instalación audita los argumentos del comando, Post-Instalación audita el archivo de bloqueo resultanteDockerfile o un flujo de trabajo de CI (.github/workflows/*.yml, etc.) que incorpore pasos de instalación del gestor de paquetes con versiones fijadasPreguntas de selección y recomendación
Expresiones de intención de uso (pre-adición)
Preguntas sobre salud y confianza de paquetes