@tacuchi/agent-workflow-cli 7.0.4 → 7.1.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.
@@ -0,0 +1,21 @@
1
+ import type { ParsedArgs } from "../../cli/parser.js";
2
+ import type { CliContext } from "../../cli/types.js";
3
+ import type { CommandResult } from "../../domain/types.js";
4
+ import { type InstallTarget } from "./install-skill.js";
5
+ export type UninstallTargetChoice = InstallTarget | "all";
6
+ export interface UninstallStep {
7
+ target: InstallTarget;
8
+ kind: "skill" | "legacy-skill" | "user-commands" | "hooks";
9
+ path: string;
10
+ status: "removed" | "dry-run" | "skipped";
11
+ reason?: string;
12
+ }
13
+ export interface SelfUninstallData {
14
+ status: "removed" | "dry-run" | "noop";
15
+ steps: UninstallStep[];
16
+ lock_updated: boolean;
17
+ lock_path?: string;
18
+ lock_warning?: string;
19
+ }
20
+ export declare function selfUninstall(args: ParsedArgs, ctx: CliContext): Promise<CommandResult<SelfUninstallData>>;
21
+ //# sourceMappingURL=uninstall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../src/application/self/uninstall.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAEL,KAAK,aAAa,EAInB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,qBAAqB,GAAG,aAAa,GAAG,KAAK,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,eAAe,GAAG,OAAO,CAAC;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAiCD,wBAAsB,aAAa,CACjC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,UAAU,GACd,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAqD3C"}
@@ -0,0 +1,241 @@
1
+ import { mkdir, readFile, rm, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { AGENTS_LOCK_REL, LEGACY_SKILL_NAME, SKILL_DIR_NAME, TARGET_ROOTS, } from "./install-skill.js";
4
+ const ALL_TARGETS = ["claude", "codex", "agents", "warp", "oz"];
5
+ const TARGET_CHOICES = [...ALL_TARGETS, "all"];
6
+ const USER_COMMANDS_RELPATH_BY_TARGET = {
7
+ claude: ".claude/commands/agent-workflow",
8
+ codex: ".codex/commands/agent-workflow",
9
+ warp: null,
10
+ oz: null,
11
+ agents: null,
12
+ };
13
+ const HOOKS_REMOVABLE_TARGETS = new Set(["claude"]);
14
+ // Event names we install via hooks.template.json (we only touch these on
15
+ // uninstall to avoid clobbering hooks the user added manually).
16
+ const HOOK_EVENTS_WE_INSTALL = [
17
+ "SessionStart",
18
+ "PreToolUse",
19
+ "SessionEnd",
20
+ "PreCompact",
21
+ "PostCompact",
22
+ ];
23
+ export async function selfUninstall(args, ctx) {
24
+ const skillOnly = args.flags.has("--skill-only");
25
+ const flags = {
26
+ dryRun: args.flags.has("--dry-run"),
27
+ includeLegacy: args.flags.has("--legacy"),
28
+ skillOnly,
29
+ withHooks: args.flags.has("--with-hooks"),
30
+ skipCommands: skillOnly || args.flags.has("--no-commands"),
31
+ };
32
+ const targetArg = (args.values.get("target") ?? "all");
33
+ if (!TARGET_CHOICES.includes(targetArg)) {
34
+ return {
35
+ ok: false,
36
+ error: {
37
+ code: "INVALID_TARGET",
38
+ message: `--target must be one of: ${TARGET_CHOICES.join(", ")}. Got '${targetArg}'.`,
39
+ },
40
+ exitCode: 1,
41
+ };
42
+ }
43
+ const targets = targetArg === "all" ? [...ALL_TARGETS] : [targetArg];
44
+ const home = ctx.env.homeDir();
45
+ const steps = [];
46
+ for (const target of targets) {
47
+ steps.push(...(await uninstallOneTarget(ctx, home, target, flags)));
48
+ }
49
+ const lockResult = targets.includes("agents")
50
+ ? await updateAgentsLock(ctx, home, flags.includeLegacy, flags.dryRun)
51
+ : { updated: false };
52
+ const removedCount = steps.filter((s) => s.status === "removed").length;
53
+ const status = flags.dryRun
54
+ ? "dry-run"
55
+ : removedCount === 0
56
+ ? "noop"
57
+ : "removed";
58
+ return {
59
+ ok: true,
60
+ data: {
61
+ status,
62
+ steps,
63
+ lock_updated: lockResult.updated,
64
+ ...(lockResult.path ? { lock_path: lockResult.path } : {}),
65
+ ...(lockResult.warning ? { lock_warning: lockResult.warning } : {}),
66
+ },
67
+ exitCode: 0,
68
+ };
69
+ }
70
+ async function uninstallOneTarget(ctx, home, target, flags) {
71
+ const steps = [];
72
+ steps.push(...(await removeSkill(ctx, home, target, flags.includeLegacy, flags.dryRun)));
73
+ if (!flags.skipCommands) {
74
+ const cmdStep = await removeUserCommands(ctx, home, target, flags.dryRun);
75
+ if (cmdStep !== null)
76
+ steps.push(cmdStep);
77
+ }
78
+ if (flags.withHooks && !flags.skillOnly) {
79
+ const hookStep = await removeHooks(ctx, home, target, flags.dryRun);
80
+ if (hookStep !== null)
81
+ steps.push(hookStep);
82
+ }
83
+ return steps;
84
+ }
85
+ async function removeSkill(ctx, home, target, includeLegacy, dryRun) {
86
+ const out = [];
87
+ const canonical = join(home, ...TARGET_ROOTS[target], SKILL_DIR_NAME);
88
+ if (await ctx.fs.exists(canonical)) {
89
+ if (!dryRun)
90
+ await rm(canonical, { recursive: true, force: true });
91
+ out.push({
92
+ target,
93
+ kind: "skill",
94
+ path: canonical,
95
+ status: dryRun ? "dry-run" : "removed",
96
+ });
97
+ }
98
+ if (includeLegacy) {
99
+ const legacy = join(home, ...TARGET_ROOTS[target], LEGACY_SKILL_NAME);
100
+ if (await ctx.fs.exists(legacy)) {
101
+ if (!dryRun)
102
+ await rm(legacy, { recursive: true, force: true });
103
+ out.push({
104
+ target,
105
+ kind: "legacy-skill",
106
+ path: legacy,
107
+ status: dryRun ? "dry-run" : "removed",
108
+ });
109
+ }
110
+ }
111
+ return out;
112
+ }
113
+ async function removeUserCommands(ctx, home, target, dryRun) {
114
+ const relpath = USER_COMMANDS_RELPATH_BY_TARGET[target];
115
+ if (relpath === null)
116
+ return null;
117
+ const dir = join(home, relpath);
118
+ if (!(await ctx.fs.exists(dir)))
119
+ return null;
120
+ if (!dryRun)
121
+ await rm(dir, { recursive: true, force: true });
122
+ return {
123
+ target,
124
+ kind: "user-commands",
125
+ path: dir,
126
+ status: dryRun ? "dry-run" : "removed",
127
+ };
128
+ }
129
+ async function removeHooks(ctx, home, target, dryRun) {
130
+ if (!HOOKS_REMOVABLE_TARGETS.has(target))
131
+ return null;
132
+ const settingsPath = join(home, ".claude", "settings.json");
133
+ if (!(await ctx.fs.exists(settingsPath)))
134
+ return null;
135
+ const parsed = await tryParseSettings(settingsPath);
136
+ if (parsed === "invalid") {
137
+ return {
138
+ target,
139
+ kind: "hooks",
140
+ path: settingsPath,
141
+ status: "skipped",
142
+ reason: "settings.json is invalid JSON; not modified",
143
+ };
144
+ }
145
+ if (parsed === null)
146
+ return null;
147
+ const removed = stripOurHookEvents(parsed);
148
+ if (removed.length === 0)
149
+ return null;
150
+ if (!dryRun)
151
+ await persistSettings(home, settingsPath, parsed);
152
+ return {
153
+ target,
154
+ kind: "hooks",
155
+ path: settingsPath,
156
+ status: dryRun ? "dry-run" : "removed",
157
+ reason: `Removed events: ${removed.join(", ")}`,
158
+ };
159
+ }
160
+ async function tryParseSettings(path) {
161
+ let data;
162
+ try {
163
+ data = JSON.parse(await readFile(path, "utf8"));
164
+ }
165
+ catch {
166
+ return "invalid";
167
+ }
168
+ if (typeof data !== "object" || data === null || !("hooks" in data))
169
+ return null;
170
+ const hooks = data.hooks;
171
+ if (typeof hooks !== "object" || hooks === null)
172
+ return null;
173
+ return data;
174
+ }
175
+ function stripOurHookEvents(data) {
176
+ const hooks = data.hooks;
177
+ const removed = [];
178
+ for (const event of HOOK_EVENTS_WE_INSTALL) {
179
+ if (event in hooks) {
180
+ hooks[event] = undefined;
181
+ removed.push(event);
182
+ }
183
+ }
184
+ for (const event of removed) {
185
+ // Object.keys() drops undefined-valued keys in JSON.stringify; we want
186
+ // them actually removed from the object too to keep iteration clean.
187
+ Reflect.deleteProperty(hooks, event);
188
+ }
189
+ if (Object.keys(hooks).length === 0) {
190
+ Reflect.deleteProperty(data, "hooks");
191
+ }
192
+ else {
193
+ data.hooks = hooks;
194
+ }
195
+ return removed;
196
+ }
197
+ async function persistSettings(home, settingsPath, data) {
198
+ const ts = Math.floor(Date.now() / 1000);
199
+ const backupPath = `${settingsPath}.bak.${ts}`;
200
+ await mkdir(join(home, ".claude"), { recursive: true });
201
+ try {
202
+ const original = await readFile(settingsPath, "utf8");
203
+ await writeFile(backupPath, original, "utf8");
204
+ }
205
+ catch {
206
+ // best-effort backup
207
+ }
208
+ await writeFile(settingsPath, `${JSON.stringify(data, null, 2)}\n`, "utf8");
209
+ }
210
+ async function updateAgentsLock(ctx, home, includeLegacy, dryRun) {
211
+ const lockPath = join(home, ...AGENTS_LOCK_REL);
212
+ if (!(await ctx.fs.exists(lockPath)))
213
+ return { updated: false };
214
+ let parsed;
215
+ try {
216
+ parsed = JSON.parse(await ctx.fs.readText(lockPath));
217
+ }
218
+ catch (err) {
219
+ return {
220
+ updated: false,
221
+ path: lockPath,
222
+ warning: `Could not parse ${lockPath}: ${err.message}. Lock left untouched.`,
223
+ };
224
+ }
225
+ const skills = (parsed.skills ?? {});
226
+ const before = Object.keys(skills);
227
+ const namesToRemove = [SKILL_DIR_NAME, ...(includeLegacy ? [LEGACY_SKILL_NAME] : [])];
228
+ for (const name of namesToRemove) {
229
+ delete skills[name];
230
+ }
231
+ const after = Object.keys(skills);
232
+ const changed = before.length !== after.length;
233
+ if (!changed)
234
+ return { updated: false, path: lockPath };
235
+ if (!dryRun) {
236
+ parsed.skills = skills;
237
+ await writeFile(lockPath, `${JSON.stringify(parsed, null, 2)}\n`, "utf8");
238
+ }
239
+ return { updated: true, path: lockPath };
240
+ }
241
+ //# sourceMappingURL=uninstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/application/self/uninstall.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"self.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/self.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAiBjD,eAAO,MAAM,WAAW,EAAE,UAoDzB,CAAC"}
1
+ {"version":3,"file":"self.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/self.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAoBjD,eAAO,MAAM,WAAW,EAAE,UAwDzB,CAAC"}
@@ -7,18 +7,23 @@ import { selfInstallPluginSkills } from "../../application/self/install-plugin-s
7
7
  import { selfInstallSkill } from "../../application/self/install-skill.js";
8
8
  import { selfMcpConfig } from "../../application/self/mcp-config.js";
9
9
  import { selfNamespace } from "../../application/self/namespace-info.js";
10
+ import { selfClearPluginCache } from "../../application/self/plugin-cache-clear.js";
10
11
  import { selfUninstallSkill } from "../../application/self/uninstall-skill.js";
12
+ import { selfUninstall } from "../../application/self/uninstall.js";
11
13
  import { selfUpdate } from "../../application/self/update-self.js";
12
14
  const SELF_SUBCOMMANDS = [
13
15
  "namespace",
14
16
  "doctor",
15
17
  "detect-hosts",
16
18
  "update",
19
+ "install",
17
20
  "install-skill",
18
21
  "install-hooks",
19
22
  "install-plugin-skills",
20
23
  "install-plugin-skills-git",
24
+ "uninstall",
21
25
  "uninstall-skill",
26
+ "clean-cache",
22
27
  "mcp",
23
28
  "bootstrap",
24
29
  ];
@@ -45,8 +50,12 @@ export const selfCommand = {
45
50
  return selfInstallPluginSkills(args, ctx);
46
51
  case "install-plugin-skills-git":
47
52
  return installPluginSkillsFromGit(args, ctx);
53
+ case "uninstall":
54
+ return selfUninstall(args, ctx);
48
55
  case "uninstall-skill":
49
56
  return selfUninstallSkill(args, ctx);
57
+ case "clean-cache":
58
+ return runCleanCache(args, ctx);
50
59
  case "mcp":
51
60
  return selfMcpConfig(args, ctx);
52
61
  case "bootstrap":
@@ -73,4 +82,9 @@ export const selfCommand = {
73
82
  }
74
83
  },
75
84
  };
