К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

kotlin-specialist — скилл для Claude Code: установка

Скилл направляет ИИ при разработке на Kotlin: корутины, Flow, KMP, Compose и Ktor. Пригодится для реализации функций с проверками стиля и отмены задач.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Jeffallan/claude-skills --skill kotlin-specialist -a claude-code
Открыть на GitHub

Что делает kotlin-specialist

Скилл ведёт работу от разбора архитектуры и моделей до реализации, проверки и тестов. Он предлагает sealed class и data classes для состояний, suspend-функции для асинхронных операций, Flow для реактивных потоков, функции расширения и подходящие scope-функции.

Для KMP он разделяет общий и платформенный код через expect/actual. Есть отдельные материалы по корутинам и Flow, KMP, Android с Jetpack Compose, Ktor и типобезопасным DSL. При реализации ожидаются модели, файл с кодом, тест с runTest или Turbine и краткое объяснение выбранных Kotlin-приёмов.

Перед коммитом скилл требует запускать detekt и ktlint, а при ошибках — исправить замечания и повторить обе проверки. Это жёсткое условие, поэтому проекту нужны эти инструменты, если агент должен пройти весь заявленный процесс.

Какие задачи решает

  • смоделировать состояние интерфейса через sealed class
  • реализовать асинхронный API на корутинах и Flow
  • разделить общий и платформенный код KMP
  • настроить маршрут и плагины Ktor-сервера
  • проверить отмену корутин и null safety

Примеры запросов агенту

  • Используй kotlin-specialist и реализуй поток обновлений пользователя через `Flow` с обработкой отмены корутин.
  • Примени kotlin-specialist к KMP-проекту: вынеси общий код и подготовь `expect`/`actual` для платформ.
  • С помощью kotlin-specialist напиши экран Jetpack Compose со `sealed class` для состояния и тестами на `runTest`.

Как установить kotlin-specialist

1Через Skills CLI (Vercel)

npx skills add Jeffallan/claude-skills --skill kotlin-specialist -a claude-code

2Вручную: положить файлы

~/.claude/skills/kotlin-specialist/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/kotlin-specialist/

Из того же набора61

Весь набор →
laravel-specialist https://github.com/Jeffallan Настраивает агента на разработку бэкенда на Laravel 10+ и PHP 8.2+. Помогает писать модели Eloquent, очереди Horizon, API resources и тесты Pest. Claude Code CX Codex Cursor +1 23 300установок golang-pro https://github.com/Jeffallan Скилл помогает писать идиоматичный Go: разбирать конкурентный код, строить микросервисы и проверять производительность. Пригодится для goroutines, gRPC и тестов. Claude Code CX Codex Cursor +1 18 900установок php-pro https://github.com/Jeffallan Задаёт правила разработки на PHP 8.3+ для Laravel и Symfony: включает strict_types, анализ в PHPStan на уровне 9 и тесты PHPUnit или Pest. Claude Code CX Codex Cursor +1 15 500установок flutter-expert https://github.com/Jeffallan Скилл для разработки кросс-платформных приложений на Flutter 3+ и Dart. Помогает с виджетами, управлением состоянием через Riverpod или Bloc, маршрутизацией GoRouter и оптимизацией производительности. Claude Code CX Codex Cursor +1 14 300установок typescript-pro https://github.com/Jeffallan Настраивает строгую типизацию TypeScript, генерирует брендированные типы и связывает tRPC. Пригодится при проектировании надёжных API и сложных generic-структур. Claude Code CX Codex Cursor +1 14 200установок kubernetes-specialist https://github.com/Jeffallan Скилл помогает создавать и проверять Kubernetes-манифесты, настраивать безопасность и разбирать сбои подов. Пригодится для деплоя и сопровождения кластерных workloads. Claude Code CX Codex Cursor +1 14 100установок devops-engineer https://github.com/Jeffallan Скилл создаёт Dockerfile, CI/CD-конфигурации и манифесты Kubernetes. Нужен для инфраструктуры, деплоя и разбора инцидентов. Claude Code CX Codex Cursor +1 11 200установок wordpress-pro https://github.com/Jeffallan Скилл помогает разрабатывать темы и плагины WordPress, блоки Gutenberg и магазины WooCommerce. Нужен для задач с REST API, хуками, безопасностью и производительностью. Claude Code CX Codex Cursor +1 9 700установок

Похожие

