Dependency Updater Smart dependency management for any language with automatic detection and safe updates. Quick Start update my dependencies The skill auto-detects your project type and handles the rest. Triggers Trigger Example Update dependencies "update dependencies", "update deps" Check outdated "check for outdated packages" Fix dependency issues "fix my dependency problems" Security audit "audit dependencies for vulnerabilities" Diagnose deps "diagnose dependency issues" Supported Languages Language Package File Update Tool Audit Tool Node.js package.json taze npm audit Python requirements.txt, pyproject.toml pip-review safety , pip-audit Go go.mod go get -u govulncheck Rust Cargo.toml cargo update cargo audit Ruby Gemfile bundle update bundle audit Java pom.xml, build.gradle mvn versions: mvn dependency: .NET *.csproj dotnet outdated dotnet list package --vulnerable Quick Reference Update Type Version Change Action Fixed No ^ or ~ Skip (intentionally pinned) PATCH x.y.z → x.y.Z Auto-apply MINOR x.y.z → x.Y.0 Auto-apply MAJOR x.y.z → X.0.0 Prompt user individually Workflow User Request │ ▼ ┌─────────────────────────────────────────────────────┐ │ Step 1: DETECT PROJECT TYPE │ │ • Scan for package files (package.json, go.mod...) │ │ • Identify package manager │ ├─────────────────────────────────────────────────────┤ │ Step 2: CHECK PREREQUISITES │ │ • Verify required tools are installed │ │ • Suggest installation if missing │ ├─────────────────────────────────────────────────────┤ │ Step 3: SCAN FOR UPDATES │ │ • Run language-specific outdated check │ │ • Categorize: MAJOR / MINOR / PATCH / Fixed │ ├─────────────────────────────────────────────────────┤ │ Step 4: AUTO-APPLY SAFE UPDATES │ │ • Apply MINOR and PATCH automatically │ │ • Report what was updated │ ├─────────────────────────────────────────────────────┤ │ Step 5: PROMPT FOR MAJOR UPDATES │ │ • AskUserQuestion for each MAJOR update │ │ • Show current → new version │ ├─────────────────────────────────────────────────────┤ │ Step 6: APPLY APPROVED MAJORS │ │ • Update only approved packages │ ├─────────────────────────────────────────────────────┤ │ Step 7: FINALIZE │ │ • Run install command │ │ • Run security audit │ └─────────────────────────────────────────────────────┘ Commands by Language Node.js (npm/yarn/pnpm)
Check prerequisites
scripts/check-tool.sh taze "npm install -g taze"
Scan for updates
taze
Apply minor/patch
taze minor --write
Apply specific majors
taze major --write --include pkg1,pkg2
Monorepo support
taze -r
recursive
Security
npm audit npm audit fix Python
Check outdated
pip list --outdated
Update all (careful!)
pip-review --auto
Update specific
pip install --upgrade package-name
Security
pip-audit safety check Go
Check outdated
go list -m -u all
Update all
go get -u ./ .. .
Tidy up
go mod tidy
Security
govulncheck ./ .. . Rust
Check outdated
cargo outdated
Update within semver
cargo update
Security
cargo audit Ruby
Check outdated
bundle outdated
Update all
bundle update
Update specific
bundle update --conservative gem-name
Security
bundle audit Java (Maven)
Check outdated
mvn versions:display-dependency-updates
Update to latest
mvn versions:use-latest-releases
Security
mvn dependency:tree mvn dependency-check:check .NET
Check outdated
dotnet list package --outdated
Update specific
dotnet add package PackageName
Security
dotnet list package --vulnerable Diagnosis Mode When dependencies are broken, run diagnosis: Common Issues & Fixes Issue Symptoms Fix Version Conflict "Cannot resolve dependency tree" Clean install, use overrides/resolutions Peer Dependency "Peer dependency not satisfied" Install required peer version Security Vuln npm audit shows issues npm audit fix or manual update Unused Deps Bloated bundle Run depcheck (Node) or equivalent Duplicate Deps Multiple versions installed Run npm dedupe or equivalent Emergency Fixes
Node.js - Nuclear reset
rm -rf node_modules package-lock.json npm cache clean --force npm install
Python - Clean virtualenv
rm -rf venv python -m venv venv source venv/bin/activate pip install -r requirements.txt
Go - Reset modules
rm go.sum go mod tidy Security Audit Run security checks for any project:
Node.js
npm audit npm audit --json | jq '.metadata.vulnerabilities'
Python
pip-audit safety check
Go
govulncheck ./ .. .
Rust
cargo audit
Ruby
bundle audit
.NET
dotnet list package --vulnerable Severity Response Severity Action Critical Fix immediately High Fix within 24h Moderate Fix within 1 week Low Fix in next release Anti-Patterns Avoid Why Instead Update fixed versions Intentionally pinned Skip them Auto-apply MAJOR Breaking changes Prompt user Batch MAJOR prompts Loses context Prompt individually Skip lock file Irreproducible builds Always commit lock files Ignore security alerts Vulnerabilities Address by severity Verification Checklist After updates: Updates scanned without errors MINOR/PATCH auto-applied MAJOR updates prompted individually Fixed versions untouched Lock file updated Install command ran Security audit passed (or issues noted) The skill auto-detects project type by scanning for package files: File Found Language Package Manager package.json Node.js npm/yarn/pnpm requirements.txt Python pip pyproject.toml Python pip/poetry Pipfile Python pipenv go.mod Go go modules Cargo.toml Rust cargo Gemfile Ruby bundler pom.xml Java Maven build.gradle Java/Kotlin Gradle *.csproj .NET dotnet Detection order matters for monorepos: Check current directory first Then check for workspace/monorepo patterns Offer to run recursively if applicable Prerequisites
Install taze globally (recommended)
npm install -g taze
Or use npx
npx taze Smart Update Flow
1. Scan all updates
taze
2. Apply safe updates (minor + patch)
taze minor --write
3. For each major, prompt user:
"Update @types/node from ^20.0.0 to ^22.0.0?"
If yes, add to approved list
4. Apply approved majors
taze major --write --include approved-pkg1,approved-pkg2
5. Install
npm install
or pnpm install / yarn
Auto-Approve List Some packages have frequent major bumps but are backward-compatible: Package Reason lucide-react Icon library, majors are additive @types/* Type definitions, usually safe Semantic Versioning MAJOR.MINOR.PATCH (e.g., 2.3.1) MAJOR: Breaking changes - requires code changes MINOR: New features - backward compatible PATCH: Bug fixes - backward compatible Range Specifiers Specifier Meaning Example ^1.2.3 Minor + Patch OK
=1.2.3 <2.0.0 ~1.2.3 Patch only =1.2.3 <1.3.0 1.2.3 Exact (fixed) Only 1.2.3 =1.2.3 At least Any =1.2.3 * Any Latest (dangerous) Recommended Strategy { "dependencies" : { "critical-lib" : "1.2.3" , // Exact for critical "stable-lib" : "~1.2.3" , // Patch only for stable "modern-lib" : "^1.2.3" // Minor OK for active } } Node.js Conflicts Diagnosis: npm ls package-name
See dependency tree
npm explain package-name
Why installed
yarn why package-name
Yarn equivalent
Resolution with overrides: // package.json { "overrides" : { "lodash" : "^4.18.0" } } Resolution with resolutions (Yarn): { "resolutions" : { "lodash" : "^4.18.0" } } Python Conflicts Diagnosis: pip check pipdeptree -p package-name Resolution:
Use virtual environment
python -m venv venv source venv/bin/activate pip install -r requirements.txt
Or use constraints
pip install -c constraints.txt -r requirements.txt Script Reference Script Purpose scripts/check-tool.sh Verify tool is installed scripts/run-taze.sh Run taze with proper flags Related Tools Tool Language Purpose taze Node.js Smart dependency updates npm-check-updates Node.js Alternative to taze pip-review Python Interactive pip updates cargo-edit Rust Cargo dependency management bundler-audit Ruby Security auditing