← all publishers

kora-projects

@kora-projects source repo

82 published skills

  1. Kora S3 2 · kora-projects bundle
    S3 object storage in Kora 2.0 — two independent artifacts: the declarative client io.koraframework.experimental:s3-client-kora (@S3.Client, @S3.Bucket, @S3.Get/@S3.Head/@S3.List/@S3.Put/@S3.Delete returning GetObjectResult/HeadObjectResult/ListBucketResult) and the AWS SDK wrapper io.koraframework:s3-client-aws, which hands software.amazon.awssdk.services.s3.S3Client to the graph. Both need a Kora HTTP client module. Use when adding S3-compatible storage (AWS S3, MinIO, Ceph) to a Kora service, porting a Kora 1.x @S3.Client, or debugging "package S3 does not exist", "S3 operation has no bucket source", or "S3Client wasn't found in graph".
    0
    installs
  2. Kora JSON 2 · kora-projects bundle
    Compile-time JSON in Kora 2.x — @Json generates io.koraframework.json.common.JsonReader/JsonWriter for records and data classes at build time. Covers artifact json-common, the JsonModule graph module, sealed-type discriminators (@JsonDiscriminatorField/@JsonDiscriminatorValue), @JsonField/@JsonSkip/@JsonInclude, JsonNullable, RawJson, @NamingStrategy, custom JsonReader/JsonWriter factories and @Mapping, and swapping HTTP bodies onto Jackson 3 via JacksonModule (tools.jackson). Use for HTTP DTOs, Kafka payloads, polymorphic JSON, or "JsonReader not found" graph errors.
    0
    installs
  3. Kora V1 2 · kora-projects
    Build and maintain Java/Kotlin services on the Kora Framework 1.x (ru.tinkoff.kora) — compile-time DI, zero reflection, annotation processors (Java) or KSP (Kotlin). Routes to 39 domain sub-skills. Use when the request mentions Kora, or uses Kora APIs: @KoraApp, @Component, @Module, @KoraSubmodule, @Root, @Tag, @HttpController, @HttpRoute, @HttpClient, @Repository, @Query, @EntityJdbc, @KafkaListener, @KafkaPublisher, gRPC, SOAP/WSDL, @S3.Client, MapStruct, @Json, @ConfigSource (HOCON/YAML), OpenAPI codegen, @KoraAppTest, Testcontainers, @Valid, @Validate, @Log, @Mdc, @Retry, @CircuitBreaker, @Timeout, @Fallback, @Schedule*, @Cacheable, @CachePut, @CacheInvalidate, Micrometer/Prometheus metrics, OpenTelemetry/OTLP tracing, Undertow, Hikari. Also use for Kora project setup, Gradle/BOM dependencies, DI graph errors, or explaining Kora concepts. Do not use for Spring Boot, Micronaut, or Quarkus work.
    0
    installs
  4. Kora Journal 2 · kora-projects bundle
    Journal for incorrect Kora usage (kora_journal.py add/search/integrate). Shared store at ~/.kora-journal/, one Markdown file per entry. Use when you or the user find a wrong Kora annotation, a hallucinated API or config key, a misapplied pattern, or a Kora 1.x API carried into a 2.0 project — and to search past entries before implementing anything non-trivial. Not for project business logic.
    0
    installs
  5. Kora V2 2 · kora-projects
    Build and maintain Java/Kotlin services on the Kora Framework 2.0 (io.koraframework) — compile-time DI, zero reflection, synchronous contracts on virtual threads, annotation processors (Java) or KSP (Kotlin). Routes to 39 domain sub-skills. Use when the request mentions Kora, or uses Kora APIs: @KoraApp, @Component, @Module, @KoraSubmodule, @Root, @Tag, @Conditional, @FactoryModule, @HttpController, @HttpRoute, @HttpClient, @Repository, @Query, @EntityJdbc, @KafkaListener, @KafkaPublisher, gRPC, SOAP/WSDL, @S3.Client, @S3.Head, MapStruct, Konvert, @Json, @ConfigSource, @ConfigMapper (HOCON/YAML), OpenAPI codegen, @KoraAppTest, Testcontainers, @Valid, @Validate, @Log, @Mdc, @Retryable, @CircuitBreakable, @Timeout, @RateLimited, @Fallback, @Schedule*, @Cacheable, @CachePut, @CacheInvalidate, @CacheInvalidateAll, Micrometer/Prometheus metrics, OpenTelemetry/OTLP tracing, Undertow, Hikari. Also use for Kora project setup, Gradle/BOM dependencies, DI graph errors, or explaining Kora concepts. Do not use for Spring
    0
    installs
  6. Kora Teacher 2 · kora-projects bundle
    Teach Kora 2.0 (io.koraframework) to a newcomer — guided curriculum, lesson plans and concept explanations, grounded in the framework source at tag 2.0.0.RC1 and the migrated example apps on kora-examples branch migration/2.0. Covers the beginner spine (helloworld, getting-started, dependency injection, config, JSON, HTTP, JDBC, testing) and the unlearning a Kora 1.x user needs: synchronous contracts on virtual threads instead of suspend/reactive/CompletionStage, no request Context, telemetry off by default, and why a green build is not proof of a working service. Use when someone is new to Kora, asks for a tutorial, course or walkthrough, or asks a foundational question such as "what is @KoraApp" or "how does compile-time DI work". Kora 2.0 has no documentation site — never send a learner to kora-docs for a 2.0 answer.
    0
    installs
  7. Kora Mapstruct 2 · kora-projects bundle
    DTO ↔ entity mapping in Kora 2.0. Java: org.mapstruct @Mapper + the MapStruct javac processor. Kotlin: Konvert @Konverter + its KSP processor — kapt is not the 2.0 path. The matching extension ships inside annotation-processors / symbol-processors, finds the generated *Impl and binds it into the graph with no @Component. Use for @Mapper, @Konverter, @Mapping, mapstruct-processor wiring, and the removed mapstruct-extension coordinate.
    0
    installs
  8. Kora Di Compile 2 · kora-projects bundle
    Compile-time DI in Kora 2.0 — @KoraApp, @Component, @Module, @KoraSubmodule, @FactoryModule, @Conditional, @DefaultComponent, @Root, @Tag from io.koraframework.common.annotation. Generates <App>Graph; entry point KoraApplication.run(ApplicationGraph::graph). Use when wiring the application graph, splitting a build into Gradle submodules, or fixing "No component found for dependency" / "Multiple components match dependency" / "Circular dependency found". For graph runtime behaviour see kora-di-runtime.
    0
    installs
  9. Kora Di Runtime 2 · kora-projects bundle
    Runtime DI behaviour of the Kora 2.0 container (io.koraframework.application.graph) — @Root pruning, the synchronous Lifecycle init()/release() contract, LifecycleWrapper/Wrapped<T>, @Tag disambiguation incl. Tag.Any and Tag.Factory, All<T> collections, ValueOf<T>/PromiseOf<T>, @Nullable optional dependencies, GraphInterceptor afterInit/beforeRelease, GraphCondition + @Conditional, RefreshableGraph.refresh and RefreshListener. Use when a component must start although nothing depends on it, when writing init/release logic, when disambiguating or collecting components, when breaking a refresh chain or a dependency cycle, or when a component must be wrapped during graph build. For compile-time @KoraApp/@Module/@Component wiring see kora-di-compile.
    0
    installs
  10. Kora Aop Caching 2 · kora-projects bundle
    Kora 2.0 declarative caching via compile-time AOP — @Cacheable / @CachePut / @CacheInvalidate / @CacheInvalidateAll from io.koraframework.cache.annotation, with the args key attribute and CacheMode.SYNC|ASYNC. Covers the typed @Cache interface over CaffeineCache (io.koraframework:cache-caffeine) or RedisCache (io.koraframework:cache-redis-lettuce + LettuceRedisCacheModule), CacheKeyMapper + @Mapping, @Json Redis value types, LoadableCache, and stacked L1/L2 multi-level caching. Use when adding caching to a Kora service, choosing Caffeine vs Redis, porting Kora 1.x parameters= / invalidateAll=true, or debugging "Config expected value, but got null at path: 'ROOT.<cache>.keyPrefix'".
    0
    installs
  11. Kora Aop Logging 2 · kora-projects bundle
    Kora 2.0 declarative method logging — @Log (+ @Log.in / @Log.out / @Log.result / @Log.off), @Mdc and @Mask from io.koraframework.logging.common.annotation, generated by logging-annotation-processor (Java) / logging-symbol-processor (KSP). Covers entry/exit records, structured `data` markers, argument and result levels, the Kora MDC built on ScopedValue (the 1.x Kora Context is gone), MaskingRules / MaskingStrategy redaction, and the logging.levels config map. Use when adding method tracing, MDC keys, or redacting sensitive arguments in a Kora service, or when @Log produces nothing because the class is final / not open.
    0
    installs
  12. Kora Config YAML 2 · kora-projects bundle
    YAML typed config in Kora 2.0 — io.koraframework:config-yaml, YamlConfigModule, @ConfigSource / @ConfigMapper over application.yaml, ConfigValueMapper.mapOrThrow, ${VAR} substitution. Use when a service reads YAML config, when migrating @ConfigValueExtractor to @ConfigMapper, or when a YAML key silently has no effect. For application.conf see kora-config-hocon.
    0
    installs
  13. Kora Grpc Client 2 · kora-projects bundle
    Outbound gRPC clients in Kora 2.0 — io.koraframework:grpc-client and GrpcClientModule (io.koraframework.grpc.client). The kora-app processor/KSP extension makes protoc-generated *BlockingStub / *FutureStub / *Stub (and Kotlin *CoroutineStub) injectable by type, backed by a ManagedChannelLifecycle configured under grpcClient.<protoServiceName>. Covers url/timeout/keepAliveTime/keepAliveTimeout/loadBalancingPolicy/defaultServiceConfig, telemetry defaults (logging=false, metrics=false, tracing=true), io.grpc.ClientInterceptor collected with @Tag(<Service>Grpc.class), ChannelCredentials and Configurer<ManagedChannelBuilder> extension points, metadata auth, unary and streaming calls, and pinning grpc-java 1.83.1 / protoc 3.25.3 / protobuf plugin 0.10.0 against AbstractMethodError buildClientTransportServers. Use when wiring an outbound gRPC call, injecting a generated stub, adding an authorization metadata header, or debugging a missing-stub graph error.
    0
    installs
  14. Kora Grpc Server 2 · kora-projects bundle
    Kora 2.0 gRPC server — io.koraframework:grpc-server, GrpcServerModule, untagged @Component handlers extending the generated *Grpc.*ImplBase (io.grpc.BindableService), untagged io.grpc.ServerInterceptor components, the grpcServer config section (port, reflectionEnabled, maxMessageSize, telemetry), OkHttp transport on virtual threads, gRPC Server Reflection. Use when serving unary or streaming RPCs from a Kora service, pinning io.grpc/protobuf versions against grpc-java 1.83.1, or debugging AbstractMethodError buildClientTransportServers, an interceptor that never runs, or handlers that are not registered.
    0
    installs
  15. Kora HTTP Client 2 · kora-projects bundle
    Declarative Kora 2.x HTTP clients — io.koraframework @HttpClient("httpClient.x") interfaces with @HttpRoute, @Path/@Query/@Header/@Cookie, @Json bodies, HttpResponseEntity, @Mapping, @ResponseCodeMapper, HttpClientInterceptor + @InterceptWith, and the OkHttp / JDK / Apache transports (http-client-ok, http-client-jdk, http-client-apache). Client contracts are synchronous on virtual threads — no CompletionStage, Mono or Kotlin suspend, and http-client-async no longer exists. Use for typed outbound calls, per-client httpClient.* config and timeouts, HttpClientResponseException handling, or "No component found for dependency: HttpClientResponseMapper<...>" graph errors. For OpenAPI-generated clients see kora-openapi-generator-client; for the inbound @HttpController server see kora-http-server.
    0
    installs
  16. Kora HTTP Server 2 · kora-projects bundle
    Kora 2.0 HTTP server on Undertow — @HttpController + @HttpRoute handlers generated at compile time, parameter binding with @Path/@Query/@Header/@Cookie from io.koraframework.http.common.annotation, @Json bodies, HttpServerResponse / HttpResponseEntity / HttpServerResponseException, and HttpServerInterceptor (global via @Tag(HttpServer.class), scoped via @InterceptWith). Covers the UndertowPublicHttpServerModule / UndertowSystemHttpServerModule split and the httpServer + httpServer.system config sections. Use when building REST endpoints on Kora 2.0, wiring ports and probes, or porting a Kora 1.x controller. For authentication see kora-http-server-auth; for outbound calls see kora-http-client.
    0
    installs
  17. Kora Soap Client 2 · kora-projects bundle
    SOAP/WSDL clients in Kora 2.x — wsdl2java (Apache CXF, jakarta) generates jakarta.jws @WebService interfaces, then the Kora processor generates $Service_SoapClientImpl and a @Module $Service_SoapClientModule from artifact io.koraframework:soap-client. Covers SoapClientModule, SoapServiceConfig under soapClient.<PortType> (url, timeout, telemetry), synchronous generated methods, SoapFaultException / SoapInvalidHttpResponseException / SoapRequestMarshallingException, typed @WebFault exceptions, WS-Security via SoapEnvelopeProcessorsUtils.wssAuth and the tagged Function<SoapEnvelope, SoapEnvelope> envelope processor, MTOM/XOP multipart responses, RPC Holder out-params, and the Gradle wsdl2java wiring for Java (annotation-processors) and Kotlin (KSP symbol-processors). Use when consuming an external SOAP service from a Kora service, or when a generated SOAP client is missing from the graph.
    0
    installs
  18. Kora Config Hocon 2 · kora-projects bundle
    HOCON typed configuration in Kora 2.0 — @ConfigSource and @ConfigMapper interfaces bound to application.conf by HoconConfigModule (io.koraframework:config-hocon), custom ConfigValueMapper with @Mapping, env substitution, and the @ApplicationConfig/@EnvironmentConfig/@SystemPropertiesConfig layer tags. Use when adding typed config to a Kora service, porting @ConfigValueExtractor from Kora 1.x, or debugging "Config expected value, but got null at path".
    0
    installs
  19. Kora Aop Resilient 2 · kora-projects bundle
    Kora 2.x resilience aspects (io.koraframework:resilient-kora) — @CircuitBreakable, @Retryable, @Timeout, @RateLimited, @Fallback. In 2.0 every aspect takes a typed spec interface (@CircuitBreakerSpec/@RetrySpec/@TimeoutSpec/@RateLimiterSpec on an interface extending CircuitBreaker/Retry/Timeouter/RateLimiter) instead of a string name. Use when adding fault tolerance to outbound HTTP/gRPC/DB calls, wiring resilient.* config (countBased.windowSize, failureRateThreshold, attempts, delay, duration, limitForPeriod), binding a CircuitBreakerPredicate/RetryPredicate by @Tag, or porting Kora 1.x @CircuitBreaker("name")/@Retry("name") string annotations.
    0
    installs
  20. Kora Database Jdbc 2 · kora-projects bundle
    Kora 2.0 JDBC repositories — @Repository interfaces extending JdbcRepository, @Query with SQL macros (%{return#selects}, %{entity#inserts}, %{entity#where = @id}), @EntityJdbc from io.koraframework.database.jdbc.annotation, @Table/@Column/@Id/@Embedded/@Batch, UpdateCount, generated keys via @Id on the method, JdbcResultSetMapper/JdbcRowMapper/JdbcResultColumnMapper/JdbcParameterColumnMapper, and transactions through repository.executor().inTx(...) on JdbcExecutor. HikariCP pool configured under the jdbc config section. Use when adding a PostgreSQL/MySQL/Oracle repository to a Kora service, porting a 1.x repository, or debugging 'Config expected value, but got null at path ROOT.jdbc.username', suspend-repository rejections, or repository mapper graph errors.
    0
    installs
  21. Kora Aop Validation 2 · kora-projects bundle
    Kora 2.0 declarative validation — @Valid generates a Validator<T> for records/classes/sealed types, @Validate weaves argument and result validation via AOP, with Kora's own 22 constraint annotations from io.koraframework.validation.common.annotation (@NotBlank, @NotEmpty, @Size, @Range, @Pattern, @Min, @Max, @Positive, @Digits, @Past, @Future, @Url, @Uri, @UUID, @OneOf, @AssertTrue, ...). Covers ValidatorModule (validation-common) vs ValidationModule (validation-module), custom constraints via @ValidatedBy + a parameterised ValidatorFactory, ViolationException, and mapping it to HTTP 400 through ValidationHttpServerInterceptor + ViolationExceptionHttpServerResponseMapper. Use when validating request DTOs, enforcing argument/return rules, validating @ConfigSource config, or building custom constraints. Kora validation is NOT Jakarta/JSR-380.
    0
    installs
  22. Kora Kafka Consumer 2 · kora-projects bundle
    Kafka consumers in Kora 2.0 — @KafkaListener (io.koraframework.kafka.common.annotation) on a @Component method, wired by KafkaModule from io.koraframework:kafka. Covers the accepted handler signatures, subscribe vs assign containers, who commits the offset, @Json / @Tag deserializers, KafkaSkipRecordException and RecordKey/ValueDeserializationException, ConsumerAwareRebalanceListener, kafka.consumer.* config, and consumer telemetry. Use when consuming Kafka messages, porting a 1.x @KafkaListener, or debugging "Kafka listener method has unsupported parameter".
    0
    installs
  23. Kora Kafka Producer 2 · kora-projects bundle
    Kora 2.0 Kafka publishers — @KafkaPublisher interfaces and the nested @KafkaPublisher.Topic, generated $X_Impl / $X_PublisherModule / $X_TopicConfig, KafkaModule from io.koraframework:kafka, Serializer<T> selection with @Json and @Tag, TransactionalPublisher with inTx/withTx/begin, KafkaPublishException, and the kafka.producer.* config tree (driverProperties, topic, idPrefix). Use when publishing to Kafka from a Kora service, choosing a send signature, wiring producer telemetry, or porting a ru.tinkoff.kora publisher to io.koraframework.
    0
    installs
  24. Kora HTTP Client Auth 2 · kora-projects bundle
    Authenticating outgoing Kora 2.0 HTTP clients — the built-in BasicAuthHttpClientInterceptor / ApiKeyHttpClientInterceptor / BearerAuthHttpClientInterceptor from io.koraframework:http-client-common, the synchronous HttpClientTokenProvider, hand-written HttpClientInterceptor, @InterceptWith wiring, OAuth2 client-credentials token caching and 401 retry. Use when a @HttpClient must send Basic / API-key / Bearer credentials, when porting a 1.x Context/CompletionStage token flow to the synchronous 2.0 contract, or when an outbound call returns 401. For inbound request auth see kora-http-server-auth.
    0
    installs
  25. Kora HTTP Server Auth 2 · kora-projects bundle
    HTTP server authentication in Kora 2.0 — HttpServerPrincipalExtractor<T, P> bound by @Tag(ApiSecurity.<SchemeName>.class), io.koraframework.common.Principal carried to the handler through Principal.with/Principal.current (a ScopedValue), PrincipalWithScopes for oauth2 scopes, and HttpServerResponseException for 401/403. Use when securing @HttpController endpoints, wiring an OpenAPI securityScheme, writing a global @Tag(HttpServer.class) auth interceptor, or fixing auth that silently stopped running after a Kora 1.x migration.
    0
    installs
  26. Kora Testing Blackbox 2 · kora-projects bundle
    Black-box E2E tests of a packaged Kora 2.0 service — Testcontainers builds the application Dockerfile and runs the real artifact, an AppContainer (a GenericContainer subclass you write) exposes 8080 public + 8085 system, and startup is gated on Wait.forHttp("/system/readiness").forPort(8085).forStatusCode(200) — never on a log line. Covers distTar packaging, eclipse-temurin:25-jre-jammy and GraalVM native images, Network.SHARED with PostgreSQL/Kafka, withEnv config injection for httpServer.port / httpServer.system.port, and asserting real /metrics series instead of the "# Metric Scraper disabled" stub. Use for real-artifact E2E; for in-process @KoraAppTest see kora-testing-junit-java / kora-testing-junit-kotlin.
    0
    installs
  27. Kora Telemetry Logging 2 · kora-projects bundle
    SLF4J + Logback logging for Kora 2.0 — LogbackModule from io.koraframework:logging-logback, KoraAsyncAppender, ConsoleTextRecordEncoder, config-driven logging.levels, StructuredArgument, the ScopedValue-based Kora MDC, and @Mask masking. Use when wiring logback.xml, setting per-logger levels from application.conf/yaml, turning on per-component telemetry.logging.enabled, or porting a Kora 1.x logging setup.
    0
    installs
  28. Kora Telemetry Metrics 2 · kora-projects bundle
    Kora 2.0 Micrometer metrics — io.koraframework:micrometer-module, MetricsModule (io.koraframework.micrometer.module), PrometheusMeterRegistry + injectable MeterRegistry, PrometheusMeterRegistryInitializer, MetricsScraper, and the /metrics endpoint served by the SYSTEM HTTP server under httpServer.system.metricsPath. Covers the per-component telemetry.metrics { enabled, slo, tags } keys — where enabled defaults to FALSE in 2.0 — the second MeterRegistry gate, the real 2.0 metric names (http.server.request.duration, db.client.operation.duration, cache.operation.duration, messaging.process.duration…), custom Counter/Gauge/Timer/DistributionSummary, and tag cardinality. Use when adding business metrics, wiring Prometheus scraping, or debugging an empty or JVM-only /metrics response.
    0
    installs
  29. Kora Telemetry Tracing 2 · kora-projects bundle
    Kora 2.0 OpenTelemetry tracing — artifact opentelemetry-tracing plus the two OTLP exporters opentelemetry-tracing-exporter-grpc and opentelemetry-tracing-exporter-http, the OpentelemetryTracingModule / OpentelemetryGrpcExporterModule / OpentelemetryHttpExporterModule graph modules, the tracing and tracing.exporter config keys, custom spans through the injected KoraTracer or io.opentelemetry.api.trace.Tracer, and span-context propagation through the ScopedValue-backed io.koraframework.common.telemetry.OpentelemetryContext. Use when exporting traces to an OTLP backend (OpenTelemetry Collector, Jaeger, Grafana Tempo), adding business spans, overriding the Sampler, or debugging spans that never appear.
    0
    installs
  30. Kora Aop Scheduling Jdk 2 · kora-projects bundle
    In-process scheduled jobs in Kora 2.x — @ScheduleAtFixedRate, @ScheduleWithFixedDelay, @ScheduleOnce and the new @ScheduleWithCron from io.koraframework.scheduling.jdk.annotation, contributed by SchedulingJdkModule (artifact io.koraframework:scheduling-jdk) on top of a ScheduledThreadPoolExecutor of platform threads. Covers the config attribute for externalising timings, the scheduling.jdk.shutdownWait and scheduling.telemetry keys, per-job telemetry overrides, and why a scheduled method must be a no-argument, non-suspend member of a @Component. Use for heartbeat, cleanup, cache-warm and in-process cron jobs. For persistent, clustered or Quartz-flavoured cron jobs use kora-aop-scheduling-quartz.
    0
    installs
  31. Kora Database Cassandra 2 · kora-projects bundle
    Kora 2.0 Cassandra/ScyllaDB repositories — @Repository interfaces extending CassandraRepository, @Query CQL, @EntityCassandra, @UDT, @Batch, @CassandraProfile, CassandraRowMapper/CassandraResultSetMapper/CassandraParameterColumnMapper, and the executor() + CassandraQuery manual API from io.koraframework:database-cassandra. Use when adding a Cassandra repository, mapping rows or user-defined types, tuning driver profiles and consistency under the cassandra config section, or porting a Kora 1.x Cassandra repository that still uses suspend/Mono/Flux or getCassandraConnectionFactory().
    0
    installs
  32. Kora Database Migration 2 · kora-projects bundle
    Kora 2.0 schema migrations on startup — FlywayJdbcDatabaseModule (io.koraframework:database-flyway) and LiquibaseJdbcDatabaseModule (io.koraframework:database-liquibase), wired as a GraphInterceptor<JdbcDataSource>. Covers FlywayConfig (enabled, mode, locations, executeInTransaction, validateOnMigrate, mixed, configurationProperties), LiquibaseConfig.changelog, the mandatory Flyway dialect artifact, and the out-of-process strategy for scaled services. Use when adding migrations to a @KoraApp, choosing Flyway vs Liquibase, or fixing 'Unsupported Database', checksum, or startup-race failures.
    0
    installs
  33. Kora Openapi Management 2 · kora-projects bundle
    Publish OpenAPI documents and the bundled Swagger UI / Scalar viewers over the Kora 2.0 public HTTP server with io.koraframework.openapi.management.OpenApiManagementModule (artifact io.koraframework:openapi-management). Covers the openapi.management config section — files (a list, mandatory), path, cache, swaggerui.*, scalar.* — the default /openapi, /swagger-ui, /scalar routes, gzip response caching, and gating the docs with a @Tag(HttpServer.class) interceptor. Use to expose a spec or an interactive viewer; also use when porting openapi.management.file / endpoint / rapidoc from Kora 1.x. Not for code generation — see kora-openapi-generator-server and kora-openapi-generator-client.
    0
    installs
  34. Kora Project Setup Java 2 · kora-projects bundle
    Scaffold a new Java Kora 2.0 service (Gradle) — io.koraframework:kora-bom, annotationProcessor io.koraframework:annotation-processors, the koraBom configuration, @KoraApp root and KoraApplication.run(ApplicationGraph::graph). Use when starting a Java Kora project, writing build.gradle/settings.gradle/gradle.properties, or fixing "annotation processor did not run", "cannot find symbol ApplicationGraph", or "Dependency requires at least JVM runtime version 25". For Kotlin see kora-project-setup-kotlin.
    0
    installs
  35. Kora Testing Junit Java 2 · kora-projects bundle
    In-process JUnit 5 tests for Java Kora 2.0 services — io.koraframework:test-junit5 with @KoraAppTest, @TestComponent, KoraAppTestConfigModifier/KoraConfigModification, KoraAppTestGraphModifier/KoraGraphModification, KoraAppGraph, Mockito @Mock/@Spy plus @MockitoStrictness, the @KoraApp TestApplication submodule pattern behind -Akora.app.submodule.enabled=true, and Testcontainers for PostgreSQL/Kafka. Needs testAnnotationProcessor "io.koraframework:annotation-processors". Contracts are synchronous, so reactive/CompletionStage test shapes are gone, and HOCON embedded in KoraConfigModification.ofString must use 2.0 keys (jdbc, httpServer.port). Use when writing a Kora 2.0 Java test, mocking a component inside the graph, overriding test config, or starting a real database/broker. For Kotlin see kora-testing-junit-kotlin; for the packaged image see kora-testing-blackbox.
    0
    installs
  36. Kora Project Dependencies 2 · kora-projects bundle
    Kora 2.0 Gradle artifacts + project generator — io.koraframework:kora-bom, annotation-processors/symbol-processors, the koraBom configuration (Java) vs BOM-on-implementation (Kotlin), real module names (json-common, cache-redis-lettuce, http-client-apache), externally-versioned deps. Use when wiring build.gradle, choosing modules, or fixing "dependency not found"/version conflicts/1.x coordinates.
    0
    installs
  37. Kora Project Setup Kotlin 2 · kora-projects bundle
    Scaffold a new Kotlin Kora 2.x service (Gradle Kotlin DSL) — KSP io.koraframework:symbol-processors, the io.koraframework:kora-bom platform, @KoraApp + generated ApplicationGraph, Kotlin 2.4.10 / KSP 2.3.11, JDK 25 toolchain, Gradle wrapper. Use when starting a Kotlin Kora project, wiring build.gradle.kts or KSP, or fixing "ApplicationGraph unresolved" and KspTask no longer resolving. For Java see kora-project-setup-java.
    0
    installs
  38. Kora Testing Junit Kotlin 2 · kora-projects bundle
    In-process JUnit 5 tests for Kotlin Kora 2.x services — io.koraframework:test-junit5, @KoraAppTest/@TestComponent from io.koraframework.test.extension.junit5, MockK @field:MockK/@SpyK, Mockito-Kotlin, KoraAppTestConfigModifier/KoraConfigModification.ofString, KoraAppTestGraphModifier/KoraGraphModification, the TestApplication submodule pattern with kspTest + kora.app.submodule.enabled, and Testcontainers. Use when writing or migrating a Kotlin @KoraAppTest, mocking a graph component, overriding test config, or wiring PostgreSQL/Kafka containers. Kora 2.0 contracts are synchronous — no runTest/coEvery around Kora calls. For Java see kora-testing-junit-java; for E2E over the packaged artifact see kora-testing-blackbox.
    0
    installs
  39. Kora Aop Scheduling Quartz 2 · kora-projects bundle
    Quartz-backed scheduling in Kora 2.x — io.koraframework.scheduling.quartz.QuartzModule from artifact scheduling-quartz (Quartz 2.5.2). Covers @ScheduleWithCron (cron expression, identity, config path), @ScheduleWithTrigger(MyJob.class) taking a class tag that binds an org.quartz.Trigger from the graph, @DisallowConcurrentExecution, @PersistJobDataAfterExecution, the org.quartz.JobExecutionContext job argument, scheduling.quartz.properties / scheduling.quartz.waitForJobComplete / scheduling.telemetry config, and JDBC JobStore clustering. Use for cron jobs, custom Quartz triggers, misfire policies or persistent job stores; for fixed-rate, fixed-delay and one-shot timers use kora-aop-scheduling-jdk.
    0
    installs
  40. Kora Openapi Generator Client 2 · kora-projects bundle
    Generate a Kora 2.x HTTP client from an OpenAPI 3.x contract with the `kora` generator (io.koraframework:openapi-generator, modes java-client / kotlin-client). Emits a @HttpClient-annotated *Api interface with synchronous methods, sealed *ApiResponses per status code, *ApiClientRequestMappers / *ApiClientResponseMappers, model records or data classes and an ApiSecurity @Module for securitySchemes. Use for contract-first outbound clients, clientConfig / clientConfigPrefix wiring, the lower-camel httpClient.<client>.<api> config key, enum fromValue parsing, HttpClientTokenProvider auth tags, or a client that starts green but hangs on every request.
    0
    installs
  41. Kora Openapi Generator Server 2 · kora-projects bundle
    Generate a Kora 2.x HTTP server from an OpenAPI 3.x contract with the `kora` generator (io.koraframework:openapi-generator, modes java-server / kotlin-server). Emits *ApiController (@Component + @HttpController), a *ApiDelegate interface you implement, sealed *ApiResponses with one record per status code, *ApiServerResponseMappers, model records/data classes and an ApiSecurity @Module for securitySchemes. Use for contract-first servers, enableServerValidation, HttpServerPrincipalExtractor wiring, enum fromValue parsing, or "delegate not found" / phantom-package build errors.
    0
    installs
  42. Kora V1 · kora-projects bundle
    Build and maintain Java/Kotlin services on the Kora Framework 1.x (ru.tinkoff.kora) — compile-time DI, zero reflection, annotation processors (Java) or KSP (Kotlin). Routes to 39 domain sub-skills. Use when the request mentions Kora, or uses Kora APIs: @KoraApp, @Component, @Module, @KoraSubmodule, @Root, @Tag, @HttpController, @HttpRoute, @HttpClient, @Repository, @Query, @EntityJdbc, @KafkaListener, @KafkaPublisher, gRPC, SOAP/WSDL, @S3.Client, MapStruct, @Json, @ConfigSource (HOCON/YAML), OpenAPI codegen, @KoraAppTest, Testcontainers, @Valid, @Validate, @Log, @Mdc, @Retry, @CircuitBreaker, @Timeout, @Fallback, @Schedule*, @Cacheable, @CachePut, @CacheInvalidate, Micrometer/Prometheus metrics, OpenTelemetry/OTLP tracing, Undertow, Hikari. Also use for Kora project setup, Gradle/BOM dependencies, DI graph errors, or explaining Kora concepts. Do not use for Spring Boot, Micronaut, or Quarkus work.
    0
    installs
  43. Kora V2 · kora-projects bundle
    Build and maintain Java/Kotlin services on the Kora Framework 2.0 (io.koraframework) — compile-time DI, zero reflection, synchronous contracts on virtual threads, annotation processors (Java) or KSP (Kotlin). Routes to 39 domain sub-skills. Use when the request mentions Kora, or uses Kora APIs: @KoraApp, @Component, @Module, @KoraSubmodule, @Root, @Tag, @Conditional, @FactoryModule, @HttpController, @HttpRoute, @HttpClient, @Repository, @Query, @EntityJdbc, @KafkaListener, @KafkaPublisher, gRPC, SOAP/WSDL, @S3.Client, @S3.Head, MapStruct, Konvert, @Json, @ConfigSource, @ConfigMapper (HOCON/YAML), OpenAPI codegen, @KoraAppTest, Testcontainers, @Valid, @Validate, @Log, @Mdc, @Retryable, @CircuitBreakable, @Timeout, @RateLimited, @Fallback, @Schedule*, @Cacheable, @CachePut, @CacheInvalidate, @CacheInvalidateAll, Micrometer/Prometheus metrics, OpenTelemetry/OTLP tracing, Undertow, Hikari. Also use for Kora project setup, Gradle/BOM dependencies, DI graph errors, or explaining Kora concepts. Do not use for Spring
    0
    installs
  44. Kora S3 · kora-projects bundle
    S3 object storage in Kora (AWS S3, MinIO) — declarative @S3.Client (@S3.Get/List/Put/Delete), imperative S3KoraClient, multipart uploads, key templates. Use when storing files, images, or binary data.
    0
    installs
  45. Kora JSON · kora-projects bundle
    Compile-time JSON in Kora — @Json generates JsonReader/JsonWriter for records/data classes; sealed discriminators, @JsonField/@JsonSkip, JsonNullable, custom factories, Jackson swap. Use for HTTP DTOs or polymorphic JSON.
    0
    installs
  46. Kora Journal · kora-projects bundle
    Journal for incorrect Kora usage (kora_journal.py add/search/integrate). Global shared store at ~/.kora-journal/. Use when you or the user find a wrong Kora annotation, hallucinated API, or misapplied pattern. Not for project business logic.
    0
    installs
  47. Kora Teacher · kora-projects bundle
    Teach Kora to beginners strictly from official docs/guides/examples under .kora-agent/, never inventing. Use when a user wants to learn Kora from scratch, asks for a tutorial, or needs a concept explained.
    0
    installs
  48. Kora Mapstruct · kora-projects bundle
    MapStruct in Kora — an @Mapper interface is auto-discovered and its generated *MapperImpl registered in the graph (no @Component). Use for DTO↔entity mapping. Java uses the MapStruct processor; Kotlin needs kapt alongside KSP.
    0
    installs
  49. Kora Di Compile · kora-projects bundle
    Compile-time DI in Kora — @KoraApp, @Component, @Module, @KoraSubmodule, @Root. Use when wiring the application graph or debugging "no factory found"/ambiguous/circular dependency errors. For runtime DI behavior see kora-di-runtime.
    0
    installs
  50. Kora Di Runtime · kora-projects bundle
    Kora runtime DI behavior — @Root, Lifecycle init/release, @Tag disambiguation, All<T>, ValueOf<T>, @Nullable, GraphInterceptor. Use for lifecycle/collection/lazy/optional wiring. For compile-time @KoraApp/@Module wiring see kora-di-compile.
    0
    installs
  51. Kora Aop Caching · kora-projects bundle
    Kora caching via compile-time AOP — @Cacheable/@CachePut/@CacheInvalidate over Caffeine (in-process) or Redis (distributed). Use when adding caching, choosing Caffeine vs Redis, or fixing "required keyPrefix" graph errors.
    0
    installs
  52. Kora Aop Logging · kora-projects bundle
    Declarative method logging in Kora — @Log (+ @Log.in/out/result/off) and @Mdc via logging-common. Use when adding entry/exit logging, MDC context keys, or hiding sensitive arguments.
    0
    installs
  53. Kora Config YAML · kora-projects bundle
    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.
    0
    installs
  54. Kora Grpc Client · kora-projects bundle
    Kora gRPC clients — GrpcClientModule with generated stubs injected as components, grpcClient.<Service> config, @Tag interceptors, streaming. Use when wiring an outbound gRPC call or adding gRPC metadata auth.
    0
    installs
  55. Kora Grpc Server · kora-projects bundle
    Kora gRPC server handlers — GrpcServerModule, @Component extending the generated *GrpcImplBase, ServerInterceptor, grpcServer config, reflection. Use when serving gRPC RPCs (unary/streaming) from a Kora service.
    0
    installs
  56. Kora HTTP Client · kora-projects bundle
    Declarative Kora HTTP clients — @HttpClient with @HttpRoute, @Path/@Query/@Header, @Json, interceptors, OkHttp/Async/JDK transports. Use for typed outbound calls. For OpenAPI clients see kora-openapi-generator-client; for the inbound server see kora-http-server.
    0
    installs
  57. Kora HTTP Server · kora-projects bundle
    Kora HTTP server controllers on Undertow — @HttpController, @HttpRoute, @Path/@Query/@Header, @Json, HttpResponseEntity, HttpServerInterceptor. Use when building REST endpoints or wiring UndertowHttpServerModule.
    0
    installs
  58. Kora Soap Client · kora-projects bundle
    SOAP clients in Kora — compile-time generated from WSDL (wsdl2java) + JAX-WS @WebService, SoapClientModule. Use when consuming an external SOAP/WSDL web service.
    0
    installs
  59. Kora Config Hocon · kora-projects bundle
    HOCON typed config in Kora — @ConfigSource/@ConfigValueExtractor over application.conf via HoconConfigModule, with env substitution. Use when adding typed config or debugging "config value not found".
    0
    installs
  60. Kora Aop Resilient · kora-projects bundle
    Kora resilience aspects — @CircuitBreaker, @Retry, @Timeout, @Fallback (resilient-kora). Use when adding fault tolerance to outbound calls or tuning resilient.* config keys.
    0
    installs
  61. Kora Database Jdbc · kora-projects bundle
    Kora JDBC repositories — @Repository extends JdbcRepository, @Query, @EntityJdbc, SQL macros, @Batch, transactions via inTx(), HikariCP under `db`. Use when adding a Postgres/MySQL/Oracle repository or debugging repository graph errors.
    0
    installs
  62. Kora Aop Validation · kora-projects bundle
    Kora declarative validation — @Valid/@Validate with Kora's own constraints (@NotBlank/@Pattern/@Range/@Size) and custom @ValidatedBy. Use when validating DTOs or service args. Kora validation is NOT Jakarta/JSR-380.
    0
    installs
  63. Kora Kafka Consumer · kora-projects bundle
    Kora Kafka consumers — @KafkaListener on a @Component method (KafkaModule), commit strategies, @Json deserialization, error handling, batch. Use when consuming Kafka messages or configuring kafka.consumer.
    0
    installs
  64. Kora Kafka Producer · kora-projects bundle
    Kora Kafka producers — @KafkaPublisher interface (KafkaModule), typed .Topic contracts, send signatures, @Json serializers, transactional sends. Use when publishing domain events or configuring kafka.producer.
    0
    installs
  65. Kora HTTP Client Auth · kora-projects bundle
    Auth for outgoing Kora HTTP clients — Basic/ApiKey/Bearer interceptors, HttpClientTokenProvider, @InterceptWith, custom OAuth2/JWT schemes. Use when authorizing a @HttpClient or debugging 401s. For server-side auth see kora-http-server-auth.
    0
    installs
  66. Kora HTTP Server Auth · kora-projects bundle
    HTTP server auth in Kora — HttpServerPrincipalExtractor, Principal/PrincipalWithScopes, SecurityException→403 via interceptor. Use when securing @HttpController endpoints or integrating an OpenAPI security scheme. For client-side auth see kora-http-client-auth.
    0
    installs
  67. Kora Testing Blackbox · kora-projects bundle
    Black-box E2E tests of a packaged Kora app via its HTTP API — AppContainer (Docker), Testcontainers on Network.SHARED, readiness gating, RestAssured/HttpClient. Use for real-artifact E2E. For in-process tests see kora-testing-junit-java.
    0
    installs
  68. Kora Telemetry Logging · kora-projects bundle
    Structured logging for Kora — SLF4J+Logback (LogbackModule), KoraAsyncAppender, StructuredArgument, Kora MDC, @Log/@Mdc. Use when wiring logback.xml, per-package log levels, or JSON logs for ELK/Datadog/Splunk.
    0
    installs
  69. Kora Telemetry Metrics · kora-projects bundle
    Kora Micrometer metrics (micrometer-module) — PrometheusMeterRegistry + MeterRegistry, custom Counter/Gauge/Timer, /metrics scrape endpoint, SLO buckets. Use when adding business metrics or tuning latency buckets.
    0
    installs
  70. Kora Telemetry Tracing · kora-projects bundle
    Kora OpenTelemetry tracing — OTLP gRPC/HTTP exporter modules, tracing.exporter config, Tracer injection, manual spans, context propagation. Use when exporting traces to Jaeger/Zipkin/Tempo or adding manual spans.
    0
    installs
  71. Kora Aop Scheduling Jdk · kora-projects bundle
    In-process scheduled jobs in Kora — @ScheduleAtFixedRate/@ScheduleWithFixedDelay/@ScheduleOnce (scheduling-jdk). Use for periodic/heartbeat/cleanup jobs; for cron or clustered jobs use kora-aop-scheduling-quartz.
    0
    installs
  72. Kora Database Cassandra · kora-projects bundle
    Kora Cassandra/ScyllaDB repositories — @Repository extends CassandraRepository, @Query CQL, @EntityCassandra, @UDT, @Batch, per-method @CassandraProfile. Use when adding a Cassandra repository or mapping rows/UDTs.
    0
    installs
  73. Kora Database Migration · kora-projects bundle
    Kora startup schema migrations — Flyway (FlywayJdbcDatabaseModule) or Liquibase (LiquibaseJdbcDatabaseModule). Use when wiring migrations into @KoraApp, choosing Flyway vs Liquibase, or fixing checksum/race failures.
    0
    installs
  74. Kora Openapi Management · kora-projects bundle
    Serve OpenAPI spec + Swagger UI/RapiDoc over the Kora HTTP server (OpenApiManagementModule), config under openapi.management. Use to expose /openapi or /swagger-ui. Not for code generation (see the openapi-generator skills).
    0
    installs
  75. Kora Project Setup Java · kora-projects bundle
    Scaffold a new Java Kora service (Gradle) — @KoraApp root, kora-parent BOM, annotation-processors, koraBom, wrapper. Use when starting a Java project or fixing "annotation processor did not run"/"ApplicationGraph not found". For Kotlin see kora-project-setup-kotlin.
    0
    installs
  76. Kora Testing Junit Java · kora-projects bundle
    In-process JUnit 5 tests for Java Kora services — @KoraAppTest, @TestComponent, Mockito, config/graph modifiers, Testcontainers (test-junit5). Use when testing a Kora graph, mocking a component, or spinning up a DB/broker.
    0
    installs
  77. Kora Project Dependencies · kora-projects bundle
    Kora Gradle artifacts + project generator — kora-parent BOM, annotation-processors/symbol-processors, koraBom, real module names, externally-versioned deps. Use when wiring build.gradle, choosing modules, or fixing "dependency not found"/version conflicts.
    0
    installs
  78. Kora Project Setup Kotlin · kora-projects bundle
    Scaffold a new Kotlin Kora service (Gradle Kotlin DSL) — KSP symbol-processors, kora-parent BOM, koraBom, @KoraApp, wrapper. Use when starting a Kotlin project or configuring KSP. For Java see kora-project-setup-java.
    0
    installs
  79. Kora Testing Junit Kotlin · kora-projects bundle
    In-process JUnit 5 tests for Kotlin Kora services — @KoraAppTest, @TestComponent, MockK, config/graph modifiers, coroutine tests, Testcontainers. Use when testing a Kotlin Kora graph. For Java see kora-testing-junit-java.
    0
    installs
  80. Kora Aop Scheduling Quartz · kora-projects bundle
    Quartz scheduling in Kora — @ScheduleWithCron, @ScheduleWithTrigger, @DisallowConcurrentExecution, @PersistJobDataAfterExecution (scheduling-quartz). Use for cron/custom-trigger/persistent jobs; for plain timers use kora-aop-scheduling-jdk.
    0
    installs
  81. Kora Openapi Generator Client · kora-projects bundle
    Generate Kora HTTP clients from an OpenAPI 3.x spec (org.openapi.generator, generatorName "kora") — typed *Api + sealed *ApiResponses. Use when scaffolding a contract-first client, choosing a client mode, or wiring auth interceptors.
    0
    installs
  82. Kora Openapi Generator Server · kora-projects bundle
    Generate Kora HTTP server code from an OpenAPI 3.x spec (generatorName "kora") — *ApiController + *ApiDelegate implemented with @Component + sealed *ApiResponses. Use for a contract-first server; implement the delegate, don't hand-write a controller.
    0
    installs