85
+ async function runCleanCache(args, ctx) {
86
+ if (!args.values.has("plugin"))
87
+ args.values.set("plugin", "agent-workflow");
88
+ return selfClearPluginCache(args, ctx);
89
+ }
76
90
  //# sourceMappingURL=self.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"self.js","sourceRoot":"","sources":["../../../src/cli/commands/self.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAMnE,MAAM,gBAAgB,GAAG;IACvB,WAAW;IACX,QAAQ;IACR,cAAc;IACd,QAAQ;IACR,eAAe;IACf,eAAe;IACf,uBAAuB;IACvB,2BAA2B;IAC3B,iBAAiB;IACjB,KAAK;IACL,WAAW;CACH,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAe;IACrC,IAAI,EAAE,MAAM;IACZ,QAAQ,EACN,kMAAkM;IACpM,KAAK,CAAC,OAAO,CAAC,IAAgB,EAAE,GAAe;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,WAAW;gBACd,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;YAC5B,KAAK,QAAQ;gBACX,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;YACzB,KAAK,cAAc;gBACjB,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;YAC9B,KAAK,QAAQ;gBACX,OAAO,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/B,KAAK,SAAS,CAAC;YACf,KAAK,eAAe;gBAClB,OAAO,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACrC,KAAK,eAAe;gBAClB,OAAO,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACrC,KAAK,uBAAuB;gBAC1B,OAAO,uBAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC5C,KAAK,2BAA2B;gBAC9B,OAAO,0BAA0B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/C,KAAK,iBAAiB;gBACpB,OAAO,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvC,KAAK,KAAK;gBACR,OAAO,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAClC,KAAK,WAAW;gBACd,OAAO,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAClC,KAAK,SAAS,CAAC;YACf,KAAK,EAAE;gBACL,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,IAAI,EAAE;wBACJ,WAAW,EAAE,CAAC,GAAG,gBAAgB,CAAC;wBAClC,SAAS,EACP,iHAAiH;qBACpH;oBACD,QAAQ,EAAE,CAAC;iBACZ,CAAC;YACJ;gBACE,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,KAAK,EAAE;wBACL,IAAI,EAAE,eAAe;wBACrB,OAAO,EAAE,6BAA6B,GAAG,iBAAiB,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;qBACxF;oBACD,QAAQ,EAAE,CAAC;iBACZ,CAAC;QACN,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"self.js","sourceRoot":"","sources":["../../../src/cli/commands/self.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skills-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAUjD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAwDD,wBAAgB,SAAS,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,cAAc,2CA0L1D"}
