Skip to content

plugin_list

List every installed JavaScript plugin, with the slash commands and events each one declares. Use it to build a plugin management screen.

{
"cmd": "plugin_list"
}

No fields besides cmd.

{
"cmd": "plugin_list",
"plugins": [
{
"name": "hello",
"description": "Say hello and answer !ping",
"version": "0.1.0",
"slash": [
{
"name": "hello",
"description": "Say hello",
"options": [],
"whitelistRoles": null,
"blacklistRoles": null,
"ephemeral": false,
"registeredBy": "plugin:hello"
}
],
"events": ["message_new"],
"enabled": true
}
]
}

Plugins are sorted by name. Each entry has:

Field Description
name Plugin name, which is also its folder name.
description From the manifest.
version From the manifest.
slash Slash command definitions the plugin declares.
events Commands the plugin’s onEvent runs before.
enabled The manifest’s enabled flag. Defaults to true.

enabled: true doesn’t prove the plugin is running. A plugin whose manifest or main.js failed to load is also listed as enabled, with values read from its manifest. Use plugin_get and check loaded.

A folder whose plugin.json is missing or can’t be parsed is left out.

Requires manage_server.

Only the generic authentication and permission errors described in the protocol model.