@tacuchi/agent-workflow-cli 20.23.0 → 20.25.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 +34 -11
- package/dist/application/context/budget-service.js +128 -0
- package/dist/application/context/budget-service.js.map +1 -0
- package/dist/application/context/bundle-root.js +41 -0
- package/dist/application/context/bundle-root.js.map +1 -0
- package/dist/application/context/manifest.js +150 -0
- package/dist/application/context/manifest.js.map +1 -0
- package/dist/application/context/measure.js +227 -0
- package/dist/application/context/measure.js.map +1 -0
- package/dist/application/context/plan-service.js +177 -0
- package/dist/application/context/plan-service.js.map +1 -0
- package/dist/application/dev-only-services.js +17 -14
- package/dist/application/dev-only-services.js.map +1 -1
- package/dist/application/mcp-host-reader.js +3 -1
- package/dist/application/mcp-host-reader.js.map +1 -1
- package/dist/application/mcp-host-writer.js +86 -41
- package/dist/application/mcp-host-writer.js.map +1 -1
- package/dist/application/plugin-doctor/hooks.js +7 -1
- package/dist/application/plugin-doctor/hooks.js.map +1 -1
- package/dist/application/self/bootstrap.js +30 -16
- package/dist/application/self/bootstrap.js.map +1 -1
- package/dist/application/self/clean-legacy.js +5 -0
- package/dist/application/self/clean-legacy.js.map +1 -1
- package/dist/application/self/detect-hosts.js +31 -45
- package/dist/application/self/detect-hosts.js.map +1 -1
- package/dist/application/self/doctor-self.js +7 -2
- package/dist/application/self/doctor-self.js.map +1 -1
- package/dist/application/self/hooks-toml.js +232 -0
- package/dist/application/self/hooks-toml.js.map +1 -0
- package/dist/application/self/host-states.js +290 -0
- package/dist/application/self/host-states.js.map +1 -0
- package/dist/application/self/install-hooks.js +98 -4
- package/dist/application/self/install-hooks.js.map +1 -1
- package/dist/application/self/install-skill.js +28 -16
- package/dist/application/self/install-skill.js.map +1 -1
- package/dist/application/self/install-targets.js +23 -0
- package/dist/application/self/install-targets.js.map +1 -1
- package/dist/application/self/mcp-config.js +13 -19
- package/dist/application/self/mcp-config.js.map +1 -1
- package/dist/application/self/skills-manager.js +9 -0
- package/dist/application/self/skills-manager.js.map +1 -1
- package/dist/application/self/uninstall.js +162 -26
- package/dist/application/self/uninstall.js.map +1 -1
- package/dist/cli/commands/context-budget.js +79 -0
- package/dist/cli/commands/context-budget.js.map +1 -0
- package/dist/cli/commands/context-plan.js +75 -0
- package/dist/cli/commands/context-plan.js.map +1 -0
- package/dist/cli/commands/dev-only.js +4 -1
- package/dist/cli/commands/dev-only.js.map +1 -1
- package/dist/cli/commands/index.js +4 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/mcp.js +16 -8
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/help-groups.js +4 -0
- package/dist/cli/help-groups.js.map +1 -1
- package/dist/cli/parser.js +4 -0
- package/dist/cli/parser.js.map +1 -1
- package/dist/cli/tui/components/host-admin-section.js +69 -60
- package/dist/cli/tui/components/host-admin-section.js.map +1 -1
- package/dist/cli/tui/data/workflow-content.js +6 -0
- package/dist/cli/tui/data/workflow-content.js.map +1 -1
- package/dist/cli/tui/hosts.js +39 -17
- package/dist/cli/tui/hosts.js.map +1 -1
- package/dist/cli/tui/tabs/config-tab.js +3 -3
- package/dist/cli/tui/tabs/config-tab.js.map +1 -1
- package/dist/cli/tui/tabs/mcp-tab-helpers.js +7 -1
- package/dist/cli/tui/tabs/mcp-tab-helpers.js.map +1 -1
- package/dist/cli/tui/tabs/mcp-tab.js +32 -10
- package/dist/cli/tui/tabs/mcp-tab.js.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.js +13 -4
- package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
- package/dist/cli/tui/tabs/status-tab.js +11 -17
- package/dist/cli/tui/tabs/status-tab.js.map +1 -1
- package/dist/cli/tui/tabs/workflow-tab.js +7 -3
- package/dist/cli/tui/tabs/workflow-tab.js.map +1 -1
- package/dist/cli/tui/tui-prefs.js +7 -1
- package/dist/cli/tui/tui-prefs.js.map +1 -1
- package/dist/domain/harnesses.js +129 -0
- package/dist/domain/harnesses.js.map +1 -1
- package/dist/domain/host-verification.js +20 -0
- package/dist/domain/host-verification.js.map +1 -0
- package/package.json +3 -2
- package/skills/w/SKILL.md +2 -2
- package/skills/w/commands/export-diagrams.md +10 -27
- package/skills/w/commands/export-manuals.md +13 -29
- package/skills/w/commands/export-reports.md +11 -27
- package/skills/w/commands/export-scripts.md +12 -29
- package/skills/w/commands/fix-git.md +21 -32
- package/skills/w/commands/generate-launch.md +13 -32
- package/skills/w/commands/persist.md +8 -29
- package/skills/w/commands/plan-exec.md +14 -30
- package/skills/w/commands/plan-new.md +11 -38
- package/skills/w/commands/plan-refine.md +13 -41
- package/skills/w/commands/quick.md +13 -20
- package/skills/w/commands/resume.md +17 -33
- package/skills/w/commands/spec-new.md +28 -69
- package/skills/w/commands/spec-refine.md +12 -37
- package/skills/w/commands/status.md +12 -19
- package/skills/w/commands/workspace-init.md +13 -20
- package/skills/w/context/MANIFEST.json +486 -0
- package/skills/w/harness/HARNESS.md +24 -17
- package/skills/w/loops/CHASSIS.md +53 -104
- package/skills/w/loops/CODE-POLICIES.md +4 -9
- package/skills/w/loops/plan-exec-loop/LOOP.md +5 -12
- package/skills/w/loops/plan-new-loop/LOOP.md +8 -32
- package/skills/w/loops/plan-refine-loop/LOOP.md +8 -36
- package/skills/w/loops/quick-loop/LOOP.md +4 -10
- package/skills/w/loops/spec-refine-loop/LOOP.md +7 -49
- package/skills/w/modules/ADOPTED-CONTEXT.md +10 -0
- package/skills/w/modules/COMPACTION.md +13 -0
- package/skills/w/modules/DB-RESEARCH-RULE.md +11 -0
- package/skills/w/modules/DB-SCRIPTS-ONLY.md +12 -0
- package/skills/w/modules/EXEC-DB-POLICY.md +7 -0
- package/skills/w/modules/EXEC-PROBE-TASKS.md +11 -0
- package/skills/w/modules/IDEATION-GATE.md +16 -0
- package/skills/w/modules/INCREMENTAL-STRATEGY.md +7 -0
- package/skills/w/modules/LAUNCH-DETECTION.md +26 -0
- package/skills/w/modules/PERSIST-ROUTING.md +16 -0
- package/skills/w/modules/PLAN-DESIGN-SPECS.md +12 -0
- package/skills/w/modules/PLAN-INPUT.md +26 -0
- package/skills/w/modules/PLAN-MODE.md +26 -0
- package/skills/w/modules/PLAN-PROBE-TASKS.md +10 -0
- package/skills/w/modules/PLAN-REFINE-DESIGN-SPECS.md +7 -0
- package/skills/w/modules/PLAN-REFINE-KEYS.md +9 -0
- package/skills/w/modules/PLAN-REFINE-SPLIT.md +12 -0
- package/skills/w/modules/PLAN-SPLIT-GATE.md +14 -0
- package/skills/w/modules/PROBE.md +12 -0
- package/skills/w/modules/PROMPT-CONTINUITY.md +13 -0
- package/skills/w/modules/RECONNAISSANCE.md +48 -0
- package/skills/w/modules/REPLANNING.md +12 -0
- package/skills/w/modules/SESSION-NUMBERING.md +19 -0
- package/skills/w/modules/SIMULATION-LIFECYCLE.md +11 -0
- package/skills/w/modules/SPEC-CHANGE-SHAPE.md +37 -0
- package/skills/w/modules/SPEC-REFINE-KEYS.md +14 -0
- package/skills/w/modules/SPLIT-GATE.md +42 -0
- package/skills/w/modules/WORKSPACE-SCAFFOLD.md +28 -0
- package/skills/w/roles/ui-spec/ROLE.md +1 -1
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { mkdir, readFile, readdir, rm, writeFile } from "node:fs/promises";
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
|
+
import { isDeepStrictEqual } from "node:util";
|
|
4
|
+
import { parse as parseToml } from "smol-toml";
|
|
5
|
+
import { countOurHookEntries, isOurCommand, stripOurHookEntries as stripOurKimiHookEntries, } from "./hooks-toml.js";
|
|
6
|
+
import { resolveBundledHookTemplate } from "./install-hooks.js";
|
|
3
7
|
import { LEGACY_SKILL_NAMES, SKILL_DIR_NAME, TARGET_ROOTS, USER_COMMANDS_BY_TARGET, isOwnedBundleDir, isOwnedSynthesizedDir, removeDirIfEmpty, } from "./install-skill.js";
|
|
4
|
-
import { COMMAND_SKILLS_HOSTS, INSTALL_TARGETS, LEGACY_SKILL_ROOTS_BY_TARGET, } from "./install-targets.js";
|
|
8
|
+
import { COMMAND_SKILLS_HOSTS, HOOKS_MANAGED_TARGETS, HOST_INSTALL_TARGETS, INSTALL_TARGETS, LEGACY_SKILL_ROOTS_BY_TARGET, SHARED_INSTALL_TARGETS, } from "./install-targets.js";
|
|
5
9
|
import { updateAgentsLock } from "./uninstall-skill.js";
|
|
6
10
|
// Synthesized `w-<command>` skills are removed for the COMMAND_SKILLS_HOSTS
|
|
7
11
|
// (shared value from install-targets.ts — install/uninstall symmetric by
|
|
@@ -10,10 +14,13 @@ import { updateAgentsLock } from "./uninstall-skill.js";
|
|
|
10
14
|
// anchor, loose skills): never delete a foreign dir by prefix alone.
|
|
11
15
|
// `agent-workflow-` covers the pre-rename model.
|
|
12
16
|
const SYNTHESIZED_SKILL_PREFIXES = ["w-", "agent-workflow-"];
|
|
13
|
-
//
|
|
14
|
-
//
|
|
15
|
-
|
|
16
|
-
|
|
17
|
+
// `--target all` means EVERY HOST, exactly like `install-skill --target all`:
|
|
18
|
+
// the two used to disagree (install skipped `agents`, uninstall included it), so
|
|
19
|
+
// `all` removed more than `all` had installed. Shared skills dirs are reached
|
|
20
|
+
// explicitly with `--target agents`.
|
|
21
|
+
const ALL_TARGETS = HOST_INSTALL_TARGETS;
|
|
22
|
+
// Every target stays a valid explicit choice — including the shared ones.
|
|
23
|
+
const TARGET_CHOICES = [...INSTALL_TARGETS, "all"];
|
|
17
24
|
// Derived from the install-side map so both sides stay symmetric by construction.
|
|
18
25
|
export const USER_COMMANDS_RELPATH_BY_TARGET = {
|
|
19
26
|
...Object.fromEntries(INSTALL_TARGETS.map((t) => [t, USER_COMMANDS_BY_TARGET[t]?.relpath ?? null])),
|
|
@@ -31,17 +38,21 @@ const LEGACY_USER_COMMANDS_RELPATH_BY_TARGET = {
|
|
|
31
38
|
gemini: null,
|
|
32
39
|
opencode: null,
|
|
33
40
|
crush: null,
|
|
41
|
+
kimi: null,
|
|
34
42
|
};
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
/**
|
|
44
|
+
* Per-host hook removers, mirroring `HOOK_INSTALLERS` on the install side. The
|
|
45
|
+
* MAP is the set: there is no second list of "targets we can clean" to fall out
|
|
46
|
+
* of step with the branches — `hookRemoverCoverage()` reads this very object.
|
|
47
|
+
*/
|
|
48
|
+
const HOOK_REMOVERS = {
|
|
49
|
+
claude: removeClaudeHooks,
|
|
50
|
+
kimi: removeKimiHooks,
|
|
51
|
+
};
|
|
52
|
+
/** Hooks-managed targets with no remover wired — they would strand hooks. Must be empty. */
|
|
53
|
+
export function hookRemoverCoverage() {
|
|
54
|
+
return [...HOOKS_MANAGED_TARGETS].filter((t) => HOOK_REMOVERS[t] === undefined);
|
|
55
|
+
}
|
|
45
56
|
export async function selfUninstall(args, ctx) {
|
|
46
57
|
const skillOnly = args.flags.has("--skill-only");
|
|
47
58
|
const flags = {
|
|
@@ -57,7 +68,7 @@ export async function selfUninstall(args, ctx) {
|
|
|
57
68
|
ok: false,
|
|
58
69
|
error: {
|
|
59
70
|
code: "INVALID_TARGET",
|
|
60
|
-
message: `--target must be one of: ${TARGET_CHOICES.join(", ")}. Got '${targetArg}'.`,
|
|
71
|
+
message: `--target must be one of: ${TARGET_CHOICES.join(", ")}. Got '${targetArg}'. 'all' means every host (${ALL_TARGETS.join("|")}); shared skills dirs are explicit.`,
|
|
61
72
|
},
|
|
62
73
|
exitCode: 1,
|
|
63
74
|
};
|
|
@@ -68,7 +79,11 @@ export async function selfUninstall(args, ctx) {
|
|
|
68
79
|
for (const target of targets) {
|
|
69
80
|
steps.push(...(await uninstallOneTarget(ctx, home, target, flags)));
|
|
70
81
|
}
|
|
71
|
-
|
|
82
|
+
// The lock lives in the shared `.agents` root — and `oz` installs INTO that
|
|
83
|
+
// same root, so it must be pruned whenever any target is rooted there, not
|
|
84
|
+
// only when the literal `agents` target was asked for.
|
|
85
|
+
const touchesAgentsRoot = targets.some((t) => TARGET_ROOTS[t][0] === ".agents");
|
|
86
|
+
const lockResult = touchesAgentsRoot
|
|
72
87
|
? await updateAgentsLock(ctx, home, flags.includeLegacy, flags.dryRun)
|
|
73
88
|
: { updated: false };
|
|
74
89
|
const removedCount = steps.filter((s) => s.status === "removed").length;
|
|
@@ -85,6 +100,11 @@ export async function selfUninstall(args, ctx) {
|
|
|
85
100
|
lock_updated: lockResult.updated,
|
|
86
101
|
...(lockResult.path ? { lock_path: lockResult.path } : {}),
|
|
87
102
|
...(lockResult.warning ? { lock_warning: lockResult.warning } : {}),
|
|
103
|
+
...(targetArg === "all"
|
|
104
|
+
? {
|
|
105
|
+
untouched_note: `--target all covers hosts only (${ALL_TARGETS.join(", ")}); shared skills dirs are removed explicitly with --target ${SHARED_INSTALL_TARGETS.join(" / --target ")}.`,
|
|
106
|
+
}
|
|
107
|
+
: {}),
|
|
88
108
|
},
|
|
89
109
|
exitCode: 0,
|
|
90
110
|
};
|
|
@@ -213,8 +233,23 @@ async function removeUserCommands(ctx, home, target, includeLegacy, dryRun) {
|
|
|
213
233
|
return out;
|
|
214
234
|
}
|
|
215
235
|
async function removeHooks(ctx, home, target, dryRun) {
|
|
216
|
-
if (!
|
|
236
|
+
if (!HOOKS_MANAGED_TARGETS.has(target))
|
|
217
237
|
return null;
|
|
238
|
+
const remover = HOOK_REMOVERS[target];
|
|
239
|
+
if (remover === undefined) {
|
|
240
|
+
// Guarded by hookRemoverCoverage(); reported rather than silently skipped.
|
|
241
|
+
return {
|
|
242
|
+
target,
|
|
243
|
+
kind: "hooks",
|
|
244
|
+
path: "(none)",
|
|
245
|
+
status: "skipped",
|
|
246
|
+
reason: `'${target}' is a hooks-managed host with no remover wired — report this as a CLI bug`,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
return remover(ctx, home, target, dryRun);
|
|
250
|
+
}
|
|
251
|
+
/** Claude Code: strip our entries from the `hooks{}` map in settings.json. */
|
|
252
|
+
async function removeClaudeHooks(ctx, home, target, dryRun) {
|
|
218
253
|
const settingsPath = join(home, ".claude", "settings.json");
|
|
219
254
|
if (!(await ctx.fs.exists(settingsPath)))
|
|
220
255
|
return null;
|
|
@@ -230,8 +265,9 @@ async function removeHooks(ctx, home, target, dryRun) {
|
|
|
230
265
|
}
|
|
231
266
|
if (parsed === null)
|
|
232
267
|
return null;
|
|
233
|
-
const
|
|
234
|
-
|
|
268
|
+
const template = await loadHookTemplate(ctx);
|
|
269
|
+
const removed = stripOurHookEntries(parsed, template);
|
|
270
|
+
if (removed.events.length === 0)
|
|
235
271
|
return null;
|
|
236
272
|
if (!dryRun)
|
|
237
273
|
await persistSettings(home, settingsPath, parsed);
|
|
@@ -240,9 +276,61 @@ async function removeHooks(ctx, home, target, dryRun) {
|
|
|
240
276
|
kind: "hooks",
|
|
241
277
|
path: settingsPath,
|
|
242
278
|
status: dryRun ? "dry-run" : "removed",
|
|
243
|
-
reason: `Removed
|
|
279
|
+
reason: `Removed ${removed.entries} of our hook entries under: ${removed.events.join(", ")}${removed.preserved > 0 ? ` (${removed.preserved} of your own entries preserved)` : ""}`,
|
|
280
|
+
};
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Kimi Code: drop our marked block from `~/.kimi-code/config.toml`. Everything
|
|
284
|
+
* outside the markers — the user's models, providers and any hooks of their own
|
|
285
|
+
* — is preserved byte for byte, and the file is backed up before the write.
|
|
286
|
+
*/
|
|
287
|
+
async function removeKimiHooks(ctx, home, target, dryRun) {
|
|
288
|
+
const configPath = join(home, ".kimi-code", "config.toml");
|
|
289
|
+
if (!(await ctx.fs.exists(configPath)))
|
|
290
|
+
return null;
|
|
291
|
+
const current = await ctx.fs.readText(configPath);
|
|
292
|
+
const { text, removed } = stripOurKimiHookEntries(current);
|
|
293
|
+
if (removed === 0)
|
|
294
|
+
return null;
|
|
295
|
+
if (!dryRun) {
|
|
296
|
+
await persistTextWithBackup(configPath, current, text);
|
|
297
|
+
}
|
|
298
|
+
// Belt: if a parse still sees hooks of ours, the host wrote them in a shape the
|
|
299
|
+
// text sweep does not recognise. Say so instead of reporting a clean removal.
|
|
300
|
+
const leftover = dryRun ? 0 : (countOurHookEntries(text, parseToml) ?? 0);
|
|
301
|
+
return {
|
|
302
|
+
target,
|
|
303
|
+
kind: "hooks",
|
|
304
|
+
path: configPath,
|
|
305
|
+
status: dryRun ? "dry-run" : "removed",
|
|
306
|
+
reason: leftover > 0
|
|
307
|
+
? `Removed ${removed} of our [[hooks]] entries, but ${leftover} more remain in a shape this version does not recognise — remove them by hand`
|
|
308
|
+
: `Removed ${removed} of our [[hooks]] entries; the rest of config.toml is untouched`,
|
|
244
309
|
};
|
|
245
310
|
}
|
|
311
|
+
async function persistTextWithBackup(path, original, next) {
|
|
312
|
+
const ts = Math.floor(Date.now() / 1000);
|
|
313
|
+
try {
|
|
314
|
+
await writeFile(`${path}.bak.${ts}`, original, "utf8");
|
|
315
|
+
}
|
|
316
|
+
catch {
|
|
317
|
+
// best-effort backup
|
|
318
|
+
}
|
|
319
|
+
await writeFile(path, next, "utf8");
|
|
320
|
+
}
|
|
321
|
+
/** The bundled template, or null when it cannot be read (ownership then falls back to the command prefix). */
|
|
322
|
+
async function loadHookTemplate(ctx) {
|
|
323
|
+
try {
|
|
324
|
+
const path = await resolveBundledHookTemplate();
|
|
325
|
+
if (path === null || !(await ctx.fs.exists(path)))
|
|
326
|
+
return null;
|
|
327
|
+
const parsed = JSON.parse(await ctx.fs.readText(path));
|
|
328
|
+
return parsed?.hooks && typeof parsed.hooks === "object" ? parsed : null;
|
|
329
|
+
}
|
|
330
|
+
catch {
|
|
331
|
+
return null;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
246
334
|
async function tryParseSettings(path) {
|
|
247
335
|
let data;
|
|
248
336
|
try {
|
|
@@ -258,16 +346,64 @@ async function tryParseSettings(path) {
|
|
|
258
346
|
return null;
|
|
259
347
|
return data;
|
|
260
348
|
}
|
|
261
|
-
|
|
349
|
+
/**
|
|
350
|
+
* Removes OUR hook entries and nothing else.
|
|
351
|
+
*
|
|
352
|
+
* It used to delete the whole event whenever its name matched one we install —
|
|
353
|
+
* so a user with their own `PreToolUse` hook lost it on uninstall, exactly the
|
|
354
|
+
* opposite of what the code claimed to do. Ownership is now decided per ENTRY:
|
|
355
|
+
* an entry deep-equal to one in the bundled template is ours, and so is one
|
|
356
|
+
* whose every command invokes this CLI (covers templates that drifted since
|
|
357
|
+
* install). An entry mixing our command with the user's is left alone: it
|
|
358
|
+
* cannot be split without guessing.
|
|
359
|
+
*
|
|
360
|
+
* Scanning every event, not a hardcoded list, also means a new event added to
|
|
361
|
+
* the template is swept without touching this code.
|
|
362
|
+
*/
|
|
363
|
+
export function stripOurHookEntries(data, template) {
|
|
262
364
|
const hooks = data.hooks;
|
|
263
|
-
const
|
|
264
|
-
|
|
265
|
-
|
|
365
|
+
const events = [];
|
|
366
|
+
let entries = 0;
|
|
367
|
+
let preserved = 0;
|
|
368
|
+
for (const [event, value] of Object.entries(hooks)) {
|
|
369
|
+
if (!Array.isArray(value))
|
|
370
|
+
continue;
|
|
371
|
+
const templateEntries = template?.hooks?.[event];
|
|
372
|
+
const kept = value.filter((entry) => !isOurHookEntry(entry, templateEntries));
|
|
373
|
+
preserved += kept.length;
|
|
374
|
+
if (kept.length === value.length)
|
|
375
|
+
continue;
|
|
376
|
+
entries += value.length - kept.length;
|
|
377
|
+
events.push(event);
|
|
378
|
+
if (kept.length === 0)
|
|
379
|
+
Reflect.deleteProperty(hooks, event);
|
|
380
|
+
else
|
|
381
|
+
hooks[event] = kept;
|
|
266
382
|
}
|
|
267
383
|
if (Object.keys(hooks).length === 0) {
|
|
268
384
|
Reflect.deleteProperty(data, "hooks");
|
|
269
385
|
}
|
|
270
|
-
return
|
|
386
|
+
return { events, entries, preserved };
|
|
387
|
+
}
|
|
388
|
+
function isOurHookEntry(entry, templateEntries) {
|
|
389
|
+
if (Array.isArray(templateEntries) && templateEntries.some((t) => isDeepStrictEqual(t, entry))) {
|
|
390
|
+
return true;
|
|
391
|
+
}
|
|
392
|
+
return entryInvokesOurCli(entry);
|
|
393
|
+
}
|
|
394
|
+
/** True when the entry carries commands and EVERY one of them runs this CLI. */
|
|
395
|
+
function entryInvokesOurCli(entry) {
|
|
396
|
+
if (typeof entry !== "object" || entry === null)
|
|
397
|
+
return false;
|
|
398
|
+
const hooks = entry.hooks;
|
|
399
|
+
if (!Array.isArray(hooks) || hooks.length === 0)
|
|
400
|
+
return false;
|
|
401
|
+
const commands = hooks
|
|
402
|
+
.map((h) => (typeof h === "object" && h !== null ? h.command : null))
|
|
403
|
+
.filter((c) => typeof c === "string");
|
|
404
|
+
if (commands.length === 0)
|
|
405
|
+
return false;
|
|
406
|
+
return commands.every(isOurCommand);
|
|
271
407
|
}
|
|
272
408
|
async function persistSettings(home, settingsPath, data) {
|
|
273
409
|
const ts = Math.floor(Date.now() / 1000);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/application/self/uninstall.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/application/self/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AAI/C,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,IAAI,uBAAuB,GAC/C,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAsB,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAEL,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,4EAA4E;AAC5E,yEAAyE;AACzE,yEAAyE;AACzE,2EAA2E;AAC3E,qEAAqE;AACrE,iDAAiD;AACjD,MAAM,0BAA0B,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAU,CAAC;AAsBtE,8EAA8E;AAC9E,iFAAiF;AACjF,8EAA8E;AAC9E,qCAAqC;AACrC,MAAM,WAAW,GAA6B,oBAAoB,CAAC;AACnE,0EAA0E;AAC1E,MAAM,cAAc,GAAqC,CAAC,GAAG,eAAe,EAAE,KAAK,CAAC,CAAC;AAErF,kFAAkF;AAClF,MAAM,CAAC,MAAM,+BAA+B,GAAyC;IACnF,GAAI,MAAM,CAAC,WAAW,CACpB,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CACpC;IAC1C,0EAA0E;IAC1E,gDAAgD;IAChD,KAAK,EAAE,mBAAmB;CAC3B,CAAC;AAEF,oFAAoF;AACpF,MAAM,sCAAsC,GAAyC;IACnF,MAAM,EAAE,iCAAiC;IACzC,KAAK,EAAE,gCAAgC;IACvC,IAAI,EAAE,IAAI;IACV,EAAE,EAAE,IAAI;IACR,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;CACX,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAUf;IACF,MAAM,EAAE,iBAAiB;IACzB,IAAI,EAAE,eAAe;CACtB,CAAC;AAEF,4FAA4F;AAC5F,MAAM,UAAU,mBAAmB;IACjC,OAAO,CAAC,GAAG,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;AAClF,CAAC;AAUD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAgB,EAChB,GAAe;IAEf,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,KAAK,GAAmB;QAC5B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC;QACnC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;QACzC,SAAS;QACT,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC;QACzC,YAAY,EAAE,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC;KAC3D,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,CAA0B,CAAC;IAEhF,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE;gBACL,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,4BAA4B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,SAAS,8BAA8B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,qCAAqC;aAC1K;YACD,QAAQ,EAAE,CAAC;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GACX,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,SAA0B,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAE/B,MAAM,KAAK,GAAoB,EAAE,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,uDAAuD;IACvD,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,iBAAiB;QAClC,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC;QACtE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAEvB,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IACxE,MAAM,MAAM,GAAgC,KAAK,CAAC,MAAM;QACtD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,YAAY,KAAK,CAAC;YAClB,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE;YACJ,MAAM;YACN,KAAK;YACL,YAAY,EAAE,UAAU,CAAC,OAAO;YAChC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,SAAS,KAAK,KAAK;gBACrB,CAAC,CAAC;oBACE,cAAc,EAAE,mCAAmC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,8DAA8D,sBAAsB,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG;iBACtL;gBACH,CAAC,CAAC,EAAE,CAAC;SACR;QACD,QAAQ,EAAE,CAAC;KACZ,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,KAAqB;IAErB,MAAM,KAAK,GAAoB,EAAE,CAAC;IAClC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACzF,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACxB,sEAAsE;QACtE,mEAAmE;QACnE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,8BAA8B,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvF,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACpE,IAAI,QAAQ,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,8BAA8B,CAC3C,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,MAAe;IAEf,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAClD,IAAI,OAAmC,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAoB,EAAE,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS;QACnC,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,IAAI,MAAM,KAAK,SAAS;YAAE,SAAS;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,CAAC,MAAM,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAAE,SAAS;QAC3D,IAAI,CAAC,MAAM;YAAE,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC;YACT,MAAM;YACN,IAAI,EAAE,OAAO;YACb,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACvC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,aAAsB,EACtB,MAAe;IAEf,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC;IACtE,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,MAAM;YAAE,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,GAAG,CAAC,IAAI,CAAC;YACP,MAAM;YACN,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACvC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,aAAa,EAAE,CAAC;QAClB,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;YAC/D,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,MAAM;oBAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAChE,GAAG,CAAC,IAAI,CAAC;oBACP,MAAM;oBACN,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;iBACvC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,UAAU,IAAI,4BAA4B,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7B,qEAAqE;YACrE,gEAAgE;YAChE,IAAI,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAAE,SAAS;YAC7E,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAAE,SAAS;YAC1C,IAAI,CAAC,MAAM;gBAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,GAAG,CAAC,IAAI,CAAC;gBACP,MAAM;gBACN,IAAI,EAAE,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc;gBACxD,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aACvC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,MAAM;YAAE,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,aAAsB,EACtB,MAAe;IAEf,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,MAAM,SAAS,GAAG,KAAK,EACrB,OAAsB,EACtB,IAA8C,EAC/B,EAAE;QACjB,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAAE,OAAO;QACxC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IAChF,CAAC,CAAC;IACF,MAAM,SAAS,CAAC,+BAA+B,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,CAAC;IAC1E,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,SAAS,CAAC,sCAAsC,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,MAAe;IAEf,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,2EAA2E;QAC3E,OAAO;YACL,MAAM;YACN,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,IAAI,MAAM,4EAA4E;SAC/F,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,KAAK,UAAU,iBAAiB,CAC9B,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,MAAe;IAEf,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC5D,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAEtD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,MAAM;YACN,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,6CAA6C;SACtD,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,IAAI,CAAC,MAAM;QAAE,MAAM,eAAe,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAE/D,OAAO;QACL,MAAM;QACN,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACtC,MAAM,EAAE,WAAW,OAAO,CAAC,OAAO,+BAA+B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GACxF,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,SAAS,iCAAiC,CAAC,CAAC,CAAC,EACpF,EAAE;KACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,eAAe,CAC5B,GAAe,EACf,IAAY,EACZ,MAAqB,EACrB,MAAe;IAEf,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IAC3D,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,qBAAqB,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IACD,gFAAgF;IAChF,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,OAAO;QACL,MAAM;QACN,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACtC,MAAM,EACJ,QAAQ,GAAG,CAAC;YACV,CAAC,CAAC,WAAW,OAAO,kCAAkC,QAAQ,+EAA+E;YAC7I,CAAC,CAAC,WAAW,OAAO,iEAAiE;KAC1F,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAAY,EAAE,QAAgB,EAAE,IAAY;IAC/E,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,GAAG,IAAI,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,qBAAqB;IACvB,CAAC;IACD,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,8GAA8G;AAC9G,KAAK,UAAU,gBAAgB,CAAC,GAAe;IAC7C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,0BAA0B,EAAE,CAAC;QAChD,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAkB,CAAC;QACxE,OAAO,MAAM,EAAE,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC1C,IAAI,IAA6B,CAAC;IAClC,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAgC,CAAC;IACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7D,OAAO,IAAI,CAAC;AACd,CAAC;AAWD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAA6B,EAC7B,QAA8B;IAE9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAgC,CAAC;IACpD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAS;QACpC,MAAM,eAAe,GAAG,QAAQ,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;QAC9E,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,SAAS;QAC3C,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;;YACvD,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,eAAwB;IAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;QAC/F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,gFAAgF;AAChF,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,KAAK,GAAI,KAA6B,CAAC,KAAK,CAAC;IACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,QAAQ,GAAG,KAAK;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAE,CAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC/F,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,IAAY,EACZ,YAAoB,EACpB,IAA6B;IAE7B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,GAAG,YAAY,QAAQ,EAAE,EAAE,CAAC;IAC/C,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,qBAAqB;IACvB,CAAC;IACD,MAAM,SAAS,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { runContextBudget, } from "../../application/context/budget-service.js";
|
|
2
|
+
import { fail } from "../render.js";
|
|
3
|
+
export const contextBudgetCommand = {
|
|
4
|
+
name: "context-budget",
|
|
5
|
+
describe: "Mide el costo de contexto del bundle w en sus tres tramos (discovery, activación, ejecución) y lo compara contra un baseline congelado. " +
|
|
6
|
+
"Usage: aw context-budget [--root <bundle>] [--baseline <archivo>] [--format human|json] [--detail].",
|
|
7
|
+
async execute(args, ctx) {
|
|
8
|
+
const input = {};
|
|
9
|
+
const root = args.values.get("root");
|
|
10
|
+
const baseline = args.values.get("baseline");
|
|
11
|
+
if (root !== undefined)
|
|
12
|
+
input.root = root;
|
|
13
|
+
if (baseline !== undefined)
|
|
14
|
+
input.baselinePath = baseline;
|
|
15
|
+
try {
|
|
16
|
+
const data = await runContextBudget(ctx.fs, input);
|
|
17
|
+
return { ok: true, data, exitCode: 0 };
|
|
18
|
+
}
|
|
19
|
+
catch (err) {
|
|
20
|
+
const code = err.code ?? "CONTEXT_BUDGET_FAILED";
|
|
21
|
+
return fail(code, err.message);
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
/**
|
|
25
|
+
* The human view leads with the verdict and the lines that broke it — a
|
|
26
|
+
* budget report whose offenders are buried under 25 green rows is read as
|
|
27
|
+
* "fine". `--detail` brings the full table back.
|
|
28
|
+
*/
|
|
29
|
+
renderHuman(result, context) {
|
|
30
|
+
const data = result.data;
|
|
31
|
+
if (data === undefined)
|
|
32
|
+
return "";
|
|
33
|
+
const lines = [
|
|
34
|
+
`bundle ${data.root} (${data.root_origin}) · ${data.revision.file_count} archivos · digest ${data.revision.content_digest}`,
|
|
35
|
+
"",
|
|
36
|
+
`discovery ${data.discovery.bytes} B`,
|
|
37
|
+
`activación (med) ${data.activation.median} B sobre ${data.activation.entries.length} comandos`,
|
|
38
|
+
`ejecución (med) ${data.execution.median} B sobre ${data.execution.journeys.length} recorridos`,
|
|
39
|
+
"",
|
|
40
|
+
`tokens: no disponible — ${data.tokens.reason}`,
|
|
41
|
+
];
|
|
42
|
+
if (data.baseline_path === null) {
|
|
43
|
+
lines.push("", "Sin baseline: solo medición (pasá --baseline para evaluar el presupuesto).");
|
|
44
|
+
}
|
|
45
|
+
else if (data.offenders.length === 0) {
|
|
46
|
+
lines.push("", `✓ dentro de presupuesto contra ${data.baseline_path}`);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
lines.push("", `✗ fuera de presupuesto (${data.offenders.length}):`);
|
|
50
|
+
for (const offender of data.offenders)
|
|
51
|
+
lines.push(` ${offender}`);
|
|
52
|
+
}
|
|
53
|
+
if (context.detail)
|
|
54
|
+
lines.push("", ...renderDetail(data));
|
|
55
|
+
return `${lines.join("\n").trimEnd()}\n`;
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
function renderDetail(data) {
|
|
59
|
+
return [
|
|
60
|
+
"Presupuesto por métrica:",
|
|
61
|
+
...data.budget.map(renderBudgetLine),
|
|
62
|
+
"",
|
|
63
|
+
"Recorridos:",
|
|
64
|
+
...data.execution.journeys.flatMap(renderJourney),
|
|
65
|
+
];
|
|
66
|
+
}
|
|
67
|
+
function renderBudgetLine(entry) {
|
|
68
|
+
const verdict = entry.ok === undefined ? "—" : entry.ok ? "✓" : "✗";
|
|
69
|
+
const against = entry.target === undefined ? "" : ` / techo ${entry.target} B (baseline ${entry.baseline} B)`;
|
|
70
|
+
return ` ${verdict} ${entry.metric}: ${entry.actual} B${against}`;
|
|
71
|
+
}
|
|
72
|
+
function renderJourney(journey) {
|
|
73
|
+
const degraded = journey.degraded ? " · DEGRADADO" : "";
|
|
74
|
+
return [
|
|
75
|
+
` ${journey.id} (${journey.label}) — ${journey.bytes} B · ${journey.files.length} archivos${degraded}`,
|
|
76
|
+
...journey.files.map((file) => ` ${file.missing ? "ausente" : `${file.bytes} B`} ${file.path}`),
|
|
77
|
+
];
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=context-budget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-budget.js","sourceRoot":"","sources":["../../../src/cli/commands/context-budget.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { runContextPlan } from "../../application/context/plan-service.js";
|
|
2
|
+
import { flagValue } from "../parser.js";
|
|
3
|
+
import { fail } from "../render.js";
|
|
4
|
+
export const contextPlanCommand = {
|
|
5
|
+
name: "context-plan",
|
|
6
|
+
describe: "Devuelve el read-set ordenado de un comando —qué documentos leer, en qué orden y a qué costo— más el recibo de lo cargado. " +
|
|
7
|
+
"Usage: aw context-plan --command <cmd> [--signal <s>]… [--root <bundle>] [--format human|json] [--detail].",
|
|
8
|
+
async execute(args, ctx) {
|
|
9
|
+
const command = flagValue(args, "command") ?? args.rest[0] ?? "";
|
|
10
|
+
const input = {
|
|
11
|
+
command,
|
|
12
|
+
signals: args.valuesMulti.get("signal") ?? [],
|
|
13
|
+
capabilities: args.valuesMulti.get("capability") ?? [],
|
|
14
|
+
};
|
|
15
|
+
const root = args.values.get("root");
|
|
16
|
+
if (root !== undefined)
|
|
17
|
+
input.root = root;
|
|
18
|
+
try {
|
|
19
|
+
return { ok: true, data: await runContextPlan(ctx.fs, input), exitCode: 0 };
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
const code = err.code ?? "CONTEXT_PLAN_FAILED";
|
|
23
|
+
return fail(code, err.message);
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
/**
|
|
27
|
+
* The human view IS the instruction: the absolute paths to read, in order.
|
|
28
|
+
* The receipt is the on-demand diagnostic behind `--detail`; the JSON model
|
|
29
|
+
* always carries both, so the two projections cannot disagree.
|
|
30
|
+
*/
|
|
31
|
+
renderHuman(result, context) {
|
|
32
|
+
const data = result.data;
|
|
33
|
+
if (data === undefined)
|
|
34
|
+
return "";
|
|
35
|
+
const signals = data.signals.length > 0 ? data.signals.join(", ") : "ninguna";
|
|
36
|
+
const lines = [
|
|
37
|
+
`${data.command} · perfil ${data.profile} · señales: ${signals} · ${data.bytes} B`,
|
|
38
|
+
"",
|
|
39
|
+
"Leé exactamente estos archivos, en este orden:",
|
|
40
|
+
];
|
|
41
|
+
for (const entry of data.read_set) {
|
|
42
|
+
const why = entry.signal === null ? "núcleo" : `módulo · señal ${entry.signal}`;
|
|
43
|
+
const state = entry.missing ? "AUSENTE" : `${entry.bytes} B`;
|
|
44
|
+
lines.push(` ${entry.absolute} (${why}, ${state})`);
|
|
45
|
+
}
|
|
46
|
+
if (data.notice !== null)
|
|
47
|
+
lines.push("", data.notice);
|
|
48
|
+
if (data.available_signals.length > 0) {
|
|
49
|
+
lines.push("", "Señales que este comando acepta (pasá las que apliquen al caso):");
|
|
50
|
+
for (const entry of data.available_signals) {
|
|
51
|
+
lines.push(` --signal ${entry.signal.padEnd(15)} ${entry.means}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
if (context.detail)
|
|
55
|
+
lines.push("", ...renderReceipt(data));
|
|
56
|
+
return `${lines.join("\n").trimEnd()}\n`;
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
function renderReceipt(data) {
|
|
60
|
+
const receipt = data.receipt;
|
|
61
|
+
return [
|
|
62
|
+
"Recibo:",
|
|
63
|
+
` recorrido ${receipt.command}`,
|
|
64
|
+
` perfil ${receipt.profile}`,
|
|
65
|
+
` señales ${receipt.signals.length > 0 ? receipt.signals.join(", ") : "ninguna"}`,
|
|
66
|
+
` cargado ${receipt.loaded.length} documento(s): ${receipt.loaded.join(", ")}`,
|
|
67
|
+
` saltos de ref. ${receipt.reference_hops}`,
|
|
68
|
+
` bytes ${receipt.bytes}`,
|
|
69
|
+
` tokens no disponible — ${receipt.tokens.reason}`,
|
|
70
|
+
` fallback ${receipt.fallback.used ? receipt.fallback.reasons.join("; ") : "no"}`,
|
|
71
|
+
` bundle ${receipt.root} (${receipt.root_origin})`,
|
|
72
|
+
` telemetría ${receipt.telemetry}`,
|
|
73
|
+
];
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=context-plan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-plan.js","sourceRoot":"","sources":["../../../src/cli/commands/context-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAEnG,OAAO,EAAmB,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1D,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,MAAM,CAAC,MAAM,kBAAkB,GAAkC;IAC/D,IAAI,EAAE,cAAc;IACpB,QAAQ,EACN,6HAA6H;QAC7H,4GAA4G;IAE9G,KAAK,CAAC,OAAO,CAAC,IAAgB,EAAE,GAAe;QAC7C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjE,MAAM,KAAK,GAAyC;YAClD,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE;YAC7C,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE;SACvD,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QAC9E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAAyB,CAAC,IAAI,IAAI,qBAAqB,CAAC;YACtE,OAAO,IAAI,CAAC,IAAI,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,MAAwC,EAAE,OAA2B;QAC/E,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QAElC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,MAAM,KAAK,GAAG;YACZ,GAAG,IAAI,CAAC,OAAO,aAAa,IAAI,CAAC,OAAO,eAAe,OAAO,MAAM,IAAI,CAAC,KAAK,IAAI;YAClF,EAAE;YACF,gDAAgD;SACjD,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,MAAM,EAAE,CAAC;YAChF,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC;YAC7D,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,QAAQ,MAAM,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,kEAAkE,CAAC,CAAC;YACnF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3C,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,SAAS,aAAa,CAAC,IAAuB;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,OAAO;QACL,SAAS;QACT,sBAAsB,OAAO,CAAC,OAAO,EAAE;QACvC,sBAAsB,OAAO,CAAC,OAAO,EAAE;QACvC,sBAAsB,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;QAC3F,sBAAsB,OAAO,CAAC,MAAM,CAAC,MAAM,kBAAkB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACxF,sBAAsB,OAAO,CAAC,cAAc,EAAE;QAC9C,sBAAsB,OAAO,CAAC,KAAK,EAAE;QACrC,sCAAsC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAC7D,sBAAsB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QAC1F,sBAAsB,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,WAAW,GAAG;QAC7D,sBAAsB,OAAO,CAAC,SAAS,EAAE;KAC1C,CAAC;AACJ,CAAC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { runHarness, runLogs, runNextNumber, runProfiles, } from "../../application/dev-only-services.js";
|
|
2
|
+
import { HARNESSES } from "../../domain/harnesses.js";
|
|
2
3
|
import { fail } from "../render.js";
|
|
4
|
+
// Derived from the catalog: the describe used to name two hosts out of seven.
|
|
5
|
+
const HARNESS_IDS = HARNESSES.map((h) => h.id).join(" | ");
|
|
3
6
|
export const harnessCommand = {
|
|
4
7
|
name: "harness",
|
|
5
|
-
describe:
|
|
8
|
+
describe: `Identify the host harness from its env markers (${HARNESS_IDS} | unknown). 'unknown' is a legitimate answer — some hosts export no marker to their subprocesses; use 'self detect-hosts' for what is actually installed on the machine.`,
|
|
6
9
|
async execute(_args, ctx) {
|
|
7
10
|
const data = runHarness((k) => ctx.env.get(k));
|
|
8
11
|
return { ok: true, data, exitCode: 0 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-only.js","sourceRoot":"","sources":["../../../src/cli/commands/dev-only.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,OAAO,EACP,aAAa,EACb,WAAW,GACZ,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"dev-only.js","sourceRoot":"","sources":["../../../src/cli/commands/dev-only.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,8 @@ import { checkBranchCommand } from "./check-branch.js";
|
|
|
8
8
|
import { checkpointReadCommand } from "./checkpoint-read.js";
|
|
9
9
|
import { autoCompactOnCloseCommand, checkpointWriteCommand } from "./checkpoint-write.js";
|
|
10
10
|
import { codeScanCommand } from "./code-scan.js";
|
|
11
|
+
import { contextBudgetCommand } from "./context-budget.js";
|
|
12
|
+
import { contextPlanCommand } from "./context-plan.js";
|
|
11
13
|
import { harnessCommand, logsCommand, nextNumberCommand, profilesCommand } from "./dev-only.js";
|
|
12
14
|
import { exportDiagramsCommand, exportManualsCommand, exportReportsCommand, exportScriptsCommand, } from "./export.js";
|
|
13
15
|
import { fixGitCommand } from "./fix-git.js";
|
|
@@ -58,6 +60,8 @@ export const ALL_COMMANDS = [
|
|
|
58
60
|
stackCommand,
|
|
59
61
|
workspaceInitCommand,
|
|
60
62
|
skillIndexCommand,
|
|
63
|
+
contextBudgetCommand,
|
|
64
|
+
contextPlanCommand,
|
|
61
65
|
skillsCommand,
|
|
62
66
|
sourcesCommand,
|
|
63
67
|
generateLaunchCommand,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/commands/mcp.js
CHANGED
|
@@ -8,11 +8,12 @@ import { runMcpRemove } from "../../application/mcp-remove-service.js";
|
|
|
8
8
|
import { runMcpSetup } from "../../application/mcp-setup-service.js";
|
|
9
9
|
import { buildWarpPostInstallHint, formatWarpPostInstallHint, } from "../../application/mcp-warp-postinstall-hint.js";
|
|
10
10
|
import { resolveWarpGlobalMcpPath, resolveWarpProjectMcpPath, } from "../../application/multiroot/warp.js";
|
|
11
|
-
import {
|
|
11
|
+
import { MCP_FILE_HOSTS, harnessById } from "../../domain/harnesses.js";
|
|
12
12
|
import { DEFAULT_MCP_INSTANCES, mcpEntryNameFor, validateDsnVarName, validateMcpInstance, } from "../../domain/mcp-entry.js";
|
|
13
13
|
import { fail } from "../render.js";
|
|
14
|
-
// File-writing hosts
|
|
15
|
-
|
|
14
|
+
// File-writing hosts — single source in the domain (excludes oz, which has no
|
|
15
|
+
// file writer). The TUI's host picker reads the same list.
|
|
16
|
+
const FILE_HOSTS = MCP_FILE_HOSTS;
|
|
16
17
|
const HOST_VALUES = new Set([...FILE_HOSTS, "both", "all"]);
|
|
17
18
|
export const mcpCommand = {
|
|
18
19
|
name: "mcp",
|
|
@@ -213,18 +214,25 @@ async function runDoctorSub(args, ctx) {
|
|
|
213
214
|
exitCode: allOk ? 0 : 1,
|
|
214
215
|
};
|
|
215
216
|
}
|
|
216
|
-
/** Exported for tests: host-harness detection must cover
|
|
217
|
+
/** Exported for tests: host-harness detection must cover every file-writing host. */
|
|
217
218
|
export function resolveHosts(args, ctx) {
|
|
218
219
|
const flag = args.values.get("host");
|
|
219
220
|
if (flag === undefined) {
|
|
220
|
-
// No --host: write only to the
|
|
221
|
-
//
|
|
222
|
-
// while running inside one of them).
|
|
221
|
+
// No --host: write only to the harness we are running inside, resolved from
|
|
222
|
+
// the registry.
|
|
223
223
|
const harness = runHarness((k) => ctx.env.get(k));
|
|
224
224
|
const spec = harness.harness === "unknown" ? null : harnessById(harness.harness);
|
|
225
225
|
if (spec?.mcpHostId)
|
|
226
226
|
return { value: [spec.mcpHostId] };
|
|
227
|
-
|
|
227
|
+
// We could NOT tell which host we are in — either it exports no env marker
|
|
228
|
+
// to its subprocesses (Kimi Code among them) or it takes MCP through a
|
|
229
|
+
// launch flag instead of a config file (Oz). Falling back to "write into
|
|
230
|
+
// every host" turned that ignorance into edits the user never asked for,
|
|
231
|
+
// across configs they may not even use. Ask instead.
|
|
232
|
+
const reason = spec === null
|
|
233
|
+
? "no pude identificar el host: no exporta marcadores de entorno a sus subprocesos"
|
|
234
|
+
: `'${spec.label}' no escribe un archivo de configuración MCP (toma servidores por flag de arranque)`;
|
|
235
|
+
return fail("HOST_REQUIRED", `${reason}. Indicá el destino con --host <${[...FILE_HOSTS].join("|")}> (o --host all para todos). Para ver qué hosts hay en esta máquina: 'agent-workflow self detect-hosts'.`);
|
|
228
236
|
}
|
|
229
237
|
if (!HOST_VALUES.has(flag)) {
|
|
230
238
|
const validList = [...FILE_HOSTS, "both", "all"].join(" | ");
|