К основному содержанию
скилл CX Codex

graalvm — скилл для Claude Code: что делает и как установить

Помогает компилировать Java-сервисы в нативные бинарники GraalVM, настраивать рефлексию и готовить сборки на Quarkus или Micronaut.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Mindrally/skills --skill graalvm -a claude-code
Открыть на GitHub

Что делает graalvm

Скилл даёт правила компиляции Java-кода в нативный исполняемый файл через GraalVM Native Image. Он задаёт шаблоны конфигурации для закрытого мира (closed-world assumption): подготовку reflect-config.json, регистрацию ресурсов в resource-config.json и генерацию динамических прокси.

Внутри собраны рекомендации под Quarkus, Micronaut и Spring Native с учётом переноса инициализации на этап сборки. Есть правила для тестов через @QuarkusTest и интеграции с Testcontainers, а также диагностика сборок флагом -H:+ReportExceptionStackTraces и агентом трассировки.

Без готовых метаданных рефлексии или запуска tracing agent нативная компиляция сторонних библиотек завершится с ошибкой во время исполнения.

Какие задачи решает

  • Сконфигурировать reflect-config.json и resource-config.json для сборки бинарника
  • Настроить многоэтапный Dockerfile приложения на базе дистрибутива distroless
  • Перенести инициализацию классов на фазу компиляции для ускорения старта
  • Найти причину сбоя нативной сборки с помощью флагов отладки и tracing agent

Примеры запросов агенту

  • Сгенерируй многоэтапный Dockerfile на базе дистрибутива distroless для нативного образа Quarkus.
  • Помоги настроить reflect-config.json для вызова методов через рефлексию в нативном режиме.
  • Как настроить tracing agent в Maven, чтобы собрать метаданные для GraalVM?

Как установить graalvm

1Через Skills CLI (Vercel)

npx skills add Mindrally/skills --skill graalvm -a claude-code

2Вручную: положить файлы

~/.claude/skills/graalvm/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/graalvm/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о graalvm

Как установить graalvm в Claude Code?

Выполните команду npx skills add Mindrally/skills --skill graalvm -a claude-code. Файл настроек сохранится по пути ~/.claude/skills/graalvm/SKILL.md.

Для каких фреймворков подходит скилл?

Инструкции охватывают Quarkus, Micronaut и Spring Native, а также приложения на базе Vert.x, Jakarta EE и MicroProfile.

Что нужно для обнаружения скрытых вызовов рефлексии?

Скилл рекомендует прогонять тесты с запущенным tracing agent, который перехватывает вызовы во время работы JVM и формирует JSON-файлы конфигурации.

Исходный текст

SKILL.md · Apache-2.0
---
name: graalvm
description: Expert guidance for GraalVM native image development with Java frameworks, build optimization, and high-performance application deployment
metadata:
  maintainer: Mindrally
  source: https://github.com/Mindrally/skills
---

# GraalVM

You are an expert in Java programming, GraalVM native builds, Quarkus framework, Micronaut framework, Jakarta EE, MicroProfile, Vert.x for event-driven applications, Maven, JUnit, and related Java technologies.

## Code Style and Structure

- Write clean, efficient, and well-documented Java code optimized for GraalVM native compilation
- Follow framework-specific conventions (Quarkus, Micronaut, Spring Native) while ensuring GraalVM compatibility
- Use descriptive method and variable names following camelCase convention
- Structure your application with consistent organization (resources, services, repositories, entities, configuration)

## GraalVM Native Image Specifics

- Configure native image builds for optimal performance and minimal footprint
- Understand and configure reflection, resources, and serialization for native compilation
- Use build-time initialization when possible to reduce startup time
- Implement proper substitutions for incompatible code paths

## Naming Conventions

- Use PascalCase for class names (e.g., UserResource, OrderService)
- Use camelCase for method and variable names (e.g., findUserById, isOrderValid)
- Use ALL_CAPS for constants (e.g., MAX_RETRY_ATTEMPTS, DEFAULT_PAGE_SIZE)

## Java and GraalVM Usage

- Use Java 17 or later features when applicable (e.g., records, sealed classes, pattern matching)
- Understand GraalVM's closed-world assumption for native images
- Use GraalVM's polyglot capabilities when integrating multiple languages
- Leverage GraalVM's high-performance JIT compiler for JVM mode

## Native Image Configuration

- Configure reflection using reflect-config.json or framework annotations
- Register resources for inclusion in native image via resource-config.json
- Configure serialization for classes requiring runtime serialization
- Use proxy-config.json for dynamic proxy generation
- Leverage native-image.properties for build-time configuration

## Framework Integration

### Quarkus
- Use Quarkus extensions that are native-image compatible
- Leverage Quarkus Dev Mode for rapid development
- Configure quarkus.native.* properties for native build optimization

### Micronaut
- Use Micronaut's compile-time processing for native-friendly code
- Leverage Micronaut's GraalVM metadata for automatic configuration
- Use @Introspected for reflection-free bean introspection