semantic-kernel официальный github Помогает создавать и разбирать приложения на Semantic Kernel, сверяясь с актуальной документацией. Пригодится для работы с плагинами, вызовом функций и интеграциями ИИ. GitHub Copilot 1 700установок async-io-model tursodatabase Обучает агента архитектуре асинхронного ввода-вывода в Turso: явным стейт-машинам, типу IOResult и защите от багов повторного входа. Claude Code CX Codex Cursor +1 1 300установок golang-pkg-go-dev samber Ищет документацию, сигнатуры функций и уязвимости библиотек Go через утилиту godig. Помогает разбирать внешние модули прямо в терминале агента. Claude Code CX Codex Cursor +1 11 700установок dotnet-timezone официальный github Скилл даёт C#-подсказки по часовым поясам в .NET: конвертация UTC, DST, ID Windows и IANA. Пригодится для API, планировщиков и геолокаций. GitHub Copilot 1 600установок aws-cdk-python-setup официальный github Скилл помогает подготовить окружение для AWS CDK на Python, создать проект и выполнить деплой в AWS. Подойдёт для старта нового CDK-приложения. GitHub Copilot 1 600установок migrate-to-shoehorn Matt Pocock Переводит type assertions с as в тестах на функции из @total-typescript/shoehorn. Нужен для частичных объектов и намеренно неверных данных в проверках. Claude Code 475 388установок write-swift emilkowalski Скилл помогает писать, проверять и переносить код на Swift с учётом модели языка. Подойдёт, когда нужно разобраться с конкурентностью, ошибкой или циклом удержания объектов. Claude Code CX Codex Cursor +1 117 500установок megacave JuliusBrussee Переводит ответы ассистента на классический китайский язык (вэньянь) для экономии места на экране. Активируется командами /megacave или /caveman wenyan. Claude Code CX Codex Cursor +1 24 400установок

Вопросы о kotlin-specialist

Как установить kotlin-specialist в Claude Code?

Выполните npx skills add Jeffallan/claude-skills --skill kotlin-specialist -a claude-code, затем повторите npx skills add Jeffallan/claude-skills --skill kotlin-specialist -a claude-code. Файл скилла расположен в ~/.claude/skills/kotlin-specialist/SKILL.md.

Что делает kotlin-specialist?

Он даёт ИИ процесс и паттерны для Kotlin-разработки: корутины, Flow, KMP, Jetpack Compose, Ktor и типобезопасные DSL. Также он требует проверять null safety и отмену корутин.

Какие проверки выполняет kotlin-specialist перед коммитом?

Скилл предписывает запустить detekt и ktlint. При ошибках нужно исправить все замечания и снова выполнить обе проверки.

Исходный текст

SKILL.md · MIT
---
name: kotlin-specialist
description: Provides idiomatic Kotlin implementation patterns including coroutine concurrency, Flow stream handling, multiplatform architecture, Compose UI construction, Ktor server setup, and type-safe DSL design. Use when building Kotlin applications requiring coroutines, multiplatform development, or Android with Compose. Invoke for Flow API, KMP projects, Ktor servers, DSL design, sealed classes, suspend function, Android Kotlin, Kotlin Multiplatform.
license: MIT
metadata:
  author: https://github.com/Jeffallan
  company: https://synergetic.solutions
  version: "1.1.0"
  domain: language
  triggers: Kotlin, coroutines, Kotlin Multiplatform, KMP, Jetpack Compose, Ktor, Flow, Android Kotlin, suspend function
  role: specialist
  scope: implementation
  output-format: code
  related-skills: test-master
---

# Kotlin Specialist

Senior Kotlin developer with deep expertise in coroutines, Kotlin Multiplatform (KMP), and modern Kotlin 1.9+ patterns.

## Core Workflow

1. **Analyze architecture** - Identify platform targets, coroutine patterns, shared code strategy
2. **Design models** - Create sealed classes, data classes, type hierarchies
3. **Implement** - Write idiomatic Kotlin with coroutines, Flow, extension functions
   - *Checkpoint:* Verify coroutine cancellation is handled (parent scope cancelled on teardown) and null safety is enforced before proceeding
4. **Validate** - Run `detekt` and `ktlint`; verify coroutine cancellation handling and null safety
   - *If detekt/ktlint fails:* Fix all reported issues and re-run both tools before proceeding to step 5
5. **Optimize** - Apply inline classes, sequence operations, compilation strategies
6. **Test** - Write multiplatform tests with coroutine test support (`runTest`, Turbine)

## Reference Guide

