@memberjunction/cli 6.1.0-edge.3 → 6.1.0-edge.5

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 (210) hide show
  1. package/README.md +81 -0
  2. package/dist/commands/ai/actions/list.d.ts +2 -1
  3. package/dist/commands/ai/actions/list.d.ts.map +1 -1
  4. package/dist/commands/ai/actions/list.js +12 -3
  5. package/dist/commands/ai/actions/list.js.map +1 -1
  6. package/dist/commands/ai/actions/run.d.ts +7 -6
  7. package/dist/commands/ai/actions/run.d.ts.map +1 -1
  8. package/dist/commands/ai/actions/run.js +15 -16
  9. package/dist/commands/ai/actions/run.js.map +1 -1
  10. package/dist/commands/ai/agents/list.d.ts +2 -1
  11. package/dist/commands/ai/agents/list.d.ts.map +1 -1
  12. package/dist/commands/ai/agents/list.js +12 -3
  13. package/dist/commands/ai/agents/list.js.map +1 -1
  14. package/dist/commands/ai/agents/run.d.ts +7 -6
  15. package/dist/commands/ai/agents/run.d.ts.map +1 -1
  16. package/dist/commands/ai/agents/run.js +27 -5
  17. package/dist/commands/ai/agents/run.js.map +1 -1
  18. package/dist/commands/ai/audit/agent-run.d.ts +15 -14
  19. package/dist/commands/ai/audit/agent-run.d.ts.map +1 -1
  20. package/dist/commands/ai/audit/agent-run.js +18 -6
  21. package/dist/commands/ai/audit/agent-run.js.map +1 -1
  22. package/dist/commands/ai/prompts/run.d.ts +10 -9
  23. package/dist/commands/ai/prompts/run.d.ts.map +1 -1
  24. package/dist/commands/ai/prompts/run.js +12 -3
  25. package/dist/commands/ai/prompts/run.js.map +1 -1
  26. package/dist/commands/ai/usage.d.ts +7 -0
  27. package/dist/commands/ai/usage.d.ts.map +1 -0
  28. package/dist/commands/ai/usage.js +10 -0
  29. package/dist/commands/ai/usage.js.map +1 -0
  30. package/dist/commands/app/check-updates.d.ts.map +1 -1
  31. package/dist/commands/app/check-updates.js +55 -17
  32. package/dist/commands/app/check-updates.js.map +1 -1
  33. package/dist/commands/app/remove.d.ts.map +1 -1
  34. package/dist/commands/app/remove.js +12 -4
  35. package/dist/commands/app/remove.js.map +1 -1
  36. package/dist/commands/app/usage.d.ts +7 -0
  37. package/dist/commands/app/usage.d.ts.map +1 -0
  38. package/dist/commands/app/usage.js +10 -0
  39. package/dist/commands/app/usage.js.map +1 -0
  40. package/dist/commands/artifacts/usage.d.ts +7 -0
  41. package/dist/commands/artifacts/usage.d.ts.map +1 -0
  42. package/dist/commands/artifacts/usage.js +10 -0
  43. package/dist/commands/artifacts/usage.js.map +1 -0
  44. package/dist/commands/baseline/usage.d.ts +7 -0
  45. package/dist/commands/baseline/usage.d.ts.map +1 -0
  46. package/dist/commands/baseline/usage.js +10 -0
  47. package/dist/commands/baseline/usage.js.map +1 -0
  48. package/dist/commands/bump/usage.d.ts +7 -0
  49. package/dist/commands/bump/usage.d.ts.map +1 -0
  50. package/dist/commands/bump/usage.js +10 -0
  51. package/dist/commands/bump/usage.js.map +1 -0
  52. package/dist/commands/bundle/usage.d.ts +7 -0
  53. package/dist/commands/bundle/usage.d.ts.map +1 -0
  54. package/dist/commands/bundle/usage.js +10 -0
  55. package/dist/commands/bundle/usage.js.map +1 -0
  56. package/dist/commands/clean/usage.d.ts +7 -0
  57. package/dist/commands/clean/usage.d.ts.map +1 -0
  58. package/dist/commands/clean/usage.js +10 -0
  59. package/dist/commands/clean/usage.js.map +1 -0
  60. package/dist/commands/dbdoc/usage.d.ts +7 -0
  61. package/dist/commands/dbdoc/usage.d.ts.map +1 -0
  62. package/dist/commands/dbdoc/usage.js +10 -0
  63. package/dist/commands/dbdoc/usage.js.map +1 -0
  64. package/dist/commands/dev/workspace/index.d.ts.map +1 -1
  65. package/dist/commands/dev/workspace/index.js +7 -2
  66. package/dist/commands/dev/workspace/index.js.map +1 -1
  67. package/dist/commands/doctor/usage.d.ts +7 -0
  68. package/dist/commands/doctor/usage.d.ts.map +1 -0
  69. package/dist/commands/doctor/usage.js +10 -0
  70. package/dist/commands/doctor/usage.js.map +1 -0
  71. package/dist/commands/install/index.d.ts +20 -0
  72. package/dist/commands/install/index.d.ts.map +1 -1
  73. package/dist/commands/install/index.js +80 -10
  74. package/dist/commands/install/index.js.map +1 -1
  75. package/dist/commands/install/usage.d.ts +7 -0
  76. package/dist/commands/install/usage.d.ts.map +1 -0
  77. package/dist/commands/install/usage.js +10 -0
  78. package/dist/commands/install/usage.js.map +1 -0
  79. package/dist/commands/migrate/convert.d.ts +26 -0
  80. package/dist/commands/migrate/convert.d.ts.map +1 -1
  81. package/dist/commands/migrate/convert.js +115 -13
  82. package/dist/commands/migrate/convert.js.map +1 -1
  83. package/dist/commands/migrate/index.d.ts +9 -0
  84. package/dist/commands/migrate/index.d.ts.map +1 -1
  85. package/dist/commands/migrate/index.js +41 -1
  86. package/dist/commands/migrate/index.js.map +1 -1
  87. package/dist/commands/migrate/rebake.d.ts +1 -0
  88. package/dist/commands/migrate/rebake.d.ts.map +1 -1
  89. package/dist/commands/migrate/rebake.js +16 -6
  90. package/dist/commands/migrate/rebake.js.map +1 -1
  91. package/dist/commands/migrate/usage.d.ts +7 -0
  92. package/dist/commands/migrate/usage.d.ts.map +1 -0
  93. package/dist/commands/migrate/usage.js +10 -0
  94. package/dist/commands/migrate/usage.js.map +1 -0
  95. package/dist/commands/plugin/usage.d.ts +7 -0
  96. package/dist/commands/plugin/usage.d.ts.map +1 -0
  97. package/dist/commands/plugin/usage.js +10 -0
  98. package/dist/commands/plugin/usage.js.map +1 -0
  99. package/dist/commands/querygen/usage.d.ts +7 -0
  100. package/dist/commands/querygen/usage.d.ts.map +1 -0
  101. package/dist/commands/querygen/usage.js +10 -0
  102. package/dist/commands/querygen/usage.js.map +1 -0
  103. package/dist/commands/sql-audit/usage.d.ts +7 -0
  104. package/dist/commands/sql-audit/usage.d.ts.map +1 -0
  105. package/dist/commands/sql-audit/usage.js +10 -0
  106. package/dist/commands/sql-audit/usage.js.map +1 -0
  107. package/dist/commands/sql-convert/usage.d.ts +7 -0
  108. package/dist/commands/sql-convert/usage.d.ts.map +1 -0
  109. package/dist/commands/sql-convert/usage.js +10 -0
  110. package/dist/commands/sql-convert/usage.js.map +1 -0
  111. package/dist/commands/standards/usage.d.ts +7 -0
  112. package/dist/commands/standards/usage.d.ts.map +1 -0
  113. package/dist/commands/standards/usage.js +10 -0
  114. package/dist/commands/standards/usage.js.map +1 -0
  115. package/dist/commands/sync/file-reset.d.ts +6 -6
  116. package/dist/commands/sync/file-reset.d.ts.map +1 -1
  117. package/dist/commands/sync/file-reset.js +151 -127
  118. package/dist/commands/sync/file-reset.js.map +1 -1
  119. package/dist/commands/sync/init.d.ts +10 -1
  120. package/dist/commands/sync/init.d.ts.map +1 -1
  121. package/dist/commands/sync/init.js +127 -78
  122. package/dist/commands/sync/init.js.map +1 -1
  123. package/dist/commands/test/compare.d.ts +11 -11
  124. package/dist/commands/test/compare.d.ts.map +1 -1
  125. package/dist/commands/test/compare.js +8 -7
  126. package/dist/commands/test/compare.js.map +1 -1
  127. package/dist/commands/test/history.d.ts +7 -7
  128. package/dist/commands/test/history.d.ts.map +1 -1
  129. package/dist/commands/test/history.js +8 -7
  130. package/dist/commands/test/history.js.map +1 -1
  131. package/dist/commands/test/list.d.ts +8 -8
  132. package/dist/commands/test/list.d.ts.map +1 -1
  133. package/dist/commands/test/list.js +8 -7
  134. package/dist/commands/test/list.js.map +1 -1
  135. package/dist/commands/test/regression/compare.d.ts.map +1 -1
  136. package/dist/commands/test/regression/compare.js +5 -7
  137. package/dist/commands/test/regression/compare.js.map +1 -1
  138. package/dist/commands/test/run.d.ts +9 -9
  139. package/dist/commands/test/run.d.ts.map +1 -1
  140. package/dist/commands/test/run.js +8 -7
  141. package/dist/commands/test/run.js.map +1 -1
  142. package/dist/commands/test/suite.d.ts +11 -11
  143. package/dist/commands/test/suite.d.ts.map +1 -1
  144. package/dist/commands/test/suite.js +8 -7
  145. package/dist/commands/test/suite.js.map +1 -1
  146. package/dist/commands/test/usage.d.ts +7 -0
  147. package/dist/commands/test/usage.d.ts.map +1 -0
  148. package/dist/commands/test/usage.js +10 -0
  149. package/dist/commands/test/usage.js.map +1 -0
  150. package/dist/commands/test/validate.d.ts +7 -7
  151. package/dist/commands/test/validate.d.ts.map +1 -1
  152. package/dist/commands/test/validate.js +8 -7
  153. package/dist/commands/test/validate.js.map +1 -1
  154. package/dist/commands/translate-sql/usage.d.ts +7 -0
  155. package/dist/commands/translate-sql/usage.d.ts.map +1 -0
  156. package/dist/commands/translate-sql/usage.js +10 -0
  157. package/dist/commands/translate-sql/usage.js.map +1 -0
  158. package/dist/commands/update/usage.d.ts +7 -0
  159. package/dist/commands/update/usage.d.ts.map +1 -0
  160. package/dist/commands/update/usage.js +10 -0
  161. package/dist/commands/update/usage.js.map +1 -0
  162. package/dist/commands/usage.d.ts.map +1 -1
  163. package/dist/commands/usage.js +9 -4
  164. package/dist/commands/usage.js.map +1 -1
  165. package/dist/hooks/prerun.d.ts.map +1 -1
  166. package/dist/hooks/prerun.js +63 -30
  167. package/dist/hooks/prerun.js.map +1 -1
  168. package/dist/lib/cli-plugins.d.ts +8 -1
  169. package/dist/lib/cli-plugins.d.ts.map +1 -1
  170. package/dist/lib/cli-plugins.js +17 -1
  171. package/dist/lib/cli-plugins.js.map +1 -1
  172. package/dist/lib/derived-usage.d.ts +68 -0
  173. package/dist/lib/derived-usage.d.ts.map +1 -0
  174. package/dist/lib/derived-usage.js +121 -0
  175. package/dist/lib/derived-usage.js.map +1 -0
  176. package/dist/lib/domain-profiles.d.ts +42 -0
  177. package/dist/lib/domain-profiles.d.ts.map +1 -0
  178. package/dist/lib/domain-profiles.js +118 -0
  179. package/dist/lib/domain-profiles.js.map +1 -0
  180. package/dist/lib/domain-usage-command.d.ts.map +1 -1
  181. package/dist/lib/domain-usage-command.js +9 -4
  182. package/dist/lib/domain-usage-command.js.map +1 -1
  183. package/dist/lib/format-compat.d.ts +68 -0
  184. package/dist/lib/format-compat.d.ts.map +1 -0
  185. package/dist/lib/format-compat.js +111 -0
  186. package/dist/lib/format-compat.js.map +1 -0
  187. package/dist/lib/interactive-guard.d.ts +56 -0
  188. package/dist/lib/interactive-guard.d.ts.map +1 -0
  189. package/dist/lib/interactive-guard.js +60 -0
  190. package/dist/lib/interactive-guard.js.map +1 -0
  191. package/dist/lib/legacy-install.d.ts.map +1 -1
  192. package/dist/lib/legacy-install.js +4 -0
  193. package/dist/lib/legacy-install.js.map +1 -1
  194. package/dist/lib/usage-render.d.ts +2 -2
  195. package/dist/lib/usage-render.d.ts.map +1 -1
  196. package/dist/lib/usage-render.js +2 -1
  197. package/dist/lib/usage-render.js.map +1 -1
  198. package/dist/light-commands.d.ts.map +1 -1
  199. package/dist/light-commands.js +43 -0
  200. package/dist/light-commands.js.map +1 -1
  201. package/dist/utils/open-app-context.d.ts +24 -0
  202. package/dist/utils/open-app-context.d.ts.map +1 -1
  203. package/dist/utils/open-app-context.js +21 -6
  204. package/dist/utils/open-app-context.js.map +1 -1
  205. package/dist/utils/update-check.d.ts +86 -0
  206. package/dist/utils/update-check.d.ts.map +1 -0
  207. package/dist/utils/update-check.js +98 -0
  208. package/dist/utils/update-check.js.map +1 -0
  209. package/oclif.manifest.json +4099 -3239
  210. package/package.json +21 -21
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Applied to any domain not listed below. `variable` is the honest answer for an
3
+ * undocumented command — it tells an agent "I don't know, don't set a tight timeout"
4
+ * rather than implying a fast run.
5
+ */
6
+ export const DEFAULT_DOMAIN_PROFILE = {
7
+ summary: 'See `mj <domain> usage` for this domain’s commands.',
8
+ runtime: { class: 'variable', note: 'no runtime profile declared for this domain' },
9
+ };
10
+ /**
11
+ * Per-domain profiles.
12
+ *
13
+ * Domains whose commands ship as `BaseCLIPlugin` plugins (`sync`, `codegen`) still
14
+ * appear here: a plugin declares usage per COMMAND, and the tier-1 map needs a line
15
+ * for the DOMAIN. Without one, a multi-command domain renders as one command's
16
+ * summary plus "(+7 more commands)", which tells an agent nothing about what the
17
+ * domain is for. The per-command metadata those plugins declare is untouched —
18
+ * `RegisterUsage` is first-wins and reads plugin metadata first.
19
+ */
20
+ export const DOMAIN_PROFILES = {
21
+ codegen: {
22
+ summary: 'Regenerate entities, SQL, and Angular forms from the database schema.',
23
+ runtime: { class: 'slow', typicalSeconds: 120, note: 'scales with entity count; a full run ≫ a single-entity change' },
24
+ },
25
+ sync: {
26
+ summary: 'Move metadata between local files and the database — push, pull, validate, watch.',
27
+ runtime: { class: 'variable', note: 'a status check is instant; a full push scales with record count' },
28
+ },
29
+ dev: {
30
+ summary: 'Local development tooling, including the cross-repo pnpm workspace generator.',
31
+ runtime: { class: 'variable', note: 'generation is fast; a workspace install is not' },
32
+ },
33
+ ai: {
34
+ summary: 'Run and inspect AI agents, prompts, and actions from the terminal.',
35
+ runtime: { class: 'variable', note: 'a listing is instant; an agent run is bounded only by the agent itself' },
36
+ },
37
+ app: {
38
+ summary: 'Install, upgrade, enable, and remove Open Apps.',
39
+ runtime: { class: 'slow', typicalSeconds: 180, note: 'installs run migrations and package installs' },
40
+ },
41
+ artifacts: {
42
+ summary: 'Maintenance operations over stored conversation artifacts.',
43
+ runtime: { class: 'moderate', typicalSeconds: 30, note: 'scales with artifact count' },
44
+ },
45
+ baseline: {
46
+ summary: 'Build and compare database baselines for clean-room verification.',
47
+ runtime: { class: 'slow', typicalSeconds: 120, note: 'full schema introspection; scales with table count' },
48
+ },
49
+ bump: {
50
+ summary: 'Bump the version across workspace package.json files.',
51
+ runtime: { class: 'fast' },
52
+ },
53
+ bundle: {
54
+ summary: 'Bundle interactive component source for distribution.',
55
+ runtime: { class: 'moderate', typicalSeconds: 20 },
56
+ },
57
+ clean: {
58
+ summary: 'Remove build artifacts and generated output.',
59
+ runtime: { class: 'fast' },
60
+ },
61
+ dbdoc: {
62
+ summary: 'Generate and export AI-authored database documentation.',
63
+ runtime: { class: 'slow', typicalSeconds: 300, note: 'LLM-driven; scales with table and column count' },
64
+ },
65
+ doctor: {
66
+ summary: 'Diagnose the local MJ environment and report what is misconfigured.',
67
+ runtime: { class: 'moderate', typicalSeconds: 15 },
68
+ },
69
+ install: {
70
+ summary: 'Install MemberJunction, or seed the Claude Code pack into a repo.',
71
+ runtime: { class: 'slow', typicalSeconds: 300, note: 'downloads a release, installs packages, runs migrations' },
72
+ },
73
+ migrate: {
74
+ summary: 'Create, run, and convert Flyway migrations.',
75
+ runtime: { class: 'slow', typicalSeconds: 90, note: 'scales with the number of pending migrations' },
76
+ },
77
+ plugin: {
78
+ summary: 'Register third-party CLI plugins in mj-cli-plugins.json.',
79
+ runtime: { class: 'fast' },
80
+ },
81
+ querygen: {
82
+ summary: 'Generate, validate, and export stored queries.',
83
+ runtime: { class: 'slow', typicalSeconds: 120, note: 'LLM-driven generation; validation alone is fast' },
84
+ },
85
+ 'sql-audit': {
86
+ summary: 'Audit SQL objects for drift against the metadata.',
87
+ runtime: { class: 'moderate', typicalSeconds: 45, note: 'scales with object count' },
88
+ },
89
+ 'sql-convert': {
90
+ summary: 'Convert T-SQL to PostgreSQL via the SQLConverter toolchain.',
91
+ runtime: { class: 'moderate', typicalSeconds: 30 },
92
+ },
93
+ standards: {
94
+ summary: 'List, adopt, and check the repo’s adopted MJ standards.',
95
+ runtime: { class: 'moderate', typicalSeconds: 20, note: 'a check scans changed files; --all scans the repo' },
96
+ },
97
+ test: {
98
+ summary: 'Run, list, compare, and validate MJ test suites.',
99
+ runtime: { class: 'variable', note: 'a single test is seconds; a full suite can run for many minutes' },
100
+ },
101
+ 'translate-sql': {
102
+ summary: 'Translate SQL between dialects.',
103
+ runtime: { class: 'moderate', typicalSeconds: 15 },
104
+ },
105
+ update: {
106
+ summary: 'Update installed MJ tooling, including the Claude Code pack.',
107
+ runtime: { class: 'moderate', typicalSeconds: 30, note: 'fetches from GitHub unless --from is given' },
108
+ },
109
+ usage: {
110
+ summary: 'This progressive-disclosure surface: domains, then per-domain detail.',
111
+ runtime: { class: 'fast' },
112
+ },
113
+ };
114
+ /** The profile for a domain, falling back to {@link DEFAULT_DOMAIN_PROFILE}. */
115
+ export function getDomainProfile(domain) {
116
+ return DOMAIN_PROFILES[domain] ?? DEFAULT_DOMAIN_PROFILE;
117
+ }
118
+ //# sourceMappingURL=domain-profiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-profiles.js","sourceRoot":"","sources":["../../src/lib/domain-profiles.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"domain-usage-command.d.ts","sourceRoot":"","sources":["../../src/lib/domain-usage-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAK7C;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,OAAO;IACtD,MAAM,CAAC,KAAK;;MAEV;IAEF,kEAAkE;IAClE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAE5B,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAO3B"}
1
+ {"version":3,"file":"domain-usage-command.d.ts","sourceRoot":"","sources":["../../src/lib/domain-usage-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAM7C;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,OAAO;IACtD,MAAM,CAAC,KAAK;;MAMV;IAEF,kEAAkE;IAClE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAE5B,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ3B"}
@@ -1,5 +1,5 @@
1
1
  import { Command, Flags } from '@oclif/core';
2
- import { CLIPluginRegistry } from '@memberjunction/cli-core';
2
+ import { CLIPluginRegistry, ResolveOutputFormat } from '@memberjunction/cli-core';
3
3
  import { loadAllCliPlugins } from './cli-plugins.js';
4
4
  import { emitUsage, renderDomainDetail } from './usage-render.js';
5
5
  /**
@@ -10,14 +10,19 @@ import { emitUsage, renderDomainDetail } from './usage-render.js';
10
10
  */
11
11
  export class DomainUsageCommand extends Command {
12
12
  static { this.flags = {
13
- format: Flags.string({ options: ['text', 'json', 'md'], default: 'text', description: 'Output format' }),
13
+ // No default: the absence of a value is what lets a piped stdout select json.
14
+ format: Flags.string({
15
+ options: ['text', 'json', 'md'],
16
+ description: 'Output format. Defaults to text on a terminal and json when stdout is piped.',
17
+ }),
14
18
  }; }
15
19
  async run() {
16
20
  const { flags } = await this.parse(this.constructor);
17
- await loadAllCliPlugins(process.cwd());
21
+ await loadAllCliPlugins(process.cwd(), this.config.commands);
18
22
  const detail = CLIPluginRegistry.BuildDomainDetail(this.Domain);
19
23
  const result = CLIPluginRegistry.AsResult(`${this.Domain}:usage`, { domain: detail.domain, commands: detail.commands });
20
- emitUsage((m) => this.log(m), flags.format, result, renderDomainDetail(detail));
24
+ const { format } = ResolveOutputFormat({ formatFlag: flags.format });
25
+ emitUsage((m) => this.log(m), format, result, renderDomainDetail(detail));
21
26
  }
22
27
  }
23
28
  //# sourceMappingURL=domain-usage-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"domain-usage-command.js","sourceRoot":"","sources":["../../src/lib/domain-usage-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAElE;;;;;GAKG;AACH,MAAM,OAAgB,kBAAmB,SAAQ,OAAO;aAC/C,UAAK,GAAG;QACb,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;KACzG,CAAC;IAKF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAwC,CAAC,CAAC;QAClF,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxH,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,MAAgB,EAAE,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5F,CAAC"}
1
+ {"version":3,"file":"domain-usage-command.js","sourceRoot":"","sources":["../../src/lib/domain-usage-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGlE;;;;;GAKG;AACH,MAAM,OAAgB,kBAAmB,SAAQ,OAAO;aAC/C,UAAK,GAAG;QACb,8EAA8E;QAC9E,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;YAC/B,WAAW,EAAE,8EAA8E;SAC5F,CAAC;KACH,CAAC;IAKF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAwC,CAAC,CAAC;QAClF,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,QAA0C,CAAC,CAAC;QAC/F,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxH,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5E,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { type OutputFormat } from '@memberjunction/cli-core';
2
+ export declare const CANONICAL_FORMAT_FLAG: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
3
+ /**
4
+ * The same flag for `mj test *`, which has always spelled its format flag
5
+ * `--format` **with a `-f` shorthand**.
6
+ *
7
+ * Widening the accepted *values* must not narrow the accepted *spellings*: dropping
8
+ * `char` would silently break every script that runs `mj test run -f json` — exactly
9
+ * the class of unannounced breakage this compatibility layer exists to prevent. `-f`
10
+ * is unclaimed across all six `mj test` commands, so restoring it collides with nothing.
11
+ *
12
+ * The `mj ai` family deliberately does NOT get this: `--format` is brand new there
13
+ * (its historical flag is `--output`/`-o`), so there is no `-f` to preserve, and
14
+ * `mj ai audit agent-run` already binds `-f` to `--file` — an output FILE path, so
15
+ * pointing it at a format would repeat the exact `-o` ambiguity described above.
16
+ */
17
+ export declare const TEST_FORMAT_FLAG: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
18
+ /** Inputs to {@link resolveLegacyFormat}. */
19
+ export interface LegacyFormatInput<TLegacy extends string> {
20
+ /** The canonical `--format` value, if the caller passed one. */
21
+ format?: string;
22
+ /** The family's own flag value as oclif parsed it (its default included). */
23
+ legacy: TLegacy;
24
+ /** What that flag falls back to when nothing was specified. */
25
+ legacyDefault: TLegacy;
26
+ /**
27
+ * Whether the caller actually typed the family's flag. Pass
28
+ * `metadata.flags.<name>?.setFromDefault === false` from the command's `parse()`.
29
+ *
30
+ * When omitted this falls back to comparing the value against the default, which
31
+ * cannot distinguish `-o compact` (the caller asking for compact) from no flag at
32
+ * all — so a piped `mj ai agents list -o compact` would silently return json,
33
+ * overriding an explicit request. Always pass it from a real command.
34
+ */
35
+ legacyWasExplicit?: boolean;
36
+ /** How each canonical format maps onto this family's vocabulary. */
37
+ map: Record<OutputFormat, TLegacy>;
38
+ /** Defaults to `process.stdout.isTTY`. Injectable for tests. */
39
+ stdoutIsTTY?: boolean;
40
+ /** Defaults to `process.env`. Injectable for tests. */
41
+ env?: NodeJS.ProcessEnv;
42
+ }
43
+ /**
44
+ * Resolves which value of a family's own output flag to use, honoring — in order:
45
+ *
46
+ * 1. an explicit canonical `--format`,
47
+ * 2. an explicit legacy value (anything other than the family default),
48
+ * 3. `MJ_CLI_FORMAT`,
49
+ * 4. a piped stdout → the family's json value,
50
+ * 5. the family default.
51
+ *
52
+ * Rule 2 is what makes this backwards compatible: an existing script passing
53
+ * `--format=markdown` or `-o table` keeps getting exactly what it always got.
54
+ * Rule 4 only fires when the caller expressed no preference at all, so it can
55
+ * never override an intentional choice — which is precisely why rule 2 needs
56
+ * {@link LegacyFormatInput.legacyWasExplicit} rather than a value comparison.
57
+ */
58
+ export declare function resolveLegacyFormat<TLegacy extends string>(input: LegacyFormatInput<TLegacy>): TLegacy;
59
+ /** Canonical → `mj test *` vocabulary. */
60
+ export declare const TEST_FORMAT_MAP: Record<OutputFormat, 'console' | 'json' | 'markdown'>;
61
+ /**
62
+ * Canonical → `mj ai *` vocabulary.
63
+ *
64
+ * `md` maps to `json` because most `mj ai` commands have no Markdown renderer;
65
+ * the ones that do (`mj ai audit agent-run`) pass their own map with `markdown`.
66
+ */
67
+ export declare const AI_FORMAT_MAP: Record<OutputFormat, 'compact' | 'json' | 'table'>;
68
+ //# sourceMappingURL=format-compat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-compat.d.ts","sourceRoot":"","sources":["../../src/lib/format-compat.ts"],"names":[],"mappings":"AAsBA,OAAO,EAA6C,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAoBxG,eAAO,MAAM,qBAAqB,6GAGhC,CAAC;AAEH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gBAAgB,6GAI3B,CAAC;AAEH,6CAA6C;AAC7C,MAAM,WAAW,iBAAiB,CAAC,OAAO,SAAS,MAAM;IACvD,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,MAAM,EAAE,OAAO,CAAC;IAChB,+DAA+D;IAC/D,aAAa,EAAE,OAAO,CAAC;IACvB;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,oEAAoE;IACpE,GAAG,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACnC,gEAAgE;IAChE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,SAAS,MAAM,EAAE,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,OAAO,CAiBtG;AAED,0CAA0C;AAC1C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,UAAU,CAIjF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,CAI5E,CAAC"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Bridges the per-family output flags to the one canonical `--format` contract.
3
+ *
4
+ * Three command families grew their own spelling of the same idea:
5
+ *
6
+ * | family | flag | values |
7
+ * |------------------|---------------------|-----------------------------|
8
+ * | plugin commands | `--format` | `text` \| `json` \| `md` |
9
+ * | `mj test *` | `--format` | `console` \| `json` \| `markdown` |
10
+ * | `mj ai *` | `--output` / `-o` | `compact` \| `json` \| `table` |
11
+ *
12
+ * An agent that learned one spelling got a parse error — or worse, in the `mj ai`
13
+ * case, silence — from the next. Worse still, `-o` means *output format* under
14
+ * `mj ai` but *output file path* under `mj test`, `querygen export`, and
15
+ * `sql-audit`, so `-o json` writes a file called `json` in half the CLI.
16
+ *
17
+ * {@link resolveLegacyFormat} keeps every existing value working while making all
18
+ * three families accept the canonical spellings and honor the same TTY-detection
19
+ * default. {@link CANONICAL_FORMAT_FLAG} is the shared flag definition to add
20
+ * alongside a family's own.
21
+ */
22
+ import { Flags } from '@oclif/core';
23
+ import { NormalizeFormatAlias, ResolveOutputFormat } from '@memberjunction/cli-core';
24
+ /**
25
+ * The canonical `--format` flag for commands that are not yet `BaseCLIPlugin`
26
+ * subclasses (which inherit it from `baseFlags`).
27
+ *
28
+ * Deliberately has **no `default`**: the absence of a value is the signal that
29
+ * lets {@link resolveLegacyFormat} fall through to the family default or to
30
+ * TTY detection. A default here would make every run look explicit.
31
+ *
32
+ * Note `char` is omitted — `-f` and `-o` already mean other things in these
33
+ * families, and quietly rebinding a short flag is how the `-o` collision started.
34
+ */
35
+ const FORMAT_VALUES = ['text', 'json', 'md', 'human', 'console', 'markdown', 'compact', 'table'];
36
+ const FORMAT_DESCRIPTION = 'Output format: text (human), json (machine-readable), md (Markdown). ' +
37
+ 'Defaults to human output on a terminal and json when stdout is piped. ' +
38
+ 'Legacy spellings (console/markdown/compact/table) are accepted.';
39
+ export const CANONICAL_FORMAT_FLAG = Flags.string({
40
+ options: FORMAT_VALUES,
41
+ description: FORMAT_DESCRIPTION,
42
+ });
43
+ /**
44
+ * The same flag for `mj test *`, which has always spelled its format flag
45
+ * `--format` **with a `-f` shorthand**.
46
+ *
47
+ * Widening the accepted *values* must not narrow the accepted *spellings*: dropping
48
+ * `char` would silently break every script that runs `mj test run -f json` — exactly
49
+ * the class of unannounced breakage this compatibility layer exists to prevent. `-f`
50
+ * is unclaimed across all six `mj test` commands, so restoring it collides with nothing.
51
+ *
52
+ * The `mj ai` family deliberately does NOT get this: `--format` is brand new there
53
+ * (its historical flag is `--output`/`-o`), so there is no `-f` to preserve, and
54
+ * `mj ai audit agent-run` already binds `-f` to `--file` — an output FILE path, so
55
+ * pointing it at a format would repeat the exact `-o` ambiguity described above.
56
+ */
57
+ export const TEST_FORMAT_FLAG = Flags.string({
58
+ char: 'f',
59
+ options: FORMAT_VALUES,
60
+ description: FORMAT_DESCRIPTION,
61
+ });
62
+ /**
63
+ * Resolves which value of a family's own output flag to use, honoring — in order:
64
+ *
65
+ * 1. an explicit canonical `--format`,
66
+ * 2. an explicit legacy value (anything other than the family default),
67
+ * 3. `MJ_CLI_FORMAT`,
68
+ * 4. a piped stdout → the family's json value,
69
+ * 5. the family default.
70
+ *
71
+ * Rule 2 is what makes this backwards compatible: an existing script passing
72
+ * `--format=markdown` or `-o table` keeps getting exactly what it always got.
73
+ * Rule 4 only fires when the caller expressed no preference at all, so it can
74
+ * never override an intentional choice — which is precisely why rule 2 needs
75
+ * {@link LegacyFormatInput.legacyWasExplicit} rather than a value comparison.
76
+ */
77
+ export function resolveLegacyFormat(input) {
78
+ const explicitCanonical = NormalizeFormatAlias(input.format);
79
+ if (explicitCanonical)
80
+ return input.map[explicitCanonical];
81
+ // The caller typed the family's own flag — an explicit choice that outranks any
82
+ // inference we could make, even when the value they typed IS the default.
83
+ const legacyWasExplicit = input.legacyWasExplicit ?? input.legacy !== input.legacyDefault;
84
+ if (legacyWasExplicit)
85
+ return input.legacy;
86
+ const { format, reason } = ResolveOutputFormat({
87
+ stdoutIsTTY: input.stdoutIsTTY,
88
+ env: input.env,
89
+ });
90
+ // 'tty-default' means nothing at all asked for a format — keep the family's own
91
+ // default rather than flattening every human rendering to a generic 'text'.
92
+ return reason === 'tty-default' ? input.legacyDefault : input.map[format];
93
+ }
94
+ /** Canonical → `mj test *` vocabulary. */
95
+ export const TEST_FORMAT_MAP = {
96
+ text: 'console',
97
+ json: 'json',
98
+ md: 'markdown',
99
+ };
100
+ /**
101
+ * Canonical → `mj ai *` vocabulary.
102
+ *
103
+ * `md` maps to `json` because most `mj ai` commands have no Markdown renderer;
104
+ * the ones that do (`mj ai audit agent-run`) pass their own map with `markdown`.
105
+ */
106
+ export const AI_FORMAT_MAP = {
107
+ text: 'compact',
108
+ json: 'json',
109
+ md: 'json',
110
+ };
111
+ //# sourceMappingURL=format-compat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-compat.js","sourceRoot":"","sources":["../../src/lib/format-compat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAqB,MAAM,0BAA0B,CAAC;AAExG;;;;;;;;;;GAUG;AACH,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAEjG,MAAM,kBAAkB,GACtB,uEAAuE;IACvE,wEAAwE;IACxE,iEAAiE,CAAC;AAEpE,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAAC;IAChD,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,kBAAkB;CAChC,CAAC,CAAC;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,kBAAkB;CAChC,CAAC,CAAC;AA4BH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,mBAAmB,CAAyB,KAAiC;IAC3F,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,iBAAiB;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAE3D,gFAAgF;IAChF,0EAA0E;IAC1E,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,aAAa,CAAC;IAC1F,IAAI,iBAAiB;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IAE3C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC;QAC7C,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,EAAE,KAAK,CAAC,GAAG;KACf,CAAC,CAAC;IAEH,gFAAgF;IAChF,4EAA4E;IAC5E,OAAO,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC5E,CAAC;AAED,0CAA0C;AAC1C,MAAM,CAAC,MAAM,eAAe,GAA0D;IACpF,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,UAAU;CACf,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAuD;IAC/E,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,MAAM;CACX,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * MJCLI-side helpers for the agent-first interactivity contract (see
3
+ * `@memberjunction/cli-core`'s `interaction.ts` for the model).
4
+ *
5
+ * These exist because most `mj` commands are still plain oclif `Command`s rather
6
+ * than `BaseCLIPlugin` subclasses, so they don't inherit `--interactive` or the
7
+ * structured `NonInteractiveError` handling. They read the same env signal the prerun
8
+ * hook sets from that flag, which keeps a migrated plugin and an unmigrated command
9
+ * behaving identically at the prompt — and both of them detecting a terminal the same
10
+ * way when no flag is given.
11
+ */
12
+ import { NonInteractiveError, RequireInteractive, ResolveOrPrompt, type InteractivityInput } from '@memberjunction/cli-core';
13
+ export { NonInteractiveError };
14
+ /**
15
+ * Whether this run may prompt: true at a real terminal, false when piped, spawned, or
16
+ * running in CI. Reads the env var the prerun hook sets from the global `--interactive`
17
+ * / `--no-interactive` flags, then falls back to detecting the terminal.
18
+ */
19
+ export declare function isInteractiveRun(overrides?: InteractivityInput): boolean;
20
+ /**
21
+ * Asks for one value, or fails fast naming the flag that supplies it.
22
+ *
23
+ * Thin re-export of cli-core's `ResolveOrPrompt` so unmigrated commands import from
24
+ * one place and pick up the env-based interactivity default automatically.
25
+ */
26
+ export declare const resolveOrPrompt: typeof ResolveOrPrompt;
27
+ /** Guards a command that is interactive by nature and has no flag equivalent. */
28
+ export declare const requireInteractive: typeof RequireInteractive;
29
+ /**
30
+ * Renders a {@link NonInteractiveError} through oclif's error path for commands that
31
+ * aren't `BaseCLIPlugin` subclasses (which get the structured envelope instead).
32
+ *
33
+ * Sets exit code 1 and prints the suggestion, so an agent reading stderr still gets
34
+ * the flag to pass — the important half of the contract — even before the command is
35
+ * migrated.
36
+ *
37
+ * Re-throws anything that isn't a `NonInteractiveError` untouched.
38
+ */
39
+ export declare function failOnNonInteractive(command: {
40
+ error: (message: string | Error, options?: {
41
+ exit?: number;
42
+ suggestions?: string[];
43
+ }) => never;
44
+ }, error: unknown): never;
45
+ /**
46
+ * Wraps a command body so any {@link NonInteractiveError} raised anywhere inside it
47
+ * — including deep in a service callback — surfaces as a clean, actionable failure
48
+ * instead of an unhandled rejection.
49
+ */
50
+ export declare function withNonInteractiveHandling<T>(command: {
51
+ error: (message: string | Error, options?: {
52
+ exit?: number;
53
+ suggestions?: string[];
54
+ }) => never;
55
+ }, body: () => Promise<T>): Promise<T>;
56
+ //# sourceMappingURL=interactive-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-guard.d.ts","sourceRoot":"","sources":["../../src/lib/interactive-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAElB,eAAe,EACf,KAAK,kBAAkB,EACxB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAE/B;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,kBAAuB,GAAG,OAAO,CAE5E;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,wBAAkB,CAAC;AAE/C,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,2BAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE;IAAE,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,KAAK,KAAK,CAAA;CAAE,EAC3G,KAAK,EAAE,OAAO,GACb,KAAK,CAKP;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAAC,CAAC,EAChD,OAAO,EAAE;IAAE,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,KAAK,KAAK,CAAA;CAAE,EAC3G,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACrB,OAAO,CAAC,CAAC,CAAC,CAMZ"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * MJCLI-side helpers for the agent-first interactivity contract (see
3
+ * `@memberjunction/cli-core`'s `interaction.ts` for the model).
4
+ *
5
+ * These exist because most `mj` commands are still plain oclif `Command`s rather
6
+ * than `BaseCLIPlugin` subclasses, so they don't inherit `--interactive` or the
7
+ * structured `NonInteractiveError` handling. They read the same env signal the prerun
8
+ * hook sets from that flag, which keeps a migrated plugin and an unmigrated command
9
+ * behaving identically at the prompt — and both of them detecting a terminal the same
10
+ * way when no flag is given.
11
+ */
12
+ import { NonInteractiveError, RequireInteractive, ResolveInteractivity, ResolveOrPrompt, } from '@memberjunction/cli-core';
13
+ export { NonInteractiveError };
14
+ /**
15
+ * Whether this run may prompt: true at a real terminal, false when piped, spawned, or
16
+ * running in CI. Reads the env var the prerun hook sets from the global `--interactive`
17
+ * / `--no-interactive` flags, then falls back to detecting the terminal.
18
+ */
19
+ export function isInteractiveRun(overrides = {}) {
20
+ return ResolveInteractivity(overrides).interactive;
21
+ }
22
+ /**
23
+ * Asks for one value, or fails fast naming the flag that supplies it.
24
+ *
25
+ * Thin re-export of cli-core's `ResolveOrPrompt` so unmigrated commands import from
26
+ * one place and pick up the env-based interactivity default automatically.
27
+ */
28
+ export const resolveOrPrompt = ResolveOrPrompt;
29
+ /** Guards a command that is interactive by nature and has no flag equivalent. */
30
+ export const requireInteractive = RequireInteractive;
31
+ /**
32
+ * Renders a {@link NonInteractiveError} through oclif's error path for commands that
33
+ * aren't `BaseCLIPlugin` subclasses (which get the structured envelope instead).
34
+ *
35
+ * Sets exit code 1 and prints the suggestion, so an agent reading stderr still gets
36
+ * the flag to pass — the important half of the contract — even before the command is
37
+ * migrated.
38
+ *
39
+ * Re-throws anything that isn't a `NonInteractiveError` untouched.
40
+ */
41
+ export function failOnNonInteractive(command, error) {
42
+ if (error instanceof NonInteractiveError) {
43
+ command.error(error.message, { exit: 1, suggestions: [error.suggestion] });
44
+ }
45
+ throw error;
46
+ }
47
+ /**
48
+ * Wraps a command body so any {@link NonInteractiveError} raised anywhere inside it
49
+ * — including deep in a service callback — surfaces as a clean, actionable failure
50
+ * instead of an unhandled rejection.
51
+ */
52
+ export async function withNonInteractiveHandling(command, body) {
53
+ try {
54
+ return await body();
55
+ }
56
+ catch (e) {
57
+ return failOnNonInteractive(command, e);
58
+ }
59
+ }
60
+ //# sourceMappingURL=interactive-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-guard.js","sourceRoot":"","sources":["../../src/lib/interactive-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,GAEhB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAgC,EAAE;IACjE,OAAO,oBAAoB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAE/C,iFAAiF;AACjF,MAAM,CAAC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAErD;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAA2G,EAC3G,KAAc;IAEd,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;QACzC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,KAAK,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAA2G,EAC3G,IAAsB;IAEtB,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,oBAAoB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-install.d.ts","sourceRoot":"","sources":["../../src/lib/legacy-install.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAiD3C,qBAAa,eAAe;IAC1B,OAAO,CAAC,GAAG,CAAU;IACrB,OAAO,CAAC,OAAO,CAAU;gBAEb,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IAKpC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB1B,OAAO,CAAC,0BAA0B;IAMlC,OAAO,CAAC,cAAc;YAYR,iBAAiB;IAwB/B,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,uBAAuB;IA8B/B,OAAO,CAAC,UAAU;YAeJ,oBAAoB;YA0BpB,sBAAsB;YA4DtB,0BAA0B;YAkB1B,kBAAkB;YAkBlB,eAAe;IAY7B,OAAO,CAAC,YAAY;IAkDpB,OAAO,CAAC,oBAAoB;YAgBd,sBAAsB;IA4B9B,wBAAwB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAuCxH"}
1
+ {"version":3,"file":"legacy-install.d.ts","sourceRoot":"","sources":["../../src/lib/legacy-install.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAkD3C,qBAAa,eAAe;IAC1B,OAAO,CAAC,GAAG,CAAU;IACrB,OAAO,CAAC,OAAO,CAAU;gBAEb,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IAKpC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC1B,OAAO,CAAC,0BAA0B;IAMlC,OAAO,CAAC,cAAc;YAYR,iBAAiB;IAwB/B,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,uBAAuB;IA8B/B,OAAO,CAAC,UAAU;YAeJ,oBAAoB;YA0BpB,sBAAsB;YA4DtB,0BAA0B;YAkB1B,kBAAkB;YAkBlB,eAAe;IAY7B,OAAO,CAAC,YAAY;IAkDpB,OAAO,CAAC,oBAAoB;YAgBd,sBAAsB;IA4B9B,wBAAwB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAuCxH"}
@@ -12,6 +12,7 @@ import { execSync } from 'node:child_process';
12
12
  import os from 'node:os';
13
13
  import path from 'node:path';
14
14
  import { ZodError, z } from 'zod';
15
+ import { requireInteractive } from './interactive-guard.js';
15
16
  // Directories are relative to execution cwd
16
17
  const GENERATED_ENTITIES_DIR = 'GeneratedEntities';
17
18
  const SQL_SCRIPTS_DIR = 'SQL Scripts';
@@ -54,6 +55,9 @@ export class LegacyInstaller {
54
55
  this.verbose = verbose;
55
56
  }
56
57
  async Run() {
58
+ // Two dozen blocking questions with no flag equivalents. Refuse before the first
59
+ // one rather than hanging an agent on stdin forever.
60
+ requireInteractive('The legacy interactive installer', 'Re-run at an interactive terminal, or drop --legacy to use the engine installer (which accepts --config).');
57
61
  this.checkNodeVersion();
58
62
  this.checkAvailableDiskSpace(2);
59
63
  this.verifyDirs(GENERATED_ENTITIES_DIR, SQL_SCRIPTS_DIR, MJAPI_DIR, MJEXPLORER_DIR);
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-install.js","sourceRoot":"","sources":["../../src/lib/legacy-install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"legacy-install.js","sourceRoot":"","sources":["../../src/lib/legacy-install.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { type MJCLIResult, type UsageDomainDetail, type UsageDomainMap } from '@memberjunction/cli-core';
1
+ import { type MJCLIResult, type OutputFormat, type UsageDomainDetail, type UsageDomainMap } from '@memberjunction/cli-core';
2
2
  type LogFn = (message: string) => void;
3
3
  /**
4
4
  * Serializes a usage {@link MJCLIResult} per `--format`, via the same
5
5
  * {@link SerializeResult} the runtime host uses (single source of truth). For
6
6
  * `text`, the caller supplies pre-rendered human lines.
7
7
  */
8
- export declare function emitUsage(log: LogFn, format: string, result: MJCLIResult, textLines: string[]): void;
8
+ export declare function emitUsage(log: LogFn, format: OutputFormat, result: MJCLIResult, textLines: string[]): void;
9
9
  /** Human-readable tier-1 domain map. */
10
10
  export declare function renderDomainMap(map: UsageDomainMap): string[];
11
11
  /** Human-readable tier-2 domain detail. */
@@ -1 +1 @@
1
- {"version":3,"file":"usage-render.d.ts","sourceRoot":"","sources":["../../src/lib/usage-render.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,WAAW,EAAuC,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/J,KAAK,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvC;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAMpG;AAED,wCAAwC;AACxC,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,EAAE,CAa7D;AAED,2CAA2C;AAC3C,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAsBtE"}
1
+ {"version":3,"file":"usage-render.d.ts","sourceRoot":"","sources":["../../src/lib/usage-render.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,YAAY,EAAoB,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/J,KAAK,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvC;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAO1G;AAED,wCAAwC;AACxC,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,EAAE,CAa7D;AAED,2CAA2C;AAC3C,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAsBtE"}
@@ -7,7 +7,8 @@ import { SerializeResult } from '@memberjunction/cli-core';
7
7
  */
8
8
  export function emitUsage(log, format, result, textLines) {
9
9
  if (format === 'json' || format === 'md') {
10
- log(SerializeResult(result, format));
10
+ // Pretty only when a human is watching; a pipe gets one compact line.
11
+ log(SerializeResult(result, format, { pretty: process.stdout.isTTY === true }));
11
12
  }
12
13
  else {
13
14
  textLines.forEach((line) => log(line));