@phuc1403/musketeer 0.8.0 → 0.10.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.
Files changed (236) hide show
  1. package/INSTALLATION.md +52 -52
  2. package/README.md +49 -49
  3. package/bin/musketeer.js +168 -168
  4. package/manifest.json +333 -301
  5. package/package.json +48 -48
  6. package/src/dotnet-scaffold-copier.js +79 -79
  7. package/src/provisioner/detect.js +93 -93
  8. package/src/self-update.js +77 -77
  9. package/template/.claude/agents/code-reviewer.md +182 -166
  10. package/template/.claude/agents/git-manager.md +18 -18
  11. package/template/.claude/agents/hallmark-auditor.md +78 -78
  12. package/template/.claude/agents/researcher.md +33 -33
  13. package/template/.claude/hooks/block-unsafe-adr-title.cjs +85 -85
  14. package/template/.claude/hooks/git-skill-reminder.cjs +53 -0
  15. package/template/.claude/hooks/init-adr-dir.cjs +173 -173
  16. package/template/.claude/hooks/inject-adr-flags.cjs +94 -94
  17. package/template/.claude/hooks/lib/adr/command-scan.cjs +115 -115
  18. package/template/.claude/hooks/lib/characteristics/checker.cjs +357 -357
  19. package/template/.claude/hooks/lib/colors.cjs +180 -122
  20. package/template/.claude/hooks/lib/git-info-cache.cjs +191 -191
  21. package/template/.claude/hooks/lib/transcript-parser.cjs +300 -277
  22. package/template/.claude/hooks/sync-adr-toc.cjs +146 -146
  23. package/template/.claude/hooks/{usage-context-awareness.cjs → usage-quota-cache-refresh.cjs} +166 -166
  24. package/template/.claude/hooks/validate-characteristics-hook.cjs +66 -66
  25. package/template/.claude/hooks/validate-cml-hook.js +145 -145
  26. package/template/.claude/skills/adr-writer/SKILL.md +48 -48
  27. package/template/.claude/skills/adr-writer/references/adr-example.md +35 -35
  28. package/template/.claude/skills/architecture-characteristic-writer/SKILL.md +215 -215
  29. package/template/.claude/skills/architecture-characteristic-writer/assets/worksheet-template.md +29 -29
  30. package/template/.claude/skills/architecture-characteristic-writer/references/characteristics-catalog.md +40 -40
  31. package/template/.claude/skills/architecture-characteristic-writer/scripts/ranking-table.cjs +171 -171
  32. package/template/.claude/skills/code-review/SKILL.md +201 -54
  33. package/template/.claude/skills/code-review/references/checklist-workflow.md +96 -0
  34. package/template/.claude/skills/code-review/references/checklists/api.md +52 -52
  35. package/template/.claude/skills/code-review/references/checklists/base.md +100 -100
  36. package/template/.claude/skills/code-review/references/checklists/web-app.md +54 -54
  37. package/template/.claude/skills/code-review/references/code-review-reception.md +113 -0
  38. package/template/.claude/skills/code-review/references/codebase-scan-workflow.md +30 -0
  39. package/template/.claude/skills/code-review/references/edge-case-scouting.md +119 -0
  40. package/template/.claude/skills/code-review/references/input-mode-resolution.md +135 -0
  41. package/template/.claude/skills/code-review/references/parallel-review-workflow.md +76 -0
  42. package/template/.claude/skills/code-review/references/requesting-code-review.md +116 -0
  43. package/template/.claude/skills/code-review/references/spec-compliance-review.md +43 -0
  44. package/template/.claude/skills/code-review/references/task-management-reviews.md +140 -0
  45. package/template/.claude/skills/code-review/references/verification-before-completion.md +139 -0
  46. package/template/.claude/skills/context-map/SKILL.md +80 -80
  47. package/template/.claude/skills/context-map/example.cml +106 -106
  48. package/template/.claude/skills/context-map/reference/Bounded Context/Bounded Context.md +40 -40
  49. package/template/.claude/skills/context-map/reference/Bounded Context/businessModel.md +5 -5
  50. package/template/.claude/skills/context-map/reference/Bounded Context/domainVisionStatement.md +2 -2
  51. package/template/.claude/skills/context-map/reference/Bounded Context/evolution.md +5 -5
  52. package/template/.claude/skills/context-map/reference/Bounded Context/implementationTechnology.md +1 -1
  53. package/template/.claude/skills/context-map/reference/Bounded Context/implements.md +1 -1
  54. package/template/.claude/skills/context-map/reference/Bounded Context/knowledgeLevel.md +4 -4
  55. package/template/.claude/skills/context-map/reference/Bounded Context/realizes.md +9 -9
  56. package/template/.claude/skills/context-map/reference/Bounded Context/refines.md +10 -10
  57. package/template/.claude/skills/context-map/reference/Bounded Context/responsibilities.md +26 -26
  58. package/template/.claude/skills/context-map/reference/Bounded Context/type.md +23 -23
  59. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Anticorruption Layer.md +5 -5
  60. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Bounded Context Relationship.md +12 -12
  61. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Conformist.md +5 -5
  62. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Customer-Supplier (C-S).md +22 -22
  63. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Open Host Service.md +4 -4
  64. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Partnership (P).md +13 -13
  65. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Published Language.md +4 -4
  66. package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Shared Kernel (SK).md +12 -12
  67. package/template/.claude/skills/context-map/reference/Context Map.md +62 -62
  68. package/template/.claude/skills/context-map/reference/Domain/Domain.md +30 -30
  69. package/template/.claude/skills/context-map/reference/Domain/supports.md +33 -33
  70. package/template/.claude/skills/context-map/reference/Domain/type.md +3 -3
  71. package/template/.claude/skills/context-map/reference/Semantic Rules.md +32 -32
  72. package/template/.claude/skills/git/SKILL.md +131 -115
  73. package/template/.claude/skills/git/references/branch-management.md +88 -88
  74. package/template/.claude/skills/git/references/commit-standards.md +46 -46
  75. package/template/.claude/skills/git/references/context-efficiency.md +54 -0
  76. package/template/.claude/skills/git/references/gh-cli-guide.md +109 -109
  77. package/template/.claude/skills/git/references/safety-protocols.md +69 -69
  78. package/template/.claude/skills/git/references/workflow-commit.md +58 -58
  79. package/template/.claude/skills/git/references/workflow-merge-pr.md +136 -0
  80. package/template/.claude/skills/git/references/workflow-merge.md +48 -48
  81. package/template/.claude/skills/git/references/workflow-pr.md +58 -58
  82. package/template/.claude/skills/git/references/workflow-push.md +52 -52
  83. package/template/.claude/skills/hallmark/SKILL.md +552 -552
  84. package/template/.claude/skills/hallmark/references/anti-patterns.md +412 -412
  85. package/template/.claude/skills/hallmark/references/assets.md +406 -406
  86. package/template/.claude/skills/hallmark/references/color.md +95 -95
  87. package/template/.claude/skills/hallmark/references/component-cookbook.md +256 -256
  88. package/template/.claude/skills/hallmark/references/components/c1-outlined-chip.md +12 -12
  89. package/template/.claude/skills/hallmark/references/components/c2-inline-form-as-cta.md +16 -16
  90. package/template/.claude/skills/hallmark/references/components/c3-typographic-link.md +8 -8
  91. package/template/.claude/skills/hallmark/references/components/c4-sticky-bottom-bar.md +16 -16
  92. package/template/.claude/skills/hallmark/references/components/f1-bento-grid.md +20 -20
  93. package/template/.claude/skills/hallmark/references/components/f2-sticky-scroll-stack.md +20 -20
  94. package/template/.claude/skills/hallmark/references/components/f3-tabular-spec-sheet.md +11 -11
  95. package/template/.claude/skills/hallmark/references/components/f4-step-sequence.md +11 -11
  96. package/template/.claude/skills/hallmark/references/components/f5-annotated-screenshot.md +11 -11
  97. package/template/.claude/skills/hallmark/references/components/f6-product-card-grid.md +41 -41
  98. package/template/.claude/skills/hallmark/references/components/ft1-mast-headed.md +13 -13
  99. package/template/.claude/skills/hallmark/references/components/ft2-inline-rule-single-line.md +10 -10
  100. package/template/.claude/skills/hallmark/references/components/ft3-index-style-category-list.md +12 -12
  101. package/template/.claude/skills/hallmark/references/components/ft4-dense-typographic.md +10 -10
  102. package/template/.claude/skills/hallmark/references/components/ft5-statement.md +21 -21
  103. package/template/.claude/skills/hallmark/references/components/ft6-letter-close.md +19 -19
  104. package/template/.claude/skills/hallmark/references/components/ft7-newsletter-first.md +27 -27
  105. package/template/.claude/skills/hallmark/references/components/ft8-marquee-scroll.md +25 -25
  106. package/template/.claude/skills/hallmark/references/components/h1-marquee.md +15 -15
  107. package/template/.claude/skills/hallmark/references/components/h2-split-diptych.md +15 -15
  108. package/template/.claude/skills/hallmark/references/components/h3-quote-led.md +11 -11
  109. package/template/.claude/skills/hallmark/references/components/h4-stat-led.md +14 -14
  110. package/template/.claude/skills/hallmark/references/components/h5-letter-hero.md +11 -11
  111. package/template/.claude/skills/hallmark/references/components/h6-photographic-fold.md +16 -16
  112. package/template/.claude/skills/hallmark/references/components/h7-demo-video-clipped-by-viewport-edge.md +27 -27
  113. package/template/.claude/skills/hallmark/references/components/h8-mockup-split-browser-framed.md +23 -23
  114. package/template/.claude/skills/hallmark/references/components/h9-custom-illustration-centerpiece.md +27 -27
  115. package/template/.claude/skills/hallmark/references/components/n1-wordmark-2-links.md +12 -12
  116. package/template/.claude/skills/hallmark/references/components/n10-floating-on-scroll-morph.md +19 -19
  117. package/template/.claude/skills/hallmark/references/components/n2-floating-chip.md +14 -14
  118. package/template/.claude/skills/hallmark/references/components/n3-side-rail.md +14 -14
  119. package/template/.claude/skills/hallmark/references/components/n4-hidden-behind-k.md +9 -9
  120. package/template/.claude/skills/hallmark/references/components/n5-floating-pill.md +28 -28
  121. package/template/.claude/skills/hallmark/references/components/n6-newspaper-masthead.md +24 -24
  122. package/template/.claude/skills/hallmark/references/components/n7-brutal-slab.md +22 -22
  123. package/template/.claude/skills/hallmark/references/components/n8-terminal-command.md +21 -21
  124. package/template/.claude/skills/hallmark/references/components/n9-edge-aligned-minimal.md +17 -17
  125. package/template/.claude/skills/hallmark/references/components/s1-left-margin-numbered.md +15 -15
  126. package/template/.claude/skills/hallmark/references/components/s2-hanging.md +13 -13
  127. package/template/.claude/skills/hallmark/references/components/s3-sticky-pinned.md +19 -19
  128. package/template/.claude/skills/hallmark/references/components/s4-inline-no-break.md +11 -11
  129. package/template/.claude/skills/hallmark/references/components/s5-bottom-anchored.md +13 -13
  130. package/template/.claude/skills/hallmark/references/components/t1-pull-quote-with-marginalia.md +12 -12
  131. package/template/.claude/skills/hallmark/references/components/t2-logo-wall-hairline.md +19 -19
  132. package/template/.claude/skills/hallmark/references/components/t3-single-huge-quote.md +11 -11
  133. package/template/.claude/skills/hallmark/references/components/t4-numbered-stat-strip.md +14 -14
  134. package/template/.claude/skills/hallmark/references/contract.md +24 -24
  135. package/template/.claude/skills/hallmark/references/copy.md +182 -182
  136. package/template/.claude/skills/hallmark/references/custom-craft.md +626 -626
  137. package/template/.claude/skills/hallmark/references/custom-theme.md +329 -329
  138. package/template/.claude/skills/hallmark/references/design-md.md +116 -116
  139. package/template/.claude/skills/hallmark/references/export-formats.md +328 -328
  140. package/template/.claude/skills/hallmark/references/floating-nav.md +89 -89
  141. package/template/.claude/skills/hallmark/references/genres/atmospheric.md +65 -65
  142. package/template/.claude/skills/hallmark/references/genres/editorial.md +70 -70
  143. package/template/.claude/skills/hallmark/references/genres/modern-minimal.md +67 -67
  144. package/template/.claude/skills/hallmark/references/genres/playful.md +65 -65
  145. package/template/.claude/skills/hallmark/references/hero-enrichment.md +474 -474
  146. package/template/.claude/skills/hallmark/references/imagery-kit.md +170 -170
  147. package/template/.claude/skills/hallmark/references/interaction-and-states.md +207 -207
  148. package/template/.claude/skills/hallmark/references/layout-and-space.md +111 -111
  149. package/template/.claude/skills/hallmark/references/macrostructures/01-bento-grid.md +35 -35
  150. package/template/.claude/skills/hallmark/references/macrostructures/02-long-document.md +34 -34
  151. package/template/.claude/skills/hallmark/references/macrostructures/03-marquee-hero.md +31 -31
  152. package/template/.claude/skills/hallmark/references/macrostructures/04-stat-led.md +32 -32
  153. package/template/.claude/skills/hallmark/references/macrostructures/05-workbench.md +32 -32
  154. package/template/.claude/skills/hallmark/references/macrostructures/06-conversational-faq.md +33 -33
  155. package/template/.claude/skills/hallmark/references/macrostructures/07-manifesto.md +32 -32
  156. package/template/.claude/skills/hallmark/references/macrostructures/08-photographic.md +34 -34
  157. package/template/.claude/skills/hallmark/references/macrostructures/09-quote-led.md +32 -32
  158. package/template/.claude/skills/hallmark/references/macrostructures/10-specimen.md +32 -32
  159. package/template/.claude/skills/hallmark/references/macrostructures/11-catalogue.md +23 -23
  160. package/template/.claude/skills/hallmark/references/macrostructures/12-letter.md +23 -23
  161. package/template/.claude/skills/hallmark/references/macrostructures/13-index-first.md +23 -23
  162. package/template/.claude/skills/hallmark/references/macrostructures/14-narrative-workflow.md +23 -23
  163. package/template/.claude/skills/hallmark/references/macrostructures/15-split-studio.md +23 -23
  164. package/template/.claude/skills/hallmark/references/macrostructures/16-feature-stack.md +23 -23
  165. package/template/.claude/skills/hallmark/references/macrostructures/17-type-specimen.md +23 -23
  166. package/template/.claude/skills/hallmark/references/macrostructures/18-portfolio-grid.md +23 -23
  167. package/template/.claude/skills/hallmark/references/macrostructures/19-map-diagram.md +23 -23
  168. package/template/.claude/skills/hallmark/references/macrostructures/20-ecosystem-index.md +23 -23
  169. package/template/.claude/skills/hallmark/references/macrostructures/21-component-playground.md +23 -23
  170. package/template/.claude/skills/hallmark/references/macrostructures.md +89 -89
  171. package/template/.claude/skills/hallmark/references/microinteractions.md +260 -260
  172. package/template/.claude/skills/hallmark/references/motion.md +109 -109
  173. package/template/.claude/skills/hallmark/references/preview-examples.md +49 -49
  174. package/template/.claude/skills/hallmark/references/responsive.md +138 -138
  175. package/template/.claude/skills/hallmark/references/slop-test.md +205 -205
  176. package/template/.claude/skills/hallmark/references/structure.md +164 -164
  177. package/template/.claude/skills/hallmark/references/study.md +511 -511
  178. package/template/.claude/skills/hallmark/references/typography.md +243 -243
  179. package/template/.claude/skills/hallmark/references/verbs/audit.md +25 -25
  180. package/template/.claude/skills/hallmark/references/verbs/redesign.md +269 -269
  181. package/template/.claude/skills/hallmark-loop/SKILL.md +105 -105
  182. package/template/.claude/skills/hallmark-loop/references/auditor-call.md +60 -60
  183. package/template/.claude/skills/hallmark-loop/references/capture.md +78 -78
  184. package/template/.claude/skills/hallmark-loop/references/loop-control.md +79 -79
  185. package/template/.claude/skills/handoff/SKILL.md +15 -15
  186. package/template/.claude/skills/knowledge-crunching/SKILL.md +94 -94
  187. package/template/.claude/skills/research/SKILL.md +69 -69
  188. package/template/.claude/skills/skill-creator/LICENSE.txt +201 -201
  189. package/template/.claude/skills/skill-creator/SKILL.md +154 -149
  190. package/template/.claude/skills/skill-creator/agents/analyzer.md +274 -274
  191. package/template/.claude/skills/skill-creator/agents/comparator.md +202 -202
  192. package/template/.claude/skills/skill-creator/agents/grader.md +223 -223
  193. package/template/.claude/skills/skill-creator/assets/eval_review.html +146 -146
  194. package/template/.claude/skills/skill-creator/eval-viewer/generate_review.py +471 -471
  195. package/template/.claude/skills/skill-creator/eval-viewer/viewer.html +1325 -1325
  196. package/template/.claude/skills/skill-creator/references/benchmark-optimization-guide.md +86 -86
  197. package/template/.claude/skills/skill-creator/references/distribution-guide.md +79 -79
  198. package/template/.claude/skills/skill-creator/references/eval-infrastructure-guide.md +129 -129
  199. package/template/.claude/skills/skill-creator/references/eval-schemas.md +121 -121
  200. package/template/.claude/skills/skill-creator/references/mcp-skills-integration.md +71 -71
  201. package/template/.claude/skills/skill-creator/references/metadata-quality-criteria.md +94 -94
  202. package/template/.claude/skills/skill-creator/references/plugin-marketplace-hosting.md +104 -104
  203. package/template/.claude/skills/skill-creator/references/plugin-marketplace-overview.md +89 -89
  204. package/template/.claude/skills/skill-creator/references/plugin-marketplace-schema.md +93 -93
  205. package/template/.claude/skills/skill-creator/references/plugin-marketplace-sources.md +103 -103
  206. package/template/.claude/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +76 -76
  207. package/template/.claude/skills/skill-creator/references/script-quality-criteria.md +106 -106
  208. package/template/.claude/skills/skill-creator/references/skill-anatomy-and-requirements.md +77 -77
  209. package/template/.claude/skills/skill-creator/references/skill-creation-workflow.md +152 -151
  210. package/template/.claude/skills/skill-creator/references/skill-design-patterns.md +75 -75
  211. package/template/.claude/skills/skill-creator/references/skillmark-benchmark-criteria.md +102 -102
  212. package/template/.claude/skills/skill-creator/references/structure-organization-criteria.md +114 -114
  213. package/template/.claude/skills/skill-creator/references/testing-and-iteration.md +78 -78
  214. package/template/.claude/skills/skill-creator/references/token-efficiency-criteria.md +74 -74
  215. package/template/.claude/skills/skill-creator/references/troubleshooting-guide.md +81 -81
  216. package/template/.claude/skills/skill-creator/references/validation-checklist.md +83 -83
  217. package/template/.claude/skills/skill-creator/references/writing-effective-instructions.md +88 -88
  218. package/template/.claude/skills/skill-creator/references/yaml-frontmatter-reference.md +92 -92
  219. package/template/.claude/skills/skill-creator/scripts/aggregate_benchmark.py +401 -401
  220. package/template/.claude/skills/skill-creator/scripts/encoding_utils.py +36 -36
  221. package/template/.claude/skills/skill-creator/scripts/generate_report.py +326 -326
  222. package/template/.claude/skills/skill-creator/scripts/improve_description.py +248 -248
  223. package/template/.claude/skills/skill-creator/scripts/init_skill.py +360 -360
  224. package/template/.claude/skills/skill-creator/scripts/package_skill.py +143 -143
  225. package/template/.claude/skills/skill-creator/scripts/quick_validate.py +110 -110
  226. package/template/.claude/skills/skill-creator/scripts/run_eval.py +310 -310
  227. package/template/.claude/skills/skill-creator/scripts/run_loop.py +332 -332
  228. package/template/.claude/skills/skill-creator/scripts/utils.py +47 -47
  229. package/template/.claude/skills/tdd/SKILL.md +142 -142
  230. package/template/.claude/skills/tdd/deep-modules.md +15 -15
  231. package/template/.claude/skills/tdd/interface-design.md +31 -31
  232. package/template/.claude/skills/tdd/mocking.md +59 -59
  233. package/template/.claude/skills/tdd/refactoring.md +10 -10
  234. package/template/.claude/skills/tdd/tests.md +61 -61
  235. package/template/.claude/statusline.cjs +0 -0
  236. package/template/.claude/skills/code-review/references/adversarial-review.md +0 -223
@@ -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
+ ```