Skills for Android and KMP development — covering architecture, data layer, networking, testing, debugging, Jetpack Compose, coroutines, flows, Gradle, and RxJava migration. Works as a plugin for Claude Code and Copilot CLI.
Several skills in this collection were inspired by or built on top of work from the community — specifically awesome-android-agent-skills and compose-skill. Skills with no attribution tag are original work.
Install as a plugin to get all skills:
/plugin marketplace add rcosteira79/android-skills
/plugin install android-skills@android-skills
Updates are picked up automatically when the plugin version is bumped.
Alternatively, copy the skill directories into your Claude Code skills folder:
git clone https://github.com/rcosteira79/android-skills.git
cp -r android-skills/plugins/android-skills/skills/* ~/.claude/skills/Copilot CLI detects the same plugin format automatically:
copilot plugin install rcosteira79/android-skillsEach skill is self-contained — the SKILL.md files are plain markdown, so they can be adapted to other editors that support custom instructions.
The skills work standalone, but several integrate with external tools for enhanced capabilities. These are independent of the plugin install — use them alongside whichever agent you choose.
For enhanced source code navigation (local source sync, Tree-sitter parsing, class hierarchy, LSP), install android-source-explorer-mcp:
uv tool install git+https://github.com/mrmike/android-source-explorer-mcpThe android-source-search and compose skills automatically use the MCP tools when available, and fall back to Gitiles/GitHub otherwise.
For semantic navigation of your project's code via the IDE's symbol index, install jetbrains-index-mcp-plugin in Android Studio or IntelliJ. The agent uses it for type-hierarchy queries — finding implementations, overrides, callers, references through typealiases — with much higher recall than text search alone. Particularly valuable for the compose, android-debugging, android-tdd, and rxjava-migration skills. Requires the IDE running with the project indexed.
Several skills — notably compose and android-debugging — have CLI-native shortcuts when Google's android CLI is installed: documentation search over the Android Knowledge Base (android docs), runtime UI layout inspection (android layout), device/emulator orchestration, and SDK management. The skills still work without it, but recommend installing it for the best experience.
Follow Google's installation instructions: https://developer.android.com/tools/agents/android-cli
Skills are invoked automatically based on context (e.g. working on Compose code activates the compose skill).
Senior Android engineering knowledge and best practices for Android and KMP projects. Covers architecture, code quality, and platform-specific patterns.
Test-driven development for Android/KMP — extends TDD with Android's three-tier test model, fake-first strategy, coroutine testing, Compose UI testing, and Roborazzi screenshot testing.
Material Design 3 UX principles for Android — touch targets (48×48dp), 8dp spacing grid, navigation patterns (Bottom Bar, Rail, Drawer), canonical layouts (Feed, List-Detail, Supporting Pane), foldable postures (tabletop, book mode), M3 contrast levels, safe area handling, accessibility, animation timing, keyboard input types, and an M3 compliance audit that scores screens across 10 categories.
M3 contrast levels, canonical layouts, and foldable posture patterns inspired by material-3-skill
Debugging Android and KMP issues — Logcat, ADB, ANR traces, R8 stack trace decoding, memory leaks, Gradle build failures, and Compose recomposition bugs.
Fetch and verify Android source code — AOSP platform internals (@hide APIs, framework classes, system services via Gitiles) and AndroidX/Jetpack library source and samples (via GitHub). Also useful when public docs are insufficient to complete a task.
This skill is a zero-setup fallback. For enhanced capabilities (local source sync, sub-10ms Tree-sitter parsing, method-level extraction, class hierarchy, LSP), install android-source-explorer-mcp separately — the skill will use it automatically when available.
Dispatcher selection, scope management, structured concurrency, cancellation, exception handling, and Android/KMP async patterns. Includes the DispatcherProvider pattern for testable dispatcher injection.
Incorporates material from awesome-android-agent-skills
Flow type selection (Flow/StateFlow/SharedFlow), operator chains, callback bridging, lifecycle-safe collection, Channel migration, and UI state management.
Jetpack Compose expert guidance — state management (@Composable, remember, mutableStateOf, derivedStateOf, state hoisting), Modifier chains, lazy lists, navigation, animation, side effects, theming, accessibility, and performance optimization.
Forked from compose-skill. The reference docs share the same foundation, but this version replaces the bundled static AndroidX source snapshots with live source verification via android-source-explorer-mcp (preferred) or the
android-source-searchskill — always up to date, zero context overhead.
Triggered only when you explicitly ask to migrate. Assesses complexity, maps RxJava types and operators to coroutines equivalents, and provides interop patterns for incremental migration.
Incorporates material from awesome-android-agent-skills
Retrofit setup for Android — service interface patterns (@GET, @POST, @Path, @Query, @Body), coroutines integration, OkHttp configuration, Hilt module, and error handling in the repository layer.
Inspired by awesome-android-agent-skills
Ktor client setup for KMP and Android — per-platform engine selection (OkHttp/Darwin/CIO), kotlinx.serialization configuration, bearer token auth with refresh via the Auth plugin, MockEngine testing, and error mapping at the repository boundary.
Inspired by compose-skill (Meet-Miyani)
Data layer implementation — Repository pattern as single source of truth, Room DAOs with Flow, offline-first strategies (stale-while-revalidate, outbox pattern), and model mapping between DTO/entity/domain types.
Inspired by awesome-android-agent-skills
Image loading in Compose with Coil — AsyncImage vs SubcomposeAsyncImage vs rememberAsyncImagePainter, ImageRequest configuration, performance in lazy lists, and Hilt setup for a shared ImageLoader.
Inspired by awesome-android-agent-skills
Scalable Gradle build logic — Convention Plugins, composite builds, shared compileSdk/minSdk/Compose configuration across modules, and clean per-module build.gradle.kts files.
Inspired by awesome-android-agent-skills
Gradle build optimisation — Build Scans, configuration cache, build cache, kapt→KSP migration, parallel execution, lazy task configuration, and a recommended gradle.properties baseline.
Inspired by awesome-android-agent-skills
xml-to-compose-migration— dropped in favour of Google's actively-maintainedmigrate-xml-views-to-jetpack-compose, available via theandroid/skillsrepo.
- android/skills — Google's official Android agent skills covering AGP 9 migration, XML-to-Compose migration, Navigation 3, R8 analysis, Play Billing upgrades, and edge-to-edge support
- awesome-android-agent-skills — curated list of Android agent skills that inspired many of the skills in this repo
- compose-skill — alternative Compose skill that bundles a static AndroidX snapshot
- android-source-explorer-mcp — MCP server for navigating Android source code (optional, used by
android-source-searchskill) - material-3-skill — comprehensive Material Design 3 reference covering 30+ components, design tokens, theming, responsive layout, and dynamic color across platforms
- compose_skill — strict, evidence-based Compose audit skill that scores repos on performance, state management, side effects, and API quality using automated Compose Compiler reports
- compose-skill (Meet-Miyani) — broad Compose + KMP skill covering MVI/MVVM, Navigation 2 & 3, Ktor, Koin/Hilt, Room, DataStore, Paging, and iOS interop; inspired the
kmp-ktorskill in this repo - android-reverse-engineering-skill — Claude Code plugin for decompiling APKs, extracting API endpoints, and tracing call flows
MIT