Install JFrog CLI plugins
Install or upgrade a JFrog CLI plugin from the plugins registry.
Synopsis
jf plugin install <plugin-name-and-version> [options]
Aliases: plugin i
Arguments
| Argument | Required | Description |
|---|---|---|
<plugin-name-and-version> | Yes | Plugin name and version. Use plugin@version format (for example, [email protected]). Version must include a v prefix. Omit the version to download the latest. |
Options
None.
Environment Variables
| Variable | Default | Description |
|---|---|---|
JFROG_CLI_PLUGINS_SERVER | Official JFrog CLI Plugins registry | Configured Artifactory server ID from which to download plugins |
JFROG_CLI_PLUGINS_REPO | jfrog-cli-plugins | Local repository name. Use with JFROG_CLI_PLUGINS_SERVER to download from a custom source |
Examples
Find available plugins
Browse the JFrog CLI Plugins Registry to find plugin names and their available versions before running the install command.
Show Help
To show install command help:
-
Run:
jf plugin install --help
Install Latest Version
To install the latest version of a plugin:
-
Run:
jf plugin install <plugin-name>Where:
<plugin-name>: Name of the plugin in the registry
For example:
jf plugin install rt-fs
Expected output:
[Info] Downloading: rt-fs
[Info] Downloading: rt-fs
[Info] Plugin downloaded successfully.
Note
The
Downloadinglog line appears twice — this is expected CLI behavior. The success message does not include the installed version number. To confirm which version was installed, run the plugin with--version:jf rt-fs --version
Install Specific Version
Important
If the plugin is already installed (any version), uninstall it before installing a specific version. Installing over an existing plugin can corrupt the installation and delete the plugin directory. See Upgrading or switching versions for the safe procedure.
To install a specific version of a plugin:
-
Run:
jf plugin install <plugin-name>@<version>Where:
<plugin-name>: Plugin name<version>: Version string withvprefix (for example,v1.1.5)
For example:
jf plugin install [email protected]
Expected output:
[Info] Downloading: rt-fs
[Info] Downloading: rt-fs
[Info] Plugin downloaded successfully.
Note
The
Downloadinglog line appears twice — this is expected CLI behavior. The success message does not include the version number. To confirm the installed version, run the plugin with--version.
To verify the installation:
-
List the plugin directory:
ls ~/.jfrog/plugins/
Upgrading or Switching Versions
To change the installed version of a plugin:
-
Uninstall the existing plugin.
-
Install the target version:
jf plugin uninstall <plugin-name> jf plugin install <plugin-name>@<version>Where:
<plugin-name>: Plugin name<version>: Desired version withvprefix
For example:
jf plugin uninstall rt-fs jf plugin install [email protected]
Why is this required?
Installing a different version over an existing plugin causes the CLI to kill the running plugin binary during a startup signature check. This leaves the install in a broken state, deletes the plugin directory, and returns a
chmod ... no such file or directoryerror. Uninstalling first avoids this.
Install from Custom Registry
To install a plugin from a custom Artifactory registry:
-
Set the server and optional repository, then install:
export JFROG_CLI_PLUGINS_SERVER=<server-id> export JFROG_CLI_PLUGINS_REPO=<repo-name> jf plugin install <plugin-name>Where:
<server-id>: JFrog CLI server ID that points at your Artifactory instance<repo-name>: Local generic repository name on that server (set only if not using the defaultjfrog-cli-pluginsrepository)<plugin-name>: Plugin name in that registry
For example:
export JFROG_CLI_PLUGINS_SERVER=my-artifactory export JFROG_CLI_PLUGINS_REPO=jfrog-cli-plugins jf plugin install my-internal-plugin
When to Use
Use jf plugin install to extend JFrog CLI with community or custom plugins. Plugins add new commands that are not part of the core CLI. Browse available plugins at the JFrog CLI Plugins Registry.
Important Notes
- Version format: Use
[email protected]to install a specific version. The version must include avprefix (for example,[email protected]). Omit the version to install the latest. - Custom registry: Set
JFROG_CLI_PLUGINS_SERVERandJFROG_CLI_PLUGINS_REPOto download plugins from your own Artifactory instance (useful for air-gapped environments or enterprise-approved plugin sets). - Install location: Plugins are installed in
~/.jfrog/plugins/(or$JFROG_CLI_HOME_DIR/plugins/). - Upgrades: Always uninstall the existing version before installing a different one. Running
jf plugin installdirectly over an existing plugin can corrupt and delete the installation. See Upgrading or Switching Versions. - Failed installs: If installation fails, any partially downloaded files are cleaned up automatically. Re-run the install command to retry.
- macOS (Apple Silicon and Intel): Plugin binaries must be notarized by Apple to run on macOS. If a plugin is not notarized, macOS Gatekeeper will block execution and the install will fail. Contact the plugin author if you encounter a security or permission error after a successful download. As a workaround, you can clear the quarantine flag manually:
xattr -d com.apple.quarantine ~/.jfrog/plugins/<plugin-name>/bin/<plugin-name>.
Troubleshooting
Error: 404 when installing a plugin
Cause: The plugin name is incorrect, or the specified version does not exist in the registry.
To fix a 404 when installing:
-
Verify the exact plugin name in the JFrog CLI Plugins Registry
-
If specifying a version, ensure it uses the
vprefix (for example,v1.1.5not1.1.5) -
Try installing without a version to get the latest:
jf plugin install <plugin-name>Where:
<plugin-name>: Registry name of the plugin
Error: chmod ... no such file or directory on macOS
chmod ... no such file or directory on macOSCause: macOS Gatekeeper is preventing the downloaded plugin binary from being set as executable. The binary exists on disk but the OS security layer blocks the operation.
To recover on macOS:
-
Manually clear the quarantine attribute and set permissions:
xattr -d com.apple.quarantine ~/.jfrog/plugins/<plugin-name>/bin/<plugin-name> chmod +x ~/.jfrog/plugins/<plugin-name>/bin/<plugin-name>Where:
<plugin-name>: Plugin name
For example:
xattr -d com.apple.quarantine ~/.jfrog/plugins/rt-fs/bin/rt-fs chmod +x ~/.jfrog/plugins/rt-fs/bin/rt-fs -
If the plugin directory was deleted by the failed install, re-run
jf plugin install <plugin-name>and immediately apply the fix above before the CLI cleans up. -
Contact the plugin author to request that they notarize their macOS binaries.
Startup [Error] messages appear before every command
[Error] messages appear before every commandCause: A previously installed plugin is corrupt, incompatible with the current JFrog CLI version, or blocked by the OS.
To remove a broken plugin:
-
Uninstall and reinstall:
jf plugin uninstall <plugin-name> jf plugin install <plugin-name>Where:
<plugin-name>: Plugin to replace
-
If the plugin directory no longer appears under
~/.jfrog/plugins/but errors persist, checkplugins.ymlfor stale entries:cat ~/.jfrog/plugins/plugins.yml
Updated 13 days ago
