Skip to content

Add a plugin marketplace for all stacks - #1

Merged
hetaoBackend merged 1 commit into
MiniMax-AI:mainfrom
yujiachen-y:feat/plugin-marketplace
Oct 28, 2026
Merged

hetaoBackend merged 1 commit into
MiniMax-AI:mainfrom
yujiachen-y:feat/plugin-marketplace

Conversation

@yujiachen-y

@yujiachen-y yujiachen-y commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

What this adds or changes

Makes the repository a plugin marketplace, so a stack installs (and later updates) without copying files.

  • .claude-plugin/marketplace.json: one entry per stack, "source": "./stacks/<id>". Entries set no component fields, so each stack's .minimax-plugin/plugin.json stays the single definition of its skills. This file name is read by MiniMax Code's user-added marketplaces, Claude Code and Codex.
  • scripts/check.mjs:
    • marketplace: one entry per stack under stacks/ and community/, named after the directory, same description as plugin.json, no skills/commands/... fields;
    • version bump (when CHECK_BASE is set): a stack whose files changed since the merge base must raise its plugin.json version. Marketplace installs compare versions to decide whether an update is available, so a change without a bump never reaches people who installed the stack.
  • CI checks out full history and passes the PR base SHA as CHECK_BASE (empty on pushes to main, which skips the bump check).
  • README / README_ZH: new "from the marketplace" install option (MiniMax Code desktop Plugins → Add marketplace, Claude Code /plugin marketplace add). The existing note that mcode plugin add only installs from the official catalog stays. CONTRIBUTING (both languages), stacks/README.md and the template README describe the marketplace entry and the version rule.

Note: adding marketplaces in MiniMax Code is still rolling out (test/internal channels first); the README says so.

Check output

$ MINIMAX_CODE_DIR=../minimax-code CHECK_BASE=origin/main node scripts/check.mjs
validate-plugin: stacks/ronny passed the public Plugin V1 checks.
validate-plugin: templates/stack-template passed the public Plugin V1 checks.
check: 2 stack(s) passed: stacks/ronny, templates/stack-template

Negative cases run locally, each fails as expected:

  • edit a ronny skill without a bump → version 0.2.0 is not higher than 0.2.0; bump to 0.2.1 → passes;
  • entry with "skills" and a different description → two errors;
  • entry removed → stacks/ronny has no entry.

Real usage record

Loaded this repository with MiniMax Code's own marketplace code (readCatalog + inspectRelativeEntry + EntryMaterializer from local-runtime-v2): catalog mcode-stack parses with no diagnostics; ronny resolves to its .minimax-plugin manifest, version 0.2.0, 15 skills, and stages an install copy.

Not verified: an end-to-end install in Claude Code (its CLI is killed at startup on the test machine).

If this skill were deleted, where would the agent go wrong?

Not a skill. Without the marketplace, installing a stack means copying a directory by hand, and installed copies never learn about updates.

Checklist

  • No keys, tokens, internal hostnames or private links
  • Third-party content is credited with its license (none added)
  • I agree to release this under the repository's MIT License

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

Add .claude-plugin/marketplace.json so the repository can be added as a
plugin marketplace (MiniMax Code desktop "Add marketplace", or
/plugin marketplace add in Claude Code). Each stack is one entry whose
source is the stack directory; the entry sets no component fields, so the
stack's own .minimax-plugin/plugin.json defines its skills.

scripts/check.mjs gains two checks:
- marketplace: one entry per stack under stacks/ and community/, named
  after the directory, with the same description as plugin.json;
- version bump: with CHECK_BASE set, a stack whose files changed since the
  merge base must raise its plugin.json version. Marketplace installs only
  see an update when the version goes up.

CI fetches full history and passes the pull request base as CHECK_BASE.
README, CONTRIBUTING (both languages), stacks/README and the template
README document the marketplace and the version rule.
@hetaoBackend
hetaoBackend merged commit 6fc07a2 into MiniMax-AI:main Oct 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants