IntelliJ plugin repository
Toolbox Enterprise comes with a plugin repository for IntelliJ-based plugins, streamlining th process of building and delivering plugins within your organization.
By default, Toolbox Enterprise utilizes the IntelliJ plugin repository and automatically distributes the configuration to all IDEs. Toolbox Enterprise offers several ways to upload a new plugin:
Upload manually using the Web UI
Upload via HTTP (for example, using cURL or similar HTTP-based methods)
Upload from Gradle via IntelliJ Plugin SDK
warning
Currently, you can only upload plugins as ZIP-packages.
The Toolbox Enterprise plugin repository comes with a secure way to manage access to specific plugins by uploading them to custom channels. Channels serve as a means to control plugin distribution, making it convenient to upload and test your company-specific plugins.
The default channel name is Stable. You can use any custom names for your channels.
In the Web UI, open the Plugins page.
Click Upload plugin.
If necessary, select plugin channels in the Channel field.
(Optional) Configure the expiration date for the plugin versions you want to upload. After this date, Toolbox Enterprise will remove these plugin versions from the repository.
note
If you upload multiple plugin versions at once, the specified expiration date will be applied to all of them.
Drag one or several .zip files with the plugins you want to upload to the dedicated area. Alternatively, click the drag and drop area to select plugins in your file system.
To set up continuous delivery of plugins in Toolbox Enterprise:
Create a new automation token to upload plugins.
Configure a CI tool of your choice to upload fresh plugin binaries to the Toolbox Enterprise Server.
Configure auto-installed plugins to install plugins automatically on every developer machine.
tip
Plugin repository authentication is only supported in IntelliJ-based IDEs of version 2022.1 and later.
Use the following cURL command to upload a plugin to the Toolbox Enterprise Server:
curl -i \
-H 'Authorization: Automation <permanentToken>' \
-F file=@<path to the .zip file with the plugin> \
-F channel=Stable \
https://HOST_NAME/api/ij-plugins/upload
Use the Gradle IntelliJ Plugin to upload custom plugins to the Toolbox Enterprise Server.
note
The minimum required plugin version is 1.5.0.
In your build.gradle.kts file, configure the publishPlugin
task:
plugins {
id("org.jetbrains.intellij") version "1.16.0"
}
tasks {
publishPlugin {
toolboxEnterprise.set(true)
host.set("https://HOST_NAME")
token.set(<permanentToken>) // An automation token that enables you to perform HTTP requests
to Toolbox Enterprise API.
channels.set(listOf("CHANNEL_NAME")) // If no value is provided, the default 'Stable' channel is used.
}
}
On the Plugins page, use the search field to find the necessary plugin by its name or vendor name.
To configure an existing plugin, click its name in the table.
Toolbox Enterprise will open a page with plugin details.
You can upload and distribute multiple versions of the same plugin. To manage plugin versions, click the link with the plugin name to open the page with plugin details.

Use the Upload new plugin version button to upload another plugin version. This functionality works the same way as described in Upload plugins.
Select one or multiple plugin versions using checkboxes and click Remove N versions to delete them.
Use the
icon to download a particular plugin version.
Use the
icon to remove a particular plugin version.
Use the
icon in the Channels column to add a plugin version to a particular channel.
Use links in the Expiration date column to congifure the expiration date for a particular plugin version.
With Toolbox Enterprise, you can configure plugin visibility to have:
Publicly available plugins: these plugins are available to all developers connected to Toolbox Enterprise, the Toolbox Enterprise Server does not check authentication details.
Private plugins: these plugins are visible only to authenticated users.
note
By default, all freshly-uploaded plugins are private.
Use the Private switcher to change the plugin visibility.
Toolbox Enterprise originally hosts plugins in the S3 storage. In order to provide a smoother experience, some indexes have to be present in the PostgreSQL database. If you notice any inconsistency in the local plugin repository, try synchronizing these two types of storage. To launch the consistency check, click and select the Synchronize plugins option.

The action runs in a non-blocking manner, therefore, the results will not be available instantly. You can check the action progress in the Toolbox Enterprise logs.
You can check all the changes made to the plugin repository from the Plugins page of the Web UI. This includes plugin visibility changes, operations with channels, uploading of new plugins or plugin versions, and so on. To access the history of changes, click and select the View update history option.

You can use the search field to filter the history and display only the changes made in a particular plugin.
