Composables

Android AGP Upgrade

Community

HoangNguyen0403

Upgrade an Android project to Android Gradle Plugin (AGP) 9. Use when migrating to AGP 9, updating Gradle build files, migrating to built-in Kotlin, or adopting the new AGP DSL.

Overview

Repository
HoangNguyen0403/agent-skills-standard
Publisher
HoangNguyen0403
Stars
585
Forks
163
Bundled files
3
License
MIT
Updated
Nov 14, 2026

Installation

tmp=$(mktemp -d)
git clone --depth 1 https://github.com/HoangNguyen0403/agent-skills-standard.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/skills/android/android-agp-upgrade" ~/.claude/skills/android-agp-upgrade
rm -rf "$tmp"

Instructions

AGP 9 Upgrade Workflow

Priority: P1 (HIGH)

Step-by-step workflow for upgrading an Android project to AGP 9.

Prerequisites

  • Check current AGP version. If below 8.x, recommend running the AGP Upgrade Assistant in Android Studio first.
  • Do NOT use this skill for Kotlin Multiplatform (KMP) projects.
  • Verify Gradle, JDK, and Kotlin version compatibility with AGP 9 release notes.

Step 1: Update dependencies

  • If KSP (com.google.devtools.ksp) is used, ensure version 2.3.6+.
  • If Hilt is used, ensure version 2.59.2+.
  • Update AGP to the latest stable 9.x version in the project's build files.

Step 2: Migrate to built-in Kotlin

AGP 9 includes built-in Kotlin support — the org.jetbrains.kotlin.android plugin is no longer needed.

See migration guide for detailed steps.

Step 3: Migrate to the new AGP DSL

AGP 9 introduces a new DSL for android {} blocks. Key changes include namespace handling, build type configuration, and source set declarations.

See DSL migration for before/after examples.

Step 4: Migrate kapt to KSP or legacy-kapt

If the project uses kapt:

  • Prefer migrating to KSP where annotation processors support it (Room, Hilt, Moshi).
  • For processors without KSP support, use legacy-kapt as a bridge.

Step 5: Update BuildConfig

If any module uses custom BuildConfig fields, update to the new AGP 9 syntax.

Step 6: Clean up gradle.properties

Remove these flags after migration:

  1. android.builtInKotlin
  2. android.newDsl
  3. android.uniquePackageNames
  4. android.enableAppCompileTimeRClass

Guidelines

  • Never write or run Python scripts for build migration.
  • Never add android.disallowKotlinSourceSets=false to gradle.properties.
  • Do not run clean task when verifying — it wastes time.

Verification

  1. ./gradlew help succeeds.
  2. ./gradlew build --dry-run succeeds.
  3. Gradle IDE sync succeeds.

References

Bundled files

FAQ

What does Android AGP Upgrade do?

Upgrade an Android project to Android Gradle Plugin (AGP) 9. Use when migrating to AGP 9, updating Gradle build files, migrating to built-in Kotlin, or adopting the new AGP DSL.

Who made Android AGP Upgrade?

HoangNguyen0403 (a community member) publishes it in the HoangNguyen0403/agent-skills-standard repository on GitHub.

Is Android AGP Upgrade free?

Yes. Android AGP Upgrade is open source, published by HoangNguyen0403 under the MIT license.

What comes with Android AGP Upgrade?

Its instructions and 3 files the agent reads only when a task needs them, such as references, examples or scripts.

Which agents can use Android AGP Upgrade?

Any coding agent that reads SKILL.md files, including Claude Code, Codex, Cursor, GitHub Copilot and Gemini CLI. The agent loads the skill when a task matches its description.

What are agent skills?

An agent skill is a folder with a SKILL.md file: instructions that teach a coding agent how to do one kind of task, and optionally files it can read while it works. The agent keeps only the skill's name and description in mind and reads the rest when a task calls for it.

How are agent skills different from MCP servers?

An MCP server gives an agent new tools to call, code that runs somewhere and returns results. A skill gives it knowledge: how to approach a task with the tools it already has. Many agents use both.

How can my agent test my Android app?

Robomori lets coding agents create, start and control Android emulators and devices from one command, so they can install your app, take screenshots and check dark mode, font sizes and languages.

You're subscribed

The next lesson lands in on Wednesday.