From 64cfdd5f7d368c2a974194f1c1e2745f96917404 Mon Sep 17 00:00:00 2001 From: Dennis Hermsmeier Date: Wed, 1 Jul 2026 12:11:37 +0200 Subject: [PATCH 1/2] feat(plugin): expose repo as a marketplace with two installable plugins `/plugin marketplace add mittwald/agent-skills` failed because the repo only shipped a single-plugin manifest (.claude-plugin/plugin.json) and no marketplace catalog, so Claude Code could not find marketplace.json. - Add .claude-plugin/marketplace.json cataloguing both skills as plugins - Add per-skill .claude-plugin/plugin.json (single-SKILL.md-at-root layout), keeping the skills/ dirs in place so `npx skills add` and manual clone installs keep working - Drop the repo-root plugin.json that treated the whole repo as one plugin - Fix README install command: mittwald-zerodeploy-skill -> mittwald-zerodeploy Validated with `claude plugin validate .` (passes). Co-Authored-By: Claude Opus 4.8 (1M context) --- .claude-plugin/marketplace.json | 20 +++++++++++++++++++ README.md | 2 +- .../.claude-plugin}/plugin.json | 4 ++-- .../.claude-plugin/plugin.json | 12 +++++++++++ 4 files changed, 35 insertions(+), 3 deletions(-) create mode 100644 .claude-plugin/marketplace.json rename {.claude-plugin => skills/mittwald-migrate/.claude-plugin}/plugin.json (65%) create mode 100644 skills/mittwald-zerodeploy/.claude-plugin/plugin.json diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json new file mode 100644 index 0000000..fdc5e15 --- /dev/null +++ b/.claude-plugin/marketplace.json @@ -0,0 +1,20 @@ +{ + "name": "agent-skills", + "description": "Collection of Mittwald skills for the Claude plugin system.", + "owner": { + "name": "Mittwald CM Service GmbH & Co. KG", + "url": "https://www.mittwald.de" + }, + "plugins": [ + { + "name": "mittwald-migrate", + "source": "./skills/mittwald-migrate", + "description": "Guides a conversational, phase-by-phase migration of an application to Mittwald mStudio." + }, + { + "name": "mittwald-zerodeploy", + "source": "./skills/mittwald-zerodeploy", + "description": "Zero-config deployment to Mittwald mStudio container hosting using Railpack build inference." + } + ] +} diff --git a/README.md b/README.md index d2a6438..403d709 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ Before using either skill: ```bash /plugin marketplace add mittwald/agent-skills /plugin install mittwald-migrate@agent-skills -/plugin install mittwald-zerodeploy-skill@agent-skills +/plugin install mittwald-zerodeploy@agent-skills ``` **For any other AI assistant** — use the [`skills`](https://www.npmjs.com/package/skills) CLI: diff --git a/.claude-plugin/plugin.json b/skills/mittwald-migrate/.claude-plugin/plugin.json similarity index 65% rename from .claude-plugin/plugin.json rename to skills/mittwald-migrate/.claude-plugin/plugin.json index 396c357..056f5eb 100644 --- a/.claude-plugin/plugin.json +++ b/skills/mittwald-migrate/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { - "name": "agent-skills", - "description": "Collection of mittwald skills for the Claude plugin system.", + "name": "mittwald-migrate", + "description": "Guides a conversational, phase-by-phase migration of an application to Mittwald mStudio.", "version": "0.1.0", "author": { "name": "Mittwald CM Service GmbH & Co. KG", diff --git a/skills/mittwald-zerodeploy/.claude-plugin/plugin.json b/skills/mittwald-zerodeploy/.claude-plugin/plugin.json new file mode 100644 index 0000000..ff395e7 --- /dev/null +++ b/skills/mittwald-zerodeploy/.claude-plugin/plugin.json @@ -0,0 +1,12 @@ +{ + "name": "mittwald-zerodeploy", + "description": "Zero-config deployment to Mittwald mStudio container hosting using Railpack build inference.", + "version": "0.1.0", + "author": { + "name": "Mittwald CM Service GmbH & Co. KG", + "url": "https://www.mittwald.de" + }, + "homepage": "https://github.com/mittwald/agent-skills", + "repository": "https://github.com/mittwald/agent-skills", + "license": "MIT" +} From 8322190e554c12dbde448860bd61c4d65b49c9f2 Mon Sep 17 00:00:00 2001 From: Dennis Hermsmeier Date: Wed, 1 Jul 2026 12:13:47 +0200 Subject: [PATCH 2/2] refactor(plugin): name the marketplace mittwald-agent-skills MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The registered marketplace name (the `@…` install suffix) comes from the `name` field in marketplace.json — there is no client-side alias at add time. Rename it from the generic `agent-skills` to `mittwald-agent-skills` so the origin is clear and it won't collide with other generic marketplaces. Install suffix is now `@mittwald-agent-skills`; README updated to match. Co-Authored-By: Claude Opus 4.8 (1M context) --- .claude-plugin/marketplace.json | 2 +- README.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index fdc5e15..afe0916 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -1,5 +1,5 @@ { - "name": "agent-skills", + "name": "mittwald-agent-skills", "description": "Collection of Mittwald skills for the Claude plugin system.", "owner": { "name": "Mittwald CM Service GmbH & Co. KG", diff --git a/README.md b/README.md index 403d709..06a426a 100644 --- a/README.md +++ b/README.md @@ -49,8 +49,8 @@ Before using either skill: ```bash /plugin marketplace add mittwald/agent-skills -/plugin install mittwald-migrate@agent-skills -/plugin install mittwald-zerodeploy@agent-skills +/plugin install mittwald-migrate@mittwald-agent-skills +/plugin install mittwald-zerodeploy@mittwald-agent-skills ``` **For any other AI assistant** — use the [`skills`](https://www.npmjs.com/package/skills) CLI: