Skip to main content

actions

Guidelines for implementing IntelliJ actions (AnAction). Use those rules when you need to create or change an action in the intellij platform.

Source facts

Repository
JetBrains/MPS
Last source activity
April 14, 2026 at 17:22
Detected SKILL.md language
English
Stars
1,652
Forks
310

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
actions
description
Guidelines for implementing IntelliJ actions (AnAction). Use those rules when you need to create or change an action in the intellij platform.
# Actions Guidelines for implementing IntelliJ actions (`AnAction`). ## Documentation - [Action System](../../../../docs/IntelliJ-Platform/4_man/Action-System.md) - Architecture and usage of the action system ## Best Practices - **NEVER instantiate Presentation in action constructors** - Use no-argument constructors - **Define text, description, and icon in plugin.xml** - Not in constructor parameters - **Follow the convention:** 1. Set the `id` attribute for the action in plugin.xml 2. Optionally set the `icon` attribute if an icon is needed 3. Set text and description in the message bundle (e.g., GitBundle.properties): - `action.<action-id>.text=Translated Action Text` - `action.<action-id>.description=Translated Action Description` **Good example:** Kotlin: ```kotlin class MyAction : AnAction() ``` plugin.xml: ```xml <action id="My.Action.Id" class="my.package.MyAction" icon="my.package.MyIcons.ICON"/> ``` Bundle.properties: ```properties action.My.Action.Id.text=My Action action.My.Action.Id.description=Description of my action ```
View on GitHub