1
+ {"version":3,"file":"skills-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAUjD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AA2GD,wBAAgB,SAAS,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,cAAc,2CAmM1D"}
@@ -3,12 +3,20 @@ import { Box, Text, useInput } from "ink";
3
3
  import { useCallback, useEffect, useRef, useState } from "react";
4
4
  import { selfInstallHooks } from "../../../application/self/install-hooks.js";
5
5
  import { selfInstallSkill } from "../../../application/self/install-skill.js";
6
+ import { selfClearPluginCache } from "../../../application/self/plugin-cache-clear.js";
6
7
  import { selfUninstallSkill } from "../../../application/self/uninstall-skill.js";
8
+ import { selfUninstall } from "../../../application/self/uninstall.js";
7
9
  import { SectionedMenu, } from "../components/sectioned-menu.js";
8
10
  import { Toast } from "../components/toast.js";
9
11
  import { useInputLock } from "../input-lock.js";
10
12
  import { colors, icons } from "../theme.js";
11
13
  const HOOKS_SUPPORTED_TARGETS = new Set(["claude"]);
14
+ const CACHE_CLEAR_HOSTS = new Set([
15
+ "claude",
16
+ "codex",
17
+ "warp",
18
+ "agents",
19
+ ]);
12
20
  const INSTALLED_TRAILING = {
13
21
  icon: icons.check,
14
22
  color: colors.success,
@@ -19,30 +27,61 @@ const NOT_INSTALLED_TRAILING = {
19
27
  color: colors.fgMoreSubtle,
20
28
  text: "no instalado",
21
29
  };
22
- function buildActionMenuItems(skill) {
23
- const items = [
24
- {
25
- kind: "item",
26
- label: skill.installed ? "Reinstalar / actualizar skill" : "Instalar skill",
27
- value: "install",
28
- trailing: skill.installed ? INSTALLED_TRAILING : NOT_INSTALLED_TRAILING,
29
- },
30
- ];
31
- if (skill.installed) {
32
- items.push({ kind: "item", label: "Desinstalar skill", value: "uninstall" });
33
- }
34
- if (skill.hooks_supported) {
30
+ function buildActionMenuItems(target, host) {
31
+ const items = [];
32
+ items.push({ kind: "section", label: "Install" });
33
+ items.push({
34
+ kind: "item",
35
+ label: host?.installed
36
+ ? "Reinstalar completa (skill + commands + hooks)"
37
+ : "Install completa (skill + commands + hooks)",
38
+ value: "install-full",
39
+ trailing: host?.installed ? INSTALLED_TRAILING : NOT_INSTALLED_TRAILING,
40
+ });
41
+ items.push({
42
+ kind: "item",
43
+ label: "Install solo skill (--skill-only)",
44
+ value: "install-skill-only",
45
+ });
46
+ if (target.kind === "host" && HOOKS_SUPPORTED_TARGETS.has(target.id)) {
35
47
  items.push({
36
48
  kind: "item",
37
- label: skill.hooks_installed ? "Reinstalar hooks" : "Instalar hooks",
49
+ label: host?.hooks_installed ? "Reinstalar solo hooks" : "Install solo hooks",
38
50
  value: "install-hooks",
39
51
  });
52
+ }
53
+ else if (target.kind === "all") {
40
54
  items.push({
41
55
  kind: "item",
42
- label: "Instalar hooks (sin limpiar caché)",
43
- value: "install-hooks-keep-cache",
56
+ label: "Install solo hooks (claude only)",
57
+ value: "install-hooks",
44
58
  });
45
59
  }
60
+ items.push({ kind: "section", label: "Uninstall" });
61
+ items.push({
62
+ kind: "item",
63
+ label: "Uninstall completa (skill + commands)",
64
+ value: "uninstall-full",
65
+ });
66
+ items.push({
67
+ kind: "item",
68
+ label: "Uninstall completa + hooks",
69
+ value: "uninstall-with-hooks",
70
+ });
71
+ items.push({
72
+ kind: "item",
73
+ label: "Uninstall solo skill (legacy)",
74
+ value: "uninstall-skill-only",
75
+ });
76
+ items.push({ kind: "section", label: "Cache" });
77
+ const cacheLabel = target.kind === "all"
78
+ ? "Clean cache (claude + codex + warp + agents)"
79
+ : `Clean cache de ${target.label}`;
80
+ items.push({
81
+ kind: "item",
82
+ label: cacheLabel,
83
+ value: "clean-cache",
84
+ });
46
85
  return items;
47
86
  }
48
87
  export function SkillsTab({ ctx, isActive }) {
@@ -53,6 +92,8 @@ export function SkillsTab({ ctx, isActive }) {
53
92
  const [toast, setToast] = useState(null);
54
93
  const startedRef = useRef(false);
55
94
  const { lock, unlock } = useInputLock();
95
+ // Row 0 = pseudo "All hosts"; rows 1..N = real hosts.
96
+ const totalRows = skills.length + 1;
56
97
  useEffect(() => {
57
98
  if (mode.kind === "idle") {
58
99
  unlock();
@@ -110,7 +151,7 @@ export function SkillsTab({ ctx, isActive }) {
110
151
  },
111
152
  ];
112
153
  setSkills(next);
113
- setCursor((c) => Math.min(Math.max(0, next.length - 1), Math.max(0, c)));
154
+ setCursor((c) => Math.min(Math.max(0, c), next.length));
114
155
  }, [ctx]);
115
156
  useEffect(() => {
116
157
  if (startedRef.current)
@@ -146,15 +187,14 @@ export function SkillsTab({ ctx, isActive }) {
146
187
  return;
147
188
  }
148
189
  if (key.downArrow) {
149
- setCursor((c) => (skills.length === 0 ? 0 : Math.min(skills.length - 1, c + 1)));
190
+ setCursor((c) => Math.min(totalRows - 1, c + 1));
150
191
  return;
151
192
  }
152
193
  if (key.return) {
153
- const target = skills[cursor];
154
- if (target)
194
+ const target = rowToTarget(cursor, skills);
195
+ if (target !== null)
155
196
  setMode({ kind: "action-menu", target });
156
197
  }
157
- // 'i'/'I' ya no se manejan: la instalación se hace por target desde el menu de acciones.
158
198
  void input;
159
199
  }, { isActive });
160
200
  useInput((_, key) => {
@@ -168,71 +208,159 @@ export function SkillsTab({ ctx, isActive }) {
168
208
  const handleActionSelect = useCallback((action) => {
169
209
  if (mode.kind !== "action-menu")
170
210
  return;
171
- const { id, label } = mode.target;
211
+ const target = mode.target;
172
212
  setMode({ kind: "idle" });
173
- const busyLabel = buildBusyLabel(action, label);
174
- void runAction(action, id, busyLabel);
213
+ const busyLabel = buildBusyLabel(action, target.label);
214
+ void runAction(action, target, busyLabel);
175
215
  }, [mode, runAction]);
176
216
  if (mode.kind === "action-menu") {
177
- return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: colors.fg, bold: true, children: ["Skill ", ctx.runtime.binName] }), _jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: colors.fgSubtle, children: [icons.bullet, " acciones para", " ", _jsx(Text, { color: colors.fg, bold: true, children: mode.target.label })] }) }), _jsx(Box, { marginTop: 1, children: _jsx(SectionedMenu, { items: buildActionMenuItems(mode.target), onSelect: handleActionSelect, isActive: isActive }) }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.fgMoreSubtle, children: "Esc para cerrar sin aplicar." }) })] }));
217
+ const targetSpec = mode.target;
218
+ const focusedHost = targetSpec.kind === "host" ? (skills.find((s) => s.id === targetSpec.id) ?? null) : null;
219
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: colors.fg, bold: true, children: ["Skill ", ctx.runtime.binName] }), _jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: colors.fgSubtle, children: [icons.bullet, " acciones para", " ", _jsx(Text, { color: colors.fg, bold: true, children: mode.target.label })] }) }), _jsx(Box, { marginTop: 1, children: _jsx(SectionedMenu, { items: buildActionMenuItems(mode.target, focusedHost), onSelect: handleActionSelect, isActive: isActive }) }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.fgMoreSubtle, children: "Esc para cerrar sin aplicar." }) })] }));
178
220
  }
