@tacuchi/agent-workflow-cli 12.7.1 → 12.9.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.
Files changed (43) hide show
  1. package/dist/application/self/mcp-config.d.ts +1 -0
  2. package/dist/application/self/mcp-config.d.ts.map +1 -1
  3. package/dist/application/self/mcp-config.js +1 -1
  4. package/dist/application/self/mcp-config.js.map +1 -1
  5. package/dist/application/session-resume-service.d.ts +8 -0
  6. package/dist/application/session-resume-service.d.ts.map +1 -1
  7. package/dist/application/session-resume-service.js +11 -2
  8. package/dist/application/session-resume-service.js.map +1 -1
  9. package/dist/application/templates/session.d.ts +10 -6
  10. package/dist/application/templates/session.d.ts.map +1 -1
  11. package/dist/application/templates/session.js +19 -17
  12. package/dist/application/templates/session.js.map +1 -1
  13. package/dist/application/workspace-init-service.d.ts.map +1 -1
  14. package/dist/application/workspace-init-service.js +62 -35
  15. package/dist/application/workspace-init-service.js.map +1 -1
  16. package/dist/cli/commands/session-resume.js +6 -2
  17. package/dist/cli/commands/session-resume.js.map +1 -1
  18. package/dist/cli/commands/workspace-init.js +3 -3
  19. package/dist/cli/commands/workspace-init.js.map +1 -1
  20. package/dist/cli/parsers/fuentes.d.ts.map +1 -1
  21. package/dist/cli/parsers/fuentes.js +48 -35
  22. package/dist/cli/parsers/fuentes.js.map +1 -1
  23. package/dist/cli/tui/data/workflow-content.js +3 -3
  24. package/dist/cli/tui/data/workflow-content.js.map +1 -1
  25. package/dist/cli/tui/tabs/mcp-tab-helpers.d.ts +21 -0
  26. package/dist/cli/tui/tabs/mcp-tab-helpers.d.ts.map +1 -0
  27. package/dist/cli/tui/tabs/mcp-tab-helpers.js +43 -0
  28. package/dist/cli/tui/tabs/mcp-tab-helpers.js.map +1 -0
  29. package/dist/cli/tui/tabs/mcp-tab.d.ts.map +1 -1
  30. package/dist/cli/tui/tabs/mcp-tab.js +152 -33
  31. package/dist/cli/tui/tabs/mcp-tab.js.map +1 -1
  32. package/dist/cli/tui/tabs/workflow-tab.d.ts.map +1 -1
  33. package/dist/cli/tui/tabs/workflow-tab.js +1 -1
  34. package/dist/cli/tui/tabs/workflow-tab.js.map +1 -1
  35. package/package.json +1 -1
  36. package/skills/w/SKILL.md +22 -6
  37. package/skills/w/artifacts/README.md +3 -1
  38. package/skills/w/artifacts/artifacts-core/SESSION.md +7 -3
  39. package/skills/w/loops/README.md +6 -5
  40. package/skills/w/loops/plan-exec-loop/SKILL.md +2 -2
  41. package/skills/w/loops/plan-new-loop/SKILL.md +2 -2
  42. package/skills/w/loops/quick-loop/SKILL.md +31 -18
  43. package/skills/w/loops/spec-refine-loop/SKILL.md +39 -2
@@ -1,42 +1,55 @@
1
1
  export function parseFuentesSpecs(specs) {
2
2
  const out = [];
3
3
  for (const raw of specs) {
4
- const trimmed = raw.trim();
5
- const firstColon = trimmed.indexOf(":");
6
- if (firstColon <= 0) {
7
- return {
8
- error: `--fuente formato inválido '${raw}': se esperaba 'alias:path[:rama-principal]'`,
9
- };
10
- }
11
- const alias = trimmed.slice(0, firstColon).trim();
12
- const rest = trimmed.slice(firstColon + 1);
13
- // En Windows el path arranca con un prefijo de unidad (`C:\`, `\\?\C:\`). Ese
14
- // colon de unidad NO es el separador de rama: hay que ignorarlo al buscar el
15
- // colon que parte `path:rama`, si no `C:\Source\foo` colapsa a path="C".
16
- const driveMatch = rest.match(/^(?:\\\\\?\\)?[A-Za-z]:[\\/]/);
17
- const driveColon = driveMatch ? driveMatch[0].indexOf(":") : -1;
18
- const lastColon = rest.lastIndexOf(":");
19
- let path;
20
- let rama;
21
- if (lastColon < 0 || lastColon === driveColon) {
22
- path = rest.trim();
23
- }
24
- else {
25
- path = rest.slice(0, lastColon).trim();
26
- const ramaCandidate = rest.slice(lastColon + 1).trim();
27
- if (ramaCandidate.length > 0)
28
- rama = ramaCandidate;
29
- }
30
- if (!alias || !path) {
31
- return {
32
- error: `--fuente formato inválido '${raw}': alias y path son obligatorios`,
33
- };
34
- }
35
- const entry = { alias, path };
36
- if (rama !== undefined)
37
- entry.mainBranch = rama;
38
- out.push(entry);
4
+ const parsed = parseOneFuente(raw);
5
+ if ("error" in parsed)
6
+ return parsed;
7
+ out.push(parsed);
39
8
  }
40
9
  return { fuentes: out };
41
10
  }
