Skip to content
dependency-audit-assistant logo

Dependency Audit Assistant

dependency-audit-assistant

Reviews package dependencies for security vulnerabilities, outdated versions, and license compliance. Use when user asks about dependencies, security audits, or before releases.

SKILL.md

Full skill instructions

Dependency Audit Assistant

This skill helps audit project dependencies for security vulnerabilities, outdated packages, and license compliance issues.

When to Use This Skill

  • User requests a dependency audit or security check
  • Before major releases or deployments
  • User asks about outdated packages or vulnerabilities
  • License compliance review needed
  • User mentions "npm audit", "security", "dependencies", or "vulnerabilities"

Instructions

1. Detect Package Manager

Identify which package manager(s) the project uses:

JavaScript/​Node.js:

  • npm: package.json + package-lock.json
  • Yarn: package.json + yarn.lock
  • pnpm: package.json + pnpm-lock.yaml

Python:

  • pip: requirements.txt or setup.py
  • Poetry: pyproject.toml + poetry.lock
  • Pipenv: Pipfile + Pipfile.lock

Ruby:

  • Bundler: Gemfile + Gemfile.lock

Java:

  • Maven: pom.xml
  • Gradle: build.gradle or build.gradle.kts

Go:

  • Go modules: go.mod + go.sum

Rust:

  • Cargo: Cargo.toml + Cargo.lock

PHP:

  • Composer: composer.json + composer.lock

Use Glob to find these files.

2. Run Security Audit

Execute the appropriate audit command based on package manager:

npm: npm audit --json or npm audit Yarn: yarn audit --json or yarn audit pnpm: pnpm audit --json pip: pip-audit or safety check Poetry: poetry check Bundler: bundle audit check --update Maven: mvn dependency:tree + OWASP Dependency Check Go: go list -m all + govulncheck Cargo: cargo audit Composer: composer audit

Parse the output to identify:

  • Number of vulnerabilities by severity (critical, high, moderate, low)
  • Affected packages and versions
  • Available fixes (updates or patches)
  • CVE identifiers

3. Check for Outdated Packages

Identify packages that have newer versions available:

npm: npm outdated --json Yarn: yarn outdated --json pip: pip list --outdated Poetry: poetry show --outdated Bundler: bundle outdated Cargo: cargo outdated Go: go list -u -m all

Categorize updates:

  • Patch updates (1.0.0 → 1.0.1): Bug fixes, safe to update
  • Minor updates (1.0.0 → 1.1.0): New features, usually safe
  • Major updates (1.0.0 → 2.0.0): Breaking changes, needs testing

4. License Compliance Check

Review licenses of all dependencies:

Steps:

  1. Extract licenses from package metadata
  2. Identify license types (MIT, Apache-2.0, GPL, etc.)
  3. Flag potentially problematic licenses (GPL, AGPL in commercial projects)
  4. Check for unlicensed or unknown licenses
  5. Reference the license compatibility matrix in reference/​licenses.md

Tools:

  • npm: npx license-checker --json or npm-license-crawler
  • Python: pip-licenses
  • Ruby: license_finder
  • Go: go-licenses

License categories:

  • Permissive: MIT, Apache-2.0, BSD - Usually safe
  • Weak copyleft: LGPL, MPL - Requires review
  • Strong copyleft: GPL, AGPL - May restrict commercial use
  • Unknown: Missing or custom licenses - Needs investigation

5. Analyze Dependency Tree

Understand the dependency structure:

Direct vs Transitive:

  • Direct: Listed in package.json/​requirements.txt
  • Transitive: Dependencies of dependencies

Identify issues:

  • Duplicate packages at different versions
  • Deep dependency trees (potential for conflicts)
  • Abandoned packages (no updates in >2 years)
  • High-risk transitive dependencies

Commands:

  • npm: npm ls --all
  • Yarn: yarn why <package>
  • pip: pipdeptree
  • Maven: mvn dependency:tree

6. Priority Vulnerabilities

Prioritize vulnerabilities based on:

Severity levels:

  1. Critical: Remote code execution, privilege escalation
  2. High: SQL injection, XSS, authentication bypass
  3. Moderate: DoS, information disclosure
  4. Low: Minor issues, edge cases

Exploitability:

  • Known exploits in the wild
  • PoC (Proof of Concept) available
  • Requires special conditions

Exposure:

  • Production dependencies vs dev dependencies
  • Direct dependencies vs deep transitive dependencies
  • Code paths actually used in the application

7. Generate Recommendations

For each issue found, provide:

Vulnerabilities:

Package: [email protected]
Severity: High
CVE: CVE-2020-8203
Issue: Prototype pollution
Recommendation: Upgrade to [email protected] or higher
Command: npm install [email protected]

Outdated packages:

