skills/review-dependencies/SKILL.md
Detect package managers and discover outdated or vulnerable dependencies. Returns structured findings without upgrading. Use when the user asks to "review dependencies", "check for outdated packages", "check dependencies", "scan dependencies", or "dependency review".
npx skillsauth add tobihagemann/turbo review-dependenciesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Detect package managers and discover outdated or vulnerable dependencies. Analysis only. Does not upgrade.
Identify which package managers are in use by searching for config files:
| Config file | Package manager | Lockfile | Ecosystem |
|---|---|---|---|
| package.json | npm / yarn / pnpm | package-lock.json / yarn.lock / pnpm-lock.yaml | Node.js |
| Package.swift, *.xcodeproj | Swift Package Manager | Package.resolved | Swift |
| pyproject.toml, requirements.txt, setup.py | pip / poetry / uv | poetry.lock, uv.lock | Python |
| Cargo.toml | cargo | Cargo.lock | Rust |
| go.mod | Go modules | go.sum | Go |
| Gemfile | Bundler | Gemfile.lock | Ruby |
| pom.xml | Maven | — | Java |
| build.gradle, build.gradle.kts | Gradle | gradle.lockfile | Java/Kotlin |
Swift dependencies can live in Package.swift or be configured directly in the Xcode project file (.xcodeproj/.xcworkspace). For Xcode-managed dependencies, inspect the project's package references.
Detection steps:
yarn.lock → yarn, pnpm-lock.yaml → pnpm)package.json files): use AskUserQuestion to let the user choose which to review (multiSelect allowed)AskUserQuestion to let the user choose which to reviewRun the appropriate discovery command to find available updates:
| Package manager | Discovery command | Notes |
|---|---|---|
| npm | ncu --format group | Requires npm-check-updates. Suggest npm install -g npm-check-updates if missing. |
| yarn | ncu --format group or yarn upgrade-interactive | |
| pnpm | ncu --format group or pnpm outdated | |
| Swift PM | Check resolved versions in Package.resolved against latest releases via WebSearch | No built-in outdated command. Read Package.swift or inspect the Xcode project to identify dependencies and their current version constraints. |
| pip | pip list --outdated | |
| poetry | poetry show --outdated | |
| uv | uv pip list --outdated | |
| cargo | cargo outdated | Requires cargo-outdated. Fall back to comparing Cargo.toml versions via WebSearch. |
| Go modules | go list -m -u all | |
| Bundler | bundle outdated | |
| Maven | mvn versions:display-dependency-updates | |
| Gradle | gradle dependencyUpdates | Requires com.github.ben-manes.versions plugin. |
Categorize updates:
If the discovery tool is not installed, suggest the installation command (see Step 2 notes column). If no tool exists for the ecosystem, fall back to manual version checking via WebSearch.
If no updates are available, report that dependencies are up to date.
Return findings as a numbered list. For each finding:
### [P<N>] <title (imperative, <=80 chars)>
**Package:** `<name>` <current> -> <latest>
**Manager:** <npm/pip/cargo/etc.>
<one paragraph: why this matters, known vulnerabilities if any, major version gap>
After all findings, add:
## Overall Verdict
**Dependencies:** <up to date | updates available>
<summary with counts: N major, N minor, N patch>
tools
Run autonomous task execution using the codex CLI. Use when the user asks to "codex exec", "run codex exec", "execute a task with codex", or "delegate to codex".
development
Run the post-implementation quality assurance workflow including tests, code polishing, review, and commit. Use when the user asks to "finalize implementation", "finalize changes", "wrap up implementation", "finish up", "ready to commit", or "run QA workflow".
development
Run the post-implementation quality assurance workflow including tests, code polishing, review, and commit. Use when the user asks to "finalize implementation", "finalize changes", "wrap up implementation", "finish up", "ready to commit", or "run QA workflow".
tools
Teach the user to deeply understand a change through interactive tutoring: restating understanding, drilling into why/what/how, and quizzing until mastery. The active counterpart to a one-shot explanation. Use when the user asks to "understand this change", "teach me this change", "help me understand what changed", "walk me through this change", "make sure I understand this", "quiz me on this", or "teach me what we did".