@mutmutco/cli 4.5.171 → 4.5.172

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.
@@ -1179,6 +1179,79 @@ init_cli_shared();
1179
1179
  init_hub_auth();
1180
1180
  init_github_client();
1181
1181
 
1182
+ // src/marketplace-autoupdate.ts
1183
+ var CATALOG_CONTENT_REF = "main";
1184
+ var CATALOG_REF_PIN_STEPS = `add \`"ref": "${CATALOG_CONTENT_REF}"\` to this marketplace's \`source\` in ~/.claude/plugins/known_marketplaces.json, then restart Claude`;
1185
+
1186
+ // src/plugin-guard-io.ts
1187
+ init_cli_shared();
1188
+
1189
+ // src/version-lag.ts
1190
+ function parseVersion(v) {
1191
+ const [coreRaw, prereleaseRaw = ""] = v.replace(/^v/, "").split("-", 2);
1192
+ const core = coreRaw.split(".").slice(0, 3).map((part) => {
1193
+ const n = Number.parseInt(part, 10);
1194
+ return Number.isFinite(n) ? n : 0;
1195
+ });
1196
+ while (core.length < 3) core.push(0);
1197
+ return { core, prerelease: prereleaseRaw ? prereleaseRaw.split(".") : [] };
1198
+ }
1199
+ function comparePrerelease(a, b) {
1200
+ if (!a.length && !b.length) return 0;
1201
+ if (!a.length) return 1;
1202
+ if (!b.length) return -1;
1203
+ const len = Math.max(a.length, b.length);
1204
+ for (let i = 0; i < len; i++) {
1205
+ const left = a[i];
1206
+ const right = b[i];
1207
+ if (left === void 0) return -1;
1208
+ if (right === void 0) return 1;
1209
+ const ln = Number.parseInt(left, 10);
1210
+ const rn = Number.parseInt(right, 10);
1211
+ const bothNumeric = String(ln) === left && String(rn) === right;
1212
+ const delta = bothNumeric ? ln - rn : left.localeCompare(right, "en");
1213
+ if (delta !== 0) return delta;
1214
+ }
1215
+ return 0;
1216
+ }
1217
+ function compareVersions(a, b) {
1218
+ const left = parseVersion(a);
1219
+ const right = parseVersion(b);
1220
+ for (let i = 0; i < 3; i++) {
1221
+ const delta = (left.core[i] ?? 0) - (right.core[i] ?? 0);
1222
+ if (delta !== 0) return delta;
1223
+ }
1224
+ return comparePrerelease(left.prerelease, right.prerelease);
1225
+ }
1226
+ function npmReleasedVersionArgs() {
1227
+ return ["view", "@mutmutco/cli", "version"];
1228
+ }
1229
+ function parseNpmVersion(stdout) {
1230
+ const v = stdout.trim();
1231
+ return /^\d+\.\d+\.\d+(-[0-9A-Za-z.-]+)?$/.test(v) ? v : void 0;
1232
+ }
1233
+
1234
+ // src/plugin-guard-io.ts
1235
+ var isWin = process.platform === "win32";
1236
+ var LEGACY_MMI_MARKETPLACE = "mmi";
1237
+ var CLAUDE_RECOVERY = `claude plugin marketplace remove ${LEGACY_MMI_MARKETPLACE} && claude plugin marketplace remove mutmutco && claude plugin marketplace add mutmutco/MMI-Hub --ref main && claude plugin install mmi@mutmutco`;
1238
+ var NPM_VIEW_TIMEOUT_MS = 15e3;
1239
+ function runHostBin(bin, args, opts) {
1240
+ const { step, timeout, env } = opts;
1241
+ const shared = { timeout, stdio: ["ignore", "pipe", "pipe"], maxBuffer: 16 * 1024 * 1024, ...env ? { env } : {} };
1242
+ const file = isWin ? "cmd.exe" : bin;
1243
+ const argv = isWin ? ["/c", bin, ...args] : args;
1244
+ return step ? execFileHard(file, argv, { ...shared, step }) : execFileP(file, argv, shared);
1245
+ }
1246
+ async function fetchNpmReleasedVersion() {
1247
+ try {
1248
+ const { stdout } = await runHostBin("npm", npmReleasedVersionArgs(), { timeout: NPM_VIEW_TIMEOUT_MS });
1249
+ return parseNpmVersion(stdout);
1250
+ } catch {
1251
+ return void 0;
1252
+ }
1253
+ }
1254
+
1182
1255
  // src/registry-client.ts
1183
1256
  init_fetch_retry();
1184
1257
  init_client_version();
@@ -1255,51 +1328,6 @@ init_clean_exit();
1255
1328
  init_cli_shared();
1256
1329
  init_clean_exit();
1257
1330
 
