dependency-management

89jobrien's avatarfrom 89jobrien

Dependency management specialist. Use when updating dependencies, scanning for vulnerabilities, analyzing dependency trees, or ensuring license compliance. Handles npm, pip, maven, and other package managers.

⭐1stars🔀0forks📁View on GitHub🕐Updated Dec 29, 2025

When & Why to Use This Skill

This Claude skill is a comprehensive dependency management specialist designed to automate the maintenance, security, and optimization of software libraries. It streamlines vulnerability scanning, license compliance verification, and version conflict resolution across major ecosystems like npm, pip, and Maven, ensuring project stability and security through automated analysis and best-practice workflows.

Use Cases

  • Automated Security Auditing: Scan project dependencies for known vulnerabilities (CVEs) using tools like npm audit or pip-audit and generate detailed remediation reports.
  • Safe Version Upgrades: Identify outdated packages and manage incremental updates with validation to ensure project dependencies remain current without breaking functionality.
  • License Compliance Checks: Automatically audit third-party library licenses to ensure they align with project requirements and legal standards, preventing intellectual property risks.
  • Dependency Tree Optimization: Analyze complex dependency graphs to identify unused packages, resolve version conflicts, and reduce 'dependency bloat' in software projects.
  • Multi-Language Support: Manage package manifests across different programming environments, including JavaScript (package.json), Python (requirements.txt), and Java (pom.xml).
namedependency-management
descriptionDependency management specialist. Use when updating dependencies, scanning
authorJoseph OBrien
statusunpublished
updated'2025-12-23'
version1.0.1
tagskill
typeskill

Dependency Management

This skill manages project dependencies including updates, vulnerability scanning, license compliance, and dependency tree optimization.

When to Use This Skill

  • When updating project dependencies
  • When scanning for security vulnerabilities
  • When analyzing dependency trees
  • When ensuring license compliance
  • When resolving version conflicts
  • When optimizing dependency usage

What This Skill Does

  1. Dependency Analysis: Identifies unused dependencies and version conflicts
  2. Vulnerability Scanning: Finds and fixes known security vulnerabilities
  3. License Compliance: Verifies dependency licenses are compatible
  4. Safe Updates: Updates dependencies with testing and validation
  5. Tree Optimization: Optimizes dependency trees and reduces bloat
  6. Version Management: Resolves version conflicts and updates

Helper Scripts

This skill includes Python helper scripts in scripts/:

  • parse_dependencies.py: Parses dependency files (package.json, requirements.txt, pyproject.toml). Outputs JSON with parsed dependencies and metadata.

    python scripts/parse_dependencies.py package.json requirements.txt
    

How to Use

Manage Dependencies

Update all dependencies and check for vulnerabilities
Scan dependencies for security issues

Specific Tasks

Check license compatibility for all dependencies

Management Process

1. Analyze Dependencies

Using Helper Script:

The skill includes a Python helper script for parsing dependency files:

# Parse dependency files
python scripts/parse_dependencies.py package.json requirements.txt pyproject.toml

Package Manager Tools:

  • npm: npm outdated, npm list
  • pip: pip list --outdated
  • maven: mvn versions:display-dependency-updates
  • gradle: gradle dependencyUpdates

2. Scan for Vulnerabilities

Tools:

  • npm: npm audit
  • pip: pip-audit
  • maven: OWASP Dependency Check
  • gradle: Dependency Check plugin

3. Check Licenses

Process:

  • List all dependency licenses
  • Check compatibility with project license
  • Identify any incompatible licenses
  • Provide license report

4. Update Dependencies

Safe Update Process:

  1. Check for updates
  2. Review changelogs
  3. Update incrementally
  4. Run tests after each update
  5. Verify functionality

Examples

Example 1: Vulnerability Scan

Input: Scan for vulnerabilities

Output:

## Dependency Vulnerability Scan

### Critical Vulnerabilities

**1. lodash (4.17.20)**
- **Severity**: High
- **Issue**: Prototype Pollution
- **Fix**: Update to 4.17.21
```bash
npm update lodash

2. express (4.16.4)

  • Severity: Medium
  • Issue: Path Traversal
  • Fix: Update to 4.18.2
npm update express

Summary

  • Total vulnerabilities: 5
  • Critical: 1
  • High: 2
  • Medium: 2

## Reference Files

For package manager-specific commands and patterns, load reference files as needed:

- **`references/package_managers.md`** - Commands and patterns for npm, pip, Poetry, Maven, Gradle, Cargo, and common dependency management patterns
- **`references/DEPENDENCY_AUDIT.template.md`** - Dependency audit report template with vulnerabilities, outdated packages, license compliance

When working with specific package managers, load `references/package_managers.md` and refer to the relevant package manager section.

## Best Practices

### Dependency Management

1. **Regular Updates**: Update dependencies regularly
2. **Security First**: Prioritize security updates
3. **Test After Updates**: Always test after updating
4. **Lock Files**: Use lock files (package-lock.json, yarn.lock)
5. **Version Pinning**: Pin critical dependencies

## Related Use Cases

- Dependency updates
- Security vulnerability scanning
- License compliance
- Dependency tree optimization
- Version conflict resolution