@mutmutco/cli 2.28.1 → 2.30.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.
- package/README.md +4 -2
- package/dist/index.cjs +16 -3
- package/dist/main.cjs +6950 -5668
- package/dist/saga.cjs +148 -76
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -32,8 +32,10 @@ mmi-cli doctor --json
|
|
|
32
32
|
- `mmi-cli saga note`, `saga show`, `saga health`, `saga session`, `saga capture`, and `saga head-update` write and inspect session continuity through a cached Hub session token. Saga writes are local-first: a transient server miss queues the note in a local pending file and a detached flush worker delivers it — a queued note is normal, not a failure.
|
|
33
33
|
- `mmi-cli kb get` and `kb list` read the MM KB source (`kb list [prefix]` lists document paths, optionally under a prefix).
|
|
34
34
|
- `mmi-cli northstar push|pull|list|status|sync|delete|graduate` manages North Star, the per-user plan/SSOT store.
|
|
35
|
-
`northstar push`
|
|
36
|
-
|
|
35
|
+
`northstar push` accepts `--body-file <path|->` to write and push in one step (or push an existing
|
|
36
|
+
`plans/<slug>.md`). It is async by default — it queues a durable background push and prints a "queued" line,
|
|
37
|
+
which is the expected success path. `northstar pull`/`show` auto-resolve a unique cross-project slug when
|
|
38
|
+
manual `list` shows plans from other repos. `northstar status` shows pending/conflicted pushes; `northstar sync`
|
|
37
39
|
(or `push --wait`) gives durable server confirmation. Never treat a queued push as failure.
|
|
38
40
|
`northstar graduate <slug> --merged-pr <url-or-number> --org-visible` marks a built-and-merged plan for
|
|
39
41
|
KB curation without echoing the plan body.
|
package/dist/index.cjs
CHANGED
|
@@ -2,8 +2,13 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __esm = (fn, res) => function __init() {
|
|
6
|
-
|
|
5
|
+
var __esm = (fn, res, err) => function __init() {
|
|
6
|
+
if (err) throw err[0];
|
|
7
|
+
try {
|
|
8
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
9
|
+
} catch (e) {
|
|
10
|
+
throw err = [e], e;
|
|
11
|
+
}
|
|
7
12
|
};
|
|
8
13
|
var __export = (target, all) => {
|
|
9
14
|
for (var name in all)
|
|
@@ -87,8 +92,16 @@ function socketPath(env = process.env, platform = process.platform, user) {
|
|
|
87
92
|
const hash = (0, import_node_crypto.createHash)("sha256").update(name).digest("hex").slice(0, 12);
|
|
88
93
|
return platform === "win32" ? `\\\\.\\pipe\\mmi-cli-${hash}` : (0, import_node_path2.join)(daemonDir(env), `mmi-cli-${hash}.sock`);
|
|
89
94
|
}
|
|
95
|
+
function argvReadsStdin(args) {
|
|
96
|
+
for (let i = 0; i < args.length; i++) {
|
|
97
|
+
const a = args[i];
|
|
98
|
+
if (a.endsWith("-file=-")) return true;
|
|
99
|
+
if (a.endsWith("-file") && args[i + 1] === "-") return true;
|
|
100
|
+
}
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
90
103
|
function daemonEligible(args) {
|
|
91
|
-
return args[0] === "saga" && HOT_VERBS.has(args[1] ?? "") && !args.includes("--run") && !args.includes("--help") && !args.includes("-h");
|
|
104
|
+
return args[0] === "saga" && HOT_VERBS.has(args[1] ?? "") && !args.includes("--run") && !args.includes("--help") && !args.includes("-h") && !argvReadsStdin(args);
|
|
92
105
|
}
|
|
93
106
|
function buildStamp(version, bundleMtimeMs) {
|
|
94
107
|
return `${version}#${Math.trunc(bundleMtimeMs)}`;
|