179
- return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: colors.fg, bold: true, children: ["Skill ", ctx.runtime.binName] }), _jsx(Box, { marginTop: 1, flexDirection: "column", children: skills.map((s, i) => (_jsx(SkillRow, { skill: s, focused: isActive && i === cursor }, s.id))) }), busy ? (_jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: colors.warning, children: [icons.spinner, " ", busy] }) })) : null, toast ? _jsx(Toast, { tone: toast.tone, message: toast.message }) : null] }));
221
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: colors.fg, bold: true, children: ["Skill ", ctx.runtime.binName] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(AllHostsRow, { focused: isActive && cursor === 0 }), skills.map((s, i) => (_jsx(SkillRow, { skill: s, focused: isActive && cursor === i + 1 }, s.id)))] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.fgMoreSubtle, children: "\u2191/\u2193 navegar \u00B7 Enter abrir acciones \u00B7 Esc cancelar" }) }), busy ? (_jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: colors.warning, children: [icons.spinner, " ", busy] }) })) : null, toast ? _jsx(Toast, { tone: toast.tone, message: toast.message }) : null] }));
222
+ }
223
+ function rowToTarget(row, skills) {
224
+ if (row === 0)
225
+ return { kind: "all", label: "todos los hosts" };
226
+ const host = skills[row - 1];
227
+ if (!host)
228
+ return null;
229
+ return { kind: "host", id: host.id, label: host.label };
230
+ }
231
+ function AllHostsRow({ focused }) {
232
+ return (_jsxs(Box, { children: [_jsxs(Text, { color: focused ? colors.primary : colors.fgMoreSubtle, bold: focused, children: [focused ? icons.focusBullet : " ", " "] }), _jsx(Text, { color: focused ? colors.primary : colors.fgSubtle, bold: true, children: "\u25CE Todos los hosts" }), _jsxs(Text, { color: colors.fgMoreSubtle, children: [" ", "(apply install / uninstall / clean-cache a claude + codex + warp + agents en una sola pasada)"] })] }));
180
233
  }
