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

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.
@@ -60,6 +60,397 @@
60
60
  "index.js"
61
61
  ]
62
62
  },
63
+ "app:check-updates": {
64
+ "aliases": [],
65
+ "args": {},
66
+ "description": "Check for available upgrades for installed MJ Open Apps",
67
+ "examples": [
68
+ "<%= config.bin %> app check-updates"
69
+ ],
70
+ "flags": {},
71
+ "hasDynamicHelp": false,
72
+ "hiddenAliases": [],
73
+ "id": "app:check-updates",
74
+ "pluginAlias": "@memberjunction/cli",
75
+ "pluginName": "@memberjunction/cli",
76
+ "pluginType": "core",
77
+ "strict": true,
78
+ "enableJsonFlag": false,
79
+ "isESM": true,
80
+ "relativePath": [
81
+ "dist",
82
+ "commands",
83
+ "app",
84
+ "check-updates.js"
85
+ ]
86
+ },
87
+ "app:disable": {
88
+ "aliases": [],
89
+ "args": {
90
+ "name": {
91
+ "description": "Name of the installed app to disable",
92
+ "name": "name",
93
+ "required": true
94
+ }
95
+ },
96
+ "description": "Disable an installed MJ Open App without removing it",
97
+ "examples": [
98
+ "<%= config.bin %> app disable acme-crm"
99
+ ],
100
+ "flags": {},
101
+ "hasDynamicHelp": false,
102
+ "hiddenAliases": [],
103
+ "id": "app:disable",
104
+ "pluginAlias": "@memberjunction/cli",
105
+ "pluginName": "@memberjunction/cli",
106
+ "pluginType": "core",
107
+ "strict": true,
108
+ "enableJsonFlag": false,
109
+ "isESM": true,
110
+ "relativePath": [
111
+ "dist",
112
+ "commands",
113
+ "app",
114
+ "disable.js"
115
+ ]
116
+ },
117
+ "app:enable": {
118
+ "aliases": [],
119
+ "args": {
120
+ "name": {
121
+ "description": "Name of the installed app to enable",
122
+ "name": "name",
123
+ "required": true
124
+ }
125
+ },
126
+ "description": "Re-enable a disabled MJ Open App",
127
+ "examples": [
128
+ "<%= config.bin %> app enable acme-crm"
129
+ ],
130
+ "flags": {},
131
+ "hasDynamicHelp": false,
132
+ "hiddenAliases": [],
133
+ "id": "app:enable",
134
+ "pluginAlias": "@memberjunction/cli",
135
+ "pluginName": "@memberjunction/cli",
136
+ "pluginType": "core",
137
+ "strict": true,
138
+ "enableJsonFlag": false,
139
+ "isESM": true,
140
+ "relativePath": [
141
+ "dist",
142
+ "commands",
143
+ "app",
144
+ "enable.js"
145
+ ]
146
+ },
147
+ "app:info": {
148
+ "aliases": [],
149
+ "args": {
150
+ "name": {
151
+ "description": "Name of the installed app",
152
+ "name": "name",
153
+ "required": true
154
+ }
155
+ },
156
+ "description": "Show detailed information about an installed MJ Open App",
157
+ "examples": [
158
+ "<%= config.bin %> app info acme-crm"
159
+ ],
160
+ "flags": {},
161
+ "hasDynamicHelp": false,
162
+ "hiddenAliases": [],
163
+ "id": "app:info",
164
+ "pluginAlias": "@memberjunction/cli",
165
+ "pluginName": "@memberjunction/cli",
166
+ "pluginType": "core",
167
+ "strict": true,
168
+ "enableJsonFlag": false,
169
+ "isESM": true,
170
+ "relativePath": [
171
+ "dist",
172
+ "commands",
173
+ "app",
174
+ "info.js"
175
+ ]
176
+ },
177
+ "app:install": {
178
+ "aliases": [],
179
+ "args": {
180
+ "source": {
181
+ "description": "GitHub repository URL of the Open App. For a multi-app repo, append the in-repo path to the app (e.g. https://github.com/MemberJunction/Integrations/CRM/HubSpot).",
182
+ "name": "source",
183
+ "required": true
184
+ }
185
+ },
186
+ "description": "Install an MJ Open App from a GitHub repository",
187
+ "examples": [
188
+ "<%= config.bin %> app install https://github.com/acme/mj-crm",
189
+ "<%= config.bin %> app install https://github.com/acme/mj-crm --version 1.2.0",
190
+ "<%= config.bin %> app install https://github.com/acme/mj-crm --verbose",
191
+ "<%= config.bin %> app install https://github.com/MemberJunction/Integrations/CRM/HubSpot",
192
+ "<%= config.bin %> app install https://github.com/acme/mj-crm --non-interactive"
193
+ ],
194
+ "flags": {
195
+ "version": {
196
+ "description": "Specific version to install (default: latest)",
197
+ "name": "version",
198
+ "hasDynamicHelp": false,
199
+ "multiple": false,
200
+ "type": "option"
201
+ },
202
+ "verbose": {
203
+ "char": "v",
204
+ "description": "Show detailed output",
205
+ "name": "verbose",
206
+ "allowNo": false,
207
+ "type": "boolean"
208
+ },
209
+ "non-interactive": {
210
+ "description": "Skip interactive setup prompts; post-install hooks use environment variables / defaults (for CI/headless installs)",
211
+ "name": "non-interactive",
212
+ "allowNo": false,
213
+ "type": "boolean"
214
+ },
215
+ "dangerously-ignore-dbl-underscore-schema-rule": {
216
+ "hidden": true,
217
+ "name": "dangerously-ignore-dbl-underscore-schema-rule",
218
+ "allowNo": false,
219
+ "type": "boolean"
220
+ }
221
+ },
222
+ "hasDynamicHelp": false,
223
+ "hiddenAliases": [],
224
+ "id": "app:install",
225
+ "pluginAlias": "@memberjunction/cli",
226
+ "pluginName": "@memberjunction/cli",
227
+ "pluginType": "core",
228
+ "strict": true,
229
+ "enableJsonFlag": false,
230
+ "isESM": true,
231
+ "relativePath": [
232
+ "dist",
233
+ "commands",
234
+ "app",
235
+ "install.js"
236
+ ]
237
+ },
238
+ "app:list": {
239
+ "aliases": [],
240
+ "args": {},
241
+ "description": "List all installed MJ Open Apps",
242
+ "examples": [
243
+ "<%= config.bin %> app list"
244
+ ],
245
+ "flags": {
246
+ "verbose": {
247
+ "char": "v",
248
+ "description": "Show detailed output",
249
+ "name": "verbose",
250
+ "allowNo": false,
251
+ "type": "boolean"
252
+ }
253
+ },
254
+ "hasDynamicHelp": false,
255
+ "hiddenAliases": [],
256
+ "id": "app:list",
257
+ "pluginAlias": "@memberjunction/cli",
258
+ "pluginName": "@memberjunction/cli",
259
+ "pluginType": "core",
260
+ "strict": true,
261
+ "enableJsonFlag": false,
262
+ "isESM": true,
263
+ "relativePath": [
264
+ "dist",
265
+ "commands",
266
+ "app",
267
+ "list.js"
268
+ ]
269
+ },
270
+ "app:remove": {
271
+ "aliases": [],
272
+ "args": {
273
+ "name": {
274
+ "description": "Name of the installed app to remove",
275
+ "name": "name",
276
+ "required": true
277
+ }
278
+ },
279
+ "description": "Remove an installed MJ Open App",
280
+ "examples": [
281
+ "<%= config.bin %> app remove acme-crm",
282
+ "<%= config.bin %> app remove acme-crm --keep-data",
283
+ "<%= config.bin %> app remove acme-crm --force"
284
+ ],
285
+ "flags": {
286
+ "keep-data": {
287
+ "description": "Keep the database schema and data",
288
+ "name": "keep-data",
289
+ "allowNo": false,
290
+ "type": "boolean"
291
+ },
292
+ "force": {
293
+ "description": "Force removal even if other apps depend on this one",
294
+ "name": "force",
295
+ "allowNo": false,
296
+ "type": "boolean"
297
+ },
298
+ "yes": {
299
+ "char": "y",
300
+ "description": "Skip confirmation prompt",
301
+ "name": "yes",
302
+ "allowNo": false,
303
+ "type": "boolean"
304
+ },
305
+ "verbose": {
306
+ "char": "v",
307
+ "description": "Show detailed output",
308
+ "name": "verbose",
309
+ "allowNo": false,
310
+ "type": "boolean"
311
+ },
312
+ "dangerously-ignore-dbl-underscore-schema-rule": {
313
+ "hidden": true,
314
+ "name": "dangerously-ignore-dbl-underscore-schema-rule",
315
+ "allowNo": false,
316
+ "type": "boolean"
317
+ }
318
+ },
319
+ "hasDynamicHelp": false,
320
+ "hiddenAliases": [],
321
+ "id": "app:remove",
322
+ "pluginAlias": "@memberjunction/cli",
323
+ "pluginName": "@memberjunction/cli",
324
+ "pluginType": "core",
325
+ "strict": true,
326
+ "enableJsonFlag": false,
327
+ "isESM": true,
328
+ "relativePath": [
329
+ "dist",
330
+ "commands",
331
+ "app",
332
+ "remove.js"
333
+ ]
334
+ },
335
+ "app:upgrade": {
336
+ "aliases": [],
337
+ "args": {
338
+ "name": {
339
+ "description": "Name of the installed app to upgrade",
340
+ "name": "name",
341
+ "required": true
342
+ }
343
+ },
344
+ "description": "Upgrade an installed MJ Open App to a newer version",
345
+ "examples": [
346
+ "<%= config.bin %> app upgrade acme-crm",
347
+ "<%= config.bin %> app upgrade acme-crm --version 1.3.0"
348
+ ],
349
+ "flags": {
350
+ "version": {
351
+ "description": "Specific version to upgrade to (default: latest)",
352
+ "name": "version",
353
+ "hasDynamicHelp": false,
354
+ "multiple": false,
355
+ "type": "option"
356
+ },
357
+ "verbose": {
358
+ "char": "v",
359
+ "description": "Show detailed output",
360
+ "name": "verbose",
361
+ "allowNo": false,
362
+ "type": "boolean"
363
+ },
364
+ "non-interactive": {
365
+ "description": "Skip interactive prompts; post-upgrade hooks use environment variables / defaults (for CI/headless upgrades)",
366
+ "name": "non-interactive",
367
+ "allowNo": false,
368
+ "type": "boolean"
369
+ },
370
+ "dangerously-ignore-dbl-underscore-schema-rule": {
371
+ "hidden": true,
372
+ "name": "dangerously-ignore-dbl-underscore-schema-rule",
373
+ "allowNo": false,
374
+ "type": "boolean"
375
+ }
376
+ },
377
+ "hasDynamicHelp": false,
378
+ "hiddenAliases": [],
379
+ "id": "app:upgrade",
380
+ "pluginAlias": "@memberjunction/cli",
381
+ "pluginName": "@memberjunction/cli",
382
+ "pluginType": "core",
383
+ "strict": true,
384
+ "enableJsonFlag": false,
385
+ "isESM": true,
386
+ "relativePath": [
387
+ "dist",
388
+ "commands",
389
+ "app",
390
+ "upgrade.js"
391
+ ]
392
+ },
393
+ "artifacts:reclassify": {
394
+ "aliases": [],
395
+ "args": {},
396
+ "description": "Upgrade-recovery utility for v5.35 artifact unification. Re-evaluates rows whose TypeID is the deleted JSON fallback but whose actual content does not parse as JSON. Normally a no-op: the v5.35 backfill migration handles this automatically. This command is only relevant when the migration ran BEFORE the artifact-type metadata (Generic Text / Generic Binary) was pushed via `mj sync push`, in which case the migration prints a notice telling you to run this. Reports \"no candidates\" once everything is reconciled. Dry-run by default; --apply writes through Record Changes.",
397
+ "examples": [
398
+ "<%= config.bin %> <%= command.id %>",
399
+ "<%= config.bin %> <%= command.id %> --apply --limit 50"
400
+ ],
401
+ "flags": {
402
+ "conversation-id": {
403
+ "description": "Scope to artifacts attached to the given conversation.",
404
+ "name": "conversation-id",
405
+ "hasDynamicHelp": false,
406
+ "multiple": false,
407
+ "type": "option"
408
+ },
409
+ "since": {
410
+ "description": "Scope to artifacts created on/after this ISO date.",
411
+ "name": "since",
412
+ "hasDynamicHelp": false,
413
+ "multiple": false,
414
+ "type": "option"
415
+ },
416
+ "limit": {
417
+ "description": "Maximum number of rows to inspect.",
418
+ "name": "limit",
419
+ "default": 100,
420
+ "hasDynamicHelp": false,
421
+ "multiple": false,
422
+ "type": "option"
423
+ },
424
+ "apply": {
425
+ "description": "Write changes. Without this flag, this command only reports what it would do.",
426
+ "name": "apply",
427
+ "allowNo": false,
428
+ "type": "boolean"
429
+ },
430
+ "verbose": {
431
+ "char": "v",
432
+ "description": "Print every candidate row, not just the summary.",
433
+ "name": "verbose",
434
+ "allowNo": false,
435
+ "type": "boolean"
436
+ }
437
+ },
438
+ "hasDynamicHelp": false,
439
+ "hiddenAliases": [],
440
+ "id": "artifacts:reclassify",
441
+ "pluginAlias": "@memberjunction/cli",
442
+ "pluginName": "@memberjunction/cli",
443
+ "pluginType": "core",
444
+ "strict": true,
445
+ "enableJsonFlag": false,
446
+ "isESM": true,
447
+ "relativePath": [
448
+ "dist",
449
+ "commands",
450
+ "artifacts",
451
+ "reclassify.js"
452
+ ]
453
+ },
63
454
  "baseline:build": {
64
455
  "aliases": [],
65
456
  "args": {},
@@ -1946,7 +2337,7 @@
1946
2337
  "type": "boolean"
1947
2338
  },
