What problem does it solve? Structuring Android and Kotlin Multiplatform codebases without clear layer boundaries leads to tangled dependencies, untestable business logic, and framework leakage into domain code. This Skill provides concrete patterns for module separation, dependency rules, and data flow so projects stay maintainable as they grow. ## Core Features & Use Cases - Module Structure & Dependency Rules: Defines a layered layout (app, core, domain, data, presentation, design-system) with strict dependency direction, keeping the domain layer pure Kotlin. - UseCase and Repository Patterns: Provides templates for operator fun invoke UseCases, Flow-based observers, repository interfaces in domain, and implementations coordinating local and remote DataSources. - Data Layer Integrations: Includes working examples for Room, SQLDelight, Ktor HTTP clients, mapper extension functions, and DI wiring with Koin or Hilt. - Use Case: When starting a new KMP feature, apply the patterns to create a domain module with a GetItemsByCategoryUseCase, a ItemRepository interface, and a data module with Room/SQLDelight entities and Ktor remote sources, all wired through Koin modules. ## Quick Start Ask the agent to scaffold a new feature module following Clean Architecture with a UseCase, Repository interface, Room entity, and Koin DI wiring.