From 2960c17abb89f3beab30e8b3f1bf04e08fd3a722 Mon Sep 17 00:00:00 2001 From: Mike North Date: Mon, 15 Jun 2026 08:45:48 -0700 Subject: [PATCH] Default marketplace name to a rename-me placeholder + document renaming MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The template shipped marketplace.name = "ai-plugin-marketplace" (and owner "AI Plugin Marketplace Template") — the upstream's own name. Forking via "Use this template" copies it verbatim, and nothing nudged you to change it, so forks collided with the upstream marketplace name (the second one installed strands the first's plugins). - aipm.workspace.ts: name -> "my-ai-plugins", owner -> "Your Name", with a prominent RENAME-THIS comment and the "-ai-plugins" convention. - README: an IMPORTANT callout to rename the marketplace before publishing. - CONTRIBUTING: a step-0 "rename the marketplace" instruction. - Regenerated registries reflect the new placeholder name. Pairs with toolkit changes (separate PR in ai-plugin-marketplace/tools): an `aipm validate` warning while the name is still a default, and `aipm init --name` defaulting to "${USER}-ai-plugins". --- .claude-plugin/marketplace.json | 4 ++-- .cursor-plugin/marketplace.json | 4 ++-- CONTRIBUTING.md | 6 ++++++ README.md | 9 +++++++++ aipm.workspace.ts | 9 +++++++-- 5 files changed, 26 insertions(+), 6 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 922eafe..1fae5aa 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -1,7 +1,7 @@ { - "name": "ai-plugin-marketplace", + "name": "my-ai-plugins", "owner": { - "name": "AI Plugin Marketplace Template" + "name": "Your Name" }, "metadata": { "description": "Universal AI Plugin Marketplace — author once, distribute to all platforms" diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index 922eafe..1fae5aa 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -1,7 +1,7 @@ { - "name": "ai-plugin-marketplace", + "name": "my-ai-plugins", "owner": { - "name": "AI Plugin Marketplace Template" + "name": "Your Name" }, "metadata": { "description": "Universal AI Plugin Marketplace — author once, distribute to all platforms" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0ec557e..ba149c6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,6 +15,12 @@ the published versions. ## Workflow +0. **One-time, right after forking: rename the marketplace.** In `aipm.workspace.ts`, + set `marketplace.name` (and `owner`) from the placeholder `my-ai-plugins` to a + **unique** name — convention `"-ai-plugins"`. The `name` is the identifier + hosts register your marketplace under; leaving a default risks colliding with another + marketplace (e.g. the upstream `ai-plugin-marketplace`), which strands plugins. `aipm + validate` emits a warning until you change it. 1. Add or edit a plugin under `plugins//`. Use `aipm scaffold ` to create a new one or `aipm add-target ` to expand an existing plugin's support envelope. diff --git a/README.md b/README.md index 966c041..cfc6f54 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,15 @@ pnpm install The `@ai-plugin-marketplace/*` packages are published to npm, so a fresh `pnpm install` resolves them directly. See [CONTRIBUTING.md](CONTRIBUTING.md). +> [!IMPORTANT] +> **Rename your marketplace first.** Open `aipm.workspace.ts` and change +> `marketplace.name` (and `owner`) from the placeholder `my-ai-plugins` to a +> **unique** name — convention `"-ai-plugins"`, e.g. `mnorth-ai-plugins`. +> The `name` is what hosts register your marketplace under; if it collides with another +> marketplace (such as the upstream `ai-plugin-marketplace`), the second one installed +> shadows or strands the first's plugins. `aipm validate` warns while the name is still a +> default. (Scaffolding from scratch with `aipm init --name ` sets this for you.) + ## Authoring plugins ### Add a new plugin diff --git a/aipm.workspace.ts b/aipm.workspace.ts index 80d040e..6000e51 100644 --- a/aipm.workspace.ts +++ b/aipm.workspace.ts @@ -8,8 +8,13 @@ import { defineWorkspace } from '@ai-plugin-marketplace/core'; */ export default defineWorkspace({ marketplace: { - name: 'ai-plugin-marketplace', - owner: { name: 'AI Plugin Marketplace Template' }, + // ⚠️ RENAME THIS before you publish. The marketplace `name` is the identifier hosts register + // your marketplace under, so it must be UNIQUE — if two repos share a name, the second one + // installed shadows/strands the first's plugins. Do NOT leave the placeholder. Convention: + // "-ai-plugins" (e.g. "mnorth-ai-plugins"). `aipm validate` warns while this is + // still a default. + name: 'my-ai-plugins', + owner: { name: 'Your Name' }, description: 'Universal AI Plugin Marketplace — author once, distribute to all platforms', }, });