CtrlK
BlogDocsLog inGet started
Tessl Logo

mps-ide-plugin

Use when authoring or modifying MPS IDE plugins — code that integrates with the MPS / IntelliJ host IDE shell. Covers ActionDeclaration, ActionGroupDeclaration, ToolDeclaration/TabbedToolDeclaration (dockable tool windows), KeymapChangesDeclaration (shortcuts), PreferencesComponentDeclaration (settings pages), EditorTab+Order (concept editor tabs), InterfaceGroup (bootstrap wrappers around external groups), NonDumbAwareActions, IdeaConfigurationXml, ApplicationPluginDeclaration/ProjectPluginDeclaration/StandalonePluginDescriptor (lifecycle hooks). Uses jetbrains.mps.lang.plugin and jetbrains.mps.lang.plugin.standalone. Trigger terms: action group, tool window, menu item, MainMenu, EditorPopup, NodeActions, ModelActions, ModuleActions, ProjectViewPopupMenu, MPS plugin solution, ActionInstance, ModificationStatement, DataKey, MPSCommonDataKeys, MPSDataKeys, dumb-aware, project.tool<...>, project.preferenceComponent<...>, application plugin<...>, project plugin<...>.

65

Quality

79%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/mps-ide-plugin/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, information-dense skill body with concrete MCP tool guidance, a sequenced validated workflow, and strong reference signaling. Its main weaknesses are the missing copy-paste code examples and, critically, an entire references/ bundle that is referenced but not present.

Suggestions

Ship the references/ bundle: create the 13 referenced .md files (terminology.md, actions.md, action-groups.md, tools.md, keymaps.md, preferences.md, editor-tabs.md, interface-group.md, non-dumb-aware.md, idea-configuration-xml.md, lifecycle-plugins.md, common-failures.md, concept-catalog.md) so the signaled navigation resolves to real content.

Add at least one copy-paste-ready JSON example of an mps_mcp_insert_root_node_from_json call (e.g. a minimal ActionDeclaration or ActionGroupDeclaration payload) in the Common-Path Workflow.

Add an inline validate→fix→retry loop after step 8 (e.g. "If mps_mcp_check_root_node_problems reports problems, fix and re-check before reloading") instead of deferring all error recovery to common-failures.md.

DimensionReasoningScore

Conciseness

Dense, directive bullets that assume Claude's competence ("A plugin solution is NOT an IntelliJ plugin jar", "ModificationStatement.modifiedGroup is a node reference (r:...), not a concept reference (c:...)") with no basic-concept padding; the only verbosity is the Reference Index enumerating every concept field inline, which could be trimmed since those details belong in the reference files.

4 / 5

Actionability

Concrete, executable guidance throughout — specific MCP tool names ("mps_mcp_insert_root_node_from_json", "mps_mcp_update_node", "mps_mcp_search_root_node_by_name", "mps_mcp_check_root_node_problems") and named example nodes/models ("ShowHelpForNode", "TodoViewer", "jetbrains.mps.ide.actions"); the gap is the absence of any copy-paste JSON example showing an actual node insert payload.

4 / 5

Workflow Clarity

A clearly sequenced 8-step Common-Path Workflow with an explicit validation checkpoint (step 8: "Validate with mps_mcp_check_root_node_problems") and rebuild/reload step; falls short of 5 because the validate→fix→retry feedback loop is only implied via a pointer to references/common-failures.md rather than stated inline.

4 / 5

Progressive Disclosure

The overview is excellently signaled with one-level-deep references ("Open references/terminology.md when starting any plugin task", "Open references/actions.md when declaring..."), but none of the referenced bundle files (references/terminology.md, actions.md, action-groups.md, tools.md, keymaps.md, preferences.md, editor-tabs.md, interface-group.md, non-dumb-aware.md, idea-configuration-xml.md, lifecycle-plugins.md, common-failures.md, concept-catalog.md) actually exist in the bundle, so the progressive disclosure is promised but undeliverable.

3 / 5

Total

15

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, specific description with an explicit Use-when clause and a concrete trigger-term list, clearly scoped to MPS IDE plugin authoring. It is held back only by limited action verbs and a few overly technical trigger terms.

Suggestions

Add a few more natural user-facing trigger phrases such as "shortcut" or "keybinding", "settings page", and "add a menu item" alongside the technical identifiers.

Lead with one or two more concrete action verbs (e.g. "declare, wire up, register") beyond "authoring or modifying" to broaden the action vocabulary.

DimensionReasoningScore

Specificity

Comprehensive coverage of concrete concept types ("Covers ActionDeclaration, ActionGroupDeclaration, ToolDeclaration/TabbedToolDeclaration...PreferencesComponentDeclaration, EditorTab+Order, InterfaceGroup, NonDumbAwareActions, IdeaConfigurationXml, ApplicationPluginDeclaration/ProjectPluginDeclaration/StandalonePluginDescriptor"), but the action verbs are limited to "authoring or modifying", keeping it just below the multi-action 5 anchor.

4 / 5

Completeness

Explicitly answers both: "what" ("authoring or modifying MPS IDE plugins — code that integrates with the MPS / IntelliJ host IDE shell. Covers [list]") and "when" ("Use when authoring or modifying MPS IDE plugins") with a dedicated concrete "Trigger terms:" list.

5 / 5

Trigger Term Quality

Good keyword coverage with natural phrases ("action group", "tool window", "menu item", "MPS plugin solution", "dumb-aware", "application plugin", "project plugin") plus synonyms, but several listed terms ("MPSCommonDataKeys", "MPSDataKeys", "ModificationStatement", "project.tool<...>") are code-level jargon a user would not naturally say, and natural terms like "shortcut"/"settings page" are only implied.

4 / 5

Distinctiveness Conflict Risk

Clear niche ("MPS IDE plugins", "jetbrains.mps.lang.plugin and jetbrains.mps.lang.plugin.standalone") with highly specific concept names and triggers, giving minimal overlap with adjacent MPS skills.

5 / 5

Total

18

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

referenced_paths_exist

Referenced path issues: 21 missing

Warning

Total

14

/

16

Passed

Repository
JetBrains/MPS
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.