Frameworks

Best Kotlin Agent Skills

59 Kotlin skills for AI coding assistants — ranked by popularity.

This repository provides a curated collection of SKILL.md files designed to optimize AI-assisted coding for Kotlin and Android development. By attaching these configuration files to tools like Claude Code, Codex, or Cursor, you provide the model with domain-specific context, architectural patterns, and engineering standards. These skills cover a spectrum of development needs, ranging from mobile-first UI design and Material Design 3 patterns to advanced architectural decisions for Kotlin Multiplatform projects. Whether you are managing state with Flow and StateFlow, implementing MVVM with Jetpack Compose, or defining complex project structures, these skills enforce consistency in your codebase. This collection is intended for developers who want to reduce repetitive prompting and ensure their AI agents adhere to proven Kotlin best practices. Each skill targets specific workflows, allowing you to activate relevant expertise—such as Hilt integration or platform abstraction strategies—only when they are required for your current task.

Top Kotlin skills

android-kotlin-development

aj-geddes

Develop native Android apps with Kotlin. Covers MVVM with Jetpack, Compose for modern UI, Retrofit for API calls, Room for local storage, and navigation architecture.

268679

mobile-android-design

wshobson

Master Material Design 3 and Jetpack Compose patterns for building native Android apps. Use when designing Android interfaces, implementing Compose UI, or following Google's Material Design guidelines.

101335

mobile-design

sickn33

Mobile-first design and engineering doctrine for iOS and Android apps. Covers touch interaction, performance, platform conventions, offline behavior, and mobile-specific decision-making. Teaches principles and constraints, not fixed layouts. Use for React Native, Flutter, or native mobile apps.

149231

kotlin-multiplatform

vitorpamplona

Platform abstraction decision-making for Amethyst KMP project. Guides when to abstract vs keep platform-specific, source set placement (commonMain, jvmAndroid, platform-specific), expect/actual patterns. Covers primary targets (Android, JVM/Desktop, iOS) with web/wasm future considerations. Integrates with gradle-expert for dependency issues. Triggers on: abstraction decisions ("should I share this?"), source set placement questions, expect/actual creation, build.gradle.kts work, incorrect placement detection, KMP dependency suggestions.

32156

survey-sdk-audit

PostHog

Audit PostHog survey SDK features and version requirements

336

compose-expert

vitorpamplona

Advanced Compose Multiplatform UI patterns for shared composables. Use when working with visual UI components, state management patterns (remember, derivedStateOf, produceState), recomposition optimization (@Stable/@Immutable visual usage), Material3 theming, custom ImageVector icons, or determining whether to share UI in commonMain vs keep platform-specific. Delegates navigation to android-expert/desktop-expert. Complements kotlin-expert (handles Kotlin language aspects of state/annotations).

632

android-kotlin

alinaqi

Android Kotlin development with Coroutines, Jetpack Compose, Hilt, and MockK testing

729

kotlin-expert

vitorpamplona

Advanced Kotlin patterns for AmethystMultiplatform. Flow state management (StateFlow/SharedFlow), sealed hierarchies (classes vs interfaces), immutability (@Immutable, data classes), DSL builders (type-safe fluent APIs), inline functions (reified generics, performance). Use when working with: (1) State management patterns (StateFlow/SharedFlow/MutableStateFlow), (2) Sealed classes or sealed interfaces, (3) @Immutable annotations for Compose, (4) DSL builders with lambda receivers, (5) inline/reified functions, (6) Kotlin performance optimization. Complements kotlin-coroutines agent (async patterns) - this skill focuses on Amethyst-specific Kotlin idioms.

526

nostr-expert

vitorpamplona

