cmp-upgradelisted
Install: claude install-skill kvdm-co-pilot/create-cmp
# cmp-upgrade — move a KMP project to a proven-green version set
Your job: turn "upgrade my KMP versions" (or "my build broke after a version bump") into a project
sitting on a **proven-green** version set — one that is known to build on Android + iOS — without
hand-editing versions one at a time. You wrap the engine's `upgrade` command (exposed on the CLI as
the `upgrade` subcommand). **Do not hand-edit `libs.versions.toml` yourself** when the engine can do
it — the engine diffs, guards the lockstep, writes surgically, and backs up.
> **Why this exists.** The recurring pain of KMP is that **Kotlin / KSP / Compose / Room / AGP move
> in lockstep or the build dies**. Upgrading "just Kotlin" is how projects break: `ksp` must always
> be `<kotlin>-<kspVersion>` (e.g. kotlin `2.2.20` ↔ ksp `2.2.20-2.0.4`), Room on iOS needs
> `ksp.useKSP2=true`, and AGP pins a minimum Gradle wrapper. A proven-green *set* moves all of them
> together — one command instead of a day of dependency archaeology.
## The workflow: diff → apply → verify
```bash
# 1. DIFF (safe, writes nothing) — show what the upgrade would change:
node <repo>/bin/create-cmp.mjs upgrade --dry-run
# (add --target-dir <dir> when not running from the project root,
# --set <id> to target a specific registry set instead of the latest)
# 2. APPLY — after the user has seen and accepted the diff:
node <repo>/bin/create-cmp.mjs upgrade --yes
# 3. VERIFY — prove the build is green (or chain it: upgrade --yes --verify):