181
234
  function SkillRow({ skill: s, focused }) {
182
235
  return (_jsxs(Box, { children: [_jsxs(Text, { color: focused ? colors.primary : colors.fgMoreSubtle, bold: focused, children: [focused ? icons.focusBullet : " ", " "] }), _jsxs(Text, { color: s.installed ? colors.success : colors.fgMoreSubtle, bold: true, children: [s.installed ? icons.check : icons.cross, " "] }), _jsx(Text, { color: focused ? colors.fg : colors.fgSubtle, bold: focused, children: s.label }), _jsx(Text, { color: colors.fgMoreSubtle, children: " \u00B7 " }), _jsx(Text, { color: colors.fgSubtle, children: s.path }), s.hooks_supported ? (_jsxs(_Fragment, { children: [_jsx(Text, { color: colors.fgMoreSubtle, children: " \u00B7 " }), _jsxs(Text, { color: s.hooks_installed ? colors.success : colors.fgMoreSubtle, children: ["hooks ", s.hooks_installed ? icons.check : icons.cross] })] })) : null] }));
183
236
  }
184
237
  function buildArgsFor(action, target) {
185
238
  const flags = new Set();
186
- const sub = action === "install"
187
- ? "install-skill"
188
- : action === "uninstall"
189
- ? "uninstall-skill"
190
- : "install-hooks";
191
- if (action === "install")
239
+ const values = new Map();
240
+ const targetValue = target.kind === "all" ? "all" : target.id;
241
+ values.set("target", targetValue);
242
+ if (target.kind === "all")
243
+ flags.add("--confirm-all");
244
+ if (action === "install-full")
245
+ flags.add("--force");
246
+ if (action === "install-skill-only") {
192
247
  flags.add("--force");
193
- if (action === "install-hooks-keep-cache")
194
- flags.add("--keep-cache");
248
+ flags.add("--skill-only");
249
+ }
250
+ if (action === "uninstall-with-hooks")
251
+ flags.add("--with-hooks");
252
+ if (action === "uninstall-skill-only")
253
+ flags.add("--skill-only");
254
+ if (action === "clean-cache")
255
+ values.set("plugin", "agent-workflow");
195
256
  return {
196
- rest: [sub],
257
+ rest: [actionToSubcommand(action)],
197
258
  plugin: {},
198
259
  flags,
199
- values: new Map([["target", target]]),
260
+ values,
200
261
  valuesMulti: new Map(),
201
262
  };
202
263
  }
