← ClaudeAtlas

kora-config-yamllisted

YAML typed config in Kora — @ConfigSource/@ConfigValueExtractor over application.yaml via YamlConfigModule, with env substitution. Use when a service reads config from YAML instead of HOCON.
kora-projects/kora-skills · ★ 1 · Data & Documents · score 72
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