Run the pipeline against any Kotlin Multiplatform repository on your machine. Useful for triaging a real Dependabot PR before the CI workflow finishes, or for experimenting with a bump that has not been raised yet.
gradle/libs.versions.toml.The fastest mode. Skips Phase 3 entirely.
kmp-impact analyze \
--repo /path/to/your/kmp/project \
--dependency io.ktor \
--before-version 2.3.8 \
--after-version 2.3.11 \
--output-dir output \
--skip-dynamic
--dependency accepts a Maven group prefix (io.ktor) or a full coordinate substring (io.ktor:ktor-client-core). The analyzer resolves it to one or more Kotlin package roots through the internal mapping table.
Drop --skip-dynamic. The pipeline will:
./gradlew :<android-module>:assembleDebug on the BEFORE state.kmp-impact analyze \
--repo /path/to/your/kmp/project \
--dependency io.ktor \
--before-version 2.3.8 \
--after-version 2.3.11 \
--output-dir output-full
If either APK fails to compile, the pipeline emits a BLOCKED Phase 3 with the Gradle log attached. The static phase still completes.
open output/report/index.html # macOS
xdg-open output/report/index.html # Linux
start output/report/index.html # Windows
The six tabs are documented in Guides → Reading the Report.
Each phase reads the previous phase’s JSON from disk, so you can re-run a single phase by pointing the CLI at an existing output/ directory. This is useful when iterating on phase4_consolidate or phase5_visualize without re-running the expensive static scan.
kmp-impact analyze \
--repo /path/to/project \
--dependency io.ktor \
--before-version 2.3.8 \
--after-version 2.3.11 \
--output-dir output \
--skip-dynamic \
--keep-shadows
--keep-shadows retains phase1/before/ and phase1/after/, which lets you re-execute Phase 2 against the same shadow copies.
BLOCKED phases.