Update Ruby gems or JavaScript packages. Use for upgrading one or all outdated dependencies with Bundler or npm, reviewing changelogs and breaking changes, and running verification after dependency updates.
Update Ruby gems and JavaScript dependencies safely.
This skill supports three modes:
The workflow is conservative by default: establish a baseline, review upstream changes before editing dependencies, prefer incremental updates when risk is high, and verify the result with tests.
bundle update or npm update.Activate this skill when the user says things like:
If the request is ambiguous, clarify whether the user wants:
Identify the requested scope.
Establish a baseline before changing dependencies.
bundle outdated for Ruby and npm outdated for JavaScript.npm install before npm outdated to ensure the lockfile is up to date.Review upgrade risk before running update commands.
Choose the update strategy.
bundle update GEM_NAME.npm install PACKAGE@latest (or --save-dev for dev dependencies).npm update only when the user wants in-range updates constrained by current semver ranges.Apply the update.
rails, run bin/rails app:update after Bundler finishes, then review and reconcile the generated file changes before continuing.good_job, run bin/rails generate good_job:update after Bundler finishes, then review and reconcile the generated file changes before continuing.Gemfile.lock and package-lock.json diffs plus transitive dependency changes.Verify the update incrementally.
bin/rails test <file> -n '/test name/' for targeted checks.bin/rails test <file> for focused file-level verification.bin/rails test for broader validation.bin/rubocop <file> for files changed as part of the update when linting is relevant.npm run eslint-all for JavaScript linting after npm updates.npm run stylelint-all for stylesheet linting after npm updates.Handle failures explicitly.
Report the result.
2.0.1) is available.Stop and ask the user before continuing if:
rails was upgraded, bin/rails app:update was run and the generated config changes were reviewed.Gemfile.lock and/or package-lock.json changes were inspected.