lua-cli 3.7.3 → 3.7.4
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 +26 -0
- package/dist/api/chat.api.service.d.ts.map +1 -1
- package/dist/api/chat.api.service.js +4 -0
- package/dist/api/chat.api.service.js.map +1 -1
- package/dist/api/http.client.d.ts +25 -0
- package/dist/api/http.client.d.ts.map +1 -1
- package/dist/api/http.client.js +88 -5
- package/dist/api/http.client.js.map +1 -1
- package/dist/cli/command-definitions.d.ts.map +1 -1
- package/dist/cli/command-definitions.js +1 -6
- package/dist/cli/command-definitions.js.map +1 -1
- package/dist/commands/chat.js +1 -1
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/index.d.ts +0 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +0 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/test.js +1 -1
- package/dist/commands/test.js.map +1 -1
- package/dist/config/constants.d.ts +7 -0
- package/dist/config/constants.d.ts.map +1 -1
- package/dist/config/constants.js +10 -0
- package/dist/config/constants.js.map +1 -1
- package/dist/services/analytics.d.ts +6 -0
- package/dist/services/analytics.d.ts.map +1 -1
- package/dist/services/analytics.js +19 -0
- package/dist/services/analytics.js.map +1 -1
- package/dist/services/auth.d.ts +11 -4
- package/dist/services/auth.d.ts.map +1 -1
- package/dist/services/auth.js +35 -6
- package/dist/services/auth.js.map +1 -1
- package/dist/utils/auth-flows.d.ts +4 -4
- package/dist/utils/auth-flows.d.ts.map +1 -1
- package/dist/utils/auth-flows.js +53 -37
- package/dist/utils/auth-flows.js.map +1 -1
- package/dist/utils/keytar-loader.d.ts.map +1 -1
- package/dist/utils/keytar-loader.js +8 -1
- package/dist/utils/keytar-loader.js.map +1 -1
- package/dist/utils/sandbox-storage.js +1 -1
- package/dist/utils/sandbox-storage.js.map +1 -1
- package/node_modules/@lua/shared-types/src/index.ts +1 -0
- package/node_modules/@lua/shared-types/src/sandbox-contract.ts +42 -0
- package/package.json +4 -17
- package/dist/commands/dev.d.ts +0 -27
- package/dist/commands/dev.d.ts.map +0 -1
- package/dist/commands/dev.js +0 -130
- package/dist/commands/dev.js.map +0 -1
- package/dist/config/dev.constants.d.ts +0 -56
- package/dist/config/dev.constants.d.ts.map +0 -1
- package/dist/config/dev.constants.js +0 -70
- package/dist/config/dev.constants.js.map +0 -1
- package/dist/utils/dev-api.d.ts +0 -6
- package/dist/utils/dev-api.d.ts.map +0 -1
- package/dist/utils/dev-api.js +0 -6
- package/dist/utils/dev-api.js.map +0 -1
- package/dist/utils/dev-server.d.ts +0 -27
- package/dist/utils/dev-server.d.ts.map +0 -1
- package/dist/utils/dev-server.js +0 -736
- package/dist/utils/dev-server.js.map +0 -1
- package/dist/utils/dev-watcher.d.ts +0 -31
- package/dist/utils/dev-watcher.d.ts.map +0 -1
- package/dist/utils/dev-watcher.js +0 -126
- package/dist/utils/dev-watcher.js.map +0 -1
- package/dist/web/app.css +0 -7401
- package/dist/web/app.js +0 -204
- package/dist/web/index.html +0 -33
package/dist/config/constants.js
CHANGED
|
@@ -58,6 +58,16 @@ export const PREFERRED_AGENT_TYPES = [
|
|
|
58
58
|
'base',
|
|
59
59
|
];
|
|
60
60
|
// =============================================================================
|
|
61
|
+
// SANDBOX STORAGE CONSTANTS
|
|
62
|
+
// =============================================================================
|
|
63
|
+
/**
|
|
64
|
+
* Sandbox skill ID storage identifiers for keytar
|
|
65
|
+
*/
|
|
66
|
+
export const SANDBOX_STORAGE = {
|
|
67
|
+
SERVICE: 'lua-cli-sandbox',
|
|
68
|
+
ACCOUNT: 'sandbox-skill-id',
|
|
69
|
+
};
|
|
70
|
+
// =============================================================================
|
|
61
71
|
// ANALYTICS CONSTANTS
|
|
62
72
|
// =============================================================================
|
|
63
73
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;AAE7E;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;AAErE,gFAAgF;AAChF,WAAW;AACX,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,uBAAuB;IACvD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,wBAAwB;IAC1D,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,uBAAuB;IACxD,OAAO,EAAE,2BAA2B;IACpC,GAAG,EAAE,uBAAuB;CAC7B,CAAC;AAEF,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;AAExC;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;AAExC,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,CAAC,aAAa;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY;IACZ,WAAW;IACX,MAAM;CACE,CAAC;AAEX,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,iDAAiD,CAAC;AAEjF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;AAE7E;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;AAErE,gFAAgF;AAChF,WAAW;AACX,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,uBAAuB;IACvD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,wBAAwB;IAC1D,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,uBAAuB;IACxD,OAAO,EAAE,2BAA2B;IACpC,GAAG,EAAE,uBAAuB;CAC7B,CAAC;AAEF,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;AAExC;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;AAExC,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,CAAC,aAAa;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY;IACZ,WAAW;IACX,MAAM;CACE,CAAC;AAEX,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,iBAAiB;IAC1B,OAAO,EAAE,kBAAkB;CACnB,CAAC;AAEX,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,iDAAiD,CAAC;AAEjF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,0BAA0B,CAAC"}
|
|
@@ -43,6 +43,12 @@ export declare function getTelemetryStatus(): {
|
|
|
43
43
|
enabled: boolean;
|
|
44
44
|
envOverride: boolean;
|
|
45
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Clears cached identity data from telemetry.json.
|
|
48
|
+
* Called during re-authentication to ensure stale user data
|
|
49
|
+
* is not carried over from a previous account.
|
|
50
|
+
*/
|
|
51
|
+
export declare function clearIdentityCache(): void;
|
|
46
52
|
/**
|
|
47
53
|
* Gracefully shutdown PostHog client.
|
|
48
54
|
* Has a 1-second hard timeout to prevent blocking exit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/services/analytics.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgHH;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAclD;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CA2E5D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC,GAAG,IAAI,CA6BP;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAwBpF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAI1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAO/E;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAavD"}
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/services/analytics.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgHH;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAclD;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CA2E5D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC,GAAG,IAAI,CA6BP;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAwBpF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAI1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAO/E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAYzC;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAavD"}
|
|
@@ -272,6 +272,25 @@ export function getTelemetryStatus() {
|
|
|
272
272
|
envOverride,
|
|
273
273
|
};
|
|
274
274
|
}
|
|
275
|
+
/**
|
|
276
|
+
* Clears cached identity data from telemetry.json.
|
|
277
|
+
* Called during re-authentication to ensure stale user data
|
|
278
|
+
* is not carried over from a previous account.
|
|
279
|
+
*/
|
|
280
|
+
export function clearIdentityCache() {
|
|
281
|
+
try {
|
|
282
|
+
const config = loadTelemetryConfig();
|
|
283
|
+
delete config.identifiedApiKeyHash;
|
|
284
|
+
delete config.identifiedEmail;
|
|
285
|
+
delete config.identifiedName;
|
|
286
|
+
saveTelemetryConfig(config);
|
|
287
|
+
// Also clear the in-memory session cache so enrichAnalyticsContext re-fetches
|
|
288
|
+
sessionDistinctId = null;
|
|
289
|
+
}
|
|
290
|
+
catch {
|
|
291
|
+
// Best-effort — never block auth flows
|
|
292
|
+
}
|
|
293
|
+
}
|
|
275
294
|
/**
|
|
276
295
|
* Gracefully shutdown PostHog client.
|
|
277
296
|
* Has a 1-second hard timeout to prevent blocking exit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/services/analytics.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/services/analytics.ts"],"names":[],"mappings":"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"}
|
package/dist/services/auth.d.ts
CHANGED
|
@@ -5,13 +5,20 @@
|
|
|
5
5
|
import { UserData } from "../interfaces/admin.js";
|
|
6
6
|
/**
|
|
7
7
|
* Saves API key to secure system keychain.
|
|
8
|
-
* Uses the system's native credential storage (Keychain on macOS,
|
|
9
|
-
* Credential Vault on Windows, libsecret on Linux).
|
|
10
8
|
*
|
|
11
9
|
* @param apiKey - The API key to store securely
|
|
12
|
-
* @returns Promise
|
|
10
|
+
* @returns Promise resolving to true if saved, false on failure
|
|
13
11
|
*/
|
|
14
|
-
export declare function saveApiKey(apiKey: string): Promise<
|
|
12
|
+
export declare function saveApiKey(apiKey: string): Promise<boolean>;
|
|
13
|
+
/**
|
|
14
|
+
* Saves and verifies an API key in the system keychain.
|
|
15
|
+
* Uses setPassword (which atomically overwrites any existing entry),
|
|
16
|
+
* then reads back to confirm the write succeeded.
|
|
17
|
+
*
|
|
18
|
+
* @param newApiKey - The new API key to store
|
|
19
|
+
* @returns Promise resolving to true if the new key was verified saved, false otherwise
|
|
20
|
+
*/
|
|
21
|
+
export declare function replaceApiKey(newApiKey: string): Promise<boolean>;
|
|
15
22
|
/**
|
|
16
23
|
* Loads API key from multiple sources in priority order:
|
|
17
24
|
* 1. Secure system keychain (macOS Keychain, Windows Credential Vault, Linux libsecret)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AASlD
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AASlD;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAmBjE;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAmBvE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsCzD;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAWrD;AAMD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CASnE;AAMD;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASrE;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAS7F;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAShF"}
|
package/dist/services/auth.js
CHANGED
|
@@ -11,26 +11,55 @@ import { AuthenticationError } from "../errors/auth.error.js";
|
|
|
11
11
|
// ============================================================================
|
|
12
12
|
/**
|
|
13
13
|
* Saves API key to secure system keychain.
|
|
14
|
-
* Uses the system's native credential storage (Keychain on macOS,
|
|
15
|
-
* Credential Vault on Windows, libsecret on Linux).
|
|
16
14
|
*
|
|
17
15
|
* @param apiKey - The API key to store securely
|
|
18
|
-
* @returns Promise
|
|
16
|
+
* @returns Promise resolving to true if saved, false on failure
|
|
19
17
|
*/
|
|
20
18
|
export async function saveApiKey(apiKey) {
|
|
21
19
|
const keytar = await getKeytar();
|
|
22
20
|
if (!keytar) {
|
|
23
21
|
console.warn("Warning: Could not save API key to system keychain. " +
|
|
24
22
|
"Set LUA_API_KEY environment variable or add it to your .env file instead.");
|
|
25
|
-
return;
|
|
23
|
+
return false;
|
|
26
24
|
}
|
|
27
25
|
try {
|
|
28
26
|
await keytar.setPassword(KEYTAR_SERVICE, KEYTAR_ACCOUNT, apiKey);
|
|
27
|
+
return true;
|
|
29
28
|
}
|
|
30
29
|
catch {
|
|
31
30
|
console.warn("Warning: Could not save API key to system keychain. " +
|
|
32
31
|
"Set LUA_API_KEY environment variable or add it to your .env file instead.");
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Saves and verifies an API key in the system keychain.
|
|
37
|
+
* Uses setPassword (which atomically overwrites any existing entry),
|
|
38
|
+
* then reads back to confirm the write succeeded.
|
|
39
|
+
*
|
|
40
|
+
* @param newApiKey - The new API key to store
|
|
41
|
+
* @returns Promise resolving to true if the new key was verified saved, false otherwise
|
|
42
|
+
*/
|
|
43
|
+
export async function replaceApiKey(newApiKey) {
|
|
44
|
+
const saved = await saveApiKey(newApiKey);
|
|
45
|
+
if (!saved)
|
|
46
|
+
return false;
|
|
47
|
+
// Verify via read-back to catch silent keychain failures
|
|
48
|
+
const keytar = await getKeytar();
|
|
49
|
+
if (!keytar)
|
|
50
|
+
return false;
|
|
51
|
+
try {
|
|
52
|
+
const stored = await keytar.getPassword(KEYTAR_SERVICE, KEYTAR_ACCOUNT);
|
|
53
|
+
if (stored !== newApiKey) {
|
|
54
|
+
console.warn("Warning: API key verification failed — stored key does not match.");
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
console.warn("Warning: Could not verify saved API key.");
|
|
60
|
+
return false;
|
|
33
61
|
}
|
|
62
|
+
return true;
|
|
34
63
|
}
|
|
35
64
|
/**
|
|
36
65
|
* Loads API key from multiple sources in priority order:
|
|
@@ -70,8 +99,8 @@ export async function loadApiKey() {
|
|
|
70
99
|
const envContent = fs.readFileSync(envPath, 'utf8');
|
|
71
100
|
const match = envContent.match(/^LUA_API_KEY=(.+)$/m);
|
|
72
101
|
if (match && match[1]) {
|
|
73
|
-
// Remove quotes
|
|
74
|
-
return match[1].trim().replace(/^["']|["']$/g, '');
|
|
102
|
+
// Remove quotes and inline comments
|
|
103
|
+
return match[1].trim().replace(/^["']|["']$/g, '').split('#')[0].trim();
|
|
75
104
|
}
|
|
76
105
|
}
|
|
77
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,+EAA+E;AAC/E,2CAA2C;AAC3C,+EAA+E;AAE/E
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Prompts for API key, validates it, and saves it securely.
|
|
8
8
|
*
|
|
9
9
|
* @returns Promise that resolves when authentication is complete
|
|
10
|
-
* @throws Error if API key is invalid
|
|
10
|
+
* @throws Error if API key is invalid or save fails
|
|
11
11
|
*/
|
|
12
12
|
export declare function handleApiKeyAuth(): Promise<void>;
|
|
13
13
|
/**
|
|
@@ -16,7 +16,7 @@ export declare function handleApiKeyAuth(): Promise<void>;
|
|
|
16
16
|
*
|
|
17
17
|
* @param apiKey - The API key to validate and save
|
|
18
18
|
* @returns Promise that resolves when authentication is complete
|
|
19
|
-
* @throws Error if API key is invalid
|
|
19
|
+
* @throws Error if API key is invalid or save fails
|
|
20
20
|
*/
|
|
21
21
|
export declare function handleApiKeyAuthNonInteractive(apiKey: string): Promise<void>;
|
|
22
22
|
/**
|
|
@@ -35,7 +35,7 @@ export declare function handleEmailOtpRequest(email: string): Promise<void>;
|
|
|
35
35
|
* @param email - Email address the OTP was sent to
|
|
36
36
|
* @param otp - The OTP code received via email
|
|
37
37
|
* @returns Promise that resolves when authentication is complete
|
|
38
|
-
* @throws Error if OTP is invalid
|
|
38
|
+
* @throws Error if OTP is invalid, API key generation fails, or save fails
|
|
39
39
|
*/
|
|
40
40
|
export declare function handleEmailOtpVerify(email: string, otp: string): Promise<void>;
|
|
41
41
|
/**
|
|
@@ -43,7 +43,7 @@ export declare function handleEmailOtpVerify(email: string, otp: string): Promis
|
|
|
43
43
|
* Sends OTP to email, verifies it, generates API key, and saves it.
|
|
44
44
|
*
|
|
45
45
|
* @returns Promise that resolves when authentication is complete
|
|
46
|
-
* @throws Error if
|
|
46
|
+
* @throws Error if verification fails, API key generation fails, or save fails
|
|
47
47
|
*/
|
|
48
48
|
export declare function handleEmailAuth(): Promise<void>;
|
|
49
49
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-flows.d.ts","sourceRoot":"","sources":["../../src/utils/auth-flows.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"auth-flows.d.ts","sourceRoot":"","sources":["../../src/utils/auth-flows.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8DH;;;;;;GAMG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkBtD;AAMD;;;;;;;GAOG;AACH,wBAAsB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWlF;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBxE;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBpF;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAoCrD;AAkDD;;;;GAIG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,CAcrE"}
|
package/dist/utils/auth-flows.js
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Handles different authentication methods (API key and email OTP)
|
|
4
4
|
*/
|
|
5
5
|
import inquirer from "inquirer";
|
|
6
|
-
import {
|
|
6
|
+
import { replaceApiKey, checkApiKey, requestEmailOTP, verifyOTPAndGetToken, generateApiKey } from "../services/auth.js";
|
|
7
|
+
import { clearIdentityCache } from "../services/analytics.js";
|
|
7
8
|
import { clearPromptLines, writeProgress, writeSuccess, writeInfo } from "./cli.js";
|
|
8
9
|
/**
|
|
9
10
|
* Configuration for OTP verification
|
|
@@ -13,6 +14,40 @@ const OTP_CONFIG = {
|
|
|
13
14
|
OTP_LENGTH: 6,
|
|
14
15
|
};
|
|
15
16
|
// ============================================================================
|
|
17
|
+
// SHARED HELPERS
|
|
18
|
+
// ============================================================================
|
|
19
|
+
/**
|
|
20
|
+
* Clears stale identity cache and saves a new API key to the keychain.
|
|
21
|
+
* Throws if the save fails so callers never show a false success.
|
|
22
|
+
*/
|
|
23
|
+
async function persistApiKey(apiKey) {
|
|
24
|
+
clearIdentityCache();
|
|
25
|
+
const saved = await replaceApiKey(apiKey);
|
|
26
|
+
if (!saved) {
|
|
27
|
+
throw new Error("Failed to save API key to system keychain. Set LUA_API_KEY environment variable instead.");
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Fetches user data for the given API key and displays a Welcome message
|
|
32
|
+
* followed by onboarding next steps. Best-effort — failures are silenced.
|
|
33
|
+
*/
|
|
34
|
+
async function showPostAuthWelcome(apiKey) {
|
|
35
|
+
try {
|
|
36
|
+
const userData = await checkApiKey(apiKey);
|
|
37
|
+
writeInfo(` Welcome, ${userData.fullName || userData.email}!`);
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
// Non-fatal — key is saved, identity display is best-effort
|
|
41
|
+
}
|
|
42
|
+
writeInfo("\n🎉 You're all set! Here's what to do next:\n");
|
|
43
|
+
writeInfo(" 1️⃣ Create a new project directory:");
|
|
44
|
+
writeInfo(" mkdir my-agent && cd my-agent\n");
|
|
45
|
+
writeInfo(" 2️⃣ Initialize your agent:");
|
|
46
|
+
writeInfo(" lua init\n");
|
|
47
|
+
writeInfo(" 3️⃣ Follow the prompts to create or select an agent\n");
|
|
48
|
+
writeInfo("💡 Tip: Run 'lua --help' to see all available commands\n");
|
|
49
|
+
}
|
|
50
|
+
// ============================================================================
|
|
16
51
|
// INTERACTIVE AUTHENTICATION FLOWS
|
|
17
52
|
// ============================================================================
|
|
18
53
|
/**
|
|
@@ -20,7 +55,7 @@ const OTP_CONFIG = {
|
|
|
20
55
|
* Prompts for API key, validates it, and saves it securely.
|
|
21
56
|
*
|
|
22
57
|
* @returns Promise that resolves when authentication is complete
|
|
23
|
-
* @throws Error if API key is invalid
|
|
58
|
+
* @throws Error if API key is invalid or save fails
|
|
24
59
|
*/
|
|
25
60
|
export async function handleApiKeyAuth() {
|
|
26
61
|
const answers = await inquirer.prompt([
|
|
@@ -35,8 +70,9 @@ export async function handleApiKeyAuth() {
|
|
|
35
70
|
if (!data) {
|
|
36
71
|
throw new Error("Invalid API key");
|
|
37
72
|
}
|
|
38
|
-
await
|
|
73
|
+
await persistApiKey(answers.apiKey);
|
|
39
74
|
writeSuccess("✅ API key saved securely.");
|
|
75
|
+
writeInfo(` Welcome, ${data.fullName || data.email}!`);
|
|
40
76
|
}
|
|
41
77
|
// ============================================================================
|
|
42
78
|
// NON-INTERACTIVE AUTHENTICATION FLOWS
|
|
@@ -47,7 +83,7 @@ export async function handleApiKeyAuth() {
|
|
|
47
83
|
*
|
|
48
84
|
* @param apiKey - The API key to validate and save
|
|
49
85
|
* @returns Promise that resolves when authentication is complete
|
|
50
|
-
* @throws Error if API key is invalid
|
|
86
|
+
* @throws Error if API key is invalid or save fails
|
|
51
87
|
*/
|
|
52
88
|
export async function handleApiKeyAuthNonInteractive(apiKey) {
|
|
53
89
|
writeProgress("🔐 Validating API key...");
|
|
@@ -55,7 +91,7 @@ export async function handleApiKeyAuthNonInteractive(apiKey) {
|
|
|
55
91
|
if (!data) {
|
|
56
92
|
throw new Error("Invalid API key. Please check your key and try again.");
|
|
57
93
|
}
|
|
58
|
-
await
|
|
94
|
+
await persistApiKey(apiKey);
|
|
59
95
|
writeSuccess("✅ API key validated and saved securely.");
|
|
60
96
|
writeInfo(` Welcome, ${data.fullName || data.email}!`);
|
|
61
97
|
}
|
|
@@ -89,10 +125,9 @@ export async function handleEmailOtpRequest(email) {
|
|
|
89
125
|
* @param email - Email address the OTP was sent to
|
|
90
126
|
* @param otp - The OTP code received via email
|
|
91
127
|
* @returns Promise that resolves when authentication is complete
|
|
92
|
-
* @throws Error if OTP is invalid
|
|
128
|
+
* @throws Error if OTP is invalid, API key generation fails, or save fails
|
|
93
129
|
*/
|
|
94
130
|
export async function handleEmailOtpVerify(email, otp) {
|
|
95
|
-
// Validate OTP format
|
|
96
131
|
if (otp.length !== OTP_CONFIG.OTP_LENGTH) {
|
|
97
132
|
throw new Error(`OTP must be ${OTP_CONFIG.OTP_LENGTH} digits.`);
|
|
98
133
|
}
|
|
@@ -107,23 +142,16 @@ export async function handleEmailOtpVerify(email, otp) {
|
|
|
107
142
|
if (!apiKey) {
|
|
108
143
|
throw new Error("Failed to generate API key. Please try again.");
|
|
109
144
|
}
|
|
110
|
-
await
|
|
145
|
+
await persistApiKey(apiKey);
|
|
111
146
|
writeSuccess("✅ API key generated and saved securely.");
|
|
112
|
-
|
|
113
|
-
writeInfo("\n🎉 You're all set! Here's what to do next:\n");
|
|
114
|
-
writeInfo(" 1️⃣ Create a new project directory:");
|
|
115
|
-
writeInfo(" mkdir my-agent && cd my-agent\n");
|
|
116
|
-
writeInfo(" 2️⃣ Initialize your agent:");
|
|
117
|
-
writeInfo(" lua init\n");
|
|
118
|
-
writeInfo(" 3️⃣ Follow the prompts to create or select an agent\n");
|
|
119
|
-
writeInfo("💡 Tip: Run 'lua --help' to see all available commands\n");
|
|
147
|
+
await showPostAuthWelcome(apiKey);
|
|
120
148
|
}
|
|
121
149
|
/**
|
|
122
150
|
* Handles email authentication flow with OTP verification.
|
|
123
151
|
* Sends OTP to email, verifies it, generates API key, and saves it.
|
|
124
152
|
*
|
|
125
153
|
* @returns Promise that resolves when authentication is complete
|
|
126
|
-
* @throws Error if
|
|
154
|
+
* @throws Error if verification fails, API key generation fails, or save fails
|
|
127
155
|
*/
|
|
128
156
|
export async function handleEmailAuth() {
|
|
129
157
|
// Step 1: Collect email
|
|
@@ -139,14 +167,11 @@ export async function handleEmailAuth() {
|
|
|
139
167
|
}
|
|
140
168
|
]);
|
|
141
169
|
clearPromptLines(2);
|
|
142
|
-
// Step 2: Send OTP
|
|
143
|
-
//
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
// throw new Error("Failed to send OTP. Please try again.");
|
|
148
|
-
// }
|
|
149
|
-
// writeProgress("✅ OTP sent successfully!");
|
|
170
|
+
// Step 2: Send OTP (await to avoid dangling promise, but don't gate on result —
|
|
171
|
+
// the server may queue the OTP even when the response indicates failure.
|
|
172
|
+
// Real validation happens at the verify step.)
|
|
173
|
+
writeProgress("📧 Sending OTP to your email...");
|
|
174
|
+
await requestEmailOTP(email);
|
|
150
175
|
// Step 3: Verify OTP with retry logic
|
|
151
176
|
const signInToken = await verifyOTPWithRetry(email);
|
|
152
177
|
// Step 4: Generate API key
|
|
@@ -156,16 +181,9 @@ export async function handleEmailAuth() {
|
|
|
156
181
|
throw new Error("Failed to generate API key. Please try again.");
|
|
157
182
|
}
|
|
158
183
|
// Step 5: Save API key
|
|
159
|
-
await
|
|
184
|
+
await persistApiKey(apiKey);
|
|
160
185
|
writeSuccess("✅ API key generated and saved securely.");
|
|
161
|
-
|
|
162
|
-
writeInfo("\n🎉 You're all set! Here's what to do next:\n");
|
|
163
|
-
writeInfo(" 1️⃣ Create a new project directory:");
|
|
164
|
-
writeInfo(" mkdir my-agent && cd my-agent\n");
|
|
165
|
-
writeInfo(" 2️⃣ Initialize your agent:");
|
|
166
|
-
writeInfo(" lua init\n");
|
|
167
|
-
writeInfo(" 3️⃣ Follow the prompts to create or select an agent\n");
|
|
168
|
-
writeInfo("💡 Tip: Run 'lua --help' to see all available commands\n");
|
|
186
|
+
await showPostAuthWelcome(apiKey);
|
|
169
187
|
}
|
|
170
188
|
/**
|
|
171
189
|
* Verifies OTP with retry logic.
|
|
@@ -176,10 +194,9 @@ export async function handleEmailAuth() {
|
|
|
176
194
|
* @throws Error if maximum attempts are exceeded
|
|
177
195
|
*/
|
|
178
196
|
async function verifyOTPWithRetry(email) {
|
|
179
|
-
let otpVerified = false;
|
|
180
197
|
let attempts = 0;
|
|
181
198
|
let signInToken = null;
|
|
182
|
-
while (!
|
|
199
|
+
while (!signInToken && attempts < OTP_CONFIG.MAX_ATTEMPTS) {
|
|
183
200
|
const { pin } = await inquirer.prompt([
|
|
184
201
|
{
|
|
185
202
|
type: "input",
|
|
@@ -194,7 +211,6 @@ async function verifyOTPWithRetry(email) {
|
|
|
194
211
|
writeProgress("🔐 Verifying OTP...");
|
|
195
212
|
signInToken = await verifyOTPAndGetToken(email, pin);
|
|
196
213
|
if (signInToken) {
|
|
197
|
-
otpVerified = true;
|
|
198
214
|
writeProgress("✅ OTP verified successfully!");
|
|
199
215
|
}
|
|
200
216
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-flows.js","sourceRoot":"","sources":["../../src/utils/auth-flows.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"auth-flows.js","sourceRoot":"","sources":["../../src/utils/auth-flows.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keytar-loader.d.ts","sourceRoot":"","sources":["../../src/utils/keytar-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH;;;;;;GAMG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,cAAc,QAAQ,CAAC,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"keytar-loader.d.ts","sourceRoot":"","sources":["../../src/utils/keytar-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH;;;;;;GAMG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,cAAc,QAAQ,CAAC,GAAG,IAAI,CAAC,CAWzE"}
|
|
@@ -21,7 +21,14 @@ export async function getKeytar() {
|
|
|
21
21
|
if (process.env.LUA_SKIP_KEYCHAIN)
|
|
22
22
|
return null;
|
|
23
23
|
if (!_keytarPromise) {
|
|
24
|
-
_keytarPromise = import("keytar").
|
|
24
|
+
_keytarPromise = import("keytar").then((mod) => {
|
|
25
|
+
// Handle ESM/CJS interop: keytar methods may live on mod.default
|
|
26
|
+
if (typeof mod.setPassword === 'function')
|
|
27
|
+
return mod;
|
|
28
|
+
if (mod.default && typeof mod.default.setPassword === 'function')
|
|
29
|
+
return mod.default;
|
|
30
|
+
return null;
|
|
31
|
+
}).catch(() => null);
|
|
25
32
|
}
|
|
26
33
|
return _keytarPromise;
|
|
27
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keytar-loader.js","sourceRoot":"","sources":["../../src/utils/keytar-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,IAAI,cAAc,GAAmD,IAAI,CAAC;AAE1E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"keytar-loader.js","sourceRoot":"","sources":["../../src/utils/keytar-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,IAAI,cAAc,GAAmD,IAAI,CAAC;AAE1E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7C,iEAAiE;YACjE,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU;gBAAE,OAAO,GAAG,CAAC;YACtD,IAAI,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,UAAU;gBAAE,OAAO,GAAG,CAAC,OAAqB,CAAC;YACnG,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Handles secure storage and retrieval of sandbox skill IDs using keytar
|
|
4
4
|
*/
|
|
5
5
|
import { getKeytar } from './keytar-loader.js';
|
|
6
|
-
import { SANDBOX_STORAGE } from '../config/
|
|
6
|
+
import { SANDBOX_STORAGE } from '../config/constants.js';
|
|
7
7
|
import { skillHandler, preprocessorHandler, postprocessorHandler } from '../primitives/index.js';
|
|
8
8
|
/**
|
|
9
9
|
* Retrieves sandbox skill ID from secure storage.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-storage.js","sourceRoot":"","sources":["../../src/utils/sandbox-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sandbox-storage.js","sourceRoot":"","sources":["../../src/utils/sandbox-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEjG;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,SAAkB;IACxD,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,GAAG,eAAe,CAAC,OAAO,IAAI,SAAS,EAAE;YAC3C,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;QAC5B,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,SAAiB,EAAE,SAAkB;IAC3E,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,GAAG,eAAe,CAAC,OAAO,IAAI,SAAS,EAAE;YAC3C,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;QAC5B,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,wBAAwB;IAC1B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,UAAsB;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,cAAc,GAAoB,EAAE,CAAC;QAE3C,6CAA6C;QAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtD,IAAI,SAAS,EAAE,CAAC;oBACd,cAAc,CAAC,IAAI,CAAC;wBAClB,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;QACzD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,gBAAwB;IACrE,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,eAAe,CAAC,OAAO,iBAAiB,gBAAgB,EAAE,CAAC;QAC9E,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,SAAiB,EAAE,gBAAwB;IACxF,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,eAAe,CAAC,OAAO,iBAAiB,gBAAgB,EAAE,CAAC;QAC9E,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,wBAAwB;IAC1B,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,iBAAyB;IACvE,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,eAAe,CAAC,OAAO,kBAAkB,iBAAiB,EAAE,CAAC;QAChF,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,SAAiB,EAAE,iBAAyB;IAC1F,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,eAAe,CAAC,OAAO,kBAAkB,iBAAiB,EAAE,CAAC;QAChF,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,wBAAwB;IAC1B,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,MAAkB;IACnE,MAAM,SAAS,GAAuD,EAAE,CAAC;IAEzE,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,mBAAmB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE9D,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,YAAY,CAAC,cAAc,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACpE,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,CAAC,IAAI,CAAC;wBACb,cAAc,EAAE,YAAY,CAAC,cAAc;wBAC3C,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,MAAkB;IACpE,MAAM,SAAS,GAAwD,EAAE,CAAC;IAE1E,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEhE,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YAC3C,IAAI,aAAa,CAAC,eAAe,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;gBACxD,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACtE,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,CAAC,IAAI,CAAC;wBACb,eAAe,EAAE,aAAa,CAAC,eAAe;wBAC9C,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sandbox contract: defines what every sandbox MUST expose.
|
|
3
|
+
* Both lua-cli and lua-core test against this contract.
|
|
4
|
+
* Update this file when adding new globals or primitives.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
// Required primitive shim names (both class-based and function-based)
|
|
8
|
+
export const REQUIRED_PRIMITIVE_SHIMS = [
|
|
9
|
+
// Class-based
|
|
10
|
+
'LuaTool', 'LuaSkill', 'LuaJob', 'LuaWebhook',
|
|
11
|
+
'PreProcessor', 'LuaPreprocessor', 'PostProcessor', 'LuaPostprocessor',
|
|
12
|
+
'LuaMCPServer',
|
|
13
|
+
// Function-based
|
|
14
|
+
'defineTool', 'defineSkill', 'defineJob', 'defineWebhook',
|
|
15
|
+
'definePreProcessor', 'definePostProcessor', 'defineMCPServer',
|
|
16
|
+
] as const;
|
|
17
|
+
|
|
18
|
+
// Required platform API globals with their expected methods
|
|
19
|
+
export const REQUIRED_PLATFORM_APIS = {
|
|
20
|
+
User: ['get', 'getChatHistory'],
|
|
21
|
+
Products: ['get', 'create', 'delete', 'search', 'getById'],
|
|
22
|
+
Baskets: ['create', 'get', 'addItem', 'removeItem', 'clear', 'updateStatus', 'updateMetadata', 'placeOrder', 'getById'],
|
|
23
|
+
Orders: ['create', 'updateStatus', 'updateData', 'get', 'getById'],
|
|
24
|
+
Data: ['create', 'get', 'getEntry', 'update', 'search', 'delete'],
|
|
25
|
+
Jobs: ['create', 'getJob', 'getAll'],
|
|
26
|
+
AI: ['generate'],
|
|
27
|
+
CDN: ['upload', 'get'],
|
|
28
|
+
} as const;
|
|
29
|
+
|
|
30
|
+
export const REQUIRED_NESTED_APIS = {
|
|
31
|
+
Templates: { whatsapp: ['list', 'get', 'send'] },
|
|
32
|
+
Lua: { request: ['channel'] },
|
|
33
|
+
} as const;
|
|
34
|
+
|
|
35
|
+
// Required enums with expected keys
|
|
36
|
+
export const REQUIRED_ENUMS = {
|
|
37
|
+
BasketStatus: ['ACTIVE', 'CHECKED_OUT', 'ABANDONED', 'EXPIRED'],
|
|
38
|
+
OrderStatus: ['PENDING', 'CONFIRMED', 'FULFILLED', 'CANCELLED'],
|
|
39
|
+
} as const;
|
|
40
|
+
|
|
41
|
+
// Required utility functions
|
|
42
|
+
export const REQUIRED_UTILITIES = ['env'] as const;
|