11
+ function parseOneFuente(raw) {
12
+ const trimmed = raw.trim();
13
+ const firstColon = trimmed.indexOf(":");
14
+ if (firstColon <= 0) {
15
+ return {
16
+ error: `--fuente formato inválido '${raw}': se esperaba 'alias:path[:rama-principal]'`,
17
+ };
18
+ }
19
+ const alias = trimmed.slice(0, firstColon).trim();
20
+ const rest = trimmed.slice(firstColon + 1);
21
+ // A Windows drive path must keep a separator after the colon (`C:\` or `C:/`).
22
+ // A drive letter glued to the path (`C:Source…`) means the backslashes were
23
+ // lost — commonly the shell ate them when this was passed as an arg. Reject it
24
+ // rather than store a corrupted path (which later wipes multiroot visibility).
25
+ if (/^[A-Za-z]:[^\\/]/.test(rest)) {
26
+ return {
27
+ error: `--fuente path corrupto '${raw}': la unidad '${rest.slice(0, 2)}' no tiene separador tras el colon (backslashes perdidos, probablemente por el shell). En Windows pasá forward-slash: ${alias}:C:/Source/...`,
28
+ };
29
+ }
30
+ // En Windows el path arranca con un prefijo de unidad (`C:\`, `\\?\C:\`). Ese
31
+ // colon de unidad NO es el separador de rama: hay que ignorarlo al buscar el
32
+ // colon que parte `path:rama`, si no `C:\Source\foo` colapsa a path="C".
33
+ const driveMatch = rest.match(/^(?:\\\\\?\\)?[A-Za-z]:[\\/]/);
34
+ const driveColon = driveMatch ? driveMatch[0].indexOf(":") : -1;
35
+ const lastColon = rest.lastIndexOf(":");
36
+ let path;
37
+ let rama;
38
+ if (lastColon < 0 || lastColon === driveColon) {
39
+ path = rest.trim();
40
+ }
41
+ else {
42
+ path = rest.slice(0, lastColon).trim();
43
+ const ramaCandidate = rest.slice(lastColon + 1).trim();
44
+ if (ramaCandidate.length > 0)
45
+ rama = ramaCandidate;
46
+ }
47
+ if (!alias || !path) {
48
+ return { error: `--fuente formato inválido '${raw}': alias y path son obligatorios` };
49
+ }
50
+ const entry = { alias, path };
51
+ if (rama !== undefined)
52
+ entry.mainBranch = rama;
53
+ return entry;
54
+ }
42
55
  //# sourceMappingURL=fuentes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fuentes.js","sourceRoot":"","sources":["../../../src/cli/parsers/fuentes.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,iBAAiB,CAAC,KAAe;IAC/C,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;YACpB,OAAO;gBACL,KAAK,EAAE,8BAA8B,GAAG,8CAA8C;aACvF,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QAC3C,8EAA8E;QAC9E,6EAA6E;QAC7E,yEAAyE;QACzE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,IAAY,CAAC;QACjB,IAAI,IAAwB,CAAC;QAC7B,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;YAC9C,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACvD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;gBAAE,IAAI,GAAG,aAAa,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO;gBACL,KAAK,EAAE,8BAA8B,GAAG,kCAAkC;aAC3E,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAe,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC1C,IAAI,IAAI,KAAK,SAAS;YAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;QAChD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"fuentes.js","sourceRoot":"","sources":["../../../src/cli/parsers/fuentes.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,iBAAiB,CAAC,KAAe;IAC/C,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,OAAO,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QACrC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO;YACL,KAAK,EAAE,8BAA8B,GAAG,8CAA8C;SACvF,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IAC3C,+EAA+E;IAC/E,4EAA4E;IAC5E,+EAA+E;IAC/E,+EAA+E;IAC/E,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,KAAK,EAAE,2BAA2B,GAAG,iBAAiB,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,yHAAyH,KAAK,gBAAgB;SACrN,CAAC;IACJ,CAAC;IACD,8EAA8E;IAC9E,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,IAAY,CAAC;IACjB,IAAI,IAAwB,CAAC;IAC7B,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QAC9C,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,GAAG,aAAa,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,KAAK,EAAE,8BAA8B,GAAG,kCAAkC,EAAE,CAAC;IACxF,CAAC;IACD,MAAM,KAAK,GAAe,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC1C,IAAI,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;IAChD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,5 +1,5 @@
1
1
  // Datos del Workflow tab — hardcoded para evitar I/O en render.