Package: [email protected]
Current: 16.14.0
Latest: 18.2.0
Type: Major update
Recommendation: Test thoroughly before upgrading (breaking changes)
Notes: Review migration guide at https://react.dev/​blog/​2022/​03/​08/​react-18-upgrade-guide

License issues:

Package: [email protected]
License: GPL-3.0
Issue: GPL license may conflict with proprietary code
Recommendation: Find alternative with permissive license or consult legal
Alternatives: [list of similar packages with MIT/​Apache licenses]

8. Update Strategy

Suggest an update approach:

Safe updates (automated):

  • Patch updates with no breaking changes
  • Security fixes for vulnerabilities
  • Update: npm update or npm audit fix

Careful updates (manual testing):

  • Minor version bumps
  • Major updates to well-maintained packages
  • Update individually and test

Research needed:

  • Major breaking changes
  • Abandoned packages (find alternatives)
  • License conflicts

9. Generate Summary Report

Provide a comprehensive audit summary:

Dependency Audit Report
=======================

Overview:
- Total dependencies: 150 (120 direct, 30 transitive)
- Vulnerabilities: 5 (1 high, 3 moderate, 1 low)
- Outdated packages: 23
- License issues: 2

Security Vulnerabilities:
[List by severity with fix recommendations]

Outdated Packages:
[Categorized by update type: patch/​minor/​major]

License Compliance:
[List of licenses with any concerns]

Recommended Actions:
1. [Immediate] Fix high-severity vulnerabilities
2. [Soon] Update packages with moderate vulnerabilities
3. [Review] Address license compliance issues
4. [Optional] Update outdated packages to latest

Commands to run:
npm audit fix  # Fix vulnerabilities automatically
npm update     # Update to latest compatible versions

10. Continuous Monitoring

Suggest ongoing practices:

  • Automated audits: Run in CI/​CD pipeline
  • Dependabot/​Renovate: Auto-create PRs for updates
  • Regular reviews: Monthly or quarterly audits
  • Security alerts: Enable GitHub/​GitLab security alerts
  • Lock files: Commit lock files for reproducible builds

Best Practices

  1. Fix vulnerabilities promptly: Especially high/​critical severity
  2. Test updates: Even patch updates can cause issues
  3. Read changelogs: Understand what changed before updating
  4. Use lock files: Ensure consistent installations across environments
  5. Minimize dependencies: Fewer deps = smaller attack surface
  6. Review new additions: Audit before adding new dependencies
  7. Stay current: Regular updates are easier than large jumps
  8. Document decisions: Why certain packages are pinned or not updated

Security Best Practices

  • Never commit secrets in dependencies or env files
  • Review dependency source code for popular/​critical packages
  • Use private registries for internal packages
  • Enable 2FA on package registry accounts
  • Use SRI (Subresource Integrity) for CDN resources
  • Scan container images if using Docker

Supporting Files

  • scripts/​check-licenses.sh: Extract and check license information
  • reference/​licenses.md: License compatibility matrix
  • reference/​common-vulnerabilities.md: Common vulnerability patterns

Common Commands Reference

npm:

npm audit                 # Show vulnerabilities
npm audit fix            # Auto-fix vulnerabilities
npm audit fix --force    # Force major updates
npm outdated            # Check for outdated packages
npm update              # Update to latest compatible

Yarn:

yarn audit               # Show vulnerabilities
yarn upgrade-interactive # Interactive update
yarn outdated           # Check for outdated

pip:

pip-audit               # Audit vulnerabilities
pip list --outdated     # Check outdated
pip install --upgrade   # Update package

Poetry:

poetry check            # Check lock file
poetry show --outdated  # Show outdated
poetry update           # Update packages

Cargo:

cargo audit             # Audit vulnerabilities
cargo outdated          # Check outdated
cargo update            # Update packages

More skills from majiayu000

xiaohongshu logo
majiayu000/claude-arsenal

xiaohongshu

xiaohongshu

286 148
View
agent-task-conductor logo
majiayu000/claude-skill-registry

agent-task-conductor

Conduct multi-agent task orchestration and workflow coordination.

663 1
View
conductor-setup logo
majiayu000/claude-skill-registry

conductor-setup

Initialize project with Conductor artifacts (product definition,

663 1
View
animation-designer logo
majiayu000/claude-skill-registry

animation-designer

Expert in web animations, transitions, and motion design using Framer Motion and CSS

663 1
View
diagramming logo
majiayu000/claude-skill-registry

diagramming

Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...

663 1
View
h3-pg logo
majiayu000/claude-skill-registry-data

h3-pg

PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.

23 1
View
conductor-development logo
majiayu000/claude-skill-registry

conductor-development

Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...

663 1
View
conductor-status logo
majiayu000/claude-skill-registry

conductor-status

Display project status, active tracks, and next actions

663 1
View
dockerization logo
majiayu000/claude-skill-registry

dockerization

Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.

663 1
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View