| name | upgrade-packages |
| description | Upgrade all Rust crate dependencies in Cargo.toml to their latest versions. Use when the user says "upgrade packages", "update dependencies", "bump versions", or "upgrade deps". |
| argument-hint | [--check-only] [--major] [crate-name] |
Upgrade Packages
Upgrade all Rust crate dependencies to their latest compatible (or latest major, if --major) versions.
Arguments
--check-only — List outdated crates without upgrading. Stop after Step 2.
--major — Include major version bumps (breaking changes). Without this flag, stay within semver-compatible ranges.
- Any other argument is treated as a specific crate name to upgrade (instead of all crates).
Step 1 — Verify the manifest
Inspect the repo root for Cargo.toml. This project is a single Rust crate (not a workspace). All dependencies live under [dependencies] and [dev-dependencies] in the root Cargo.toml.
If Cargo.toml is missing, stop and tell the user.
Step 2 — List outdated crates
Run cargo outdated to list what's outdated BEFORE upgrading anything.
cargo outdated
cargo update --dry-run
Read the docs: https://doc.rust-lang.org/cargo/commands/cargo-update.html
If --check-only was passed, and report the outdated list.