intellij-plugin

Installation
SKILL.md

IntelliJ Plugin Skill

Develop plugins for any IntelliJ Platform–based IDE with Kotlin, the IntelliJ Platform Gradle Plugin 2.x, and plugin.xml — from scaffolding through publishing to the JetBrains Marketplace.

Use Kotlin. The IntelliJ Platform itself is written mostly in Kotlin, all new APIs target Kotlin first, and Java-only development is no longer supported. Target JDK 21 on current platform builds.

Core Concepts

The IntelliJ Platform is an application that hosts plugins. Understanding these building blocks prevents the most common mistakes:

  • Application — the running IDE process; a singleton accessible via ApplicationManager.getApplication(). Never call read/write operations on it without the right threading model.
  • Project — an open workspace; multiple Projects can exist at once. Code that holds project state must be per-project, not global.
  • Module — a unit within a Project (a content root, SDK, dependencies).
  • Virtual File System (VFS) — the platform's in-memory mirror of the physical file system. Always go through VirtualFile/VfsUtil, never java.io.File, for files the IDE manages.
  • PSI (Program Structure Interface) — the syntax-tree layer over source files. PsiFile, PsiElement, PsiClass are how you inspect and modify code. PSI is language-aware (Java, Kotlin, XML, …).
  • Action — a user-invoked command (menu item, toolbar button, shortcut) extending AnAction.
  • Service — a managed singleton (AppLevel, ProjectLevel, ModuleLevel) obtained via Service.getService(...) / project.getService(...). The lifecycle and threading rules are handled for you — prefer services over hand-rolled singletons.
  • Extension Point (EP) — the platform's pluggability mechanism. Plugins contribute extensions to platform-defined EPs (<extensions>) or declare their own (<extensionPoints>) for other plugins to implement.
Installs
1
GitHub Stars
1
First Seen
Jun 28, 2026
intellij-plugin — duckyman-ai/agent-skills