refactor(plugin): move the MiniMax root under plugins/ beside the Cursor root

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WBkwAP4DPMJsxBRmG1UGSb
This commit is contained in:
Jason Zhou
2026-08-25 11:46:24 +10:00
co-authored by Claude Fable 5
parent 96b0c05e13
commit 128a791349
9 changed files with 15 additions and 15 deletions
+4 -4
View File
@@ -14,18 +14,18 @@ login; the rules that matter are encoded in `scripts/minimax_plugin.py`.
## What is where
```
minimax/
plugins/minimax/
├── .minimax-plugin/plugin.json the manifest (schemaVersion 1)
├── icon.png 512×512, the ▚ mark — same file as plugin/assets/icon.png
└── skills/treg/SKILL.md GENERATED — never edit by hand
scripts/minimax_plugin.py validator (--check) and ZIP builder (--zip OUT)
```
`minimax/` is the **plugin root**: `.minimax-plugin/plugin.json` sits directly inside it, which is
`plugins/minimax/` is the **plugin root** (a sibling of the Cursor root `plugins/treg/`; each store needs its own root because the manifests and generated bootstraps differ): `.minimax-plugin/plugin.json` sits directly inside it, which is
what MiniMax requires of a ZIP root or a GitHub subdirectory. Manifest `name` is `treg`; the skill is
exposed at runtime as `treg:treg`.
**Never edit `minimax/skills/treg/SKILL.md`.** Change `src/treg/web/skill.md` and regenerate:
**Never edit `plugins/minimax/skills/treg/SKILL.md`.** Change `src/treg/web/skill.md` and regenerate:
```bash
python3 scripts/build_plugin.py # regenerate ALL plugins
@@ -79,7 +79,7 @@ use one the team keeps, the *same* account must query status later):
| Source | GitHub |
| Repo | `https://github.com/superdesigndev/treg` |
| Ref | `main` (or the release tag, e.g. `v0.12.1`) |
| Plugin subdirectory | `minimax` |
| Plugin subdirectory | `plugins/minimax` |
| Email | jason@superdesign.dev |
ZIP alternative — built deterministically, no wrapper directory:
+2 -2
View File
@@ -12,7 +12,7 @@ sources:
- package.json
- dsh/cordis.patch.yml
- dsh/index.js
- minimax/.minimax-plugin/plugin.json
- plugins/minimax/.minimax-plugin/plugin.json
- scripts/minimax_plugin.py
related:
- interface/cli.md
@@ -55,7 +55,7 @@ served**, because a second copy of the product's most-read page is a copy that r
| Codex/ChatGPT plugin | `plugin/.codex-plugin/` + generated `plugin/skills/treg/SKILL.md` | the directory ChatGPT and Codex share |
| Cursor plugin | `.cursor-plugin/marketplace.json` + generated `plugins/treg/skills/treg/SKILL.md` | the Cursor marketplace (plugin root is never the repo root) |
| DeepSeek Harness bundle | root `package.json` (`dsh.bundle`) + `dsh/cordis.patch.yml` + generated `dsh/skills/treg/SKILL.md` | `dsh plugin --profile <name> add github:superdesigndev/treg` |
| MiniMax plugin | `minimax/.minimax-plugin/plugin.json` + generated `minimax/skills/treg/SKILL.md`; `scripts/minimax_plugin.py` pre-runs their validator and builds the ZIP | the MiniMax Plugin Marketplace (MiniMax Code + MiniMax Agent), submitted by form as GitHub subdir `minimax`; skills-only because the package may hold no credential and the bootstrap omits `treg mcp install`, which cannot write a MiniMax config. See [docs/MINIMAX-PLUGIN.md](../../MINIMAX-PLUGIN.md) |
| MiniMax plugin | `plugins/minimax/.minimax-plugin/plugin.json` + generated `plugins/minimax/skills/treg/SKILL.md`; `scripts/minimax_plugin.py` pre-runs their validator and builds the ZIP | the MiniMax Plugin Marketplace (MiniMax Code + MiniMax Agent), submitted by form as GitHub subdir `plugins/minimax`; skills-only because the package may hold no credential and the bootstrap omits `treg mcp install`, which cannot write a MiniMax config. See [docs/MINIMAX-PLUGIN.md](../../MINIMAX-PLUGIN.md) |
| the domain itself | `GET /.well-known/skills/index.json` + `/.well-known/skills/treg/SKILL.md` | anything speaking the agentskills.io convention (Hermes reads this directly) |
`scripts/build_plugin.py` renders every plugin copy from the one source and `--check` fails if any is
+1 -1
View File
@@ -12,7 +12,7 @@ searching the plugin directory that ChatGPT and Codex share.
> disabled until there is a token. All of them are rendered by the same `scripts/build_plugin.py`
> from the same source; they differ only in the prepended bootstrap. See
> [`docs/CLAUDE-PLUGIN.md`](../docs/CLAUDE-PLUGIN.md), [`docs/DSH-PLUGIN.md`](../docs/DSH-PLUGIN.md)
> and [`docs/MINIMAX-PLUGIN.md`](../docs/MINIMAX-PLUGIN.md) (skills-only, from `minimax/`).
> and [`docs/MINIMAX-PLUGIN.md`](../docs/MINIMAX-PLUGIN.md) (skills-only, from `plugins/minimax/`).
plugin/
├── .codex-plugin/plugin.json the manifest + the listing copy

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