1948
2339
  "allow-gaps": {
1949
- "description": "With --split: exit 0 even when migrations have conversion gaps (hand-authoring needed or unhandled statements). Gaps are still embedded as comments and listed in the summary.",
2340
+ "description": "Exit 0 even when migrations have conversion gaps — with --split: hand-authoring needed or unhandled statements; on the legacy path: \"-- Could not parse\" / \"-- ERROR converting batch\" markers in the output. Gaps are still embedded as comments and listed in the summary.",
1950
2341
  "name": "allow-gaps",
1951
2342
  "allowNo": false,
1952
2343
  "type": "boolean"
@@ -2043,7 +2434,7 @@
2043
2434
  "migrate": {
2044
2435
  "aliases": [],
2045
2436
  "args": {},
2046
- "description": "Migrate MemberJunction database to latest version",
2437
+ "description": "Migrate MemberJunction database to latest version. Open App migrates also run the core metadata-heal procs (same work as R__RefreshMetadata) scoped to the app schema, on SQL Server and PostgreSQL.",
2047
2438
  "examples": [
2048
2439
  "<%= config.bin %> <%= command.id %>\n",
2049
2440
  "<%= config.bin %> <%= command.id %> --schema __BCSaaS --dir ./migrations/v1\n",
@@ -4238,163 +4629,41 @@
4238
4629
  "allowNo": false,
4239
4630
  "type": "boolean"
4240
4631
  },
4241
- "refresh-commands": {
4242
- "description": "Force-resync .claude/commands/* from the pack (saves .bak files)",
4243
- "name": "refresh-commands",
4244
- "allowNo": false,
4245
- "type": "boolean"
4246
- },
4247
- "refresh-skills": {
4248
- "description": "Force-resync .claude/skills/** from the pack (saves .bak files)",
4249
- "name": "refresh-skills",
4250
- "allowNo": false,
4251
- "type": "boolean"
4252
- },
4253
- "allow-major": {
4254
- "description": "Allow the remote pack's major to differ from local MJ's major",
4255
- "name": "allow-major",
4256
- "allowNo": false,
4257
- "type": "boolean"
4258
- },
4259
- "json": {
4260
- "description": "Output as JSON (matches plan §7.5 schema)",
4261
- "name": "json",
4262
- "allowNo": false,
4263
- "type": "boolean"
4264
- },
4265
- "verbose": {
4266
- "char": "v",
4267
- "description": "Show progress messages",
4268
- "name": "verbose",
4269
- "allowNo": false,
4270
- "type": "boolean"
4271
- }
4272
- },
4273
- "hasDynamicHelp": false,
4274
- "hiddenAliases": [],
4275
- "id": "update:claude",
4276
- "pluginAlias": "@memberjunction/cli",
4277
- "pluginName": "@memberjunction/cli",
4278
- "pluginType": "core",
4279
- "strict": true,
4280
- "enableJsonFlag": false,
4281
- "isESM": true,
4282
- "relativePath": [
4283
- "dist",
4284
- "commands",
4285
- "update",
4286
- "claude.js"
4287
- ]
4288
- },
4289
- "ai:actions:list": {
4290
- "aliases": [],
4291
- "args": {},
4292
- "description": "List available AI actions",
4293
- "examples": [
4294
- "<%= config.bin %> <%= command.id %>",
4295
- "<%= config.bin %> <%= command.id %> --output=table",
4296
- "<%= config.bin %> <%= command.id %> --output=json"
4297
- ],
4298
- "flags": {
4299
- "output": {
4300
- "char": "o",
4301
- "description": "Output format",
4302
- "name": "output",
4303
- "default": "compact",
4304
- "hasDynamicHelp": false,
4305
- "multiple": false,
4306
- "options": [
4307
- "compact",
4308
- "json",
4309
- "table"
4310
- ],
4311
- "type": "option"
4312
- }
4313
- },
4314
- "hasDynamicHelp": false,
4315
- "hiddenAliases": [],
4316
- "id": "ai:actions:list",
4317
- "pluginAlias": "@memberjunction/cli",
4318
- "pluginName": "@memberjunction/cli",
4319
- "pluginType": "core",
4320
- "strict": true,
4321
- "enableJsonFlag": false,
4322
- "isESM": true,
4323
- "relativePath": [
4324
- "dist",
4325
- "commands",
4326
- "ai",
4327
- "actions",
4328
- "list.js"
4329
- ]
4330
- },
4331
- "ai:actions:run": {
4332
- "aliases": [],
4333
- "args": {},
4334
- "description": "Execute an AI action with parameters",
4335
- "examples": [
4336
- "<%= config.bin %> <%= command.id %> -n \"Get Weather\" --param \"Location=Boston\"",
4337
- "<%= config.bin %> <%= command.id %> -n \"Get Stock Price\" --param \"Ticker=AAPL\"",
4338
- "<%= config.bin %> <%= command.id %> -n \"Send Single Message\" --param \"To=user@example.com\" --param \"Subject=Test\" --param \"Body=Hello\" --param \"MessageType=Email\" --param \"Provider=SendGrid\"",
4339
- "<%= config.bin %> <%= command.id %> -n \"Calculate Expression\" --param \"Expression=2+2*3\" --dry-run"
4340
- ],
4341
- "flags": {
4342
- "name": {
4343
- "char": "n",
4344
- "description": "Action name",
4345
- "name": "name",
4346
- "required": true,
4347
- "hasDynamicHelp": false,
4348
- "multiple": false,
4349
- "type": "option"
4350
- },
4351
- "param": {
4352
- "char": "p",
4353
- "description": "Action parameters in key=value format",
4354
- "name": "param",
4355
- "hasDynamicHelp": false,
4356
- "multiple": true,
4357
- "type": "option"
4632
+ "refresh-commands": {
4633
+ "description": "Force-resync .claude/commands/* from the pack (saves .bak files)",
4634
+ "name": "refresh-commands",
4635
+ "allowNo": false,
4636
+ "type": "boolean"
4358
4637
  },
4359
- "dry-run": {
4360
- "description": "Validate without executing",
4361
- "name": "dry-run",
4638
+ "refresh-skills": {
4639
+ "description": "Force-resync .claude/skills/** from the pack (saves .bak files)",
4640
+ "name": "refresh-skills",
4362
4641
  "allowNo": false,
4363
4642
  "type": "boolean"
4364
4643
  },
4365
- "output": {
4366
- "char": "o",
4367
- "description": "Output format",
4368
- "name": "output",
4369
- "default": "compact",
4370
- "hasDynamicHelp": false,
4371
- "multiple": false,
4372
- "options": [
4373
- "compact",
4374
- "json",
4375
- "table"
4376
- ],
4377
- "type": "option"
4644
+ "allow-major": {
4645
+ "description": "Allow the remote pack's major to differ from local MJ's major",
4646
+ "name": "allow-major",
4647
+ "allowNo": false,
4648
+ "type": "boolean"
4649
+ },
4650
+ "json": {
4651
+ "description": "Output as JSON (matches plan §7.5 schema)",
4652
+ "name": "json",
4653
+ "allowNo": false,
4654
+ "type": "boolean"
4378
4655
  },
4379
4656
  "verbose": {
4380
4657
  "char": "v",
4381
- "description": "Show detailed execution information",
4658
+ "description": "Show progress messages",
4382
4659
  "name": "verbose",
4383
4660
  "allowNo": false,
4384
4661
  "type": "boolean"
4385
- },
4386
- "timeout": {
4387
- "description": "Execution timeout in milliseconds",
4388
- "name": "timeout",
4389
- "default": 300000,
4390
- "hasDynamicHelp": false,
4391
- "multiple": false,
4392
- "type": "option"
4393
4662
  }
4394
4663
  },
4395
4664
  "hasDynamicHelp": false,
4396
4665
  "hiddenAliases": [],
4397
- "id": "ai:actions:run",
4666
+ "id": "update:claude",
4398
4667
  "pluginAlias": "@memberjunction/cli",
4399
4668
  "pluginName": "@memberjunction/cli",
4400
4669
  "pluginType": "core",
@@ -4404,9 +4673,8 @@
4404
4673
  "relativePath": [
4405
4674
  "dist",
4406
4675
  "commands",
4407
- "ai",
4408
- "actions",
4409
- "run.js"
4676
+ "update",
4677
+ "claude.js"
4410
4678
  ]
4411
4679
  },
4412
4680
  "ai:agents:list": {
@@ -4630,309 +4898,85 @@
4630
4898
  "dependsOn": [
4631
4899
  "list"
4632
4900
  ],
4633
- "description": "Filter by agent name",
4634
- "name": "agent",
4635
- "hasDynamicHelp": false,
4636
- "multiple": false,
4637
- "type": "option"
4638
- },
4639
- "status": {
4640
- "dependsOn": [
4641
- "list"
4642
- ],
4643
- "description": "Filter by run status",
4644
- "name": "status",
4645
- "default": "all",
4646
- "hasDynamicHelp": false,
4647
- "multiple": false,
4648
- "options": [
4649
- "success",
4650
- "failed",
4651
- "running",
4652
- "all"
4653
- ],
4654
- "type": "option"
4655
- },
4656
- "days": {
4657
- "dependsOn": [
4658
- "list"
4659
- ],
4660
- "description": "Number of days to look back",
4661
- "name": "days",
4662
- "default": 7,
4663
- "hasDynamicHelp": false,
4664
- "multiple": false,
4665
- "type": "option"
4666
- },
4667
- "limit": {
4668
- "dependsOn": [
4669
- "list"
4670
- ],
4671
- "description": "Maximum number of runs to return",
4672
- "name": "limit",
4673
- "default": 50,
4674
- "hasDynamicHelp": false,
4675
- "multiple": false,
4676
- "type": "option"
4677
- },
4678
- "export": {
4679
- "dependsOn": [
4680
- "file"
4681
- ],
4682
- "description": "Export full data to file",
4683
- "name": "export",
4684
- "hasDynamicHelp": false,
4685
- "multiple": false,
4686
- "options": [
4687
- "full",
4688
- "summary",
4689
- "steps"
4690
- ],
4691
- "type": "option"
4692
- },
4693
- "file": {
4694
- "char": "f",
4695
- "description": "Output file path for export",
4696
- "name": "file",
4697
- "hasDynamicHelp": false,
4698
- "multiple": false,
4699
- "type": "option"
4700
- },
4701
- "max-tokens": {
4702
- "description": "Maximum tokens per field (0 = no limit)",
4703
- "name": "max-tokens",
4704
- "default": 5000,
4705
- "hasDynamicHelp": false,
4706
- "multiple": false,
4707
- "type": "option"
4708
- },
4709
- "verbose": {
4710
- "char": "v",
4711
- "description": "Show detailed diagnostic information",
4712
- "name": "verbose",
4713
- "allowNo": false,
4714
- "type": "boolean"
4715
- }
4716
- },
4717
- "hasDynamicHelp": false,
4718
- "hiddenAliases": [],
4719
- "id": "ai:audit:agent-run",
4720
- "pluginAlias": "@memberjunction/cli",
4721
- "pluginName": "@memberjunction/cli",
4722
- "pluginType": "core",
4723
- "strict": true,
4724
- "enableJsonFlag": false,
4725
- "isESM": true,
4726
- "relativePath": [
4727
- "dist",
4728
- "commands",
4729
- "ai",
4730
- "audit",
4731
- "agent-run.js"
4732
- ]
4733
- },
4734
- "ai:audit": {
4735
- "aliases": [],
4736
- "args": {},
4737
- "description": "Analyze and audit AI agent runs, prompts, and actions for debugging and performance analysis",
4738
- "flags": {},
4739
- "hasDynamicHelp": false,
4740
- "hidden": false,
4741
- "hiddenAliases": [],
4742
- "id": "ai:audit",
4743
- "pluginAlias": "@memberjunction/cli",
4744
- "pluginName": "@memberjunction/cli",
4745
- "pluginType": "core",
4746
- "strict": true,
4747
- "enableJsonFlag": false,
4748
- "isESM": true,
4749
- "relativePath": [
4750
- "dist",
4751
- "commands",
4752
- "ai",
4753
- "audit",
4754
- "index.js"
4755
- ]
4756
- },
4757
- "ai:prompts:list": {
4758
- "aliases": [],
4759
- "args": {},
4760
- "description": "List available models for prompt execution",
4761
- "examples": [
4762
- "<%= config.bin %> <%= command.id %>"
4763
- ],
4764
- "flags": {
4765
- "verbose": {
4766
- "char": "v",
4767
- "description": "Show detailed model information",
4768
- "name": "verbose",
4769
- "allowNo": false,
4770
- "type": "boolean"
4771
- }
4772
- },
4773
- "hasDynamicHelp": false,
4774
- "hiddenAliases": [],
4775
- "id": "ai:prompts:list",
4776
- "pluginAlias": "@memberjunction/cli",
4777
- "pluginName": "@memberjunction/cli",
4778
- "pluginType": "core",
4779
- "strict": true,
4780
- "enableJsonFlag": false,
4781
- "isESM": true,
4782
- "relativePath": [
4783
- "dist",
4784
- "commands",
4785
- "ai",
4786
- "prompts",
4787
- "list.js"
4788
- ]
4789
- },
4790
- "ai:prompts:run": {
4791
- "aliases": [],
4792
- "args": {},
4793
- "description": "Execute a direct prompt with an AI model",
4794
- "examples": [
4795
- "<%= config.bin %> <%= command.id %> -p \"Explain quantum computing in simple terms\"",
4796
- "<%= config.bin %> <%= command.id %> -p \"Write a Python function to sort a list\" --model \"gpt-4\"",
4797
- "<%= config.bin %> <%= command.id %> -p \"Translate to French: Hello world\" --temperature 0.3",
4798
- "<%= config.bin %> <%= command.id %> -p \"Generate a haiku\" --system \"You are a poet\" --max-tokens 100"
4799
- ],
4800
- "flags": {
4801
- "prompt": {
4802
- "char": "p",
4803
- "description": "The prompt to execute",
4804
- "name": "prompt",
4805
- "required": true,
4806
- "hasDynamicHelp": false,
4807
- "multiple": false,
4808
- "type": "option"
4809
- },
4810
- "model": {
4811
- "char": "m",
4812
- "description": "AI model to use (e.g., gpt-4, claude-3-opus)",
4813
- "name": "model",
4814
- "hasDynamicHelp": false,
4815
- "multiple": false,
4816
- "type": "option"
4817
- },
4818
- "system": {
4819
- "char": "s",
4820
- "description": "System prompt to set context",
4821
- "name": "system",
4822
- "hasDynamicHelp": false,
4823
- "multiple": false,
4824
- "type": "option"
4825
- },
4826
- "temperature": {
4827
- "char": "t",
4828
- "description": "Temperature for response creativity (0.0-2.0)",
4829
- "name": "temperature",
4830
- "hasDynamicHelp": false,
4831
- "multiple": false,
4832
- "type": "option"
4833
- },
4834
- "max-tokens": {
4835
- "description": "Maximum tokens for the response",
4836
- "name": "max-tokens",
4901
+ "description": "Filter by agent name",
4902
+ "name": "agent",
4837
4903
  "hasDynamicHelp": false,
4838
4904
  "multiple": false,
4839
4905
  "type": "option"
4840
4906
  },
4841
- "configuration": {
4842
- "char": "c",
4843
- "description": "AI Configuration ID to use",
4844
- "name": "configuration",
4907
+ "status": {
4908
+ "dependsOn": [
4909
+ "list"
4910
+ ],
4911
+ "description": "Filter by run status",
4912
+ "name": "status",
4913
+ "default": "all",
4845
4914
  "hasDynamicHelp": false,
4846
4915
  "multiple": false,
4916
+ "options": [
4917
+ "success",
4918
+ "failed",
4919
+ "running",
4920
+ "all"
4921
+ ],
4847
4922
  "type": "option"
4848
4923
  },
4849
- "output": {
4850
- "char": "o",
4851
- "description": "Output format",
4852
- "name": "output",
4853
- "default": "compact",
4924
+ "days": {
4925
+ "dependsOn": [
4926
+ "list"
4927
+ ],
4928
+ "description": "Number of days to look back",
4929
+ "name": "days",
4930
+ "default": 7,
4854
4931
  "hasDynamicHelp": false,
4855
4932
  "multiple": false,
4856
- "options": [
4857
- "compact",
4858
- "json",
4859
- "table"
4860
- ],
4861
4933
  "type": "option"
4862
4934
  },
4863
- "verbose": {
4864
- "char": "v",
4865
- "description": "Show detailed execution information",
4866
- "name": "verbose",
4867
- "allowNo": false,
4868
- "type": "boolean"
4869
- },
4870
- "timeout": {
4871
- "description": "Execution timeout in milliseconds",
4872
- "name": "timeout",
4873
- "default": 300000,
4935
+ "limit": {
4936
+ "dependsOn": [
4937
+ "list"
4938
+ ],
4939
+ "description": "Maximum number of runs to return",
4940
+ "name": "limit",
4941
+ "default": 50,
4874
4942
  "hasDynamicHelp": false,
4875
4943
  "multiple": false,
4876
4944
  "type": "option"
4877
- }
4878
- },
4879
- "hasDynamicHelp": false,
4880
- "hiddenAliases": [],
4881
- "id": "ai:prompts:run",
4882
- "pluginAlias": "@memberjunction/cli",
4883
- "pluginName": "@memberjunction/cli",
4884
- "pluginType": "core",
4885
- "strict": true,
4886
- "enableJsonFlag": false,
4887
- "isESM": true,
4888
- "relativePath": [
4889
- "dist",
4890
- "commands",
4891
- "ai",
4892
- "prompts",
4893
- "run.js"
4894
- ]
4895
- },
4896
- "artifacts:reclassify": {
4897
- "aliases": [],
4898
- "args": {},
4899
- "description": "Upgrade-recovery utility for v5.35 artifact unification. Re-evaluates rows whose TypeID is the deleted JSON fallback but whose actual content does not parse as JSON. Normally a no-op: the v5.35 backfill migration handles this automatically. This command is only relevant when the migration ran BEFORE the artifact-type metadata (Generic Text / Generic Binary) was pushed via `mj sync push`, in which case the migration prints a notice telling you to run this. Reports \"no candidates\" once everything is reconciled. Dry-run by default; --apply writes through Record Changes.",
4900
- "examples": [
4901
- "<%= config.bin %> <%= command.id %>",
4902
- "<%= config.bin %> <%= command.id %> --apply --limit 50"
4903
- ],
4904
- "flags": {
4905
- "conversation-id": {
4906
- "description": "Scope to artifacts attached to the given conversation.",
4907
- "name": "conversation-id",
4945
+ },
4946
+ "export": {
4947
+ "dependsOn": [
4948
+ "file"
4949
+ ],
4950
+ "description": "Export full data to file",
4951
+ "name": "export",
4908
4952
  "hasDynamicHelp": false,
4909
4953
  "multiple": false,
4954
+ "options": [
4955
+ "full",
4956
+ "summary",
4957
+ "steps"
4958
+ ],
4910
4959
  "type": "option"
4911
4960
  },
4912
- "since": {
4913
- "description": "Scope to artifacts created on/after this ISO date.",
4914
- "name": "since",
4961
+ "file": {
4962
+ "char": "f",
4963
+ "description": "Output file path for export",
4964
+ "name": "file",
4915
4965
  "hasDynamicHelp": false,
4916
4966
  "multiple": false,
4917
4967
  "type": "option"
4918
4968
  },
4919
- "limit": {
4920
- "description": "Maximum number of rows to inspect.",
4921
- "name": "limit",
4922
- "default": 100,
4969
+ "max-tokens": {
4970
+ "description": "Maximum tokens per field (0 = no limit)",
4971
+ "name": "max-tokens",
4972
+ "default": 5000,
4923
4973
  "hasDynamicHelp": false,
4924
4974
  "multiple": false,
4925
4975
  "type": "option"
4926
4976
  },
4927
- "apply": {
4928
- "description": "Write changes. Without this flag, this command only reports what it would do.",
4929
- "name": "apply",
4930
- "allowNo": false,
4931
- "type": "boolean"
4932
- },
4933
4977
  "verbose": {
4934
4978
  "char": "v",
4935
- "description": "Print every candidate row, not just the summary.",
4979
+ "description": "Show detailed diagnostic information",
4936
4980
  "name": "verbose",
4937
4981
  "allowNo": false,
4938
4982
  "type": "boolean"
@@ -4940,7 +4984,7 @@
4940
4984
  },
4941
4985
  "hasDynamicHelp": false,
4942
4986
  "hiddenAliases": [],
4943
- "id": "artifacts:reclassify",
4987
+ "id": "ai:audit:agent-run",
4944
4988
  "pluginAlias": "@memberjunction/cli",
4945
4989
  "pluginName": "@memberjunction/cli",
4946
4990
  "pluginType": "core",
@@ -4950,111 +4994,20 @@
4950
4994
  "relativePath": [
4951
4995
  "dist",
4952
4996
  "commands",
4953
- "artifacts",
4954
- "reclassify.js"
4997
+ "ai",
4998
+ "audit",
4999
+ "agent-run.js"
4955
5000
  ]
4956
5001
  },
4957
- "app:check-updates": {
5002
+ "ai:audit": {
4958
5003
  "aliases": [],
4959
5004
  "args": {},
4960
- "description": "Check for available upgrades for installed MJ Open Apps",
4961
- "examples": [
4962
- "<%= config.bin %> app check-updates"
4963
- ],
4964
- "flags": {},
4965
- "hasDynamicHelp": false,
4966
- "hiddenAliases": [],
4967
- "id": "app:check-updates",
4968
- "pluginAlias": "@memberjunction/cli",
4969
- "pluginName": "@memberjunction/cli",
4970
- "pluginType": "core",
4971
- "strict": true,
4972
- "enableJsonFlag": false,
4973
- "isESM": true,
4974
- "relativePath": [
4975
- "dist",
4976
- "commands",
4977
- "app",
4978
- "check-updates.js"
4979
- ]
4980
- },
4981
- "app:disable": {
4982
- "aliases": [],
4983
- "args": {
4984
- "name": {
4985
- "description": "Name of the installed app to disable",
4986
- "name": "name",
4987
- "required": true
4988
- }
4989
- },
4990
- "description": "Disable an installed MJ Open App without removing it",
4991
- "examples": [
4992
- "<%= config.bin %> app disable acme-crm"
4993
- ],
4994
- "flags": {},
4995
- "hasDynamicHelp": false,
4996
- "hiddenAliases": [],
4997
- "id": "app:disable",
4998
- "pluginAlias": "@memberjunction/cli",
4999
- "pluginName": "@memberjunction/cli",
5000
- "pluginType": "core",
5001
- "strict": true,
5002
- "enableJsonFlag": false,
5003
- "isESM": true,
5004
- "relativePath": [
5005
- "dist",
5006
- "commands",
5007
- "app",
5008
- "disable.js"
5009
- ]
5010
- },
5011
- "app:enable": {
5012
- "aliases": [],
5013
- "args": {
5014
- "name": {
5015
- "description": "Name of the installed app to enable",
5016
- "name": "name",
5017
- "required": true
5018
- }
5019
- },
5020
- "description": "Re-enable a disabled MJ Open App",
5021
- "examples": [
5022
- "<%= config.bin %> app enable acme-crm"
5023
- ],
5024
- "flags": {},
5025
- "hasDynamicHelp": false,
5026
- "hiddenAliases": [],
5027
- "id": "app:enable",
5028
- "pluginAlias": "@memberjunction/cli",
5029
- "pluginName": "@memberjunction/cli",
5030
- "pluginType": "core",
5031
- "strict": true,
5032
- "enableJsonFlag": false,
5033
- "isESM": true,
5034
- "relativePath": [
5035
- "dist",
5036
- "commands",
5037
- "app",
5038
- "enable.js"
5039
- ]
5040
- },
5041
- "app:info": {
5042
- "aliases": [],
5043
- "args": {
5044
- "name": {
5045
- "description": "Name of the installed app",
5046
- "name": "name",
5047
- "required": true
5048
- }
5049
- },
5050
- "description": "Show detailed information about an installed MJ Open App",
5051
- "examples": [
5052
- "<%= config.bin %> app info acme-crm"
5053
- ],
5005
+ "description": "Analyze and audit AI agent runs, prompts, and actions for debugging and performance analysis",
5054
5006
  "flags": {},
5055
5007
  "hasDynamicHelp": false,
5008
+ "hidden": false,
5056
5009
  "hiddenAliases": [],
5057
- "id": "app:info",
5010
+ "id": "ai:audit",
5058
5011
  "pluginAlias": "@memberjunction/cli",
5059
5012
  "pluginName": "@memberjunction/cli",
5060
5013
  "pluginType": "core",
@@ -5064,58 +5017,39 @@
5064
5017
  "relativePath": [
5065
5018
  "dist",
5066
5019
  "commands",
5067
- "app",
5068
- "info.js"
5020
+ "ai",
5021
+ "audit",
5022
+ "index.js"
5069
5023
  ]
5070
5024
  },
5071
- "app:install": {
5025
+ "ai:actions:list": {
5072
5026
  "aliases": [],
5073
- "args": {
5074
- "source": {
5075
- "description": "GitHub repository URL of the Open App. For a multi-app repo, append the in-repo path to the app (e.g. https://github.com/MemberJunction/Integrations/CRM/HubSpot).",
5076
- "name": "source",
5077
- "required": true
5078
- }
5079
- },
5080
- "description": "Install an MJ Open App from a GitHub repository",
5027
+ "args": {},
5028
+ "description": "List available AI actions",
5081
5029
  "examples": [
5082
- "<%= config.bin %> app install https://github.com/acme/mj-crm",
5083
- "<%= config.bin %> app install https://github.com/acme/mj-crm --version 1.2.0",
5084
- "<%= config.bin %> app install https://github.com/acme/mj-crm --verbose",
5085
- "<%= config.bin %> app install https://github.com/MemberJunction/Integrations/CRM/HubSpot",
5086
- "<%= config.bin %> app install https://github.com/acme/mj-crm --non-interactive"
5030
+ "<%= config.bin %> <%= command.id %>",
5031
+ "<%= config.bin %> <%= command.id %> --output=table",
5032
+ "<%= config.bin %> <%= command.id %> --output=json"
5087
5033
  ],
5088
- "flags": {
5089
- "version": {
5090
- "description": "Specific version to install (default: latest)",
5091
- "name": "version",
5034
+ "flags": {
5035
+ "output": {
5036
+ "char": "o",
5037
+ "description": "Output format",
5038
+ "name": "output",
5039
+ "default": "compact",
5092
5040
  "hasDynamicHelp": false,
5093
5041
  "multiple": false,
5042
+ "options": [
5043
+ "compact",
5044
+ "json",
5045
+ "table"
5046
+ ],
5094
5047
  "type": "option"
5095
- },
5096
- "verbose": {
5097
- "char": "v",
5098
- "description": "Show detailed output",
5099
- "name": "verbose",
5100
- "allowNo": false,
5101
- "type": "boolean"
5102
- },
5103
- "non-interactive": {
5104
- "description": "Skip interactive setup prompts; post-install hooks use environment variables / defaults (for CI/headless installs)",
5105
- "name": "non-interactive",
5106
- "allowNo": false,
5107
- "type": "boolean"
5108
- },
5109
- "dangerously-ignore-dbl-underscore-schema-rule": {
5110
- "hidden": true,
5111
- "name": "dangerously-ignore-dbl-underscore-schema-rule",
5112
- "allowNo": false,
5113
- "type": "boolean"
5114
5048
  }
5115
5049
  },
5116
5050
  "hasDynamicHelp": false,
5117
5051
  "hiddenAliases": [],
5118
- "id": "app:install",
5052
+ "id": "ai:actions:list",
5119
5053
  "pluginAlias": "@memberjunction/cli",
5120
5054
  "pluginName": "@memberjunction/cli",
5121
5055
  "pluginType": "core",
@@ -5125,29 +5059,78 @@
5125
5059
  "relativePath": [
5126
5060
  "dist",
5127
5061
  "commands",
5128
- "app",
5129
- "install.js"
5062
+ "ai",
5063
+ "actions",
5064
+ "list.js"
5130
5065
  ]
5131
5066
  },
5132
- "app:list": {
5067
+ "ai:actions:run": {
5133
5068
  "aliases": [],
5134
5069
  "args": {},
5135
- "description": "List all installed MJ Open Apps",
5070
+ "description": "Execute an AI action with parameters",
5136
5071
  "examples": [
5137
- "<%= config.bin %> app list"
5072
+ "<%= config.bin %> <%= command.id %> -n \"Get Weather\" --param \"Location=Boston\"",
5073
+ "<%= config.bin %> <%= command.id %> -n \"Get Stock Price\" --param \"Ticker=AAPL\"",
5074
+ "<%= config.bin %> <%= command.id %> -n \"Send Single Message\" --param \"To=user@example.com\" --param \"Subject=Test\" --param \"Body=Hello\" --param \"MessageType=Email\" --param \"Provider=SendGrid\"",
5075
+ "<%= config.bin %> <%= command.id %> -n \"Calculate Expression\" --param \"Expression=2+2*3\" --dry-run"
5138
5076
  ],
5139
5077
  "flags": {
5078
+ "name": {
5079
+ "char": "n",
5080
+ "description": "Action name",
5081
+ "name": "name",
5082
+ "required": true,
5083
+ "hasDynamicHelp": false,
5084
+ "multiple": false,
5085
+ "type": "option"
5086
+ },
5087
+ "param": {
5088
+ "char": "p",
5089
+ "description": "Action parameters in key=value format",
5090
+ "name": "param",
5091
+ "hasDynamicHelp": false,
5092
+ "multiple": true,
5093
+ "type": "option"
5094
+ },
5095
+ "dry-run": {
5096
+ "description": "Validate without executing",
5097
+ "name": "dry-run",
5098
+ "allowNo": false,
5099
+ "type": "boolean"
5100
+ },
5101
+ "output": {
5102
+ "char": "o",
5103
+ "description": "Output format",
5104
+ "name": "output",
5105
+ "default": "compact",
5106
+ "hasDynamicHelp": false,
5107
+ "multiple": false,
5108
+ "options": [
5109
+ "compact",
5110
+ "json",
5111
+ "table"
5112
+ ],
5113
+ "type": "option"
5114
+ },
5140
5115
  "verbose": {
5141
5116
  "char": "v",
5142
- "description": "Show detailed output",
5117
+ "description": "Show detailed execution information",
5143
5118
  "name": "verbose",
5144
5119
  "allowNo": false,
5145
5120
  "type": "boolean"
5121
+ },
5122
+ "timeout": {
5123
+ "description": "Execution timeout in milliseconds",
5124
+ "name": "timeout",
5125
+ "default": 300000,
5126
+ "hasDynamicHelp": false,
5127
+ "multiple": false,
5128
+ "type": "option"
5146
5129
  }
5147
5130
  },
5148
5131
  "hasDynamicHelp": false,
5149
5132
  "hiddenAliases": [],
5150
- "id": "app:list",
5133
+ "id": "ai:actions:run",
5151
5134
  "pluginAlias": "@memberjunction/cli",
5152
5135
  "pluginName": "@memberjunction/cli",
5153
5136
  "pluginType": "core",
@@ -5157,62 +5140,30 @@
5157
5140
  "relativePath": [
5158
5141
  "dist",
5159
5142
  "commands",
5160
- "app",
5161
- "list.js"
5143
+ "ai",
5144
+ "actions",
5145
+ "run.js"
5162
5146
  ]
5163
5147
  },
5164
- "app:remove": {
5148
+ "ai:prompts:list": {
5165
5149
  "aliases": [],
5166
- "args": {
5167
- "name": {
5168
- "description": "Name of the installed app to remove",
5169
- "name": "name",
5170
- "required": true
5171
- }
5172
- },
5173
- "description": "Remove an installed MJ Open App",
5150
+ "args": {},
5151
+ "description": "List available models for prompt execution",
5174
5152
  "examples": [
5175
- "<%= config.bin %> app remove acme-crm",
5176
- "<%= config.bin %> app remove acme-crm --keep-data",
5177
- "<%= config.bin %> app remove acme-crm --force"
5153
+ "<%= config.bin %> <%= command.id %>"
5178
5154
  ],
5179
5155
  "flags": {
5180
- "keep-data": {
5181
- "description": "Keep the database schema and data",
5182
- "name": "keep-data",
5183
- "allowNo": false,
5184
- "type": "boolean"
5185
- },
5186
- "force": {
5187
- "description": "Force removal even if other apps depend on this one",
5188
- "name": "force",
5189
- "allowNo": false,
5190
- "type": "boolean"
5191
- },
5192
- "yes": {
5193
- "char": "y",
5194
- "description": "Skip confirmation prompt",
5195
- "name": "yes",
5196
- "allowNo": false,
5197
- "type": "boolean"
5198
- },
5199
5156
  "verbose": {
5200
5157
  "char": "v",
5201
- "description": "Show detailed output",
5158
+ "description": "Show detailed model information",
5202
5159
  "name": "verbose",
5203
5160
  "allowNo": false,
5204
5161
  "type": "boolean"
5205
- },
5206
- "dangerously-ignore-dbl-underscore-schema-rule": {
5207
- "hidden": true,
5208
- "name": "dangerously-ignore-dbl-underscore-schema-rule",
5209
- "allowNo": false,
5210
- "type": "boolean"
5211
5162
  }
5212
5163
  },
5213
5164
  "hasDynamicHelp": false,
5214
5165
  "hiddenAliases": [],
5215
- "id": "app:remove",
5166
+ "id": "ai:prompts:list",
5216
5167
  "pluginAlias": "@memberjunction/cli",
5217
5168
  "pluginName": "@memberjunction/cli",
5218
5169
  "pluginType": "core",
@@ -5222,55 +5173,103 @@
5222
5173
  "relativePath": [
5223
5174
  "dist",
5224
5175
  "commands",
5225
- "app",
5226
- "remove.js"
5176
+ "ai",
5177
+ "prompts",
5178
+ "list.js"
5227
5179
  ]
5228
5180
  },
5229
- "app:upgrade": {
5181
+ "ai:prompts:run": {
5230
5182
  "aliases": [],
5231
- "args": {
5232
- "name": {
5233
- "description": "Name of the installed app to upgrade",
5234
- "name": "name",
5235
- "required": true
5236
- }
5237
- },
5238
- "description": "Upgrade an installed MJ Open App to a newer version",
5183
+ "args": {},
5184
+ "description": "Execute a direct prompt with an AI model",
5239
5185
  "examples": [
5240
- "<%= config.bin %> app upgrade acme-crm",
5241
- "<%= config.bin %> app upgrade acme-crm --version 1.3.0"
5186
+ "<%= config.bin %> <%= command.id %> -p \"Explain quantum computing in simple terms\"",
5187
+ "<%= config.bin %> <%= command.id %> -p \"Write a Python function to sort a list\" --model \"gpt-4\"",
5188
+ "<%= config.bin %> <%= command.id %> -p \"Translate to French: Hello world\" --temperature 0.3",
5189
+ "<%= config.bin %> <%= command.id %> -p \"Generate a haiku\" --system \"You are a poet\" --max-tokens 100"
5242
5190
  ],
5243
5191
  "flags": {
5244
- "version": {
5245
- "description": "Specific version to upgrade to (default: latest)",
5246
- "name": "version",
5192
+ "prompt": {
5193
+ "char": "p",
5194
+ "description": "The prompt to execute",
5195
+ "name": "prompt",
5196
+ "required": true,
5197
+ "hasDynamicHelp": false,
5198
+ "multiple": false,
5199
+ "type": "option"
5200
+ },
5201
+ "model": {
5202
+ "char": "m",
5203
+ "description": "AI model to use (e.g., gpt-4, claude-3-opus)",
5204
+ "name": "model",
5205
+ "hasDynamicHelp": false,
5206
+ "multiple": false,
5207
+ "type": "option"
5208
+ },
5209
+ "system": {
5210
+ "char": "s",
5211
+ "description": "System prompt to set context",
5212
+ "name": "system",
5247
5213
  "hasDynamicHelp": false,
5248
5214
  "multiple": false,
5249
5215
  "type": "option"
5250
5216
  },
5217
+ "temperature": {
5218
+ "char": "t",
5219
+ "description": "Temperature for response creativity (0.0-2.0)",
5220
+ "name": "temperature",
5221
+ "hasDynamicHelp": false,
5222
+ "multiple": false,
5223
+ "type": "option"
5224
+ },
5225
+ "max-tokens": {
5226
+ "description": "Maximum tokens for the response",
5227
+ "name": "max-tokens",
5228
+ "hasDynamicHelp": false,
5229
+ "multiple": false,
5230
+ "type": "option"
5231
+ },
5232
+ "configuration": {
5233
+ "char": "c",
5234
+ "description": "AI Configuration ID to use",
5235
+ "name": "configuration",
5236
+ "hasDynamicHelp": false,
5237
+ "multiple": false,
5238
+ "type": "option"
5239
+ },
5240
+ "output": {
5241
+ "char": "o",
5242
+ "description": "Output format",
5243
+ "name": "output",
5244
+ "default": "compact",
5245
+ "hasDynamicHelp": false,
5246
+ "multiple": false,
5247
+ "options": [
5248
+ "compact",
5249
+ "json",
5250
+ "table"
5251
+ ],
5252
+ "type": "option"
5253
+ },
5251
5254
  "verbose": {
5252
5255
  "char": "v",
5253
- "description": "Show detailed output",
5256
+ "description": "Show detailed execution information",
5254
5257
  "name": "verbose",
5255
5258
  "allowNo": false,
5256
5259
  "type": "boolean"
5257
5260
  },
5258
- "non-interactive": {
5259
- "description": "Skip interactive prompts; post-upgrade hooks use environment variables / defaults (for CI/headless upgrades)",
5260
- "name": "non-interactive",
5261
- "allowNo": false,
5262
- "type": "boolean"
5263
- },
5264
- "dangerously-ignore-dbl-underscore-schema-rule": {
5265
- "hidden": true,
5266
- "name": "dangerously-ignore-dbl-underscore-schema-rule",
5267
- "allowNo": false,
5268
- "type": "boolean"
5261
+ "timeout": {
5262
+ "description": "Execution timeout in milliseconds",
5263
+ "name": "timeout",
5264
+ "default": 300000,
5265
+ "hasDynamicHelp": false,
5266
+ "multiple": false,
5267
+ "type": "option"
5269
5268
  }
5270
5269
  },
5271
5270
  "hasDynamicHelp": false,
5272
5271
  "hiddenAliases": [],
5273
- "id": "app:upgrade",
5272
+ "id": "ai:prompts:run",
5274
5273
  "pluginAlias": "@memberjunction/cli",
5275
5274
  "pluginName": "@memberjunction/cli",
5276
5275
  "pluginType": "core",
@@ -5280,8 +5279,9 @@
5280
5279
  "relativePath": [
5281
5280
  "dist",
5282
5281
  "commands",
5283
- "app",
5284
- "upgrade.js"
5282
+ "ai",
5283
+ "prompts",
5284
+ "run.js"
5285
5285
  ]
5286
5286
  },
5287
5287
  "dev:workspace:clean": {
@@ -5927,5 +5927,5 @@
5927
5927
  ]
5928
5928
  }
5929
5929
  },
5930
- "version": "6.1.0-edge.3"
5930
+ "version": "6.1.0-edge.4"
5931
5931
  }