Dependency auditor
Audit and manage dependencies across multi-language projects.
How to use it
Claude Code
- Run the line below. It pulls the whole folder into
~/.claude/skills/dependency-auditor, including the files SKILL.md points to. - Describe your job in plain words. Claude Code follows the skill from there.
npx degit alirezarezvani/claude-skills/engineering/skills/dependency-auditor#main ~/.claude/skills/dependency-auditorFor one project only, change the path to .claude/skills/dependency-auditor. This skill also uses scan.json, licenses.json, plan.json, package.json, package-lock.json, requirements.txt — copying SKILL.md alone won't be enough. See the folder on GitHub.
Claude (web or desktop app)
- On this page open ⋯ → Download .md.
- Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
- Pick the file and Save. Claude shows the name and description and runs a security scan.
- Check the skill is switched on.
- Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
- ChatGPT: make a Project and paste it into Instructions.
- Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
- Check which app you pasted it into — the steps above name the right one.
- Some skills need the paid tier of Claude or ChatGPT.
Paste into Claude, ChatGPT or Cursor.
Source of Dependency auditor
Show the full text86 lines
| name | description |
|---|---|
| dependency-auditor | Audit and manage dependencies across multi-language projects. Identifies vulnerabilities, license conflicts, transitive dependency risks, and safe-upgrade paths. Use when auditing third-party packages before release, investigating a CVE, planning a major version bump, or running a license-compliance review. Examples: 'audit our npm dependencies', 'do we have GPL contamination', 'plan the upgrade to React 19'. |
Dependency Auditor
Skill Type: POWERFUL · Category: Engineering · Domain: Dependency Management & Security
Offline, deterministic dependency auditing across 8+ package ecosystems. The three scripts are pattern-matchers over manifests/lockfiles — they do not call live advisory APIs; pair their findings with npm audit / pip-audit / cargo audit for current CVE coverage.
Quick Start
# 1. Scan for vulnerabilities (built-in offline CVE pattern set; exit non-zero on high severity)
python3 scripts/dep_scanner.py /path/to/project --format json --fail-on-high -o scan.json
# 2. Check license compliance and conflicts
python3 scripts/license_checker.py /path/to/project --policy strict --format json -o licenses.json
# 3. Plan upgrades from the scanner's inventory
python3 scripts/upgrade_planner.py scan.json --risk-threshold medium --timeline 90 --format json -o plan.json
Consume the outputs: scan.json findings drive which packages to pin/patch now; licenses.json conflicts go to the user as a legal-risk list; plan.json orders upgrades by risk with rollback notes. --quick-scan skips transitive deps; --security-only limits the plan to security fixes.
Verification loop: after applying upgrades, re-run step 1 and assert 0 high-severity findings before closing the audit.
Supported Ecosystems
| Language | Manifests parsed |
|---|---|
| JavaScript/Node | package.json, package-lock.json, yarn.lock |
| Python | requirements.txt, pyproject.toml, Pipfile.lock, poetry.lock |
| Go | go.mod, go.sum |
| Rust | Cargo.toml, Cargo.lock |
| Ruby | Gemfile, Gemfile.lock |
| Java | pom.xml, gradle.lockfile |
| PHP | composer.json, composer.lock |
| C#/.NET | packages.config, project.assets.json |
License Classification
- Permissive: MIT, Apache 2.0, BSD (2/3-clause), ISC
- Copyleft (strong): GPL v2/v3, AGPL v3 — flags contamination risk in permissive projects
- Copyleft (weak): LGPL v2.1/v3, MPL 2.0
- Proprietary / Dual / Unknown — unknown licenses are surfaced for manual review
The checker analyzes license inheritance through dependency chains and emits conflict pairs with remediation suggestions.
Upgrade Risk Matrix
| Risk | Update type | Handling |
|---|---|---|
| Low | Patch, security fixes | Apply immediately |
| Medium | Minor with new features | Batch into scheduled update |
| High | Major version, API changes | Dedicated migration task + tests |
| Critical | Known breaking changes | Planned migration with rollback procedure |
Prioritization: security patches > bug fixes > feature updates > major rewrites; deprecated features get immediate attention.
Scripts (accurate capability claims)
scripts/dep_scanner.py— multi-format parser; built-in offline vulnerability pattern set (~16 CVE patterns — a smoke layer, not a replacement for live advisories); transitive resolution from lockfiles; JSON + text output.scripts/license_checker.py— license detection from package metadata; compatibility matrix across 20+ license types;--policy permissive|strict; conflict detection with remediation.scripts/upgrade_planner.py— semver-based breaking-change prediction; risk-ordered migration plan with testing checklist and timeline estimation.
Sample fixtures: test-project/ and test-inventory.json in this folder; expected shapes in expected_outputs/.
CI Integration
# Security gate in CI
python3 scripts/dep_scanner.py . --format json --fail-on-high
python3 scripts/license_checker.py . --policy strict --format json
Best Practices
- Prioritize security: address high/critical findings immediately; license compliance before functionality.
- Gradual updates: incremental upgrades with thorough testing; feature flags for risky bumps.
- Cadence: security scans per commit; license audits monthly; full audit quarterly.
- False positives: whitelist with documentation; contact maintainers for license ambiguity.
See README.md for detailed usage and references/ for the vulnerability/license knowledge bases.
| 1 | |
| 2 | name "dependency-auditor" |
| 3 | description "Audit and manage dependencies across multi-language projects. Identifies vulnerabilities, license conflicts, transitive dependency risks, and safe-upgrade paths. Use when auditing third-party packages before release, investigating a CVE, planning a major version bump, or running a license-compliance review. Examples: 'audit our npm dependencies', 'do we have GPL contamination', 'plan the upgrade to React 19'." |
| 4 | |
| 5 | |
| 6 | # Dependency Auditor |
| 7 | |
| 8 | > **Skill Type:** POWERFUL · **Category:** Engineering · **Domain:** Dependency Management & Security |
| 9 | |
| 10 | Offline, deterministic dependency auditing across 8+ package ecosystems. The three scripts are pattern-matchers over manifests/lockfiles — they do **not** call live advisory APIs; pair their findings with `npm audit` / `pip-audit` / `cargo audit` for current CVE coverage. |
| 11 | |
| 12 | ## Quick Start |
| 13 | |
| 14 | |
| 15 | # 1. Scan for vulnerabilities (built-in offline CVE pattern set; exit non-zero on high severity) |
| 16 | python3 scripts/dep_scanner.py /path/to/project --format json --fail-on-high -o scan.json |
| 17 | |
| 18 | # 2. Check license compliance and conflicts |
| 19 | python3 scripts/license_checker.py /path/to/project --policy strict --format json -o licenses.json |
| 20 | |
| 21 | # 3. Plan upgrades from the scanner's inventory |
| 22 | python3 scripts/upgrade_planner.py scan.json --risk-threshold medium --timeline 90 --format json -o plan.json |
| 23 | |
| 24 | |
| 25 | Consume the outputs: `scan.json` findings drive which packages to pin/patch now; `licenses.json` conflicts go to the user as a legal-risk list; `plan.json` orders upgrades by risk with rollback notes. `--quick-scan` skips transitive deps; `--security-only` limits the plan to security fixes. |
| 26 | |
| 27 | **Verification loop:** after applying upgrades, re-run step 1 and assert 0 high-severity findings before closing the audit. |
| 28 | |
| 29 | ## Supported Ecosystems |
| 30 | |
| 31 | | Language | Manifests parsed | |
| 32 | |---|---| |
| 33 | | JavaScript/Node | package.json, package-lock.json, yarn.lock | |
| 34 | | Python | requirements.txt, pyproject.toml, Pipfile.lock, poetry.lock | |
| 35 | | Go | go.mod, go.sum | |
| 36 | | Rust | Cargo.toml, Cargo.lock | |
| 37 | | Ruby | Gemfile, Gemfile.lock | |
| 38 | | Java | pom.xml, gradle.lockfile | |
| 39 | | PHP | composer.json, composer.lock | |
| 40 | | C#/.NET | packages.config, project.assets.json | |
| 41 | |
| 42 | ## License Classification |
| 43 | |
| 44 | **Permissive**: MIT, Apache 2.0, BSD (2/3-clause), ISC |
| 45 | **Copyleft (strong)**: GPL v2/v3, AGPL v3 — flags contamination risk in permissive projects |
| 46 | **Copyleft (weak)**: LGPL v2.1/v3, MPL 2.0 |
| 47 | **Proprietary / Dual / Unknown** — unknown licenses are surfaced for manual review |
| 48 | |
| 49 | The checker analyzes license inheritance through dependency chains and emits conflict pairs with remediation suggestions. |
| 50 | |
| 51 | ## Upgrade Risk Matrix |
| 52 | |
| 53 | | Risk | Update type | Handling | |
| 54 | |---|---|---| |
| 55 | | Low | Patch, security fixes | Apply immediately | |
| 56 | | Medium | Minor with new features | Batch into scheduled update | |
| 57 | | High | Major version, API changes | Dedicated migration task + tests | |
| 58 | | Critical | Known breaking changes | Planned migration with rollback procedure | |
| 59 | |
| 60 | Prioritization: security patches > bug fixes > feature updates > major rewrites; deprecated features get immediate attention. |
| 61 | |
| 62 | ## Scripts (accurate capability claims) |
| 63 | |
| 64 | **`scripts/dep_scanner.py`** — multi-format parser; built-in offline vulnerability pattern set (~16 CVE patterns — a smoke layer, not a replacement for live advisories); transitive resolution from lockfiles; JSON + text output. |
| 65 | **`scripts/license_checker.py`** — license detection from package metadata; compatibility matrix across 20+ license types; `--policy permissive|strict`; conflict detection with remediation. |
| 66 | **`scripts/upgrade_planner.py`** — semver-based breaking-change prediction; risk-ordered migration plan with testing checklist and timeline estimation. |
| 67 | |
| 68 | Sample fixtures: `test-project/` and `test-inventory.json` in this folder; expected shapes in `expected_outputs/`. |
| 69 | |
| 70 | ## CI Integration |
| 71 | |
| 72 | |
| 73 | # Security gate in CI |
| 74 | python3 scripts/dep_scanner.py . --format json --fail-on-high |
| 75 | python3 scripts/license_checker.py . --policy strict --format json |
| 76 | |
| 77 | |
| 78 | ## Best Practices |
| 79 | |
| 80 | **Prioritize security**: address high/critical findings immediately; license compliance before functionality. |
| 81 | **Gradual updates**: incremental upgrades with thorough testing; feature flags for risky bumps. |
| 82 | **Cadence**: security scans per commit; license audits monthly; full audit quarterly. |
| 83 | **False positives**: whitelist with documentation; contact maintainers for license ambiguity. |
| 84 | |
| 85 | See [README.md] for detailed usage and `references/` for the vulnerability/license knowledge bases. |
| 86 |
Discussion
Browse more free Claude skills or everything in Product.