Skillshub kotlin-language
Idiomatic Kotlin 1.9+ standards including null safety, sealed classes, and expression syntax. Use when working with Kotlin null safety, data classes, sealed interfaces, extension functions, or migrating Java code to Kotlin. (triggers: **/*.kt, **/*.kts, val, var, ?., ?:, !!, data class, sealed, when, extension, lazy, lateinit, object)
install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/HoangNguyen0403/agent-skills-standard/kotlin-language" ~/.claude/skills/comeonoliver-skillshub-kotlin-language && rm -rf "$T"
manifest:
skills/HoangNguyen0403/agent-skills-standard/kotlin-language/SKILL.mdsource content
Kotlin Language Patterns
Priority: P0 (CRITICAL)
Modern, idiomatic Kotlin standards for safety and conciseness.
Implementation Guidelines
- Immutability: Use
by default. Only useval
if mutation is required locally.var - Null Safety: Use
for nullable types. Use safe call?
and Elvis?.
over?:
.!! - Expressions: Prefer expression bodies
for one-liners. Usefun foo() = ...
/if
as expressions.try - Classes: Use
for DTOs. Usedata class
for state hierarchies (e.g.,sealed interface/class
,Success
,Error
). Access members as a computed property rather than a function.Loading - Extension Functions: Prefer over utility classes (
). Keep private/internal if module-specific.StringUtil - Named Arguments: Use for clarity, especially with booleans or multiple same-type params.
- String Templates: Use
over concatenation. Use"$var"
for multiline strings (SQL/JSON)."""
Anti-Patterns
- No !! Operator: Never use in production; prefer safe calls or requireNotNull.
- No Java-isms: Use properties not get/set; prefer top-level functions over companion object statics.
- No Lateinit Abuse: Prefer nullable types or lazy delegates instead.
- No Silenced Errors: Never swallow exceptions without logging or handling.