Using Plugin Manager CLI
The Digital.ai Release Plugin Manager CLI lists, adds, updates, and deletes plugins from the filesystem or database. The CLI is non-interactive (since v22.0.0) and must be used when all Release nodes are stopped.
- Use the Plugin Manager CLI only when all Digital.ai Release nodes are stopped.
- When deleting a plugin from the filesystem, run the CLI on all nodes.
- The CLI shuts down after executing a command.
Accessing the Plugin Manager CLI
Navigate to the bin folder of your Digital.ai Release distribution and run the CLI. If no option is provided, the command prints a list of supported options.
| Operating System | Command |
|---|---|
| Unix/Linux | plugin-manager-cli.sh |
| Windows | plugin-manager-cli.cmd |
Plugin Operations
The Plugin Manager CLI supports several operations for managing plugins. You can list available plugins, add new plugins, update existing plugins, and delete plugins from the database or filesystem. Each operation uses a specific command-line option, described in the following sections.
Listing Plugins
Use the -list option to display plugins. A + sign indicates presence in the database or filesystem.

Adding Plugins
Use the -add option with the plugin file path to add a plugin. The CLI checks the .jar file and looks for synthetic.xml. Type validation is skipped. The CLI confirms successful installation.
Adding a plugin places it in the database. After starting the distribution, the Plugin synchronizer writes it to the filesystem.
Updating Plugins
Use the -update option with the plugin name and file path to update a plugin. The CLI checks the .jar file and looks for synthetic.xml. Type validation is skipped. The CLI confirms successful update.
Updating a plugin places it in the database. After starting the distribution, the Plugin synchronizer writes it to the filesystem.
Deleting Plugins
Use the -delete option with the plugin full name and optional version number to delete a plugin. If no version is given, deletion succeeds only if exactly one plugin with that name exists. The CLI confirms deletion from the filesystem or database.

Deleting a plugin removes it from both the database and filesystem (depending on where it is saved at deletion time).
When deleting from the filesystem, delete the plugin on all other Digital.ai Release nodes before restarting any node.
Installation Location Control
Use the following arguments to control plugin installation location (since Release 25.3):
official: Installs a plugin in thexlr_officialfolder for official/bundled plugins.local: Installs a plugin in the_local_folder for custom/unofficial plugins.
By default, plugins install in the _local_ folder. The system uses plugin metadata to determine if a plugin is official or custom.
Examples
For Unix/Linux systems, run plugin-manager-cli.sh.
For Windows systems, run plugin-manager-cli.cmd.
Install a plugin in the official folder:
plugin-manager-cli.sh -add official xlr-helm-plugin-25.1.4-803.1713.jar
Install a plugin in the local folder:
plugin-manager-cli.sh -add local xlr-helm-plugin-25.1.4-803.1713.jar
The CLI determines the correct folder based on plugin type, even if the wrong argument is provided. If plugin metadata is unavailable, the plugin is treated as local and placed in the _local_ folder.
Error Handling
The Plugin Manager CLI provides error messages and validation checks to help you troubleshoot common issues during plugin management. The following sections describe typical errors and how the CLI reports them.
File Type Validation
Only .jar or .zip plugin files are supported. Any other file extension results in an error:
Error: Request failed with status code 500
JDK Compatibility
If the plugin is not compatible with the server's JDK version, the CLI outputs:
Installation failed: Unable to verify plugin JDK compatibility.
Duplicate Plugins
Installing a plugin with the same name and version as an existing one results in an error. Installing a different version of an existing plugin also fails if another version is already installed.
Offline Environments
In an offline environment (server cannot reach Nexus), the CLI installs plugins into the folder specified by the argument, regardless of plugin type.
Additional Resources
For more information about plugin synchronization and folder structure, see Plugin synchronization.