Amper Is Dead: JetBrains Folds Its Build Tool Into a Unified Kotlin CLI
A single `kotlin` CLI that builds, tests, and publishes JVM libraries to Maven Central without Gradle or external GPG tooling lowers the setup tax for new Kotlin projects and makes the toolchain scriptable by AI agents. The Alpha designation means JetBrains is committing to long-term support, so teams evaluating Kotlin now have a supported, lighter alternative to the Gradle monolith.
The standalone Amper build tool is gone. JetBrains shipped Kotlin Toolchain 0.11, which swallows all of Amper's functionality into a unified `kotlin` command-line entry point now in Alpha. The tool covers the full lifecycle — init, build, run, test, package, and publish — plus new JVM library publishing to Maven Central with automatic PGP signing, sources, and javadoc handling.
Plugin authors get a reworked API with custom checks, public commands, and a unified `generated` node for registering outputs. C interop bindings now generate from definition files, and the IDE downloads library sources in the background after sync. Terminal output and compiler diagnostics also got a visual refresh.
The rename signals a strategic pivot: instead of fighting Gradle's dominance, JetBrains is building a CLI-first toolchain that AI agents can invoke directly. Global installation via SDKMAN! means the `kotlin` command works from any directory, and wrapper scripts keep per-project version pinning intact.
JetBrains is conceding that a new build tool cannot unseat Gradle's JVM monopoly and is instead betting on a CLI-first toolchain that AI agents can drive.
The Alpha label on a tool that absorbed a previously separate project signals urgency — AI coding assistants need scriptable build commands more than they need another plugin ecosystem.
Built-in Maven Central publishing with automatic signing removes a persistent friction point that has pushed JVM library authors toward Gradle plugins or manual scripts.
Global install plus per-project wrapper scripts is the same pattern Node (nvm) and Rust (rustup) use; Kotlin is catching up to that ergonomic standard.
Module-level dependency resolution parity between IDE and CLI closes a long-standing class of bugs where the editor showed errors the command line did not.
Renaming `lib` to `kmp/lib` is a small change that prevents the kind of ambiguous naming that causes misconfiguration in multiplatform projects.