jetbrains-vmoptions
JetBrains IDE VM Options
Generate .vmoptions configurations for JetBrains IDEs. Output as Markdown code blocks (one option per line, # comments). Do not generate files directly.
Workflow
1. Identify IDE version (blocking)
Read prerequisite-check.md for validation logic. IDE version determines the JDK (17 vs 21), which controls which GC collectors and flags are available. Never skip this step — wrong version means wrong recommendations.
2. Understand the user's goal
Match the user's problem to a tuning strategy:
| User says | Primary goal | Start with |
|---|---|---|
| "freezes", "hangs", "lag", "UI stutter" | Low GC pause times | gc-options.md → ZGC/Shenandoah |
| "slow indexing", "build is slow" | Throughput | gc-options.md → G1GC/Parallel |
| "out of memory", "OOM", "large project" | Memory capacity | memory-options.md → heap sizing |
| "startup is slow" | Fast startup | common-options.md → tiered compilation |
| "general tuning", "optimize" | Balanced | All references as needed |
3. Compose options from references
Read only the relevant reference files. Each reference includes flag descriptions, defaults, usage notes, and example configurations.
| File | Content | Read when |
|---|---|---|
| prerequisite-check.md | IDE version validation, JDK mapping | Always (step 1) |
| gc-options.md | GC selection and tuning flags | GC-related goals |
| memory-options.md | Heap, code cache, metaspace, large pages | Memory-related goals |
| common-options.md | Compiler, strings, diagnostics, threads | Performance/startup goals |
4. Self-review before presenting
- Verify every flag is compatible with the user's JDK version
- Remove flags that conflict with each other (e.g., two different GC activations)
- Remove flags the user didn't ask about and doesn't need — lean configs are better
- Include a brief comment explaining each section's purpose
5. Present with context
Show the final .vmoptions block with:
- A header comment noting the IDE version and JDK
- Grouped sections (Memory, GC, Performance, Diagnostics)
- A short explanation of each non-obvious choice
Scope
- Supported: IDE versions 222+ (JDK 17) and 243+ (JDK 21)
- GC collectors: Generational ZGC, ZGC, G1GC, Shenandoah, Parallel, Serial
- Tuning areas: Memory, code cache, metaspace, GC, compiler, strings, diagnostics
- Not in scope: OS-level tuning, plugin configuration, IDE settings (non-JVM), or IDE versions below 222
Output Example
# JetBrains IDE VM Options
# IntelliJ IDEA 2024.3 (version 243, JDK 21)
# Memory
-Xms2g
-Xmx4g
# Garbage Collector: Generational ZGC
-XX:+UseZGC
-XX:+ZGenerational
# Performance
-XX:ReservedCodeCacheSize=512m
-XX:+UseStringDeduplication
-XX:SoftRefLRUPolicyMSPerMB=50
# Diagnostics
-XX:+HeapDumpOnOutOfMemoryError
-XX:CICompilerCount=2
More from buyoung/skills
agents-md-generator
Analyze repository structure and generate or update standardized AGENTS.md files that serve as contributor guides for AI agents. Supports both single-repo and monorepo structures. Measures LOC to determine character limits and produces structured documents covering overview, folder structure, patterns, conventions, and working agreements. Update mode refreshes only the standard sections while preserving user-defined custom sections. Use when setting up a new repository, onboarding AI agents to an existing codebase, updating an existing AGENTS.md, or when the user mentions AGENTS.md.
27biz-opportunity-scout
Identify and validate profitable business opportunities by analyzing market size (TAM/SAM/SOM), unit economics, competitive landscape, and PMF indicators. Generates comprehensive HTML reports with opportunity scorecards.
20typst-creator
Generate Typst source code for documents, reports, papers, and presentations, covering markup, math, scripting, and layout syntax.
19skill-maker
Generates AI agent skill packages with SKILL.md, optional bundled resources (scripts/, references/, assets/), and README.md integration.
18kysely-converter
Capable of converting raw SQL queries into type-safe Kysely TypeScript code. Knows how to handle various SQL dialects and complex query structures.
14code-review
Performs production-ready code reviews on git changes. Supports commit/range/file-scoped analysis, impact assessment, breaking-change detection, confidence-aware finding classification, and risk-weighted verdict generation.
13