@specship/specship-win32-arm64 0.21.2 → 0.23.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 (122) hide show
  1. package/lib/dist/activation/search-intercept.d.ts +59 -0
  2. package/lib/dist/activation/search-intercept.d.ts.map +1 -0
  3. package/lib/dist/activation/search-intercept.js +195 -0
  4. package/lib/dist/activation/search-intercept.js.map +1 -0
  5. package/lib/dist/bin/specship.js +372 -11
  6. package/lib/dist/bin/specship.js.map +1 -1
  7. package/lib/dist/bin/uninstall.d.ts +4 -3
  8. package/lib/dist/bin/uninstall.d.ts.map +1 -1
  9. package/lib/dist/bin/uninstall.js +4 -3
  10. package/lib/dist/bin/uninstall.js.map +1 -1
  11. package/lib/dist/commands/specship/jira.md +74 -0
  12. package/lib/dist/commands/specship/spec.md +61 -1
  13. package/lib/dist/extraction/index.d.ts +6 -0
  14. package/lib/dist/extraction/index.d.ts.map +1 -1
  15. package/lib/dist/extraction/index.js.map +1 -1
  16. package/lib/dist/extraction/specs/markdown-spec-extractor.d.ts.map +1 -1
  17. package/lib/dist/extraction/specs/markdown-spec-extractor.js +8 -1
  18. package/lib/dist/extraction/specs/markdown-spec-extractor.js.map +1 -1
  19. package/lib/dist/index.d.ts +7 -0
  20. package/lib/dist/index.d.ts.map +1 -1
  21. package/lib/dist/index.js +45 -18
  22. package/lib/dist/index.js.map +1 -1
  23. package/lib/dist/installer/index.d.ts +20 -6
  24. package/lib/dist/installer/index.d.ts.map +1 -1
  25. package/lib/dist/installer/index.js +123 -63
  26. package/lib/dist/installer/index.js.map +1 -1
  27. package/lib/dist/installer/targets/claude.d.ts +9 -0
  28. package/lib/dist/installer/targets/claude.d.ts.map +1 -1
  29. package/lib/dist/installer/targets/claude.js +46 -0
  30. package/lib/dist/installer/targets/claude.js.map +1 -1
  31. package/lib/dist/installer/targets/gemini.d.ts +78 -0
  32. package/lib/dist/installer/targets/gemini.d.ts.map +1 -0
  33. package/lib/dist/installer/targets/gemini.js +200 -0
  34. package/lib/dist/installer/targets/gemini.js.map +1 -0
  35. package/lib/dist/installer/targets/registry.d.ts +5 -2
  36. package/lib/dist/installer/targets/registry.d.ts.map +1 -1
  37. package/lib/dist/installer/targets/registry.js +7 -3
  38. package/lib/dist/installer/targets/registry.js.map +1 -1
  39. package/lib/dist/installer/targets/types.d.ts +6 -2
  40. package/lib/dist/installer/targets/types.d.ts.map +1 -1
  41. package/lib/dist/jira/auto-publish.d.ts +67 -0
  42. package/lib/dist/jira/auto-publish.d.ts.map +1 -0
  43. package/lib/dist/jira/auto-publish.js +256 -0
  44. package/lib/dist/jira/auto-publish.js.map +1 -0
  45. package/lib/dist/jira/board-first.d.ts +64 -0
  46. package/lib/dist/jira/board-first.d.ts.map +1 -0
  47. package/lib/dist/jira/board-first.js +91 -0
  48. package/lib/dist/jira/board-first.js.map +1 -0
  49. package/lib/dist/jira/client.d.ts +87 -1
  50. package/lib/dist/jira/client.d.ts.map +1 -1
  51. package/lib/dist/jira/client.js +249 -2
  52. package/lib/dist/jira/client.js.map +1 -1
  53. package/lib/dist/jira/config.d.ts +1 -1
  54. package/lib/dist/jira/config.d.ts.map +1 -1
  55. package/lib/dist/jira/config.js +14 -3
  56. package/lib/dist/jira/config.js.map +1 -1
  57. package/lib/dist/jira/coverage.d.ts +105 -0
  58. package/lib/dist/jira/coverage.d.ts.map +1 -0
  59. package/lib/dist/jira/coverage.js +170 -0
  60. package/lib/dist/jira/coverage.js.map +1 -0
  61. package/lib/dist/jira/index.d.ts +1 -0
  62. package/lib/dist/jira/index.d.ts.map +1 -1
  63. package/lib/dist/jira/index.js +1 -0
  64. package/lib/dist/jira/index.js.map +1 -1
  65. package/lib/dist/jira/milestone-comment.d.ts +95 -0
  66. package/lib/dist/jira/milestone-comment.d.ts.map +1 -0
  67. package/lib/dist/jira/milestone-comment.js +271 -0
  68. package/lib/dist/jira/milestone-comment.js.map +1 -0
  69. package/lib/dist/jira/publish.d.ts +86 -2
  70. package/lib/dist/jira/publish.d.ts.map +1 -1
  71. package/lib/dist/jira/publish.js +0 -0
  72. package/lib/dist/jira/publish.js.map +1 -1
  73. package/lib/dist/jira/published-specs.d.ts +29 -0
  74. package/lib/dist/jira/published-specs.d.ts.map +1 -0
  75. package/lib/dist/jira/published-specs.js +147 -0
  76. package/lib/dist/jira/published-specs.js.map +1 -0
  77. package/lib/dist/jira/reconcile.d.ts +81 -0
  78. package/lib/dist/jira/reconcile.d.ts.map +1 -0
  79. package/lib/dist/jira/reconcile.js +111 -0
  80. package/lib/dist/jira/reconcile.js.map +1 -0
  81. package/lib/dist/jira/regression-pack.d.ts +547 -0
  82. package/lib/dist/jira/regression-pack.d.ts.map +1 -0
  83. package/lib/dist/jira/regression-pack.js +986 -0
  84. package/lib/dist/jira/regression-pack.js.map +1 -0
  85. package/lib/dist/jira/repo-config.d.ts +73 -0
  86. package/lib/dist/jira/repo-config.d.ts.map +1 -0
  87. package/lib/dist/jira/repo-config.js +249 -0
  88. package/lib/dist/jira/repo-config.js.map +1 -0
  89. package/lib/dist/jira/spec-amend.d.ts +46 -0
  90. package/lib/dist/jira/spec-amend.d.ts.map +1 -0
  91. package/lib/dist/jira/spec-amend.js +232 -0
  92. package/lib/dist/jira/spec-amend.js.map +1 -0
  93. package/lib/dist/jira/spec-writer.d.ts +22 -0
  94. package/lib/dist/jira/spec-writer.d.ts.map +1 -1
  95. package/lib/dist/jira/spec-writer.js +113 -0
  96. package/lib/dist/jira/spec-writer.js.map +1 -1
  97. package/lib/dist/jira/types.d.ts +62 -0
  98. package/lib/dist/jira/types.d.ts.map +1 -1
  99. package/lib/dist/jira/types.js +15 -1
  100. package/lib/dist/jira/types.js.map +1 -1
  101. package/lib/dist/mcp/jira-tools.d.ts +102 -0
  102. package/lib/dist/mcp/jira-tools.d.ts.map +1 -1
  103. package/lib/dist/mcp/jira-tools.js +826 -53
  104. package/lib/dist/mcp/jira-tools.js.map +1 -1
  105. package/lib/dist/mcp/server-instructions.d.ts +1 -1
  106. package/lib/dist/mcp/server-instructions.d.ts.map +1 -1
  107. package/lib/dist/mcp/server-instructions.js +4 -0
  108. package/lib/dist/mcp/server-instructions.js.map +1 -1
  109. package/lib/dist/mcp/spec-tools.d.ts.map +1 -1
  110. package/lib/dist/mcp/spec-tools.js +7 -1
  111. package/lib/dist/mcp/spec-tools.js.map +1 -1
  112. package/lib/dist/mcp/tools.d.ts +53 -0
  113. package/lib/dist/mcp/tools.d.ts.map +1 -1
  114. package/lib/dist/mcp/tools.js +255 -8
  115. package/lib/dist/mcp/tools.js.map +1 -1
  116. package/lib/dist/resolution/spec-link-resolver.d.ts +2 -0
  117. package/lib/dist/resolution/spec-link-resolver.d.ts.map +1 -1
  118. package/lib/dist/resolution/spec-link-resolver.js +11 -3
  119. package/lib/dist/resolution/spec-link-resolver.js.map +1 -1
  120. package/lib/node_modules/.package-lock.json +1 -1
  121. package/lib/package.json +1 -1
  122. package/package.json +1 -1
