agentleFS
HayatelinHayatelin/devsecops-skills/skills/dependency-audit/SKILL.md

dependency-audit

Skill0 starsChanged 5 months agoMITView on GitHub

Audit project dependencies for known vulnerabilities, risky packages, and supply-chain hazards. Trigger when the user says "audit dependencies", "check for vulnerable packages", "is this package safe", before a release, or after adding/upgrading a dependency.

  • Installs packages

42 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use api-audit, container-audit and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • gmanch94Skill

    api-audit

    Guides a structured API portfolio audit — from discovery through primary-source-verified inventory, shortcomings analysis, prioritized recommendations, executive summary, and options analysis. Enforces primary-source discipline, cross-file consistency, and advisor review gates. Use when auditing an API portfolio, evaluating a vendor's developer ecosystem, or producing defensible technical analysis of an API set.

    Also in 3 projects that use this

  • grichaSkill

    container-audit

    Audit local Docker images and running containers for hardening issues before deploy — privileged flags, root users, stale base images, missing resource limits. Use for pre-deploy container review.

    Also in 3 projects that use this

  • conorluddySkill

    performance-profiling

    Instruments integration and performance analysis workflows for iOS apps. Use when profiling CPU usage, memory allocation, network activity, or energy consumption. Covers Time Profiler, Allocations, Leaks, Network instruments, and performance optimization strategies.

    Also in 3 projects that use this

  • renfei-designSkill

    a11y-audit

    Audit Figma designs for WCAG accessibility issues — color contrast, minimum font size, touch target sizing, and missing text alternatives. Use when asked to check accessibility, audit contrast ratios, find a11y issues, verify WCAG compliance, or review designs for accessibility problems. Scans nodes, analyzes offline, and annotates issues in Figma.

    Also in 3 projects that use this

  • OpenAISkill

    security-scan

    Use for a standard, single-pass security audit of an entire repository or a scoped path, package, folder, or submodule with no diff to review. This is the default repository scan. Do not use for PR, commit, branch, or working-tree diffs, or for deep, multi-pass scans.

    Also in 4 projects that use this

  • GitHubSkill

    accessibility-audit

    Audits actual components and routes against applicable WCAG 2.2 A/AA criteria using consumer-owned design-system evidence and repository tools. Use when asked for an accessibility audit, a11y check, keyboard or focus review, contrast check, or screen-reader verification.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

8 rules. 0 are common, 6 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 39 edited versions we read keep these.

  • 6

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    After adding, upgrading, or unpinning a dependency.

    line 12
  2. Distinctive:

    Before cutting a release or merging to a protected branch.

    line 13
  3. Very specific:

    When the user asks "are any of our packages vulnerable?" or "is <package> safe to install?"

    line 14
  4. Distinctive:

    When a Dependabot/Renovate alert or CVE lands.

    line 15
  5. Distinctive:

    Run the native auditor for each ecosystem:

    line 21
  6. Distinctive:

    If no fix exists: pin away from the bad range, apply an override/resolution to force a safe transitive version, or replace the package.

    line 44
  7. Distinctive:

    Remove dead dependencies entirely rather than carrying their risk.

    line 45
  8. Very specific:

    Add an overrides/resolutions (npm) or constraints file (pip) to hold transitive deps at safe versions.

    line 46

“Common” is measured: kept by at least 6 in 10 of the 39 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

When to use

  • After adding, upgrading, or unpinning a dependency.
  • Before cutting a release or merging to a protected branch.
  • When the user asks "are any of our packages vulnerable?" or "is <package> safe to install?"
  • When a Dependabot/Renovate alert or CVE lands.

Process

  1. Identify the ecosystem(s) from lockfiles present: package-lock.json/pnpm-lock.yaml/yarn.lock (npm), requirements.txt/poetry.lock/uv.lock (Python), go.sum (Go), Cargo.lock (Rust), Gemfile.lock (Ruby).
  2. Run the native auditor for each ecosystem:
    • npm: npm audit --omit=dev (or pnpm audit / yarn npm audit)
    • Python: pip-audit (or uv pip audit); fall back to safety check if needed
    • Go: govulncheck ./...
    • Rust: cargo audit
    • Ruby: bundle audit check --update
  3. Optionally run a cross-ecosystem SCA pass (osv-scanner -r .) to catch anything the native tool misses.
  4. Triage each finding by severity AND reachability — a critical CVE in an unused transitive dep is lower urgency than a medium one in a hot path.
  5. Manually eyeball newly added packages for supply-chain red flags (see checklist).
  6. Propose the minimal safe upgrade and re-run the auditor to confirm the fix.

What to check

  • Known CVEs / advisories in direct and transitive dependencies, with a fixed version available.
  • Typosquats — names one edit away from a popular package (reqeusts, python-dateutil vs dateutil, lodahs).
  • Unmaintained deps — no release in 2+ years, archived repo, single maintainer, or deprecated on the registry.
  • Supply-chain smells — install/postinstall scripts, brand-new package with sudden version jumps, maintainer handover, obfuscated code, network calls at install time.
  • License risk — copyleft (GPL/AGPL) creeping into a permissive-licensed product.
  • Lockfile integrity — lockfile committed, hashes present, and no latest/floating ranges in production deps.

How to fix

  • Bump to the patched version (npm update <pkg>, pip install -U <pkg>, edit + re-lock). Prefer the smallest semver jump that clears the advisory.
  • If no fix exists: pin away from the bad range, apply an override/resolution to force a safe transitive version, or replace the package.
  • Remove dead dependencies entirely rather than carrying their risk.
  • Add an overrides/resolutions (npm) or constraints file (pip) to hold transitive deps at safe versions.
  • Wire the auditor into CI so regressions are caught automatically.

Report back

List findings as a short table: package, current → fixed version, severity, CVE/advisory ID, and direct-vs-transitive. State which you upgraded, which need a manual decision (breaking change, no fix), and any typosquat/unmaintained flags. End with a clear "audit clean" or "N issues remaining" verdict.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.