Graalvm expert
Skill kinhluan/rules-quarkus-skills/.agent-skills/graalvm-expert
π€ Complete AI expert ecosystem for Modern Java, Quarkus & Bazel development βοΈβ‘οΈ Coverage for Vert.x, GraalVM, Maven/Gradle migration, and more π
npx -y skills add kinhluan/rules-quarkus-skills --skill graalvm-expertAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Expert knowledge for GraalVM, Native Image (AOT), Polyglot runtime, and reflection/resource configuration. Use for native compilation and multi-language JVM questions.
SKILL.md
3.8 KB, as published. Nobody here has run it
graalvm-expert
Keyword: graalvm | Platforms: gemini,claude,codex
High-Performance Polyglot & Native VM Expert Skill - Specialized in GraalVM AOT (Ahead-of-Time) compilation.
Core Mandates
- AOT Mindset: Understand that Native Image has a "Closed-world assumption" (all bytecode must be known at build time).
- Reflection Discipline: Mandate
reflection-config.jsonfor any dynamic class loading or reflection usage. - Initialization Policy: Differentiate between Build-time initialization (faster startup, smaller image) and Runtime initialization (safer for classes with side effects).
- Polyglot Strategy: Leverage GraalVM SDK for high-performance interoperability between Java, JS, Python, and Ruby.
Native Image Mastery
- Native Image Agent: Using
java -agentlib:native-image-agentto automatically generate configuration files. - Resource Management: Config for
resource-config.jsonto include static assets in the native binary. - Dynamic Proxy: Configuring
proxy-config.jsonfor Java dynamic proxies. - Substrate VM: Understanding memory management and GC options (G1 vs Serial) in native binaries.
GraalVM + Build Systems
- Maven/Gradle: Using the GraalVM Native Build Tools plugins.
- Bazel Integration: Configuring
rules_graalvmand toolchains for hermetic native builds. - Quarkus Native: Troubleshooting Quarkus-specific native image failures (often related to extensions or transitive libraries).
Optimization & Performance
- PGO (Profile-Guided Optimization): Collecting profiles from JIT runs to optimize AOT binaries.
- Graal JIT: Using Graal as a replacement for C2 compiler in standard JVM mode for better performance in modern Java.
- Static Analysis: Interpreting GraalVM build-time reports (reachability analysis).
Expert Tips
- Always check
reflect-config.jsonif you getClassNotFoundExceptionin a native binary. - Prefer
quarkus.native.additional-build-argsfor passing low-level GraalVM flags. - Use
--trace-class-initializationto debug complex initialization order issues.
π GraalVM Deep Dives
Directive: Use
web_fetchto find specific configuration flags or reflection-config.json syntax if a native build fails or requires optimization.
- Native Image Agent: GraalVM Agent Guide - Automating metadata collection.
- Reflection Config: Reflection Config Reference - Manual reflection configuration.
- Dynamic Proxy: Dynamic Proxy metadata - Handling interface-based proxies.
- Static vs Runtime Init: Class Initialization in Native Image - Debugging --initialize-at-build-time.
References
Skill Interoperability
The graalvm-expert π skill provides the native runtime and AOT compilation expertise for:
- quarkus-expert β‘: Enables building Native Images for Quarkus applications. It depends on java-expert β for understanding reflection and resource configuration.