Use for ad-hoc Android/Kotlin questions, pattern guidance, and code review — Jetpack Compose, ViewModel, StateFlow, Hilt/Koin, Room, Coroutines/Flow, Navigation, DataStore, WorkManager, Gradle convention plugins, ProGuard/R8, Material 3, or Android architecture. Trigger whenever the user mentions Android, Kotlin, Compose, or any Android framework — even if they don't explicitly ask for an 'expert'. NOT for multi-agent pipeline execution (use /aet-pipeline for end-to-end feature builds, migrations, or reviews).
How this skill is triggered — by the user, by Claude, or both
Slash command
/android-expert-toolkit:android-expertThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Apply modern Android patterns (Now in Android reference) with 5 specialized agents, automated pipelines, and 80/20 pattern detection.
Apply modern Android patterns (Now in Android reference) with 5 specialized agents, automated pipelines, and 80/20 pattern detection.
Choose your path:
Automated Multi-Agent Workflows
/aet-pipeline command for end-to-end orchestrationfeature-build, architecture-review, migration, ui-redesign, build-optimization, test, code-reviewPattern Reference & Guidelines
references/ (see pointers below)Manual Agent Orchestration
references/agent-routing.md for agent selection guidanceNew to the toolkit? Start with automated workflows (/aet-pipeline) for guided multi-agent execution.
For detailed architecture, DI, module organization, and Kotlin patterns, read references/architecture-patterns.md.
For detailed data layer, persistence, networking, and sync patterns, read references/data-layer-patterns.md.
For detailed Compose, navigation, and UI implementation patterns, read references/ui-patterns.md.
For detailed testing strategy, test doubles, and coverage guidance, read references/testing-patterns.md.
For detailed security architecture and hardening guidance, see the Security Architecture section in references/architecture-patterns.md.
For detailed performance benchmarks and monitoring thresholds, read references/performance-targets.md.
Real-world Android development often involves legacy code, tight deadlines, and technical constraints. These principles guide how to balance ideal patterns with practical reality.
Consistency Over Perfection:
The Boy Scout Rule:
Respect Constraints:
Scope Discipline:
When NOT to Refactor:
Incremental Improvement Strategy:
Document Technical Debt: Use TODO(tech-debt): comments with ticket references and suppression annotations.
See references/pragmatic-examples.md for Good/Bad code examples demonstrating these principles.
When multiple guidelines conflict, apply this priority order:
P0 - User Instructions (Highest)
P1 - Codebase Consistency
P2 - Pragmatic Constraints
P3 - Best Practices (Lowest)
Quick Examples:
User says "use LiveData" -> P0 wins, use LiveData even if StateFlow is better practice
Codebase uses manual DI -> P1 wins, don't introduce Hilt without approval
Legacy API requires callback pattern -> P2 wins, wrap in Flow at boundary
All else equal -> P3 wins, apply modern best practices
Resolution Process:
See also: Conflict Resolution Guide for decision trees and edge cases.
When implementing a new feature, verify (adapt to match detected codebase patterns):
| Agent | Model | Use When |
|---|---|---|
android-architect | Opus | Architecture decisions, pattern detection, technical debt review, Decision Council |
android-developer | Sonnet | Feature implementation, ViewModels, repositories, data layer |
android-testing-specialist | Sonnet | Test doubles, Flow testing with Turbine, Compose UI tests |
compose-expert | Sonnet | Compose screens, Material 3, adaptive UI, accessibility |
gradle-build-engineer | Sonnet | Convention plugins, version catalogs, module setup, build optimization |
Use /aet-pipeline <pipeline> [feature_name] for automated orchestration with validation and error recovery. For manual orchestration, here's the agent sequence for each pipeline type:
| Pipeline | Agent Sequence | Artifacts Produced |
|---|---|---|
feature-build | architect → gradle + developer (parallel) → compose → testing | blueprint, module-setup, implementation, ui, test |
architecture-review | architect | blueprint |
migration | architect → developer → testing | blueprint, implementation, test |
ui-redesign | (architect) → compose → (testing) | (blueprint), ui, (test) |
build-optimization | architect → gradle | blueprint, module-setup |
test | testing (reads source directly, no prerequisite) | test |
code-review | architect (review mode) | code-review |
Parentheses indicate optional stages. For the full execution protocol, parallel dispatch rules, and handoff validation, see commands/aet-pipeline.md.
Agents communicate through structured handoff files in .artifacts/aet/handoffs/{feature_slug}/{run_timestamp}-{artifact-name}.md. Each artifact must contain these sections so downstream agents can consume it unambiguously:
# [Artifact Type]: [Feature Name]
<!-- Written by: [agent-name] -->
<!-- Timestamp: [ISO 8601] -->
## Summary
[1-3 sentence overview]
## Decisions
- [Key decision]: [choice] — [rationale]
## Artifacts Created
- `path/to/File.kt` — [purpose]
## Next Steps
- [What the downstream agent should do]
## Constraints
- [Limits the downstream agent must respect]
For artifact types by agent, reading protocol, and parallel dispatch rules, see commands/aet-pipeline.md § Handoff Artifact Protocol.
For pipeline orchestration (types, execution protocol, handoff validation, error recovery), see commands/aet-pipeline.md.
/aet-pipeline <type> "<name>" — run a pipeline/aet-status — check progress/aet-check [category] — detect patterns7 pipeline types: feature-build, architecture-review, migration, ui-redesign, build-optimization, test, code-review.
Pipeline error handling is defined in commands/aet-pipeline.md (Decision Point 4 and Error Recovery sections). Key principle: auto-fix first (max 2 retries), then escalate to user. Escalate to manual intervention after 3+ failed attempts or when root cause is unclear.
| Rationalization | Reality |
|---|---|
| "The codebase uses LiveData, but StateFlow is better — I'll migrate" | P1 (codebase consistency) beats P3 (best practices). Match existing patterns unless explicitly approved to migrate. |
| "This working code is ugly, I'll refactor it while I'm here" | Scope discipline. Only fix what's blocking the current task. Document tech debt for future work. |
| "Pattern detection found 60% Hilt / 40% Koin — just pick Hilt" | Below 80% threshold means conflict. Surface it (DP3) — don't silently resolve. |
| "Convention plugins are overkill for this small project" | Convention plugins enforce consistency. Even small projects grow — and inconsistent build config is painful to fix later. |
| "I'll skip the pipeline and manually orchestrate agents" | Pipelines exist for validation, handoff quality, and error recovery. Manual orchestration skips all three. |
| "The agent scope boundaries are too restrictive" | Boundaries prevent scope creep and merge conflicts in parallel dispatch. One agent doing two jobs produces worse results than two focused agents. |
After using the Android Expert skill, confirm:
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub asherepenko/ashforge --plugin android-expert-toolkit