$npx -y skills add ayush016/android-lead-agent-skills --skill android-lead-agent-skillsSenior-level Android engineering expertise for Jetpack Compose, Material 3, shared element transitions, navigation, performance, security, background work, notifications, adaptive layouts, Coil image loading, WorkManager, FCM, Baseline Profiles, R8 optimization, accessibility, co
| 1 | # Android Development Skill |
| 2 | |
| 3 | Production-grade Android engineering expertise from data layer to pixel, from startup milliseconds to biometric auth, from phone portrait to foldable landscape. UI quality, performance, security, and accessibility are first-class concerns equal to functional correctness. |
| 4 | |
| 5 | --- |
| 6 | |
| 7 | ## ⚡ Quick Decision Guide |
| 8 | |
| 9 | | Task | Reference | |
| 10 | |------|-----------| |
| 11 | | Color theming, 29 roles, token hierarchy, gradients | [`theming-and-color.md`](references/theming-and-color.md) | |
| 12 | | Building a new screen | [`compose-ui-system.md`](references/compose-ui-system.md) | |
| 13 | | Navigation with shared element transitions | [`shared-element-transitions.md`](references/shared-element-transitions.md) | |
| 14 | | Type-safe navigation, deep links, multi-module | [`navigation.md`](references/navigation.md) | |
| 15 | | Animation / motion (non-shared-element) | [`motion-and-animation.md`](references/motion-and-animation.md) | |
| 16 | | Adaptive layouts, large screens, foldables | [`adaptive-layouts.md`](references/adaptive-layouts.md) | |
| 17 | | Coroutines, Flow, dispatchers, cancellation | [`coroutines-and-flow.md`](references/coroutines-and-flow.md) | |
| 18 | | Room, Retrofit, offline-first data layer | [`data-layer.md`](references/data-layer.md) | |
| 19 | | ViewModel, state, DI, architecture | [`architecture.md`](references/architecture.md) | |
| 20 | | Baseline Profiles, R8, recomposition perf | [`performance.md`](references/performance.md) | |
| 21 | | Encryption, biometrics, cert pinning | [`security.md`](references/security.md) | |
| 22 | | WorkManager, Foreground Services, Alarms | [`background-work.md`](references/background-work.md) | |
| 23 | | Coil3, SubcomposeAsyncImage, caching | [`image-loading.md`](references/image-loading.md) | |
| 24 | | FCM, notification channels, deep links | [`notifications.md`](references/notifications.md) | |
| 25 | | TalkBack, semantics, focus, contrast | [`accessibility.md`](references/accessibility.md) | |
| 26 | | Unit, screenshot, Roborazzi tests | [`testing.md`](references/testing.md) | |
| 27 | | Convention plugins, version catalog, modules | [`build-and-modules.md`](references/build-and-modules.md) | |
| 28 | | ADB / Android MCP debugging | [`android-mcp.md`](references/android-mcp.md) | |
| 29 | | Pre-ship quality review | [`assets/ui-excellence-checklist.md`](assets/ui-excellence-checklist.md) | |
| 30 | |
| 31 | --- |
| 32 | |
| 33 | ## Core Engineering Principles |
| 34 | |
| 35 | **1. Unidirectional Data Flow, No Exceptions** |
| 36 | State flows down from ViewModel. Events flow up via lambdas or actions. No composable reads from a database. No ViewModel imports Compose. The boundary is sharp and testable. |
| 37 | |
| 38 | **2. Clean Architecture as a Dependency Rule** |
| 39 | Domain has zero Android imports. Data is invisible to UI. Features depend on core, never each other. Violations create debt that compounds faster than feature velocity. |
| 40 | |
| 41 | **3. UI Excellence Is Not Optional** |
| 42 | Producing a visually mediocre screen is an engineering failure. Default grey scaffolds, hardcoded colors, missing transitions, and spinners as primary loading states are incomplete work. |
| 43 | |
| 44 | **4. Shared Element Transitions Are the Default for Content Navigation** |
| 45 | Tapping a card must cause the card to flow into its detail. `sharedBounds()` or `sharedElement()` is the default. Opt out only when there is genuinely no spatial relationship to express. |
| 46 | |
| 47 | **5. Physics Over Timing** |
| 48 | `spring()` over `tween()` for gesture-coupled and state-change animations. Tune `stiffness` and `dampingRatio` deliberately — defaults are starting points, not final choices. |
| 49 | |
| 50 | **6. The 4dp Spacing Grid Is a Contract** |
| 51 | Every spacing value is a multiple of 4dp, referenced via `AppSpacing.*` tokens. Arbitrary values are bugs that accumulate into visual dissonance. |
| 52 | |
| 53 | **7. Fakes |