264
+ function actionToSubcommand(action) {
265
+ switch (action) {
266
+ case "install-full":
267
+ case "install-skill-only":
268
+ return "install-skill";
269
+ case "install-hooks":
270
+ return "install-hooks";
271
+ case "uninstall-full":
272
+ case "uninstall-with-hooks":
273
+ return "uninstall";
274
+ case "uninstall-skill-only":
275
+ return "uninstall-skill";
276
+ case "clean-cache":
277
+ return "clean-cache";
278
+ }
279
+ }
203
280
  async function dispatchAction(action, target, ctx) {
204
281
  const args = buildArgsFor(action, target);
282
+ if (action === "clean-cache" && target.kind === "all") {
283
+ return dispatchCleanCacheAll(ctx);
284
+ }
205
285
  switch (action) {
206
- case "install":
286
+ case "install-full":
287
+ case "install-skill-only":
207
288
  return selfInstallSkill(args, ctx);
208
- case "uninstall":
209
- return selfUninstallSkill(args, ctx);
210
289
  case "install-hooks":
211
- case "install-hooks-keep-cache":
212
290
  return selfInstallHooks(args, ctx);
291
+ case "uninstall-full":
292
+ case "uninstall-with-hooks":
293
+ return selfUninstall(args, ctx);
294
+ case "uninstall-skill-only":
295
+ return selfUninstallSkill(args, ctx);
296
+ case "clean-cache":
297
+ return selfClearPluginCache(args, ctx);
298
+ }
299
+ }
300
+ async function dispatchCleanCacheAll(ctx) {
301
+ const hosts = ["claude", "codex", "warp", "agents"];
302
+ const errors = [];
303
+ for (const host of hosts) {
304
+ if (!CACHE_CLEAR_HOSTS.has(host))
305
+ continue;
306
+ const args = {
307
+ rest: ["clean-cache"],
308
+ plugin: {},
309
+ flags: new Set(),
310
+ values: new Map([
311
+ ["plugin", "agent-workflow"],
312
+ ["target", host],
313
+ ]),
314
+ valuesMulti: new Map(),
315
+ };
316
+ const result = await selfClearPluginCache(args, ctx);
317
+ if (!result.ok)
318
+ errors.push(`${host}: ${result.error?.message ?? "unknown"}`);
319
+ }
320
+ if (errors.length > 0) {
321
+ return {
322
+ ok: false,
323
+ error: { code: "PARTIAL_FAILURE", message: errors.join("; ") },
324
+ exitCode: 1,
325
+ };
213
326
  }
327
+ return { ok: true, data: { status: "cleaned" }, exitCode: 0 };
214
328
  }