Load detailed guidance based on context:

| Topic | Reference | Load When |
|-------|-----------|-----------|
| Coroutines & Flow | `references/coroutines-flow.md` | Async operations, structured concurrency, Flow API |
| Multiplatform | `references/multiplatform-kmp.md` | Shared code, expect/actual, platform setup |
| Android & Compose | `references/android-compose.md` | Jetpack Compose, ViewModel, Material3, navigation |
| Ktor Server | `references/ktor-server.md` | Routing, plugins, authentication, serialization |
| DSL & Idioms | `references/dsl-idioms.md` | Type-safe builders, scope functions, delegates |

## Key Patterns

### Sealed Classes for State Modeling

```kotlin
sealed class UiState<out T> {
    data object Loading : UiState<Nothing>()
    data class Success<T>(val data: T) : UiState<T>()
    data class Error(val message: String, val cause: Throwable? = null) : UiState<Nothing>()
}

// Consume exhaustively — compiler enforces all branches
fun render(state: UiState<User>) = when (state) {
    is UiState.Loading  -> showSpinner()
    is UiState.Success  -> showUser(state.data)
    is UiState.Error    -> showError(state.message)
}
```

### Coroutines & Flow

```kotlin
// Use structured concurrency — never GlobalScope
class UserRepository(private val api: UserApi, private val scope: CoroutineScope) {

    fun userUpdates(id: String): Flow<UiState<User>> = flow {
        emit(UiState.Loading)
        try {
            emit(UiState.Success(api.fetchUser(id)))
        } catch (e: IOException) {
            emit(UiState.Error("Network error", e))
        }
    }.flowOn(Dispatchers.IO)

    private val _user = MutableStateFlow<UiState<User>>(UiState.Loading)
    val user: StateFlow<UiState<User>> = _user.asStateFlow()
}

// Anti-pattern — blocks the calling thread; avoid in production
// runBlocking { api.fetchUser(id) }
```

### Null Safety

```kotlin
// Prefer safe calls and elvis operator
val displayName = user?.profile?.name ?: "Anonymous"

// Use let to scope nullable operations
user?.email?.let { email -> sendNotification(email) }

// !! only when the null case is a true contract violation and documented
val config = requireNotNull(System.getenv("APP_CONFIG")) { "APP_CONFIG must be set" }
```

### Scope Functions

```kotlin
// apply — configure an object, returns receiver
val request = HttpRequest().apply {
    url = "https://api.example.com/users"
    headers["Authorization"] = "Bearer $token"
}

// let — transform nullable / introduce a local scope
val length = name?.let { it.trim().length } ?: 0

// also — side-effects without changing the chain
val user = createUser(form).also { logger.info("Created user ${it.id}") }
```

## Constraints

### MUST DO
- Use null safety (`?`, `?.`, `?:`, `!!` only when contract guarantees non-null)
- Prefer `sealed class` for state modeling
- Use `suspend` functions for async operations
- Leverage type inference but be explicit when needed
- Use `Flow` for reactive streams
- Apply scope functions appropriately (`let`, `run`, `apply`, `also`, `with`)
- Document public APIs with KDoc
- Use explicit API mode for libraries
- Run `detekt` and `ktlint` before committing
- Verify coroutine cancellation is handled (cancel parent scope on teardown)

### MUST NOT DO
- Block coroutines with `runBlocking` in production code
- Use `!!` without documented justification
- Mix platform-specific code in common modules
- Skip null safety checks
- Use `GlobalScope.launch` (use structured concurrency)
- Ignore coroutine cancellation
- Create memory leaks with coroutine scopes

## Output Templates

When implementing Kotlin features, provide:
1. Data models (sealed classes, data classes)
2. Implementation file (extension functions, suspend functions)
3. Test file with coroutine test support
4. Brief explanation of Kotlin-specific patterns used

## Knowledge Reference

Kotlin 1.9+, Coroutines, Flow API, StateFlow/SharedFlow, Kotlin Multiplatform, Jetpack Compose, Ktor, Arrow.kt, kotlinx.serialization, Detekt, ktlint, Gradle Kotlin DSL, JUnit 5, MockK, Turbine

Maintained by [@jeffallan](https://github.com/jeffallan), Principal Consultant at [Synergetic Solutions](https://synergetic.solutions)

[Documentation](https://jeffallan.github.io/claude-skills/skills/language/kotlin-specialist/)

© https://github.com/Jeffallan · MIT · Jeffallan/claude-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой