@memberjunction/cli 3.4.0 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +172 -832
- package/bin/dev.js +5 -6
- package/bin/run.js +14 -5
- package/dist/commands/ai/actions/list.d.ts +1 -0
- package/dist/commands/ai/actions/list.d.ts.map +1 -0
- package/dist/commands/ai/actions/list.js +14 -19
- package/dist/commands/ai/actions/list.js.map +1 -0
- package/dist/commands/ai/actions/run.d.ts +2 -1
- package/dist/commands/ai/actions/run.d.ts.map +1 -0
- package/dist/commands/ai/actions/run.js +24 -29
- package/dist/commands/ai/actions/run.js.map +1 -0
- package/dist/commands/ai/agents/list.d.ts +1 -0
- package/dist/commands/ai/agents/list.d.ts.map +1 -0
- package/dist/commands/ai/agents/list.js +14 -19
- package/dist/commands/ai/agents/list.js.map +1 -0
- package/dist/commands/ai/agents/run.d.ts +2 -1
- package/dist/commands/ai/agents/run.d.ts.map +1 -0
- package/dist/commands/ai/agents/run.js +20 -25
- package/dist/commands/ai/agents/run.js.map +1 -0
- package/dist/commands/ai/audit/agent-run.d.ts +7 -6
- package/dist/commands/ai/audit/agent-run.d.ts.map +1 -0
- package/dist/commands/ai/audit/agent-run.js +35 -63
- package/dist/commands/ai/audit/agent-run.js.map +1 -0
- package/dist/commands/ai/audit/index.d.ts +1 -0
- package/dist/commands/ai/audit/index.d.ts.map +1 -0
- package/dist/commands/ai/audit/index.js +5 -7
- package/dist/commands/ai/audit/index.js.map +1 -0
- package/dist/commands/ai/index.d.ts +1 -0
- package/dist/commands/ai/index.d.ts.map +1 -0
- package/dist/commands/ai/index.js +5 -7
- package/dist/commands/ai/index.js.map +1 -0
- package/dist/commands/ai/prompts/list.d.ts +1 -0
- package/dist/commands/ai/prompts/list.d.ts.map +1 -0
- package/dist/commands/ai/prompts/list.js +18 -23
- package/dist/commands/ai/prompts/list.js.map +1 -0
- package/dist/commands/ai/prompts/run.d.ts +6 -5
- package/dist/commands/ai/prompts/run.d.ts.map +1 -0
- package/dist/commands/ai/prompts/run.js +22 -27
- package/dist/commands/ai/prompts/run.js.map +1 -0
- package/dist/commands/bump/index.d.ts +2 -1
- package/dist/commands/bump/index.d.ts.map +1 -0
- package/dist/commands/bump/index.js +24 -52
- package/dist/commands/bump/index.js.map +1 -0
- package/dist/commands/clean/index.d.ts +3 -2
- package/dist/commands/clean/index.d.ts.map +1 -0
- package/dist/commands/clean/index.js +16 -22
- package/dist/commands/clean/index.js.map +1 -0
- package/dist/commands/codegen/index.d.ts +3 -2
- package/dist/commands/codegen/index.d.ts.map +1 -0
- package/dist/commands/codegen/index.js +14 -17
- package/dist/commands/codegen/index.js.map +1 -0
- package/dist/commands/codegen/manifest.d.ts +5 -2
- package/dist/commands/codegen/manifest.d.ts.map +1 -0
- package/dist/commands/codegen/manifest.js +35 -24
- package/dist/commands/codegen/manifest.js.map +1 -0
- package/dist/commands/dbdoc/analyze.d.ts +2 -1
- package/dist/commands/dbdoc/analyze.d.ts.map +1 -0
- package/dist/commands/dbdoc/analyze.js +11 -36
- package/dist/commands/dbdoc/analyze.js.map +1 -0
- package/dist/commands/dbdoc/export-sample-queries.d.ts +2 -1
- package/dist/commands/dbdoc/export-sample-queries.d.ts.map +1 -0
- package/dist/commands/dbdoc/export-sample-queries.js +19 -44
- package/dist/commands/dbdoc/export-sample-queries.js.map +1 -0
- package/dist/commands/dbdoc/export.d.ts +3 -2
- package/dist/commands/dbdoc/export.d.ts.map +1 -0
- package/dist/commands/dbdoc/export.js +20 -45
- package/dist/commands/dbdoc/export.js.map +1 -0
- package/dist/commands/dbdoc/generate-queries.d.ts +4 -3
- package/dist/commands/dbdoc/generate-queries.d.ts.map +1 -0
- package/dist/commands/dbdoc/generate-queries.js +14 -39
- package/dist/commands/dbdoc/generate-queries.js.map +1 -0
- package/dist/commands/dbdoc/index.d.ts +1 -0
- package/dist/commands/dbdoc/index.d.ts.map +1 -0
- package/dist/commands/dbdoc/index.js +5 -7
- package/dist/commands/dbdoc/index.js.map +1 -0
- package/dist/commands/dbdoc/init.d.ts +1 -0
- package/dist/commands/dbdoc/init.d.ts.map +1 -0
- package/dist/commands/dbdoc/init.js +7 -32
- package/dist/commands/dbdoc/init.js.map +1 -0
- package/dist/commands/dbdoc/reset.d.ts +1 -0
- package/dist/commands/dbdoc/reset.d.ts.map +1 -0
- package/dist/commands/dbdoc/reset.js +10 -35
- package/dist/commands/dbdoc/reset.js.map +1 -0
- package/dist/commands/dbdoc/status.d.ts +2 -1
- package/dist/commands/dbdoc/status.d.ts.map +1 -0
- package/dist/commands/dbdoc/status.js +10 -35
- package/dist/commands/dbdoc/status.js.map +1 -0
- package/dist/commands/install/index.d.ts +76 -75
- package/dist/commands/install/index.d.ts.map +1 -0
- package/dist/commands/install/index.js +81 -111
- package/dist/commands/install/index.js.map +1 -0
- package/dist/commands/migrate/index.d.ts +4 -3
- package/dist/commands/migrate/index.d.ts.map +1 -0
- package/dist/commands/migrate/index.js +23 -27
- package/dist/commands/migrate/index.js.map +1 -0
- package/dist/commands/querygen/export.d.ts +1 -0
- package/dist/commands/querygen/export.d.ts.map +1 -0
- package/dist/commands/querygen/export.js +15 -17
- package/dist/commands/querygen/export.js.map +1 -0
- package/dist/commands/querygen/generate.d.ts +8 -7
- package/dist/commands/querygen/generate.d.ts.map +1 -0
- package/dist/commands/querygen/generate.js +28 -30
- package/dist/commands/querygen/generate.js.map +1 -0
- package/dist/commands/querygen/validate.d.ts +1 -0
- package/dist/commands/querygen/validate.d.ts.map +1 -0
- package/dist/commands/querygen/validate.js +15 -17
- package/dist/commands/querygen/validate.js.map +1 -0
- package/dist/commands/sync/file-reset.d.ts +3 -2
- package/dist/commands/sync/file-reset.d.ts.map +1 -0
- package/dist/commands/sync/file-reset.js +36 -64
- package/dist/commands/sync/file-reset.js.map +1 -0
- package/dist/commands/sync/init.d.ts +1 -0
- package/dist/commands/sync/init.d.ts.map +1 -0
- package/dist/commands/sync/init.js +16 -21
- package/dist/commands/sync/init.js.map +1 -0
- package/dist/commands/sync/pull.d.ts +7 -6
- package/dist/commands/sync/pull.d.ts.map +1 -0
- package/dist/commands/sync/pull.js +46 -51
- package/dist/commands/sync/pull.js.map +1 -0
- package/dist/commands/sync/push.d.ts +5 -3
- package/dist/commands/sync/push.d.ts.map +1 -0
- package/dist/commands/sync/push.js +49 -49
- package/dist/commands/sync/push.js.map +1 -0
- package/dist/commands/sync/status.d.ts +4 -3
- package/dist/commands/sync/status.d.ts.map +1 -0
- package/dist/commands/sync/status.js +28 -33
- package/dist/commands/sync/status.js.map +1 -0
- package/dist/commands/sync/validate.d.ts +3 -2
- package/dist/commands/sync/validate.d.ts.map +1 -0
- package/dist/commands/sync/validate.js +31 -59
- package/dist/commands/sync/validate.js.map +1 -0
- package/dist/commands/sync/watch.d.ts +3 -2
- package/dist/commands/sync/watch.d.ts.map +1 -0
- package/dist/commands/sync/watch.js +34 -63
- package/dist/commands/sync/watch.js.map +1 -0
- package/dist/commands/test/compare.d.ts +6 -5
- package/dist/commands/test/compare.d.ts.map +1 -0
- package/dist/commands/test/compare.js +20 -22
- package/dist/commands/test/compare.js.map +1 -0
- package/dist/commands/test/history.d.ts +6 -5
- package/dist/commands/test/history.d.ts.map +1 -0
- package/dist/commands/test/history.js +17 -19
- package/dist/commands/test/history.js.map +1 -0
- package/dist/commands/test/index.d.ts +1 -0
- package/dist/commands/test/index.d.ts.map +1 -0
- package/dist/commands/test/index.js +6 -8
- package/dist/commands/test/index.js.map +1 -0
- package/dist/commands/test/list.d.ts +5 -4
- package/dist/commands/test/list.d.ts.map +1 -0
- package/dist/commands/test/list.js +18 -20
- package/dist/commands/test/list.js.map +1 -0
- package/dist/commands/test/run.d.ts +5 -4
- package/dist/commands/test/run.d.ts.map +1 -0
- package/dist/commands/test/run.js +19 -21
- package/dist/commands/test/run.js.map +1 -0
- package/dist/commands/test/suite.d.ts +4 -3
- package/dist/commands/test/suite.d.ts.map +1 -0
- package/dist/commands/test/suite.js +17 -19
- package/dist/commands/test/suite.js.map +1 -0
- package/dist/commands/test/validate.d.ts +4 -3
- package/dist/commands/test/validate.d.ts.map +1 -0
- package/dist/commands/test/validate.js +19 -21
- package/dist/commands/test/validate.js.map +1 -0
- package/dist/config.d.ts +54 -86
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +55 -61
- package/dist/config.js.map +1 -0
- package/dist/hooks/init.d.ts +1 -0
- package/dist/hooks/init.d.ts.map +1 -0
- package/dist/hooks/init.js +5 -29
- package/dist/hooks/init.js.map +1 -0
- package/dist/hooks/prerun.d.ts +1 -0
- package/dist/hooks/prerun.d.ts.map +1 -0
- package/dist/hooks/prerun.js +4 -8
- package/dist/hooks/prerun.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -5
- package/dist/index.js.map +1 -0
- package/oclif.manifest.json +96 -74
- package/package.json +32 -30
|
@@ -1,39 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const core_1 = require("@oclif/core");
|
|
30
|
-
const ai_cli_1 = require("@memberjunction/ai-cli");
|
|
31
|
-
const ora_classic_1 = __importDefault(require("ora-classic"));
|
|
32
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
33
|
-
const fs = __importStar(require("fs/promises"));
|
|
34
|
-
class AgentRun extends core_1.Command {
|
|
35
|
-
static description = 'Audit and analyze AI agent execution runs for debugging and performance analysis';
|
|
36
|
-
static examples = [
|
|
1
|
+
import { Command, Flags, Args } from '@oclif/core';
|
|
2
|
+
import { AgentAuditService } from '@memberjunction/ai-cli';
|
|
3
|
+
import ora from 'ora-classic';
|
|
4
|
+
import chalk from 'chalk';
|
|
5
|
+
import * as fs from 'fs/promises';
|
|
6
|
+
export default class AgentRun extends Command {
|
|
7
|
+
static { this.description = 'Audit and analyze AI agent execution runs for debugging and performance analysis'; }
|
|
8
|
+
static { this.examples = [
|
|
37
9
|
// Summary mode
|
|
38
10
|
'<%= config.bin %> <%= command.id %> abc-123-def-456',
|
|
39
11
|
'<%= config.bin %> <%= command.id %> abc-123-def-456 --output=markdown',
|
|
@@ -47,95 +19,95 @@ class AgentRun extends core_1.Command {
|
|
|
47
19
|
'<%= config.bin %> <%= command.id %> --list --status failed --days 7',
|
|
48
20
|
// Export mode
|
|
49
21
|
'<%= config.bin %> <%= command.id %> abc-123-def-456 --export full --file report.json',
|
|
50
|
-
];
|
|
51
|
-
static flags = {
|
|
22
|
+
]; }
|
|
23
|
+
static { this.flags = {
|
|
52
24
|
// Output format
|
|
53
|
-
output:
|
|
25
|
+
output: Flags.string({
|
|
54
26
|
char: 'o',
|
|
55
27
|
description: 'Output format',
|
|
56
28
|
options: ['compact', 'json', 'table', 'markdown'],
|
|
57
29
|
default: 'compact',
|
|
58
30
|
}),
|
|
59
31
|
// Step detail mode
|
|
60
|
-
step:
|
|
32
|
+
step: Flags.integer({
|
|
61
33
|
char: 's',
|
|
62
34
|
description: 'Show details for specific step number (1-based index)',
|
|
63
35
|
exclusive: ['list', 'errors'],
|
|
64
36
|
}),
|
|
65
|
-
detail:
|
|
37
|
+
detail: Flags.string({
|
|
66
38
|
char: 'd',
|
|
67
39
|
description: 'Detail level for step output (default: standard)',
|
|
68
40
|
options: ['minimal', 'standard', 'detailed', 'full'],
|
|
69
41
|
dependsOn: ['step'],
|
|
70
42
|
}),
|
|
71
43
|
// Error analysis mode
|
|
72
|
-
errors:
|
|
44
|
+
errors: Flags.boolean({
|
|
73
45
|
char: 'e',
|
|
74
46
|
description: 'Show only error details and context',
|
|
75
47
|
default: false,
|
|
76
48
|
exclusive: ['step', 'list'],
|
|
77
49
|
}),
|
|
78
50
|
// List mode
|
|
79
|
-
list:
|
|
51
|
+
list: Flags.boolean({
|
|
80
52
|
char: 'l',
|
|
81
53
|
description: 'List recent agent runs',
|
|
82
54
|
default: false,
|
|
83
55
|
exclusive: ['step', 'errors'],
|
|
84
56
|
}),
|
|
85
|
-
agent:
|
|
57
|
+
agent: Flags.string({
|
|
86
58
|
char: 'a',
|
|
87
59
|
description: 'Filter by agent name',
|
|
88
60
|
dependsOn: ['list'],
|
|
89
61
|
}),
|
|
90
|
-
status:
|
|
62
|
+
status: Flags.string({
|
|
91
63
|
description: 'Filter by run status',
|
|
92
64
|
options: ['success', 'failed', 'running', 'all'],
|
|
93
65
|
default: 'all',
|
|
94
66
|
dependsOn: ['list'],
|
|
95
67
|
}),
|
|
96
|
-
days:
|
|
68
|
+
days: Flags.integer({
|
|
97
69
|
description: 'Number of days to look back',
|
|
98
70
|
default: 7,
|
|
99
71
|
dependsOn: ['list'],
|
|
100
72
|
}),
|
|
101
|
-
limit:
|
|
73
|
+
limit: Flags.integer({
|
|
102
74
|
description: 'Maximum number of runs to return',
|
|
103
75
|
default: 50,
|
|
104
76
|
dependsOn: ['list'],
|
|
105
77
|
}),
|
|
106
78
|
// Export mode
|
|
107
|
-
export:
|
|
79
|
+
export: Flags.string({
|
|
108
80
|
description: 'Export full data to file',
|
|
109
81
|
options: ['full', 'summary', 'steps'],
|
|
110
82
|
dependsOn: ['file'],
|
|
111
83
|
}),
|
|
112
|
-
file:
|
|
84
|
+
file: Flags.string({
|
|
113
85
|
char: 'f',
|
|
114
86
|
description: 'Output file path for export',
|
|
115
87
|
}),
|
|
116
88
|
// Truncation control
|
|
117
|
-
'max-tokens':
|
|
89
|
+
'max-tokens': Flags.integer({
|
|
118
90
|
description: 'Maximum tokens per field (0 = no limit)',
|
|
119
91
|
default: 5000,
|
|
120
92
|
}),
|
|
121
93
|
// Verbose mode
|
|
122
|
-
verbose:
|
|
94
|
+
verbose: Flags.boolean({
|
|
123
95
|
char: 'v',
|
|
124
96
|
description: 'Show detailed diagnostic information',
|
|
125
97
|
default: false,
|
|
126
98
|
}),
|
|
127
|
-
};
|
|
128
|
-
static args = {
|
|
129
|
-
runId:
|
|
99
|
+
}; }
|
|
100
|
+
static { this.args = {
|
|
101
|
+
runId: Args.string({
|
|
130
102
|
description: 'AI Agent Run ID to audit (UUID)',
|
|
131
103
|
required: false, // Optional because --list mode doesn't need it
|
|
132
104
|
}),
|
|
133
|
-
};
|
|
105
|
+
}; }
|
|
134
106
|
async run() {
|
|
135
107
|
const { args, flags } = await this.parse(AgentRun);
|
|
136
|
-
const spinner = (
|
|
108
|
+
const spinner = ora();
|
|
137
109
|
try {
|
|
138
|
-
const service = new
|
|
110
|
+
const service = new AgentAuditService();
|
|
139
111
|
// MODE 1: List recent runs
|
|
140
112
|
if (flags.list) {
|
|
141
113
|
spinner.start('Loading recent agent runs...');
|
|
@@ -181,8 +153,8 @@ class AgentRun extends core_1.Command {
|
|
|
181
153
|
const exportData = await service.exportRun(args.runId, flags.export);
|
|
182
154
|
await fs.writeFile(flags.file, JSON.stringify(exportData, null, 2), 'utf8');
|
|
183
155
|
spinner.stop();
|
|
184
|
-
this.log(
|
|
185
|
-
this.log(
|
|
156
|
+
this.log(chalk.green(`✓ Full audit data exported to ${flags.file}`));
|
|
157
|
+
this.log(chalk.dim(` File size: ${(JSON.stringify(exportData).length / 1024).toFixed(1)} KB`));
|
|
186
158
|
process.exit(0);
|
|
187
159
|
return;
|
|
188
160
|
}
|
|
@@ -195,19 +167,19 @@ class AgentRun extends core_1.Command {
|
|
|
195
167
|
spinner.stop();
|
|
196
168
|
this.log(service.formatRunSummary(summary, flags.output));
|
|
197
169
|
if (flags.verbose) {
|
|
198
|
-
this.log(
|
|
199
|
-
this.log(
|
|
170
|
+
this.log(chalk.dim('\n💡 Tip: Use --step <N> to see details for a specific step'));
|
|
171
|
+
this.log(chalk.dim('💡 Tip: Use --errors to see only error information'));
|
|
200
172
|
}
|
|
201
173
|
process.exit(0);
|
|
202
174
|
}
|
|
203
175
|
catch (error) {
|
|
204
176
|
spinner.fail('Audit failed');
|
|
205
177
|
if (flags.verbose && error instanceof Error) {
|
|
206
|
-
this.log(
|
|
178
|
+
this.log(chalk.red('\nError Details:'));
|
|
207
179
|
this.log(error.stack || error.message);
|
|
208
180
|
}
|
|
209
181
|
this.error(error);
|
|
210
182
|
}
|
|
211
183
|
}
|
|
212
184
|
}
|
|
213
|
-
|
|
185
|
+
//# sourceMappingURL=agent-run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../../../src/commands/ai/audit/agent-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;aACpC,gBAAW,GAAG,kFAAkF,CAAC;aAEjG,aAAQ,GAAG;QAChB,eAAe;QACf,qDAAqD;QACrD,uEAAuE;QAEvE,mBAAmB;QACnB,8DAA8D;QAC9D,4EAA4E;QAE5E,iBAAiB;QACjB,8DAA8D;QAE9D,mBAAmB;QACnB,gFAAgF;QAChF,qEAAqE;QAErE,cAAc;QACd,sFAAsF;KACvF,CAAC;aAEK,UAAK,GAAG;QACb,gBAAgB;QAChB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,eAAe;YAC5B,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC;YACjD,OAAO,EAAE,SAAS;SACnB,CAAC;QAEF,mBAAmB;QACnB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,uDAAuD;YACpE,SAAS,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;SAC9B,CAAC;QAEF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,kDAAkD;YAC/D,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC;YACpD,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;QAEF,sBAAsB;QACtB,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;YACpB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,qCAAqC;YAClD,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;SAC5B,CAAC;QAEF,YAAY;QACZ,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,wBAAwB;YACrC,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;SAC9B,CAAC;QAEF,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,sBAAsB;YACnC,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;QAEF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,WAAW,EAAE,sBAAsB;YACnC,OAAO,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC;YAChD,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;QAEF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;QAEF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,WAAW,EAAE,kCAAkC;YAC/C,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;QAEF,cAAc;QACd,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;YACrC,SAAS,EAAE,CAAC,MAAM,CAAC;SACpB,CAAC;QAEF,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,6BAA6B;SAC3C,CAAC;QAEF,qBAAqB;QACrB,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC;YAC1B,WAAW,EAAE,yCAAyC;YACtD,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,eAAe;QACf,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,sCAAsC;YACnD,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAC;aAEK,SAAI,GAAG;QACZ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,KAAK,EAAE,+CAA+C;SACjE,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAE,CAAC;YAExC,2BAA2B;YAC3B,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC9C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC;oBACxC,SAAS,EAAE,KAAK,CAAC,KAAK;oBACtB,MAAM,EAAE,KAAK,CAAC,MAAkD;oBAChE,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,EAAE,CAAC;gBAEf,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,MAAa,CAAC,CAAC,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YAED,oCAAoC;YACpC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACnE,CAAC;YAED,2BAA2B;YAC3B,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,gBAAgB,KAAK,CAAC,IAAI,aAAa,CAAC,CAAC;gBACvD,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,aAAa,CAC5C,IAAI,CAAC,KAAK,EACV,KAAK,CAAC,IAAI,EACV;oBACE,WAAW,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,UAAU,CAAiD;oBACzF,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;iBAC/B,CACF,CAAC;gBACF,OAAO,CAAC,IAAI,EAAE,CAAC;gBAEf,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,MAAa,CAAC,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YAED,8BAA8B;YAC9B,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBACrC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9D,OAAO,CAAC,IAAI,EAAE,CAAC;gBAEf,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,aAAa,EAAE,KAAK,CAAC,MAAa,CAAC,CAAC,CAAC;gBAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YAED,sBAAsB;YACtB,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC/B,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC9C,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,MAAsC,CAAC,CAAC;gBACrG,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC5E,OAAO,CAAC,IAAI,EAAE,CAAC;gBAEf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACrE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YAED,iCAAiC;YACjC,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE;gBACtD,eAAe,EAAE,IAAI;gBACrB,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;aAC/B,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,EAAE,CAAC;YAEf,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAa,CAAC,CAAC,CAAC;YAEjE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC,CAAC;gBACnF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC,CAAC;YAC5E,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAE7B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC5C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,KAAc,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/ai/audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,MAAM,CAAC,WAAW,SAAkG;IAEpH,MAAM,CAAC,MAAM,UAAS;IAEhB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAI3B"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
static description = 'Analyze and audit AI agent runs, prompts, and actions for debugging and performance analysis';
|
|
6
|
-
static hidden = false;
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class Audit extends Command {
|
|
3
|
+
static { this.description = 'Analyze and audit AI agent runs, prompts, and actions for debugging and performance analysis'; }
|
|
4
|
+
static { this.hidden = false; }
|
|
7
5
|
async run() {
|
|
8
6
|
// This command just displays help for the audit topic
|
|
9
7
|
await this.config.runCommand('help', ['ai', 'audit']);
|
|
10
8
|
}
|
|
11
9
|
}
|
|
12
|
-
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/ai/audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;aACjC,gBAAW,GAAG,8FAA8F,CAAC;aAE7G,WAAM,GAAG,KAAK,CAAC;IAEtB,KAAK,CAAC,GAAG;QACP,sDAAsD;QACtD,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACxD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,EAAG,SAAQ,OAAO;IACrC,MAAM,CAAC,WAAW,SAAmC;IAErD,MAAM,CAAC,MAAM,UAAS;IAEhB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAI3B"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
static description = 'Execute AI agents and actions';
|
|
6
|
-
static hidden = false;
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class AI extends Command {
|
|
3
|
+
static { this.description = 'Execute AI agents and actions'; }
|
|
4
|
+
static { this.hidden = false; }
|
|
7
5
|
async run() {
|
|
8
6
|
// This command just displays help for the ai topic
|
|
9
7
|
await this.config.runCommand('help', ['ai']);
|
|
10
8
|
}
|
|
11
9
|
}
|
|
12
|
-
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,EAAG,SAAQ,OAAO;aAC9B,gBAAW,GAAG,+BAA+B,CAAC;aAE9C,WAAM,GAAG,KAAK,CAAC;IAEtB,KAAK,CAAC,GAAG;QACP,mDAAmD;QACnD,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/commands/ai/prompts/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAK7C,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,OAAO;IAC9C,MAAM,CAAC,WAAW,SAAgD;IAElE,MAAM,CAAC,QAAQ,WAEb;IAEF,MAAM,CAAC,KAAK;;MAKV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6B3B"}
|
|
@@ -1,39 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
-
const ora_classic_1 = __importDefault(require("ora-classic"));
|
|
10
|
-
class PromptsList extends core_1.Command {
|
|
11
|
-
static description = 'List available models for prompt execution';
|
|
12
|
-
static examples = [
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { PromptService } from '@memberjunction/ai-cli';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import ora from 'ora-classic';
|
|
5
|
+
export default class PromptsList extends Command {
|
|
6
|
+
static { this.description = 'List available models for prompt execution'; }
|
|
7
|
+
static { this.examples = [
|
|
13
8
|
'<%= config.bin %> <%= command.id %>',
|
|
14
|
-
];
|
|
15
|
-
static flags = {
|
|
16
|
-
verbose:
|
|
9
|
+
]; }
|
|
10
|
+
static { this.flags = {
|
|
11
|
+
verbose: Flags.boolean({
|
|
17
12
|
char: 'v',
|
|
18
13
|
description: 'Show detailed model information',
|
|
19
14
|
}),
|
|
20
|
-
};
|
|
15
|
+
}; }
|
|
21
16
|
async run() {
|
|
22
17
|
const { flags } = await this.parse(PromptsList);
|
|
23
|
-
const spinner = (
|
|
18
|
+
const spinner = ora();
|
|
24
19
|
try {
|
|
25
20
|
spinner.start('Loading available models...');
|
|
26
|
-
const service = new
|
|
21
|
+
const service = new PromptService();
|
|
27
22
|
const models = await service.listAvailableModels();
|
|
28
23
|
spinner.stop();
|
|
29
|
-
this.log(
|
|
24
|
+
this.log(chalk.bold(`\nAvailable AI Models (${models.length}):\n`));
|
|
30
25
|
for (const model of models) {
|
|
31
|
-
this.log(`${
|
|
26
|
+
this.log(`${chalk.cyan(model.name)} ${chalk.gray(`(${model.vendor})`)}`);
|
|
32
27
|
if (flags.verbose && model.description) {
|
|
33
|
-
this.log(` ${
|
|
28
|
+
this.log(` ${chalk.dim(model.description)}`);
|
|
34
29
|
}
|
|
35
30
|
}
|
|
36
|
-
this.log(
|
|
31
|
+
this.log(chalk.gray('\nUse any of these models with the --model flag when running prompts'));
|
|
37
32
|
// Force exit after completion
|
|
38
33
|
process.exit(0);
|
|
39
34
|
}
|
|
@@ -43,4 +38,4 @@ class PromptsList extends core_1.Command {
|
|
|
43
38
|
}
|
|
44
39
|
}
|
|
45
40
|
}
|
|
46
|
-
|
|
41
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/ai/prompts/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,aAAa,CAAC;AAE9B,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,OAAO;aACvC,gBAAW,GAAG,4CAA4C,CAAC;aAE3D,aAAQ,GAAG;QAChB,qCAAqC;KACtC,CAAC;aAEK,UAAK,GAAG;QACb,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,iCAAiC;SAC/C,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACnD,OAAO,CAAC,IAAI,EAAE,CAAC;YAEf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC;YAEpE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;gBACzE,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;oBACvC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC,CAAC;YAE7F,8BAA8B;YAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAElB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,KAAc,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC"}
|
|
@@ -4,14 +4,15 @@ export default class PromptsRun extends Command {
|
|
|
4
4
|
static examples: string[];
|
|
5
5
|
static flags: {
|
|
6
6
|
prompt: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
7
|
-
model: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
8
|
-
system: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
9
|
-
temperature: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
10
|
-
'max-tokens': import("@oclif/core/lib/interfaces").OptionFlag<number
|
|
11
|
-
configuration: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
7
|
+
model: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
system: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
temperature: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
'max-tokens': import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
configuration: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
12
|
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
13
|
verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
14
14
|
timeout: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
15
15
|
};
|
|
16
16
|
run(): Promise<void>;
|
|
17
17
|
}
|
|
18
|
+
//# sourceMappingURL=run.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/commands/ai/prompts/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAK7C,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO;IAC7C,MAAM,CAAC,WAAW,SAA8C;IAEhE,MAAM,CAAC,QAAQ,WAKb;IAEF,MAAM,CAAC,KAAK;;;;;;;;;;MAuCV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6C3B"}
|
|
@@ -1,65 +1,60 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const ai_cli_1 = require("@memberjunction/ai-cli");
|
|
8
|
-
const ora_classic_1 = __importDefault(require("ora-classic"));
|
|
9
|
-
class PromptsRun extends core_1.Command {
|
|
10
|
-
static description = 'Execute a direct prompt with an AI model';
|
|
11
|
-
static examples = [
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { PromptService, OutputFormatter } from '@memberjunction/ai-cli';
|
|
3
|
+
import ora from 'ora-classic';
|
|
4
|
+
export default class PromptsRun extends Command {
|
|
5
|
+
static { this.description = 'Execute a direct prompt with an AI model'; }
|
|
6
|
+
static { this.examples = [
|
|
12
7
|
'<%= config.bin %> <%= command.id %> -p "Explain quantum computing in simple terms"',
|
|
13
8
|
'<%= config.bin %> <%= command.id %> -p "Write a Python function to sort a list" --model "gpt-4"',
|
|
14
9
|
'<%= config.bin %> <%= command.id %> -p "Translate to French: Hello world" --temperature 0.3',
|
|
15
10
|
'<%= config.bin %> <%= command.id %> -p "Generate a haiku" --system "You are a poet" --max-tokens 100',
|
|
16
|
-
];
|
|
17
|
-
static flags = {
|
|
18
|
-
prompt:
|
|
11
|
+
]; }
|
|
12
|
+
static { this.flags = {
|
|
13
|
+
prompt: Flags.string({
|
|
19
14
|
char: 'p',
|
|
20
15
|
description: 'The prompt to execute',
|
|
21
16
|
required: true,
|
|
22
17
|
}),
|
|
23
|
-
model:
|
|
18
|
+
model: Flags.string({
|
|
24
19
|
char: 'm',
|
|
25
20
|
description: 'AI model to use (e.g., gpt-4, claude-3-opus)',
|
|
26
21
|
}),
|
|
27
|
-
system:
|
|
22
|
+
system: Flags.string({
|
|
28
23
|
char: 's',
|
|
29
24
|
description: 'System prompt to set context',
|
|
30
25
|
}),
|
|
31
|
-
temperature:
|
|
26
|
+
temperature: Flags.string({
|
|
32
27
|
char: 't',
|
|
33
28
|
description: 'Temperature for response creativity (0.0-2.0)',
|
|
34
29
|
}),
|
|
35
|
-
'max-tokens':
|
|
30
|
+
'max-tokens': Flags.integer({
|
|
36
31
|
description: 'Maximum tokens for the response',
|
|
37
32
|
}),
|
|
38
|
-
configuration:
|
|
33
|
+
configuration: Flags.string({
|
|
39
34
|
char: 'c',
|
|
40
35
|
description: 'AI Configuration ID to use',
|
|
41
36
|
}),
|
|
42
|
-
output:
|
|
37
|
+
output: Flags.string({
|
|
43
38
|
char: 'o',
|
|
44
39
|
description: 'Output format',
|
|
45
40
|
options: ['compact', 'json', 'table'],
|
|
46
41
|
default: 'compact',
|
|
47
42
|
}),
|
|
48
|
-
verbose:
|
|
43
|
+
verbose: Flags.boolean({
|
|
49
44
|
char: 'v',
|
|
50
45
|
description: 'Show detailed execution information',
|
|
51
46
|
}),
|
|
52
|
-
timeout:
|
|
47
|
+
timeout: Flags.integer({
|
|
53
48
|
description: 'Execution timeout in milliseconds',
|
|
54
49
|
default: 300000, // 5 minutes
|
|
55
50
|
}),
|
|
56
|
-
};
|
|
51
|
+
}; }
|
|
57
52
|
async run() {
|
|
58
53
|
const { flags } = await this.parse(PromptsRun);
|
|
59
|
-
const service = new
|
|
60
|
-
const formatter = new
|
|
54
|
+
const service = new PromptService();
|
|
55
|
+
const formatter = new OutputFormatter(flags.output);
|
|
61
56
|
try {
|
|
62
|
-
const spinner = (
|
|
57
|
+
const spinner = ora();
|
|
63
58
|
// Show what model will be used
|
|
64
59
|
if (flags.model) {
|
|
65
60
|
spinner.start(`Executing prompt with model: ${flags.model}`);
|
|
@@ -96,4 +91,4 @@ class PromptsRun extends core_1.Command {
|
|
|
96
91
|
}
|
|
97
92
|
}
|
|
98
93
|
}
|
|
99
|
-
|
|
94
|
+
//# sourceMappingURL=run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../src/commands/ai/prompts/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,9 +8,10 @@ export default class Bump extends Command {
|
|
|
8
8
|
static flags: {
|
|
9
9
|
verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
recursive: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
-
tag: import("@oclif/core/lib/interfaces").OptionFlag<string
|
|
11
|
+
tag: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
12
|
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
13
13
|
dry: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
14
14
|
};
|
|
15
15
|
run(): Promise<void>;
|
|
16
16
|
}
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/bump/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAuB7C,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAA8C;IAEhE,MAAM,CAAC,QAAQ;;;QAcb;IAEF,MAAM,CAAC,KAAK;;;;;;MAMV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6D3B"}
|
|
@@ -1,40 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const core_1 = require("@oclif/core");
|
|
30
|
-
const node_fs_1 = require("node:fs");
|
|
31
|
-
const zod_1 = require("zod");
|
|
32
|
-
const fg = __importStar(require("fast-glob"));
|
|
33
|
-
const ora_classic_1 = __importDefault(require("ora-classic"));
|
|
34
|
-
const node_path_1 = require("node:path");
|
|
1
|
+
import { Command, Flags } from '@oclif/core';
|
|
2
|
+
import { readFileSync, writeFileSync } from 'node:fs';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import fg from 'fast-glob';
|
|
5
|
+
import ora from 'ora-classic';
|
|
6
|
+
import { dirname } from 'node:path';
|
|
35
7
|
// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
|
|
36
8
|
const semverRegex = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
|
|
37
|
-
const tagSchema =
|
|
9
|
+
const tagSchema = z
|
|
38
10
|
.string()
|
|
39
11
|
.optional()
|
|
40
12
|
.transform((tag) => tag?.replace(/^v/, ''))
|
|
@@ -44,9 +16,9 @@ const tagSchema = zod_1.z
|
|
|
44
16
|
* @returns No return value
|
|
45
17
|
*/
|
|
46
18
|
const suppressLogging = () => null;
|
|
47
|
-
class Bump extends
|
|
48
|
-
static description = 'Bumps MemberJunction dependency versions';
|
|
49
|
-
static examples = [
|
|
19
|
+
export default class Bump extends Command {
|
|
20
|
+
static { this.description = 'Bumps MemberJunction dependency versions'; }
|
|
21
|
+
static { this.examples = [
|
|
50
22
|
{
|
|
51
23
|
command: '<%= config.bin %> <%= command.id %>',
|
|
52
24
|
description: "Bump all @memberjunction/* dependencies in the current directory's package.json to the CLI version",
|
|
@@ -59,14 +31,14 @@ class Bump extends core_1.Command {
|
|
|
59
31
|
command: '<%= config.bin %> <%= command.id %> -rqt v2.10.0 | xargs -n1 -I{} npm install --prefix {}',
|
|
60
32
|
description: 'Recursively bump all @memberjunction/* dependencies in all packages to version v2.10.0 and output only the paths containing the updated package.json files. Pipe the output to xargs to run npm install in each directory and update the package-lock.json files as well.',
|
|
61
33
|
},
|
|
62
|
-
];
|
|
63
|
-
static flags = {
|
|
64
|
-
verbose:
|
|
65
|
-
recursive:
|
|
66
|
-
tag:
|
|
67
|
-
quiet:
|
|
68
|
-
dry:
|
|
69
|
-
};
|
|
34
|
+
]; }
|
|
35
|
+
static { this.flags = {
|
|
36
|
+
verbose: Flags.boolean({ char: 'v', description: 'Enable additional logging' }),
|
|
37
|
+
recursive: Flags.boolean({ char: 'r', description: 'Bump version in current directory and all subdirectories' }),
|
|
38
|
+
tag: Flags.string({ char: 't', description: 'Version tag to bump target for bump (e.g. v2.10.0), defaults to the CLI version' }),
|
|
39
|
+
quiet: Flags.boolean({ char: 'q', description: 'Only output paths for updated packages' }),
|
|
40
|
+
dry: Flags.boolean({ char: 'd', description: 'Dry run, do not write changes to package.json files' }),
|
|
41
|
+
}; }
|
|
70
42
|
async run() {
|
|
71
43
|
const { flags } = await this.parse(Bump);
|
|
72
44
|
const verboseLogger = flags.verbose && !flags.quiet ? this.log.bind(this) : suppressLogging;
|
|
@@ -91,25 +63,25 @@ class Bump extends core_1.Command {
|
|
|
91
63
|
const skipped = [];
|
|
92
64
|
const mjRegx = /"@memberjunction\/([^"]+)":(\s*)("[^"]+")/g;
|
|
93
65
|
const banner = 'Bumping packages... ';
|
|
94
|
-
const spinner = (
|
|
66
|
+
const spinner = ora(banner);
|
|
95
67
|
spinner.start();
|
|
96
68
|
normalLogger('');
|
|
97
69
|
try {
|
|
98
70
|
for (let i = 0; i < packageJsonFiles.length; i++) {
|
|
99
71
|
const packageJson = `./${packageJsonFiles[i]}`;
|
|
100
|
-
const packageJsonContents =
|
|
72
|
+
const packageJsonContents = readFileSync(packageJson).toString();
|
|
101
73
|
if (!mjRegx.test(packageJsonContents)) {
|
|
102
74
|
skipped.push(packageJson);
|
|
103
75
|
continue;
|
|
104
76
|
}
|
|
105
|
-
verboseLogger(`\tBumping ${
|
|
77
|
+
verboseLogger(`\tBumping ${dirname(packageJson)}`);
|
|
106
78
|
spinner.text = `${banner} ${i + 1 - skipped.length}/${packageJsonFiles.length - skipped.length}`;
|
|
107
79
|
const bumpedPackageJson = packageJsonContents.replaceAll(mjRegx, `"@memberjunction/$1":$2"${targetVersion}"`);
|
|
108
80
|
if (!flags.dry) {
|
|
109
|
-
|
|
81
|
+
writeFileSync(packageJson, bumpedPackageJson);
|
|
110
82
|
}
|
|
111
83
|
// In quiet mode, we only output the paths of the updated package.json files so they can be piped to another command
|
|
112
|
-
quietLogger(
|
|
84
|
+
quietLogger(dirname(packageJson));
|
|
113
85
|
}
|
|
114
86
|
spinner.succeed(`Bumped ${packageJsonFiles.length - skipped.length}/${packageJsonFiles.length} packages`);
|
|
115
87
|
}
|
|
@@ -119,4 +91,4 @@ class Bump extends core_1.Command {
|
|
|
119
91
|
}
|
|
120
92
|
}
|
|
121
93
|
}
|
|
122
|
-
|
|
94
|
+
//# sourceMappingURL=index.js.map
|