Skip to content
Back to skills

Updating Dependencies

ASecurity

Upgrade packages without breaking the build or importing something nobody vetted — read the changelog, move in separate steps, and prove it still works. Use when updating a dependency, responding to a security advisory, or adding a new package.

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 30, 2026
ai-agentsgosecurity

Works with

  • cli

Security analysis

A100/100

Scanned September 30, 2026

npx -y skills add mirzaaghazadeh/StandBye --skill updating-dependencies --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Updating Dependencies?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Updating Dependencies
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mirzaaghazadeh-updating-dependencies/badge)](https://www.skillsdirectory.com/skills/mirzaaghazadeh-updating-dependencies)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: updating-dependencies
description: Upgrade packages without breaking the build or importing something nobody vetted — read the changelog, move in separate steps, and prove it still works. Use when updating a dependency, responding to a security advisory, or adding a new package.
---

# Updating dependencies

Every upgrade is somebody else's code entering the project. It is ordinary work, but it is the kind
where a green build is not the same as a safe change.

## One at a time, and separately

- A security patch is its own change. A routine bump is its own change. A major version is its own
  change, and usually its own task.
- Never mix a dependency update into a feature. When something breaks a week later, the first
  question is "what changed", and a diff that did two things cannot answer it.
- Update the lockfile in the same commit as the manifest, always. A manifest and lockfile that
  disagree is a build that works for you and nobody else.

## Read before you upgrade

Look at the changelog or release notes for every version you are crossing, not just the one you are
landing on.

- Breaking changes, deprecations, and anything about defaults changing.
- For a major version, find the migration guide. If there is not one, that is information about the
  package.
- Check the package is still maintained: when was the last release, are issues answered.

If the update needs code changes, make them in the same change and say so in the message.

## Prove it still works

The test suite passing is necessary and not sufficient.

1. Full suite, typecheck, lint — the repo's own commands.
2. Run the thing the dependency is actually used for. Tests often mock exactly the part that broke.
3. Check the build output where it matters: bundle size for a client dependency, startup time for a
   server one.
4. Read the lockfile diff. One package bumped should not quietly bring in thirty transitive
   changes; if it did, say so.

## Security advisories

Do the smallest upgrade that fixes it, and do it first — before the routine bumps that were queued
behind it.

If the fix requires a major version and a migration, that is a decision about time, so bring it to
the owner with `ask_user`: what the advisory is, whether the project is actually exposed to it
(often it is not — the vulnerable path may be unused), and what the two options cost.

## Adding something new

Before adding a package, check the project does not already have one that does this, and that the
standard library does not. Then look at what you are importing: maintenance, size, transitive
dependencies, licence, and whether the name is a near-miss of a more popular package.

Adding a dependency is a long-term commitment on someone else's behalf. For anything substantial,
ask rather than decide.

## If it goes wrong

Revert the upgrade rather than patching around it under time pressure. Then say what broke, with
the error, so the next attempt starts informed.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…