@mutmutco/kilo-plugin 3.139.0 → 3.139.2
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/package.json +1 -1
- package/prompts/soul.md +71 -0
- package/scripts/command-ladder-core.mjs +2 -2
- package/scripts/hook-policy.mjs +19 -14
- package/scripts/hook-run.mjs +6 -27
- package/scripts/pretooluse-shell-gates.mjs +155 -15
- package/scripts/secret-echo-lint.mjs +1 -1
- package/server.mjs +0 -46
- package/skills/bootstrap/SKILL.md +2 -2
- package/skills/bootstrap/seeds/gate.template.yml +27 -0
- package/skills/bootstrap/seeds/gitattributes.template +6 -0
- package/skills/bootstrap/seeds/manifest.json +1 -0
- package/skills/mmi/SKILL.md +11 -19
- package/skills/mmi-doctor/SKILL.md +9 -13
- package/skills/stage/SKILL.md +1 -1
- package/scripts/secret-redact.mjs +0 -552
- package/scripts/validate-hook.mjs +0 -156
- package/skills/worktree/SKILL.md +0 -151
package/skills/mmi/SKILL.md
CHANGED
|
@@ -282,7 +282,7 @@ something else* paths.)
|
|
|
282
282
|
answers from the dev for each — draft where you can, ask where you can't (the template form is
|
|
283
283
|
interactive and won't drive in a non-TTY agent shell, so collect the fields, then create directly).
|
|
284
284
|
3. **Submit via `mmi-cli oracle issue create`** — the canonical create path. Before filing, read the live
|
|
285
|
-
|
|
285
|
+
command contract from `mmi-cli explain oracle issue create --json`; flags change, and a missing documented flag means
|
|
286
286
|
the installed CLI is stale until a fresh local build proves otherwise. It maps `--type` to the label,
|
|
287
287
|
`--priority` sets the board Priority **field** (never a `priority:*` label — #416), and `--surface`
|
|
288
288
|
supplies the repository's required single surface label. It always prints `{number,url}` JSON. Never
|
|
@@ -326,9 +326,8 @@ Pick up to two, in priority order:
|
|
|
326
326
|
1. **Split + fan out** — a single item plainly too large for one PR (body is multi-part, an umbrella or
|
|
327
327
|
epic). Offer to slice it into child issues. (First because it *creates* the items the rest act on.)
|
|
328
328
|
2. **Batch** — 2+ claimable items that are one coherent unit (shared title-prefix family, same subsystem)
|
|
329
|
-
**and** touch overlapping/adjacent paths. Coupled →
|
|
330
|
-
3. **Parallel** — 2+ items that are mutually independent and touch **disjoint paths**. Independent →
|
|
331
|
-
worktrees, **one PR each**, run concurrently.
|
|
329
|
+
**and** touch overlapping/adjacent paths. Coupled → **one PR**.
|
|
330
|
+
3. **Parallel** — 2+ items that are mutually independent and touch **disjoint paths**. Independent → **one PR each**, run concurrently.
|
|
332
331
|
4. **Background** — a single long-running item (broad refactor, large build/sweep). Kick it off in the
|
|
333
332
|
background so the dev isn't blocked.
|
|
334
333
|
|
|
@@ -356,27 +355,20 @@ Offer lines — one line each, no UI, no "(Recommended)", phrased as available l
|
|
|
356
355
|
- **Background** — `#22 looks long-running — I can take it in the background so you're not blocked.`
|
|
357
356
|
- **Split** — `#60 looks large — I can slice it into child issues and fan them out, if you want.`
|
|
358
357
|
|
|
359
|
-
Act-paths run only on the dev's explicit go.
|
|
360
|
-
|
|
361
|
-
work should keep all related sequential issues in the same branch/PR where possible instead of merging and
|
|
362
|
-
destroying the worktree after each issue:
|
|
358
|
+
Act-paths run only on the dev's explicit go. MMI coordinates board and PR outcomes, while the host owns
|
|
359
|
+
workspace mechanics:
|
|
363
360
|
|
|
364
|
-
- **PR metadata:** read
|
|
361
|
+
- **PR metadata:** read `mmi-cli explain devops pr create --json` or `mmi-cli explain devops pr edit --json` before the
|
|
365
362
|
write. For multiline Markdown, materialize a temporary UTF-8 body file, pass its real path with
|
|
366
363
|
`--body-file <path>`, and remove it after the write succeeds. Do not pipe the body to `--body-file -`;
|
|
367
364
|
host prose guards require the materialized-file path.
|
|
368
|
-
- **Batch:**
|
|
365
|
+
- **Batch:** claim each item (the Step 5 claim loop), make the coupled edits, and open **one** PR
|
|
369
366
|
(`Closes #…, #…`). When an issue must stay open (HOLD/prep), never write `Does not close #N` — GitHub
|
|
370
367
|
still closes it; use `Part of #N` / `Refs #N` / `leaves #N open` only (JC#495).
|
|
371
|
-
- **
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
item**. If two would touch the same file, serialize them or fold into a batch instead.
|
|
376
|
-
- **Background:** run off the hot path (a background task or CI job); poll with `/loop`, test with `/stage`
|
|
377
|
-
if useful; it still lands via its own worktree + PR. Bound it — never block silently.
|
|
378
|
-
- **Stage/worktree:** a local `/stage` is tied to the worktree that started it. Stop/destroy and recreate
|
|
379
|
-
it before moving to another worktree, or warn first when intent is unclear.
|
|
368
|
+
- **Parallel:** run independent work concurrently, **one PR per item**. If two would touch the same file,
|
|
369
|
+
serialize them or fold them into a batch instead.
|
|
370
|
+
- **Background:** run off the hot path (a background task or CI job); poll with `/loop` if useful. Bound it
|
|
371
|
+
— never block silently.
|
|
380
372
|
- **Split:** keep the original as the umbrella; file each child as a **native sub-issue** of it with
|
|
381
373
|
`mmi-cli oracle issue create --parent <umbrella-ref> …` (or `mmi-cli oracle issue link-child <umbrella> <child>` for a
|
|
382
374
|
child that already exists). The parent then renders a sub-issue checklist with each child's state and the
|
|
@@ -14,10 +14,10 @@ mmi-cli doctor
|
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
A plain run may repair machine-global plugin wiring and guarded caches, but **never mutates the
|
|
17
|
-
repository** (#5023). It reports managed `.gitignore`, docs-index, board mechanics,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
a catalog gap check.
|
|
17
|
+
repository** (#5023). It reports managed `.gitignore`, docs-index, board mechanics, and aged scratch.
|
|
18
|
+
Local workspace lifecycle is host-owned; doctor does not relocate or delete worktrees. Run
|
|
19
|
+
`mmi-cli doctor --apply` only when the operator explicitly wants guarded repository maintenance. Secrets
|
|
20
|
+
stay out of doctor; use `mmi-cli vault secrets diff` for a catalog gap check.
|
|
21
21
|
|
|
22
22
|
Doctor does **not** converge CLI or host versions (MMI-Hub#4954). `mmi-hub update` is the single
|
|
23
23
|
writer of those versions; doctor only reports lag and last-run journal evidence. `mmi-hub status`
|
|
@@ -43,22 +43,18 @@ Do **not** chain these as a `/mmi-doctor` substitute:
|
|
|
43
43
|
mmi-cli doctor --self
|
|
44
44
|
mmi-cli oracle board doctor
|
|
45
45
|
mmi-cli vault secrets diff
|
|
46
|
-
mmi-cli worktree gc
|
|
47
46
|
```
|
|
48
47
|
|
|
49
|
-
Plain `mmi-cli doctor` covers safe tooling repair and diagnosis. Explicit `doctor --apply` covers
|
|
50
|
-
|
|
48
|
+
Plain `mmi-cli doctor` covers safe tooling repair and diagnosis. Explicit `doctor --apply` covers
|
|
49
|
+
repository maintenance; the host owns workspace cleanup. Reach for individual verbs only when you want
|
|
50
|
+
one surface alone.
|
|
51
51
|
|
|
52
52
|
## Notes
|
|
53
53
|
|
|
54
54
|
- `/mmi-doctor` is the hygiene pass; `/mmi-resume` is the lighter read-only session open.
|
|
55
55
|
- Prefer one doctor run over hand-editing board items, gitignore blocks, or marketplace pins.
|
|
56
|
-
-
|
|
57
|
-
|
|
58
|
-
exists, or when the jerv lease ledger points at another `mmi-worktrees` root (#4900 / #4897).
|
|
59
|
-
Run hygiene from the canonical `E:\AI Projects\Mutatis Mutandis\` primary — not from
|
|
60
|
-
`C:\Users\ssari\Projects\`. Treat a non-empty jerv worktree-lease ledger as a leak even if
|
|
61
|
-
this clone's `git worktree list` is empty.
|
|
56
|
+
- The host owns workspace roots, cleanup, and any lease policy. Doctor diagnoses MMI tooling and does
|
|
57
|
+
not relocate or delete local worktrees.
|
|
62
58
|
|
|
63
59
|
## Retro — one check before you finish
|
|
64
60
|
Before your final report, answer one question honestly: did **this skill's own instructions** misfire
|
package/skills/stage/SKILL.md
CHANGED
|
@@ -128,7 +128,7 @@ The stage URL, what's running (server + tools), the workspace path (`tmp/stage/`
|
|
|
128
128
|
|
|
129
129
|
- `/stage` is local — no AWS, no deploy, no board or version effect. The one cloud exception is
|
|
130
130
|
`--live`: an on-demand **dev** stage of your branch, gated to your IP at the Cloudflare edge (above).
|
|
131
|
-
-
|
|
131
|
+
- Remote rc/live environments move only through `/rcand`, `/release`, and `/hotfix`.
|
|
132
132
|
- Everything is gitignored; `/stage` never produces a tracked change.
|
|
133
133
|
- **Playwright MCP output goes to `tmp/`**, never the repo root: if you drive the Playwright MCP server,
|
|
134
134
|
pass `--output-dir tmp/playwright-mcp` (or point its output there). `.playwright-mcp/` is kept gitignored
|