What problem does it solve? Managing environment-specific configuration (dev/staging/prod base URLs, API keys, compile-time feature flags) in a Kotlin Multiplatform project often leads to duplicated literals, leaked secrets in the repository, and builds that silently mix values from different environments. This Skill defines a consistent way to generate a multiplatform BuildConfig and expose it safely to the app. ## Core Features & Use Cases - Per-environment build configuration: Select dev, staging, or prod values at build time via a Gradle property (-PappEnv=...) using the com.github.gmazzo.buildconfig plugin (6.x line). - Secret management: Read API keys and build tokens from environment variables or a non-versioned local.properties/.env file, never hardcoding them in build.gradle.kts. - Decoupled access layer: Wrap the generated BuildConfig in an AppConfig object in core/config so UseCases, Repositories, and the Ktor HTTP client never depend on the plugin-generated class directly. - Use Case: You need your Ktor client to point at https://dev.api.citovision.com in development and https://api.citovision.com in release builds, while injecting a private API key from CI without committing it to git. ## Quick Start Ask the AI to set up per-environment build configuration with the gmazzo BuildConfig plugin in the shared module, wrapping the generated BuildConfig in an AppConfig object and reading the API key from an environment variable.