mirror of
https://github.com/vercel/next.js.git
synced 2026-09-20 02:25:18 +08:00
50f367bc21
#94877 removed the embedded plugin marketplace because its plugin carried copies of skills that drifted from `skills/`. This re-adds plugin packaging without duplicating any content: `skills/` itself is the plugin root. `skills/.claude-plugin/plugin.json` sets `"skills": ["./"]` so the four skills at `skills/*/SKILL.md` are discovered in place, and the root `.claude-plugin/marketplace.json` points its single entry at `./skills`. External catalogs can reference the plugin with a `git-subdir` source (`path: "skills"`), which sparse-clones only that directory instead of the whole repo. `claude plugin validate` passes on both manifests. `claude --plugin-dir ./skills` discovers all four skills (`nextjs:next-cache-components-adoption`, `nextjs:next-cache-components-optimizer`, `nextjs:next-dev-loop`, `nextjs:next-partial-prefetching-adoption`).