# rpk plugin

> For the complete documentation index, see [llms.txt](https://docs.redpanda.com/llms.txt). Component-specific: [cloud-data-platform-full.txt](https://docs.redpanda.com/cloud-data-platform-full.txt)

---
title: rpk plugin
latest-operator-version: v26.1.4
latest-console-tag: v3.7.3
latest-connect-version: 4.93.0
latest-redpanda-tag: v26.1.9
docname: rpk/rpk-plugin/rpk-plugin
page-component-name: cloud-data-platform
page-version: master
page-component-version: master
page-component-title: Cloud
page-relative-src-path: rpk/rpk-plugin/rpk-plugin.adoc
page-edit-url: https://github.com/redpanda-data/cloud-docs/edit/main/modules/reference/pages/rpk/rpk-plugin/rpk-plugin.adoc
page-git-created-date: "2024-07-25"
page-git-modified-date: "2026-05-26"
---

<!-- Source: https://docs.redpanda.com/cloud-data-platform/reference/rpk/rpk-plugin/rpk-plugin.md -->

List, download, update, and remove `rpk` plugins. Plugins augment `rpk` with new commands.

For a plugin to be used, it must be in `$HOME/.local/bin` or somewhere discoverable by `rpk` in your `$PATH`. All plugins follow a defined naming scheme:

```bash
.rpk-<name>
.rpk.ac-<name>
```

All plugins are prefixed with either `.rpk-` or `.rpk.ac-.` When `rpk` starts up, it searches all directories in your `$PATH` for any executable binary that begins with either of those prefixes. For any binary it finds, `rpk` adds a command for that name to the `rpk` command space itself.

No plugin name can shadow an existing `rpk` command, and only one plugin can exist under a given name at once. Plugins are added to the `rpk` command space on a first-seen basis. If you have two plugins `rpk-foo`, and the second is discovered later on in the `$PATH` directories, then only the first will be used. The second will be ignored.

Plugins that have an `.rpk.ac-` prefix indicate that they support the `--help-autocomplete` flag. If `rpk` sees this, `rpk` will exec the plugin with that flag when `rpk` starts up, and the plugin will return all commands it supports as well as short and long help test for each command. `rpk` uses this return to build a shadow command space within `rpk` itself so that it looks as if the plugin exists within `rpk`. This is particularly useful if you enable autocompletion.

The expected return for plugins from `--help-autocomplete` is an array of the following:

```c
type pluginHelp struct {
Path string `json:"path,omitempty"`
Short string `json:"short,omitempty"`
Long string `json:"long,omitempty"`
Example string `json:"example,omitempty"`
Args []string `json:"args,omitempty"`
}
```

where `path` is an underscore delimited argument path to a command. For example, `foo_bar_baz` corresponds to the command `rpk foo bar baz`.

## [](#usage)Usage

```bash
rpk plugin [command]
```

## [](#flags)Flags

| Value | Type | Description |
| --- | --- | --- |
| -h, --help | - | Help for plugin. |
| --config | string | Redpanda or rpk config file; default search paths are /var/lib/redpanda/.config/rpk/rpk.yaml, $PWD/redpanda.yaml, and /etc/redpanda/redpanda.yaml. |
| -X, --config-opt | stringArray | Override rpk configuration settings. See rpk -X or execute rpk -X help for inline detail or rpk -X list for terser detail. |
| --profile | string | Profile to use. See rpk profile for more details. |
| -v, --verbose | - | Enable verbose logging. |