2
- // Sincronizado con el modelo rediseñado (stages + loops + artifacts):
2
+ // Sincronizado con el modelo rediseñado (stages + loops + artifacts; loops = objetivos persistentes + verification-first):
3
3
  // - skills/w/commands/ (/w: slash commands — 1 por archivo .md)
4
4
  // - skills/w/README.md (3 layers + 3 flows: SPEC / PLAN / QUICK)
5
5
  // - src/cli/help-groups.ts (familias del CLI real, post-cleanup)
@@ -9,7 +9,7 @@
9
9
  // renombran familias en help-groups.ts, actualizar este archivo. Los totales se
10
10
  // derivan con `.length` en runtime — NO hardcodear cantidades en strings.
11
11
  export const WORKFLOW_CONTENT = {
12
- overview: "Stages + loops + artifacts — 3 flows (SPEC · PLAN · QUICK) drive convergent loops over session artifacts; export-* promotes to docs/. Transversal skills (/w:status · /w:fix-git) sit outside the flows.",
12
+ overview: "Stages + loops + artifacts — 3 flows (SPEC · PLAN · QUICK) drive convergent loops; each loop is a persistent goal that runs until its Success criteria are green (verification-first). export-* promotes to docs/; transversal skills (/w:status · /w:fix-git) sit outside the flows.",
13
13
  // Las 3 FLOWS del modelo + bootstrap (workspace-init) + familia export-*.
14
14
  // Reusa PhaseCardData genérico (id/n/title/desc/commands/slash/hook).
15
15
  phases: [
@@ -44,7 +44,7 @@ export const WORKFLOW_CONTENT = {
44
44
  id: "quick",
45
45
  n: 4,
46
46
  title: "QUICK — the shortcut",
47
- desc: "Lightweight one-command loop for small tasks. Owns no docs/ folder.",
47
+ desc: "Lightweight one-command loop for small tasks — code or a scoped analysis/design. Proportional verification-first; owns no docs/ folder.",
48
48
  commands: ["quick"],
49
49
  slash: "/w:quick",
50
50
  hook: "SessionEnd",
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-content.js","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-content.js","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { MetaTone } from "../components/list-row.js";
2
+ /** Whether a connection is present in the workspace `.mcp.json` for the current
3
+ * host. Mirror of the (unexported) `InstallStatus` in `self/mcp-config.ts`. */
4
+ export type WorkspaceInstallStatus = "si" | "no" | "drift";
5
+ /**
6
+ * Suggest a DSN env var name from a connection alias, mirroring the CLI's
7
+ * `defaultDsnVar`: `cert` → `DB_CERT_DSN`, `my-db` → `DB_MY_DB_DSN`. Returns ""
8
+ * for an empty alias (no suggestion to prefill).
9
+ */
10
+ export declare function suggestDsnVar(alias: string): string;
11
+ /**
12
+ * Row state pill reflecting whether the connection is installed in the
13
+ * workspace `.mcp.json` (vs. merely registered in profile.json).
14
+ */
15
+ export declare function installStatusPill(status: WorkspaceInstallStatus): {
16
+ label: string;
17
+ tone: MetaTone;
18
+ };
19
+ /** Detail-panel install action label, adapting to the current install status. */
20
+ export declare function installActionLabel(status: WorkspaceInstallStatus): string;
21
+ //# sourceMappingURL=mcp-tab-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tab-helpers.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab-helpers.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D;gFACgF;AAChF,MAAM,MAAM,sBAAsB,GAAG,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC;AAE3D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOnD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,sBAAsB,GAAG;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;CAChB,CASA;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,CASzE"}
@@ -0,0 +1,43 @@
1
+ // Pure helpers for the MCP tab — extracted so the rendering/UX logic is unit-
2
+ // testable without mounting the Ink component. The async command wiring
3
+ // (selfMcpConfig / testMcpConnection) stays in mcp-tab.tsx, thin over these.
4
+ /**
5
+ * Suggest a DSN env var name from a connection alias, mirroring the CLI's
6
+ * `defaultDsnVar`: `cert` → `DB_CERT_DSN`, `my-db` → `DB_MY_DB_DSN`. Returns ""
7
+ * for an empty alias (no suggestion to prefill).
8
+ */
9
+ export function suggestDsnVar(alias) {
10
+ const normalized = alias
11
+ .trim()
12
+ .toUpperCase()
13
+ .replace(/[\s-]+/g, "_");
14
+ if (normalized.length === 0)
15
+ return "";
16
+ return `DB_${normalized}_DSN`;
17
+ }
18
+ /**
19
+ * Row state pill reflecting whether the connection is installed in the
20
+ * workspace `.mcp.json` (vs. merely registered in profile.json).
21
+ */
22
+ export function installStatusPill(status) {
23
+ switch (status) {
24
+ case "si":
25
+ return { label: "installed", tone: "ok" };
26
+ case "drift":
27
+ return { label: "drift", tone: "warn" };
28
+ case "no":
29
+ return { label: "registered", tone: "dim" };
30
+ }
31
+ }
32
+ /** Detail-panel install action label, adapting to the current install status. */
33
+ export function installActionLabel(status) {
34
+ switch (status) {
35
+ case "no":
36
+ return "Install to workspace";
37
+ case "drift":
38
+ return "Update .mcp.json";
39
+ case "si":
40
+ return "Reinstall to workspace";
41
+ }
42
+ }
43
+ //# sourceMappingURL=mcp-tab-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tab-helpers.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab-helpers.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wEAAwE;AACxE,6EAA6E;AAQ7E;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,MAAM,UAAU,GAAG,KAAK;SACrB,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC3B,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,MAAM,UAAU,MAAM,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA8B;IAI9D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,IAAI;YACP,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC5C,KAAK,OAAO;YACV,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC1C,KAAK,IAAI;YACP,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAChD,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAAC,MAA8B;IAC/D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,IAAI;YACP,OAAO,sBAAsB,CAAC;QAChC,KAAK,OAAO;YACV,OAAO,kBAAkB,CAAC;QAC5B,KAAK,IAAI;YACP,OAAO,wBAAwB,CAAC;IACpC,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,gCAAgC,CAAC;AAsBlF,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACvF,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC;CAChC;AAYD,wBAAgB,MAAM,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,WAAW,2CAmb3E"}
1
+ {"version":3,"file":"mcp-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,gCAAgC,CAAC;AA+BlF,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACvF,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC;CAChC;AAsBD,wBAAgB,MAAM,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,WAAW,2CAqmB3E"}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import { Box, Text, useInput, useStdout } from "ink";
3
3
  import { useCallback, useEffect, useRef, useState } from "react";
4
4
  import { testMcpConnection } from "../../../application/mcp-test-connection-service.js";
5
- import { selfMcpConfig, } from "../../../application/self/mcp-config.js";
5
+ import { isDsnVisible, selfMcpConfig, } from "../../../application/self/mcp-config.js";
6
6
  import { ActivityFeed } from "../components/activity-feed.js";
7
7
  import { ConfirmBanner } from "../components/confirm-banner.js";
8
8
  import { DetailPanel } from "../components/detail-panel.js";
@@ -14,6 +14,7 @@ import { SectionHead } from "../components/section-head.js";
14
14
  import { useInputLock } from "../input-lock.js";
15
15
  import { rowWidth } from "../row-width.js";
16
16
  import { colors, icons } from "../theme.js";
17
+ import { installActionLabel, installStatusPill, suggestDsnVar } from "./mcp-tab-helpers.js";
17
18
  function buildArgs(action, values = {}) {
18
19
  return {
19
20
  rest: ["mcp", action],
@@ -23,6 +24,16 @@ function buildArgs(action, values = {}) {
23
24
  valuesMulti: new Map(),
24
25
  };
25
26
  }
27
+ // Crash-safe DSN visibility check (env + bootstrap dsn file) for the review
28
+ // step's badge. Defensive: a malformed ctx reads as "not visible", never throws.
29
+ function safeDsnVisible(ctx, dsnVar) {
30
+ try {
31
+ return isDsnVisible(ctx, dsnVar);
32
+ }
33
+ catch {
34
+ return false;
35
+ }
36
+ }
26
37
  export function McpTab({ ctx, isActive, onToast, recentEvents }) {
27
38
  const [connections, setConnections] = useState([]);
28
39
  const [cursor, setCursor] = useState(0);
@@ -108,10 +119,31 @@ export function McpTab({ ctx, isActive, onToast, recentEvents }) {
108
119
  await refresh();
109
120
  setMode({ kind: "list" });
110
121
  }, [ctx, onToast, refresh]);
122
+ // Install the connection into the workspace `.mcp.json` (root) via the
123
+ // existing `install-claude` action (runMcpSetup, scope=workspace).
124
+ const runInstall = useCallback(async (name) => {
125
+ setMode({ kind: "busy", label: `installing ${name} → .mcp.json…` });
126
+ try {
127
+ const result = await selfMcpConfig(buildArgs("install-claude", { name }), ctx);
128
+ onToast?.({
129
+ tone: result.ok ? "ok" : "err",
130
+ title: result.ok ? `Installed · ${name}` : `Install failed · ${name}`,
131
+ body: result.data?.summary ?? result.error?.message ?? "",
132
+ });
133
+ }
134
+ catch (err) {
135
+ onToast?.({ tone: "err", title: "Install failed", body: err.message });
136
+ }
137
+ await refresh();
138
+ setMode({ kind: "list" });
139
+ }, [ctx, onToast, refresh]);
111
140
  const triggerAction = useCallback((id) => {
112
141
  if (!current)
113
142
  return;
114
143
  switch (id) {
144
+ case "install":
145
+ void runInstall(current.nombre);
146
+ return;
115
147
  case "test":
116
148
  void runTestConnection(current.nombre, current.dsn_var);
117
149
  return;
@@ -126,12 +158,18 @@ export function McpTab({ ctx, isActive, onToast, recentEvents }) {
126
158
  setMode({ kind: "confirm-delete", name: current.nombre });
127
159
  return;
128
160
  }
129
- }, [current, runTestConnection]);
130
- // Detail panel actions (Test/Edit/Remove).
161
+ }, [current, runTestConnection, runInstall]);
162
+ // Detail panel actions (Install/Test/Edit/Remove). `Install` adapts its label
163
+ // to the workspace status: install · update (on drift) · reinstall.
164
+ const detailActionIds = ["install", "test", "edit", "remove"];
131
165
  const detailActions = current
132
166
  ? [
167
+ {
168
+ name: installActionLabel(current.instalado.claude_code),
169
+ description: "Write the dbhub entry to .mcp.json at the workspace root.",
170
+ },
133
171
  { name: "Test connection", description: "Run dbhub with DSN (SELECT 1 smoke test)." },
134
- { name: "Edit connection", description: "Alias / host / DSN." },
172
+ { name: "Edit connection", description: "Alias / DSN env var." },
135
173
  {
136
174
  name: "Remove connection",
137
175
  description: "Delete entry + DSN export.",
@@ -177,18 +215,9 @@ export function McpTab({ ctx, isActive, onToast, recentEvents }) {
177
215
  return;
178
216
  }
179
217
  if (key.return) {
180
- const action = detailActions[actionCursor];
181
- if (!action)
182
- return;
183
- if (action.danger) {
184
- triggerAction("remove");
185
- }
186
- else if (action.name.startsWith("Edit")) {
187
- triggerAction("edit");
188
- }
189
- else {
190
- triggerAction("test");
191
- }
218
+ const id = detailActionIds[actionCursor];
219
+ if (id)
220
+ triggerAction(id);
192
221
  }
193
222
  }, { isActive });
194
223
  // input — confirm-delete (y confirma · n/esc vuelve al detail)
@@ -216,14 +245,39 @@ export function McpTab({ ctx, isActive, onToast, recentEvents }) {
216
245
  setMode({ kind: "list" });
217
246
  }
218
247
  }, { isActive });
219
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(PageHead, { title: "MCP", count: { label: `${connections.length} databases · profile.json`, tone: "accent" }, action: _jsx(Text, { color: colors.mute, children: "aliases match mcp_databases[] \u00B7 consumed by skills" }) }), _jsxs(Box, { flexDirection: "row", children: [_jsxs(Box, { flexDirection: "column", flexGrow: 1, paddingRight: 2, children: [_jsx(SectionHead, { label: "Connections", count: connections.length, ...(mode.kind === "wizard-name" || mode.kind === "wizard-dsn"
248
+ // input wizard-review (t test · save+install · s save only · esc cancel)
249
+ useInput((input, key) => {
250
+ if (!isActive || mode.kind !== "wizard-review")
251
+ return;
252
+ if (key.escape) {
253
+ setMode({ kind: "list" });
254
+ return;
255
+ }
256
+ if (input === "t" || input === "T") {
257
+ void runWizardTest(mode);
258
+ return;
259
+ }
260
+ if (input === "s" || input === "S") {
261
+ void saveOnly(mode.name, mode.dsnVar);
262
+ return;
263
+ }
264
+ if (key.return) {
265
+ void saveAndInstall(mode.name, mode.dsnVar);
266
+ }
267
+ }, { isActive });
268
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(PageHead, { title: "MCP", count: { label: `${connections.length} databases · profile.json`, tone: "accent" }, action: _jsx(Text, { color: colors.mute, children: "aliases match mcp_databases[] \u00B7 consumed by skills" }) }), _jsxs(Box, { flexDirection: "row", children: [_jsxs(Box, { flexDirection: "column", flexGrow: 1, paddingRight: 2, children: [_jsx(SectionHead, { label: "Connections", count: connections.length, ...(mode.kind === "wizard-name" ||
269
+ mode.kind === "wizard-dsn" ||
270
+ mode.kind === "wizard-review"
220
271
  ? { rightAction: "esc cancel" }
221
272
  : mode.kind === "detail" || mode.kind === "confirm-delete"
222
273
  ? { rightAction: "esc to close detail" }
223
- : {}) }), connections.length === 0 && mode.kind === "list" ? (_jsxs(Box, { marginLeft: 2, marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.dim, children: "No MCP connections yet." }), _jsxs(Text, { color: colors.dim, children: ["Register a DSN to let skills query your DB. Press", " ", _jsx(Text, { color: colors.accent, bold: true, children: "a" }), " ", "to start."] })] })) : (_jsx(Box, { marginTop: 0, flexDirection: "column", children: connections.map((c, i) => (_jsx(ListRow, { icon: icons.diamond, iconActive: true, title: c.nombre, subtitle: `${c.dsn_var} · ${c.server_name}`, state: { label: "registered", tone: "ok" }, chevron: true, active: i === cursor, dimmed: mode.kind === "wizard-name" || mode.kind === "wizard-dsn", widthHint: rowWidth(stdout?.columns, mode.kind === "detail" ||
274
+ : {}) }), connections.length === 0 && mode.kind === "list" ? (_jsxs(Box, { marginLeft: 2, marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.dim, children: "No MCP connections yet." }), _jsxs(Text, { color: colors.dim, children: ["Register a DSN to let skills query your DB. Press", " ", _jsx(Text, { color: colors.accent, bold: true, children: "a" }), " ", "to start."] })] })) : (_jsx(Box, { marginTop: 0, flexDirection: "column", children: connections.map((c, i) => (_jsx(ListRow, { icon: icons.diamond, iconActive: true, title: c.nombre, subtitle: `${c.dsn_var} · ${c.server_name}`, state: installStatusPill(c.instalado.claude_code), chevron: true, active: i === cursor, dimmed: mode.kind === "wizard-name" ||
275
+ mode.kind === "wizard-dsn" ||
276
+ mode.kind === "wizard-review", widthHint: rowWidth(stdout?.columns, mode.kind === "detail" ||
224
277
  mode.kind === "confirm-delete" ||
225
278
  mode.kind === "wizard-name" ||
226
- mode.kind === "wizard-dsn") }, c.nombre))) })), mode.kind === "wizard-name" ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(SectionHead, { label: mode.editingName
279
+ mode.kind === "wizard-dsn" ||
280
+ mode.kind === "wizard-review") }, c.nombre))) })), mode.kind === "wizard-name" ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(SectionHead, { label: mode.editingName
227
281
  ? `Edit connection · ${mode.editingName}`
228
282
  : "Register new connection", hint: "Step 1 of 2 \u00B7 Alias", rightAction: "\u23CE next \u00B7 esc cancel" }), _jsx(Box, { marginLeft: 2, marginTop: 0, children: _jsx(InputPrompt, { message: "alias (slug-kebab):", onSubmit: (value) => {
229
283
  const trimmed = value.trim() || mode.editingName || "";
@@ -236,29 +290,71 @@ export function McpTab({ ctx, isActive, onToast, recentEvents }) {
236
290
  kind: "wizard-dsn",
237
291
  name: trimmed,
238
292
  ...(mode.editingName ? { editingExisting: mode.editingName } : {}),
293
+ ...(mode.prefillDsn ? { prefillDsn: mode.prefillDsn } : {}),
239
294
  });
240
- }, isActive: isActive }) })] })) : null, mode.kind === "wizard-dsn" ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(SectionHead, { label: `Register new connection · ${mode.name}`, hint: "Step 2 of 2 \u00B7 DSN env var", rightAction: "\u23CE register \u00B7 esc cancel" }), _jsx(Box, { marginLeft: 2, marginTop: 0, children: _jsx(InputPrompt, { message: "DSN env var (UPPER_SNAKE_CASE):", onSubmit: (value) => {
241
- const dsnVar = value.trim();
295
+ }, isActive: isActive }) })] })) : null, mode.kind === "wizard-dsn" ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(SectionHead, { label: `Register new connection · ${mode.name}`, hint: "Step 2 of 2 \u00B7 DSN env var", rightAction: "\u23CE register \u00B7 esc cancel" }), _jsx(Box, { marginLeft: 2, marginTop: 0, children: _jsx(InputPrompt, { message: "DSN env var (UPPER_SNAKE_CASE):", defaultValue: mode.prefillDsn ?? suggestDsnVar(mode.name), onSubmit: (value) => {
296
+ const dsnVar = value.trim().toUpperCase();
242
297
  if (!dsnVar) {
243
298
  onToast?.({ tone: "err", title: "Empty DSN var" });
244
299
  setMode({ kind: "list" });
245
300
  return;
246
301
  }
247
- void registerConnection(mode.name, dsnVar);
248
- }, isActive: isActive }) })] })) : null, mode.kind === "list" ? (_jsxs(_Fragment, { children: [_jsx(SectionHead, { label: "Recent", count: recentEvents?.length ?? 0, marginTop: 1 }), _jsx(Box, { marginLeft: 2, children: _jsx(ActivityFeed, { events: recentEvents ?? [], cap: 4, emptyHint: " (no recent MCP calls yet)" }) })] })) : null, mode.kind === "busy" ? (_jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: colors.warn, children: [icons.spinner, " ", mode.label] }) })) : null] }), current && (mode.kind === "detail" || mode.kind === "confirm-delete") ? (_jsx(DetailPanel, { bordered: true, header: {
302
+ setMode({
303
+ kind: "wizard-review",
304
+ name: mode.name,
305
+ dsnVar,
306
+ visible: safeDsnVisible(ctx, dsnVar),
307
+ ...(mode.editingExisting ? { editingExisting: mode.editingExisting } : {}),
308
+ });
309
+ }, isActive: isActive }) })] })) : null, mode.kind === "wizard-review" ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(SectionHead, { label: `${mode.editingExisting ? "Edit" : "Register"} connection · ${mode.name}`, hint: "Step 3 of 3 \u00B7 Review \u00B7 test \u00B7 install", rightAction: "\u23CE save+install \u00B7 esc cancel" }), _jsxs(Box, { marginLeft: 2, marginTop: 1, flexDirection: "column", children: [_jsxs(Box, { children: [_jsx(Text, { color: colors.dim, children: "alias " }), _jsx(Text, { color: colors.bright, bold: true, children: mode.name })] }), _jsxs(Box, { children: [_jsx(Text, { color: colors.dim, children: "DSN " }), _jsx(Text, { color: colors.bright, bold: true, children: mode.dsnVar }), _jsx(Text, { children: " " }), mode.visible ? (_jsxs(Text, { color: colors.ok, children: [icons.check, " visible"] })) : (_jsxs(Text, { color: colors.warn, children: [icons.cross, " not in env \u2014 export it first"] }))] }), mode.test ? (_jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: mode.test.ok ? colors.ok : colors.err, children: [mode.test.ok ? icons.check : icons.cross, " ", mode.test.msg] }) })) : null, _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.borderFaint, children: "─".repeat(40) }), _jsx(Text, { color: colors.faint, children: "[\u23CE] save + install \u00B7 [s] save only \u00B7 [t] test \u00B7 esc cancel" })] })] })] })) : null, mode.kind === "list" ? (_jsxs(_Fragment, { children: [_jsx(SectionHead, { label: "Recent", count: recentEvents?.length ?? 0, marginTop: 1 }), _jsx(Box, { marginLeft: 2, children: _jsx(ActivityFeed, { events: recentEvents ?? [], cap: 4, emptyHint: " (no recent MCP calls yet)" }) })] })) : null, mode.kind === "busy" ? (_jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: colors.warn, children: [icons.spinner, " ", mode.label] }) })) : null] }), current && (mode.kind === "detail" || mode.kind === "confirm-delete") ? (_jsx(DetailPanel, { bordered: true, header: {
249
310
  name: current.nombre,
250
311
  meta: `${current.server_name} · ${current.dsn_var}\nlast test: —`,
251
- }, statePill: { label: "registered", tone: "ok" }, actions: detailActions, focusedAction: actionCursor, banner: mode.kind === "confirm-delete" ? (_jsx(ConfirmBanner, { title: `× Remove ${mode.name}?`, body: `This deletes the entry from profile.json and unexports ${current.dsn_var}. Not reversible.` })) : null })) : mode.kind === "wizard-name" || mode.kind === "wizard-dsn" ? (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: colors.borderFaint, children: "│" }), _jsxs(Box, { flexDirection: "column", width: 38, paddingLeft: 1, children: [_jsx(Box, { children: _jsx(Text, { color: colors.accent, bold: true, children: "+ New connection" }) }), _jsx(Text, { color: colors.dim, wrap: "truncate-end", children: "2-step wizard \u00B7 profile.json" }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.mute, children: "STEPS" }), _jsx(WizardStep, { index: 1, label: "Alias", active: mode.kind === "wizard-name", completed: mode.kind === "wizard-dsn", value: mode.kind === "wizard-dsn" ? mode.name : undefined }), _jsx(WizardStep, { index: 2, label: "DSN env var", active: mode.kind === "wizard-dsn", completed: false })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.borderFaint, children: "─".repeat(36) }), _jsx(Text, { color: colors.faint, children: "\u23CE next \u00B7 esc cancel" })] })] })] })) : null] }), _jsx(Box, { marginTop: 1, children: _jsx(QuickActions, { actions: [{ key: "a", label: "add connection" }] }) })] }));
252
- async function registerConnection(name, dsnVar) {
253
- setMode({ kind: "busy", label: `registering ${name}…` });
312
+ }, statePill: { label: "registered", tone: "ok" }, actions: detailActions, focusedAction: actionCursor, banner: mode.kind === "confirm-delete" ? (_jsx(ConfirmBanner, { title: `× Remove ${mode.name}?`, body: `This deletes the entry from profile.json and unexports ${current.dsn_var}. Not reversible.` })) : null })) : mode.kind === "wizard-name" ||
313
+ mode.kind === "wizard-dsn" ||
314
+ mode.kind === "wizard-review" ? (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: colors.borderFaint, children: "│" }), _jsxs(Box, { flexDirection: "column", width: 38, paddingLeft: 1, children: [_jsx(Box, { children: _jsx(Text, { color: colors.accent, bold: true, children: mode.kind === "wizard-review" && mode.editingExisting
315
+ ? "✎ Edit connection"
316
+ : "+ New connection" }) }), _jsx(Text, { color: colors.dim, wrap: "truncate-end", children: "guided \u00B7 test \u00B7 install" }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.mute, children: "STEPS" }), _jsx(WizardStep, { index: 1, label: "Alias", active: mode.kind === "wizard-name", completed: mode.kind === "wizard-dsn" || mode.kind === "wizard-review", value: mode.kind === "wizard-dsn" || mode.kind === "wizard-review"
317
+ ? mode.name
318
+ : undefined }), _jsx(WizardStep, { index: 2, label: "DSN env var", active: mode.kind === "wizard-dsn", completed: mode.kind === "wizard-review", value: mode.kind === "wizard-review" ? mode.dsnVar : undefined }), _jsx(WizardStep, { index: 3, label: "Test (optional)", active: mode.kind === "wizard-review", completed: mode.kind === "wizard-review" && mode.test?.ok === true }), _jsx(WizardStep, { index: 4, label: "Install \u2192 .mcp.json", active: false, completed: false })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.borderFaint, children: "─".repeat(36) }), _jsx(Text, { color: colors.faint, children: mode.kind === "wizard-review"
319
+ ? "⏎ save+install · s save · t test"
320
+ : "⏎ next · esc cancel" })] })] })] })) : null] }), _jsx(Box, { marginTop: 1, children: _jsx(QuickActions, { actions: [{ key: "a", label: "add connection" }] }) })] }));
321
+ // Register the connection in profile.json (use-env). Returns ok so callers can
322
+ // chain the workspace install. On a not-visible DSN, use-env surfaces env_help.
323
+ async function saveConnection(name, dsnVar) {
324
+ const result = await selfMcpConfig(buildArgs("use-env", { name, "dsn-var": dsnVar }), ctx);
325
+ onToast?.({
326
+ tone: result.ok ? "ok" : "err",
327
+ title: result.ok ? `Registered · ${name}` : "Save failed",
328
+ body: result.data?.summary ?? result.error?.message ?? "",
329
+ });
330
+ return result.ok;
331
+ }
332
+ async function saveOnly(name, dsnVar) {
333
+ setMode({ kind: "busy", label: `saving ${name}…` });
254
334
  try {
255
- const result = await selfMcpConfig(buildArgs("use-env", { name, "dsn-var": dsnVar }), ctx);
256
- const summary = result.data?.summary ?? result.error?.message ?? "";
257
- onToast?.({
258
- tone: result.ok ? "ok" : "err",
259
- title: result.ok ? "Connection registered" : "Failed",
260
- body: summary,
261
- });
335
+ await saveConnection(name, dsnVar);
336
+ await refresh();
337
+ }
338
+ catch (err) {
339
+ onToast?.({ tone: "err", title: "Error", body: err.message });
340
+ }
341
+ finally {
342
+ setMode({ kind: "list" });
343
+ }
344
+ }
345
+ async function saveAndInstall(name, dsnVar) {
346
+ setMode({ kind: "busy", label: `saving ${name}…` });
347
+ try {
348
+ const saved = await saveConnection(name, dsnVar);
349
+ if (saved) {
350
+ setMode({ kind: "busy", label: `installing ${name} → .mcp.json…` });
351
+ const install = await selfMcpConfig(buildArgs("install-claude", { name }), ctx);
352
+ onToast?.({
353
+ tone: install.ok ? "ok" : "err",
354
+ title: install.ok ? `Installed · ${name}` : `Install failed · ${name}`,
355
+ body: install.data?.summary ?? install.error?.message ?? "",
356
+ });
357
+ }
262
358
  await refresh();
263
359
  }
264
360
  catch (err) {
@@ -268,6 +364,29 @@ export function McpTab({ ctx, isActive, onToast, recentEvents }) {
268
364
  setMode({ kind: "list" });
269
365
  }
270
366
  }
367
+ async function runWizardTest(review) {
368
+ setMode({ kind: "busy", label: `testing ${review.dsnVar} → dbhub…` });
369
+ try {
370
+ const result = await testMcpConnection({
371
+ dsnVar: review.dsnVar,
372
+ env: process.env,
373
+ paths: ctx.paths,
374
+ platform: process.platform,
375
+ });
376
+ setMode({
377
+ ...review,
378
+ test: {
379
+ ok: result.ok,
380
+ msg: result.ok
381
+ ? `dbhub connected (${result.source ?? "env"})`
382
+ : (result.error ?? "dbhub could not connect"),
383
+ },
384
+ });
385
+ }
386
+ catch (err) {
387
+ setMode({ ...review, test: { ok: false, msg: err.message } });
388
+ }
389
+ }
271
390
  }
272
391
  function WizardStep({ index, label, active, completed, value, hint, }) {
273
392
  const glyph = completed ? icons.check : active ? "→" : " ";
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-tab.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-tab.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/workflow-tab.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAQjD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CA6FzD"}
1
+ {"version":3,"file":"workflow-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/workflow-tab.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAQjD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CAmGzD"}