Nostr protocol implementation patterns in Quartz (AmethystMultiplatform's KMP Nostr library). Use when working with: (1) Nostr events (creating, parsing, signing), (2) Event kinds and tags, (3) NIP implementations (57 NIPs in quartz/), (4) Event builders and TagArrayBuilder DSL, (5) Nostr cryptography (secp256k1, NIP-44 encryption), (6) Relay communication patterns, (7) Bech32 encoding (npub, nsec, note, nevent). Complements nostr-protocol agent (NIP specs) - this skill provides Quartz codebase patterns and implementation details.

323

android-jetpack-compose-expert

sickn33

Expert guidance for building modern Android UIs with Jetpack Compose, covering state management, navigation, performance, and Material Design 3.

413

testing-android-code

bitwarden

This skill should be used when writing or reviewing tests for Android code in Bitwarden. Triggered by "BaseViewModelTest", "BitwardenComposeTest", "BaseServiceTest", "stateEventFlow", "bufferedMutableSharedFlow", "FakeDispatcherManager", "expectNoEvents", "assertCoroutineThrows", "createMockCipher", "createMockSend", "asSuccess", "Why is my Bitwarden test failing?", or testing questions about ViewModels, repositories, Compose screens, or data sources in Bitwarden.

611

backend-microservice-development

TencentBlueKing

后端微服务开发规范,涵盖目录结构、分层架构(API/Service/DAO)、依赖注入、配置管理、Spring Boot 最佳实践。当用户进行后端开发、创建新微服务、编写 Kotlin/Java 代码或设计服务架构时使用。

213

kotlin-coroutines

vitorpamplona

Advanced Kotlin coroutines patterns for AmethystMultiplatform. Use when working with: (1) Structured concurrency (supervisorScope, coroutineScope), (2) Advanced Flow operators (flatMapLatest, combine, merge, shareIn, stateIn), (3) Channels and callbackFlow, (4) Dispatcher management and context switching, (5) Exception handling (CoroutineExceptionHandler, SupervisorJob), (6) Testing async code (runTest, Turbine), (7) Nostr relay connection pools and subscriptions, (8) Backpressure handling in event streams. Delegates to kotlin-expert for basic StateFlow/SharedFlow patterns. Complements nostr-expert for relay communication.

311

gradle-expert

vitorpamplona

Build optimization, dependency resolution, and multi-module KMP troubleshooting for AmethystMultiplatform. Use when working with: (1) Gradle build files (build.gradle.kts, settings.gradle), (2) Version catalog (libs.versions.toml), (3) Build errors and dependency conflicts, (4) Module dependencies and source sets, (5) Desktop packaging (DMG/MSI/DEB), (6) Build performance optimization, (7) Proguard/R8 configuration, (8) Common KMP + Android Gradle issues (Compose conflicts, secp256k1 JNI variants, source set problems).

19

create-unit-test

AnySoftKeyboard

Create and run unit tests following the project's architecture and guidelines (Robolectric, naming, location).

26

extensions-api-migration

JetBrains

Migrates IdeaVim extensions from the old VimExtensionFacade API to the new @VimPlugin annotation-based API. Use when converting existing extensions to use the new API patterns.

13

reviewing-changes

bitwarden

Guides Android code reviews with type-specific checklists and MVVM/Compose pattern validation. Use when reviewing Android PRs, pull requests, diffs, or local changes involving Kotlin, ViewModel, Composable, Repository, or Gradle files. Triggered by "review PR", "review changes", "check this code", "Android review", or code review requests mentioning bitwarden/android. Loads specialized checklists for feature additions, bug fixes, UI refinements, refactoring, dependency updates, and infrastructure changes.

12

flowmvi

respawn-app

FlowMVI usage guidance. Use when working with FlowMVI stores/containers, plugin pipelines, composing stores, decorators, or authoring plugins.

11

trail-sense-android-tests

kylecorry31

Add UI automation tests to Trail-Sense Android app using AutomationLibrary. Use when asked to create, add, write, or implement automated tests, UI tests, integration tests, or androidTests for Trail Sense tools. Covers test class structure, AutomationLibrary functions, and testing patterns.

11

trail-sense-database-persistence

kylecorry31

Add new Room database persistence to Trail-Sense Android app. Use when the user asks to create, add, or implement database persistence for a model, including Entity, DAO, Repository, and AppDatabase migration. Covers entity-to-model mapping, index configuration, and standard CRUD operations.

10

add-compiler-option

ZacSweers

Adds a new compiler option to Metro.

00

android-notifications

HoangNguyen0403

Push notifications for Android using Firebase Cloud Messaging and NotificationCompat.

00

kmp-cmp-app-builder

firdaus1453

>

00

android-clean-architecture

farhankabir133

Clean Architecture patterns for Android and Kotlin Multiplatform projects — module structure, dependency rules, UseCases, Repositories, and data layer patterns.

00

How to choose a Kotlin skill

Select a skill based on the specific architectural or design requirements of your current task. Evaluate the skill’s scope: some files focus on narrow technical implementations like Compose patterns or testing with MockK, while others offer broad project-level guidance for Android architecture or cross-platform strategy. Check the focus of the skill to ensure it aligns with your tech stack—such as KMP or standard Android—and consider the complexity of the patterns the skill enforces. Pick the skill that provides the specific constraints or design doctrines you need to maintain project integrity.

More Kotlin skills

Frequently asked

Can I use multiple skills simultaneously for a project?
Yes. These SKILL.md files are modular. You can activate a UI-focused skill like mobile-android-design alongside an architectural skill like android-architecture to combine design patterns with structural standards. Ensure the combined skills do not offer conflicting instructions regarding project layout or library usage, as this may lead to inconsistent code generation from your AI agent.
How do these skills affect AI agent behavior?
These files act as system prompts that dictate how an agent approaches a task. By defining patterns like StateFlow management, Hilt dependency injection, or source set placement for Kotlin Multiplatform, they reduce hallucinations. The agent prioritizes these predefined rules over general assumptions, ensuring the generated code follows your specific project doctrines and preferred libraries like Room or Retrofit.

Skills for other frameworks

Search skills

Search the agent skills registry