+3 -3
View File
@@ -15,7 +15,7 @@ Five shop windows, four bootstraps, one source:
connector AND the CLI path in one install: the MCP row is disabled until `TREG_TOKEN` exists, so
its bootstrap has to cover both states and steer away from `treg mcp install`, which cannot write
a dsh profile. See docs/DSH-PLUGIN.md.
- **minimax** -> `minimax/skills/treg/SKILL.md` — skills-only (MiniMax forbids credentials in the
- **minimax** -> `plugins/minimax/skills/treg/SKILL.md` — skills-only (MiniMax forbids credentials in the
package), CLI bootstrap with NO `treg mcp install` step. See docs/MINIMAX-PLUGIN.md.
The Claude variant sits at the REPO ROOT rather than under `plugin/` because that one path is
@@ -70,9 +70,9 @@ CURSOR_TARGET = ROOT / "plugins" / "treg" / "skills" / "treg" / "SKILL.md"
DSH_TARGET = ROOT / "dsh" / "skills" / "treg" / "SKILL.md"
# MiniMax (MiniMax Code desktop + MiniMax Agent cloud) prescribes `.minimax-plugin/plugin.json` at
# the plugin root and forbids credentials anywhere in the package, so it ships skills-only from its
# own root — submitted as the GitHub subdirectory `minimax/`, or zipped from inside it. See
# own root — submitted as the GitHub subdirectory `plugins/minimax/`, or zipped from inside it. See
# docs/MINIMAX-PLUGIN.md.
MINIMAX_TARGET = ROOT / "minimax" / "skills" / "treg" / "SKILL.md"
MINIMAX_TARGET = ROOT / "plugins" / "minimax" / "skills" / "treg" / "SKILL.md"
CODEX_BOOTSTRAP = """
## First, check which treg you have
+2 -2
View File
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
"""Validate the MiniMax plugin at `minimax/` against the marketplace's intake rules, and zip it.
"""Validate the MiniMax plugin at `plugins/minimax/` against the marketplace's intake rules, and zip it.
The rules are MiniMax's (docs/MINIMAX-PLUGIN.md carries the source): `.minimax-plugin/plugin.json`
at the package root with no wrapper directory; ASCII-only paths; no symlinks, hardlinks, install
@@ -21,7 +21,7 @@ import zipfile
from pathlib import Path
ROOT = Path(__file__).resolve().parent.parent
PLUGIN = ROOT / "minimax"
PLUGIN = ROOT / "plugins" / "minimax"
MANIFEST = PLUGIN / ".minimax-plugin" / "plugin.json"
CATEGORIES = {"Office", "Studio", "Design & Sites", "Code", "Business", "Sales", "Productivity",
+3 -3
View File
@@ -12,7 +12,7 @@ Five of them now, generated by `scripts/build_plugin.py` from the one source `sr
- **DeepSeek Harness** (root `package.json` + `dsh/`) — no manifest at all: an npm package declaring
`dsh.bundle`, whose patch mounts the skill and a treg MCP row that is disabled until there is a
token. See docs/DSH-PLUGIN.md.
- **MiniMax** (`minimax/`) — skills-only again, because MiniMax rejects any credential in the
- **MiniMax** (`plugins/minimax/`) — skills-only again, because MiniMax rejects any credential in the
package and gates authenticated MCP behind its App/Connector program. Its bootstrap has no
`treg mcp install` step: that command cannot write a MiniMax config. See docs/MINIMAX-PLUGIN.md.
@@ -62,8 +62,8 @@ DSH_SKILL = ROOT / "dsh" / "skills" / "treg" / "SKILL.md"
# MiniMax (MiniMax Code + MiniMax Agent) prescribes `.minimax-plugin/plugin.json` at the plugin root
# and rejects any package holding a credential, so this one is skills-only from its own root
# `minimax/`, submitted as a GitHub subdirectory or a wrapper-free ZIP. See docs/MINIMAX-PLUGIN.md.
MINIMAX_PLUGIN_DIR = ROOT / "minimax"
# `plugins/minimax/`, submitted as a GitHub subdirectory or a wrapper-free ZIP. See docs/MINIMAX-PLUGIN.md.
MINIMAX_PLUGIN_DIR = ROOT / "plugins" / "minimax"
MINIMAX_MANIFEST = MINIMAX_PLUGIN_DIR / ".minimax-plugin" / "plugin.json"
MINIMAX_SKILL = MINIMAX_PLUGIN_DIR / "skills" / "treg" / "SKILL.md"