@vertesia/cli 1.3.0 → 1.4.0-dev.20260615.042549Z
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/lib/agent-context.d.ts +8 -2
- package/lib/agent-context.d.ts.map +1 -1
- package/lib/agent-context.js +9 -13
- package/lib/agent-context.js.map +1 -1
- package/lib/agents/index.d.ts +3 -0
- package/lib/agents/index.d.ts.map +1 -0
- package/lib/agents/index.js +555 -0
- package/lib/agents/index.js.map +1 -0
- package/lib/apps/commands.d.ts +25 -10
- package/lib/apps/commands.d.ts.map +1 -1
- package/lib/apps/commands.js +34 -26
- package/lib/apps/commands.js.map +1 -1
- package/lib/apps/index.d.ts +1 -1
- package/lib/apps/index.d.ts.map +1 -1
- package/lib/apps/index.js +40 -41
- package/lib/apps/index.js.map +1 -1
- package/lib/artifacts/commands.d.ts +13 -5
- package/lib/artifacts/commands.d.ts.map +1 -1
- package/lib/artifacts/commands.js +10 -10
- package/lib/artifacts/commands.js.map +1 -1
- package/lib/artifacts/index.d.ts +1 -1
- package/lib/artifacts/index.d.ts.map +1 -1
- package/lib/artifacts/index.js +22 -17
- package/lib/artifacts/index.js.map +1 -1
- package/lib/client.d.ts +2 -2
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +45 -21
- package/lib/client.js.map +1 -1
- package/lib/data/commands.d.ts +16 -3
- package/lib/data/commands.d.ts.map +1 -1
- package/lib/data/commands.js +36 -43
- package/lib/data/commands.js.map +1 -1
- package/lib/data/index.d.ts +1 -1
- package/lib/data/index.d.ts.map +1 -1
- package/lib/data/index.js +14 -15
- package/lib/data/index.js.map +1 -1
- package/lib/envs/index.d.ts +2 -2
- package/lib/envs/index.d.ts.map +1 -1
- package/lib/envs/index.js +12 -10
- package/lib/envs/index.js.map +1 -1
- package/lib/iam/commands.d.ts +15 -3
- package/lib/iam/commands.d.ts.map +1 -1
- package/lib/iam/commands.js +27 -9
- package/lib/iam/commands.js.map +1 -1
- package/lib/iam/index.d.ts +1 -1
- package/lib/iam/index.d.ts.map +1 -1
- package/lib/iam/index.js +2 -3
- package/lib/iam/index.js.map +1 -1
- package/lib/index.js +157 -122
- package/lib/index.js.map +1 -1
- package/lib/interactions/index.d.ts +2 -2
- package/lib/interactions/index.d.ts.map +1 -1
- package/lib/interactions/index.js +20 -14
- package/lib/interactions/index.js.map +1 -1
- package/lib/objects/commands.d.ts +49 -14
- package/lib/objects/commands.d.ts.map +1 -1
- package/lib/objects/commands.js +185 -32
- package/lib/objects/commands.js.map +1 -1
- package/lib/objects/index.d.ts +1 -1
- package/lib/objects/index.d.ts.map +1 -1
- package/lib/objects/index.js +46 -13
- package/lib/objects/index.js.map +1 -1
- package/lib/package.d.ts +7 -3
- package/lib/package.d.ts.map +1 -1
- package/lib/package.js +25 -13
- package/lib/package.js.map +1 -1
- package/lib/profiles/auth.d.ts +14 -0
- package/lib/profiles/auth.d.ts.map +1 -0
- package/lib/profiles/auth.js +65 -0
- package/lib/profiles/auth.js.map +1 -0
- package/lib/profiles/commands.d.ts +15 -4
- package/lib/profiles/commands.d.ts.map +1 -1
- package/lib/profiles/commands.js +384 -57
- package/lib/profiles/commands.js.map +1 -1
- package/lib/profiles/git.d.ts +9 -0
- package/lib/profiles/git.d.ts.map +1 -0
- package/lib/profiles/git.js +211 -0
- package/lib/profiles/git.js.map +1 -0
- package/lib/profiles/index.d.ts +17 -7
- package/lib/profiles/index.d.ts.map +1 -1
- package/lib/profiles/index.js +215 -66
- package/lib/profiles/index.js.map +1 -1
- package/lib/profiles/keyring.d.ts +23 -0
- package/lib/profiles/keyring.d.ts.map +1 -0
- package/lib/profiles/keyring.js +111 -0
- package/lib/profiles/keyring.js.map +1 -0
- package/lib/profiles/oauth.d.ts +17 -0
- package/lib/profiles/oauth.d.ts.map +1 -0
- package/lib/profiles/oauth.js +414 -0
- package/lib/profiles/oauth.js.map +1 -0
- package/lib/profiles/server/cors.d.ts +1 -1
- package/lib/profiles/server/cors.d.ts.map +1 -1
- package/lib/profiles/server/cors.js +1 -1
- package/lib/profiles/server/cors.js.map +1 -1
- package/lib/profiles/server/index.d.ts +9 -1
- package/lib/profiles/server/index.d.ts.map +1 -1
- package/lib/profiles/server/index.js +111 -47
- package/lib/profiles/server/index.js.map +1 -1
- package/lib/profiles/server/server.d.ts +1 -1
- package/lib/profiles/server/server.d.ts.map +1 -1
- package/lib/profiles/server/server.js +10 -13
- package/lib/profiles/server/server.js.map +1 -1
- package/lib/projects/index.d.ts +2 -1
- package/lib/projects/index.d.ts.map +1 -1
- package/lib/projects/index.js +53 -5
- package/lib/projects/index.js.map +1 -1
- package/lib/run/executor.d.ts +11 -7
- package/lib/run/executor.d.ts.map +1 -1
- package/lib/run/executor.js +30 -23
- package/lib/run/executor.js.map +1 -1
- package/lib/run/index.d.ts +14 -2
- package/lib/run/index.d.ts.map +1 -1
- package/lib/run/index.js +14 -12
- package/lib/run/index.js.map +1 -1
- package/lib/runs/index.d.ts +18 -2
- package/lib/runs/index.d.ts.map +1 -1
- package/lib/runs/index.js +9 -7
- package/lib/runs/index.js.map +1 -1
- package/lib/utils/console.d.ts +1 -1
- package/lib/utils/console.d.ts.map +1 -1
- package/lib/utils/console.js +24 -33
- package/lib/utils/console.js.map +1 -1
- package/lib/utils/options.d.ts +8 -0
- package/lib/utils/options.d.ts.map +1 -0
- package/lib/utils/options.js +19 -0
- package/lib/utils/options.js.map +1 -0
- package/lib/utils/stdio.js +3 -2
- package/lib/utils/stdio.js.map +1 -1
- package/lib/workflows/commands.d.ts +44 -13
- package/lib/workflows/commands.d.ts.map +1 -1
- package/lib/workflows/commands.js +69 -50
- package/lib/workflows/commands.js.map +1 -1
- package/lib/workflows/index.d.ts +1 -1
- package/lib/workflows/index.d.ts.map +1 -1
- package/lib/workflows/index.js +56 -56
- package/lib/workflows/index.js.map +1 -1
- package/lib/workflows/json-loader.d.ts +1 -1
- package/lib/workflows/json-loader.d.ts.map +1 -1
- package/lib/workflows/json-loader.js +5 -4
- package/lib/workflows/json-loader.js.map +1 -1
- package/lib/workflows/streams.d.ts +8 -1
- package/lib/workflows/streams.d.ts.map +1 -1
- package/lib/workflows/streams.js +107 -84
- package/lib/workflows/streams.js.map +1 -1
- package/lib/workflows/ts-loader.d.ts +1 -1
- package/lib/workflows/ts-loader.d.ts.map +1 -1
- package/lib/workflows/ts-loader.js +21 -20
- package/lib/workflows/ts-loader.js.map +1 -1
- package/lib/workflows/validation.d.ts +1 -1
- package/lib/workflows/validation.d.ts.map +1 -1
- package/lib/workflows/validation.js +11 -11
- package/lib/workflows/validation.js.map +1 -1
- package/package.json +21 -24
- package/bin/docker-credential-vertesia.js +0 -3
- package/lib/codegen/CodeBuilder.d.ts +0 -16
- package/lib/codegen/CodeBuilder.d.ts.map +0 -1
- package/lib/codegen/CodeBuilder.js +0 -99
- package/lib/codegen/CodeBuilder.js.map +0 -1
- package/lib/codegen/InteractionVersion.d.ts +0 -29
- package/lib/codegen/InteractionVersion.d.ts.map +0 -1
- package/lib/codegen/InteractionVersion.js +0 -80
- package/lib/codegen/InteractionVersion.js.map +0 -1
- package/lib/codegen/index.d.ts +0 -3
- package/lib/codegen/index.d.ts.map +0 -1
- package/lib/codegen/index.js +0 -30
- package/lib/codegen/index.js.map +0 -1
- package/lib/codegen/template.d.ts +0 -3
- package/lib/codegen/template.d.ts.map +0 -1
- package/lib/codegen/template.js +0 -28
- package/lib/codegen/template.js.map +0 -1
- package/lib/codegen/utils.d.ts +0 -2
- package/lib/codegen/utils.d.ts.map +0 -1
- package/lib/codegen/utils.js +0 -4
- package/lib/codegen/utils.js.map +0 -1
- package/lib/datagen/index.d.ts +0 -3
- package/lib/datagen/index.d.ts.map +0 -1
- package/lib/datagen/index.js +0 -81
- package/lib/datagen/index.js.map +0 -1
- package/lib/memory/index.d.ts +0 -3
- package/lib/memory/index.d.ts.map +0 -1
- package/lib/memory/index.js +0 -15
- package/lib/memory/index.js.map +0 -1
- package/lib/worker/commands.d.ts +0 -11
- package/lib/worker/commands.d.ts.map +0 -1
- package/lib/worker/commands.js +0 -173
- package/lib/worker/commands.js.map +0 -1
- package/lib/worker/connect.d.ts +0 -7
- package/lib/worker/connect.d.ts.map +0 -1
- package/lib/worker/connect.js +0 -68
- package/lib/worker/connect.js.map +0 -1
- package/lib/worker/docker-credential.d.ts +0 -2
- package/lib/worker/docker-credential.d.ts.map +0 -1
- package/lib/worker/docker-credential.js +0 -51
- package/lib/worker/docker-credential.js.map +0 -1
- package/lib/worker/docker.d.ts +0 -10
- package/lib/worker/docker.d.ts.map +0 -1
- package/lib/worker/docker.js +0 -93
- package/lib/worker/docker.js.map +0 -1
- package/lib/worker/index.d.ts +0 -3
- package/lib/worker/index.d.ts.map +0 -1
- package/lib/worker/index.js +0 -90
- package/lib/worker/index.js.map +0 -1
- package/lib/worker/project.d.ts +0 -58
- package/lib/worker/project.d.ts.map +0 -1
- package/lib/worker/project.js +0 -125
- package/lib/worker/project.js.map +0 -1
- package/lib/worker/refresh.d.ts +0 -6
- package/lib/worker/refresh.d.ts.map +0 -1
- package/lib/worker/refresh.js +0 -47
- package/lib/worker/refresh.js.map +0 -1
- package/lib/worker/registry.d.ts +0 -7
- package/lib/worker/registry.d.ts.map +0 -1
- package/lib/worker/registry.js +0 -47
- package/lib/worker/registry.js.map +0 -1
- package/lib/worker/version.d.ts +0 -2
- package/lib/worker/version.d.ts.map +0 -1
- package/lib/worker/version.js +0 -4
- package/lib/worker/version.js.map +0 -1
|
@@ -1,33 +1,73 @@
|
|
|
1
|
-
import { randomInt } from
|
|
2
|
-
import enquirer from
|
|
3
|
-
import open from
|
|
4
|
-
import { handleCors } from
|
|
5
|
-
import { readRequestBody, startServer } from
|
|
1
|
+
import { randomInt } from 'node:crypto';
|
|
2
|
+
import enquirer from 'enquirer';
|
|
3
|
+
import open from 'open';
|
|
4
|
+
import { handleCors } from './cors.js';
|
|
5
|
+
import { readRequestBody, startServer } from './server.js';
|
|
6
6
|
const { prompt } = enquirer;
|
|
7
7
|
export async function startConfigSession(config_url, payload, callback, signal) {
|
|
8
8
|
if (!config_url) {
|
|
9
|
-
console.error(
|
|
10
|
-
console.error(
|
|
9
|
+
console.error('You are trying to update a profile without a config_url. Your profile was likely created with a previous version of the cli.');
|
|
10
|
+
console.error('Please, delete the profile and create it again.');
|
|
11
11
|
process.exit(1);
|
|
12
12
|
}
|
|
13
|
-
|
|
13
|
+
let server;
|
|
14
|
+
let completed = false;
|
|
15
|
+
function closeServer() {
|
|
16
|
+
if (server?.listening) {
|
|
17
|
+
server.close();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function cleanup() {
|
|
21
|
+
closeServer();
|
|
22
|
+
if (signal) {
|
|
23
|
+
signal.removeEventListener('abort', onAbort);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
process.off('SIGINT', onInterrupt);
|
|
27
|
+
process.off('SIGTERM', onInterrupt);
|
|
28
|
+
process.stdin.off('data', onInput);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
async function complete(result) {
|
|
32
|
+
if (completed) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
completed = true;
|
|
36
|
+
cleanup();
|
|
37
|
+
await callback(result);
|
|
38
|
+
}
|
|
39
|
+
function onAbort() {
|
|
40
|
+
if (completed) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
completed = true;
|
|
44
|
+
cleanup();
|
|
45
|
+
}
|
|
46
|
+
function onInterrupt() {
|
|
47
|
+
if (!completed) {
|
|
48
|
+
completed = true;
|
|
49
|
+
cleanup();
|
|
50
|
+
}
|
|
51
|
+
console.log('\nAuthentication interrupted.');
|
|
52
|
+
process.exit(130);
|
|
53
|
+
}
|
|
54
|
+
function onInput(chunk) {
|
|
55
|
+
if (String(chunk).includes('\x03')) {
|
|
56
|
+
onInterrupt();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
14
59
|
if (signal?.aborted) {
|
|
15
|
-
callback(undefined);
|
|
16
60
|
return;
|
|
17
61
|
}
|
|
18
|
-
// Handle abort signal
|
|
19
|
-
const onAbort = () => {
|
|
20
|
-
// Clean up and exit
|
|
21
|
-
if (server) {
|
|
22
|
-
server.close();
|
|
23
|
-
}
|
|
24
|
-
callback(undefined);
|
|
25
|
-
};
|
|
26
62
|
if (signal) {
|
|
27
63
|
signal.addEventListener('abort', onAbort, { once: true });
|
|
28
64
|
}
|
|
65
|
+
else {
|
|
66
|
+
process.once('SIGINT', onInterrupt);
|
|
67
|
+
process.once('SIGTERM', onInterrupt);
|
|
68
|
+
process.stdin.on('data', onInput);
|
|
69
|
+
}
|
|
29
70
|
const code = randomInt(1000, 9999);
|
|
30
|
-
let server;
|
|
31
71
|
try {
|
|
32
72
|
server = await startServer(async (req, res) => {
|
|
33
73
|
if (handleCors(req, res)) {
|
|
@@ -45,27 +85,28 @@ export async function startConfigSession(config_url, payload, callback, signal)
|
|
|
45
85
|
}
|
|
46
86
|
try {
|
|
47
87
|
const data = await readRequestBody(req);
|
|
48
|
-
|
|
88
|
+
if (typeof data !== 'string') {
|
|
89
|
+
throw new Error('Invalid callback payload');
|
|
90
|
+
}
|
|
91
|
+
const result = readConfigResult(data);
|
|
49
92
|
res.statusCode = 200;
|
|
50
93
|
res.end();
|
|
51
|
-
|
|
52
|
-
if (signal?.aborted) {
|
|
94
|
+
if (signal?.aborted || completed) {
|
|
53
95
|
return;
|
|
54
96
|
}
|
|
55
|
-
await
|
|
56
|
-
// Clean up signal listener
|
|
57
|
-
if (signal) {
|
|
58
|
-
signal.removeEventListener('abort', onAbort);
|
|
59
|
-
}
|
|
60
|
-
server.close(); // close the server
|
|
97
|
+
await complete(result);
|
|
61
98
|
}
|
|
62
99
|
catch (error) {
|
|
63
100
|
res.statusCode = 500;
|
|
64
101
|
res.end();
|
|
65
|
-
console.error(
|
|
102
|
+
console.error('Error processing request:', error);
|
|
66
103
|
}
|
|
67
104
|
});
|
|
68
|
-
const
|
|
105
|
+
const address = server.address();
|
|
106
|
+
if (!address || typeof address === 'string') {
|
|
107
|
+
throw new Error('Unable to determine local callback port');
|
|
108
|
+
}
|
|
109
|
+
const port = address.port;
|
|
69
110
|
const params = new URLSearchParams();
|
|
70
111
|
params.append('redirect_uri', `http://localhost:${port}`);
|
|
71
112
|
params.append('code', String(code));
|
|
@@ -76,43 +117,48 @@ export async function startConfigSession(config_url, payload, callback, signal)
|
|
|
76
117
|
if (payload.project)
|
|
77
118
|
params.append('project', payload.project);
|
|
78
119
|
const url = `${config_url}?${params.toString()}`;
|
|
79
|
-
console.log(
|
|
80
|
-
open(url)
|
|
120
|
+
console.log('Opening browser to', url);
|
|
121
|
+
open(url).catch((error) => {
|
|
122
|
+
console.error('Unable to open browser:', error instanceof Error ? error.message : String(error));
|
|
123
|
+
});
|
|
81
124
|
console.log(`The session code is ${code}`);
|
|
82
125
|
// Handle manual token entry
|
|
83
126
|
try {
|
|
84
127
|
// Check if already aborted
|
|
85
|
-
if (signal?.aborted) {
|
|
128
|
+
if (signal?.aborted || completed) {
|
|
86
129
|
return;
|
|
87
130
|
}
|
|
88
131
|
const answer = await prompt({
|
|
89
132
|
name: 'result',
|
|
90
133
|
type: 'input',
|
|
91
|
-
message:
|
|
134
|
+
message: 'The browser failed to send the token? Copy the token here',
|
|
92
135
|
});
|
|
93
136
|
// Check if aborted after prompt
|
|
94
|
-
if (signal?.aborted) {
|
|
137
|
+
if (signal?.aborted || completed) {
|
|
95
138
|
return;
|
|
96
139
|
}
|
|
97
140
|
const resultText = answer.result?.trim();
|
|
98
141
|
if (resultText) {
|
|
99
142
|
try {
|
|
100
|
-
|
|
101
|
-
// Clean up signal listener before callback
|
|
102
|
-
if (signal) {
|
|
103
|
-
signal.removeEventListener('abort', onAbort);
|
|
104
|
-
}
|
|
105
|
-
await callback(result);
|
|
106
|
-
console.log('Authentication completed.');
|
|
143
|
+
await complete(readConfigResult(resultText));
|
|
107
144
|
}
|
|
108
|
-
catch
|
|
109
|
-
console.error(
|
|
145
|
+
catch {
|
|
146
|
+
console.error('Invalid token');
|
|
110
147
|
process.exit(1);
|
|
111
148
|
}
|
|
112
149
|
}
|
|
150
|
+
else {
|
|
151
|
+
// Empty answer — enquirer 2.x resolves with `result: ''` on Ctrl-C
|
|
152
|
+
// rather than rejecting. Without this branch the HTTP server stays
|
|
153
|
+
// open and the process hangs.
|
|
154
|
+
cleanup();
|
|
155
|
+
console.log('\nAuthentication cancelled.');
|
|
156
|
+
process.exit(130);
|
|
157
|
+
}
|
|
113
158
|
}
|
|
114
159
|
catch (err) {
|
|
115
160
|
// This could be thrown if the prompt is interrupted
|
|
161
|
+
cleanup();
|
|
116
162
|
if (signal?.aborted) {
|
|
117
163
|
return;
|
|
118
164
|
}
|
|
@@ -120,15 +166,33 @@ export async function startConfigSession(config_url, payload, callback, signal)
|
|
|
120
166
|
}
|
|
121
167
|
}
|
|
122
168
|
catch (err) {
|
|
123
|
-
|
|
124
|
-
if (signal) {
|
|
125
|
-
signal.removeEventListener('abort', onAbort);
|
|
126
|
-
}
|
|
169
|
+
cleanup();
|
|
127
170
|
// Only throw if not aborted
|
|
128
171
|
if (!signal?.aborted) {
|
|
129
172
|
throw err;
|
|
130
173
|
}
|
|
131
174
|
}
|
|
132
175
|
}
|
|
176
|
+
function readConfigResult(raw) {
|
|
177
|
+
const parsed = JSON.parse(raw);
|
|
178
|
+
if (!isConfigResult(parsed)) {
|
|
179
|
+
throw new Error('Invalid callback payload');
|
|
180
|
+
}
|
|
181
|
+
return parsed;
|
|
182
|
+
}
|
|
183
|
+
function isConfigResult(value) {
|
|
184
|
+
if (!value || typeof value !== 'object') {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
return (hasStringField(value, 'profile') &&
|
|
188
|
+
hasStringField(value, 'account') &&
|
|
189
|
+
hasStringField(value, 'project') &&
|
|
190
|
+
hasStringField(value, 'studio_server_url') &&
|
|
191
|
+
hasStringField(value, 'zeno_server_url') &&
|
|
192
|
+
hasStringField(value, 'token'));
|
|
193
|
+
}
|
|
194
|
+
function hasStringField(value, key) {
|
|
195
|
+
return typeof Reflect.get(value, key) === 'string';
|
|
196
|
+
}
|
|
133
197
|
//startConfigSession("https://localhost:5173/cli", {}, (result: ConfigResult) => console.log("Logged in", result));
|
|
134
198
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/profiles/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/profiles/server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Server, ServerResponse
|
|
1
|
+
import { type IncomingMessage, type Server, type ServerResponse } from 'node:http';
|
|
2
2
|
export declare function startServer(cb: (req: IncomingMessage, res: ServerResponse) => void): Promise<Server>;
|
|
3
3
|
export declare function readRequestBody(request: IncomingMessage): Promise<unknown>;
|
|
4
4
|
//# sourceMappingURL=server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/profiles/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/profiles/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjG,wBAAsB,WAAW,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAU1G;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,eAAe,oBAgBvD"}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
import { createServer } from 'http';
|
|
1
|
+
import { createServer } from 'node:http';
|
|
2
2
|
export async function startServer(cb) {
|
|
3
3
|
const server = createServer(cb);
|
|
4
|
-
const onSigint = () => {
|
|
5
|
-
server.close();
|
|
6
|
-
};
|
|
7
|
-
server.on('close', () => {
|
|
8
|
-
process.off('SIGINT', onSigint);
|
|
9
|
-
});
|
|
10
|
-
process.on('SIGINT', onSigint);
|
|
11
4
|
// start the server on a random unused port
|
|
12
5
|
return new Promise((resolve, reject) => {
|
|
13
|
-
server
|
|
6
|
+
server
|
|
7
|
+
.listen()
|
|
8
|
+
.once('listening', () => resolve(server))
|
|
14
9
|
.once('error', reject);
|
|
15
10
|
});
|
|
16
11
|
}
|
|
@@ -18,15 +13,17 @@ export function readRequestBody(request) {
|
|
|
18
13
|
return new Promise((resolve, reject) => {
|
|
19
14
|
const chunks = [];
|
|
20
15
|
let body;
|
|
21
|
-
request
|
|
16
|
+
request
|
|
17
|
+
.on('data', (chunk) => {
|
|
22
18
|
chunks.push(chunk);
|
|
23
|
-
})
|
|
19
|
+
})
|
|
20
|
+
.on('end', () => {
|
|
24
21
|
body = Buffer.concat(chunks).toString();
|
|
25
22
|
resolve(body);
|
|
26
|
-
})
|
|
23
|
+
})
|
|
24
|
+
.on('error', (err) => {
|
|
27
25
|
reject(err);
|
|
28
26
|
});
|
|
29
|
-
;
|
|
30
27
|
});
|
|
31
28
|
}
|
|
32
29
|
//# sourceMappingURL=server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/profiles/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/profiles/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0D,MAAM,WAAW,CAAC;AAEjG,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAAuD;IACrF,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAEhC,2CAA2C;IAC3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM;aACD,MAAM,EAAE;aACR,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;aACxC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAwB;IACpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,IAAY,CAAC;QACjB,OAAO;aACF,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC;aACD,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACZ,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC;aACD,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACjB,MAAM,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/lib/projects/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { Command } from
|
|
1
|
+
import type { Command } from 'commander';
|
|
2
2
|
export declare function listProjects(program: Command): Promise<void>;
|
|
3
|
+
export declare function useProject(program: Command, projectId?: string): Promise<void>;
|
|
3
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/projects/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/projects/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAezC,wBAAsB,YAAY,CAAC,OAAO,EAAE,OAAO,iBAclD;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,iBAyBpE"}
|
package/lib/projects/index.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import colors from
|
|
2
|
-
import
|
|
1
|
+
import colors from 'ansi-colors';
|
|
2
|
+
import enquirer from 'enquirer';
|
|
3
|
+
import { getClient } from '../client.js';
|
|
4
|
+
import { refreshCurrentProfileAuthentication } from '../profiles/auth.js';
|
|
5
|
+
import { config } from '../profiles/index.js';
|
|
6
|
+
const { prompt } = enquirer;
|
|
3
7
|
export async function listProjects(program) {
|
|
4
8
|
const client = await getClient(program);
|
|
5
9
|
const project = await client.getProject();
|
|
@@ -9,9 +13,53 @@ export async function listProjects(program) {
|
|
|
9
13
|
}
|
|
10
14
|
const activeProjectId = project.id;
|
|
11
15
|
const projects = await client.projects.list();
|
|
12
|
-
|
|
13
|
-
const check = activeProjectId === project.id ?
|
|
14
|
-
|
|
16
|
+
for (const project of projects) {
|
|
17
|
+
const check = activeProjectId === project.id ? ` ${colors.symbols.check}` : '';
|
|
18
|
+
const restricted = project.restricted ? ` ${colors.dim('(restricted)')}` : '';
|
|
19
|
+
console.log(`${project.name} [${project.id}]${restricted}${check}`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export async function useProject(program, projectId) {
|
|
23
|
+
if (!config.current) {
|
|
24
|
+
console.error('No profile is selected. Run `vertesia profiles use <name>` to select a profile');
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
const client = await getClient(program);
|
|
28
|
+
const projects = await client.projects.list();
|
|
29
|
+
const selectedProjectId = projectId || (await selectProject(projects));
|
|
30
|
+
const selectedProject = projects.find((project) => project.id === selectedProjectId);
|
|
31
|
+
if (!selectedProject) {
|
|
32
|
+
console.error(`Project ${selectedProjectId} not found or not accessible.`);
|
|
33
|
+
process.exit(1);
|
|
34
|
+
}
|
|
35
|
+
if (selectedProject.restricted) {
|
|
36
|
+
console.error(`Project ${selectedProject.name} [${selectedProject.id}] is visible but restricted. Select a project you have direct access to.`);
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
await refreshCurrentProfileAuthentication(undefined, undefined, {
|
|
40
|
+
projectId: selectedProject.id,
|
|
41
|
+
});
|
|
42
|
+
console.log(`Selected project ${selectedProject.name} [${selectedProject.id}]`);
|
|
43
|
+
}
|
|
44
|
+
async function selectProject(projects) {
|
|
45
|
+
const accessibleProjects = projects.filter((project) => !project.restricted);
|
|
46
|
+
if (!accessibleProjects.length) {
|
|
47
|
+
console.error('No accessible projects found.');
|
|
48
|
+
process.exit(1);
|
|
49
|
+
}
|
|
50
|
+
const response = await prompt({
|
|
51
|
+
type: 'select',
|
|
52
|
+
name: 'project',
|
|
53
|
+
message: 'Select the project to use',
|
|
54
|
+
choices: accessibleProjects.map((project) => ({
|
|
55
|
+
name: project.id,
|
|
56
|
+
message: `${project.name} [${project.id}]`,
|
|
57
|
+
})),
|
|
15
58
|
});
|
|
59
|
+
if (!response.project) {
|
|
60
|
+
console.error('No project selected');
|
|
61
|
+
process.exit(1);
|
|
62
|
+
}
|
|
63
|
+
return response.project;
|
|
16
64
|
}
|
|
17
65
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/projects/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/projects/index.ts"],"names":[],"mappings":"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"}
|
package/lib/run/executor.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { VertesiaClient } from
|
|
2
|
-
import {
|
|
1
|
+
import type { VertesiaClient } from '@vertesia/client';
|
|
2
|
+
import { type InteractionExecutionResult } from '@vertesia/common';
|
|
3
|
+
import { type CliOptions } from '../utils/options.js';
|
|
4
|
+
export type CliExecutionResult = InteractionExecutionResult & {
|
|
5
|
+
runNumber?: number;
|
|
6
|
+
};
|
|
3
7
|
export declare class ExecutionQueue {
|
|
4
8
|
size: number;
|
|
5
9
|
requests: ExecutionRequest[];
|
|
@@ -7,16 +11,16 @@ export declare class ExecutionQueue {
|
|
|
7
11
|
constructor(size?: number);
|
|
8
12
|
add(request: ExecutionRequest): void;
|
|
9
13
|
abort(): void;
|
|
10
|
-
run(onBatch: (completed:
|
|
14
|
+
run(onBatch: (completed: CliExecutionResult[]) => void, onChunk?: (chunk: string) => void, signal?: AbortSignal): Promise<CliExecutionResult[]>;
|
|
11
15
|
}
|
|
12
16
|
export declare class ExecutionRequest {
|
|
13
17
|
readonly client: VertesiaClient;
|
|
14
18
|
interactionSpec: string;
|
|
15
|
-
data:
|
|
16
|
-
options:
|
|
19
|
+
data: unknown;
|
|
20
|
+
options: CliOptions;
|
|
17
21
|
runNumber?: number;
|
|
18
22
|
constructor(client: VertesiaClient, interactionSpec: string, // namespace:name@version
|
|
19
|
-
data:
|
|
20
|
-
run(onChunk?: (
|
|
23
|
+
data: unknown, options: CliOptions);
|
|
24
|
+
run(onChunk?: (chunk: string) => void, signal?: AbortSignal): Promise<CliExecutionResult>;
|
|
21
25
|
}
|
|
22
26
|
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/run/executor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/run/executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAGH,KAAK,0BAA0B,EAElC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AAEvE,MAAM,MAAM,kBAAkB,GAAG,0BAA0B,GAAG;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,qBAAa,cAAc;IAIJ,IAAI;IAHvB,QAAQ,EAAE,gBAAgB,EAAE,CAAM;IAClC,OAAO,CAAC,eAAe,CAAkB;gBAEtB,IAAI,SAAI;IAI3B,GAAG,CAAC,OAAO,EAAE,gBAAgB;IAI7B,KAAK;IAIC,GAAG,CACL,OAAO,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,KAAK,IAAI,EAClD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,MAAM,CAAC,EAAE,WAAW;CAsD3B;AAcD,qBAAa,gBAAgB;aAIL,MAAM,EAAE,cAAc;IAC/B,eAAe,EAAE,MAAM;IACvB,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,UAAU;IAN9B,SAAS,CAAC,EAAE,MAAM,CAAC;gBAGC,MAAM,EAAE,cAAc,EAC/B,eAAe,EAAE,MAAM,EAAE,yBAAyB;IAClD,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,UAAU;IAGxB,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAkFlG"}
|
package/lib/run/executor.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { ConfigModes, RunDataStorageLevel } from
|
|
1
|
+
import { ConfigModes, RunDataStorageLevel, } from '@vertesia/common';
|
|
2
|
+
import { getStringOption } from '../utils/options.js';
|
|
2
3
|
export class ExecutionQueue {
|
|
3
4
|
size;
|
|
4
5
|
requests = [];
|
|
@@ -39,7 +40,7 @@ export class ExecutionQueue {
|
|
|
39
40
|
}
|
|
40
41
|
const chunk = requests.slice(i, i + chunkSize);
|
|
41
42
|
// Pass our abort signal to each request
|
|
42
|
-
const res = await Promise.all(chunk.map(request => request.run(onChunk, this.abortController.signal)));
|
|
43
|
+
const res = await Promise.all(chunk.map((request) => request.run(onChunk, this.abortController.signal)));
|
|
43
44
|
out.push(...res);
|
|
44
45
|
// Only notify if not aborted
|
|
45
46
|
if (!this.abortController.signal.aborted) {
|
|
@@ -58,11 +59,13 @@ export class ExecutionQueue {
|
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
61
|
function convertRunData(raw_run_data) {
|
|
61
|
-
const levelStr = typeof raw_run_data === 'string' ? raw_run_data.toUpperCase() :
|
|
62
|
-
return Object.values(RunDataStorageLevel).includes(levelStr)
|
|
62
|
+
const levelStr = typeof raw_run_data === 'string' ? raw_run_data.toUpperCase() : '';
|
|
63
|
+
return Object.values(RunDataStorageLevel).includes(levelStr)
|
|
64
|
+
? levelStr
|
|
65
|
+
: undefined;
|
|
63
66
|
}
|
|
64
67
|
function convertConfigMode(raw_config_mode) {
|
|
65
|
-
const configStr = typeof raw_config_mode === 'string' ? raw_config_mode.toUpperCase() :
|
|
68
|
+
const configStr = typeof raw_config_mode === 'string' ? raw_config_mode.toUpperCase() : '';
|
|
66
69
|
return Object.values(ConfigModes).includes(configStr) ? configStr : undefined;
|
|
67
70
|
}
|
|
68
71
|
export class ExecutionRequest {
|
|
@@ -81,19 +84,19 @@ export class ExecutionRequest {
|
|
|
81
84
|
async run(onChunk, signal) {
|
|
82
85
|
// Check if already aborted
|
|
83
86
|
if (signal?.aborted) {
|
|
84
|
-
throw new Error(
|
|
87
|
+
throw new Error('Operation aborted');
|
|
85
88
|
}
|
|
86
89
|
const options = this.options;
|
|
87
90
|
//TODO: Support for other modalities, like images
|
|
88
91
|
const model_options = {
|
|
89
|
-
_option_id:
|
|
92
|
+
_option_id: 'text-fallback',
|
|
90
93
|
temperature: typeof options.temperature === 'string' ? parseFloat(options.temperature) : undefined,
|
|
91
|
-
max_tokens: typeof options.maxTokens === 'string' ? parseInt(options.maxTokens) : undefined,
|
|
94
|
+
max_tokens: typeof options.maxTokens === 'string' ? parseInt(options.maxTokens, 10) : undefined,
|
|
92
95
|
top_p: typeof options.topP === 'string' ? parseFloat(options.topP) : undefined,
|
|
93
|
-
top_k: typeof options.topK === 'string' ? parseInt(options.topK) : undefined,
|
|
96
|
+
top_k: typeof options.topK === 'string' ? parseInt(options.topK, 10) : undefined,
|
|
94
97
|
presence_penalty: typeof options.presencePenalty === 'string' ? parseFloat(options.presencePenalty) : undefined,
|
|
95
98
|
frequency_penalty: typeof options.frequencyPenalty === 'string' ? parseFloat(options.frequencyPenalty) : undefined,
|
|
96
|
-
stop_sequence: options.stopSequence
|
|
99
|
+
stop_sequence: getStringOption(options.stopSequence)?.split(/\s*,\s*/),
|
|
97
100
|
};
|
|
98
101
|
const config = {
|
|
99
102
|
environment: typeof options.env === 'string' ? options.env : undefined,
|
|
@@ -102,32 +105,34 @@ export class ExecutionRequest {
|
|
|
102
105
|
configMode: convertConfigMode(options.configMode),
|
|
103
106
|
run_data: convertRunData(options.runData),
|
|
104
107
|
};
|
|
105
|
-
const tags = options.tags
|
|
108
|
+
const tags = getStringOption(options.tags)?.split(/\s,*\s*/);
|
|
106
109
|
// Create a wrapper for the onChunk callback that checks for abort
|
|
107
|
-
const abortAwareChunkHandler = onChunk
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
110
|
+
const abortAwareChunkHandler = onChunk
|
|
111
|
+
? (chunk) => {
|
|
112
|
+
if (signal?.aborted)
|
|
113
|
+
return;
|
|
114
|
+
onChunk(chunk);
|
|
115
|
+
}
|
|
116
|
+
: undefined;
|
|
112
117
|
let run;
|
|
113
118
|
try {
|
|
114
119
|
if (this.options.byId) {
|
|
115
120
|
run = await this.client.interactions.execute(this.interactionSpec, {
|
|
116
|
-
data: this.data,
|
|
121
|
+
data: readInteractionData(this.data),
|
|
117
122
|
config,
|
|
118
|
-
tags
|
|
123
|
+
tags,
|
|
119
124
|
}, abortAwareChunkHandler);
|
|
120
125
|
}
|
|
121
126
|
else {
|
|
122
127
|
run = await this.client.interactions.executeByName(this.interactionSpec, {
|
|
123
|
-
data: this.data,
|
|
128
|
+
data: readInteractionData(this.data),
|
|
124
129
|
config,
|
|
125
|
-
tags
|
|
130
|
+
tags,
|
|
126
131
|
}, abortAwareChunkHandler);
|
|
127
132
|
}
|
|
128
133
|
// Check if aborted during execution
|
|
129
134
|
if (signal?.aborted) {
|
|
130
|
-
throw new Error(
|
|
135
|
+
throw new Error('Operation aborted');
|
|
131
136
|
}
|
|
132
137
|
// add count number in the run
|
|
133
138
|
if (this.runNumber != null) {
|
|
@@ -139,11 +144,13 @@ export class ExecutionRequest {
|
|
|
139
144
|
// Check if aborted
|
|
140
145
|
if (signal?.aborted) {
|
|
141
146
|
//TODO: Maybe use error cause?
|
|
142
|
-
|
|
143
|
-
throw new Error("Operation aborted");
|
|
147
|
+
throw new Error('Operation aborted');
|
|
144
148
|
}
|
|
145
149
|
throw error;
|
|
146
150
|
}
|
|
147
151
|
}
|
|
148
152
|
}
|
|
153
|
+
function readInteractionData(data) {
|
|
154
|
+
return data;
|
|
155
|
+
}
|
|
149
156
|
//# sourceMappingURL=executor.js.map
|
package/lib/run/executor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/run/executor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/run/executor.ts"],"names":[],"mappings":"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"}
|
package/lib/run/index.d.ts
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
-
import { Command } from
|
|
2
|
-
|
|
1
|
+
import type { Command } from 'commander';
|
|
2
|
+
import { type CliOptions } from '../utils/options.js';
|
|
3
|
+
type RunInteractionOptions = CliOptions<{
|
|
4
|
+
input?: string | boolean;
|
|
5
|
+
output?: string;
|
|
6
|
+
data?: string;
|
|
7
|
+
count?: string;
|
|
8
|
+
stream?: boolean;
|
|
9
|
+
verbose?: boolean;
|
|
10
|
+
jsonl?: boolean;
|
|
11
|
+
dataOnly?: boolean;
|
|
12
|
+
}>;
|
|
13
|
+
export default function runInteraction(program: Command, interactionSpec: string, options: RunInteractionOptions): Promise<void>;
|
|
14
|
+
export {};
|
|
3
15
|
//# sourceMappingURL=index.d.ts.map
|