Permissions Reference

Understand plugin permissions and request the minimum access needed.

Plugins should request the smallest possible permission set.

That keeps behavior predictable and makes review easier.

Permission model

Permissions are declared in plugin.json.

{
  "permissions": ["ui_modification", "score_editor"]
}

Common permissions

ui_modification

Use this when your plugin changes theme state, adds UI actions, or creates plugin-facing windows.

Typical use cases:

  • add menu items

  • create windows

  • change theme colors

  • change language

score_editor

Use this when your plugin reads or modifies the active score.

Typical use cases:

  • inspect score text

  • insert notes

  • replace score content

  • parse notes for analysis

Permission selection advice

Ask for a permission only when your plugin actually needs it.

For example:

  • a theme plugin should not request score access

  • a note generator should not request unrelated UI access unless it injects controls

Good manifest hygiene

  • keep permissions short

  • keep descriptions specific

  • match hooks to actual behavior

  • avoid future-proofing with permissions you might need later

circle-info

A smaller permission set makes plugins easier to trust and easier to debug.

Last updated

Was this helpful?