java-quarkus-development — скилл для Claude Code: суть и запуск
Набор правил и практик для разработки сервисов на Java Quarkus. Помогает проектировать реактивные API, настраивать Panache и готовить нативную сборку под GraalVM.
npx skills add Mindrally/skills --skill java-quarkus-development -a claude-codeЧто делает java-quarkus-development
Скилл задаёт стандарты написания кода для фреймворка Quarkus. Ассистент опирается на RESTEasy Reactive для конечных точек и библиотеку Mutiny для асинхронного потока. Для базы данных правила рекомендуют Hibernate ORM с Panache. В инструкции заложен запуск локального окружения через quarkus dev, использование Dev Services и версионирование схемы через Flyway или Liquibase.
При генерации сервисов акцент сделан на нативную компиляцию в GraalVM. Из-за сборки в нативный образ агент минимизирует рефлексию. Регистрация классов через @RegisterForReflection применяется только при необходимости. Внедрение зависимостей настраивается через CDI с учётом обнаружения бинов во время сборки.
Для продакшена скилл предписывает выносить метрики в формате Prometheus, включать пробы liveness и readiness через MicroProfile Health и упаковывать сервис в многоэтапные Dockerfile.
Какие задачи решает
- Спроектировать реактивный REST-эндпоинт на Mutiny и RESTEasy Reactive
- Настроить сущности и репозитории через Hibernate ORM с Panache
- Подготовить конфигурацию для сборки нативного образа в GraalVM
- Добавить пробы живучести и готовности через MicroProfile Health
Примеры запросов агенту
- Создай REST-контроллер для заказов на RESTEasy Reactive с валидацией входных данных
- Опиши сущность Customer с использованием PanacheEntity и методом поиска по email
- Настрой многоэтапный Dockerfile для сборки нативного бинарника под GraalVM
Как установить java-quarkus-development
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill java-quarkus-development -a claude-code2Вручную: положить файлы
~/.claude/skills/java-quarkus-development/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/java-quarkus-development/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill java-quarkus-development -a codex2Вручную: положить файлы
.agents/skills/java-quarkus-development/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill java-quarkus-development -a cursor2Вручную: положить файлы
.cursor/skills/java-quarkus-development/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install Mindrally/skills java-quarkus-development2Вручную: положить файлы
.github/skills/java-quarkus-development/SKILL.md1Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill java-quarkus-development -a gemini-cli2Командой платформы
gemini skills install https://github.com/Mindrally/skills --path java-quarkus-developmentВручную: положить файлы
.devin/skills/java-quarkus-development/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add Mindrally/skills --skill java-quarkus-development -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о java-quarkus-development
Как установить java-quarkus-development в Claude Code?
Выполните команду npx skills add Mindrally/skills --skill java-quarkus-development -a claude-code. Инструкция сразу загрузится в окружение ассистента.
Зачем нужен скилл java-quarkus-development?
Он направляет модель на идиоматичные решения Quarkus, включая реактивные типы Mutiny и Dev Services.
Как скилл решает проблемы с рефлексией в GraalVM?
Инструкция требует избегать тяжёлой рефлексии и регистрировать необходимые классы через аннотацию @RegisterForReflection.
Исходный текст
SKILL.md · Apache-2.0
--- name: java-quarkus-development description: Java Quarkus development guidelines for building cloud-native applications with fast startup, minimal memory footprint, and GraalVM native builds metadata: maintainer: Mindrally source: https://github.com/Mindrally/skills --- # Java Quarkus Development Best Practices ## Core Principles - Write clean, efficient, and well-documented Java code using Quarkus best practices - Focus on fast startup and minimal memory footprint via GraalVM native builds - Leverage Quarkus extensions for common functionality - Design for containerized and serverless deployments - Follow SOLID principles and microservices architecture patterns ## Development Workflow ### Quarkus Dev Mode - Use `quarkus dev` for rapid iteration with live reload - Leverage continuous testing during development - Use Dev UI for debugging and configuration inspection - Take advantage of Dev Services for local development ## Configuration ### Type-Safe Configuration - Use `@ConfigProperty` for type-safe configuration injection - Group related configs with `@ConfigMapping` interfaces - Validate configuration at startup - Document configuration properties ### Profile-Based Configuration - Use `%dev`, `%test`, `%prod` prefixes for environment-specific configs - Override configs via environment variables in production - Keep sensitive values out of source control - Use `.env` files for local development ## Dependency Injection ### CDI Annotations - Use `@Inject` for dependency injection - Use `@Named` to qualify implementations - Use `@Singleton`, `@ApplicationScoped`, `@RequestScoped` appropriately - Prefer constructor injection for required dependencies ### Bean Discovery - Understand Quarkus build-time bean discovery - Use `@IfBuildProfile` for conditional beans - Avoid reflection-heavy patterns for native builds ## REST API Development ### RESTEasy Reactive - Use `@Path`, `@GET`, `@POST`, etc. for endpoint definitions - Return proper HTTP status codes - Use `@Valid` for input validation - Implement exception mappers for consistent error responses ### Reactive Patterns - Use Mutiny for reactive programming - Leverage `Uni` and `Multi` for async operations - Combine reactive with imperative code where appropriate ## Data Access ### Hibernate ORM with Panache - Use Panache for simplified JPA patterns - Leverage Active Record or Repository patterns - Use `PanacheEntity` for entities with built-in operations - Implement custom queries with `find` and `list` methods ### Database Operations - Use Flyway or Liquibase for migrations - Configure connection pooling with Agroal - Use reactive database clients for non-blocking I/O ## Testing ### JUnit 5 Integration - Use `@QuarkusTest` for integration tests - Use `@QuarkusIntegrationTest` for native image tests - Leverage test profiles for different configurations ### REST Endpoint Testing - Use rest-assured for endpoint testing - Test both success and error scenarios - Verify response bodies and status codes - Test authentication and authorization ## Performance Optimization ### Native Image Optimization - Build native images with GraalVM for production - Test native builds regularly during development - Use `@RegisterForReflection` when needed - Minimize reflection usage ### Memory and Startup - Monitor memory usage in containers - Optimize for serverless cold starts - Use lazy initialization where appropriate ## Observability ### Health Checks - Use MicroProfile Health for liveness and readiness probes - Implement custom health checks for dependencies - Configure Kubernetes probes based on health endpoints ### Metrics - Use MicroProfile Metrics for application metrics - Export metrics in Prometheus format - Add custom metrics for business operations ### Distributed Tracing - Use OpenTracing/OpenTelemetry integration - Propagate trace context across services - Configure sampling appropriately for production ## Security - Use Quarkus Security extensions - Implement authentication with OIDC or JWT - Configure CORS for web clients - Validate and sanitize all inputs - Use HTTPS in production ## Containerization - Use Quarkus container image extensions - Build multi-stage Dockerfiles for native images - Configure resource limits appropriately - Use distroless or minimal base images
© Mindrally · Apache-2.0 · Mindrally/skills