dependency-upgrade
Secure dependency upgrades with supply chain protection, cooldowns, and staged rollout. Use when upgrading deps, configuring security policies, or preventing supply chain attacks.
By secondsky · 403 installs
npx skills add secondsky/sap-skills --skill dependency-upgrade
Source repository · Upstream listing
Dependency Upgrade
Related Skills
sap hana cli : For dependency aware database tooling workflows and upgrade guidance
sap cap capire : For CAP dependency safe runtime and service configuration guidance
sap fiori tools : For secure UI5/Fiori dependency strategy when tooling touches frontend packages
Manage dependency upgrades with supply chain security, compatibility analysis, staged rollout, and comprehensive testing across all major package managers.
When to Use This Skill
Upgrading major framework or library versions
Configuring supply chain attack prevention (cooldown, script blocking, lockfile hardening)
Setting up secure package manager configuration
Resolving dependency conflicts or peer dependency issues
Planning incremental upgrade paths with testing
Automating dependency updates with Renovate, Dependabot, or Snyk
Auditing dependencies for vulnerabilities
Setting up CI/CD dependency security workflows
Two Modes of Operation
Interactive — Walk through setup questions to generate tailored config. Use for fresh setup.
Default — Apply recommended defaults immediately: 7 day cooldown, block all scripts, frozen lockfile, lockfile lint, Dependabot with cooldown. Customization optional.
Interactive Setup Flow
When the user wants tailored configuration, walk through these decisions. Skip this section entirely if using default mode.
Tier 1: Required Decisions
Always ask these 3 questions before generating any config:
1. Package Manager
"Which package manager does this project use?"
Answer Generates
npm .npmrc
Bun bunfig.toml
pnpm pnpm workspace.yaml
Yarn .yarnrc.yml
Deno deno.json config
2. Cooldown Period
"How many days should newly published packages age before install? This prevents supply chain attacks where malicious packages are discovered and unpublished within days."
Option Days Use Case
Aggressive 3 Catches most typosquatting
Recommended 7 Good balance for most projects
Conservative 14 Critical/production systems
Paranoid 21 Matches Snyk's built in default
Custom N User specifies
3. Post Install Script Policy
"How should lifecycle scripts (postinstall, preinstall) be handled? These are the 1 attack vector for supply chain attacks."
Option Behavior
Block all (recommended) ignore scripts + allow git=none
Allowlist Block by default, allow specific trusted packages
Review only Warn but don't block
Tier 2: Security Tooling (Offer as Batch)
"Which of these security features would you like to configure? Select any that apply."
4. CI/CD Automation Tool
Answer Generates
Dependabot .github/dependabot.yml with cooldown
Renovate renovate.json with minimumReleaseAge
Snyk No config needed (21 day cooldown built in)
None Skip
5. Automerge Policy
Option Behavior
None All updates require manual review
Minor+Patch only Auto merge safe updates, review majors
All with approval Auto merge after team approval
6. Update Schedule
Option Config Value
Daily "daily"
Weekly (default) "weekly"
Biweekly "biweekly"
Monthly "monthly"
7. Install Time Security Tooling
"Which security tools should protect dependency installation?"
Option Free? What It Does
socket npm wrapper Yes (beta) Wraps npm/npx, blocks malicious packages before install. Run socket wrapper on to enable system wide.
npq Yes Pre install auditor (CVE, typosquat, age, provenance checks)
Socket Firewall (sfw) No Real time deep analysis, blocks malicious packages
socket npm + npq Yes Both free tools combined
None — Skip
Load references/socket cli guide.md for full Socket CLI setup including authentication and free vs authenticated features.
8. Lockfile Validation
Option Behavior
Yes (recommended) Adds lockfile lint + CI script
No Skip
Tier 3: Advanced Options (Only If User Opts In)
"Would you like to configure any advanced options?"
9. Dev Containers — Generate hardened .devcontainer/devcontainer.json (Yes/No)
10. Secrets Manager — 1Password CLI / Infisical / None
11. pnpm Trust Policy — Enable trustPolicy: no downgrade (pnpm 10.21+ only, Yes/No)
12. Cooldown Exclusions — Package names that bypass cooldown (e.g., @types/react , typescript , esbuild )
Security First Upgrade Principles
1. Cooldown before installing — Wait 7 days for new package versions to be vetted by the community
2. Block post install scripts — Prevent arbitrary code execution during npm install
3. Freeze lockfiles in CI — Use deterministic installs ( npm ci , frozen lockfile )
4. Validate lockfile integrity — Use lockfile lint to detect injection
5. Audit before trusting — Use npq or Socket CLI to check packages before installing
6. Upgrade incrementally — One major version at a time with testing between each
7. Never blindly upgrade — Avoid npm update or npm check updates u without review
8. Scan before and after — Use socket scan to detect supply chain issues beyond CVEs
Cooldown Period: Prevent Supply Chain Attacks
Newly published packages may contain malicious code discovered within hours. Configure a cooldown period to delay installation.
Quick Setup
npm ( .npmrc ):
Bun ( bunfig.toml ):
pnpm ( pnpm workspace.yaml ):
Yarn ( .yarnrc.yml ):
Load references/cooldown config guide.md for detailed per PM configuration, CI tool integration, and exclusion patterns.
Use templates/<pm security.tmpl for copy paste ready config files.
Disable Post Install Scripts
Post install scripts are the most common supply chain attack vector (Shai Hulud, Nx, event stream incidents).
Quick Setup
npm :
Bun : Disabled by default. Allow specific packages in package.json :
pnpm (10.0+) : Disabled by default. Allow specific packages in pnpm workspace.yaml :
Load references/package manager security.md for full per PM hardening including pnpm trustPolicy , blockExoticSubdeps , and @lavamoat/allow scripts .
Deterministic & Frozen Installs
Always use frozen install commands in CI to ensure reproducible builds:
Package Manager Command What It Does
npm npm ci Deletes node modules, installs exact lockfile versions
Bun bun install frozen lockfile Fails if lockfile is out of sync
pnpm pnpm install frozen lockfile Fails if lockfile is out of sync
Yarn yarn install immutable immutable cache Validates lockfile and cache
Deno deno install frozen Frozen installation
Commit all lockfiles to version control: package lock.json , bun.lock , pnpm lock.yaml , yarn.lock , deno.lock .
Lockfile Validation
Install and configure lockfile lint to detect lockfile injection attacks:
Note: lockfile lint does not currently support Bun's bun.lock / bun.lockb formats.
Pre Install Security Auditing
npq — Pre Install Auditor
Socket Firewall (sfw) — Real Time Blocker
Load references/supply chain security.md for full comparison of npq vs sfw and what each validates.
Socket CLI Integration
Socket CLI provides proactive supply chain security beyond basic vulnerability scanning — covering malware detection, typosquatting, protestware, install script risks, and license compliance.
Proactive Upgrade Workflow
Quick Reference
Load references/socket cli guide.md for comprehensive command reference, CI workflow templates, alert categories, and free vs authenticated feature matrix.
Dependency Analysis
Staged Upgrade Strategy
Upgrade one dependency at a time with testing between each:
Load references/staged upgrades.md for codemod automation, custom migration scripts, and peer dependency handling.
Load references/compatibility matrix.md for version compatibility tables (React 18/19, Next.js 13 15, TypeScript, Tailwind 3/4).
Automated Updates with Cooldown
Configure CI/CD tools to respect cooldown periods:
Dependabot ( .github/dependabot.yml )
Renovate ( renovate.json )
Snyk
Snyk includes a built in 21 day cooldown for upgrade PRs. No configuration needed.
Socket Fix (complements Dependabot/Renovate)
Socket Fix automatically resolves CVEs with intelligent upgrade planning. Runs alongside other automation tools — it focuses on CVE remediation specifically:
For CI autopilot mode (auto creates and auto merges fix PRs), use templates/socket fix ci.tmpl .
Load references/socket cli guide.md for full socket fix options including autopilot , range style , and pr limit .
Use templates/dependabot security.tmpl or templates/renovate security.tmpl for complete config files.
Publishing Security
For package maintainers:
Load references/supply chain security.md for full publishing security guide including OIDC setup and dependency tree reduction.
Dev Environment Hardening
Isolate dependency execution from the host system:
Dev containers — limit blast radius of malicious packages
Secrets management — use 1Password CLI or Infisical instead of plaintext .env files
Dependency tree reduction — replace common packages with native JS
Use templates/devcontainer security.tmpl for a hardened dev container config.
Load references/secrets and containers.md for dev container setup, secrets management, and dependency reduction patterns.
Testing Strategy
Run tests at every level after each upgrade:
Load references/testing strategy.md for full testing pyramid, CI integration, and bundle analysis.
Rollback Plan
Upgrade Checklist
Common Pitfalls
Upgrading all dependencies at once (use incremental upgrades)
Blindly running npm update or npm check updates u without review
Not testing after each individual upgrade
Ignoring peer dependency warnings
Forgetting to update or commit the lock file
Not reading breaking change notes in changelogs
Skipping major versions instead of stepping through them
Not having a rollback plan
Trusting npmjs.org displayed source code (can differ from actual tarball)
Leaving post install scripts enabled (most common attack vector)
Not configuring a cooldown period for new package versions
When to Load References
Load these reference files when the user needs detailed information beyond the quick reference in SKILL.md:
Load This File When
references/cooldown config guide.md Configuring cooldown for a specific PM, CI tool integration, or exclusion patterns
references/package manager security.md Full per PM hardening guide including pnpm trust policy, blockExoticSubdeps, cross PM cheat sheet
references/supply chain security.md Understanding attack vectors, incident history, npq vs sfw vs Socket CLI comparison, publisher security (2FA, provenance, OIDC)
references/secrets and containers.md Setting up dev containers, secrets management with 1Password/Infisical
references/socket cli guide.md Using Socket CLI for scans, fixes, package scoring, CI integration, wrapper mode, alert categories
references/compatibility matrix.md Checking version compatibility for React, Next.js, TypeScript, Tailwind upgrades
references/staged upgrades.md Codemod automation, custom migration scripts, peer dependency handling, workspace upgrades
references/testing strategy.md Full testing pyramid, CI integration, bundle analysis, performance testing
Template Files
Ready to use config files in templates/ :
Template Purpose
npmrc security.tmpl Secure .npmrc with scripts disabled + cooldown
bunfig security.tmpl Secure bunfig.toml with cooldown + exclusions
pnpm workspace security.tmpl Secure pnpm workspace.yaml with cooldown, allowBuilds, trustPolicy
yarnrc security.tmpl