215
329
  function buildBusyLabel(action, label) {
216
330
  switch (action) {
217
- case "install":
218
- return `instalando skill en ${label}…`;
219
- case "uninstall":
220
- return `desinstalando skill de ${label}…`;
331
+ case "install-full":
332
+ return `install completa en ${label}…`;
333
+ case "install-skill-only":
334
+ return `install skill en ${label}…`;
221
335
  case "install-hooks":
222
- return `instalando hooks en ${label}…`;
223
- case "install-hooks-keep-cache":
224
- return `instalando hooks en ${label} (sin limpiar caché)…`;
336
+ return `install hooks en ${label}…`;
337
+ case "uninstall-full":
338
+ return `uninstall completa en ${label}…`;
339
+ case "uninstall-with-hooks":
340
+ return `uninstall completa + hooks en ${label}…`;
341
+ case "uninstall-skill-only":
342
+ return `uninstall skill en ${label}…`;
343
+ case "clean-cache":
344
+ return `limpiando caché en ${label}…`;
225
345
  }
226
346
  }
227
347
  function buildSuccessMessage(action, target) {
348
+ const t = target.label;
228
349
  switch (action) {
229
- case "install":
230
- return `Skill instalada/actualizada en ${target}.`;
231
- case "uninstall":
232
- return `Skill desinstalada de ${target}.`;
350
+ case "install-full":
351
+ return `Install completa OK en ${t}.`;
352
+ case "install-skill-only":
353
+ return `Skill instalada en ${t}.`;
233
354
  case "install-hooks":
234
- case "install-hooks-keep-cache":
235
- return `Hooks instalados en ${target}.`;
355
+ return `Hooks instalados en ${t}.`;
356
+ case "uninstall-full":
357
+ return `Uninstall completa OK en ${t}.`;
358
+ case "uninstall-with-hooks":
359
+ return `Uninstall completa + hooks OK en ${t}.`;
360
+ case "uninstall-skill-only":
361
+ return `Skill desinstalada de ${t}.`;
362
+ case "clean-cache":
363
+ return `Caché limpiada en ${t}.`;
236
364
  }
237
365
  }
238
366
  //# sourceMappingURL=skills-tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skills-tab.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills-tab.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tacuchi/agent-workflow-cli",
3
- "version": "7.0.4",
3
+ "version": "7.1.0",
4
4
  "description": "Agnostic runtime CLI for session-lifecycle workflows. Auto-detects namespace from any `.<ns>/sessions/` dir in CWD; falls back to 'agent-workflow'. Bundles the universal `agent-workflow` skill (35 skills + 17 commands + 7 hooks template) in the tarball — `self install-skill --target <host>` (obligatory) copies it to the host's skill directory. Multi-empresa parametrization via `profile.json` cascade (flag → AW_PROFILE env → ~/.config/agent-workflow/profile.json → workspace → defaults). Hooks for Claude Code via `self install-hooks --target claude` (JSON merge into ~/.claude/settings.json with backup).",
5
5
  "type": "module",
6
6
  "bin": {