deps-upgrade — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited deps-upgrade (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Dependencies are inherited code. Upgrades are inherited risk. Patch in batch, minor in batch with a smoke test, major one-at-a-time with a CHANGELOG read.
Apply: CVE remediation; major upstream release; compatibility forcing function; quarterly hygiene cadence; pre-release lockfile audit; deprecation warnings accumulating.
NOT apply: active feature branch with high churn; pre-release freeze window; mid-incident; API-break-driven refactor.
--warning-as-error=off defers cost.npm audit fix --force without reading.<git> policy.go.mod, Gemfile, pom.xml); filtering by extension alone misses them. fd only takes one glob per call, so anchor on canonical filenames via a single regex: fd -t f '^(package(-lock)?\.json|pnpm-lock\.yaml|yarn\.lock|Cargo\.(toml|lock)|pyproject\.toml|poetry\.lock|requirements.*\.txt|Pipfile\.lock|go\.(mod|sum)|pom\.xml|build\.gradle(\.kts)?|settings\.gradle(\.kts)?|libs\.versions\.toml|gradle\.lockfile|Gemfile(\.lock)?|.*\.gemspec|.*\.opam|dune-project|opam\.locked|mix\.(exs|lock)|composer\.(json|lock))$'Add ecosystem-specific names if the project uses something rarer (Pipfile, Brewfile, flake.nix, shard.yml, pubspec.yaml). Capture a lockfile snapshot for later diff (difft).
chore(deps): patch sweep.chore(deps): minor sweep.chore(deps)!: bump <pkg> <old>→<new>.difft (not diff). Check transitive churn.For each major bump, before writing any code:
CHANGELOG.md / MIGRATION.md / release notesgit grep -n -F '<symbol>' and ast-grep -p '<pattern>'| Family | Outdated scan | Upgrade command | Lockfile |
|---|---|---|---|
| Rust | cargo outdated, cargo audit | cargo update, cargo upgrade | Cargo.lock |
| Python (Poetry) | poetry show --outdated | poetry update, poetry add <pkg>@latest | poetry.lock |
| Python (pip-tools) | pip list --outdated, pip-audit | pip-compile --upgrade, pip-sync | requirements.txt |
| JavaScript/TypeScript (pnpm) | pnpm outdated, pnpm audit | pnpm update, pnpm up --latest | pnpm-lock.yaml |
| JavaScript/TypeScript (npm) | npm outdated, npm audit | npm update, ncu -u | package-lock.json |
| Go | go list -u -m all, govulncheck | go get -u <pkg>@latest, go mod tidy | go.sum |
| Java/Kotlin (Gradle) | gradle dependencyUpdates | edit libs.versions.toml, gradle dependencies --refresh-dependencies | gradle.lockfile |
| Java/Kotlin (Maven) | mvn versions:display-dependency-updates | mvn versions:use-latest-releases | pom.xml |
| OCaml | opam list --upgradable | opam upgrade <pkg>, opam pin <pkg>.<ver> | *.opam.locked |
Use fd -e <ext> (not find). Use difft (not diff). Use bat -P -p -n (not cat). Use git grep -n -F (not grep).
difft is the mandated lockfile diff viewer; diff is banned.hyperfine validates upgrade did not regress hot-path performance.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.