@qoren/cli 0.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/LICENSE +202 -0
- package/README.md +162 -0
- package/dist/args.d.ts +5 -0
- package/dist/args.d.ts.map +1 -0
- package/dist/args.js +23 -0
- package/dist/args.js.map +1 -0
- package/dist/commands/account.d.ts +4 -0
- package/dist/commands/account.d.ts.map +1 -0
- package/dist/commands/account.js +154 -0
- package/dist/commands/account.js.map +1 -0
- package/dist/commands/agent.d.ts +27 -0
- package/dist/commands/agent.d.ts.map +1 -0
- package/dist/commands/agent.js +968 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/api.d.ts +4 -0
- package/dist/commands/api.d.ts.map +1 -0
- package/dist/commands/api.js +66 -0
- package/dist/commands/api.js.map +1 -0
- package/dist/commands/approvals.d.ts +11 -0
- package/dist/commands/approvals.d.ts.map +1 -0
- package/dist/commands/approvals.js +140 -0
- package/dist/commands/approvals.js.map +1 -0
- package/dist/commands/auth.d.ts +4 -0
- package/dist/commands/auth.d.ts.map +1 -0
- package/dist/commands/auth.js +215 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/clients.d.ts +62 -0
- package/dist/commands/clients.d.ts.map +1 -0
- package/dist/commands/clients.js +311 -0
- package/dist/commands/clients.js.map +1 -0
- package/dist/commands/console.d.ts +4 -0
- package/dist/commands/console.d.ts.map +1 -0
- package/dist/commands/console.js +26 -0
- package/dist/commands/console.js.map +1 -0
- package/dist/commands/customAgent.d.ts +42 -0
- package/dist/commands/customAgent.d.ts.map +1 -0
- package/dist/commands/customAgent.js +449 -0
- package/dist/commands/customAgent.js.map +1 -0
- package/dist/commands/designer.d.ts +32 -0
- package/dist/commands/designer.d.ts.map +1 -0
- package/dist/commands/designer.js +682 -0
- package/dist/commands/designer.js.map +1 -0
- package/dist/commands/env.d.ts +15 -0
- package/dist/commands/env.d.ts.map +1 -0
- package/dist/commands/env.js +245 -0
- package/dist/commands/env.js.map +1 -0
- package/dist/commands/interactive.d.ts +4 -0
- package/dist/commands/interactive.d.ts.map +1 -0
- package/dist/commands/interactive.js +30 -0
- package/dist/commands/interactive.js.map +1 -0
- package/dist/commands/jobs.d.ts +4 -0
- package/dist/commands/jobs.d.ts.map +1 -0
- package/dist/commands/jobs.js +59 -0
- package/dist/commands/jobs.js.map +1 -0
- package/dist/commands/secrets.d.ts +15 -0
- package/dist/commands/secrets.d.ts.map +1 -0
- package/dist/commands/secrets.js +164 -0
- package/dist/commands/secrets.js.map +1 -0
- package/dist/commands/webhook.d.ts +4 -0
- package/dist/commands/webhook.d.ts.map +1 -0
- package/dist/commands/webhook.js +275 -0
- package/dist/commands/webhook.js.map +1 -0
- package/dist/config.d.ts +38 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +117 -0
- package/dist/config.js.map +1 -0
- package/dist/context.d.ts +52 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +163 -0
- package/dist/context.js.map +1 -0
- package/dist/duration.d.ts +9 -0
- package/dist/duration.d.ts.map +1 -0
- package/dist/duration.js +30 -0
- package/dist/duration.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/issues.d.ts +10 -0
- package/dist/issues.d.ts.map +1 -0
- package/dist/issues.js +45 -0
- package/dist/issues.js.map +1 -0
- package/dist/jobProgress.d.ts +12 -0
- package/dist/jobProgress.d.ts.map +1 -0
- package/dist/jobProgress.js +56 -0
- package/dist/jobProgress.js.map +1 -0
- package/dist/loopback.d.ts +28 -0
- package/dist/loopback.d.ts.map +1 -0
- package/dist/loopback.js +110 -0
- package/dist/loopback.js.map +1 -0
- package/dist/migrate/apply.d.ts +29 -0
- package/dist/migrate/apply.d.ts.map +1 -0
- package/dist/migrate/apply.js +135 -0
- package/dist/migrate/apply.js.map +1 -0
- package/dist/migrate/bundle.d.ts +89 -0
- package/dist/migrate/bundle.d.ts.map +1 -0
- package/dist/migrate/bundle.js +681 -0
- package/dist/migrate/bundle.js.map +1 -0
- package/dist/migrate/tar.d.ts +9 -0
- package/dist/migrate/tar.d.ts.map +1 -0
- package/dist/migrate/tar.js +89 -0
- package/dist/migrate/tar.js.map +1 -0
- package/dist/output.d.ts +46 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +152 -0
- package/dist/output.js.map +1 -0
- package/dist/program.d.ts +17 -0
- package/dist/program.d.ts.map +1 -0
- package/dist/program.js +89 -0
- package/dist/program.js.map +1 -0
- package/dist/runtimes.d.ts +11 -0
- package/dist/runtimes.d.ts.map +1 -0
- package/dist/runtimes.js +20 -0
- package/dist/runtimes.js.map +1 -0
- package/dist/slug.d.ts +3 -0
- package/dist/slug.d.ts.map +1 -0
- package/dist/slug.js +15 -0
- package/dist/slug.js.map +1 -0
- package/dist/taskChain.d.ts +20 -0
- package/dist/taskChain.d.ts.map +1 -0
- package/dist/taskChain.js +40 -0
- package/dist/taskChain.js.map +1 -0
- package/dist/taskDelivery.d.ts +33 -0
- package/dist/taskDelivery.d.ts.map +1 -0
- package/dist/taskDelivery.js +67 -0
- package/dist/taskDelivery.js.map +1 -0
- package/dist/tui/app.d.ts +5 -0
- package/dist/tui/app.d.ts.map +1 -0
- package/dist/tui/app.js +130 -0
- package/dist/tui/app.js.map +1 -0
- package/dist/tui/index.d.ts +12 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +34 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/model.d.ts +110 -0
- package/dist/tui/model.d.ts.map +1 -0
- package/dist/tui/model.js +257 -0
- package/dist/tui/model.js.map +1 -0
- package/dist/tui/overlay.d.ts +66 -0
- package/dist/tui/overlay.d.ts.map +1 -0
- package/dist/tui/overlay.js +216 -0
- package/dist/tui/overlay.js.map +1 -0
- package/dist/tui/panes/account.d.ts +5 -0
- package/dist/tui/panes/account.d.ts.map +1 -0
- package/dist/tui/panes/account.js +108 -0
- package/dist/tui/panes/account.js.map +1 -0
- package/dist/tui/panes/agents.d.ts +9 -0
- package/dist/tui/panes/agents.d.ts.map +1 -0
- package/dist/tui/panes/agents.js +340 -0
- package/dist/tui/panes/agents.js.map +1 -0
- package/dist/tui/panes/chat.d.ts +14 -0
- package/dist/tui/panes/chat.d.ts.map +1 -0
- package/dist/tui/panes/chat.js +169 -0
- package/dist/tui/panes/chat.js.map +1 -0
- package/dist/tui/panes/environments.d.ts +6 -0
- package/dist/tui/panes/environments.d.ts.map +1 -0
- package/dist/tui/panes/environments.js +364 -0
- package/dist/tui/panes/environments.js.map +1 -0
- package/dist/tui/panes/jobs.d.ts +5 -0
- package/dist/tui/panes/jobs.d.ts.map +1 -0
- package/dist/tui/panes/jobs.js +104 -0
- package/dist/tui/panes/jobs.js.map +1 -0
- package/dist/tui/store.d.ts +40 -0
- package/dist/tui/store.d.ts.map +1 -0
- package/dist/tui/store.js +124 -0
- package/dist/tui/store.js.map +1 -0
- package/dist/tui/ui.d.ts +95 -0
- package/dist/tui/ui.d.ts.map +1 -0
- package/dist/tui/ui.js +144 -0
- package/dist/tui/ui.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/migrate/bundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type TarEntry = {
|
|
2
|
+
/** Path inside the archive, exactly as stored. */
|
|
3
|
+
path: string;
|
|
4
|
+
data: Uint8Array;
|
|
5
|
+
};
|
|
6
|
+
/** Unpack an (already decompressed) tar into its regular files. Directories
|
|
7
|
+
* and anything that is not a plain file are dropped. */
|
|
8
|
+
export declare function readTar(bytes: Uint8Array): TarEntry[];
|
|
9
|
+
//# sourceMappingURL=tar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tar.d.ts","sourceRoot":"","sources":["../../src/migrate/tar.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,QAAQ,GAAG;IACrB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC;AA8BF;wDACwD;AACxD,wBAAgB,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,QAAQ,EAAE,CA0CrD"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
// A reader for the archives migrate.sh produces.
|
|
2
|
+
//
|
|
3
|
+
// Just enough tar to unpack one export bundle: ustar headers, the GNU long-name
|
|
4
|
+
// extension, and pax headers skipped. Written here rather than pulled in as a
|
|
5
|
+
// dependency because the archive format is fixed by our own script
|
|
6
|
+
// (`tar --format=ustar`), and a reader this small is cheaper to own than to
|
|
7
|
+
// audit. Everything is read into memory; a bundle is capped at 64 MB by the
|
|
8
|
+
// exporter, so that is fine.
|
|
9
|
+
//
|
|
10
|
+
// Runtime-neutral on purpose: no Buffer, no zlib. The caller gunzips (node's
|
|
11
|
+
// zlib in the CLI, DecompressionStream in the console), and this file is kept
|
|
12
|
+
// byte-identical between cli/src/migrate and dashboard/src/lib/migrate; a test
|
|
13
|
+
// on the dashboard side checks that.
|
|
14
|
+
const BLOCK = 512;
|
|
15
|
+
const decoder = new TextDecoder();
|
|
16
|
+
function field(block, offset, length) {
|
|
17
|
+
let end = offset;
|
|
18
|
+
const stop = offset + length;
|
|
19
|
+
while (end < stop && block[end] !== 0)
|
|
20
|
+
end++;
|
|
21
|
+
return decoder.decode(block.subarray(offset, end));
|
|
22
|
+
}
|
|
23
|
+
function octal(block, offset, length) {
|
|
24
|
+
const text = field(block, offset, length).trim();
|
|
25
|
+
if (text === "")
|
|
26
|
+
return 0;
|
|
27
|
+
// GNU base-256 size encoding for files over 8 GB; irrelevant here, but do
|
|
28
|
+
// not silently misread it as zero.
|
|
29
|
+
if ((block[offset] ?? 0) & 0x80) {
|
|
30
|
+
throw new Error("Unsupported tar size encoding.");
|
|
31
|
+
}
|
|
32
|
+
const value = parseInt(text, 8);
|
|
33
|
+
if (Number.isNaN(value))
|
|
34
|
+
throw new Error("Malformed tar header.");
|
|
35
|
+
return value;
|
|
36
|
+
}
|
|
37
|
+
function isZeroBlock(block) {
|
|
38
|
+
for (const byte of block)
|
|
39
|
+
if (byte !== 0)
|
|
40
|
+
return false;
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
/** Unpack an (already decompressed) tar into its regular files. Directories
|
|
44
|
+
* and anything that is not a plain file are dropped. */
|
|
45
|
+
export function readTar(bytes) {
|
|
46
|
+
const entries = [];
|
|
47
|
+
let offset = 0;
|
|
48
|
+
let pendingLongName = null;
|
|
49
|
+
while (offset + BLOCK <= bytes.length) {
|
|
50
|
+
const header = bytes.subarray(offset, offset + BLOCK);
|
|
51
|
+
if (isZeroBlock(header))
|
|
52
|
+
break;
|
|
53
|
+
offset += BLOCK;
|
|
54
|
+
const size = octal(header, 124, 12);
|
|
55
|
+
const type = String.fromCharCode(header[156] ?? 0);
|
|
56
|
+
const dataStart = offset;
|
|
57
|
+
const dataEnd = dataStart + size;
|
|
58
|
+
if (dataEnd > bytes.length)
|
|
59
|
+
throw new Error("Truncated tar archive.");
|
|
60
|
+
offset = dataStart + Math.ceil(size / BLOCK) * BLOCK;
|
|
61
|
+
if (type === "L") {
|
|
62
|
+
// GNU long name: the next entry's path is this entry's body.
|
|
63
|
+
pendingLongName = decoder
|
|
64
|
+
.decode(bytes.subarray(dataStart, dataEnd))
|
|
65
|
+
.replace(/\0+$/, "");
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
// Pax headers ('x', 'g') and everything that is not a plain file.
|
|
69
|
+
if (type !== "0" && type !== "\0" && type !== "")
|
|
70
|
+
continue;
|
|
71
|
+
let path;
|
|
72
|
+
if (pendingLongName !== null) {
|
|
73
|
+
path = pendingLongName;
|
|
74
|
+
pendingLongName = null;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
path = field(header, 0, 100);
|
|
78
|
+
// ustar splits a long path into prefix + name.
|
|
79
|
+
const prefix = field(header, 257, 6).startsWith("ustar")
|
|
80
|
+
? field(header, 345, 155)
|
|
81
|
+
: "";
|
|
82
|
+
if (prefix)
|
|
83
|
+
path = `${prefix}/${path}`;
|
|
84
|
+
}
|
|
85
|
+
entries.push({ path, data: bytes.slice(dataStart, dataEnd) });
|
|
86
|
+
}
|
|
87
|
+
return entries;
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=tar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tar.js","sourceRoot":"","sources":["../../src/migrate/tar.ts"],"names":[],"mappings":"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"}
|
package/dist/output.d.ts
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export type ExitCode = 0 | 1 | 2 | 3 | 4;
|
|
2
|
+
export declare const EXIT_OK = 0;
|
|
3
|
+
export declare const EXIT_ERROR = 1;
|
|
4
|
+
export declare const EXIT_USAGE = 2;
|
|
5
|
+
export declare const EXIT_AUTH = 3;
|
|
6
|
+
export declare const EXIT_PAYMENT = 4;
|
|
7
|
+
export declare function setJsonMode(enabled: boolean): void;
|
|
8
|
+
export declare function isJsonMode(): boolean;
|
|
9
|
+
/** Colour is disabled for a pipe, for NO_COLOR, and for --no-color. */
|
|
10
|
+
export declare function setColorEnabled(enabled: boolean): void;
|
|
11
|
+
/** The command's result. In --json mode this is the only thing on stdout. */
|
|
12
|
+
export declare function emit(data: unknown, render: () => void): void;
|
|
13
|
+
/** Human-facing progress or commentary. Always stderr, never in --json mode. */
|
|
14
|
+
export declare function note(message: string): void;
|
|
15
|
+
/** A warning worth seeing even when piping data out. */
|
|
16
|
+
export declare function warn(message: string): void;
|
|
17
|
+
/** A failure. Always stderr, and structured in --json mode so a script can read
|
|
18
|
+
* the reason rather than parse prose. */
|
|
19
|
+
export declare function fail(message: string, detail?: unknown): void;
|
|
20
|
+
export declare function dim(text: string): string;
|
|
21
|
+
export declare function bold(text: string): string;
|
|
22
|
+
/**
|
|
23
|
+
* What a lifecycle word means, as a colour name rather than an escape sequence.
|
|
24
|
+
*
|
|
25
|
+
* Kept separate from statusColor because the interactive console (src/tui)
|
|
26
|
+
* renders through Ink, which wants a colour name, not pre-styled text. One list
|
|
27
|
+
* of words, read by both, so "provisioning" cannot be amber in a table and grey
|
|
28
|
+
* in the console.
|
|
29
|
+
*/
|
|
30
|
+
export type Tone = "good" | "bad" | "busy" | "idle";
|
|
31
|
+
export declare function statusTone(status: string): Tone;
|
|
32
|
+
/** Colour for a lifecycle word, so a long list reads at a glance. */
|
|
33
|
+
export declare function statusColor(status: string): string;
|
|
34
|
+
export type Column<T> = {
|
|
35
|
+
header: string;
|
|
36
|
+
/** Cell text. Return "" for absent; the table renders a dash. */
|
|
37
|
+
value: (row: T) => string;
|
|
38
|
+
};
|
|
39
|
+
/** A simple aligned table. Padded to the widest cell, two spaces between
|
|
40
|
+
* columns, no borders — easy to read, and easy to cut/awk. */
|
|
41
|
+
export declare function table<T>(rows: T[], columns: Column<T>[]): void;
|
|
42
|
+
/** Key/value block for a single record. */
|
|
43
|
+
export declare function details(pairs: [string, string][]): void;
|
|
44
|
+
/** Compact relative age, e.g. "3d 4h". */
|
|
45
|
+
export declare function age(iso: string | null | undefined): string;
|
|
46
|
+
//# sourceMappingURL=output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEzC,eAAO,MAAM,OAAO,IAAI,CAAC;AACzB,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,YAAY,IAAI,CAAC;AAI9B,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAElD;AAED,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAED,uEAAuE;AACvE,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEtD;AAED,6EAA6E;AAC7E,wBAAgB,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,IAAI,CAM5D;AAED,gFAAgF;AAChF,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAG1C;AAED,wDAAwD;AACxD,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED;yCACyC;AACzC,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAQ5D;AAED,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExC;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CA6C/C;AAED,qEAAqE;AACrE,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAWlD;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC;CAC3B,CAAC;AAWF;8DAC8D;AAC9D,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAkC9D;AAED,2CAA2C;AAC3C,wBAAgB,OAAO,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,IAAI,CAOvD;AAED,0CAA0C;AAC1C,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAS1D"}
|
package/dist/output.js
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import pc from "picocolors";
|
|
2
|
+
export const EXIT_OK = 0;
|
|
3
|
+
export const EXIT_ERROR = 1;
|
|
4
|
+
export const EXIT_USAGE = 2;
|
|
5
|
+
export const EXIT_AUTH = 3;
|
|
6
|
+
export const EXIT_PAYMENT = 4;
|
|
7
|
+
let jsonMode = false;
|
|
8
|
+
export function setJsonMode(enabled) {
|
|
9
|
+
jsonMode = enabled;
|
|
10
|
+
}
|
|
11
|
+
export function isJsonMode() {
|
|
12
|
+
return jsonMode;
|
|
13
|
+
}
|
|
14
|
+
/** Colour is disabled for a pipe, for NO_COLOR, and for --no-color. */
|
|
15
|
+
export function setColorEnabled(enabled) {
|
|
16
|
+
pc.createColors(enabled);
|
|
17
|
+
}
|
|
18
|
+
/** The command's result. In --json mode this is the only thing on stdout. */
|
|
19
|
+
export function emit(data, render) {
|
|
20
|
+
if (jsonMode) {
|
|
21
|
+
process.stdout.write(`${JSON.stringify(data, null, 2)}\n`);
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
render();
|
|
25
|
+
}
|
|
26
|
+
/** Human-facing progress or commentary. Always stderr, never in --json mode. */
|
|
27
|
+
export function note(message) {
|
|
28
|
+
if (jsonMode)
|
|
29
|
+
return;
|
|
30
|
+
process.stderr.write(`${message}\n`);
|
|
31
|
+
}
|
|
32
|
+
/** A warning worth seeing even when piping data out. */
|
|
33
|
+
export function warn(message) {
|
|
34
|
+
process.stderr.write(`${pc.yellow("!")} ${message}\n`);
|
|
35
|
+
}
|
|
36
|
+
/** A failure. Always stderr, and structured in --json mode so a script can read
|
|
37
|
+
* the reason rather than parse prose. */
|
|
38
|
+
export function fail(message, detail) {
|
|
39
|
+
if (jsonMode) {
|
|
40
|
+
process.stderr.write(`${JSON.stringify({ error: message, detail: detail ?? null }, null, 2)}\n`);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
process.stderr.write(`${pc.red("Error:")} ${message}\n`);
|
|
44
|
+
}
|
|
45
|
+
export function dim(text) {
|
|
46
|
+
return pc.dim(text);
|
|
47
|
+
}
|
|
48
|
+
export function bold(text) {
|
|
49
|
+
return pc.bold(text);
|
|
50
|
+
}
|
|
51
|
+
export function statusTone(status) {
|
|
52
|
+
const value = status.toLowerCase();
|
|
53
|
+
if ([
|
|
54
|
+
"active",
|
|
55
|
+
"running",
|
|
56
|
+
"succeeded",
|
|
57
|
+
"connected",
|
|
58
|
+
"ok",
|
|
59
|
+
"healthy",
|
|
60
|
+
"completed",
|
|
61
|
+
"delivered",
|
|
62
|
+
"executed",
|
|
63
|
+
].includes(value)) {
|
|
64
|
+
return "good";
|
|
65
|
+
}
|
|
66
|
+
if ([
|
|
67
|
+
"failed",
|
|
68
|
+
"error",
|
|
69
|
+
"cancelled",
|
|
70
|
+
"blocked",
|
|
71
|
+
// Scheduled-task health and run outcomes.
|
|
72
|
+
"failing",
|
|
73
|
+
"missed",
|
|
74
|
+
"ambiguous",
|
|
75
|
+
"stale",
|
|
76
|
+
"delivery_failing",
|
|
77
|
+
"reconcile_failing",
|
|
78
|
+
"timeout",
|
|
79
|
+
"delivery-failing",
|
|
80
|
+
"delivery-failed",
|
|
81
|
+
].includes(value)) {
|
|
82
|
+
return "bad";
|
|
83
|
+
}
|
|
84
|
+
if (["new", "pending", "queued", "connecting", "provisioning", "claimed"].includes(value)) {
|
|
85
|
+
return "busy";
|
|
86
|
+
}
|
|
87
|
+
return "idle";
|
|
88
|
+
}
|
|
89
|
+
/** Colour for a lifecycle word, so a long list reads at a glance. */
|
|
90
|
+
export function statusColor(status) {
|
|
91
|
+
switch (statusTone(status)) {
|
|
92
|
+
case "good":
|
|
93
|
+
return pc.green(status);
|
|
94
|
+
case "bad":
|
|
95
|
+
return pc.red(status);
|
|
96
|
+
case "busy":
|
|
97
|
+
return pc.yellow(status);
|
|
98
|
+
default:
|
|
99
|
+
return pc.dim(status);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// Width is measured on the UNSTYLED text: colour codes are invisible but count
|
|
103
|
+
// as characters, and padding to the styled length is what makes a coloured
|
|
104
|
+
// column drift out of alignment.
|
|
105
|
+
const stripAnsi = (text) =>
|
|
106
|
+
// eslint-disable-next-line no-control-regex
|
|
107
|
+
text.replace(/\[[0-9;]*m/g, "");
|
|
108
|
+
const displayWidth = (text) => stripAnsi(text).length;
|
|
109
|
+
/** A simple aligned table. Padded to the widest cell, two spaces between
|
|
110
|
+
* columns, no borders — easy to read, and easy to cut/awk. */
|
|
111
|
+
export function table(rows, columns) {
|
|
112
|
+
if (rows.length === 0) {
|
|
113
|
+
note(dim("Nothing to show."));
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
const cells = rows.map((row) => columns.map((column) => column.value(row) || dim("-")));
|
|
117
|
+
const widths = columns.map((column, i) => Math.max(displayWidth(column.header), ...cells.map((row) => displayWidth(row[i] ?? ""))));
|
|
118
|
+
const line = (values, style = (t) => t) => values
|
|
119
|
+
.map((value, i) => {
|
|
120
|
+
const padded = value + " ".repeat(Math.max(0, (widths[i] ?? 0) - displayWidth(value)));
|
|
121
|
+
// Never pad the last column: trailing whitespace is noise in a pipe.
|
|
122
|
+
return i === values.length - 1 ? style(value) : style(padded);
|
|
123
|
+
})
|
|
124
|
+
.join(" ")
|
|
125
|
+
.trimEnd();
|
|
126
|
+
process.stdout.write(`${line(columns.map((c) => c.header.toUpperCase()), pc.dim)}\n`);
|
|
127
|
+
for (const row of cells)
|
|
128
|
+
process.stdout.write(`${line(row)}\n`);
|
|
129
|
+
}
|
|
130
|
+
/** Key/value block for a single record. */
|
|
131
|
+
export function details(pairs) {
|
|
132
|
+
const width = Math.max(...pairs.map(([key]) => key.length));
|
|
133
|
+
for (const [key, value] of pairs) {
|
|
134
|
+
process.stdout.write(`${pc.dim(key.padEnd(width))} ${value || pc.dim("-")}\n`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/** Compact relative age, e.g. "3d 4h". */
|
|
138
|
+
export function age(iso) {
|
|
139
|
+
if (!iso)
|
|
140
|
+
return "";
|
|
141
|
+
const ms = Date.now() - new Date(iso).getTime();
|
|
142
|
+
if (Number.isNaN(ms) || ms < 0)
|
|
143
|
+
return "";
|
|
144
|
+
const minutes = Math.floor(ms / 60_000);
|
|
145
|
+
if (minutes < 60)
|
|
146
|
+
return `${minutes}m`;
|
|
147
|
+
const hours = Math.floor(minutes / 60);
|
|
148
|
+
if (hours < 48)
|
|
149
|
+
return `${hours}h ${minutes % 60}m`;
|
|
150
|
+
return `${Math.floor(hours / 24)}d ${hours % 24}h`;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
/**
|
|
3
|
+
* What to parse, given what was typed.
|
|
4
|
+
*
|
|
5
|
+
* `qoren` with nothing after it, at a real terminal, opens interactive mode:
|
|
6
|
+
* there is no useful command called "nothing", and a wall of help text is a
|
|
7
|
+
* poor answer to someone who has just installed this and wants to see their
|
|
8
|
+
* fleet.
|
|
9
|
+
*
|
|
10
|
+
* Every other case is untouched, and the two that matter are: a pipe or a CI
|
|
11
|
+
* log (no terminal) still gets the help text, because a full screen there
|
|
12
|
+
* would be either impossible or unreadable; and `qoren --help`, which has an
|
|
13
|
+
* argument and so never reaches this at all.
|
|
14
|
+
*/
|
|
15
|
+
export declare function argvForInteractive(argv: string[], interactive?: boolean): string[];
|
|
16
|
+
export declare function buildProgram(): Command;
|
|
17
|
+
//# sourceMappingURL=program.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,UAAgE,GAC1E,MAAM,EAAE,CAEV;AAED,wBAAgB,YAAY,IAAI,OAAO,CAmDtC"}
|
package/dist/program.js
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { accountCommands } from "./commands/account.js";
|
|
3
|
+
import { agentCommands } from "./commands/agent.js";
|
|
4
|
+
import { apiCommand } from "./commands/api.js";
|
|
5
|
+
import { approvalCommands } from "./commands/approvals.js";
|
|
6
|
+
import { clientsCommands } from "./commands/clients.js";
|
|
7
|
+
import { designerCommands } from "./commands/designer.js";
|
|
8
|
+
import { interactiveCommand } from "./commands/interactive.js";
|
|
9
|
+
import { authCommands } from "./commands/auth.js";
|
|
10
|
+
import { envCommands } from "./commands/env.js";
|
|
11
|
+
import { jobCommands } from "./commands/jobs.js";
|
|
12
|
+
import { secretsCommands } from "./commands/secrets.js";
|
|
13
|
+
import { webhookCommands } from "./commands/webhook.js";
|
|
14
|
+
import { VERSION } from "./context.js";
|
|
15
|
+
import { setColorEnabled, setJsonMode } from "./output.js";
|
|
16
|
+
// The command tree.
|
|
17
|
+
//
|
|
18
|
+
// Structure: this file wires global options and delegates every verb to a
|
|
19
|
+
// module under commands/. Those modules call @qoren/sdk and never build a URL
|
|
20
|
+
// themselves, which is what keeps the CLI and the console honest with each
|
|
21
|
+
// other — an endpoint is described once, in the SDK, and both read it there.
|
|
22
|
+
//
|
|
23
|
+
// Adding a command is therefore: add the SDK method, add a verb here. Anything
|
|
24
|
+
// not yet wrapped is still reachable through `qoren api`.
|
|
25
|
+
//
|
|
26
|
+
// Kept separate from index.ts (the bin) so tests can build and inspect the tree
|
|
27
|
+
// without the module running the CLI on import.
|
|
28
|
+
/**
|
|
29
|
+
* What to parse, given what was typed.
|
|
30
|
+
*
|
|
31
|
+
* `qoren` with nothing after it, at a real terminal, opens interactive mode:
|
|
32
|
+
* there is no useful command called "nothing", and a wall of help text is a
|
|
33
|
+
* poor answer to someone who has just installed this and wants to see their
|
|
34
|
+
* fleet.
|
|
35
|
+
*
|
|
36
|
+
* Every other case is untouched, and the two that matter are: a pipe or a CI
|
|
37
|
+
* log (no terminal) still gets the help text, because a full screen there
|
|
38
|
+
* would be either impossible or unreadable; and `qoren --help`, which has an
|
|
39
|
+
* argument and so never reaches this at all.
|
|
40
|
+
*/
|
|
41
|
+
export function argvForInteractive(argv, interactive = process.stdin.isTTY === true && process.stdout.isTTY === true) {
|
|
42
|
+
return argv.length === 2 && interactive ? [...argv, "tui"] : argv;
|
|
43
|
+
}
|
|
44
|
+
export function buildProgram() {
|
|
45
|
+
const program = new Command();
|
|
46
|
+
program
|
|
47
|
+
.name("qoren")
|
|
48
|
+
.description("Drive your Qoren account, environments and agents.")
|
|
49
|
+
.version(VERSION, "-v, --version")
|
|
50
|
+
.option("--json", "print machine-readable JSON instead of a table")
|
|
51
|
+
.option("--profile <name>", "which stored login to use")
|
|
52
|
+
.option("--api-url <url>", "Qoren server to talk to")
|
|
53
|
+
.option("--no-color", "disable colour")
|
|
54
|
+
.showHelpAfterError()
|
|
55
|
+
// Hand control back instead of calling process.exit itself, so index.ts
|
|
56
|
+
// decides the exit code. Without this every usage mistake exits 1, which a
|
|
57
|
+
// script cannot tell apart from "the request failed". Inherited by
|
|
58
|
+
// subcommands created with .command().
|
|
59
|
+
.exitOverride()
|
|
60
|
+
.configureOutput({
|
|
61
|
+
// Usage errors belong on stderr with everything else that is not data.
|
|
62
|
+
writeErr: (str) => process.stderr.write(str),
|
|
63
|
+
});
|
|
64
|
+
// Read after parsing, so subcommands see resolved values.
|
|
65
|
+
const global = () => program.opts();
|
|
66
|
+
program.hook("preAction", () => {
|
|
67
|
+
const opts = global();
|
|
68
|
+
setJsonMode(opts.json === true);
|
|
69
|
+
// Colour only when a human is watching: a pipe, NO_COLOR or --no-color all
|
|
70
|
+
// mean plain text.
|
|
71
|
+
setColorEnabled(opts.color !== false &&
|
|
72
|
+
!process.env.NO_COLOR &&
|
|
73
|
+
process.stdout.isTTY === true);
|
|
74
|
+
});
|
|
75
|
+
authCommands(program, global);
|
|
76
|
+
envCommands(program, global);
|
|
77
|
+
clientsCommands(program, global);
|
|
78
|
+
agentCommands(program, global);
|
|
79
|
+
secretsCommands(program, global);
|
|
80
|
+
designerCommands(program, global);
|
|
81
|
+
webhookCommands(program, global);
|
|
82
|
+
approvalCommands(program, global);
|
|
83
|
+
accountCommands(program, global);
|
|
84
|
+
jobCommands(program, global);
|
|
85
|
+
apiCommand(program, global);
|
|
86
|
+
interactiveCommand(program, global);
|
|
87
|
+
return program;
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=program.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Agent, AgentRuntime, HostedAgentRuntime } from "@qoren/sdk";
|
|
2
|
+
/** Every runtime an agent can have, for listing and filtering. */
|
|
3
|
+
export declare const RUNTIMES: AgentRuntime[];
|
|
4
|
+
export declare function isHostedRuntime(runtime: string): runtime is HostedAgentRuntime;
|
|
5
|
+
/** The runtimes `qoren agent create` can install on an environment. */
|
|
6
|
+
export declare const HOSTED_RUNTIMES: HostedAgentRuntime[];
|
|
7
|
+
/** What to say when someone tries to create a Custom agent from a template. */
|
|
8
|
+
export declare const CUSTOM_CREATE_REFUSAL = "Custom agents are built in the Agent Designer, not from a template. Deploy one with: qoren designer deploy <design> --name <name>";
|
|
9
|
+
/** True for a Custom agent: no environment, so no shell, logs or doctor. */
|
|
10
|
+
export declare function isCustomAgent(agent: Pick<Agent, "runtime" | "machineId">): boolean;
|
|
11
|
+
//# sourceMappingURL=runtimes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtimes.d.ts","sourceRoot":"","sources":["../src/runtimes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAS1E,kEAAkE;AAClE,eAAO,MAAM,QAAQ,EAAE,YAAY,EAA8C,CAAC;AAElF,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,kBAAkB,CAE9E;AAED,uEAAuE;AACvE,eAAO,MAAM,eAAe,EAAE,kBAAkB,EAAqC,CAAC;AAEtF,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,sIACmG,CAAC;AAEtI,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,WAAW,CAAC,GAAG,OAAO,CAElF"}
|
package/dist/runtimes.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Which runtimes the CLI knows, and which of them it can deploy.
|
|
2
|
+
//
|
|
3
|
+
// `custom` is a Custom agent from the Agent Designer. It shows up in listings
|
|
4
|
+
// and can be filtered on, but it has no environment and is never created from a
|
|
5
|
+
// template: `qoren designer deploy` makes one. Keeping both lists here means the
|
|
6
|
+
// command line and the interactive console cannot disagree about that.
|
|
7
|
+
/** Every runtime an agent can have, for listing and filtering. */
|
|
8
|
+
export const RUNTIMES = ["hermes", "openclaw", "codex", "custom"];
|
|
9
|
+
export function isHostedRuntime(runtime) {
|
|
10
|
+
return runtime !== "custom" && RUNTIMES.includes(runtime);
|
|
11
|
+
}
|
|
12
|
+
/** The runtimes `qoren agent create` can install on an environment. */
|
|
13
|
+
export const HOSTED_RUNTIMES = RUNTIMES.filter(isHostedRuntime);
|
|
14
|
+
/** What to say when someone tries to create a Custom agent from a template. */
|
|
15
|
+
export const CUSTOM_CREATE_REFUSAL = "Custom agents are built in the Agent Designer, not from a template. Deploy one with: qoren designer deploy <design> --name <name>";
|
|
16
|
+
/** True for a Custom agent: no environment, so no shell, logs or doctor. */
|
|
17
|
+
export function isCustomAgent(agent) {
|
|
18
|
+
return agent.runtime === "custom" || agent.machineId === null;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=runtimes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtimes.js","sourceRoot":"","sources":["../src/runtimes.ts"],"names":[],"mappings":"AAEA,iEAAiE;AACjE,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,iFAAiF;AACjF,uEAAuE;AAEvE,kEAAkE;AAClE,MAAM,CAAC,MAAM,QAAQ,GAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAElF,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,OAAO,OAAO,KAAK,QAAQ,IAAK,QAAqB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,MAAM,eAAe,GAAyB,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAEtF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,qBAAqB,GAChC,mIAAmI,CAAC;AAEtI,4EAA4E;AAC5E,MAAM,UAAU,aAAa,CAAC,KAA2C;IACvE,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;AAChE,CAAC"}
|
package/dist/slug.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slug.d.ts","sourceRoot":"","sources":["../src/slug.ts"],"names":[],"mappings":"AAQA,6EAA6E;AAC7E,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5C"}
|
package/dist/slug.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Deriving an agent's machine identity from its display name.
|
|
2
|
+
//
|
|
3
|
+
// The slug is permanent — it becomes the agent's Unix user — while the name is
|
|
4
|
+
// just a label someone can change later. Nobody should have to type both, so
|
|
5
|
+
// every place that offers to create an agent derives one the same way: the
|
|
6
|
+
// command line, and the interactive console's deploy form. One function, so a
|
|
7
|
+
// name that works in one cannot be refused by the other.
|
|
8
|
+
/** A safe token derived from a display name, or "" when nothing survives. */
|
|
9
|
+
export function slugify(name) {
|
|
10
|
+
return name
|
|
11
|
+
.toLowerCase()
|
|
12
|
+
.replace(/[^a-z0-9]+/g, "-")
|
|
13
|
+
.replace(/^-+|-+$/g, "");
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=slug.js.map
|
package/dist/slug.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slug.js","sourceRoot":"","sources":["../src/slug.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,EAAE;AACF,+EAA+E;AAC/E,6EAA6E;AAC7E,2EAA2E;AAC3E,8EAA8E;AAC9E,yDAAyD;AAEzD,6EAA6E;AAC7E,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,IAAI;SACR,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** The control plane refuses more than this many. */
|
|
2
|
+
export declare const MAX_CONTEXT_FROM = 5;
|
|
3
|
+
export declare const CONTEXT_FROM_HELP: string;
|
|
4
|
+
/** Commander collector for the repeatable `--context-from`. */
|
|
5
|
+
export declare function collectContextFrom(value: string, previous: string[] | undefined): string[];
|
|
6
|
+
/**
|
|
7
|
+
* The `contextFrom` field for a task write. `undefined` (no flag) leaves it
|
|
8
|
+
* out, so a create reads nothing and a replace keeps what it had; `false`
|
|
9
|
+
* (`--no-context-from`) clears it.
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolveContextFrom(option: string[] | false | undefined): string[] | undefined;
|
|
12
|
+
/** How the task table shows a chain: the names it reads, "self" for its own previous run. */
|
|
13
|
+
export declare function describeChain(task: {
|
|
14
|
+
id: string;
|
|
15
|
+
contextFrom?: string[] | null;
|
|
16
|
+
}, tasks: readonly {
|
|
17
|
+
id: string;
|
|
18
|
+
name: string;
|
|
19
|
+
}[]): string;
|
|
20
|
+
//# sourceMappingURL=taskChain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taskChain.d.ts","sourceRoot":"","sources":["../src/taskChain.ts"],"names":[],"mappings":"AAQA,qDAAqD;AACrD,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,eAAO,MAAM,iBAAiB,QAGgB,CAAC;AAE/C,+DAA+D;AAC/D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,CAE1F;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAQ7F;AAED,6FAA6F;AAC7F,wBAAgB,aAAa,CAC3B,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CAAE,EACnD,KAAK,EAAE,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAC7C,MAAM,CAIR"}
|