name | yes | string | — | — | Unique identifier for this plugin bundle. Used in the UI and internally to reference the plugin; required field. Should be a descriptive, kebab-case name (e.g., ‘support-toolkit’, ‘zendesk-integration’). |
version | yes | string | — | — | Semver-like (1.0.0, 2.3, 1.0.0-beta.1). |
description | no | string | — | — | Human-readable description of what this plugin provides — the capabilities it bundles and when to use it. Shown in the plugins list on the dashboard. |
enabled | no | boolean | — | — | Boolean flag that determines whether this plugin is active. When false, the plugin’s MCP servers, commands, and other components are skipped at chat time; skills, agents, and hooks in the plugin are not loaded. |
collapsed | no | boolean | — | — | UI hint. |
skills | no | array of object | — | — | Array of skill stubs (name + description) bundled with this plugin for distribution. Currently persisted but not consumed at chat time; semantics are reserved for future use. |
commands | no | array of object | — | — | Array of slash-style commands (e.g., ‘/escalate’, ‘/research’) the plugin contributes. Each command has a name, description, and prompt_template that the engine expands and injects into the LLM context when invoked. |
agents | no | array of object | — | — | Array of sub-agent definitions (name, description, system prompt, tool restrictions) the plugin contributes as specialist sub-agents. Currently persisted but not consumed at chat time; runtime integration is reserved for future use. |
hooks | no | array of object | — | — | Array of lifecycle event hooks (e.g., post_query, on_tool_call) the plugin declares for custom logic. Currently persisted but not consumed at chat time; integration into the hook system is reserved for future use. |
mcp_servers | no | array of object | — | — | Array of MCP server definitions this plugin exposes to the agent at chat time. The engine loads these and merges them with MCP servers from other sources; servers from earlier plugins in the list take precedence when names collide. Item fields below. |
installed_from | no | string | — | — | Git URL the plugin was installed from (set by the plugin-select install action). |
installed_dir | no | string | — | — | On-disk install path under the agent’s plugins dir (set by the plugin-select install action). |