@mutmutco/cursor-plugin 4.2.6 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/.cursor-plugin/plugin.json +2 -3
  2. package/package.json +1 -1
  3. package/scripts/edit-tool-paths.mjs +4 -4
  4. package/skills/bootstrap/SKILL.md +2 -2
  5. package/skills/bootstrap/seeds/README.template.md +2 -2
  6. package/skills/bootstrap/seeds/gate.template.yml +5 -5
  7. package/skills/bootstrap/seeds/manifest.json +1 -0
  8. package/skills/bootstrap/seeds/test-policy.template.json +4 -0
  9. package/skills/hotfix/SKILL.md +1 -1
  10. package/skills/rcand/SKILL.md +1 -1
  11. package/skills/release/SKILL.md +55 -16
  12. package/skills/secrets/SKILL.md +1 -1
  13. package/skills/stage/SKILL.md +1 -1
  14. package/bin/mmi-hook +0 -2
  15. package/bin/mmi-hook-console.cmd +0 -16
  16. package/bin/mmi-hook.exe +0 -0
  17. package/hooks/cursor-hooks.json +0 -26
  18. package/scripts/command-ladder-core.mjs +0 -339
  19. package/scripts/command-ladder-gate.mjs +0 -126
  20. package/scripts/deny-gate-crash.mjs +0 -179
  21. package/scripts/env-write-lint.mjs +0 -146
  22. package/scripts/hook-io.mjs +0 -22
  23. package/scripts/hook-policy.mjs +0 -78
  24. package/scripts/hook-run.mjs +0 -434
  25. package/scripts/hook-trace.mjs +0 -151
  26. package/scripts/pretooluse-shell-gates.mjs +0 -720
  27. package/scripts/secret-echo-lint.mjs +0 -177
  28. package/scripts/test-command-policy-core.mjs +0 -294
  29. package/scripts/throttle-core.mjs +0 -332
  30. package/scripts/vault-edit-gate.mjs +0 -94
  31. package/skills/browser-automation/SKILL.md +0 -122
  32. package/skills/mmi/SKILL.md +0 -544
  33. package/skills/mmi-doctor/SKILL.md +0 -66
  34. package/skills/mmi-resume/SKILL.md +0 -123
  35. package/skills/onboard/SKILL.md +0 -72