package/lib/dist/index.js CHANGED
@@ -273,8 +273,7 @@ class SpecShip {
273
273
  * neighbourhood.
274
274
  */
275
275
  getBehaviourSurface(specId) {
276
- const sq = this.specQueries;
277
- const req = sq.getSpecById(specId);
276
+ const req = this.specQueries.getSpecById(specId);
278
277
  if (!req) {
279
278
  return (0, behaviour_surface_1.computeBehaviourSurface)({
280
279
  requirementId: specId,
@@ -283,7 +282,24 @@ class SpecShip {
283
282
  neighbourNodes: [],
284
283
  });
285
284
  }
286
- // Resolved nodes the requirement + its acceptance children link to.
285
+ const linkedNodes = this.getLinkedNodesForReq(req.id);
286
+ const neighbourNodes = this.getNeighbourNodes(linkedNodes.map((n) => n.id));
287
+ return (0, behaviour_surface_1.computeBehaviourSurface)({
288
+ requirementId: req.id,
289
+ requirementExists: true,
290
+ linkedNodes,
291
+ neighbourNodes,
292
+ });
293
+ }
294
+ /**
295
+ * Resolved nodes a requirement (and its acceptance children) link to —
296
+ * shared seam between behaviour-surface and regression-pack tier derivation.
297
+ */
298
+ getLinkedNodesForReq(reqId) {
299
+ const sq = this.specQueries;
300
+ const req = sq.getSpecById(reqId);
301
+ if (!req)
302
+ return [];
287
303
  const linkIds = new Set();
288
304
  const collect = (id) => {
289
305
  for (const l of sq.getLinksBySpec(id)) {
@@ -296,26 +312,24 @@ class SpecShip {
296
312
  if (child.kind === 'acceptance')
297
313
  collect(child.id);
298
314
  }
299
- const linkedNodes = [];
315
+ const nodes = [];
300
316
  for (const id of linkIds) {
301
317
  const node = this.queries.getNodeById(id);
302
318
  if (node)
303
- linkedNodes.push(node);
319
+ nodes.push(node);
304
320
  }
305
- // 1-hop caller/callee neighbourhood of the linked nodes.
306
- const neighbourById = new Map();
307
- for (const node of linkedNodes) {
308
- for (const { node: n } of this.traverser.getCallers(node.id, 1))
309
- neighbourById.set(n.id, n);
310
- for (const { node: n } of this.traverser.getCallees(node.id, 1))
311
- neighbourById.set(n.id, n);
321
+ return nodes;
322
+ }
323
+ /** 1-hop caller/callee neighbourhood of the given node ids (deduped). */
324
+ getNeighbourNodes(nodeIds) {
325
+ const byId = new Map();
326
+ for (const id of nodeIds) {
327
+ for (const { node: n } of this.traverser.getCallers(id, 1))
328
+ byId.set(n.id, n);
329
+ for (const { node: n } of this.traverser.getCallees(id, 1))
330
+ byId.set(n.id, n);
312
331
  }
313
- return (0, behaviour_surface_1.computeBehaviourSurface)({
314
- requirementId: req.id,
315
- requirementExists: true,
316
- linkedNodes,
317
- neighbourNodes: [...neighbourById.values()],
318
- });
332
+ return [...byId.values()];
319
333
  }
320
334
  // ===========================================================================
321
335
  // Reflection engine (REFLECT-DOC)
@@ -1011,6 +1025,19 @@ class SpecShip {
1011
1025
  catch {
1012
1026
  /* a governance pass must never affect the sync */
1013
1027
  }
1028
+ // JIRA auto-publish (REQ-JIRATEAM-002). Gated on a repo-committed
1029
+ // binding: on an unbound repo this is a no-op and constructs no
1030
+ // client. Best-effort — a JIRA fault never fails the sync.
1031
+ try {
1032
+ const { autoPublishSpecsOnSync } = await Promise.resolve().then(() => __importStar(require('./jira/auto-publish')));
1033
+ result.jiraAutoPublish = await autoPublishSpecsOnSync({
1034
+ specQueries: this.specQueries,
1035
+ projectRoot: this.projectRoot,
1036
+ });
1037
+ }
1038
+ catch {
1039
+ /* a JIRA fault must never fail a sync */
1040
+ }
1014
1041
  this.refreshStatuslineCache();
1015
1042
  return result;
1016
1043
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  /**
2
- * SpecShip Installer (Claude Code only).
2
+ * SpecShip Installer.
3
3
  *
4
4
  * Writes the specship MCP server config + auto-allow permissions into
5
5
  * Claude Code at the chosen location (global / local). Uses
6
6
  * @clack/prompts for the interactive UI; `runInstallerWithOptions` is
7
7
  * the non-interactive entry called from the `--target` / `--yes` CLI
8
- * flags. (The `--target` flag is preserved for backwards compatibility
9
- * but only accepts `claude` / `auto` / `all` / `none`.)
8
+ * flags. `--target` SELECTS the agents to wire (`claude` — the default —
9
+ * and/or `gemini`, GEMINI-TARGET-DOC); the legacy `auto` / `all` / `none`
10
+ * spellings keep their old Claude-only meanings.
10
11
  */
11
12
  import type { AgentTarget, Location, TargetId } from './targets/types';
12
13
  import { type PurgeEnv } from './purge';
@@ -14,9 +15,12 @@ export { writeMcpConfig, writePermissions, hasMcpConfig, hasPermissions, } from
14
15
  export type { InstallLocation } from './config-writer';
15
16
  export interface RunInstallerOptions {
16
17
  /**
17
- * Vestigial — preserved for backwards compatibility with the
18
- * multi-agent CLI. Accepted values: `claude` (the only real target),
19
- * `auto` / `all` (synonymous), `none` (skip). Anything else throws.
18
+ * Which agent target(s) to wire (GEMINI-TARGET-DOC, REQ-GEMINI-002).
19
+ * Comma-separated registry ids — `claude`, `gemini`, or `claude,gemini`.
20
+ * The legacy values still mean exactly what they meant when this build was
21
+ * Claude-only: absent / `claude` / `auto` / `all` ⇒ Claude alone (so no
22
+ * existing invocation starts writing a Gemini config), `none` ⇒ skip.
23
+ * Anything else throws.
20
24
  */
21
25
  target?: string;
22
26
  /** Skip the location prompt; use this value directly. */
@@ -49,6 +53,16 @@ export interface RunInstallerOptions {
49
53
  */
50
54
  yes?: boolean;
51
55
  }
56
+ /**
57
+ * Resolve the `--target` value into the targets to install
58
+ * (REQ-GEMINI-002.A4). An empty result means "install nothing" (`none`).
59
+ *
60
+ * The legacy spellings are pinned to Claude on purpose: `all` reads like
61
+ * "every registered target" but has always meant the single Claude install,
62
+ * and quietly widening it would start writing a Gemini config for people who
63
+ * never asked. Gemini is reachable only by naming it.
64
+ */
65
+ export declare function resolveInstallTargets(target?: string): AgentTarget[];
52
66
  /**
53
67
  * Interactive entry — `specship install` with no args runs this.
54
68
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAA+C,KAAK,QAAQ,EAAsB,MAAM,SAAS,CAAC;AAazG,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAsBvD,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAElD;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqLtF;AA0CD,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qDAAqD;IACrD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,QAAQ,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,iDAAiD;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,QAAQ,EAAE,QAAQ,GACjB,eAAe,EAAE,CAwBnB;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB/E;AAuND;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,cAAc,gBAAgB,CAAC,EACtC,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3B,OAAO,CAAC,IAAI,CAAC,CAwDf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/installer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAA+C,KAAK,QAAQ,EAAsB,MAAM,SAAS,CAAC;AAazG,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAsBvD,MAAM,WAAW,mBAAmB;IAClC;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,CAmBpE;AAWD;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAElD;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiMtF;AA0CD,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qDAAqD;IACrD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,QAAQ,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,iDAAiD;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,QAAQ,EAAE,QAAQ,GACjB,eAAe,EAAE,CAwBnB;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB/E;AAkOD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,cAAc,gBAAgB,CAAC,EACtC,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3B,OAAO,CAAC,IAAI,CAAC,CAwDf"}
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  /**
3
- * SpecShip Installer (Claude Code only).
3
+ * SpecShip Installer.
4
4
  *
5
5
  * Writes the specship MCP server config + auto-allow permissions into
6
6
  * Claude Code at the chosen location (global / local). Uses
7
7
  * @clack/prompts for the interactive UI; `runInstallerWithOptions` is
8
8
  * the non-interactive entry called from the `--target` / `--yes` CLI
9
- * flags. (The `--target` flag is preserved for backwards compatibility
10
- * but only accepts `claude` / `auto` / `all` / `none`.)
9
+ * flags. `--target` SELECTS the agents to wire (`claude` — the default —
10
+ * and/or `gemini`, GEMINI-TARGET-DOC); the legacy `auto` / `all` / `none`
11
+ * spellings keep their old Claude-only meanings.
11
12
  */
12
13
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
13
14
  if (k2 === undefined) k2 = k;
@@ -44,6 +45,7 @@ var __importStar = (this && this.__importStar) || (function () {
44
45
  })();
45
46
  Object.defineProperty(exports, "__esModule", { value: true });
46
47
  exports.hasPermissions = exports.hasMcpConfig = exports.writePermissions = exports.writeMcpConfig = void 0;
48
+ exports.resolveInstallTargets = resolveInstallTargets;
47
49
  exports.runInstaller = runInstaller;
48
50
  exports.runInstallerWithOptions = runInstallerWithOptions;
49
51
  exports.uninstallTargets = uninstallTargets;
@@ -54,6 +56,7 @@ const os = __importStar(require("os"));
54
56
  const path = __importStar(require("path"));
55
57
  const fs = __importStar(require("fs"));
56
58
  const claude_1 = require("./targets/claude");
59
+ const registry_1 = require("./targets/registry");
57
60
  const updater_1 = require("../update/updater");
58
61
  const purge_1 = require("./purge");
59
62
  const glyphs_1 = require("../ui/glyphs");
@@ -89,6 +92,42 @@ function getVersion() {
89
92
  return '0.0.0';
90
93
  }
91
94
  }
95
+ /**
96
+ * Resolve the `--target` value into the targets to install
97
+ * (REQ-GEMINI-002.A4). An empty result means "install nothing" (`none`).
98
+ *
99
+ * The legacy spellings are pinned to Claude on purpose: `all` reads like
100
+ * "every registered target" but has always meant the single Claude install,
101
+ * and quietly widening it would start writing a Gemini config for people who
102
+ * never asked. Gemini is reachable only by naming it.
103
+ */
104
+ function resolveInstallTargets(target) {
105
+ if (target === 'none')
106
+ return [];
107
+ if (target === undefined || ['claude', 'auto', 'all'].includes(target)) {
108
+ return [claude_1.claudeTarget];
109
+ }
110
+ const ids = target.split(',').map((s) => s.trim()).filter(Boolean);
111
+ const resolved = ids.map((id) => {
112
+ const found = (0, registry_1.getTarget)(id);
113
+ if (!found) {
114
+ throw new Error(`Unknown --target value "${id}". Accepted values are ` +
115
+ `${(0, registry_1.listTargetIds)().map((t) => `'${t}'`).join(', ')}, ` +
116
+ `'auto'/'all' (= claude), or 'none'.`);
117
+ }
118
+ return found;
119
+ });
120
+ // De-dupe so `--target claude,claude` doesn't install twice.
121
+ return [...new Map(resolved.map((t) => [t.id, t])).values()];
122
+ }
123
+ /** Primary config path per target, for the location prompt's hint line. */
124
+ function describeFirstPaths(targets, loc) {
125
+ return targets
126
+ .map((t) => t.describePaths(loc)[0])
127
+ .filter((p) => typeof p === 'string')
128
+ .map(tildify)
129
+ .join(' + ');
130
+ }
92
131
  /**
93
132
  * Interactive entry — `specship install` with no args runs this.
94
133
  */
@@ -99,18 +138,16 @@ async function runInstallerWithOptions(opts) {
99
138
  const clack = await importESM('@clack/prompts');
100
139
  clack.intro(`SpecShip v${getVersion()}`);
101
140
  const useDefaults = opts.yes === true;
102
- // `--target=none` — explicit skip, matches the historical contract.
103
- if (opts.target === 'none') {
141
+ // Which agents to wire. `--target=none` is an explicit skip (historical
142
+ // contract); an unknown id throws.
143
+ const selectedTargets = resolveInstallTargets(opts.target);
144
+ if (selectedTargets.length === 0) {
104
145
  clack.outro('Skipped — no agent configured.');
105
146
  return;
106
147
  }
107
- // Any other value is accepted (claude / auto / all / undefined); we
108
- // only have one target to write.
109
- if (opts.target !== undefined
110
- && !['claude', 'auto', 'all'].includes(opts.target)) {
111
- throw new Error(`Unknown --target value "${opts.target}". This build is Claude-only; ` +
112
- `accepted values are 'claude' (default), 'auto', 'all', or 'none'.`);
113
- }
148
+ // Everything Claude-shaped below (permissions, status line) is skipped when
149
+ // Claude isn't selected — those prompts have no meaning for another agent.
150
+ const installClaude = selectedTargets.some((t) => t.id === 'claude');
114
151
  // Step 1 (INSTALL-SCOPE-DOC, REQ-SCOPE-001): `specship install` is
115
152
  // WIRING-ONLY — binary acquisition (npm i -g, or the offline bundle's
116
153
  // install.sh) is a separate, prior step, and by definition the binary
@@ -142,12 +179,18 @@ async function runInstallerWithOptions(opts) {
142
179
  location = 'local';
143
180
  }
144
181
  else {
182
+ const agents = selectedTargets.map((t) => t.displayName).join(' / ');
145
183
  const sel = await clack.select({
146
- message: 'Apply Claude Code config to just this project, or all of them?',
147
- options: [
148
- { value: 'local', label: 'Just this project (recommended)', hint: './.mcp.json + ./.claude/settings.json' },
149
- { value: 'global', label: 'All projects', hint: '~/.claude.json + ~/.claude/settings.json' },
150
- ],
184
+ message: `Apply ${agents} config to just this project, or all of them?`,
185
+ options: installClaude
186
+ ? [
187
+ { value: 'local', label: 'Just this project (recommended)', hint: './.mcp.json + ./.claude/settings.json' },
188
+ { value: 'global', label: 'All projects', hint: '~/.claude.json + ~/.claude/settings.json' },
189
+ ]
190
+ : [
191
+ { value: 'local', label: 'Just this project (recommended)', hint: describeFirstPaths(selectedTargets, 'local') },
192
+ { value: 'global', label: 'All projects', hint: describeFirstPaths(selectedTargets, 'global') },
193
+ ],
151
194
  initialValue: 'local',
152
195
  });
153
196
  if (clack.isCancel(sel)) {
@@ -161,6 +204,11 @@ async function runInstallerWithOptions(opts) {
161
204
  if (opts.autoAllow !== undefined) {
162
205
  autoAllow = opts.autoAllow;
163
206
  }
207
+ else if (!installClaude) {
208
+ // Permissions are a Claude surface — don't ask about them when the user
209
+ // only selected another agent.
210
+ autoAllow = false;
211
+ }
164
212
  else if (useDefaults) {
165
213
  autoAllow = true;
166
214
  }
@@ -183,7 +231,7 @@ async function runInstallerWithOptions(opts) {
183
231
  if (opts.statusLine !== undefined) {
184
232
  installStatusLine = opts.statusLine;
185
233
  }
186
- else if (!useDefaults) {
234
+ else if (!useDefaults && installClaude) {
187
235
  const state = (0, claude_1.statusLineState)(location);
188
236
  if (state === 'foreign') {
189
237
  clack.note((0, claude_1.getStatusLineSnippet)(), 'You already have a status line — add SpecShip to it');
@@ -203,23 +251,27 @@ async function runInstallerWithOptions(opts) {
203
251
  // Step 4: write Claude config. The governance tier is opt-in
204
252
  // (INSTALL-WEDGE-DOC): only an explicit `sdd: true` (from `--sdd`) installs it;
205
253
  // a default install provisions the retrieval tier alone.
206
- const result = claude_1.claudeTarget.install(location, {
207
- autoAllow,
208
- sdd: opts.sdd,
209
- withJira: opts.withJira,
210
- withDesigner: opts.withDesigner,
211
- installStatusLine,
212
- });
213
- for (const file of result.files) {
214
- const verb = file.action === 'unchanged'
215
- ? 'Unchanged'
216
- : file.action === 'created' ? 'Created'
217
- : file.action === 'removed' ? 'Removed'
218
- : 'Updated';
219
- clack.log.success(`Claude Code: ${verb} ${tildify(file.path)}`);
220
- }
221
- for (const note of result.notes ?? []) {
222
- clack.log.info(`Claude Code: ${note}`);
254
+ for (const target of selectedTargets) {
255
+ const result = target.install(location, {
256
+ autoAllow,
257
+ sdd: opts.sdd,
258
+ withJira: opts.withJira,
259
+ withDesigner: opts.withDesigner,
260
+ installStatusLine,
261
+ });
262
+ for (const file of result.files) {
263
+ const verb = file.action === 'unchanged'
264
+ ? 'Unchanged'
265
+ : file.action === 'created' ? 'Created'
266
+ : file.action === 'removed' ? 'Removed'
267
+ : 'Updated';
268
+ clack.log.success(`${target.displayName}: ${verb} ${tildify(file.path)}`);
269
+ }
270
+ // A target with unsupported surfaces says so here (REQ-GEMINI-006.A1) —
271
+ // the note is the only place the capability gap is stated at install time.
272
+ for (const note of result.notes ?? []) {
273
+ clack.log.info(`${target.displayName}: ${note}`);
274
+ }
223
275
  }
224
276
  // Step 4b: the gate graduation ramp's install ask (REQ-ENFORCE-004.A3).
225
277
  // A user choosing --sdd has opted into spec-driven rigor, so gating the
@@ -268,7 +320,7 @@ async function runInstallerWithOptions(opts) {
268
320
  withDesigner: opts.withDesigner,
269
321
  useDefaults,
270
322
  });
271
- clack.outro('Done! Restart Claude Code to use SpecShip.');
323
+ clack.outro(`Done! Restart ${selectedTargets.map((t) => t.displayName).join(' / ')} to use SpecShip.`);
272
324
  }
273
325
  /**
274
326
  * Build + run the post-install integration-setup plan (INSTALL-INTEG-SETUP-DOC).
@@ -343,22 +395,22 @@ async function runUninstaller(opts) {
343
395
  clack.outro('Skipped — nothing to uninstall.');
344
396
  return;
345
397
  }
346
- if (opts.target !== undefined
347
- && !['claude', 'auto', 'all'].includes(opts.target)) {
348
- throw new Error(`Unknown --target value "${opts.target}". This build is Claude-only; ` +
349
- `accepted values are 'claude' (default), 'auto', 'all', or 'none'.`);
350
- }
398
+ // Same resolution as install, so `--target gemini` sweeps the Gemini wiring
399
+ // instead of being rejected. A full purge ignores this and removes every
400
+ // registered target's wiring — "complete removal" means complete.
401
+ const selectedTargets = resolveInstallTargets(opts.target);
351
402
  if (opts.keepData) {
352
- await wiringOnlyUninstall(clack, opts);
403
+ await wiringOnlyUninstall(clack, opts, selectedTargets);
353
404
  return;
354
405
  }
355
406
  await purgeUninstall(clack, opts);
356
407
  }
357
408
  /**
358
- * REQ-UNINSTALL-003 — the original behavior: strip only the Claude Code wiring
359
- * at the chosen location, leaving the index, `~/.specship`, and the binary.
409
+ * REQ-UNINSTALL-003 — the original behavior: strip only the agent wiring
410
+ * (Claude Code unless `--target` says otherwise) at the chosen location,
411
+ * leaving the index, `~/.specship`, and the binary.
360
412
  */
361
- async function wiringOnlyUninstall(clack, opts) {
413
+ async function wiringOnlyUninstall(clack, opts, targets) {
362
414
  let location;
363
415
  if (opts.location) {
364
416
  location = opts.location;
@@ -381,26 +433,31 @@ async function wiringOnlyUninstall(clack, opts) {
381
433
  }
382
434
  location = sel;
383
435
  }
384
- const report = uninstallTargets([claude_1.claudeTarget], location)[0];
385
- if (report.status === 'removed') {
386
- for (const p of report.removedPaths)
387
- clack.log.success(`Claude Code: removed ${tildify(p)}`);
388
- }
389
- else if (report.status === 'not-configured') {
390
- clack.log.info(`Claude Code: not configured — nothing to remove`);
391
- }
392
- else {
393
- clack.log.info(`Claude Code: skipped — ${report.notes[0] ?? 'unsupported location'}`);
436
+ const reports = uninstallTargets(targets, location);
437
+ for (const report of reports) {
438
+ const name = report.displayName;
439
+ if (report.status === 'removed') {
440
+ for (const p of report.removedPaths)
441
+ clack.log.success(`${name}: removed ${tildify(p)}`);
442
+ }
443
+ else if (report.status === 'not-configured') {
444
+ clack.log.info(`${name}: not configured — nothing to remove`);
445
+ }
446
+ else {
447
+ clack.log.info(`${name}: skipped — ${report.notes[0] ?? 'unsupported location'}`);
448
+ }
394
449
  }
450
+ const removedAny = reports.some((r) => r.status === 'removed');
451
+ const agents = targets.map((t) => t.displayName).join(' / ');
395
452
  if (location === 'local' && fs.existsSync(path.join(process.cwd(), '.specship'))) {
396
453
  clack.log.info('The .specship/ index for this project is still here. Run `specship uninit` to delete it.');
397
454
  }
398
455
  clack.log.info('Kept your data and the specship binary (--keep-data). Run `specship uninstall` (no flag) for a complete removal.');
399
- if (report.status === 'removed') {
400
- clack.outro('Removed SpecShip from Claude Code. Restart it to apply.');
456
+ if (removedAny) {
457
+ clack.outro(`Removed SpecShip from ${agents}. Restart it to apply.`);
401
458
  }
402
459
  else {
403
- clack.outro(`SpecShip was not configured in Claude Code at the ${location} location — nothing to remove.`);
460
+ clack.outro(`SpecShip was not configured in ${agents} at the ${location} location — nothing to remove.`);
404
461
  }
405
462
  }
406
463
  /**
@@ -433,12 +490,15 @@ async function purgeUninstall(clack, opts) {
433
490
  return;
434
491
  }
435
492
  }
436
- // 1. Claude Code wiring at BOTH locations.
493
+ // 1. Every registered target's wiring at BOTH locations — a purge that left
494
+ // a Gemini MCP entry behind wouldn't be a complete removal.
437
495
  for (const location of ['global', 'local']) {
438
- const report = uninstallTargets([claude_1.claudeTarget], location)[0];
439
- if (report.status === 'removed') {
440
- for (const p of report.removedPaths)
441
- clack.log.success(`Claude Code (${location}): removed ${tildify(p)}`);
496
+ for (const report of uninstallTargets(registry_1.ALL_TARGETS, location)) {
497
+ if (report.status === 'removed') {
498
+ for (const p of report.removedPaths) {
499
+ clack.log.success(`${report.displayName} (${location}): removed ${tildify(p)}`);
500
+ }
501
+ }
442
502
  }
443
503
  }
444
504
  // 2. Index + user data + binary. Self-affecting removals run LAST inside