Icon Resources
SkillDev toolsLets your agent manage IntelliJ icon files, generated Icons classes, and icon-robots rules.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Icon Resources skill
About this capability
Manage IntelliJ icons, generated Icons classes, and icon-robots rules.
What this skill tells your AI
The instructions your AI receives, as published by jetbrains/intellij-community in .agents/skills/icon-resources/SKILL.md and read by ahel’s review.
Use this skill when adding, renaming, moving, deleting, or referencing icons under a Java resource root, or when a failure mentions generated icon classes or icon-robots.txt.
Generated Icon Classes
- Icons under resource roots are normally represented by generated
*Icons.javaclasses. - Do not add local
IconLoader.getIcon(...)wrappers for icons that should be in a generated icon class. Use the generated field directly from production code and tests. - If an icon should intentionally be excluded from class generation, add or update an
icon-robots.txtrule near the icon resources instead of creating an ad hoc loader. - Generated classes include cache keys derived from normalized SVG content. Do not guess cache keys.
How To Update
- Prefer running the IDE run configuration
Icons processing | Generate icon classeswhen available. - If the run configuration is unavailable, run the icon-class test and apply the exact generated diff it prints for the affected class:
./tests.cmd --module intellij.platform.images.build.tests --test org.jetbrains.intellij.build.images.CommunityIconClassesTest - After applying the generated output, rerun the same test to confirm there are no stale generated icon classes.
- Also run the affected module tests or compilation for production call-site changes; the icon-class test validates generated files but does not necessarily compile every icon consumer.
Bazel Status
As of this guide, icon class generation is not exposed as a Bazel runnable target. The package @community//platform/build-scripts/icons contains library and test targets, but no binary target:
bazel query 'kind(".*binary.*", @community//platform/build-scripts/icons:all)'
Use Bazel-backed tests.cmd for verification. If a generator binary target is added later, prefer that documented Bazel target over the IDE run configuration.
Signals
- GitHub stars
- 21k
- Forks
- 6k
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
icon-resources- Source
- github.com/jetbrains/intellij-community