@phuc1403/musketeer 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +49 -49
- package/manifest.json +333 -301
- package/package.json +1 -1
- package/template/.claude/agents/code-reviewer.md +182 -166
- package/template/.claude/hooks/git-skill-reminder.cjs +53 -0
- package/template/.claude/hooks/inject-design-docs.cjs +13 -13
- package/template/.claude/hooks/inject-ubiquitous-language.cjs +52 -0
- package/template/.claude/hooks/lib/colors.cjs +180 -122
- package/template/.claude/hooks/lib/transcript-parser.cjs +300 -277
- package/template/.claude/skills/code-review/SKILL.md +201 -54
- package/template/.claude/skills/code-review/references/checklist-workflow.md +96 -0
- package/template/.claude/skills/code-review/references/checklists/api.md +52 -52
- package/template/.claude/skills/code-review/references/checklists/base.md +100 -100
- package/template/.claude/skills/code-review/references/checklists/web-app.md +54 -54
- package/template/.claude/skills/code-review/references/code-review-reception.md +113 -0
- package/template/.claude/skills/code-review/references/codebase-scan-workflow.md +30 -0
- package/template/.claude/skills/code-review/references/edge-case-scouting.md +119 -0
- package/template/.claude/skills/code-review/references/input-mode-resolution.md +135 -0
- package/template/.claude/skills/code-review/references/parallel-review-workflow.md +76 -0
- package/template/.claude/skills/code-review/references/requesting-code-review.md +116 -0
- package/template/.claude/skills/code-review/references/spec-compliance-review.md +43 -0
- package/template/.claude/skills/code-review/references/task-management-reviews.md +140 -0
- package/template/.claude/skills/code-review/references/verification-before-completion.md +139 -0
- package/template/.claude/skills/context-map/SKILL.md +1 -1
- package/template/.claude/skills/git/SKILL.md +131 -115
- package/template/.claude/skills/git/references/branch-management.md +88 -88
- package/template/.claude/skills/git/references/commit-standards.md +46 -46
- package/template/.claude/skills/git/references/context-efficiency.md +54 -0
- package/template/.claude/skills/git/references/gh-cli-guide.md +109 -109
- package/template/.claude/skills/git/references/safety-protocols.md +69 -69
- package/template/.claude/skills/git/references/workflow-commit.md +58 -58
- package/template/.claude/skills/git/references/workflow-merge-pr.md +136 -0
- package/template/.claude/skills/git/references/workflow-merge.md +48 -48
- package/template/.claude/skills/git/references/workflow-pr.md +58 -58
- package/template/.claude/skills/git/references/workflow-push.md +52 -52
- package/template/.claude/skills/knowledge-crunching/SKILL.md +56 -92
- package/template/.claude/skills/knowledge-crunching/assets/ubiquitous-language.template.md +3 -0
- package/template/.claude/skills/skill-creator/LICENSE.txt +201 -201
- package/template/.claude/skills/skill-creator/SKILL.md +154 -149
- package/template/.claude/skills/skill-creator/agents/analyzer.md +274 -274
- package/template/.claude/skills/skill-creator/agents/comparator.md +202 -202
- package/template/.claude/skills/skill-creator/agents/grader.md +223 -223
- package/template/.claude/skills/skill-creator/assets/eval_review.html +146 -146
- package/template/.claude/skills/skill-creator/eval-viewer/generate_review.py +471 -471
- package/template/.claude/skills/skill-creator/eval-viewer/viewer.html +1325 -1325
- package/template/.claude/skills/skill-creator/references/benchmark-optimization-guide.md +86 -86
- package/template/.claude/skills/skill-creator/references/distribution-guide.md +79 -79
- package/template/.claude/skills/skill-creator/references/eval-infrastructure-guide.md +129 -129
- package/template/.claude/skills/skill-creator/references/eval-schemas.md +121 -121
- package/template/.claude/skills/skill-creator/references/mcp-skills-integration.md +71 -71
- package/template/.claude/skills/skill-creator/references/metadata-quality-criteria.md +94 -94
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-hosting.md +104 -104
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-overview.md +89 -89
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-schema.md +93 -93
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-sources.md +103 -103
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +76 -76
- package/template/.claude/skills/skill-creator/references/script-quality-criteria.md +106 -106
- package/template/.claude/skills/skill-creator/references/skill-anatomy-and-requirements.md +77 -77
- package/template/.claude/skills/skill-creator/references/skill-creation-workflow.md +152 -151
- package/template/.claude/skills/skill-creator/references/skill-design-patterns.md +75 -75
- package/template/.claude/skills/skill-creator/references/skillmark-benchmark-criteria.md +102 -102
- package/template/.claude/skills/skill-creator/references/structure-organization-criteria.md +114 -114
- package/template/.claude/skills/skill-creator/references/testing-and-iteration.md +78 -78
- package/template/.claude/skills/skill-creator/references/token-efficiency-criteria.md +74 -74
- package/template/.claude/skills/skill-creator/references/troubleshooting-guide.md +81 -81
- package/template/.claude/skills/skill-creator/references/validation-checklist.md +83 -83
- package/template/.claude/skills/skill-creator/references/writing-effective-instructions.md +88 -88
- package/template/.claude/skills/skill-creator/references/yaml-frontmatter-reference.md +92 -92
- package/template/.claude/skills/skill-creator/scripts/aggregate_benchmark.py +401 -401
- package/template/.claude/skills/skill-creator/scripts/encoding_utils.py +36 -36
- package/template/.claude/skills/skill-creator/scripts/generate_report.py +326 -326
- package/template/.claude/skills/skill-creator/scripts/improve_description.py +248 -248
- package/template/.claude/skills/skill-creator/scripts/init_skill.py +360 -360
- package/template/.claude/skills/skill-creator/scripts/package_skill.py +143 -143
- package/template/.claude/skills/skill-creator/scripts/quick_validate.py +110 -110
- package/template/.claude/skills/skill-creator/scripts/run_eval.py +310 -310
- package/template/.claude/skills/skill-creator/scripts/run_loop.py +332 -332
- package/template/.claude/skills/skill-creator/scripts/utils.py +47 -47
- package/template/.claude/statusline.cjs +0 -0
- package/template/.claude/hooks/inject-context.cjs +0 -52
- package/template/.claude/skills/code-review/references/adversarial-review.md +0 -223
- package/template/.claude/skills/knowledge-crunching/assets/context.template.md +0 -59
- package/template/.claude/skills/knowledge-crunching/references/crunching-dialogue.md +0 -113
- /package/template/.claude/hooks/{usage-context-awareness.cjs → usage-quota-cache-refresh.cjs} +0 -0
|
@@ -1,104 +1,104 @@
|
|
|
1
|
-
# Plugin Marketplace Hosting & Distribution
|
|
2
|
-
|
|
3
|
-
## GitHub (Recommended)
|
|
4
|
-
|
|
5
|
-
1. Create repository for marketplace
|
|
6
|
-
2. Add `.claude-plugin/marketplace.json` with plugin definitions
|
|
7
|
-
3. Share: users add via `/plugin marketplace add owner/repo`
|
|
8
|
-
|
|
9
|
-
Benefits: version control, issue tracking, team collaboration.
|
|
10
|
-
|
|
11
|
-
## Other Git Services (GitLab, Bitbucket, Self-Hosted)
|
|
12
|
-
|
|
13
|
-
```shell
|
|
14
|
-
/plugin marketplace add https://gitlab.com/company/plugins.git
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Private Repositories
|
|
18
|
-
|
|
19
|
-
### Manual Install/Update
|
|
20
|
-
Uses existing git credential helpers. If `git clone` works in terminal, it works in Claude Code.
|
|
21
|
-
Common helpers: `gh auth login` (GitHub), macOS Keychain, `git-credential-store`.
|
|
22
|
-
|
|
23
|
-
### Background Auto-Updates
|
|
24
|
-
Runs at startup without credential helpers. Set auth tokens in environment:
|
|
25
|
-
|
|
26
|
-
| Provider | Env Variables | Notes |
|
|
27
|
-
|----------|--------------|-------|
|
|
28
|
-
| GitHub | `GITHUB_TOKEN` or `GH_TOKEN` | PAT or GitHub App token |
|
|
29
|
-
| GitLab | `GITLAB_TOKEN` or `GL_TOKEN` | PAT or project token |
|
|
30
|
-
| Bitbucket | `BITBUCKET_TOKEN` | App password or repo token |
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxx
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
CI/CD: configure as secret env variable. GitHub Actions auto-provides `GITHUB_TOKEN`.
|
|
37
|
-
|
|
38
|
-
## Team Configuration
|
|
39
|
-
|
|
40
|
-
### Auto-Prompt Marketplace Install
|
|
41
|
-
|
|
42
|
-
Add to `.claude/settings.json` in your repo:
|
|
43
|
-
|
|
44
|
-
```json
|
|
45
|
-
{
|
|
46
|
-
"extraKnownMarketplaces": {
|
|
47
|
-
"company-tools": {
|
|
48
|
-
"source": { "source": "github", "repo": "your-org/claude-plugins" }
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### Default-Enabled Plugins
|
|
55
|
-
|
|
56
|
-
```json
|
|
57
|
-
{
|
|
58
|
-
"enabledPlugins": {
|
|
59
|
-
"code-formatter@company-tools": true,
|
|
60
|
-
"deployment-tools@company-tools": true
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
## Managed Marketplace Restrictions
|
|
66
|
-
|
|
67
|
-
Admins restrict allowed marketplaces via `strictKnownMarketplaces` in managed settings:
|
|
68
|
-
|
|
69
|
-
| Value | Behavior |
|
|
70
|
-
|-------|----------|
|
|
71
|
-
| Undefined | No restrictions, users add any marketplace |
|
|
72
|
-
| Empty `[]` | Complete lockdown, no new marketplaces |
|
|
73
|
-
| List of sources | Users can only add matching marketplaces |
|
|
74
|
-
|
|
75
|
-
### Allow Specific Only
|
|
76
|
-
|
|
77
|
-
```json
|
|
78
|
-
{
|
|
79
|
-
"strictKnownMarketplaces": [
|
|
80
|
-
{ "source": "github", "repo": "acme-corp/approved-plugins" },
|
|
81
|
-
{ "source": "github", "repo": "acme-corp/security-tools", "ref": "v2.0" },
|
|
82
|
-
{ "source": "url", "url": "https://plugins.example.com/marketplace.json" }
|
|
83
|
-
]
|
|
84
|
-
}
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
### Allow All from Internal Server (Regex)
|
|
88
|
-
|
|
89
|
-
```json
|
|
90
|
-
{
|
|
91
|
-
"strictKnownMarketplaces": [
|
|
92
|
-
{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }
|
|
93
|
-
]
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**Matching rules:** Exact match for most types. GitHub: `repo` required, `ref`/`path` must match if specified. URL: full URL exact match. `hostPattern`: regex against host. Validated before any network/filesystem ops. Cannot be overridden by user/project settings.
|
|
98
|
-
|
|
99
|
-
## Local Testing
|
|
100
|
-
|
|
101
|
-
```shell
|
|
102
|
-
/plugin marketplace add ./my-local-marketplace
|
|
103
|
-
/plugin install test-plugin@my-local-marketplace
|
|
104
|
-
```
|
|
1
|
+
# Plugin Marketplace Hosting & Distribution
|
|
2
|
+
|
|
3
|
+
## GitHub (Recommended)
|
|
4
|
+
|
|
5
|
+
1. Create repository for marketplace
|
|
6
|
+
2. Add `.claude-plugin/marketplace.json` with plugin definitions
|
|
7
|
+
3. Share: users add via `/plugin marketplace add owner/repo`
|
|
8
|
+
|
|
9
|
+
Benefits: version control, issue tracking, team collaboration.
|
|
10
|
+
|
|
11
|
+
## Other Git Services (GitLab, Bitbucket, Self-Hosted)
|
|
12
|
+
|
|
13
|
+
```shell
|
|
14
|
+
/plugin marketplace add https://gitlab.com/company/plugins.git
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Private Repositories
|
|
18
|
+
|
|
19
|
+
### Manual Install/Update
|
|
20
|
+
Uses existing git credential helpers. If `git clone` works in terminal, it works in Claude Code.
|
|
21
|
+
Common helpers: `gh auth login` (GitHub), macOS Keychain, `git-credential-store`.
|
|
22
|
+
|
|
23
|
+
### Background Auto-Updates
|
|
24
|
+
Runs at startup without credential helpers. Set auth tokens in environment:
|
|
25
|
+
|
|
26
|
+
| Provider | Env Variables | Notes |
|
|
27
|
+
|----------|--------------|-------|
|
|
28
|
+
| GitHub | `GITHUB_TOKEN` or `GH_TOKEN` | PAT or GitHub App token |
|
|
29
|
+
| GitLab | `GITLAB_TOKEN` or `GL_TOKEN` | PAT or project token |
|
|
30
|
+
| Bitbucket | `BITBUCKET_TOKEN` | App password or repo token |
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxx
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
CI/CD: configure as secret env variable. GitHub Actions auto-provides `GITHUB_TOKEN`.
|
|
37
|
+
|
|
38
|
+
## Team Configuration
|
|
39
|
+
|
|
40
|
+
### Auto-Prompt Marketplace Install
|
|
41
|
+
|
|
42
|
+
Add to `.claude/settings.json` in your repo:
|
|
43
|
+
|
|
44
|
+
```json
|
|
45
|
+
{
|
|
46
|
+
"extraKnownMarketplaces": {
|
|
47
|
+
"company-tools": {
|
|
48
|
+
"source": { "source": "github", "repo": "your-org/claude-plugins" }
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Default-Enabled Plugins
|
|
55
|
+
|
|
56
|
+
```json
|
|
57
|
+
{
|
|
58
|
+
"enabledPlugins": {
|
|
59
|
+
"code-formatter@company-tools": true,
|
|
60
|
+
"deployment-tools@company-tools": true
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Managed Marketplace Restrictions
|
|
66
|
+
|
|
67
|
+
Admins restrict allowed marketplaces via `strictKnownMarketplaces` in managed settings:
|
|
68
|
+
|
|
69
|
+
| Value | Behavior |
|
|
70
|
+
|-------|----------|
|
|
71
|
+
| Undefined | No restrictions, users add any marketplace |
|
|
72
|
+
| Empty `[]` | Complete lockdown, no new marketplaces |
|
|
73
|
+
| List of sources | Users can only add matching marketplaces |
|
|
74
|
+
|
|
75
|
+
### Allow Specific Only
|
|
76
|
+
|
|
77
|
+
```json
|
|
78
|
+
{
|
|
79
|
+
"strictKnownMarketplaces": [
|
|
80
|
+
{ "source": "github", "repo": "acme-corp/approved-plugins" },
|
|
81
|
+
{ "source": "github", "repo": "acme-corp/security-tools", "ref": "v2.0" },
|
|
82
|
+
{ "source": "url", "url": "https://plugins.example.com/marketplace.json" }
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Allow All from Internal Server (Regex)
|
|
88
|
+
|
|
89
|
+
```json
|
|
90
|
+
{
|
|
91
|
+
"strictKnownMarketplaces": [
|
|
92
|
+
{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }
|
|
93
|
+
]
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Matching rules:** Exact match for most types. GitHub: `repo` required, `ref`/`path` must match if specified. URL: full URL exact match. `hostPattern`: regex against host. Validated before any network/filesystem ops. Cannot be overridden by user/project settings.
|
|
98
|
+
|
|
99
|
+
## Local Testing
|
|
100
|
+
|
|
101
|
+
```shell
|
|
102
|
+
/plugin marketplace add ./my-local-marketplace
|
|
103
|
+
/plugin install test-plugin@my-local-marketplace
|
|
104
|
+
```
|
|
@@ -1,89 +1,89 @@
|
|
|
1
|
-
# Plugin Marketplaces Overview
|
|
2
|
-
|
|
3
|
-
Plugin marketplace = catalog distributing Claude Code extensions across teams/communities.
|
|
4
|
-
Provides centralized discovery, version tracking, automatic updates, multiple source types.
|
|
5
|
-
|
|
6
|
-
## Creation & Distribution Flow
|
|
7
|
-
|
|
8
|
-
1. **Create plugins** — commands, agents, hooks, MCP servers, LSP servers (see [Plugins docs](https://code.claude.com/docs/en/plugins.md))
|
|
9
|
-
2. **Create marketplace file** — `.claude-plugin/marketplace.json` listing plugins + sources
|
|
10
|
-
3. **Host marketplace** — push to GitHub/GitLab/git host
|
|
11
|
-
4. **Share** — users add via `/plugin marketplace add`, install via `/plugin install`
|
|
12
|
-
|
|
13
|
-
Updates: push changes to repo → users refresh via `/plugin marketplace update`.
|
|
14
|
-
|
|
15
|
-
## Directory Structure
|
|
16
|
-
|
|
17
|
-
```
|
|
18
|
-
my-marketplace/
|
|
19
|
-
├── .claude-plugin/
|
|
20
|
-
│ └── marketplace.json # Marketplace catalog (required)
|
|
21
|
-
└── plugins/
|
|
22
|
-
└── review-plugin/
|
|
23
|
-
├── .claude-plugin/
|
|
24
|
-
│ └── plugin.json # Plugin manifest
|
|
25
|
-
└── skills/
|
|
26
|
-
└── review/
|
|
27
|
-
└── SKILL.md # Skill definition
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Walkthrough: Local Marketplace
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
# 1. Create structure
|
|
34
|
-
mkdir -p my-marketplace/.claude-plugin
|
|
35
|
-
mkdir -p my-marketplace/plugins/review-plugin/.claude-plugin
|
|
36
|
-
mkdir -p my-marketplace/plugins/review-plugin/skills/review
|
|
37
|
-
|
|
38
|
-
# 2. Create skill (SKILL.md), plugin manifest (plugin.json), marketplace catalog (marketplace.json)
|
|
39
|
-
|
|
40
|
-
# 3. Add and install
|
|
41
|
-
/plugin marketplace add ./my-marketplace
|
|
42
|
-
/plugin install review-plugin@my-plugins
|
|
43
|
-
|
|
44
|
-
# 4. Test
|
|
45
|
-
/review
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Plugin Installation Behavior
|
|
49
|
-
|
|
50
|
-
Plugins copied to cache location on install. Cannot reference files outside plugin directory with `../`.
|
|
51
|
-
Workarounds: symlinks (followed during copying) or restructure so shared files are inside plugin source path.
|
|
52
|
-
|
|
53
|
-
## User Commands
|
|
54
|
-
|
|
55
|
-
| Command | Purpose |
|
|
56
|
-
|---------|---------|
|
|
57
|
-
| `/plugin marketplace add <source>` | Add marketplace |
|
|
58
|
-
| `/plugin marketplace update` | Refresh marketplace |
|
|
59
|
-
| `/plugin install <name>@<marketplace>` | Install plugin |
|
|
60
|
-
| `/plugin validate .` | Validate marketplace JSON |
|
|
61
|
-
| `claude plugin validate .` | CLI validation |
|
|
62
|
-
|
|
63
|
-
## Validation & Testing
|
|
64
|
-
|
|
65
|
-
```bash
|
|
66
|
-
# Validate marketplace JSON
|
|
67
|
-
claude plugin validate .
|
|
68
|
-
# or within Claude Code:
|
|
69
|
-
/plugin validate .
|
|
70
|
-
|
|
71
|
-
# Test locally before distribution
|
|
72
|
-
/plugin marketplace add ./my-local-marketplace
|
|
73
|
-
/plugin install test-plugin@my-local-marketplace
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
## Related References
|
|
77
|
-
|
|
78
|
-
- **Schema:** `references/plugin-marketplace-schema.md`
|
|
79
|
-
- **Sources:** `references/plugin-marketplace-sources.md`
|
|
80
|
-
- **Hosting:** `references/plugin-marketplace-hosting.md`
|
|
81
|
-
- **Troubleshooting:** `references/plugin-marketplace-troubleshooting.md`
|
|
82
|
-
|
|
83
|
-
## Official Documentation
|
|
84
|
-
|
|
85
|
-
- [Plugin Marketplaces](https://code.claude.com/docs/en/plugin-marketplaces.md)
|
|
86
|
-
- [Discover Plugins](https://code.claude.com/docs/en/discover-plugins.md)
|
|
87
|
-
- [Create Plugins](https://code.claude.com/docs/en/plugins.md)
|
|
88
|
-
- [Plugins Reference](https://code.claude.com/docs/en/plugins-reference.md)
|
|
89
|
-
- [Plugin Settings](https://code.claude.com/docs/en/settings.md#plugin-settings)
|
|
1
|
+
# Plugin Marketplaces Overview
|
|
2
|
+
|
|
3
|
+
Plugin marketplace = catalog distributing Claude Code extensions across teams/communities.
|
|
4
|
+
Provides centralized discovery, version tracking, automatic updates, multiple source types.
|
|
5
|
+
|
|
6
|
+
## Creation & Distribution Flow
|
|
7
|
+
|
|
8
|
+
1. **Create plugins** — commands, agents, hooks, MCP servers, LSP servers (see [Plugins docs](https://code.claude.com/docs/en/plugins.md))
|
|
9
|
+
2. **Create marketplace file** — `.claude-plugin/marketplace.json` listing plugins + sources
|
|
10
|
+
3. **Host marketplace** — push to GitHub/GitLab/git host
|
|
11
|
+
4. **Share** — users add via `/plugin marketplace add`, install via `/plugin install`
|
|
12
|
+
|
|
13
|
+
Updates: push changes to repo → users refresh via `/plugin marketplace update`.
|
|
14
|
+
|
|
15
|
+
## Directory Structure
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
my-marketplace/
|
|
19
|
+
├── .claude-plugin/
|
|
20
|
+
│ └── marketplace.json # Marketplace catalog (required)
|
|
21
|
+
└── plugins/
|
|
22
|
+
└── review-plugin/
|
|
23
|
+
├── .claude-plugin/
|
|
24
|
+
│ └── plugin.json # Plugin manifest
|
|
25
|
+
└── skills/
|
|
26
|
+
└── review/
|
|
27
|
+
└── SKILL.md # Skill definition
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Walkthrough: Local Marketplace
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# 1. Create structure
|
|
34
|
+
mkdir -p my-marketplace/.claude-plugin
|
|
35
|
+
mkdir -p my-marketplace/plugins/review-plugin/.claude-plugin
|
|
36
|
+
mkdir -p my-marketplace/plugins/review-plugin/skills/review
|
|
37
|
+
|
|
38
|
+
# 2. Create skill (SKILL.md), plugin manifest (plugin.json), marketplace catalog (marketplace.json)
|
|
39
|
+
|
|
40
|
+
# 3. Add and install
|
|
41
|
+
/plugin marketplace add ./my-marketplace
|
|
42
|
+
/plugin install review-plugin@my-plugins
|
|
43
|
+
|
|
44
|
+
# 4. Test
|
|
45
|
+
/review
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Plugin Installation Behavior
|
|
49
|
+
|
|
50
|
+
Plugins copied to cache location on install. Cannot reference files outside plugin directory with `../`.
|
|
51
|
+
Workarounds: symlinks (followed during copying) or restructure so shared files are inside plugin source path.
|
|
52
|
+
|
|
53
|
+
## User Commands
|
|
54
|
+
|
|
55
|
+
| Command | Purpose |
|
|
56
|
+
|---------|---------|
|
|
57
|
+
| `/plugin marketplace add <source>` | Add marketplace |
|
|
58
|
+
| `/plugin marketplace update` | Refresh marketplace |
|
|
59
|
+
| `/plugin install <name>@<marketplace>` | Install plugin |
|
|
60
|
+
| `/plugin validate .` | Validate marketplace JSON |
|
|
61
|
+
| `claude plugin validate .` | CLI validation |
|
|
62
|
+
|
|
63
|
+
## Validation & Testing
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# Validate marketplace JSON
|
|
67
|
+
claude plugin validate .
|
|
68
|
+
# or within Claude Code:
|
|
69
|
+
/plugin validate .
|
|
70
|
+
|
|
71
|
+
# Test locally before distribution
|
|
72
|
+
/plugin marketplace add ./my-local-marketplace
|
|
73
|
+
/plugin install test-plugin@my-local-marketplace
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Related References
|
|
77
|
+
|
|
78
|
+
- **Schema:** `references/plugin-marketplace-schema.md`
|
|
79
|
+
- **Sources:** `references/plugin-marketplace-sources.md`
|
|
80
|
+
- **Hosting:** `references/plugin-marketplace-hosting.md`
|
|
81
|
+
- **Troubleshooting:** `references/plugin-marketplace-troubleshooting.md`
|
|
82
|
+
|
|
83
|
+
## Official Documentation
|
|
84
|
+
|
|
85
|
+
- [Plugin Marketplaces](https://code.claude.com/docs/en/plugin-marketplaces.md)
|
|
86
|
+
- [Discover Plugins](https://code.claude.com/docs/en/discover-plugins.md)
|
|
87
|
+
- [Create Plugins](https://code.claude.com/docs/en/plugins.md)
|
|
88
|
+
- [Plugins Reference](https://code.claude.com/docs/en/plugins-reference.md)
|
|
89
|
+
- [Plugin Settings](https://code.claude.com/docs/en/settings.md#plugin-settings)
|
|
@@ -1,93 +1,93 @@
|
|
|
1
|
-
# Plugin Marketplace Schema
|
|
2
|
-
|
|
3
|
-
Full JSON schema for `.claude-plugin/marketplace.json`.
|
|
4
|
-
|
|
5
|
-
## Required Top-Level Fields
|
|
6
|
-
|
|
7
|
-
| Field | Type | Description | Example |
|
|
8
|
-
|-------|------|-------------|---------|
|
|
9
|
-
| `name` | string | Marketplace ID (kebab-case, no spaces). Users see: `/plugin install tool@name` | `"acme-tools"` |
|
|
10
|
-
| `owner` | object | Maintainer info (`name` required, `email` optional) | |
|
|
11
|
-
| `plugins` | array | List of plugin entries | |
|
|
12
|
-
|
|
13
|
-
### Reserved Names (Cannot Use)
|
|
14
|
-
|
|
15
|
-
`claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `life-sciences`. Names impersonating official marketplaces also blocked.
|
|
16
|
-
|
|
17
|
-
## Optional Metadata
|
|
18
|
-
|
|
19
|
-
| Field | Type | Description |
|
|
20
|
-
|-------|------|-------------|
|
|
21
|
-
| `metadata.description` | string | Brief marketplace description |
|
|
22
|
-
| `metadata.version` | string | Marketplace version |
|
|
23
|
-
| `metadata.pluginRoot` | string | Base dir prepended to relative source paths (e.g., `"./plugins"`) |
|
|
24
|
-
|
|
25
|
-
## Plugin Entry — Required Fields
|
|
26
|
-
|
|
27
|
-
| Field | Type | Description |
|
|
28
|
-
|-------|------|-------------|
|
|
29
|
-
| `name` | string | Plugin ID (kebab-case). Users see: `/plugin install name@marketplace` |
|
|
30
|
-
| `source` | string\|object | Where to fetch plugin (see `plugin-marketplace-sources.md`) |
|
|
31
|
-
|
|
32
|
-
## Plugin Entry — Optional Metadata
|
|
33
|
-
|
|
34
|
-
| Field | Type | Description |
|
|
35
|
-
|-------|------|-------------|
|
|
36
|
-
| `description` | string | Brief plugin description |
|
|
37
|
-
| `version` | string | Plugin version |
|
|
38
|
-
| `author` | object | Author info (`name` required, `email` optional) |
|
|
39
|
-
| `homepage` | string | Plugin docs URL |
|
|
40
|
-
| `repository` | string | Source code URL |
|
|
41
|
-
| `license` | string | SPDX license ID (MIT, Apache-2.0) |
|
|
42
|
-
| `keywords` | array | Discovery/categorization tags |
|
|
43
|
-
| `category` | string | Plugin category |
|
|
44
|
-
| `tags` | array | Searchability tags |
|
|
45
|
-
| `strict` | boolean | Default `true`: merges with plugin.json. `false`: marketplace entry defines plugin entirely |
|
|
46
|
-
|
|
47
|
-
## Plugin Entry — Component Configuration
|
|
48
|
-
|
|
49
|
-
| Field | Type | Description |
|
|
50
|
-
|-------|------|-------------|
|
|
51
|
-
| `commands` | string\|array | Custom paths to command files/dirs |
|
|
52
|
-
| `agents` | string\|array | Custom paths to agent files |
|
|
53
|
-
| `hooks` | string\|object | Hooks config or path to hooks file |
|
|
54
|
-
| `mcpServers` | string\|object | MCP server configs or path |
|
|
55
|
-
| `lspServers` | string\|object | LSP server configs or path |
|
|
56
|
-
|
|
57
|
-
## Minimal Example
|
|
58
|
-
|
|
59
|
-
```json
|
|
60
|
-
{
|
|
61
|
-
"name": "my-plugins",
|
|
62
|
-
"owner": { "name": "Your Name" },
|
|
63
|
-
"plugins": [{
|
|
64
|
-
"name": "review-plugin",
|
|
65
|
-
"source": "./plugins/review-plugin",
|
|
66
|
-
"description": "Adds a review skill for quick code reviews"
|
|
67
|
-
}]
|
|
68
|
-
}
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
## Full Example
|
|
72
|
-
|
|
73
|
-
```json
|
|
74
|
-
{
|
|
75
|
-
"name": "company-tools",
|
|
76
|
-
"owner": { "name": "DevTools Team", "email": "devtools@example.com" },
|
|
77
|
-
"metadata": { "description": "Internal dev tools", "version": "1.0.0", "pluginRoot": "./plugins" },
|
|
78
|
-
"plugins": [
|
|
79
|
-
{
|
|
80
|
-
"name": "code-formatter",
|
|
81
|
-
"source": "./plugins/formatter",
|
|
82
|
-
"description": "Automatic code formatting on save",
|
|
83
|
-
"version": "2.1.0",
|
|
84
|
-
"author": { "name": "DevTools Team" }
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
"name": "deployment-tools",
|
|
88
|
-
"source": { "source": "github", "repo": "company/deploy-plugin" },
|
|
89
|
-
"description": "Deployment automation tools"
|
|
90
|
-
}
|
|
91
|
-
]
|
|
92
|
-
}
|
|
93
|
-
```
|
|
1
|
+
# Plugin Marketplace Schema
|
|
2
|
+
|
|
3
|
+
Full JSON schema for `.claude-plugin/marketplace.json`.
|
|
4
|
+
|
|
5
|
+
## Required Top-Level Fields
|
|
6
|
+
|
|
7
|
+
| Field | Type | Description | Example |
|
|
8
|
+
|-------|------|-------------|---------|
|
|
9
|
+
| `name` | string | Marketplace ID (kebab-case, no spaces). Users see: `/plugin install tool@name` | `"acme-tools"` |
|
|
10
|
+
| `owner` | object | Maintainer info (`name` required, `email` optional) | |
|
|
11
|
+
| `plugins` | array | List of plugin entries | |
|
|
12
|
+
|
|
13
|
+
### Reserved Names (Cannot Use)
|
|
14
|
+
|
|
15
|
+
`claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `life-sciences`. Names impersonating official marketplaces also blocked.
|
|
16
|
+
|
|
17
|
+
## Optional Metadata
|
|
18
|
+
|
|
19
|
+
| Field | Type | Description |
|
|
20
|
+
|-------|------|-------------|
|
|
21
|
+
| `metadata.description` | string | Brief marketplace description |
|
|
22
|
+
| `metadata.version` | string | Marketplace version |
|
|
23
|
+
| `metadata.pluginRoot` | string | Base dir prepended to relative source paths (e.g., `"./plugins"`) |
|
|
24
|
+
|
|
25
|
+
## Plugin Entry — Required Fields
|
|
26
|
+
|
|
27
|
+
| Field | Type | Description |
|
|
28
|
+
|-------|------|-------------|
|
|
29
|
+
| `name` | string | Plugin ID (kebab-case). Users see: `/plugin install name@marketplace` |
|
|
30
|
+
| `source` | string\|object | Where to fetch plugin (see `plugin-marketplace-sources.md`) |
|
|
31
|
+
|
|
32
|
+
## Plugin Entry — Optional Metadata
|
|
33
|
+
|
|
34
|
+
| Field | Type | Description |
|
|
35
|
+
|-------|------|-------------|
|
|
36
|
+
| `description` | string | Brief plugin description |
|
|
37
|
+
| `version` | string | Plugin version |
|
|
38
|
+
| `author` | object | Author info (`name` required, `email` optional) |
|
|
39
|
+
| `homepage` | string | Plugin docs URL |
|
|
40
|
+
| `repository` | string | Source code URL |
|
|
41
|
+
| `license` | string | SPDX license ID (MIT, Apache-2.0) |
|
|
42
|
+
| `keywords` | array | Discovery/categorization tags |
|
|
43
|
+
| `category` | string | Plugin category |
|
|
44
|
+
| `tags` | array | Searchability tags |
|
|
45
|
+
| `strict` | boolean | Default `true`: merges with plugin.json. `false`: marketplace entry defines plugin entirely |
|
|
46
|
+
|
|
47
|
+
## Plugin Entry — Component Configuration
|
|
48
|
+
|
|
49
|
+
| Field | Type | Description |
|
|
50
|
+
|-------|------|-------------|
|
|
51
|
+
| `commands` | string\|array | Custom paths to command files/dirs |
|
|
52
|
+
| `agents` | string\|array | Custom paths to agent files |
|
|
53
|
+
| `hooks` | string\|object | Hooks config or path to hooks file |
|
|
54
|
+
| `mcpServers` | string\|object | MCP server configs or path |
|
|
55
|
+
| `lspServers` | string\|object | LSP server configs or path |
|
|
56
|
+
|
|
57
|
+
## Minimal Example
|
|
58
|
+
|
|
59
|
+
```json
|
|
60
|
+
{
|
|
61
|
+
"name": "my-plugins",
|
|
62
|
+
"owner": { "name": "Your Name" },
|
|
63
|
+
"plugins": [{
|
|
64
|
+
"name": "review-plugin",
|
|
65
|
+
"source": "./plugins/review-plugin",
|
|
66
|
+
"description": "Adds a review skill for quick code reviews"
|
|
67
|
+
}]
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Full Example
|
|
72
|
+
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"name": "company-tools",
|
|
76
|
+
"owner": { "name": "DevTools Team", "email": "devtools@example.com" },
|
|
77
|
+
"metadata": { "description": "Internal dev tools", "version": "1.0.0", "pluginRoot": "./plugins" },
|
|
78
|
+
"plugins": [
|
|
79
|
+
{
|
|
80
|
+
"name": "code-formatter",
|
|
81
|
+
"source": "./plugins/formatter",
|
|
82
|
+
"description": "Automatic code formatting on save",
|
|
83
|
+
"version": "2.1.0",
|
|
84
|
+
"author": { "name": "DevTools Team" }
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"name": "deployment-tools",
|
|
88
|
+
"source": { "source": "github", "repo": "company/deploy-plugin" },
|
|
89
|
+
"description": "Deployment automation tools"
|
|
90
|
+
}
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
```
|