@@ -1,123 +0,0 @@
1
- ---
2
- name: mmi-resume
3
- description: Open a session — self-check, repo status, and the next actionable board item in one pass.
4
- ---
5
-
6
- **Host-native invocation:** Claude `/mmi:mmi-resume` · Codex `$mmi:mmi-resume` · jervcode/Kimi `/skill:mmi-resume` · Kilo `skill` tool. A backticked `/name` in this doc names the matching workflow (this skill or a sibling), not a literal command.
7
-
8
- # /mmi-resume — start of session
9
-
10
- One flow to re-anchor at the top of a session: is the toolchain sound, what does this repo/worktree look
11
- like right now, and what is the single next thing worth doing. Read-only — it renders the picture and gets
12
- out of the way. `/mmi` is the board-only hello-to-work; `/mmi-resume` is the wider session open that folds in
13
- the toolchain self-check and the current-branch snapshot.
14
-
15
- ## Step 0 — toolchain self-check
16
-
17
- ```bash
18
- mmi-cli doctor --self
19
- ```
20
-
21
- `doctor --self` verifies the two things that silently break a session: CLI/plugin version parity against
22
- the published version, and whether the active `gh` token can resolve this repo. It is fast, but it reads
23
- npm and GitHub — it is not offline-safe, and it checks neither PATH nor hook wiring (#3485). On a **hard**
24
- gap it points at the heal path — relay it and run it before working:
25
-
26
- ```bash
27
- mmi-cli plugin heal # only on a hard version/plugin gap; then restart Claude Code / reopen the workspace
28
- ```
29
-
30
- A clean self-check is silent-enough — move straight on. Do not block the snapshot on a soft/advisory note.
31
-
32
- ## Step 1 — repo snapshot
33
-
34
- ```bash
35
- mmi-cli status
36
- ```
37
-
38
- `status` is the unified current-state read for **this** checkout: branch, **release track** (when the repo is
39
- registered — `releaseTrack` + branch topology from Hub META), linked worktrees, your open PRs, your claimed
40
- board items, and whether a local stage is running. It is the "where am I" line — render it, don't re-derive
41
- it from raw `git`/`gh`. Keep the case-preserving `repo` value it reports; that is the workspace identity the
42
- next step must use (for example `mutmutco/MMC-ZuberShade`).
43
-
44
- **Release-track doctrine (#5244):** direct-track repos (`releaseTrack: direct`, plus MMI-Hub via the
45
- `isHubControlRepo` special case) have **only** `development` and `main` — no `rc` branch exists. Never hunt
46
- for, clean up, or run `/rcand` against an `rc` ref on direct-track. When `status` omits `releaseTrack`
47
- (unregistered repo or registry unavailable), resolve it before any train/rc/hotfix/release or branch-hygiene
48
- work:
49
- ```bash
50
- mmi-cli oracle org project get {owner}/{repo} --json
51
- ```
52
-
53
- ### Step 1a — report deferred host cleanup, never perform it here (#5182)
54
-
55
- `/mmi-resume` remains read-only. When `status` names linked worktrees or the workspace has previously
56
- reported a Windows `deferred-lock`, inventory before recommending new work:
57
-
58
- ```bash
59
- git worktree list --porcelain
60
- git -C <linked-worktree> status --porcelain
61
- gh pr view <known-pr> --repo <owner/repo> --json state,headRefName,headRefOid,mergeCommit
62
- ```
63
-
64
- Do not treat a deleted remote branch, a branch name, or `state: MERGED` alone as deletion permission.
65
- Classify the residue using the host-owned cleanup contract in the `mmi` skill:
66
-
67
- - **cleanup candidate** — PR is merged, its `headRefName` and `headRefOid` exactly match the local branch
68
- name/OID, and the registered worktree is clean;
69
- - **deferred-lock** — that exact proof passed, but a prior Windows lock left the path or registration;
70
- - **retained-ambiguous** — dirty/untracked, OID mismatch, unknown PR, active owner/context, or unreadable proof.
71
-
72
- Render the state and the exact path; never delete during `/mmi-resume`. Cleanup happens only in the owning
73
- agent/host flow, from outside the worktree, after draining every context that used it. The SOP deliberately
74
- uses `git branch -D` only after exact merged-PR/head-OID proof because squash delivery can never satisfy
75
- `git branch -d` ancestry. It retries a Windows lock once, then retains and reports—no process killing,
76
- blind recursive delete, or MMI lifecycle command.
77
-
78
- ## Step 2 — the next move
79
-
80
- ```bash
81
- mmi-cli oracle next --repo <repo reported by status>
82
- ```
83
-
84
- Never the retired flat `mmi-cli next` — Wave 3 (#4316) removed that alias; a `flat 'next' alias was
85
- removed` exit means follow the printed `oracle next` path (and `mmi-cli plugin heal` when
86
- `doctor --self` says the plugin is behind). Pass the repository from `status` explicitly; never
87
- reconstruct it by changing case or punctuation. `next` recommends the single most actionable
88
- claimable board item (unblocked, priority-ranked) and prints the exact
89
- `mmi-cli oracle board claim <n>` to take it. Offer it; do not claim on the user's behalf without a go.
90
- For the full board partition (yours / claimable / taken) run `/mmi`.
91
-
92
- ## Step 3 — render, then stop
93
-
94
- Lead with one line: toolchain OK (or the heal to run), the branch + what's in flight, and the one next
95
- item with its claim command. Then stop. The user drives — claim, continue, or file when they say so.
96
-
97
- ## Current-state doors (Hub#4120)
98
-
99
- When answering “what is true now”, **ask the CLI**, not committed markdown inventories or weekly janitor prose.
100
-
101
- | Ask | Verb |
102
- | --- | --- |
103
- | Schedules / harbour lanes | `mmi-cli harbour org schedules` / `--json` |
104
- | Boxes / IPs | `mmi-cli devops runtime box list` |
105
- | Registry / projects | `mmi-cli oracle org project list\|get` |
106
- | Board | `mmi-cli oracle board read` / `mmi-cli oracle next` |
107
- | Docs index freshness | `mmi-cli oracle docs index --check` |
108
-
109
- ## Notes
110
-
111
- - `/mmi-resume` is read-only session orientation. It never claims, moves, or writes.
112
- - Board status moves are automatic (claim, PR open, merge). Never suggest a manual status move.
113
- - Slower, board-partition view → `/mmi`. Readiness-gate view for a new repo/first session → `/onboard`.
114
-
115
- ## Retro — one check before you finish
116
- Before your final report, answer one question honestly: did **this skill's own instructions** misfire
117
- this run — ambiguous wording, a misleading message, or an environment failure it should have warned
118
- about? (Process only — never the user's code or task; e.g. a self-check that reported a false gap, or a
119
- snapshot that named the wrong branch.) If yes, file **one** lesson and move on; a clean run is silent
120
- (hard cap: one per run). It lands on the Hub board (deduped) and is fixed only via a reviewed PR — never
121
- edit the skill live; the retro is advisory, so if the call fails, note it and continue:
122
- `mmi-cli learning skill-lesson --skill mmi-resume --title "<what misfired>" --body "<what; evidence; proposed amendment>"`
123
- (never the retired flat `mmi-cli skill-lesson`).
@@ -1,72 +0,0 @@
1
- ---
2
- name: onboard
3
- description: Guided first session — readiness check, repo status, and the first command to run.
4
- ---
5
-
6
- **Host-native invocation:** Claude `/mmi:onboard` · Codex `$mmi:onboard` · jervcode/Kimi `/skill:onboard` · Kilo `skill` tool. A backticked `/name` in this doc names the matching workflow (this skill or a sibling), not a literal command.
7
-
8
- # /onboard — guided first session
9
-
10
- For a developer's first session in a repo (or a fresh checkout): confirm the repo is wired into the org,
11
- show what state it's in, and hand over the one concrete next command. Read-only — it diagnoses and points,
12
- it does not change anything.
13
-
14
- ## Step 0 — readiness gate
15
-
16
- ```bash
17
- mmi-cli onboard
18
- ```
19
-
20
- `onboard` reports the five things a machine needs to be workable and the exact next command to fix the
21
- first gap:
22
-
23
- - **Track** — the repo's branch + origin (is this an org checkout at all).
24
- - **Board** — is the Project board reachable, and how many items are on it.
25
- - **Registry** — is the repo registered in the Hub (`PROJECT#<slug>` META).
26
- - **Secrets** — is a GitHub token available for the vault path.
27
- - **MMI Hub** — does `mmi-hub status` find the installed CLI and every present host surface at the
28
- gated fleet version, with hourly automatic updates healthy.
29
-
30
- The **Plugin** row is per machine, not per repo. The Hub's thin Claude/Codex catalogs pin exact npm
31
- packages; Git no longer transports plugin content, and background marketplace auto-update stays **off**
32
- so it cannot race Hub maintenance. `mmi-hub` gates a release tag+BOM, converges each present host,
33
- and records last-run evidence. A red row names `mmi-hub install`, `mmi-hub update`, or
34
- `mmi-hub autoupdate on`; no marketplace ref or hand-edited auto-update ceremony remains.
35
-
36
- A `✗` on any line comes with a `Next command:` — run **that** first. Common ones:
37
-
38
- - Hub maintenance missing or stale → `npm install -g @mutmutco/hub` then `mmi-hub install`.
39
- - Hub API URL not configured → `mmi-cli doctor` (safe tooling wiring only; no repository cleanup).
40
- - Repo not registered → a master-admin runs `/bootstrap` (or `mmi-cli oracle org project set <owner/repo>`).
41
- - GitHub auth missing → the dev runs `gh auth login --hostname github.com --git-protocol https --web --scopes "project"`.
42
-
43
- ## Step 1 — the picture
44
-
45
- Once the gates are green:
46
-
47
- ```bash
48
- mmi-cli status # branch, worktrees, your PRs, your claimed items, stage
49
- mmi-cli oracle next # the first claimable item + its claim command
50
- ```
51
-
52
- ## Step 2 — hand over the first move
53
-
54
- Close with one grounding line: gates green (or the one gate to fix), and the single first command —
55
- usually `mmi-cli oracle board claim <n>` for the recommended item, or the readiness fix if a gate is red. Don't
56
- claim on the user's behalf; let them take the first item when ready.
57
-
58
- ## Notes
59
-
60
- - `/onboard` is the first-session, readiness-first wrapper. Once a repo is known-good, `/mmi-resume` is the
61
- faster daily open and `/mmi` is the board.
62
- - Everything here is read-only. The heavier setup (`/bootstrap`) is master-admin only.
63
-
64
- ## Retro — one check before you finish
65
- Before your final report, answer one question honestly: did **this skill's own instructions** misfire
66
- this run — ambiguous wording, a misleading message, or an environment failure it should have warned
67
- about? (Process only — never the user's code or task; e.g. a readiness gate that reported green while a
68
- board read actually failed, or a next command that pointed at the wrong fix.) If yes, file **one** lesson
69
- and move on; a clean run is silent (hard cap: one per run). It lands on the Hub board (deduped) and is
70
- fixed only via a reviewed PR — never edit the skill live; the retro is advisory, so if the call fails,
71
- note it and continue:
72
- `mmi-cli learning skill-lesson --skill onboard --title "<what misfired>" --body "<what; evidence; proposed amendment>"`