home / skills / pluginagentmarketplace / custom-plugin-kotlin / kotlin-fundamentals

kotlin-fundamentals skill

/skills/kotlin-fundamentals

npx playbooks add skill pluginagentmarketplace/custom-plugin-kotlin --skill kotlin-fundamentals

Review the files below or copy the command above to add this skill to your agents.

Files (8)
SKILL.md
1.6 KB
---
name: kotlin-fundamentals
description: Kotlin language fundamentals - syntax, null safety, data classes, extensions
version: "1.0.0"
sasmp_version: "1.3.0"
bonded_agent: 01-kotlin-fundamentals
bond_type: PRIMARY_BOND

execution:
  timeout_ms: 30000
  retry:
    max_attempts: 3
    backoff: exponential
    initial_delay_ms: 1000

parameters:
  required:
    - name: topic
      type: string
      validation: "^(syntax|null_safety|data_classes|extensions|collections|idioms)$"
  optional:
    - name: kotlin_version
      type: string
      default: "2.0"

logging:
  level: info
  events: [skill_invoked, topic_loaded, error_occurred]
---

# Kotlin Fundamentals Skill

Master Kotlin programming fundamentals with production-ready patterns.

## Topics Covered

### Null Safety
```kotlin
// Safe call + Elvis
val name = user?.name ?: "Anonymous"

// requireNotNull for validation
requireNotNull(user) { "User required" }
```

### Data Classes
```kotlin
data class User(val id: Long, val name: String) {
    init { require(name.isNotBlank()) }
}
```

### Scope Functions
| Function | Context | Returns | Use Case |
|----------|---------|---------|----------|
| `let` | it | Lambda result | Null-safe transforms |
| `apply` | this | Same object | Object configuration |
| `run` | this | Lambda result | Object scope + result |
| `also` | it | Same object | Side effects |

## Troubleshooting

| Issue | Resolution |
|-------|------------|
| NPE despite null check | Check platform types from Java |
| Smart cast fails | Use local variable or let |

## Usage
```
Skill("kotlin-fundamentals")
```