1258
- // src/version-lag.ts
1259
- function parseVersion(v) {
1260
- const [coreRaw, prereleaseRaw = ""] = v.replace(/^v/, "").split("-", 2);
1261
- const core = coreRaw.split(".").slice(0, 3).map((part) => {
1262
- const n = Number.parseInt(part, 10);
1263
- return Number.isFinite(n) ? n : 0;
1264
- });
1265
- while (core.length < 3) core.push(0);
1266
- return { core, prerelease: prereleaseRaw ? prereleaseRaw.split(".") : [] };
1267
- }
1268
- function comparePrerelease(a, b) {
1269
- if (!a.length && !b.length) return 0;
1270
- if (!a.length) return 1;
1271
- if (!b.length) return -1;
1272
- const len = Math.max(a.length, b.length);
1273
- for (let i = 0; i < len; i++) {
1274
- const left = a[i];
1275
- const right = b[i];
1276
- if (left === void 0) return -1;
1277
- if (right === void 0) return 1;
1278
- const ln = Number.parseInt(left, 10);
1279
- const rn = Number.parseInt(right, 10);
1280
- const bothNumeric = String(ln) === left && String(rn) === right;
1281
- const delta = bothNumeric ? ln - rn : left.localeCompare(right, "en");
1282
- if (delta !== 0) return delta;
1283
- }
1284
- return 0;
1285
- }
1286
- function compareVersions(a, b) {
1287
- const left = parseVersion(a);
1288
- const right = parseVersion(b);
1289
- for (let i = 0; i < 3; i++) {
1290
- const delta = (left.core[i] ?? 0) - (right.core[i] ?? 0);
1291
- if (delta !== 0) return delta;
1292
- }
1293
- return comparePrerelease(left.prerelease, right.prerelease);
1294
- }
1295
- function npmReleasedVersionArgs() {
1296
- return ["view", "@mutmutco/cli", "version"];
1297
- }
1298
- function parseNpmVersion(stdout) {
1299
- const v = stdout.trim();
1300
- return /^\d+\.\d+\.\d+(-[0-9A-Za-z.-]+)?$/.test(v) ? v : void 0;
1301
- }
1302
-
1303
1331
  // node_modules/commander/lib/error.js
1304
1332
  var CommanderError = class extends Error {
1305
1333
  /**
@@ -4923,32 +4951,6 @@ var import_node_path6 = require("node:path");
4923
4951
  var import_node_child_process5 = require("node:child_process");
4924
4952
  var import_node_util5 = require("node:util");
4925
4953
 
4926
- // src/marketplace-autoupdate.ts
4927
- var CATALOG_CONTENT_REF = "main";
4928
- var CATALOG_REF_PIN_STEPS = `add \`"ref": "${CATALOG_CONTENT_REF}"\` to this marketplace's \`source\` in ~/.claude/plugins/known_marketplaces.json, then restart Claude`;
4929
-
4930
- // src/plugin-guard-io.ts
4931
- init_cli_shared();
4932
- var isWin = process.platform === "win32";
4933
- var LEGACY_MMI_MARKETPLACE = "mmi";
4934
- var CLAUDE_RECOVERY = `claude plugin marketplace remove ${LEGACY_MMI_MARKETPLACE} && claude plugin marketplace remove mutmutco && claude plugin marketplace add mutmutco/MMI-Hub --ref main && claude plugin install mmi@mutmutco`;
4935
- var NPM_VIEW_TIMEOUT_MS = 15e3;
4936
- function runHostBin(bin, args, opts) {
4937
- const { step, timeout, env } = opts;
4938
- const shared = { timeout, stdio: ["ignore", "pipe", "pipe"], maxBuffer: 16 * 1024 * 1024, ...env ? { env } : {} };
4939
- const file = isWin ? "cmd.exe" : bin;
4940
- const argv = isWin ? ["/c", bin, ...args] : args;
4941
- return step ? execFileHard(file, argv, { ...shared, step }) : execFileP(file, argv, shared);
4942
- }
4943
- async function fetchNpmReleasedVersion() {
4944
- try {
4945
- const { stdout } = await runHostBin("npm", npmReleasedVersionArgs(), { timeout: NPM_VIEW_TIMEOUT_MS });
4946
- return parseNpmVersion(stdout);
4947
- } catch {
4948
- return void 0;
4949
- }
4950
- }
4951
-
4952
4954
  // src/discard-sink.ts
4953
4955
  function nodeDiscardSinkPath(platform = process.platform) {
4954
4956
  return platform === "win32" ? "\\\\.\\NUL" : "/dev/null";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mutmutco/cli",
3
- "version": "4.5.171",
3
+ "version": "4.5.172",
4
4
  "description": "MMI Future CLI — the org dev toolbox and shared cross-IDE engine for every registry-declared MMI coding surface.",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",