Create a marketplace changedplugins/create-marketplace
Nearest release: v2.1.287, published 6 hours before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 1 Oct 2026 23:38 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 20 Oct 2026 18:37 UTC.
Upstream edited
Recorded here
Lines+94added
Lines−96removed
From line
6
where the diff opens
First seen
25 Sep 2026
this site's first read of the page
Recorded edits7to this page, all time
The whole hunk
from line 6, old and new numbered
/
from line 6
66
77Create your own marketplace when you want a group you choose, such as your team or your organization, to install your plugins and keep receiving your updates from a catalog you control. The repository can be private, it can list as many plugins as you like, and an administrator can [require it on every machine](/docs/en/plugins/org).
88
9<Note>
10 These cases are covered on other pages:
9> [!NOTE]
10>
11> These cases are covered on other pages:
12>
13> * **Sharing one plugin with a few people**: send them the plugin's directory or a `.zip` of it. See [Share a plugin without a marketplace](/docs/en/plugins/publish#share-a-plugin-without-a-marketplace).
14> * **Offering a plugin to everyone**: submit it to Anthropic's directory. See [Submit to Anthropic's directory](/docs/en/plugins/publish#submit-to-anthropics-directory).
15> * **Using a plugin yourself**: load it with `--plugin-dir` or save it in your skills directory. See [Develop without a marketplace](/docs/en/plugins/create#develop-without-a-marketplace).
1116
12 * **Sharing one plugin with a few people**: send them the plugin's directory or a `.zip` of it. See [Share a plugin without a marketplace](/docs/en/plugins/publish#share-a-plugin-without-a-marketplace).
13 * **Offering a plugin to everyone**: submit it to Anthropic's directory. See [Submit to Anthropic's directory](/docs/en/plugins/publish#submit-to-anthropics-directory).
14 * **Using a plugin yourself**: load it with `--plugin-dir` or save it in your skills directory. See [Develop without a marketplace](/docs/en/plugins/create#develop-without-a-marketplace).
15</Note>
16
1717Start with [Create a marketplace](#create-a-marketplace) to build one on your own machine and install a plugin from it, then [add more plugin entries](#add-plugin-entries).
1818
1919## Create a marketplace
from line 22
2222
2323You need a plugin to list. The example uses `my-first-plugin` from [Create your first plugin](/docs/en/plugins/create#create-your-first-plugin), a plugin with one skill that you run as `/my-first-plugin:hello`; build it first if you don't have a plugin yet. To use a plugin of your own instead, substitute its directory and its `name` wherever the steps say `my-first-plugin`. For what a plugin directory can contain, see the [plugin directory explorer](/docs/en/plugins/components#explore-the-plugin-directory).
2424
25<Steps>
26 <Step title="Set up the marketplace directory">
27 A marketplace is a directory with a `.claude-plugin/marketplace.json` file, plus the plugins it lists. Create the marketplace directory and its `.claude-plugin/` folder, then copy your plugin in under `plugins/`:
25**1. Set up the marketplace directory**
2826
29 ```bash theme={null}
30 mkdir -p my-marketplace/.claude-plugin my-marketplace/plugins
31 cp -r my-first-plugin my-marketplace/plugins/
32 ```
27A marketplace is a directory with a `.claude-plugin/marketplace.json` file, plus the plugins it lists. Create the marketplace directory and its `.claude-plugin/` folder, then copy your plugin in under `plugins/`:
3328
34 Check that the plugin is valid where it now sits, so that any later error is about the marketplace and not the plugin:
29```bash theme={null}
30mkdir -p my-marketplace/.claude-plugin my-marketplace/plugins
31cp -r my-first-plugin my-marketplace/plugins/
32```
3533
36 ```bash theme={null}
37 claude plugin validate ./my-marketplace/plugins/my-first-plugin
38 ```
34Check that the plugin is valid where it now sits, so that any later error is about the marketplace and not the plugin:
3935
40 The last line of the output reads `✔ Validation passed`.
41 </Step>
36```bash theme={null}
37claude plugin validate ./my-marketplace/plugins/my-first-plugin
38```
4239
43 <Step title="Create the marketplace file">
44 Save `marketplace.json` at `my-marketplace/.claude-plugin/marketplace.json`. The file requires a `name`, an `owner`, and a `plugins` array.
40The last line of the output reads `✔ Validation passed`.
4541
46 Each object in `plugins` is a plugin entry and needs a `name` and a `source`. Write the entry's `source` as a path from the marketplace root. The root is `my-marketplace/`, the directory that contains `.claude-plugin/`.
42**2. Create the marketplace file**
4743
48 ```json my-marketplace/.claude-plugin/marketplace.json theme={null}
44Save `marketplace.json` at `my-marketplace/.claude-plugin/marketplace.json`. The file requires a `name`, an `owner`, and a `plugins` array.
45
46Each object in `plugins` is a plugin entry and needs a `name` and a `source`. Write the entry's `source` as a path from the marketplace root. The root is `my-marketplace/`, the directory that contains `.claude-plugin/`.
47
48```json my-marketplace/.claude-plugin/marketplace.json theme={null}
49{
50 "name": "my-marketplace",
51 "description": "Plugins for my team",
52 "owner": {
53 "name": "Your Name"
54 },
55 "plugins": [
4956 {
50 "name": "my-marketplace",
51 "description": "Plugins for my team",
52 "owner": {
53 "name": "Your Name"
54 },
55 "plugins": [
56 {
57 "name": "my-first-plugin",
58 "source": "./plugins/my-first-plugin",
59 "description": "A greeting plugin to learn the basics"
60 }
61 ]
57 "name": "my-first-plugin",
58 "source": "./plugins/my-first-plugin",
59 "description": "A greeting plugin to learn the basics"
6260 }
63 ```
64 </Step>
61 ]
62}
63```
6564
66 <Step title="Validate the marketplace">
67 Run `claude plugin validate` on the marketplace directory to check the JSON syntax, the required fields, and each plugin entry in its `.claude-plugin/marketplace.json`.
65**3. Validate the marketplace**
6866
69 ```bash theme={null}
70 claude plugin validate ./my-marketplace
71 ```
67Run `claude plugin validate` on the marketplace directory to check the JSON syntax, the required fields, and each plugin entry in its `.claude-plugin/marketplace.json`.
7268
73 For the file as written in step 2, the last line of the output reads `✔ Validation passed`.
74 </Step>
69```bash theme={null}
70claude plugin validate ./my-marketplace
71```
7572
76 <Step title="Add the marketplace and install the plugin">
77 Register the directory as a marketplace.
73For the file as written in step 2, the last line of the output reads `✔ Validation passed`.
7874
79 ```bash theme={null}
80 claude plugin marketplace add ./my-marketplace
81 ```
75**4. Add the marketplace and install the plugin**
8276
83 The command prints `✔ Successfully added marketplace: my-marketplace (declared in user settings)`, which means the marketplace is recorded in your user settings file.
77Register the directory as a marketplace.
8478
85 Install the plugin. The install id is the entry's `name`, an `@`, and the marketplace `name`.
79```bash theme={null}
80claude plugin marketplace add ./my-marketplace
81```
8682
87 ```bash theme={null}
88 claude plugin install my-first-plugin@my-marketplace
89 ```
83The command prints `✔ Successfully added marketplace: my-marketplace (declared in user settings)`, which means the marketplace is recorded in your user settings file.
9084
91 The command prints `✔ Successfully installed plugin: my-first-plugin@my-marketplace (scope: user)`.
85Install the plugin. The install id is the entry's `name`, an `@`, and the marketplace `name`.
9286
93 Inside a session, `/plugin marketplace add ./my-marketplace` registers the marketplace the same way. `/plugin install my-first-plugin@my-marketplace` opens the plugin's details in the `/plugin` panel, where you install it. For that flow, see [Install and manage plugins](/docs/en/plugins/install).
94 </Step>
87```bash theme={null}
88claude plugin install my-first-plugin@my-marketplace
89```
9590
96 <Step title="Confirm the plugin loaded">
97 List installed plugins.
91The command prints `✔ Successfully installed plugin: my-first-plugin@my-marketplace (scope: user)`.
9892
99 ```bash theme={null}
100 claude plugin list
101 ```
93Inside a session, `/plugin marketplace add ./my-marketplace` registers the marketplace the same way. `/plugin install my-first-plugin@my-marketplace` opens the plugin's details in the `/plugin` panel, where you install it. For that flow, see [Install and manage plugins](/docs/en/plugins/install).
10294
103 The output lists `my-first-plugin@my-marketplace` with `Status: ✔ enabled`.
95**5. Confirm the plugin loaded**
10496
105 To see what the plugin loaded, show its details.
97List installed plugins.
10698
107 ```bash theme={null}
108 claude plugin details my-first-plugin
109 ```
99```bash theme={null}
100claude plugin list
101```
110102
111 The `Component inventory` section reads `Skills (1) hello`.
103The output lists `my-first-plugin@my-marketplace` with `Status: ✔ enabled`.
112104
113 To run the skill, start a session and enter `/my-first-plugin:hello`. Claude greets you. The command has the plugin's name as a prefix, as every plugin skill's name does.
114 </Step>
115</Steps>
105To see what the plugin loaded, show its details.
106
107```bash theme={null}
108claude plugin details my-first-plugin
109```
110
111The `Component inventory` section reads `Skills (1) hello`.
112
113To run the skill, start a session and enter `/my-first-plugin:hello`. Claude greets you. The command has the plugin's name as a prefix, as every plugin skill's name does.
116114
117115## Add plugin entries
118116
No line in this hunk matches that.