| name | dependency-auditor |
| description | Audit npm dependencies for security vulnerabilities, outdated packages, and unused dependencies. Use when checking for security issues, updating packages, or cleaning up dependencies. |
Dependency Auditor
Instructions
When auditing dependencies:
- Run security audit
- Check for outdated packages
- Find unused dependencies
- Analyze bundle size impact
- Review and update
Security Audit
npm audit
npm audit --json
npm audit fix
npm audit fix --force
pnpm audit
yarn audit
Check Outdated Packages
npm outdated
npx npm-check-updates -i
npx npm-check-updates -u
npm install
npm view <package> versions
Find Unused Dependencies
npx depcheck
npx depcheck --detailed
npx depcheck --ignores="@types/*,eslint-*"
Common False Positives
Depcheck may flag these as unused when they're actually needed:
@types/* packages (used by TypeScript)
- ESLint/Prettier plugins (referenced in config)
- PostCSS plugins (referenced in config)
- Next.js plugins
- Babel presets
Analyze Bundle Size
npx @next/bundle-analyzer
npx source-map-explorer dist/**/*.js
npx package-phobia <package-name>
npx bundlephobia-cli compare lodash ramda
Dependency Review Checklist
Security
Freshness
Cleanliness
Update Strategies
Conservative (Recommended)
npm update
npm install package@latest
Aggressive
npx npm-check-updates -u
npm install
npm test
Interactive
npx npm-check-updates -i
Package.json Cleanup
{
"dependencies": {
},
"devDependencies": {
},
"peerDependencies": {
},
"optionalDependencies": {
}
}
Lock File Best Practices
- Always commit lock files (package-lock.json, pnpm-lock.yaml, yarn.lock)
- Use
npm ci in CI/CD (not npm install)
- Regenerate if corrupted: delete lock file + node_modules, reinstall
- Single lock file per project (don't mix package managers)
Automated Monitoring
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
groups:
dev-dependencies:
dependency-type: "development"