gradle-build-logiclisted
Install: claude install-skill pablitoarango/android-skills
# Android Gradle Build Logic
Sources of truth: [Gradle build overview](https://developer.android.com/build/gradle-build-overview), [Configure your build](https://developer.android.com/build), [Migrate to version catalogs](https://developer.android.com/build/migrate-to-catalogs), [Add build dependencies](https://developer.android.com/build/dependencies), [Modularization patterns](https://developer.android.com/topic/modularization/patterns), [Built-in Kotlin (AGP 9)](https://developer.android.com/build/migrate-to-built-in-kotlin), [AGP 9.0 release notes](https://developer.android.com/build/releases/agp-9-0-0-release-notes), [Compose Compiler Gradle plugin](https://developer.android.com/develop/ui/compose/compiler), [Migrate to KSP](https://developer.android.com/build/migrate-to-ksp). Reference implementation: [Now in Android](https://github.com/android/nowinandroid).
## 1. Principles
- **(stricter than Google)** Write build files in **Kotlin DSL** (`*.gradle.kts`). Google strongly recommends Kotlin; this skill requires it.
- Build files describe **what** a module is: plugins, namespace, dependencies. The **how** (logic, task declarations) belongs in plugins, which can be tested and reused. Google's build overview makes this split explicit.
- Share configuration through **convention plugins**, never by copying blocks between modules or through `allprojects` / `subprojects`.
- Every plugin and library version is declared once, in the **version catalog**, as a fixed version (dy