kora-config-yamllisted
Install: claude install-skill kora-projects/kora-skills
# Kora Config YAML
> **Kora sub-skill — obey the [kora-v1 meta rules](../../SKILL.md) on every task:** **R0** ensure `.kora-agent/` docs+examples are cloned · **R1** read this sub-skill before writing code · **R2** Kora APIs only — no Spring/Micronaut/Quarkus, no invented annotations or config keys · **R3** journal any incorrect Kora usage. Add comments/Javadoc only if asked.
YAML configuration for Kora, parsed by SnakeYAML and bound to type-safe Java/Kotlin
interfaces. HOCON is the recommended default for new Kora projects; use YAML when a
project requires it. The binding API (`@ConfigSource`, `@ConfigValueExtractor`,
`@Nullable`, `default` methods, env substitution) is identical for both formats —
only the file syntax differs.
## Quick Start
### 1. Dependency (`build.gradle`)
All Kora artifacts inherit their version from the `kora-parent` BOM; never pin a
version on an individual `ru.tinkoff.kora:*` dependency. The annotation processor is
mandatory — `@ConfigSource` generates a `*ConfigValueExtractor` at compile time and
nothing is bound without it.
```groovy
dependencies {
koraBom platform("ru.tinkoff.kora:kora-parent:1.2.19")
annotationProcessor "ru.tinkoff.kora:annotation-processors"
implementation "ru.tinkoff.kora:config-yaml"
implementation "ru.tinkoff.kora:logging-logback"
}
```
Kotlin uses KSP instead: `ksp "ru.tinkoff.kora:symbol-processors"`.
### 2. Enable the module
```java
import ru.tinkoff.kora.application.graph.KoraApplication;
import