bdy 1.25.1-master → 1.25.2-beta
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/distTs/package.json +2 -6
- package/distTs/src/command/api/info.js +224 -255
- package/distTs/src/command/api/list.js +14 -17
- package/distTs/src/command/yaml/actions/detect.js +11 -2
- package/distTs/src/command/yaml/actions/info.js +22 -12
- package/distTs/src/command/yaml/actions/list.js +11 -20
- package/distTs/src/command/yaml/actions/schema.js +43 -87
- package/distTs/src/command/yaml/pipeline.js +9 -25
- package/distTs/src/command/yaml/render.js +83 -71
- package/distTs/src/command/yaml/schemaUtils.js +12 -50
- package/distTs/src/command/yaml/validate.js +32 -27
- package/distTs/src/diskCache.js +0 -1
- package/distTs/src/openapi.js +16 -68
- package/distTs/src/texts.js +7 -9
- package/package.json +2 -6
- package/distTs/README.md +0 -181
- package/distTs/src/autocomplete.js +0 -90
- package/distTs/src/command/autocomplete/install.js +0 -16
- package/distTs/src/command/autocomplete/uninstall.js +0 -16
- package/distTs/src/command/autocomplete.js +0 -14
- package/distTs/src/command/environment/resolve.js +0 -47
- package/distTs/src/command/package/create.js +0 -64
- package/distTs/src/command/package/delete.js +0 -38
- package/distTs/src/command/package/docker/login.js +0 -26
- package/distTs/src/command/package/docker.js +0 -11
- package/distTs/src/command/package/download.js +0 -138
- package/distTs/src/command/package/get.js +0 -36
- package/distTs/src/command/package/list.js +0 -31
- package/distTs/src/command/package/publish.js +0 -241
- package/distTs/src/command/package/version/delete.js +0 -39
- package/distTs/src/command/package/version/get.js +0 -45
- package/distTs/src/command/package/version/list.js +0 -47
- package/distTs/src/command/package/version.js +0 -16
- package/distTs/src/command/package.js +0 -26
- package/distTs/src/command/project/get.js +0 -18
- package/distTs/src/command/project/set.js +0 -31
- package/distTs/src/command/sandbox/get/yaml.js +0 -30
- package/distTs/src/command/scrape/validation.js +0 -154
- package/distTs/src/command/scrape.js +0 -144
- package/distTs/src/command/ut/upload.js +0 -86
- package/distTs/src/command/ut.js +0 -12
- package/distTs/src/command/vt/close.js +0 -27
- package/distTs/src/command/vt/compare/validation.js +0 -46
- package/distTs/src/command/vt/compare.js +0 -100
- package/distTs/src/command/vt/exec.js +0 -82
- package/distTs/src/command/vt/installBrowser.js +0 -20
- package/distTs/src/command/vt/scrape.js +0 -193
- package/distTs/src/command/vt/shared/validation.js +0 -145
- package/distTs/src/command/vt/storybook.js +0 -138
- package/distTs/src/command/vt.js +0 -20
- package/distTs/src/main.js +0 -190
- package/distTs/src/types/options.js +0 -2
- package/distTs/src/types/scrape.js +0 -2
|
@@ -76,27 +76,32 @@ function classifySections(props) {
|
|
|
76
76
|
}
|
|
77
77
|
return { itemSections, objectSections, settingsProps };
|
|
78
78
|
}
|
|
79
|
-
function
|
|
80
|
-
|
|
79
|
+
async function unionMappings(defs) {
|
|
80
|
+
const scope = (0, schemaUtils_1.pipelinesScope)();
|
|
81
|
+
const unions = new Map();
|
|
82
|
+
for (const [name, def] of Object.entries(defs)) {
|
|
83
|
+
if (!def.oneOf || !def.discriminator)
|
|
84
|
+
continue;
|
|
85
|
+
const body = (await scope.def(name))?.body;
|
|
86
|
+
if (body?.kind !== 'union')
|
|
87
|
+
continue;
|
|
88
|
+
const { property, members } = body.discriminator ?? {};
|
|
89
|
+
if (property && members)
|
|
90
|
+
unions.set(name, { property, members });
|
|
91
|
+
}
|
|
92
|
+
return unions;
|
|
81
93
|
}
|
|
82
94
|
// Resolve a discriminated def to its concrete branch by the item's `type`, so
|
|
83
95
|
// AJV always validates against a single def (never a oneOf). Plain defs pass through.
|
|
84
|
-
function resolveDef(
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
if (!prop)
|
|
96
|
+
function resolveDef(unions, refName, value) {
|
|
97
|
+
const union = unions.get(refName);
|
|
98
|
+
if (!union)
|
|
88
99
|
return { defName: refName };
|
|
89
|
-
const dv = value?.[
|
|
100
|
+
const dv = value?.[union.property];
|
|
90
101
|
if (dv === undefined || dv === null)
|
|
91
|
-
return { missingType:
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
if (!branchName)
|
|
95
|
-
continue;
|
|
96
|
-
if (defs[branchName]?.properties?.[prop]?.const === dv)
|
|
97
|
-
return { defName: branchName };
|
|
98
|
-
}
|
|
99
|
-
return { unknownType: String(dv), prop };
|
|
102
|
+
return { missingType: union.property };
|
|
103
|
+
const branch = Object.hasOwn(union.members, dv) ? union.members[dv] : undefined;
|
|
104
|
+
return branch ? { defName: branch } : { unknownType: String(dv), prop: union.property };
|
|
100
105
|
}
|
|
101
106
|
function itemLabel(value, index, discProp) {
|
|
102
107
|
let name;
|
|
@@ -127,9 +132,9 @@ function validateScalarItem(item, section) {
|
|
|
127
132
|
outputErrors(result, ' ');
|
|
128
133
|
return result.errors.length;
|
|
129
134
|
}
|
|
130
|
-
function validateItemSection(
|
|
135
|
+
function validateItemSection(unions, items, section) {
|
|
131
136
|
const refName = section.defName;
|
|
132
|
-
const discProp =
|
|
137
|
+
const discProp = unions.get(refName)?.property ?? null;
|
|
133
138
|
let errors = 0;
|
|
134
139
|
for (let i = 0; i < items.length; i++) {
|
|
135
140
|
const item = items[i];
|
|
@@ -138,7 +143,7 @@ function validateItemSection(defs, items, section) {
|
|
|
138
143
|
continue;
|
|
139
144
|
}
|
|
140
145
|
const label = itemLabel(item, i, discProp);
|
|
141
|
-
const resolved = resolveDef(
|
|
146
|
+
const resolved = resolveDef(unions, refName, item);
|
|
142
147
|
if ('missingType' in resolved) {
|
|
143
148
|
output_1.default.error(` ${label}: ${(0, texts_1.ERR_YAML_ITEM_MISSING)(resolved.missingType)}`);
|
|
144
149
|
errors++;
|
|
@@ -161,8 +166,8 @@ function validateItemSection(defs, items, section) {
|
|
|
161
166
|
}
|
|
162
167
|
return errors;
|
|
163
168
|
}
|
|
164
|
-
function validateObjectSection(
|
|
165
|
-
const resolved = resolveDef(
|
|
169
|
+
function validateObjectSection(unions, label, value, refName) {
|
|
170
|
+
const resolved = resolveDef(unions, refName, value);
|
|
166
171
|
if ('missingType' in resolved) {
|
|
167
172
|
output_1.default.error(label);
|
|
168
173
|
output_1.default.muted(` ${(0, texts_1.ERR_YAML_ITEM_MISSING)(resolved.missingType)}`);
|
|
@@ -182,7 +187,7 @@ function validateObjectSection(defs, label, value, refName) {
|
|
|
182
187
|
outputErrors(result, ' ');
|
|
183
188
|
return result.errors.length;
|
|
184
189
|
}
|
|
185
|
-
function validateSinglePipeline(parsed, label) {
|
|
190
|
+
function validateSinglePipeline(parsed, label, unions) {
|
|
186
191
|
let errors = 0;
|
|
187
192
|
const defs = (0, schemaUtils_1.getAllDefs)();
|
|
188
193
|
const pipelineDef = defs['PipelineYaml'];
|
|
@@ -231,19 +236,19 @@ function validateSinglePipeline(parsed, label) {
|
|
|
231
236
|
continue;
|
|
232
237
|
}
|
|
233
238
|
output_1.default.blue(header);
|
|
234
|
-
errors += validateItemSection(
|
|
239
|
+
errors += validateItemSection(unions, value, itemByKey.get(key));
|
|
235
240
|
}
|
|
236
241
|
else if (objByKey.has(key)) {
|
|
237
242
|
if (typeof value !== 'object' || Array.isArray(value)) {
|
|
238
243
|
errors += reportWrongContainer(header, 'object', value);
|
|
239
244
|
continue;
|
|
240
245
|
}
|
|
241
|
-
errors += validateObjectSection(
|
|
246
|
+
errors += validateObjectSection(unions, header, value, objByKey.get(key));
|
|
242
247
|
}
|
|
243
248
|
}
|
|
244
249
|
return errors;
|
|
245
250
|
}
|
|
246
|
-
function validatePipelineFile(file) {
|
|
251
|
+
function validatePipelineFile(file, unions) {
|
|
247
252
|
const filePath = (0, path_1.resolve)(file);
|
|
248
253
|
if (!(0, fs_1.existsSync)(filePath)) {
|
|
249
254
|
output_1.default.exitError((0, texts_1.ERR_YAML_VALIDATE_FILE_NOT_FOUND)(file));
|
|
@@ -280,7 +285,7 @@ function validatePipelineFile(file) {
|
|
|
280
285
|
continue;
|
|
281
286
|
}
|
|
282
287
|
const pipelineLabel = parsed.length > 1 ? `[${pipeline.pipeline || i + 1}] ` : '';
|
|
283
|
-
errors += validateSinglePipeline(pipeline, pipelineLabel);
|
|
288
|
+
errors += validateSinglePipeline(pipeline, pipelineLabel, unions);
|
|
284
289
|
}
|
|
285
290
|
output_1.default.normal('');
|
|
286
291
|
if (errors > 0) {
|
|
@@ -295,6 +300,6 @@ commandYamlValidate.argument('<file>', texts_1.OPTION_YAML_VALIDATE_FILE);
|
|
|
295
300
|
commandYamlValidate.addHelpText('after', `\nEXAMPLES:${texts_1.EXAMPLE_YAML_VALIDATE}`);
|
|
296
301
|
commandYamlValidate.action(async (file) => {
|
|
297
302
|
await (0, schemaUtils_1.ensureYamlSchema)();
|
|
298
|
-
validatePipelineFile(file);
|
|
303
|
+
validatePipelineFile(file, await unionMappings((0, schemaUtils_1.getAllDefs)()));
|
|
299
304
|
});
|
|
300
305
|
exports.default = commandYamlValidate;
|
package/distTs/src/diskCache.js
CHANGED
package/distTs/src/openapi.js
CHANGED
|
@@ -1,79 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
const node_1 = require("@scalar/json-magic/bundle/plugins/node");
|
|
6
|
-
const openapi_parser_1 = require("@scalar/openapi-parser");
|
|
7
|
-
const node_fs_1 = require("node:fs");
|
|
8
|
-
const node_v8_1 = require("node:v8");
|
|
3
|
+
exports.apiEndpoints = apiEndpoints;
|
|
4
|
+
const docs_schema_1 = require("@buddy-works/docs-schema");
|
|
9
5
|
const texts_1 = require("./texts");
|
|
10
6
|
const utils_1 = require("./utils");
|
|
11
7
|
const diskCache_1 = require("./diskCache");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
return schema ?? null;
|
|
21
|
-
}
|
|
22
|
-
// The dereferenced schema has circular refs, so it is cached with v8
|
|
23
|
-
// serialization (JSON.stringify can't handle cycles). The blob is Node-version
|
|
24
|
-
// specific, so a failed load just rebuilds from the raw body.
|
|
25
|
-
function loadCachedSchema(schemaPath) {
|
|
26
|
-
try {
|
|
27
|
-
return (0, node_v8_1.deserialize)((0, node_fs_1.readFileSync)(schemaPath));
|
|
28
|
-
}
|
|
29
|
-
catch {
|
|
30
|
-
return null;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
function saveCachedSchema(schemaPath, schema) {
|
|
34
|
-
try {
|
|
35
|
-
(0, diskCache_1.writeAtomic)(schemaPath, (0, node_v8_1.serialize)(schema));
|
|
8
|
+
let held = null;
|
|
9
|
+
async function apiEndpoints(baseUrl) {
|
|
10
|
+
if (held)
|
|
11
|
+
return held;
|
|
12
|
+
const url = (0, utils_1.getOpenApiEndpointByApiBaseUrl)(baseUrl);
|
|
13
|
+
const paths = (0, diskCache_1.cachePaths)('openapi', url);
|
|
14
|
+
if (!(0, diskCache_1.isHardFresh)((0, diskCache_1.readMeta)(paths.meta)) && (await (0, diskCache_1.refresh)(url, paths)) === 'none') {
|
|
15
|
+
throw new Error(texts_1.ERR_SCHEMA_FETCH_FAILED);
|
|
36
16
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
async function fetchOpenApiSchema(baseUrl) {
|
|
17
|
+
const raw = (0, diskCache_1.readCached)(paths.raw);
|
|
18
|
+
if (!raw)
|
|
19
|
+
throw new Error(texts_1.ERR_SCHEMA_FETCH_FAILED);
|
|
42
20
|
try {
|
|
43
|
-
|
|
44
|
-
const paths = (0, diskCache_1.cachePaths)('openapi', url);
|
|
45
|
-
// Hard cache: within the TTL, serve the cached schema with no network call.
|
|
46
|
-
if ((0, diskCache_1.isHardFresh)((0, diskCache_1.readMeta)(paths.meta))) {
|
|
47
|
-
const cached = loadCachedSchema(paths.schema);
|
|
48
|
-
if (cached)
|
|
49
|
-
return cached;
|
|
50
|
-
}
|
|
51
|
-
const state = await (0, diskCache_1.refresh)(url, paths);
|
|
52
|
-
let schema;
|
|
53
|
-
if (state === 'unchanged') {
|
|
54
|
-
// Reuse the cached dereferenced schema, skipping download/bundle/dereference.
|
|
55
|
-
// Rebuild from the raw body if the v8 blob is missing or unreadable.
|
|
56
|
-
schema = loadCachedSchema(paths.schema);
|
|
57
|
-
if (!schema) {
|
|
58
|
-
schema = await buildSchema(paths.raw);
|
|
59
|
-
if (schema)
|
|
60
|
-
saveCachedSchema(paths.schema, schema);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
else if (state === 'updated') {
|
|
64
|
-
schema = await buildSchema(paths.raw);
|
|
65
|
-
if (schema)
|
|
66
|
-
saveCachedSchema(paths.schema, schema);
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
// No cache and no usable response — bundle the remote URL directly.
|
|
70
|
-
schema = await buildSchema(url);
|
|
71
|
-
}
|
|
72
|
-
if (schema)
|
|
73
|
-
return schema;
|
|
21
|
+
held = docs_schema_1.BuddySchema.from({ api: JSON.parse(raw) }).api;
|
|
74
22
|
}
|
|
75
23
|
catch {
|
|
76
|
-
|
|
24
|
+
throw new Error(texts_1.ERR_SCHEMA_FETCH_FAILED);
|
|
77
25
|
}
|
|
78
|
-
|
|
26
|
+
return held;
|
|
79
27
|
}
|
package/distTs/src/texts.js
CHANGED
|
@@ -15,13 +15,13 @@ exports.OPTION_SANDBOX_WAIT_CONFIGURED = exports.OPTION_SANDBOX_WAIT_RUNNING = e
|
|
|
15
15
|
exports.DESC_COMMAND_SANDBOX_ENDPOINT_LIST = exports.DESC_COMMAND_SANDBOX_ENDPOINT = exports.ERR_SANDBOX_SNAPSHOT_OS_CONFLICT = exports.ERR_SANDBOX_SNAPSHOTS_NOT_FOUND = exports.ERR_SANDBOX_SNAPSHOT_NOT_FOUND = exports.ERR_SANDBOX_SNAPSHOT_FAILED = exports.TXT_SANDBOX_SNAPSHOT_WAITING = exports.TXT_SANDBOX_SNAPSHOT_DELETE_CONFIRM = exports.TXT_SANDBOX_SNAPSHOT_DELETED = exports.TXT_SANDBOX_SNAPSHOT_CREATED = exports.OPTION_SANDBOX_FROM_SNAPSHOT = exports.OPTION_SANDBOX_SNAPSHOT_NAME_ARG = exports.OPTION_SANDBOX_SNAPSHOT_NAME = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_DELETE = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_GET = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_CREATE = exports.DESC_COMMAND_SANDBOX_SNAPSHOT_LIST = exports.DESC_COMMAND_SANDBOX_SNAPSHOT = exports.TXT_SANDBOX_COMMAND_KILLED = exports.OPTION_SANDBOX_COMMAND_KILL_CONFIRM = exports.OPTION_SANDBOX_LOGS_LIMIT = exports.OPTION_SANDBOX_APP_ID = exports.OPTION_SANDBOX_COMMAND_ID = exports.DESC_COMMAND_SANDBOX_EXEC_KILL = exports.DESC_COMMAND_SANDBOX_EXEC_LOGS = exports.DESC_COMMAND_SANDBOX_APP_START = exports.DESC_COMMAND_SANDBOX_APP_STOP = exports.DESC_COMMAND_SANDBOX_APP_STATUS = exports.DESC_COMMAND_SANDBOX_APP_LOGS = exports.DESC_COMMAND_SANDBOX_EXEC_STATUS = exports.DESC_COMMAND_SANDBOX_EXEC_LIST = exports.DESC_COMMAND_SANDBOX_APP_REMOVE = exports.DESC_COMMAND_SANDBOX_APP_ADD = exports.DESC_COMMAND_SANDBOX_APP_LIST = exports.TXT_SANDBOX_WAITING_START = exports.TXT_SANDBOX_WAITING_STOP = exports.TXT_SANDBOX_WAITING_APPS = exports.TXT_SANDBOX_WAITING_SETUP = exports.TXT_SANDBOX_WAITING_RUNNING = exports.TXT_SANDBOX_STOPPED = exports.TXT_SANDBOX_STARTED = exports.TXT_SANDBOX_DESTROYED = exports.TXT_SANDBOX_DESTROY_CONFIRM = exports.TXT_SANDBOX_UPDATED = exports.TXT_SANDBOX_CREATED = exports.TXT_SANDBOX_CREATING = exports.TXT_SANDBOX_APP_STARTED = exports.TXT_SANDBOX_APP_STOPPED = exports.OPTION_SANDBOX_WAIT = exports.OPTION_SANDBOX_WAIT_APPS = void 0;
|
|
16
16
|
exports.DESC_COMMAND_TARGET_DELETE = exports.DESC_COMMAND_TARGET_UPDATE = exports.DESC_COMMAND_TARGET_CREATE = exports.DESC_COMMAND_TARGET_GET = exports.DESC_COMMAND_TARGET_LIST = exports.DESC_COMMAND_TARGET = exports.TXT_SANDBOX_EXEC_FAILED = exports.TXT_SANDBOX_EXEC_INPROGRESS = exports.TXT_SANDBOX_EXEC_SUCCESS = exports.TXT_SANDBOX_EXEC_BACKGROUND = exports.TXT_SANDBOX_EXEC_ID = exports.ERR_SANDBOX_CP_INVALID_SOURCE = exports.ERR_SANDBOX_CP_INVALID_DEST = exports.ERR_SANDBOX_CP_REPLACE = exports.ERR_SANDBOX_CP_MKDIR = exports.ERR_SANDBOX_CP_PATH_EXISTS = exports.ERR_SANDBOX_CP_NOT_EMPTY_DIR = exports.ERR_SANDBOX_CP_READDIR = exports.ERR_SANDBOX_CP_DEST_NOT_FOLDER = exports.ERR_SANDBOX_CP_SOURCE_NOT_FOUND = exports.TXT_SANDBOX_CP_DONE = exports.TXT_SANDBOX_CP_PROGRESS = exports.TXT_SANDBOX_UNZIPPING_COUNT = exports.TXT_SANDBOX_UNZIP_DONE = exports.TXT_SANDBOX_UNZIP = exports.TXT_SANDBOX_CP_DOWNLOAD_DONE = exports.TXT_SANDBOX_CP_DOWNLOAD = exports.OPTION_SANDBOX_CP_IGNORE = exports.OPTION_SANDBOX_CP_USER = exports.OPTION_SANDBOX_CP_DOWNLOAD_REPLACE = exports.OPTION_SANDBOX_CP_DOWNLOAD_MERGE = exports.OPTION_SANDBOX_CP_DEST = exports.OPTION_SANDBOX_CP_SOURCE = exports.DESC_COMMAND_SANDBOX_CP = exports.ERR_SANDBOX_APPS_NOT_FOUND = exports.ERR_SANDBOX_ENDPOINTS_NOT_FOUND = exports.ERR_SANDBOX_ENDPOINT_NOT_FOUND = exports.ERR_SANDBOX_ENDPOINT_EXISTS = exports.TXT_SANDBOX_ENDPOINT_DELETED = exports.TXT_SANDBOX_ENDPOINT_DELETE_CONFIRM = exports.TXT_SANDBOX_ENDPOINT_ADDED = exports.TXT_SANDBOX_APP_REMOVED = exports.TXT_SANDBOX_APP_ADDED = exports.OPTION_SANDBOX_ENDPOINT_TYPE = exports.OPTION_SANDBOX_ENDPOINT_PORT = exports.OPTION_SANDBOX_ENDPOINT_NAME_ARG = exports.OPTION_SANDBOX_ENDPOINT_NAME = exports.DESC_COMMAND_SANDBOX_ENDPOINT_DELETE = exports.DESC_COMMAND_SANDBOX_ENDPOINT_ADD = exports.DESC_COMMAND_SANDBOX_ENDPOINT_GET = void 0;
|
|
17
17
|
exports.OPTION_ENVIRONMENT_CREATE_IDENTIFIER = exports.OPTION_ENVIRONMENT_NAME = exports.OPTION_ENVIRONMENT_IDENTIFIER = exports.DESC_COMMAND_ENVIRONMENT_DELETE = exports.DESC_COMMAND_ENVIRONMENT_UPDATE = exports.DESC_COMMAND_ENVIRONMENT_CREATE = exports.DESC_COMMAND_ENVIRONMENT_GET = exports.DESC_COMMAND_ENVIRONMENT_LIST = exports.DESC_COMMAND_ENVIRONMENT = exports.TXT_TARGET_EXEC_KILLED = exports.TXT_TARGET_EXEC_KILL_CONFIRM = exports.WARN_TARGET_EXEC_TRUNCATED = exports.TXT_TARGET_EXEC_CANCELLED = exports.TXT_TARGET_EXEC_FAILED = exports.TXT_TARGET_EXEC_SUCCESS = exports.TXT_TARGET_EXEC_BACKGROUND = exports.TXT_TARGET_EXEC_ID = exports.TXT_TARGET_DELETED = exports.TXT_TARGET_DELETE_CONFIRM = exports.TXT_TARGET_UPDATED = exports.TXT_TARGET_CREATED = exports.TXT_TARGET_NOT_FOUND = exports.ERR_TARGET_SCOPE_NO_ENVIRONMENT = exports.ERR_TARGET_SCOPE_NO_PIPELINE = exports.ERR_TARGET_PIPELINE_ENV_CONFLICT = exports.ERR_TARGET_PIPELINE_REQUIRES_PROJECT = exports.ERR_TARGET_SCOPE = exports.ERR_TARGET_ENVIRONMENT_NOT_FOUND = exports.ERR_TARGET_EXEC_FILE_NOT_FOUND = exports.ERR_TARGET_EXEC_COMMAND_CONFLICT = exports.ERR_TARGET_EXEC_NO_COMMAND = exports.ERR_TARGET_NO_EXECS = exports.ERR_TARGET_NOT_FOUND = exports.OPTION_TARGET_EXEC_FILE = exports.OPTION_TARGET_EXEC_ASYNC = exports.OPTION_TARGET_EXEC_COMMAND = exports.OPTION_TARGET_EXEC_LOG_LIMIT = exports.OPTION_TARGET_EXEC_LOG_OFFSET = exports.OPTION_TARGET_EXEC_LIMIT = exports.OPTION_TARGET_EXEC_ID = exports.OPTION_TARGET_YAML = exports.OPT_COMMAND_TARGET_SCOPE = exports.OPTION_TARGET_ENVIRONMENT = exports.OPTION_TARGET_PIPELINE = exports.OPTION_TARGET_IDENTIFIER = exports.DESC_COMMAND_TARGET_EXEC_LOGS = exports.DESC_COMMAND_TARGET_EXEC_LIST = exports.DESC_COMMAND_TARGET_EXEC_KILL = exports.DESC_COMMAND_TARGET_EXEC_STATUS = exports.DESC_COMMAND_TARGET_EXEC = void 0;
|
|
18
|
-
exports.ERR_MCP_TOOLS_CATEGORY = exports.OPT_COMMAND_MCP_TOOLS = exports.ERR_MCP_REFRESH_FAILED = exports.ERR_MCP_URL_INVALID = exports.ERR_MCP_ENDPOINT = exports.DESC_COMMAND_MCP = exports.
|
|
19
|
-
exports.DESC_COMMAND_ROUTE_UPDATE = exports.DESC_COMMAND_ROUTE_DELETE = exports.DESC_COMMAND_ROUTE_GET = exports.DESC_COMMAND_DISTRO_UPDATE = exports.DESC_COMMAND_DISTRO_GET = exports.DESC_COMMAND_ROUTE_LIST = exports.DESC_COMMAND_DISTRO_LIST = exports.DESC_COMMAND_DISTRO_DELETE = exports.DESC_COMMAND_ROUTE_CREATE = exports.DESC_COMMAND_DISTRO_CREATE = exports.DESC_COMMAND_DISTRO = exports.ERR_API_MESSAGE_REPLACER = exports.ERR_LOGIN_INVALID_BASE_URL = exports.ERR_LOGIN_NO_WORKSPACE_FOUND = exports.ERR_LOGIN_NO_WORKSPACES = exports.ERR_REGISTER_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_FAILED = exports.ERR_LOGIN_HTTP_SERVER_PORT_TAKEN = exports.TXT_REGISTER_SUCCESS = exports.TXT_LOGIN_SUCCESS = exports.TXT_LOGIN_SELECT_WORKSPACE = exports.TXT_LOGIN_ENTER_BASE_URL = exports.TXT_LOGIN_PROVIDE_CODE = exports.TXT_REGISTER_OPEN_URL = exports.TXT_LOGIN_OPEN_URL = exports.TXT_REGISTER_OPENING_STAR = exports.TXT_LOGIN_OPENING_STAR = exports.TXT_REGISTER_OPENING = exports.TXT_LOGIN_OPENING = exports.TXT_LOGIN_SELECT_REGION = exports.TXT_WORKSPACE_NONE = exports.TXT_WORKSPACE_SET_SUCCESS = exports.ARG_COMMAND_WORKSPACE = exports.DESC_COMMAND_WORKSPACE_GET = exports.DESC_COMMAND_WORKSPACE_SET = exports.DESC_COMMAND_WORKSPACE_LIST = exports.DESC_COMMAND_WORKSPACE = exports.TXT_COMMAND_REGISTER_PROVIDE_NAME = exports.TXT_COMMAND_REGISTER_PROVIDE_EMAIL = exports.ERR_COMMAND_REGISTER_INVALID_NAME = exports.ERR_COMMAND_REGISTER_INVALID_EMAIL = exports.OPT_COMMAND_REGISTER_NAME = exports.OPT_COMMAND_REGISTER_EMAIL = exports.DESC_COMMAND_REGISTER = exports.TXT_LOGOUT_SUCCESS = exports.DESC_COMMAND_LOGOUT = exports.DESC_COMMAND_LOGIN = exports.HELP_COMMAND_MCP =
|
|
20
|
-
exports.OPT_COMMAND_DOMAIN_ONLY_AVAILABLE = exports.OPT_COMMAND_DOMAIN_SORT = exports.OPT_COMMAND_DOMAIN_PHRASE = exports.OPT_COMMAND_DOMAIN_BUY_OWNER = exports.OPT_COMMAND_DOMAIN_BUY_TLD = exports.DESC_COMMAND_DOMAIN_GET = exports.DESC_COMMAND_DOMAIN_LIST = exports.DESC_COMMAND_DOMAIN_SEARCH = exports.DESC_COMMAND_DOMAIN_BUY = exports.DESC_COMMAND_DOMAIN = exports.ERR_ROUTE_NO_DEFAULT = exports.ERR_WRONG_ROUTE_TARGET = exports.ERR_COMMAND_ROUTE_NO_TARGET = exports.ERR_COMMAND_ROUTE_TYPE = exports.TXT_COMMAND_ROUTES_NOT_FOUND = exports.TXT_COMMAND_DISTROS_NOT_FOUND = exports.TXT_COMMAND_ROUTE_DELETED = exports.TXT_COMMAND_DISTRO_DELETED = exports.TXT_COMMAND_ROUTE_DELETE_CONFIRM = exports.TXT_COMMAND_DISTRO_DELETE_CONFIRM = exports.ERR_COMMAND_DISTRO_ENABLE_DISABLE = exports.ERR_COMMAND_NO_UPDATE = exports.ERR_COMMAND_DISTRO_NOT_FOUND = exports.ERR_COMMAND_SCOPE = exports.TXT_COMMAND_DISTRO_UPDATED = exports.TXT_COMMAND_ROUTE_UPDATED = exports.TXT_ROUTE_SERVE = exports.TXT_COMMAND_ROUTE_CREATED = exports.TXT_COMMAND_DISTRO_CREATED = exports.ERR_COMMAND_SCOPE_NO_ENVIRONMENT = exports.ERR_COMMAND_SCOPE_NO_PROJECT = exports.OPT_COMMAND_DISTRO_DISABLE = exports.OPT_COMMAND_DISTRO_ENABLE = exports.OPT_COMMAND_DISTRO_AGENT_NOTE = exports.OPT_COMMAND_DISTRO_NOTE = exports.OPT_COMMAND_DISTRO_NAME = exports.OPT_COMMAND_ROUTE_TARGET = exports.OPT_COMMAND_ROUTE_AGENT_NOTE = exports.OPT_COMMAND_ROUTE_NOTE = exports.OPT_COMMAND_ROUTE_PATH = exports.OPT_COMMAND_ROUTE_DOMAIN = exports.OPT_COMMAND_ROUTE_SUBDOMAIN = exports.OPT_COMMAND_ROUTE_TYPE = exports.OPT_COMMAND_ROUTE_ID = exports.OPT_COMMAND_DISTRO_IDENTIFIER = exports.OPT_COMMAND_SCOPE_ENVIRONMENT = exports.OPT_COMMAND_SCOPE = exports.OPT_COMMAND_AGENT_NOTE = exports.OPT_COMMAND_NOTE =
|
|
21
|
-
exports.TXT_COMMAND_PROJECT_LINK_GIT_REPO_INITIALIZED = exports.TXT_COMMAND_PROJECT_LINK_GIT_REPO = exports.TXT_COMMAND_PROJECT_LINK_DIR_CONFIRM = exports.TXT_COMMAND_PROJECT_LINK_DIR_LINKED = exports.ERR_COMMAND_PROJECT_LINK_DIR_CREATE = exports.OPT_COMMAND_PROJECT_LINK_TRY_NOW = exports.OPT_COMMAND_PROJECT_LINK_SET_GIT_REMOTE = exports.OPT_COMMAND_PROJECT_LINK_HAS_REMOTE = exports.OPT_COMMAND_PROJECT_LINK_DIRECTORY = exports.OPT_COMMAND_PROJECT_LINK_GIT = exports.OPT_COMMAND_PROJECT_LINK_RELINK = exports.DESC_COMMAND_PROJECT_LINK = exports.DESC_COMMAND_PROJECT_LIST = exports.DESC_COMMAND_PROJECT_GIT = exports.DESC_COMMAND_PROJECT_GIT_CREDENTIAL = exports.DESC_COMMAND_PROJECT = exports.TXT_ARTIFACT_VERSION_DOWNLOAD = exports.TXT_ARTIFACT_PUBLISH = exports.TXT_ARTIFACT_CREATED = exports.TXT_ARTIFACT_VERSION_DELETED = exports.TXT_ARTIFACT_DELETED = exports.ERR_COMMAND_ARTIFACT_TYPE = exports.OPT_COMMAND_ARTIFACT_VERSION = exports.OPT_COMMAND_ARTIFACT_IDENTIFIER = exports.OPT_COMMAND_ARTIFACT_CREATE_IDENTIFIER = exports.OPT_COMMAND_ARTIFACT_NAME = exports.OPT_COMMAND_ARTIFACT_TYPE = exports.DESC_COMMAND_ARTIFACT_CREATE = exports.DESC_COMMAND_ARTIFACT_COMPOSER_PUBLISH = exports.DESC_COMMAND_ARTIFACT_GET = exports.TXT_ARTIFACT_DOCKER_LOGIN_FAILED = exports.TXT_ARTIFACT_DOCKER_LOGIN_SUCCESS = exports.TXT_ARTIFACT_VERSION_DELETE_CONFIRM = exports.TXT_ARTIFACT_DELETE_CONFIRM = exports.DESC_COMMAND_ARTIFACT_DELETE = exports.ERR_COMMAND_ARTIFACT_NO_PROJECTS = exports.DESC_COMMAND_ARTIFACT_VERSION_GET = exports.DESC_COMMAND_ARTIFACT_VERSION_LIST = exports.DESC_COMMAND_ARTIFACT_VERSION_DELETE = exports.DESC_COMMAND_ARTIFACT_DOCKER_LOGIN = exports.DESC_COMMAND_ARTIFACT_LIST = exports.DESC_COMMAND_ARTIFACT_COMPOSER = exports.DESC_COMMAND_ARTIFACT_VERSION = exports.ERR_COMMAND_DOMAIN_UNAVAILABLE = exports.OPTION_COMMAND_DOMAIN_IDENTIFIER = exports.ERR_COMMAND_DOMAIN_NO_DOMAINS = exports.TXT_COMMAND_DOMAIN_PROMPT_REQUIRED = exports.TXT_COMMAND_DOMAIN_BUY_SELECT_DOMAIN = exports.TXT_COMMAND_DOMAIN_PROVIDE_PROMPT =
|
|
22
|
-
exports.EXAMPLE_TARGET_LIST = exports.EXAMPLE_SANDBOX_SNAPSHOT_LIST = exports.EXAMPLE_SANDBOX_SNAPSHOT_GET = exports.EXAMPLE_SANDBOX_SNAPSHOT_DELETE = exports.EXAMPLE_SANDBOX_SNAPSHOT_CREATE = exports.EXAMPLE_SANDBOX_EXEC_STATUS = exports.EXAMPLE_SANDBOX_EXEC_LOGS = exports.EXAMPLE_SANDBOX_APP_STATUS = exports.EXAMPLE_SANDBOX_APP_STOP = exports.EXAMPLE_SANDBOX_APP_REMOVE = exports.EXAMPLE_SANDBOX_APP_ADD = exports.EXAMPLE_SANDBOX_APP_START = exports.EXAMPLE_SANDBOX_APP_LOGS = exports.EXAMPLE_SANDBOX_EXEC_LIST = exports.EXAMPLE_SANDBOX_APP_LIST = exports.EXAMPLE_SANDBOX_EXEC_KILL = exports.EXAMPLE_SANDBOX_SSH = exports.EXAMPLE_SANDBOX_EXEC_COMMAND = exports.EXAMPLE_TUNNEL_START = exports.EXAMPLE_TUNNEL_TCP = exports.EXAMPLE_TUNNEL_TLS = exports.EXAMPLE_AGENT_TUNNEL_START = exports.EXAMPLE_AGENT_TUNNEL_STATUS = exports.EXAMPLE_AGENT_TUNNEL_REMOVE = exports.EXAMPLE_AGENT_TUNNEL_LIST = exports.EXAMPLE_TUNNEL_HTTP = exports.EXAMPLE_SANDBOX_CREATE = exports.EXAMPLE_DISTRO_CREATE = exports.EXAMPLE_ROUTE_CREATE = exports.EXAMPLE_ROUTE_LIST = exports.EXAMPLE_ROUTE_UPDATE = exports.EXAMPLE_ROUTE_DELETE = exports.EXAMPLE_DISTRO_DELETE = exports.EXAMPLE_ROUTE_GET = exports.EXAMPLE_DISTRO_UPDATE = exports.EXAMPLE_DISTRO_GET = exports.EXAMPLE_DISTRO_LIST = exports.EXAMPLE_SANDBOX_CP = exports.ERR_PROJECT_NO_PROJECTS = exports.TXT_LOGIN_SELECT_PROJECT = exports.TXT_COMMAND_PROJECT_CREATED = exports.TXT_COMMAND_PROJECT_LINK_NOT_FOUND = exports.TXT_COMMAND_PROJECT_LINK_NAME = exports.TXT_COMMAND_PROJECT_LINK_SELECT_PROJECT = exports.TXT_COMMAND_PROJECT_LINK_TO = exports.TXT_COMMAND_PROJECT_LINK_EXISTING_DESC = exports.TXT_COMMAND_PROJECT_LINK_EXISTING = exports.TXT_COMMAND_PROJECT_LINK_CREATE_NEW_DESC = exports.TXT_COMMAND_PROJECT_LINK_CREATE_NEW =
|
|
23
|
-
exports.EXAMPLE_CRAWL_RUN = exports.EXAMPLE_TESTS_CAPTURE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CLOSE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CREATE = exports.EXAMPLE_TESTS_VISUAL_LINK = exports.EXAMPLE_TESTS_VISUAL_UPLOAD = exports.EXAMPLE_TESTS_VISUAL_SETUP = exports.EXAMPLE_TESTS_UNIT_LINK = exports.EXAMPLE_TESTS_UNIT_UPLOAD = exports.EXAMPLE_ARTIFACT_VERSION_DELETE = exports.EXAMPLE_ARTIFACT_VERSION_GET = exports.EXAMPLE_ARTIFACT_VERSION_LIST = exports.EXAMPLE_ARTIFACT_CREATE = exports.EXAMPLE_ARTIFACT_DELETE = exports.EXAMPLE_ARTIFACT_DOWNLOAD = exports.EXAMPLE_ARTIFACT_PUBLISH = exports.EXAMPLE_ARTIFACT_COMPOSER_PUBLISH = exports.EXAMPLE_ARTIFACT_VERSION_CREATE = exports.EXAMPLE_PIPELINE_RUN_RETRY = exports.EXAMPLE_PIPELINE_RUN_LIST = exports.EXAMPLE_PIPELINE_LIST = exports.EXAMPLE_PIPELINE_YML = exports.EXAMPLE_PIPELINE_GET = exports.EXAMPLE_PIPELINE_UPDATE = exports.EXAMPLE_PIPELINE_DELETE = exports.EXAMPLE_PIPELINE_CREATE = exports.EXAMPLE_PIPELINE_RUN_CANCEL = exports.EXAMPLE_PIPELINE_RUN_APPLY = exports.EXAMPLE_PIPELINE_RUN_LOGS = exports.EXAMPLE_PIPELINE_RUN_JSONL = exports.EXAMPLE_PIPELINE_RUN_STATUS = exports.EXAMPLE_PIPELINE_RUN_START = exports.EXAMPLE_SANDBOX_ENDPOINT_LIST = exports.EXAMPLE_SANDBOX_ENDPOINT_GET = exports.EXAMPLE_SANDBOX_ENDPOINT_DELETE = exports.EXAMPLE_SANDBOX_ENDPOINT_CREATE = exports.EXAMPLE_ENVIRONMENT_DELETE = exports.EXAMPLE_ENVIRONMENT_UPDATE = exports.EXAMPLE_ENVIRONMENT_CREATE = exports.EXAMPLE_ENVIRONMENT_GET = exports.EXAMPLE_ENVIRONMENT_LIST = exports.EXAMPLE_TARGET_EXEC_LOGS = exports.EXAMPLE_TARGET_EXEC_LIST = exports.EXAMPLE_TARGET_EXEC_KILL = exports.EXAMPLE_TARGET_EXEC_STATUS = exports.EXAMPLE_TARGET_EXEC_COMMAND = exports.EXAMPLE_TARGET_DELETE = exports.EXAMPLE_TARGET_UPDATE = exports.EXAMPLE_TARGET_CREATE =
|
|
24
|
-
exports.ERR_YAML_SCHEMA_READ_FAILED = exports.ERR_YAML_SCHEMA_FETCH_FAILED = exports.TXT_YAML_UNKNOWN_TOP_LEVEL_KEYS = exports.ERR_YAML_ITEM_UNKNOWN = exports.ERR_YAML_ITEM_MISSING = exports.ERR_YAML_MUST_BE = exports.ERR_YAML_PIPELINE_NOT_OBJECT = exports.ERR_YAML_EMPTY_ARRAY = exports.ERR_YAML_PLAIN_OBJECT = exports.ERR_YAML_NOT_ARRAY = exports.ERR_YAML_PARSE = exports.ERR_YAML_VALIDATE_FAILED_COUNT = exports.TXT_YAML_VALIDATE_ALL_PASS = exports.ERR_YAML_VALIDATE_FAILED = exports.ERR_YAML_VALIDATE_FILE_NOT_FOUND = exports.OPTION_YAML_VALIDATE_FILE = exports.DESC_COMMAND_YAML_VALIDATE = exports.DESC_COMMAND_YAML_ACTIONS_INFO = exports.DESC_COMMAND_YAML_ACTIONS_LIST = exports.DESC_COMMAND_YAML_ACTIONS = exports.DESC_COMMAND_YAML_PIPELINE = exports.DESC_COMMAND_YAML = exports.TXT_ACTION_SUGGESTED_FROM_REPO = exports.TXT_ACTION_USE_LIST = exports.TXT_ACTION_DID_YOU_MEAN = exports.ERR_ACTION_SEARCH_NO_RESULTS = exports.ERR_ACTION_NOT_FOUND = exports.OPTION_ACTION_TYPE = exports.OPTION_ACTION_SEARCH = exports.EXAMPLE_YAML_VALIDATE = exports.EXAMPLE_YAML_ACTIONS_INFO = exports.EXAMPLE_YAML_ACTIONS_LIST = exports.EXAMPLE_YAML_PIPELINE =
|
|
18
|
+
exports.ERR_MCP_TOOL_FILTERED = exports.ERR_MCP_TOOLS_CATEGORY = exports.OPT_COMMAND_MCP_TOOLS = exports.ERR_MCP_REFRESH_FAILED = exports.ERR_MCP_URL_INVALID = exports.ERR_MCP_ENDPOINT = exports.DESC_COMMAND_MCP = exports.ERR_API_PARAMETER_NOT_REPLACED = exports.TXT_API_ENDPOINT_REQUIRED_SCOPES = exports.ERR_API_ENDPOINT_NOT_FOUND = exports.ERR_API_WRONG_METHOD = exports.ERR_SCHEMA_FETCH_FAILED = exports.OPT_COMMAND_API_INFO_URL = exports.OPT_COMMAND_API_INFO_SCHEMA = exports.OPT_COMMAND_API_INFO_METHOD = exports.OPT_COMMAND_API_LIST_SEARCH = exports.OPT_COMMAND_API_LIST_METHOD = exports.ERR_API_REQUEST_BODY_VALUE = exports.ERR_API_REQUEST_QUERY_VALUE = exports.ERR_API_REQUEST_INVALID_JSON = exports.ERR_API_REQUEST_FILE_ERROR = exports.ERR_API_REQUEST_OUTPUT_EXISTS = exports.DESC_COMMAND_API_INFO = exports.DESC_COMMAND_API_FORM = exports.DESC_COMMAND_API_JSON = exports.DESC_COMMAND_API_DATA = exports.DESC_COMMAND_API_OUTPUT = exports.DESC_COMMAND_API_REQUEST_QUERY = exports.DESC_COMMAND_API_PROJECT = exports.DESC_COMMAND_API_WORKSPACE = exports.DESC_COMMAND_API_REQUEST_URL = exports.DESC_COMMAND_API_GET = exports.DESC_COMMAND_API_PATCH = exports.DESC_COMMAND_API_DELETE = exports.DESC_COMMAND_API_PUT = exports.DESC_COMMAND_API_POST = exports.DESC_COMMAND_API_LIST = exports.DESC_COMMAND_API = exports.ERR_WHOAMI_LOGOUT = exports.TXT_WHOAMI_NO_WORKSPACE = exports.DESC_COMMAND_WHOAMI = exports.TXT_ENVIRONMENT_DELETED = exports.TXT_ENVIRONMENT_DELETE_CONFIRM = exports.TXT_ENVIRONMENT_UPDATED = exports.TXT_ENVIRONMENT_CREATED = exports.TXT_ENVIRONMENT_NOT_FOUND = exports.ERR_ENVIRONMENT_NOT_FOUND = exports.OPTION_ENVIRONMENT_ICON = exports.OPTION_ENVIRONMENT_PUBLIC_URL = exports.OPTION_ENVIRONMENT_TAGS = void 0;
|
|
19
|
+
exports.DESC_COMMAND_ROUTE = exports.DESC_COMMAND_ROUTE_UPDATE = exports.DESC_COMMAND_ROUTE_DELETE = exports.DESC_COMMAND_ROUTE_GET = exports.DESC_COMMAND_DISTRO_UPDATE = exports.DESC_COMMAND_DISTRO_GET = exports.DESC_COMMAND_ROUTE_LIST = exports.DESC_COMMAND_DISTRO_LIST = exports.DESC_COMMAND_DISTRO_DELETE = exports.DESC_COMMAND_ROUTE_CREATE = exports.DESC_COMMAND_DISTRO_CREATE = exports.DESC_COMMAND_DISTRO = exports.ERR_API_MESSAGE_REPLACER = exports.ERR_LOGIN_INVALID_BASE_URL = exports.ERR_LOGIN_NO_WORKSPACE_FOUND = exports.ERR_LOGIN_NO_WORKSPACES = exports.ERR_REGISTER_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_CANCEL = exports.ERR_LOGIN_HTTP_FAILED = exports.ERR_LOGIN_HTTP_SERVER_PORT_TAKEN = exports.TXT_REGISTER_SUCCESS = exports.TXT_LOGIN_SUCCESS = exports.TXT_LOGIN_SELECT_WORKSPACE = exports.TXT_LOGIN_ENTER_BASE_URL = exports.TXT_LOGIN_PROVIDE_CODE = exports.TXT_REGISTER_OPEN_URL = exports.TXT_LOGIN_OPEN_URL = exports.TXT_REGISTER_OPENING_STAR = exports.TXT_LOGIN_OPENING_STAR = exports.TXT_REGISTER_OPENING = exports.TXT_LOGIN_OPENING = exports.TXT_LOGIN_SELECT_REGION = exports.TXT_WORKSPACE_NONE = exports.TXT_WORKSPACE_SET_SUCCESS = exports.ARG_COMMAND_WORKSPACE = exports.DESC_COMMAND_WORKSPACE_GET = exports.DESC_COMMAND_WORKSPACE_SET = exports.DESC_COMMAND_WORKSPACE_LIST = exports.DESC_COMMAND_WORKSPACE = exports.TXT_COMMAND_REGISTER_PROVIDE_NAME = exports.TXT_COMMAND_REGISTER_PROVIDE_EMAIL = exports.ERR_COMMAND_REGISTER_INVALID_NAME = exports.ERR_COMMAND_REGISTER_INVALID_EMAIL = exports.OPT_COMMAND_REGISTER_NAME = exports.OPT_COMMAND_REGISTER_EMAIL = exports.DESC_COMMAND_REGISTER = exports.TXT_LOGOUT_SUCCESS = exports.DESC_COMMAND_LOGOUT = exports.DESC_COMMAND_LOGIN = exports.HELP_COMMAND_MCP = void 0;
|
|
20
|
+
exports.ERR_COMMAND_DOMAIN_NOT_FOUND = exports.OPT_COMMAND_DOMAIN_ONLY_AVAILABLE = exports.OPT_COMMAND_DOMAIN_SORT = exports.OPT_COMMAND_DOMAIN_PHRASE = exports.OPT_COMMAND_DOMAIN_BUY_OWNER = exports.OPT_COMMAND_DOMAIN_BUY_TLD = exports.DESC_COMMAND_DOMAIN_GET = exports.DESC_COMMAND_DOMAIN_LIST = exports.DESC_COMMAND_DOMAIN_SEARCH = exports.DESC_COMMAND_DOMAIN_BUY = exports.DESC_COMMAND_DOMAIN = exports.ERR_ROUTE_NO_DEFAULT = exports.ERR_WRONG_ROUTE_TARGET = exports.ERR_COMMAND_ROUTE_NO_TARGET = exports.ERR_COMMAND_ROUTE_TYPE = exports.TXT_COMMAND_ROUTES_NOT_FOUND = exports.TXT_COMMAND_DISTROS_NOT_FOUND = exports.TXT_COMMAND_ROUTE_DELETED = exports.TXT_COMMAND_DISTRO_DELETED = exports.TXT_COMMAND_ROUTE_DELETE_CONFIRM = exports.TXT_COMMAND_DISTRO_DELETE_CONFIRM = exports.ERR_COMMAND_DISTRO_ENABLE_DISABLE = exports.ERR_COMMAND_NO_UPDATE = exports.ERR_COMMAND_DISTRO_NOT_FOUND = exports.ERR_COMMAND_SCOPE = exports.TXT_COMMAND_DISTRO_UPDATED = exports.TXT_COMMAND_ROUTE_UPDATED = exports.TXT_ROUTE_SERVE = exports.TXT_COMMAND_ROUTE_CREATED = exports.TXT_COMMAND_DISTRO_CREATED = exports.ERR_COMMAND_SCOPE_NO_ENVIRONMENT = exports.ERR_COMMAND_SCOPE_NO_PROJECT = exports.OPT_COMMAND_DISTRO_DISABLE = exports.OPT_COMMAND_DISTRO_ENABLE = exports.OPT_COMMAND_DISTRO_AGENT_NOTE = exports.OPT_COMMAND_DISTRO_NOTE = exports.OPT_COMMAND_DISTRO_NAME = exports.OPT_COMMAND_ROUTE_TARGET = exports.OPT_COMMAND_ROUTE_AGENT_NOTE = exports.OPT_COMMAND_ROUTE_NOTE = exports.OPT_COMMAND_ROUTE_PATH = exports.OPT_COMMAND_ROUTE_DOMAIN = exports.OPT_COMMAND_ROUTE_SUBDOMAIN = exports.OPT_COMMAND_ROUTE_TYPE = exports.OPT_COMMAND_ROUTE_ID = exports.OPT_COMMAND_DISTRO_IDENTIFIER = exports.OPT_COMMAND_SCOPE_ENVIRONMENT = exports.OPT_COMMAND_SCOPE = exports.OPT_COMMAND_AGENT_NOTE = exports.OPT_COMMAND_NOTE = void 0;
|
|
21
|
+
exports.ERR_COMMAND_PROJECT_LINK_DIR_NOT_DIR = exports.TXT_COMMAND_PROJECT_LINK_GIT_REPO_INITIALIZED = exports.TXT_COMMAND_PROJECT_LINK_GIT_REPO = exports.TXT_COMMAND_PROJECT_LINK_DIR_CONFIRM = exports.TXT_COMMAND_PROJECT_LINK_DIR_LINKED = exports.ERR_COMMAND_PROJECT_LINK_DIR_CREATE = exports.OPT_COMMAND_PROJECT_LINK_TRY_NOW = exports.OPT_COMMAND_PROJECT_LINK_SET_GIT_REMOTE = exports.OPT_COMMAND_PROJECT_LINK_HAS_REMOTE = exports.OPT_COMMAND_PROJECT_LINK_DIRECTORY = exports.OPT_COMMAND_PROJECT_LINK_GIT = exports.OPT_COMMAND_PROJECT_LINK_RELINK = exports.DESC_COMMAND_PROJECT_LINK = exports.DESC_COMMAND_PROJECT_LIST = exports.DESC_COMMAND_PROJECT_GIT = exports.DESC_COMMAND_PROJECT_GIT_CREDENTIAL = exports.DESC_COMMAND_PROJECT = exports.TXT_ARTIFACT_VERSION_DOWNLOAD = exports.TXT_ARTIFACT_PUBLISH = exports.TXT_ARTIFACT_CREATED = exports.TXT_ARTIFACT_VERSION_DELETED = exports.TXT_ARTIFACT_DELETED = exports.ERR_COMMAND_ARTIFACT_TYPE = exports.OPT_COMMAND_ARTIFACT_VERSION = exports.OPT_COMMAND_ARTIFACT_IDENTIFIER = exports.OPT_COMMAND_ARTIFACT_CREATE_IDENTIFIER = exports.OPT_COMMAND_ARTIFACT_NAME = exports.OPT_COMMAND_ARTIFACT_TYPE = exports.DESC_COMMAND_ARTIFACT_CREATE = exports.DESC_COMMAND_ARTIFACT_COMPOSER_PUBLISH = exports.DESC_COMMAND_ARTIFACT_GET = exports.TXT_ARTIFACT_DOCKER_LOGIN_FAILED = exports.TXT_ARTIFACT_DOCKER_LOGIN_SUCCESS = exports.TXT_ARTIFACT_VERSION_DELETE_CONFIRM = exports.TXT_ARTIFACT_DELETE_CONFIRM = exports.DESC_COMMAND_ARTIFACT_DELETE = exports.ERR_COMMAND_ARTIFACT_NO_PROJECTS = exports.DESC_COMMAND_ARTIFACT_VERSION_GET = exports.DESC_COMMAND_ARTIFACT_VERSION_LIST = exports.DESC_COMMAND_ARTIFACT_VERSION_DELETE = exports.DESC_COMMAND_ARTIFACT_DOCKER_LOGIN = exports.DESC_COMMAND_ARTIFACT_LIST = exports.DESC_COMMAND_ARTIFACT_COMPOSER = exports.DESC_COMMAND_ARTIFACT_VERSION = exports.ERR_COMMAND_DOMAIN_UNAVAILABLE = exports.OPTION_COMMAND_DOMAIN_IDENTIFIER = exports.ERR_COMMAND_DOMAIN_NO_DOMAINS = exports.TXT_COMMAND_DOMAIN_PROMPT_REQUIRED = exports.TXT_COMMAND_DOMAIN_BUY_SELECT_DOMAIN = exports.TXT_COMMAND_DOMAIN_PROVIDE_PROMPT = void 0;
|
|
22
|
+
exports.EXAMPLE_TARGET_GET = exports.EXAMPLE_TARGET_LIST = exports.EXAMPLE_SANDBOX_SNAPSHOT_LIST = exports.EXAMPLE_SANDBOX_SNAPSHOT_GET = exports.EXAMPLE_SANDBOX_SNAPSHOT_DELETE = exports.EXAMPLE_SANDBOX_SNAPSHOT_CREATE = exports.EXAMPLE_SANDBOX_EXEC_STATUS = exports.EXAMPLE_SANDBOX_EXEC_LOGS = exports.EXAMPLE_SANDBOX_APP_STATUS = exports.EXAMPLE_SANDBOX_APP_STOP = exports.EXAMPLE_SANDBOX_APP_REMOVE = exports.EXAMPLE_SANDBOX_APP_ADD = exports.EXAMPLE_SANDBOX_APP_START = exports.EXAMPLE_SANDBOX_APP_LOGS = exports.EXAMPLE_SANDBOX_EXEC_LIST = exports.EXAMPLE_SANDBOX_APP_LIST = exports.EXAMPLE_SANDBOX_EXEC_KILL = exports.EXAMPLE_SANDBOX_SSH = exports.EXAMPLE_SANDBOX_EXEC_COMMAND = exports.EXAMPLE_TUNNEL_START = exports.EXAMPLE_TUNNEL_TCP = exports.EXAMPLE_TUNNEL_TLS = exports.EXAMPLE_AGENT_TUNNEL_START = exports.EXAMPLE_AGENT_TUNNEL_STATUS = exports.EXAMPLE_AGENT_TUNNEL_REMOVE = exports.EXAMPLE_AGENT_TUNNEL_LIST = exports.EXAMPLE_TUNNEL_HTTP = exports.EXAMPLE_SANDBOX_CREATE = exports.EXAMPLE_DISTRO_CREATE = exports.EXAMPLE_ROUTE_CREATE = exports.EXAMPLE_ROUTE_LIST = exports.EXAMPLE_ROUTE_UPDATE = exports.EXAMPLE_ROUTE_DELETE = exports.EXAMPLE_DISTRO_DELETE = exports.EXAMPLE_ROUTE_GET = exports.EXAMPLE_DISTRO_UPDATE = exports.EXAMPLE_DISTRO_GET = exports.EXAMPLE_DISTRO_LIST = exports.EXAMPLE_SANDBOX_CP = exports.ERR_PROJECT_NO_PROJECTS = exports.TXT_LOGIN_SELECT_PROJECT = exports.TXT_COMMAND_PROJECT_CREATED = exports.TXT_COMMAND_PROJECT_LINK_NOT_FOUND = exports.TXT_COMMAND_PROJECT_LINK_NAME = exports.TXT_COMMAND_PROJECT_LINK_SELECT_PROJECT = exports.TXT_COMMAND_PROJECT_LINK_TO = exports.TXT_COMMAND_PROJECT_LINK_EXISTING_DESC = exports.TXT_COMMAND_PROJECT_LINK_EXISTING = exports.TXT_COMMAND_PROJECT_LINK_CREATE_NEW_DESC = exports.TXT_COMMAND_PROJECT_LINK_CREATE_NEW = void 0;
|
|
23
|
+
exports.EXAMPLE_CRAWL_LINK = exports.EXAMPLE_CRAWL_RUN = exports.EXAMPLE_TESTS_CAPTURE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CLOSE = exports.EXAMPLE_TESTS_VISUAL_SESSION_CREATE = exports.EXAMPLE_TESTS_VISUAL_LINK = exports.EXAMPLE_TESTS_VISUAL_UPLOAD = exports.EXAMPLE_TESTS_VISUAL_SETUP = exports.EXAMPLE_TESTS_UNIT_LINK = exports.EXAMPLE_TESTS_UNIT_UPLOAD = exports.EXAMPLE_ARTIFACT_VERSION_DELETE = exports.EXAMPLE_ARTIFACT_VERSION_GET = exports.EXAMPLE_ARTIFACT_VERSION_LIST = exports.EXAMPLE_ARTIFACT_CREATE = exports.EXAMPLE_ARTIFACT_DELETE = exports.EXAMPLE_ARTIFACT_DOWNLOAD = exports.EXAMPLE_ARTIFACT_PUBLISH = exports.EXAMPLE_ARTIFACT_COMPOSER_PUBLISH = exports.EXAMPLE_ARTIFACT_VERSION_CREATE = exports.EXAMPLE_PIPELINE_RUN_RETRY = exports.EXAMPLE_PIPELINE_RUN_LIST = exports.EXAMPLE_PIPELINE_LIST = exports.EXAMPLE_PIPELINE_YML = exports.EXAMPLE_PIPELINE_GET = exports.EXAMPLE_PIPELINE_UPDATE = exports.EXAMPLE_PIPELINE_DELETE = exports.EXAMPLE_PIPELINE_CREATE = exports.EXAMPLE_PIPELINE_RUN_CANCEL = exports.EXAMPLE_PIPELINE_RUN_APPLY = exports.EXAMPLE_PIPELINE_RUN_LOGS = exports.EXAMPLE_PIPELINE_RUN_JSONL = exports.EXAMPLE_PIPELINE_RUN_STATUS = exports.EXAMPLE_PIPELINE_RUN_START = exports.EXAMPLE_SANDBOX_ENDPOINT_LIST = exports.EXAMPLE_SANDBOX_ENDPOINT_GET = exports.EXAMPLE_SANDBOX_ENDPOINT_DELETE = exports.EXAMPLE_SANDBOX_ENDPOINT_CREATE = exports.EXAMPLE_ENVIRONMENT_DELETE = exports.EXAMPLE_ENVIRONMENT_UPDATE = exports.EXAMPLE_ENVIRONMENT_CREATE = exports.EXAMPLE_ENVIRONMENT_GET = exports.EXAMPLE_ENVIRONMENT_LIST = exports.EXAMPLE_TARGET_EXEC_LOGS = exports.EXAMPLE_TARGET_EXEC_LIST = exports.EXAMPLE_TARGET_EXEC_KILL = exports.EXAMPLE_TARGET_EXEC_STATUS = exports.EXAMPLE_TARGET_EXEC_COMMAND = exports.EXAMPLE_TARGET_DELETE = exports.EXAMPLE_TARGET_UPDATE = exports.EXAMPLE_TARGET_CREATE = void 0;
|
|
24
|
+
exports.ERR_YAML_SCHEMA_READ_FAILED = exports.ERR_YAML_SCHEMA_FETCH_FAILED = exports.TXT_YAML_UNKNOWN_TOP_LEVEL_KEYS = exports.ERR_YAML_ITEM_UNKNOWN = exports.ERR_YAML_ITEM_MISSING = exports.ERR_YAML_MUST_BE = exports.ERR_YAML_PIPELINE_NOT_OBJECT = exports.ERR_YAML_EMPTY_ARRAY = exports.ERR_YAML_PLAIN_OBJECT = exports.ERR_YAML_NOT_ARRAY = exports.ERR_YAML_PARSE = exports.ERR_YAML_VALIDATE_FAILED_COUNT = exports.TXT_YAML_VALIDATE_ALL_PASS = exports.ERR_YAML_VALIDATE_FAILED = exports.ERR_YAML_VALIDATE_FILE_NOT_FOUND = exports.OPTION_YAML_VALIDATE_FILE = exports.DESC_COMMAND_YAML_VALIDATE = exports.DESC_COMMAND_YAML_ACTIONS_INFO = exports.DESC_COMMAND_YAML_ACTIONS_LIST = exports.DESC_COMMAND_YAML_ACTIONS = exports.DESC_COMMAND_YAML_PIPELINE = exports.DESC_COMMAND_YAML = exports.TXT_ACTION_SUGGESTED_FROM_REPO = exports.TXT_ACTION_USE_LIST = exports.TXT_ACTION_DID_YOU_MEAN = exports.ERR_ACTION_SEARCH_NO_RESULTS = exports.ERR_ACTION_NOT_FOUND = exports.OPTION_ACTION_TYPE = exports.OPTION_ACTION_SEARCH = exports.EXAMPLE_YAML_VALIDATE = exports.EXAMPLE_YAML_ACTIONS_INFO = exports.EXAMPLE_YAML_ACTIONS_LIST = exports.EXAMPLE_YAML_PIPELINE = void 0;
|
|
25
25
|
const utils_1 = require("./utils");
|
|
26
26
|
exports.ERR_CANCELLED = 'Cancelled';
|
|
27
27
|
exports.ERR_REST_API_GENERAL_ERROR = 'Something went wrong';
|
|
@@ -1058,8 +1058,6 @@ exports.ERR_API_ENDPOINT_NOT_FOUND = 'Endpoint not found';
|
|
|
1058
1058
|
exports.TXT_API_ENDPOINT_REQUIRED_SCOPES = 'Required scopes';
|
|
1059
1059
|
const ERR_API_PARAMETER_NOT_REPLACED = (param) => `Replace URL parameter ${param}`;
|
|
1060
1060
|
exports.ERR_API_PARAMETER_NOT_REPLACED = ERR_API_PARAMETER_NOT_REPLACED;
|
|
1061
|
-
const ERR_API_MEDIA_TYPE_NOT_IMPLEMENTED = (type) => `Media type not implemented (${type})`;
|
|
1062
|
-
exports.ERR_API_MEDIA_TYPE_NOT_IMPLEMENTED = ERR_API_MEDIA_TYPE_NOT_IMPLEMENTED;
|
|
1063
1061
|
// Mcp command
|
|
1064
1062
|
exports.DESC_COMMAND_MCP = 'Run a local stdio MCP server proxying to the Buddy remote MCP server';
|
|
1065
1063
|
const ERR_MCP_ENDPOINT = (host) => `Unable to resolve the MCP endpoint for '${host}'`;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bdy",
|
|
3
3
|
"preferGlobal": false,
|
|
4
|
-
"version": "1.25.
|
|
4
|
+
"version": "1.25.2-beta",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"homepage": "https://buddy.works/docs/cli",
|
|
@@ -50,14 +50,12 @@
|
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"@buddy-works/ci-info": "1.1.7",
|
|
53
|
+
"@buddy-works/docs-schema": "0.1.3",
|
|
53
54
|
"@fastify/accept-negotiator": "2.0.1",
|
|
54
55
|
"@fastify/cors": "11.2.0",
|
|
55
56
|
"@inquirer/prompts": "8.5.2",
|
|
56
57
|
"@modelcontextprotocol/sdk": "1.30.0",
|
|
57
58
|
"@puppeteer/browsers": "3.2.0",
|
|
58
|
-
"@scalar/json-magic": "0.12.16",
|
|
59
|
-
"@scalar/openapi-parser": "0.28.7",
|
|
60
|
-
"@scalar/openapi-types": "0.9.1",
|
|
61
59
|
"@xhmikosr/decompress": "11.1.3",
|
|
62
60
|
"ajv": "8.20.0",
|
|
63
61
|
"ajv-formats": "3.0.1",
|
|
@@ -77,7 +75,6 @@
|
|
|
77
75
|
"jsonwebtoken": "9.0.3",
|
|
78
76
|
"mime-db": "1.54.0",
|
|
79
77
|
"mime-types": "3.0.2",
|
|
80
|
-
"minisearch": "7.2.0",
|
|
81
78
|
"netmask": "2.1.1",
|
|
82
79
|
"node-forge": "1.4.0",
|
|
83
80
|
"open": "11.0.0",
|
|
@@ -105,7 +102,6 @@
|
|
|
105
102
|
"@rollup/plugin-json": "6.1.0",
|
|
106
103
|
"@rollup/plugin-node-resolve": "16.0.3",
|
|
107
104
|
"@rollup/plugin-replace": "6.0.3",
|
|
108
|
-
"@scalar/types": "0.13.2",
|
|
109
105
|
"@stylistic/eslint-plugin": "5.10.0",
|
|
110
106
|
"@types/basic-auth": "1.1.8",
|
|
111
107
|
"@types/content-disposition": "0.5.9",
|
package/distTs/README.md
DELETED
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
# Buddy CLI (`bdy`)
|
|
2
|
-
|
|
3
|
-
Work seamlessly with [Buddy](https://buddy.works) from the command line.
|
|
4
|
-
|
|
5
|
-
`bdy` is Buddy's official command-line interface for managing CI/CD pipelines, agents, tests, artifacts, sandboxes, distributions, and more — straight from your terminal.
|
|
6
|
-
|
|
7
|
-
📚 Full documentation: https://buddy.works/docs/cli/getting-started
|
|
8
|
-
|
|
9
|
-
## Installation
|
|
10
|
-
|
|
11
|
-
### npm (recommended)
|
|
12
|
-
|
|
13
|
-
Requires Node.js 14+.
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
# macOS / Linux
|
|
17
|
-
sudo npm i -g bdy
|
|
18
|
-
|
|
19
|
-
# Windows
|
|
20
|
-
npm i -g bdy
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
### Homebrew (macOS)
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
brew tap buddy/bdy
|
|
27
|
-
brew install bdy
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
### APT (Linux x64 / ARM64)
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
sudo apt-get update && sudo apt-get install -y software-properties-common
|
|
34
|
-
sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/buddy.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys eb39332e766364ca6220e8dc631c5a16310cc0ad
|
|
35
|
-
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/buddy.gpg] https://es.buddy.works/bdy/apt-repo prod main" | sudo tee /etc/apt/sources.list.d/buddy.list > /dev/null
|
|
36
|
-
sudo apt-get update && sudo apt-get install -y bdy
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
> On ARM64, replace `arch=amd64` with `arch=arm64` in the `echo` command above.
|
|
40
|
-
|
|
41
|
-
### Chocolatey (Windows)
|
|
42
|
-
|
|
43
|
-
```powershell
|
|
44
|
-
choco install bdy --pre
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### Direct download
|
|
48
|
-
|
|
49
|
-
Prebuilt binaries are available for macOS (Apple Silicon), Linux (x64/ARM64), and Windows (x64) on the [installation page](https://buddy.works/docs/cli/getting-started).
|
|
50
|
-
|
|
51
|
-
### Verify & update
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
bdy version # show current and latest version
|
|
55
|
-
sudo npm i -g bdy # update (or use your package manager's upgrade command)
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## Authentication
|
|
59
|
-
|
|
60
|
-
A [Buddy account](https://buddy.works) is required to use the CLI.
|
|
61
|
-
|
|
62
|
-
Log in interactively:
|
|
63
|
-
|
|
64
|
-
```bash
|
|
65
|
-
bdy login
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
New to Buddy? Create an account from the CLI:
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
bdy register
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Linking a project
|
|
75
|
-
|
|
76
|
-
Once logged in, link a directory to a Buddy project:
|
|
77
|
-
|
|
78
|
-
```bash
|
|
79
|
-
mkdir my-proj
|
|
80
|
-
cd my-proj
|
|
81
|
-
bdy proj link
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
After linking, every `bdy` command run from this directory is executed against the linked project — no need to pass the project name each time.
|
|
85
|
-
|
|
86
|
-
Check who you're logged in as, or log out:
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
bdy whoami
|
|
90
|
-
bdy logout
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Tokens & non-interactive login
|
|
94
|
-
|
|
95
|
-
For CI/CD pipelines and non-browser environments, authenticate with a [personal access token](https://buddy.works/docs/api/getting-started/oauth2/personal-access-token):
|
|
96
|
-
|
|
97
|
-
```bash
|
|
98
|
-
bdy login --token <token>
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
The login command accepts the following options:
|
|
102
|
-
|
|
103
|
-
| Option | Description | Environment variable |
|
|
104
|
-
| --- | --- | --- |
|
|
105
|
-
| `--token <token>` | Personal access token | `BUDDY_TOKEN` |
|
|
106
|
-
| `--api <url>` | API URL for On-Premises installations | `BUDDY_API_ENDPOINT` |
|
|
107
|
-
| `--region <region>` | Region: `us`, `eu`, or `as` | `BUDDY_REGION` |
|
|
108
|
-
| `-w, --workspace <domain>` | Workspace URL handle | `BUDDY_WORKSPACE` |
|
|
109
|
-
|
|
110
|
-
Each option can be supplied as a flag or via its environment variable — handy for pipelines and headless setups:
|
|
111
|
-
|
|
112
|
-
```bash
|
|
113
|
-
export BUDDY_TOKEN=<token>
|
|
114
|
-
export BUDDY_WORKSPACE=<your-workspace>
|
|
115
|
-
bdy login
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
## Agent integration (plugin & skills)
|
|
119
|
-
|
|
120
|
-
The [Buddy Plugin](https://github.com/buddy/buddy-plugin) lets coding agents deploy applications, expose local services, and manage infrastructure on Buddy. It bundles a consolidated skill covering sandboxes, artifacts, tunnels, domains, distributions, and pipelines, plus two commands:
|
|
121
|
-
|
|
122
|
-
- `/deploy [name] [path]` — deploy a static site or server application
|
|
123
|
-
- `/expose [port]` — open a tunnel to a locally running service
|
|
124
|
-
|
|
125
|
-
Make sure the CLI is installed first (`sudo npm install -g bdy`), then:
|
|
126
|
-
|
|
127
|
-
**Claude Code** — install the plugin (commands + skills):
|
|
128
|
-
|
|
129
|
-
```bash
|
|
130
|
-
claude plugin marketplace add buddy/buddy-plugin
|
|
131
|
-
claude plugin install buddy@buddy-plugin
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
**Other agents** — install the skills only:
|
|
135
|
-
|
|
136
|
-
```bash
|
|
137
|
-
npx skills add buddy/buddy-plugin
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
Then authenticate and link your project:
|
|
141
|
-
|
|
142
|
-
```bash
|
|
143
|
-
bdy login
|
|
144
|
-
cd your-project
|
|
145
|
-
bdy proj link
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
The plugin auto-detects your project type: static sites generate versioned artifacts with public URLs, while server applications deploy to sandboxes with HTTPS endpoints. Monorepos can deploy multiple applications, each getting its own URL and endpoint.
|
|
149
|
-
|
|
150
|
-
## Commands
|
|
151
|
-
|
|
152
|
-
| Command | Description |
|
|
153
|
-
| --- | --- |
|
|
154
|
-
| `bdy login` / `sign-in` | Log in to Buddy |
|
|
155
|
-
| `bdy register` / `sign-up` | Register a new Buddy account |
|
|
156
|
-
| `bdy whoami` | Check login information |
|
|
157
|
-
| `bdy logout` | Log out from Buddy |
|
|
158
|
-
| `bdy workspace` / `ws` | Manage workspaces |
|
|
159
|
-
| `bdy project` / `proj` | Manage projects |
|
|
160
|
-
| `bdy pipeline` / `pip` | Interact with the pipeline service |
|
|
161
|
-
| `bdy artifact` / `art` | Interact with the artifact service |
|
|
162
|
-
| `bdy sandbox` / `sb` | Interact with sandboxes |
|
|
163
|
-
| `bdy agent` | Install and run `bdy` as an OS service (Windows, macOS, Linux) |
|
|
164
|
-
| `bdy tunnel` | Manage tunnel configuration |
|
|
165
|
-
| `bdy crawl` | Manage web crawls (Markdown, HTML, PNG/JPEG screenshots; suite linking) |
|
|
166
|
-
| `bdy tests` | Manage unit tests and visual regression (Storybook, URL captures, runners) |
|
|
167
|
-
| `bdy domain` | Manage zones used in distribution routes |
|
|
168
|
-
| `bdy distro` | Manage distributions |
|
|
169
|
-
| `bdy api` | Contact the Buddy API directly |
|
|
170
|
-
| `bdy update` / `version` | Show version and update the CLI |
|
|
171
|
-
|
|
172
|
-
Run any command with `-h` / `--help` for detailed usage:
|
|
173
|
-
|
|
174
|
-
```bash
|
|
175
|
-
bdy --help
|
|
176
|
-
bdy pipeline --help
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
## Feedback
|
|
180
|
-
|
|
181
|
-
Found a bug or have a feature request? Let us know through [Buddy support](https://buddy.works/support) or the [documentation](https://buddy.works/docs/cli/getting-started).
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const logger_1 = __importDefault(require("./logger"));
|
|
7
|
-
class Autocomplete {
|
|
8
|
-
getCommandsMap(command) {
|
|
9
|
-
const commands = {};
|
|
10
|
-
command.commands.forEach((c) => {
|
|
11
|
-
const map = this.getCommandsMap(c);
|
|
12
|
-
const name = c.name() || 'bdy';
|
|
13
|
-
commands[name] = map;
|
|
14
|
-
c.aliases().forEach((a) => {
|
|
15
|
-
commands[a] = map;
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
command.options.forEach((o) => {
|
|
19
|
-
const name = `--${o.name()}`;
|
|
20
|
-
commands[name] = {};
|
|
21
|
-
});
|
|
22
|
-
let lastArg = commands;
|
|
23
|
-
command.registeredArguments.forEach((a) => {
|
|
24
|
-
logger_1.default.info(a);
|
|
25
|
-
let name;
|
|
26
|
-
if (a.required) {
|
|
27
|
-
name = `<${a.name()}>`;
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
name = `[${a.name()}]`;
|
|
31
|
-
}
|
|
32
|
-
name = name.replaceAll(':', '꞉'); // U+A789 MODIFIER LETTER COLON - looks like : but doesn't trigger tabtab delimiter
|
|
33
|
-
lastArg[name] = {};
|
|
34
|
-
lastArg = lastArg[name];
|
|
35
|
-
});
|
|
36
|
-
return commands;
|
|
37
|
-
}
|
|
38
|
-
init(rootCommand) {
|
|
39
|
-
// COMP_LINE is set by all shells (bash natively, zsh/fish via tabtab scripts) when invoking completion
|
|
40
|
-
if (!process.env.COMP_LINE)
|
|
41
|
-
return false;
|
|
42
|
-
const tabtab = require('tabtab');
|
|
43
|
-
const env = tabtab.parseEnv(process.env);
|
|
44
|
-
if (!env.complete)
|
|
45
|
-
return false;
|
|
46
|
-
let map = {
|
|
47
|
-
bdy: this.getCommandsMap(rootCommand)
|
|
48
|
-
};
|
|
49
|
-
const s = (env.partial || '').trim().split(' ').filter((n) => !n.startsWith('--'));
|
|
50
|
-
const last = s[s.length - 1];
|
|
51
|
-
for (let i = 0; i < s.length - 1; i += 1) {
|
|
52
|
-
const name = s[i];
|
|
53
|
-
if (!map[name]) {
|
|
54
|
-
const arg = Object.keys(map).find((k) => k.startsWith('<') || k.startsWith('['));
|
|
55
|
-
if (arg) {
|
|
56
|
-
map = map[arg];
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
return true;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
map = map[name];
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
if (map[last])
|
|
67
|
-
map = map[last];
|
|
68
|
-
else {
|
|
69
|
-
const arg = Object.keys(map).find((k) => k.startsWith('<') || k.startsWith('['));
|
|
70
|
-
if (arg)
|
|
71
|
-
map = map[arg];
|
|
72
|
-
}
|
|
73
|
-
tabtab.log(Object.keys(map));
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
async install() {
|
|
77
|
-
const tabtab = require('tabtab');
|
|
78
|
-
await tabtab.install({
|
|
79
|
-
name: process.title,
|
|
80
|
-
completer: process.title
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
async uninstall() {
|
|
84
|
-
const tabtab = require('tabtab');
|
|
85
|
-
await tabtab.uninstall({
|
|
86
|
-
name: process.title
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
exports.default = new Autocomplete();
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const utils_1 = require("../../utils");
|
|
7
|
-
const autocomplete_1 = __importDefault(require("../../autocomplete"));
|
|
8
|
-
const texts_1 = require("../../texts");
|
|
9
|
-
const output_1 = __importDefault(require("../../output"));
|
|
10
|
-
const commandAutocompleteInstall = (0, utils_1.newCommand)('install', texts_1.DESC_COMMAND_AUTOCOMPLETE_INSTALL);
|
|
11
|
-
commandAutocompleteInstall.alias('i');
|
|
12
|
-
commandAutocompleteInstall.action(async () => {
|
|
13
|
-
await autocomplete_1.default.install();
|
|
14
|
-
output_1.default.exitSuccess(texts_1.TXT_AUTOCOMPLETE_INSTALLED);
|
|
15
|
-
});
|
|
16
|
-
exports.default = commandAutocompleteInstall;
|