A plug-in registry is a simple service that hosts information (metadata) about the plug-ins.

To retrieve a full list of plug-ins hosted in a registry, navigate to the following address: <registry-base-uri>/plugins/index.json.

Each plug-in item in the list is represented by a JSON definition:

Sample plug-in definition
{
    "id": "che-dummy-plugin",
    "version": "0.0.1",
    "type": "Che Plugin",
    "name": "Che Samples Hello World Plugin",
    "description": "A hello world theia plug-in wrapped into a Che Plug-in",
    "links": {
        "self": "/plugins/che-dummy-plugin/0.0.1/meta.yaml"                  (1)
 }
1 Points to a more complete plug-in description (meta.yaml).
Sample plug-in meta.yaml file
id: che-dummy-plugin
version: 0.0.1
type: Che Plugin
name: Che Samples Hello World Plugin
title: Che Samples Hello World Plugin
description: A hello world theia plug-in wrapped into a Che Plug-in
icon: https://www.eclipse.org/che/images/logo-eclipseche.svg
url: https://github.com/ws-skeleton/che-dummy-plugin/releases/download/untagged-8f3e198285a2f3b6b2db/che-dummy-plugin.tar.gz (1)
1 Points to the plug-in configuration. Typically, it is a TAR archive with the plug-in YAML file. It is also possible to have a link to the raw content of a plug-in YAML file.

For a VS Code extension, the url field is replaced with an attributes section.

Sample attributes section of meta.yaml
attributes:
extension: "vscode:extension/extension.id"             (1)
container-image: "my.docker.registry/remote-theia:tag" (2)
1 VS Code extension ID with a vscode:extension/ prefix
2 Points to a container image in which the extension runs. Note that the image should contain an appropriate Node.js version with installed dependencies for Che-Theia remote plug-ins.

For more details about the meta.yaml structure, see [che-theia-plug-in-metadata_what-is-a-che-theia-plug-in].

Official plug-in registry

The official Che plug-in registry is at che-plugin-registry.openshift.io. By default, the Che dashboard shows editors and plug-ins from this registry.

The source is located at link: github.com/eclipse/che-plugin-registry.

Custom plug-in registries

For more information about setting up a custom registry, see the description of the official registry repository.

There are two ways of using plug-ins from a custom registry:

  • Specify a link to the plug-in in the configuration of a workspace. See Adding a plug-in into a workspace via configuration.

  • Replace the default official registry with a custom one in your Che instance. To do that, set the PLUGIN_REGISTRY_IMAGE environment variable in your Che configuration. Note that plug-ins from the official registry are not available from the dashboard interface. To include them, add references into your registry from the official registry.