@emersong/packagechecker
v0.1.0
Published
Analiza las dependencias de tu package.json desde la terminal: versiones, vulnerabilidades (OSV), confiabilidad y riesgos de supply chain. Sin cuentas ni telemetría.
Maintainers
Readme
@emersong/packagechecker
Analiza las dependencias de tu package.json desde la terminal: versiones, vulnerabilidades,
confiabilidad y señales de ataques a la cadena de suministro. Al final te da un enlace para ver
el informe completo en package-checker.dev.
Sin cuentas, sin telemetría y sin dependencias de terceros.
npx @emersong/packagechecker --include allPackageChecker · mi-app · 24 dependencias
Salud general: 61/100 3 vulnerables 12 desactualizadas 1 recién publicadas
Vulnerabilidades: 5 alta · 7 media
Versiones instaladas según package-lock.json
PAQUETE INSTALADA ÚLTIMA ESTADO VULNS CONF.
lodash 4.17.20 4.18.1 minor 5 (alta) 18
axios 0.21.4 1.20.0 major 23 (alta) 25
react 18.3.1 19.3.0 major 0 100
Avisos
VULNERABLE [email protected] (alta) → actualiza a 4.18.1
RECIENTE [email protected] se publicó hace 9 h: espera 72 h antes de actualizar
Comandos sugeridos
npm install --save-exact [email protected] [email protected]
Informe completo
https://package-checker.dev/#deps=zNY1RCsMgEETvMt...
↵ Enter para abrir en el navegador · n para salirQué detecta
- Versión instalada (según tu lockfile), la compatible con tu rango y la última publicada.
- Vulnerabilidades de OSV.dev (GitHub Advisory Database) y paquetes maliciosos de OpenSSF, con la versión corregida más cercana.
- Versiones recién publicadas (menos de 72 h), el momento más peligroso para actualizar.
- Señales de cadena de suministro: publicador nuevo, pérdida de procedencia firmada, scripts
postinstallnuevos. - Paquetes deprecados, abandonados, con pocas descargas o sin licencia.
- Puntuación de confiabilidad de 0 a 100 por dependencia.
Cubre las dependencias directas. Para las transitivas, complementa con npm audit.
Opciones
| Opción | Para qué |
|---|---|
| -i, --include <lista> | Secciones: all, deps, dev, peer, opt (por defecto deps,dev) |
| --cwd <ruta> | Carpeta del proyecto |
| --lock <archivo> | Lockfile concreto |
| --no-lock | Ignora el lockfile |
| --fail-on <nivel> | Sale con error si hay vulnerabilidades de ese nivel o superior |
| --json | Informe en JSON, para otros scripts |
| --url-only | Solo imprime el enlace |
| --open / --no-open | Abrir o no el navegador sin preguntar |
| --web <url> | Web donde se abre el informe |
| --no-compress | Enlace sin comprimir (navegadores antiguos) |
| --concurrency <n> | Consultas en paralelo (1-20, por defecto 6) |
| --no-color | Sin colores |
Lockfiles admitidos: package-lock.json, npm-shrinkwrap.json, yarn.lock (v1 y Berry) y pnpm-lock.yaml (v5 a v9).
En integración continua
- run: npx @emersong/packagechecker --include all --fail-on high --no-openCódigos de salida: 0 todo bien · 1 se superó el umbral de --fail-on · 2 error de uso o de lectura.
Privacidad
Las consultas van al registro público de npm, OSV.dev, deps.dev y la API de descargas de npm,
siempre por nombre de paquete. Tu package.json no se sube a ningún sitio.
El enlace del informe guarda las dependencias después del #, la parte de la URL que los
navegadores nunca envían al servidor. La web las descomprime y analiza en tu propio navegador.
Aun así, ese enlace contiene la lista de tus dependencias: trátalo como información interna.
Desarrollo
El motor de análisis es el mismo que usa la web y vive en package-checker. Para actualizarlo:
npm run sync # copia analysis.js, api.js y vendor/semver.js desde ../package-checker/js
npm testCon PACKAGE_CHECKER_WEB puedes indicar otra ruta al proyecto web.
Créditos
Creado por Víctor Gómez. Licencia MIT.