### Spring Native
- Use Spring Native for Spring Boot native image support
- Configure @NativeHint annotations for reflection and resource hints
- Use AOT processing for Spring configuration

## Testing

- Write unit tests using JUnit 5 with framework-specific test support
- Test both JVM mode and native image builds
- Use @QuarkusTest, @MicronautTest, or Spring Boot Test for integration testing
- Implement in-memory databases or Testcontainers for integration testing

## Performance Optimization

- Minimize reflection usage for faster native image builds
- Use build-time initialization for static data
- Implement proper memory configuration (-Xmx, -Xms) for native images
- Profile applications using GraalVM VisualVM or async-profiler
- Optimize startup time by reducing classpath scanning

## Security Considerations

- Understand security implications of native image compilation
- Configure proper certificate handling for HTTPS connections
- Use framework-specific security modules (Quarkus Security, Micronaut Security)
- Implement secure coding practices for native deployments

## Logging and Monitoring

- Use SLF4J with Logback or JUL for logging
- Implement health checks and metrics compatible with native images
- Use MicroProfile Health and Metrics for cloud-native monitoring
- Configure proper log levels and structured logging

## Build and Deployment

- Use Maven or Gradle with GraalVM native image plugins
- Configure multi-stage Docker builds for native image containers
- Use distroless or minimal base images for production deployment
- Implement CI/CD pipelines with native image build support
- Consider using buildpacks for container image creation

## Troubleshooting Native Builds

- Use tracing agent to discover runtime configuration requirements
- Analyze build output for missing reflection/resource configuration
- Debug native image issues using -H:+ReportExceptionStackTraces
- Use fallback images for debugging problematic native builds

## General Best Practices

- Follow RESTful API design principles
- Leverage GraalVM for microservices with fast startup and minimal memory usage
- Implement asynchronous and reactive processing for efficient resource usage
- Adhere to SOLID principles for high cohesion and low coupling
- Design for cloud-native deployment (Kubernetes, serverless, edge computing)
- Keep native image configuration in version control
- Document GraalVM-specific requirements and limitations

© Mindrally · Apache-2.0 · Mindrally/skills

Похожие скиллы

Все скиллы по теме «Бэкенд и API» →
mcp-builder официальный anthropics Скилл проводит через создание MCP-сервера на TypeScript или Python: от изучения протокола до тестов и оценки качества. 130 949установок claude-api официальный anthropics Справочник по Anthropic SDK и API Claude для генерации кода без устаревших параметров и выдуманных методов. 74 198установок lark-im larksuite Скилл подключает Lark IM к агенту: он отправляет сообщения, ищет историю, управляет чатами и файлами. Подойдёт для задач вокруг командных коммуникаций. CX Codex +1 472 900установок lark-event larksuite Слушает события Lark/Feishu и отдаёт их потоком NDJSON. Подходит для ботов, обработчиков сообщений и долгих подписчиков. CX Codex +1 466 800установок caveman-discover JuliusBrussee Находит точки вызова LLM в репозитории и размечает их воркфлоу для Caveman Cloud, чтобы расходы на токены не сливались в одну общую кучу. CX Codex +1 104 400установок migration JuliusBrussee Скилл задаёт правила безопасных миграций схем, данных и API с обязательным откатом. Пригодится при изменениях, где нельзя терять данные или ломать совместимость. CX Codex +1 103 900установок

Из того же набора236

turborepo Скилл задаёт агенту правила работы с Turborepo: структура воркспейсов, turbo.json, кэш и фильтры задач. Пригодится, когда монорепо уже есть и его надо привести в порядок. CX Codex +1 658установок rollup-bundler Скилл задаёт агенту правила конфигурации Rollup.js: форматы вывода, внешние зависимости, tree-shaking и плагины для сборки библиотек. CX Codex +1 657установок react-native-r3f Задаёт правила разработки 3D-сцен на React Three Fiber и three.js. Помогает генерировать чистые компоненты с TypeScript без точек с запятой. CX Codex +1 655установок serverless Скилл задаёт агенту правила разработки на FastAPI в микросервисах и serverless-среде: AWS Lambda, Azure Functions, API-шлюзы. CX Codex +1 655установок convex Задаёт агенту правила работы с Convex: запросы, мутации, actions, индексы и файлы. Пригодится, когда бэкенд на Convex уже выбран. CX Codex +1 651установок lerna Скилл задаёт агенту правила Lerna: структура пакетов, версионирование, публикация и запуск скриптов в монорепозитории. CX Codex +1 650установок onchainkit Скилл для ИИ-агента, который помогает собирать onchain-приложения на OnchainKit SDK: компоненты, провайдеры, транзакции и обмен токенов. CX Codex +1 641установок robocorp-cursor-rules Набор правил для ИИ-агента: как писать RPA-автоматизацию на Python под RoboCorp — функционально, с Pydantic и async. CX Codex +1 636установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой