| name | dependency-audit |
| description | Dependency auditing: vulnerability scanning, license compliance, outdated package detection, and update strategies. Use when checking or updating project dependencies. |
| tags | ["development","dependencies","audit","vulnerability","license","outdated"] |
| triggers | ["audit dependencies","dependency vulnerabilities","outdated packages","license compliance","npm audit"] |
Dependency Audit Skill
Procedures for auditing dependencies across ecosystems.
WHEN_TO_USE
Apply this skill when scanning for dependency vulnerabilities, checking license compliance, identifying outdated packages, or planning a dependency update strategy.
Vulnerability Scanning
Node.js
npm audit
npm audit --json
npm audit fix
npm audit fix --force
npx better-npm-audit audit
Python
pip-audit
pip-audit -r requirements.txt
pip-audit --format json
safety check
General Tools
npx snyk test
trivy fs .
grype .
License Compatibility
Permissive Licenses (generally safe)
- MIT, Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, 0BSD
Copyleft Licenses (require review)
- GPL-2.0, GPL-3.0 — require derivative work to be GPL-licensed.
- LGPL-2.1, LGPL-3.0 — dynamic linking usually OK, static linking triggers copyleft.
- AGPL-3.0 — network use triggers copyleft. Avoid in SaaS unless intentional.
- MPL-2.0 — file-level copyleft. Modified files must stay MPL.
Compatibility Matrix
| Your License | Can use MIT | Can use Apache | Can use GPL | Can use AGPL |
|---|
| MIT | Yes | Yes | No | No |
| Apache-2.0 | Yes | Yes | No | No |
| GPL-3.0 | Yes | Yes | Yes | No |
| AGPL-3.0 | Yes | Yes | Yes | Yes |
Check Commands
npx license-checker --summary
npx license-checker --failOn "GPL"
pip-licenses
Outdated Package Detection
npm outdated
pip list --outdated
Update Strategies
- Patch updates (x.x.PATCH): Apply immediately. Low risk.
- Minor updates (x.MINOR.x): Apply in batches. Test before merging.
- Major updates (MAJOR.x.x): Treat as a migration. Review changelog, test thoroughly.
Process
- Run audit to identify vulnerable/outdated packages.
- Classify updates by risk (patch / minor / major).
- Apply patch updates first, test.
- Apply minor updates in batches, test.
- Plan major updates as separate migration tasks.
- Re-run audit to verify all issues resolved.