@getfrontline/cli 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +246 -246
- package/dist/commands/auth/login.d.ts.map +1 -1
- package/dist/commands/auth/login.js +29 -4
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/auth/profiles.d.ts.map +1 -1
- package/dist/commands/auth/profiles.js +7 -11
- package/dist/commands/auth/profiles.js.map +1 -1
- package/dist/commands/object/export.js +3 -3
- package/dist/commands/object/field.js +5 -5
- package/dist/commands/object/index.js +8 -8
- package/dist/commands/object/index.js.map +1 -1
- package/dist/commands/object/option.js +4 -4
- package/dist/commands/object/record-type.js +4 -4
- package/dist/commands/object/record.js +8 -8
- package/dist/commands/object/relation.js +4 -4
- package/dist/commands/object/view.js +9 -9
- package/dist/lib/cliVersion.d.ts +8 -0
- package/dist/lib/cliVersion.d.ts.map +1 -0
- package/dist/lib/cliVersion.js +26 -0
- package/dist/lib/cliVersion.js.map +1 -0
- package/dist/lib/config.js +1 -1
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/errors.d.ts +3 -0
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +10 -1
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/helpEpilog.d.ts.map +1 -1
- package/dist/lib/helpEpilog.js +35 -35
- package/dist/lib/helpEpilog.js.map +1 -1
- package/dist/lib/httpClient.d.ts.map +1 -1
- package/dist/lib/httpClient.js +35 -16
- package/dist/lib/httpClient.js.map +1 -1
- package/dist/lib/output.d.ts +10 -0
- package/dist/lib/output.d.ts.map +1 -1
- package/dist/lib/output.js +28 -12
- package/dist/lib/output.js.map +1 -1
- package/dist/max/commands/auth/login.d.ts.map +1 -1
- package/dist/max/commands/auth/login.js +22 -5
- package/dist/max/commands/auth/login.js.map +1 -1
- package/dist/max/commands/chat/repl.d.ts +9 -0
- package/dist/max/commands/chat/repl.d.ts.map +1 -1
- package/dist/max/commands/chat/repl.js +15 -11
- package/dist/max/commands/chat/repl.js.map +1 -1
- package/dist/max/commands/chat/send.d.ts.map +1 -1
- package/dist/max/commands/chat/send.js +17 -0
- package/dist/max/commands/chat/send.js.map +1 -1
- package/dist/max/lib/httpClient.d.ts.map +1 -1
- package/dist/max/lib/httpClient.js +11 -4
- package/dist/max/lib/httpClient.js.map +1 -1
- package/dist/max/ui/banner.d.ts.map +1 -1
- package/dist/max/ui/banner.js +21 -21
- package/dist/max/ui/banner.js.map +1 -1
- package/dist/max.js +15 -3
- package/dist/max.js.map +1 -1
- package/dist/skills/aggregations/SKILL.md +7 -7
- package/dist/skills/auth-and-profiles/SKILL.md +1 -1
- package/dist/skills/crm-setup/SKILL.md +58 -48
- package/dist/skills/crud-operations/SKILL.md +2 -2
- package/dist/skills/export-and-delete/SKILL.md +5 -5
- package/dist/skills/files/SKILL.md +4 -4
- package/dist/skills/filter-and-query/SKILL.md +7 -7
- package/dist/skills/frontline-internals/SKILL.md +209 -0
- package/dist/skills/max-auth/SKILL.md +76 -76
- package/dist/skills/max-chat/SKILL.md +111 -111
- package/dist/skills/notes-and-tasks/SKILL.md +4 -4
- package/dist/skills/pipeline-setup/SKILL.md +13 -13
- package/dist/skills/relations/SKILL.md +20 -15
- package/dist/skills/schema-design/SKILL.md +13 -13
- package/package.json +51 -51
package/dist/lib/httpClient.js
CHANGED
|
@@ -6,6 +6,7 @@ const errors_1 = require("./errors");
|
|
|
6
6
|
const config_1 = require("./config");
|
|
7
7
|
const auth_1 = require("./auth");
|
|
8
8
|
const output_1 = require("./output");
|
|
9
|
+
const cliVersion_1 = require("./cliVersion");
|
|
9
10
|
class FrontlineClient {
|
|
10
11
|
apiKey;
|
|
11
12
|
baseUrl;
|
|
@@ -16,12 +17,11 @@ class FrontlineClient {
|
|
|
16
17
|
this.debug = opts.debug ?? false;
|
|
17
18
|
}
|
|
18
19
|
buildHeaders(extra) {
|
|
19
|
-
return {
|
|
20
|
+
return (0, cliVersion_1.buildPublicApiCliHeaders)("frontline", {
|
|
20
21
|
Authorization: `Bearer ${this.apiKey}`,
|
|
21
22
|
"Content-Type": "application/json",
|
|
22
|
-
"User-Agent": "frontline-cli",
|
|
23
23
|
...(extra ?? {}),
|
|
24
|
-
};
|
|
24
|
+
});
|
|
25
25
|
}
|
|
26
26
|
buildUrl(path, params) {
|
|
27
27
|
const base = this.baseUrl.endsWith("/") ? this.baseUrl : this.baseUrl + "/";
|
|
@@ -69,8 +69,13 @@ class FrontlineClient {
|
|
|
69
69
|
const exitCode = (0, output_1.httpStatusToExitCode)(res.status);
|
|
70
70
|
const payload = (json ?? {});
|
|
71
71
|
const errData = payload.error ?? payload;
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
const code = errData?.code ?? "api_error";
|
|
73
|
+
const suggestion = errData?.suggestion ||
|
|
74
|
+
(code === "cli_outdated"
|
|
75
|
+
? "Update with: npm i -g @getfrontline/cli (or your package manager equivalent)."
|
|
76
|
+
: undefined);
|
|
77
|
+
(0, output_1.error)(code, errData?.message ?? `HTTP ${res.status}`, exitCode, {
|
|
78
|
+
suggestion,
|
|
74
79
|
details: errData?.details,
|
|
75
80
|
});
|
|
76
81
|
}
|
|
@@ -121,10 +126,9 @@ class FrontlineClient {
|
|
|
121
126
|
const startedAt = Date.now();
|
|
122
127
|
const res = await fetch(url, {
|
|
123
128
|
method: "POST",
|
|
124
|
-
headers: {
|
|
129
|
+
headers: (0, cliVersion_1.buildPublicApiCliHeaders)("frontline", {
|
|
125
130
|
Authorization: `Bearer ${this.apiKey}`,
|
|
126
|
-
|
|
127
|
-
},
|
|
131
|
+
}),
|
|
128
132
|
body: formData,
|
|
129
133
|
});
|
|
130
134
|
this.logRequest("POST", url, startedAt, res.status);
|
|
@@ -143,8 +147,13 @@ class FrontlineClient {
|
|
|
143
147
|
}
|
|
144
148
|
const errData = payload.error ??
|
|
145
149
|
payload;
|
|
146
|
-
|
|
147
|
-
|
|
150
|
+
const code = errData?.code ?? "api_error";
|
|
151
|
+
const suggestion = errData?.suggestion ||
|
|
152
|
+
(code === "cli_outdated"
|
|
153
|
+
? "Update with: npm i -g @getfrontline/cli (or your package manager equivalent)."
|
|
154
|
+
: undefined);
|
|
155
|
+
(0, output_1.error)(code, errData?.message ?? `HTTP ${res.status}`, exitCode, {
|
|
156
|
+
suggestion,
|
|
148
157
|
details: errData?.details,
|
|
149
158
|
});
|
|
150
159
|
}
|
|
@@ -168,11 +177,10 @@ async function apiGet(options) {
|
|
|
168
177
|
const startedAt = Date.now();
|
|
169
178
|
const res = await fetch(url.toString(), {
|
|
170
179
|
method: "GET",
|
|
171
|
-
headers: {
|
|
180
|
+
headers: (0, cliVersion_1.buildPublicApiCliHeaders)("frontline", {
|
|
172
181
|
Authorization: `Bearer ${apiKey}`,
|
|
173
182
|
Accept: "application/json",
|
|
174
|
-
|
|
175
|
-
},
|
|
183
|
+
}),
|
|
176
184
|
});
|
|
177
185
|
if (options.debug) {
|
|
178
186
|
const elapsed = Date.now() - startedAt;
|
|
@@ -186,9 +194,20 @@ async function apiGet(options) {
|
|
|
186
194
|
throw new errors_1.APIError(`Invalid JSON response from API`, res.status);
|
|
187
195
|
}
|
|
188
196
|
if (res.status >= 400) {
|
|
189
|
-
const
|
|
190
|
-
|
|
191
|
-
|
|
197
|
+
const payload = data;
|
|
198
|
+
let msg;
|
|
199
|
+
if (typeof payload.error === "object" && payload.error && "message" in payload.error) {
|
|
200
|
+
msg = String(payload.error.message ?? `API returned ${res.status}`);
|
|
201
|
+
}
|
|
202
|
+
else if (typeof payload.error === "string") {
|
|
203
|
+
msg = payload.error;
|
|
204
|
+
}
|
|
205
|
+
else if (typeof payload.message === "string") {
|
|
206
|
+
msg = payload.message;
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
msg = `API returned ${res.status}`;
|
|
210
|
+
}
|
|
192
211
|
throw new errors_1.APIError(String(msg), res.status, data);
|
|
193
212
|
}
|
|
194
213
|
return data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/lib/httpClient.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/lib/httpClient.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/output.d.ts
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
export declare const brand: {
|
|
3
|
+
primary: chalk.Chalk;
|
|
4
|
+
accent: chalk.Chalk;
|
|
5
|
+
success: chalk.Chalk;
|
|
6
|
+
warning: chalk.Chalk;
|
|
7
|
+
danger: chalk.Chalk;
|
|
8
|
+
muted: chalk.Chalk;
|
|
9
|
+
};
|
|
1
10
|
/**
|
|
2
11
|
* Output helpers for the CLI.
|
|
3
12
|
*
|
|
@@ -35,4 +44,5 @@ export declare function printTable(rows: Record<string, unknown>[] | readonly Re
|
|
|
35
44
|
export declare function printKeyValue(data: Record<string, unknown>): void;
|
|
36
45
|
export declare function printSuccess(message: string): void;
|
|
37
46
|
export declare function printError(message: string, hint?: string): void;
|
|
47
|
+
export declare function printSectionTitle(title: string, subtitle?: string): void;
|
|
38
48
|
//# sourceMappingURL=output.d.ts.map
|
package/dist/lib/output.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAO,MAAM,KAAK;;;;;;;CAOjB,CAAC;AAEF;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,UAAU;;;;;;;CAOb,CAAC;AAEX,gDAAgD;AAChD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAO3D;AAID,+CAA+C;AAC/C,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAG5C;AAED,qFAAqF;AACrF,wBAAgB,KAAK,CACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,MAAiC,EAC3C,IAAI,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAClE,KAAK,CAeP;AAED,iEAAiE;AACjE,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAID,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAE7C;AAED,wBAAgB,UAAU,CACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACpE,OAAO,CAAC,EAAE,MAAM,EAAE,GACnB,IAAI,CA2BN;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAOjE;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAG/D;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAGxE"}
|
package/dist/lib/output.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.EXIT_CODES = void 0;
|
|
6
|
+
exports.EXIT_CODES = exports.brand = void 0;
|
|
7
7
|
exports.httpStatusToExitCode = httpStatusToExitCode;
|
|
8
8
|
exports.success = success;
|
|
9
9
|
exports.error = error;
|
|
@@ -13,7 +13,16 @@ exports.printTable = printTable;
|
|
|
13
13
|
exports.printKeyValue = printKeyValue;
|
|
14
14
|
exports.printSuccess = printSuccess;
|
|
15
15
|
exports.printError = printError;
|
|
16
|
+
exports.printSectionTitle = printSectionTitle;
|
|
16
17
|
const chalk_1 = __importDefault(require("chalk"));
|
|
18
|
+
exports.brand = {
|
|
19
|
+
primary: chalk_1.default.hex("#00C2FF"),
|
|
20
|
+
accent: chalk_1.default.hex("#8B5CF6"),
|
|
21
|
+
success: chalk_1.default.hex("#22C55E"),
|
|
22
|
+
warning: chalk_1.default.hex("#F59E0B"),
|
|
23
|
+
danger: chalk_1.default.hex("#EF4444"),
|
|
24
|
+
muted: chalk_1.default.hex("#8A94A6"),
|
|
25
|
+
};
|
|
17
26
|
/**
|
|
18
27
|
* Output helpers for the CLI.
|
|
19
28
|
*
|
|
@@ -67,14 +76,14 @@ function error(code, message, exitCode = exports.EXIT_CODES.GENERAL_ERROR, opts)
|
|
|
67
76
|
},
|
|
68
77
|
};
|
|
69
78
|
process.stdout.write(JSON.stringify(errorObj, null, 2) + "\n");
|
|
70
|
-
process.stderr.write(
|
|
79
|
+
process.stderr.write(`${exports.brand.danger.bold("Error:")} ${message}\n`);
|
|
71
80
|
if (opts?.suggestion)
|
|
72
|
-
process.stderr.write(
|
|
81
|
+
process.stderr.write(`${exports.brand.warning("Hint:")} ${opts.suggestion}\n`);
|
|
73
82
|
process.exit(exitCode);
|
|
74
83
|
}
|
|
75
84
|
/** Print a human progress/status line to stderr (never JSON). */
|
|
76
85
|
function info(message) {
|
|
77
|
-
process.stderr.write(message
|
|
86
|
+
process.stderr.write(`${exports.brand.primary("i")} ${exports.brand.muted(message)}\n`);
|
|
78
87
|
}
|
|
79
88
|
// ── Opt-in pretty helpers (used by --pretty / --table) ──
|
|
80
89
|
function printJson(data) {
|
|
@@ -82,7 +91,7 @@ function printJson(data) {
|
|
|
82
91
|
}
|
|
83
92
|
function printTable(rows, columns) {
|
|
84
93
|
if (rows.length === 0) {
|
|
85
|
-
console.log(
|
|
94
|
+
console.log(exports.brand.warning("No results found."));
|
|
86
95
|
return;
|
|
87
96
|
}
|
|
88
97
|
const cols = columns ?? Object.keys(rows[0]);
|
|
@@ -94,9 +103,11 @@ function printTable(rows, columns) {
|
|
|
94
103
|
widths[col] = Math.max(widths[col], val.length);
|
|
95
104
|
}
|
|
96
105
|
}
|
|
97
|
-
const header = cols
|
|
98
|
-
|
|
99
|
-
|
|
106
|
+
const header = cols
|
|
107
|
+
.map((col) => exports.brand.primary.bold(col.toUpperCase().padEnd(widths[col])))
|
|
108
|
+
.join(" ");
|
|
109
|
+
console.log(header);
|
|
110
|
+
console.log(exports.brand.muted(cols.map((col) => "─".repeat(widths[col])).join(" ")));
|
|
100
111
|
for (const row of rows) {
|
|
101
112
|
const line = cols.map((col) => formatCell(row[col]).padEnd(widths[col])).join(" ");
|
|
102
113
|
console.log(line);
|
|
@@ -108,16 +119,21 @@ function printKeyValue(data) {
|
|
|
108
119
|
return;
|
|
109
120
|
const maxKeyLen = Math.max(...keys.map((k) => k.length));
|
|
110
121
|
for (const [key, value] of Object.entries(data)) {
|
|
111
|
-
console.log(`${
|
|
122
|
+
console.log(`${exports.brand.primary.bold(key.padEnd(maxKeyLen))} ${formatCell(value)}`);
|
|
112
123
|
}
|
|
113
124
|
}
|
|
114
125
|
function printSuccess(message) {
|
|
115
|
-
console.log(
|
|
126
|
+
console.log(`${exports.brand.success.bold("✓")} ${message}`);
|
|
116
127
|
}
|
|
117
128
|
function printError(message, hint) {
|
|
118
|
-
console.error(
|
|
129
|
+
console.error(`${exports.brand.danger.bold("Error:")} ${message}`);
|
|
119
130
|
if (hint)
|
|
120
|
-
console.error(
|
|
131
|
+
console.error(`${exports.brand.warning("Hint:")} ${hint}`);
|
|
132
|
+
}
|
|
133
|
+
function printSectionTitle(title, subtitle) {
|
|
134
|
+
console.log(exports.brand.primary.bold(title));
|
|
135
|
+
if (subtitle)
|
|
136
|
+
console.log(exports.brand.muted(subtitle));
|
|
121
137
|
}
|
|
122
138
|
function formatCell(value) {
|
|
123
139
|
if (value === null || value === undefined)
|
package/dist/lib/output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":";;;;;;AAmCA,oDAOC;AAKD,0BAGC;AAGD,sBAoBC;AAGD,oBAEC;AAID,8BAEC;AAED,gCA8BC;AAED,sCAOC;AAED,oCAEC;AAED,gCAGC;AAED,8CAGC;AA3ID,kDAA0B;AAEb,QAAA,KAAK,GAAG;IACjB,OAAO,EAAE,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC;IAC7B,MAAM,EAAE,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC;IAC5B,OAAO,EAAE,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC;IAC7B,OAAO,EAAE,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC;IAC7B,MAAM,EAAE,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC;IAC5B,KAAK,EAAE,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;;GAYG;AAEU,QAAA,UAAU,GAAG;IACtB,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,CAAC;IAChB,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC;IACZ,iBAAiB,EAAE,CAAC;IACpB,QAAQ,EAAE,CAAC;CACL,CAAC;AAEX,gDAAgD;AAChD,SAAgB,oBAAoB,CAAC,MAAc;IAC/C,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;QAAE,OAAO,kBAAU,CAAC,OAAO,CAAC;IAC7D,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,kBAAU,CAAC,SAAS,CAAC;IAClE,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,kBAAU,CAAC,iBAAiB,CAAC;IAC1E,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,kBAAU,CAAC,SAAS,CAAC;IAChD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,kBAAU,CAAC,QAAQ,CAAC;IAC/C,OAAO,kBAAU,CAAC,aAAa,CAAC;AACpC,CAAC;AAED,0DAA0D;AAE1D,+CAA+C;AAC/C,SAAgB,OAAO,CAAC,IAAa;IACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,kBAAU,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,qFAAqF;AACrF,SAAgB,KAAK,CACjB,IAAY,EACZ,OAAe,EACf,WAAmB,kBAAU,CAAC,aAAa,EAC3C,IAAiE;IAEjE,MAAM,QAAQ,GAA4B;QACtC,EAAE,EAAE,KAAK;QACT,KAAK,EAAE;YACH,IAAI;YACJ,OAAO;YACP,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD;KACJ,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC/D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,aAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC;IACpE,IAAI,IAAI,EAAE,UAAU;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,aAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;IAC7F,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC3B,CAAC;AAED,iEAAiE;AACjE,SAAgB,IAAI,CAAC,OAAe;IAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,aAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,aAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,2DAA2D;AAE3D,SAAgB,SAAS,CAAC,IAAa;IACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,SAAgB,UAAU,CACtB,IAAoE,EACpE,OAAkB;IAElB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,aAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAChD,OAAO;IACX,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,IAAI;SACd,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACvE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,OAAO,CAAC,GAAG,CAAC,aAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEhF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;AACL,CAAC;AAED,SAAgB,aAAa,CAAC,IAA6B;IACvD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,aAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;AACL,CAAC;AAED,SAAgB,YAAY,CAAC,OAAe;IACxC,OAAO,CAAC,GAAG,CAAC,GAAG,aAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,SAAgB,UAAU,CAAC,OAAe,EAAE,IAAa;IACrD,OAAO,CAAC,KAAK,CAAC,GAAG,aAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAI;QAAE,OAAO,CAAC,KAAK,CAAC,GAAG,aAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,SAAgB,iBAAiB,CAAC,KAAa,EAAE,QAAiB;IAC9D,OAAO,CAAC,GAAG,CAAC,aAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,IAAI,QAAQ;QAAE,OAAO,CAAC,GAAG,CAAC,aAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAC9B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IACtD,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../../src/max/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../../src/max/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkDpC,eAAO,MAAM,eAAe,SAqEtB,CAAC"}
|
|
@@ -8,22 +8,31 @@ const output_1 = require("../../../lib/output");
|
|
|
8
8
|
const auth_1 = require("../../../lib/auth");
|
|
9
9
|
const banner_1 = require("../../ui/banner");
|
|
10
10
|
const helpEpilog_1 = require("../../../lib/helpEpilog");
|
|
11
|
+
function printNextSteps() {
|
|
12
|
+
console.log();
|
|
13
|
+
console.log(output_1.brand.primary.bold("Start here"));
|
|
14
|
+
console.log(` ${output_1.brand.primary("max chat")} ${output_1.brand.muted("Open Max in your terminal")}`);
|
|
15
|
+
console.log(` ${output_1.brand.primary('max "Summarize my day"')} ${output_1.brand.muted("Send a quick message")}`);
|
|
16
|
+
console.log(` ${output_1.brand.primary("frontline auth whoami")} ${output_1.brand.muted("Verify the shared profile")}`);
|
|
17
|
+
}
|
|
11
18
|
exports.maxLoginCommand = new commander_1.Command("login")
|
|
12
19
|
.description("Store a per-user API key on the chosen profile. Saves the key to BOTH the Max store and the Frontline store under the same profile name, so `max` and `frontline` commands share credentials.")
|
|
13
20
|
.argument("<api-key>", "Your Frontline per-user API key (generated in the Frontline web app)")
|
|
14
21
|
.option("--profile <name>", helpEpilog_1.MAX_PROFILE_OPTION)
|
|
15
22
|
.option("--base-url <url>", `Public API base URL for this profile (…/public/v1; default: ${(0, config_1.getDefaultBaseUrl)()})`)
|
|
23
|
+
.option("--json", "Output the saved profile as JSON")
|
|
16
24
|
.addHelpText("after", `\n${helpEpilog_1.MAX_AUTH_LOGIN_EPILOG}\n`)
|
|
17
25
|
.action(async (apiKey, options, cmd) => {
|
|
18
26
|
try {
|
|
19
|
-
await (0, banner_1.printMaxWelcome)();
|
|
20
27
|
const trimmed = apiKey.trim();
|
|
21
28
|
if (!trimmed) {
|
|
22
29
|
(0, output_1.printError)("API key cannot be empty.");
|
|
23
30
|
process.exitCode = 1;
|
|
24
31
|
return;
|
|
25
32
|
}
|
|
26
|
-
const allOpts = typeof cmd.optsWithGlobals === "function"
|
|
33
|
+
const allOpts = typeof cmd.optsWithGlobals === "function"
|
|
34
|
+
? cmd.optsWithGlobals()
|
|
35
|
+
: options;
|
|
27
36
|
const profileName = allOpts.profile ?? (0, maxConfig_1.getMaxCurrentProfile)();
|
|
28
37
|
if (allOpts.profile) {
|
|
29
38
|
(0, maxConfig_1.setMaxCurrentProfile)(profileName);
|
|
@@ -42,12 +51,20 @@ exports.maxLoginCommand = new commander_1.Command("login")
|
|
|
42
51
|
apiKey: trimmed,
|
|
43
52
|
baseUrl: nextFrontBaseUrl,
|
|
44
53
|
});
|
|
45
|
-
|
|
46
|
-
|
|
54
|
+
const output = {
|
|
55
|
+
authenticated: true,
|
|
47
56
|
profile: profileName,
|
|
48
57
|
keyPreview: (0, auth_1.redactToken)(trimmed),
|
|
49
58
|
publicApiBaseUrl: nextFrontBaseUrl,
|
|
50
|
-
}
|
|
59
|
+
};
|
|
60
|
+
if (allOpts.json) {
|
|
61
|
+
(0, output_1.printJson)(output);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
await (0, banner_1.printMaxWelcome)();
|
|
65
|
+
(0, output_1.printSuccess)(`Profile "${profileName}" is ready and shared with Frontline CLI.`);
|
|
66
|
+
(0, output_1.printKeyValue)(output);
|
|
67
|
+
printNextSteps();
|
|
51
68
|
}
|
|
52
69
|
catch (err) {
|
|
53
70
|
const message = err instanceof Error ? err.message : String(err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../../src/max/commands/auth/login.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,+CAKyB;AACzB,gDAK6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../../src/max/commands/auth/login.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
+
export interface ReplOptions {
|
|
3
|
+
profile?: string;
|
|
4
|
+
baseUrl?: string;
|
|
5
|
+
apiBaseUrl?: string;
|
|
6
|
+
apiKey?: string;
|
|
7
|
+
debug?: boolean;
|
|
8
|
+
timeout?: string;
|
|
9
|
+
}
|
|
2
10
|
export declare const maxChatReplCommand: Command;
|
|
11
|
+
export declare function runMaxChatRepl(options?: ReplOptions): Promise<void>;
|
|
3
12
|
//# sourceMappingURL=repl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../../../src/max/commands/chat/repl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../../../src/max/commands/chat/repl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,MAAM,WAAW,WAAW;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD,eAAO,MAAM,kBAAkB,SAYzB,CAAC;AAEP,wBAAsB,cAAc,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuF7E"}
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.maxChatReplCommand = void 0;
|
|
7
|
+
exports.runMaxChatRepl = runMaxChatRepl;
|
|
7
8
|
const commander_1 = require("commander");
|
|
8
9
|
const chalk_1 = __importDefault(require("chalk"));
|
|
9
10
|
const readline_1 = require("readline");
|
|
@@ -12,11 +13,11 @@ const maxConfig_1 = require("../../maxConfig");
|
|
|
12
13
|
const output_1 = require("../../../lib/output");
|
|
13
14
|
const helpEpilog_1 = require("../../../lib/helpEpilog");
|
|
14
15
|
function printReplHelp() {
|
|
15
|
-
console.log(
|
|
16
|
-
console.log("
|
|
17
|
-
console.log("
|
|
18
|
-
console.log("
|
|
19
|
-
console.log("
|
|
16
|
+
console.log(output_1.brand.primary.bold("\nCommands"));
|
|
17
|
+
console.log(`${output_1.brand.primary(":help")} Show this help`);
|
|
18
|
+
console.log(`${output_1.brand.primary(":new")} Start a new conversation`);
|
|
19
|
+
console.log(`${output_1.brand.primary(":conv <id>")} Switch to a conversation id`);
|
|
20
|
+
console.log(`${output_1.brand.primary(":exit")} Exit`);
|
|
20
21
|
console.log();
|
|
21
22
|
}
|
|
22
23
|
exports.maxChatReplCommand = new commander_1.Command("repl")
|
|
@@ -28,14 +29,17 @@ exports.maxChatReplCommand = new commander_1.Command("repl")
|
|
|
28
29
|
.option("--debug", "Show debug information")
|
|
29
30
|
.option("--timeout <seconds>", "Polling timeout in seconds", "60")
|
|
30
31
|
.action(async (options) => {
|
|
32
|
+
await runMaxChatRepl(options);
|
|
33
|
+
});
|
|
34
|
+
async function runMaxChatRepl(options = {}) {
|
|
31
35
|
const profileName = options.profile ?? (0, maxConfig_1.getMaxCurrentProfile)();
|
|
32
36
|
const profile = (0, maxConfig_1.getMaxProfile)(profileName);
|
|
33
37
|
const conv = profile?.lastConversationId;
|
|
34
|
-
console.log(
|
|
35
|
-
console.log(
|
|
36
|
-
console.log(
|
|
38
|
+
console.log(`${output_1.brand.primary.bold("Max Chat")} ${chalk_1.default.white("by Frontline")}`);
|
|
39
|
+
console.log(output_1.brand.muted(`Profile: ${profileName}${typeof conv === "number" ? ` | Conversation: ${conv}` : ""}`));
|
|
40
|
+
console.log(output_1.brand.muted('Type ":help" for commands. Press Ctrl+C to exit.\n'));
|
|
37
41
|
const rl = (0, readline_1.createInterface)({ input: process.stdin, output: process.stdout });
|
|
38
|
-
rl.setPrompt(
|
|
42
|
+
rl.setPrompt(output_1.brand.primary("> "));
|
|
39
43
|
rl.prompt();
|
|
40
44
|
let forceNew = false;
|
|
41
45
|
rl.on("line", async (line) => {
|
|
@@ -97,8 +101,8 @@ exports.maxChatReplCommand = new commander_1.Command("repl")
|
|
|
97
101
|
rl.close();
|
|
98
102
|
});
|
|
99
103
|
rl.on("close", () => {
|
|
100
|
-
console.log(
|
|
104
|
+
console.log(output_1.brand.muted("\nBye.\n"));
|
|
101
105
|
process.exitCode = 0;
|
|
102
106
|
});
|
|
103
|
-
}
|
|
107
|
+
}
|
|
104
108
|
//# sourceMappingURL=repl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../../../src/max/commands/chat/repl.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../../../src/max/commands/chat/repl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../../../src/max/commands/chat/send.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../../../src/max/commands/chat/send.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,MAAM,WAAW,WAAW;IACxB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,oEAAoE;IACpE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAwDD,eAAO,MAAM,cAAc,SAqBrB,CAAC;AAEP,wBAAsB,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA8G5F"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.maxSendCommand = void 0;
|
|
4
7
|
exports.runMaxSend = runMaxSend;
|
|
5
8
|
const commander_1 = require("commander");
|
|
9
|
+
const ora_1 = __importDefault(require("ora"));
|
|
6
10
|
const httpClient_1 = require("../../lib/httpClient");
|
|
7
11
|
const publicApiPaths_1 = require("../../lib/publicApiPaths");
|
|
8
12
|
const maxResponse_1 = require("../../lib/maxResponse");
|
|
@@ -72,6 +76,7 @@ exports.maxSendCommand = new commander_1.Command("send")
|
|
|
72
76
|
});
|
|
73
77
|
async function runMaxSend(messageParts, options) {
|
|
74
78
|
const chatMode = Boolean(options.chatMode);
|
|
79
|
+
let spinner;
|
|
75
80
|
try {
|
|
76
81
|
const profileName = options.profile ?? (0, maxConfig_1.getMaxCurrentProfile)();
|
|
77
82
|
const profile = (0, maxConfig_1.getMaxProfile)(profileName);
|
|
@@ -99,6 +104,12 @@ async function runMaxSend(messageParts, options) {
|
|
|
99
104
|
return;
|
|
100
105
|
}
|
|
101
106
|
const urlOpts = resolveSendBaseUrl(options);
|
|
107
|
+
const useSpinner = !options.json && !options.debug && process.stderr.isTTY;
|
|
108
|
+
spinner = (0, ora_1.default)({
|
|
109
|
+
text: output_1.brand.primary("Sending message to Max..."),
|
|
110
|
+
stream: process.stderr,
|
|
111
|
+
isEnabled: useSpinner,
|
|
112
|
+
}).start();
|
|
102
113
|
const postRaw = await (0, httpClient_1.maxApiPost)({
|
|
103
114
|
path: publicApiPaths_1.MAX_PUBLIC_API_PATHS.conversationMessage,
|
|
104
115
|
body: {
|
|
@@ -126,6 +137,8 @@ async function runMaxSend(messageParts, options) {
|
|
|
126
137
|
let finalRaw = postRaw;
|
|
127
138
|
let finalText = textFromPost;
|
|
128
139
|
if (canPoll && !finalText) {
|
|
140
|
+
if (spinner)
|
|
141
|
+
spinner.text = output_1.brand.primary("Max is thinking...");
|
|
129
142
|
const polled = await pollForAssistantReply({
|
|
130
143
|
conversationId: newConversationId,
|
|
131
144
|
profile: options.profile,
|
|
@@ -137,6 +150,8 @@ async function runMaxSend(messageParts, options) {
|
|
|
137
150
|
finalRaw = polled.lastRaw;
|
|
138
151
|
finalText = polled.assistantText;
|
|
139
152
|
}
|
|
153
|
+
if (spinner)
|
|
154
|
+
spinner.stop();
|
|
140
155
|
if (chatMode) {
|
|
141
156
|
if (finalText)
|
|
142
157
|
console.log(finalText);
|
|
@@ -154,6 +169,8 @@ async function runMaxSend(messageParts, options) {
|
|
|
154
169
|
writeStdoutJson(finalRaw);
|
|
155
170
|
}
|
|
156
171
|
catch (err) {
|
|
172
|
+
if (spinner?.isSpinning)
|
|
173
|
+
spinner.fail(output_1.brand.danger("Max request failed."));
|
|
157
174
|
const message = err instanceof Error ? err.message : String(err);
|
|
158
175
|
const hint = err.hint;
|
|
159
176
|
(0, output_1.printError)(message, hint);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../../src/max/commands/chat/send.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../../src/max/commands/chat/send.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpClient.d.ts","sourceRoot":"","sources":["../../../src/max/lib/httpClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"httpClient.d.ts","sourceRoot":"","sources":["../../../src/max/lib/httpClient.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAwID,wBAAsB,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BpF;AAED,wBAAsB,SAAS,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAEhG;AAED,wBAAsB,UAAU,CAAC,CAAC,GAAG,OAAO,EACxC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7D,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAsB,WAAW,CAAC,CAAC,GAAG,OAAO,EACzC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7D,OAAO,CAAC,CAAC,CAAC,CAEZ"}
|
|
@@ -15,6 +15,7 @@ const auth_1 = require("../../lib/auth");
|
|
|
15
15
|
const config_1 = require("../../lib/config");
|
|
16
16
|
const auth_2 = require("./auth");
|
|
17
17
|
const maxConfig_1 = require("../maxConfig");
|
|
18
|
+
const cliVersion_1 = require("../../lib/cliVersion");
|
|
18
19
|
function resolveMaxPublicBaseUrl(opts) {
|
|
19
20
|
const explicit = (opts.baseUrl ?? opts.apiBaseUrl)?.trim();
|
|
20
21
|
if (explicit) {
|
|
@@ -69,7 +70,14 @@ function requestJson(url, options) {
|
|
|
69
70
|
return;
|
|
70
71
|
}
|
|
71
72
|
if (res.statusCode && res.statusCode >= 400) {
|
|
72
|
-
const
|
|
73
|
+
const errPart = data?.error;
|
|
74
|
+
const msg = (typeof errPart === "object" &&
|
|
75
|
+
errPart &&
|
|
76
|
+
typeof errPart.message === "string" &&
|
|
77
|
+
errPart.message) ||
|
|
78
|
+
(typeof data?.message === "string" && data.message) ||
|
|
79
|
+
(typeof data?.error === "string" && data.error) ||
|
|
80
|
+
`API returned ${res.statusCode}`;
|
|
73
81
|
reject(new errors_1.APIError(String(msg), res.statusCode, data));
|
|
74
82
|
return;
|
|
75
83
|
}
|
|
@@ -109,11 +117,10 @@ async function maxApiRequest(opts) {
|
|
|
109
117
|
profile: opts.profile,
|
|
110
118
|
});
|
|
111
119
|
const url = buildUrl(publicBaseUrl, opts.path, opts.query);
|
|
112
|
-
const headers = {
|
|
120
|
+
const headers = (0, cliVersion_1.buildPublicApiCliHeaders)("max", {
|
|
113
121
|
Authorization: `Bearer ${apiKey}`,
|
|
114
122
|
Accept: "application/json",
|
|
115
|
-
|
|
116
|
-
};
|
|
123
|
+
});
|
|
117
124
|
let body;
|
|
118
125
|
if (opts.method === "POST" || opts.method === "PATCH") {
|
|
119
126
|
headers["Content-Type"] = "application/json";
|