lua-cli 3.9.2 → 3.10.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.
Files changed (170) hide show
  1. package/README.md +90 -2
  2. package/dist/api/agent.api.service.d.ts +8 -0
  3. package/dist/api/agent.api.service.d.ts.map +1 -1
  4. package/dist/api/agent.api.service.js +12 -0
  5. package/dist/api/agent.api.service.js.map +1 -1
  6. package/dist/api/device.api.service.d.ts +61 -0
  7. package/dist/api/device.api.service.d.ts.map +1 -0
  8. package/dist/api/device.api.service.js +72 -0
  9. package/dist/api/device.api.service.js.map +1 -0
  10. package/dist/api/lazy-instances.d.ts +1 -0
  11. package/dist/api/lazy-instances.d.ts.map +1 -1
  12. package/dist/api/lazy-instances.js +12 -0
  13. package/dist/api/lazy-instances.js.map +1 -1
  14. package/dist/api-exports.d.ts +38 -2
  15. package/dist/api-exports.d.ts.map +1 -1
  16. package/dist/api-exports.js +45 -2
  17. package/dist/api-exports.js.map +1 -1
  18. package/dist/cli/command-definitions.d.ts.map +1 -1
  19. package/dist/cli/command-definitions.js +100 -33
  20. package/dist/cli/command-definitions.js.map +1 -1
  21. package/dist/commands/agents.d.ts.map +1 -1
  22. package/dist/commands/agents.js +2 -11
  23. package/dist/commands/agents.js.map +1 -1
  24. package/dist/commands/apiKey.d.ts +1 -21
  25. package/dist/commands/apiKey.d.ts.map +1 -1
  26. package/dist/commands/apiKey.js +7 -25
  27. package/dist/commands/apiKey.js.map +1 -1
  28. package/dist/commands/compile.d.ts.map +1 -1
  29. package/dist/commands/compile.js +11 -3
  30. package/dist/commands/compile.js.map +1 -1
  31. package/dist/commands/configure.d.ts +2 -2
  32. package/dist/commands/configure.js +2 -2
  33. package/dist/commands/destroy.d.ts +0 -24
  34. package/dist/commands/destroy.d.ts.map +1 -1
  35. package/dist/commands/destroy.js +8 -30
  36. package/dist/commands/destroy.js.map +1 -1
  37. package/dist/commands/devices.d.ts +6 -0
  38. package/dist/commands/devices.d.ts.map +1 -0
  39. package/dist/commands/devices.js +266 -0
  40. package/dist/commands/devices.js.map +1 -0
  41. package/dist/commands/index.d.ts +2 -0
  42. package/dist/commands/index.d.ts.map +1 -1
  43. package/dist/commands/index.js +2 -0
  44. package/dist/commands/index.js.map +1 -1
  45. package/dist/commands/init.d.ts +1 -0
  46. package/dist/commands/init.d.ts.map +1 -1
  47. package/dist/commands/init.js +102 -39
  48. package/dist/commands/init.js.map +1 -1
  49. package/dist/commands/jobs.js +29 -9
  50. package/dist/commands/jobs.js.map +1 -1
  51. package/dist/commands/models.d.ts +18 -0
  52. package/dist/commands/models.d.ts.map +1 -0
  53. package/dist/commands/models.js +206 -0
  54. package/dist/commands/models.js.map +1 -0
  55. package/dist/commands/push.d.ts.map +1 -1
  56. package/dist/commands/push.js +8 -4
  57. package/dist/commands/push.js.map +1 -1
  58. package/dist/commands/pushBackup.d.ts.map +1 -1
  59. package/dist/commands/pushBackup.js +9 -1
  60. package/dist/commands/pushBackup.js.map +1 -1
  61. package/dist/commands/sync.d.ts +2 -0
  62. package/dist/commands/sync.d.ts.map +1 -1
  63. package/dist/commands/sync.js +116 -17
  64. package/dist/commands/sync.js.map +1 -1
  65. package/dist/compiler/agent-traverser.d.ts.map +1 -1
  66. package/dist/compiler/agent-traverser.js +1 -0
  67. package/dist/compiler/agent-traverser.js.map +1 -1
  68. package/dist/compiler/index.d.ts +1 -1
  69. package/dist/compiler/index.d.ts.map +1 -1
  70. package/dist/compiler/index.js +1 -1
  71. package/dist/compiler/index.js.map +1 -1
  72. package/dist/compiler/plugins/device.plugin.d.ts +46 -0
  73. package/dist/compiler/plugins/device.plugin.d.ts.map +1 -0
  74. package/dist/compiler/plugins/device.plugin.js +279 -0
  75. package/dist/compiler/plugins/device.plugin.js.map +1 -0
  76. package/dist/compiler/plugins/registry.d.ts.map +1 -1
  77. package/dist/compiler/plugins/registry.js +2 -0
  78. package/dist/compiler/plugins/registry.js.map +1 -1
  79. package/dist/compiler/source-writer.d.ts +17 -1
  80. package/dist/compiler/source-writer.d.ts.map +1 -1
  81. package/dist/compiler/source-writer.js +114 -29
  82. package/dist/compiler/source-writer.js.map +1 -1
  83. package/dist/compiler/types.d.ts +44 -2
  84. package/dist/compiler/types.d.ts.map +1 -1
  85. package/dist/compiler/types.js +1 -0
  86. package/dist/compiler/types.js.map +1 -1
  87. package/dist/config/constants.d.ts +7 -11
  88. package/dist/config/constants.d.ts.map +1 -1
  89. package/dist/config/constants.js +7 -11
  90. package/dist/config/constants.js.map +1 -1
  91. package/dist/index.js +0 -0
  92. package/dist/interfaces/agent.d.ts +11 -0
  93. package/dist/interfaces/agent.d.ts.map +1 -1
  94. package/dist/interfaces/devices.d.ts +75 -0
  95. package/dist/interfaces/devices.d.ts.map +1 -0
  96. package/dist/interfaces/devices.js +5 -0
  97. package/dist/interfaces/devices.js.map +1 -0
  98. package/dist/primitives/base.handler.d.ts.map +1 -1
  99. package/dist/primitives/base.handler.js +31 -7
  100. package/dist/primitives/base.handler.js.map +1 -1
  101. package/dist/primitives/device.handler.d.ts +43 -0
  102. package/dist/primitives/device.handler.d.ts.map +1 -0
  103. package/dist/primitives/device.handler.js +82 -0
  104. package/dist/primitives/device.handler.js.map +1 -0
  105. package/dist/primitives/index.d.ts +2 -0
  106. package/dist/primitives/index.d.ts.map +1 -1
  107. package/dist/primitives/index.js +4 -0
  108. package/dist/primitives/index.js.map +1 -1
  109. package/dist/services/analytics.d.ts.map +1 -1
  110. package/dist/services/analytics.js +6 -2
  111. package/dist/services/analytics.js.map +1 -1
  112. package/dist/services/auth.d.ts +16 -26
  113. package/dist/services/auth.d.ts.map +1 -1
  114. package/dist/services/auth.js +45 -101
  115. package/dist/services/auth.js.map +1 -1
  116. package/dist/types/skill.d.ts +98 -0
  117. package/dist/types/skill.d.ts.map +1 -1
  118. package/dist/types/skill.js +21 -0
  119. package/dist/types/skill.js.map +1 -1
  120. package/dist/types/yaml.types.d.ts +8 -0
  121. package/dist/types/yaml.types.d.ts.map +1 -1
  122. package/dist/utils/auth-flows.d.ts.map +1 -1
  123. package/dist/utils/auth-flows.js +8 -12
  124. package/dist/utils/auth-flows.js.map +1 -1
  125. package/dist/utils/backup-helpers.d.ts +41 -10
  126. package/dist/utils/backup-helpers.d.ts.map +1 -1
  127. package/dist/utils/backup-helpers.js +227 -15
  128. package/dist/utils/backup-helpers.js.map +1 -1
  129. package/dist/utils/cli.d.ts.map +1 -1
  130. package/dist/utils/cli.js +2 -3
  131. package/dist/utils/cli.js.map +1 -1
  132. package/dist/utils/command-utils.d.ts +4 -3
  133. package/dist/utils/command-utils.d.ts.map +1 -1
  134. package/dist/utils/command-utils.js +9 -20
  135. package/dist/utils/command-utils.js.map +1 -1
  136. package/dist/utils/init-agent.d.ts +37 -1
  137. package/dist/utils/init-agent.d.ts.map +1 -1
  138. package/dist/utils/init-agent.js +69 -1
  139. package/dist/utils/init-agent.js.map +1 -1
  140. package/dist/utils/init-helpers.d.ts +2 -1
  141. package/dist/utils/init-helpers.d.ts.map +1 -1
  142. package/dist/utils/init-helpers.js +3 -2
  143. package/dist/utils/init-helpers.js.map +1 -1
  144. package/dist/utils/init-prompts.d.ts +11 -1
  145. package/dist/utils/init-prompts.d.ts.map +1 -1
  146. package/dist/utils/init-prompts.js +49 -22
  147. package/dist/utils/init-prompts.js.map +1 -1
  148. package/dist/utils/sandbox-storage.d.ts +24 -18
  149. package/dist/utils/sandbox-storage.d.ts.map +1 -1
  150. package/dist/utils/sandbox-storage.js +108 -101
  151. package/dist/utils/sandbox-storage.js.map +1 -1
  152. package/dist/utils/sandbox.d.ts.map +1 -1
  153. package/dist/utils/sandbox.js +23 -0
  154. package/dist/utils/sandbox.js.map +1 -1
  155. package/docs/CLI_REFERENCE.md +152 -2
  156. package/docs/README.md +5 -3
  157. package/node_modules/@lua/shared-types/dist/index.d.mts +188 -2
  158. package/node_modules/@lua/shared-types/dist/index.d.ts +188 -2
  159. package/node_modules/@lua/shared-types/dist/index.js +171 -2
  160. package/node_modules/@lua/shared-types/dist/index.mjs +164 -1
  161. package/node_modules/@lua/shared-types/src/channel.type.ts +1 -0
  162. package/node_modules/@lua/shared-types/src/device.types.ts +172 -0
  163. package/node_modules/@lua/shared-types/src/index.ts +2 -0
  164. package/node_modules/@lua/shared-types/src/persona-defaults.ts +59 -0
  165. package/package.json +5 -7
  166. package/template/package.json +1 -1
  167. package/dist/utils/keytar-loader.d.ts +0 -20
  168. package/dist/utils/keytar-loader.d.ts.map +0 -1
  169. package/dist/utils/keytar-loader.js +0 -35
  170. package/dist/utils/keytar-loader.js.map +0 -1
@@ -1,18 +1,19 @@
1
1
  /**
2
2
  * Sandbox Storage Utilities
3
- * Handles secure storage and retrieval of sandbox skill IDs using keytar
3
+ * Handles storage and retrieval of sandbox primitive IDs using a local JSON file
4
+ * at ~/.lua-cli/sandbox.json. Replaces the previous keytar-based implementation.
4
5
  */
5
6
  import { SkillOverride } from '../interfaces/dev.js';
6
7
  import { YamlConfig } from '../types/yaml.types.js';
7
8
  /**
8
- * Retrieves sandbox skill ID from secure storage.
9
+ * Retrieves sandbox skill ID from local storage.
9
10
  *
10
11
  * @param skillName - Optional skill name for multi-skill projects
11
12
  * @returns The sandbox skill ID or null if not found
12
13
  */
13
14
  export declare function getSandboxSkillId(skillName?: string): Promise<string | null>;
14
15
  /**
15
- * Stores sandbox skill ID in secure storage.
16
+ * Stores sandbox skill ID in local storage.
16
17
  *
17
18
  * @param sandboxId - The sandbox skill ID to store
18
19
  * @param skillName - Optional skill name for multi-skill projects
@@ -20,50 +21,49 @@ export declare function getSandboxSkillId(skillName?: string): Promise<string |
20
21
  export declare function setSandboxSkillId(sandboxId: string, skillName?: string): Promise<void>;
21
22
  /**
22
23
  * Retrieves all sandbox skill IDs for all skills in the project.
23
- * Uses YAML config to get skill names and IDs.
24
24
  *
25
25
  * @param yamlConfig - The lua.skill.yaml config containing skill information
26
26
  * @returns Array of skill overrides with skillId and sandboxId pairs
27
27
  */
28
28
  export declare function getAllSandboxSkillIds(yamlConfig: YamlConfig): Promise<SkillOverride[]>;
29
29
  /**
30
- * Retrieves sandbox preprocessor ID from secure storage.
30
+ * Retrieves sandbox preprocessor ID from local storage.
31
31
  *
32
32
  * @param preprocessorName - Preprocessor name
33
33
  * @returns The sandbox preprocessor ID or null if not found
34
34
  */
35
35
  export declare function getSandboxPreProcessorId(preprocessorName: string): Promise<string | null>;
36
36
  /**
37
- * Stores sandbox preprocessor ID in secure storage.
37
+ * Stores sandbox preprocessor ID in local storage.
38
38
  *
39
39
  * @param sandboxId - The sandbox preprocessor ID to store
40
40
  * @param preprocessorName - Preprocessor name
41
41
  */
42
42
  export declare function setSandboxPreProcessorId(sandboxId: string, preprocessorName: string): Promise<void>;
43
43
  /**
44
- * Retrieves sandbox postprocessor ID from secure storage.
44
+ * Gets all sandbox preprocessor overrides for the current config.
45
+ *
46
+ * @param config - Configuration with preprocessors
47
+ * @returns Array of preprocessor overrides
48
+ */
49
+ export declare function getAllSandboxPreProcessorIds(config: YamlConfig): Promise<Array<{
50
+ preprocessorId: string;
51
+ sandboxId: string;
52
+ }>>;
53
+ /**
54
+ * Retrieves sandbox postprocessor ID from local storage.
45
55
  *
46
56
  * @param postprocessorName - Postprocessor name
47
57
  * @returns The sandbox postprocessor ID or null if not found
48
58
  */
49
59
  export declare function getSandboxPostProcessorId(postprocessorName: string): Promise<string | null>;
50
60
  /**
51
- * Stores sandbox postprocessor ID in secure storage.
61
+ * Stores sandbox postprocessor ID in local storage.
52
62
  *
53
63
  * @param sandboxId - The sandbox postprocessor ID to store
54
64
  * @param postprocessorName - Postprocessor name
55
65
  */
56
66
  export declare function setSandboxPostProcessorId(sandboxId: string, postprocessorName: string): Promise<void>;
57
- /**
58
- * Gets all sandbox preprocessor overrides for the current config.
59
- *
60
- * @param config - Configuration with preprocessors
61
- * @returns Array of preprocessor overrides
62
- */
63
- export declare function getAllSandboxPreProcessorIds(config: YamlConfig): Promise<Array<{
64
- preprocessorId: string;
65
- sandboxId: string;
66
- }>>;
67
67
  /**
68
68
  * Gets all sandbox postprocessor overrides for the current config.
69
69
  *
@@ -74,4 +74,10 @@ export declare function getAllSandboxPostProcessorIds(config: YamlConfig): Promi
74
74
  postprocessorId: string;
75
75
  sandboxId: string;
76
76
  }>>;
77
+ export declare function getSandboxDeviceId(deviceName: string): Promise<string | null>;
78
+ export declare function setSandboxDeviceId(sandboxId: string, deviceName: string): Promise<void>;
79
+ export declare function getAllSandboxDeviceIds(yamlConfig: any): Promise<{
80
+ deviceId: string;
81
+ sandboxId: string;
82
+ }[]>;
77
83
  //# sourceMappingURL=sandbox-storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-storage.d.ts","sourceRoot":"","sources":["../../src/utils/sandbox-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWlF;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW5F;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAwB5F;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAS/F;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CASzG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CASjG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS3G;AAED;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAsBlI;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAsBpI"}
1
+ {"version":3,"file":"sandbox-storage.d.ts","sourceRoot":"","sources":["../../src/utils/sandbox-storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AA0CpD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIlF;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5F;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAmB5F;AAMD;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAG/F;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIzG;AAED;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAmBpI;AAMD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGjG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI3G;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAmBtI;AAMD,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGnF;AAED,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI7F;AAED,wBAAsB,sBAAsB,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAkBhH"}
@@ -1,53 +1,64 @@
1
1
  /**
2
2
  * Sandbox Storage Utilities
3
- * Handles secure storage and retrieval of sandbox skill IDs using keytar
3
+ * Handles storage and retrieval of sandbox primitive IDs using a local JSON file
4
+ * at ~/.lua-cli/sandbox.json. Replaces the previous keytar-based implementation.
4
5
  */
5
- import { getKeytar } from './keytar-loader.js';
6
- import { SANDBOX_STORAGE } from '../config/constants.js';
6
+ import { readFileSync, writeFileSync, mkdirSync } from 'fs';
7
+ import { dirname } from 'path';
8
+ import { SANDBOX_STORAGE_FILE } from '../config/constants.js';
7
9
  import { skillHandler, preprocessorHandler, postprocessorHandler } from '../primitives/index.js';
10
+ function readStore() {
11
+ try {
12
+ const raw = readFileSync(SANDBOX_STORAGE_FILE, 'utf8');
13
+ const parsed = JSON.parse(raw);
14
+ return {
15
+ skills: parsed.skills ?? {},
16
+ preprocessors: parsed.preprocessors ?? {},
17
+ postprocessors: parsed.postprocessors ?? {},
18
+ devices: parsed.devices ?? {},
19
+ };
20
+ }
21
+ catch {
22
+ return { skills: {}, preprocessors: {}, postprocessors: {}, devices: {} };
23
+ }
24
+ }
25
+ function writeStore(store) {
26
+ try {
27
+ mkdirSync(dirname(SANDBOX_STORAGE_FILE), { recursive: true });
28
+ writeFileSync(SANDBOX_STORAGE_FILE, JSON.stringify(store, null, 2), 'utf8');
29
+ }
30
+ catch {
31
+ // Silently ignore write failures — sandbox IDs are transient dev-time values
32
+ }
33
+ }
34
+ // =============================================================================
35
+ // Skill sandbox IDs
36
+ // =============================================================================
8
37
  /**
9
- * Retrieves sandbox skill ID from secure storage.
38
+ * Retrieves sandbox skill ID from local storage.
10
39
  *
11
40
  * @param skillName - Optional skill name for multi-skill projects
12
41
  * @returns The sandbox skill ID or null if not found
13
42
  */
14
43
  export async function getSandboxSkillId(skillName) {
15
- const keytar = await getKeytar();
16
- if (!keytar)
17
- return null;
18
- try {
19
- const account = skillName
20
- ? `${SANDBOX_STORAGE.ACCOUNT}_${skillName}`
21
- : SANDBOX_STORAGE.ACCOUNT;
22
- return await keytar.getPassword(SANDBOX_STORAGE.SERVICE, account);
23
- }
24
- catch (error) {
25
- return null;
26
- }
44
+ const store = readStore();
45
+ const key = skillName ?? '__default__';
46
+ return store.skills[key] ?? null;
27
47
  }
28
48
  /**
29
- * Stores sandbox skill ID in secure storage.
49
+ * Stores sandbox skill ID in local storage.
30
50
  *
31
51
  * @param sandboxId - The sandbox skill ID to store
32
52
  * @param skillName - Optional skill name for multi-skill projects
33
53
  */
34
54
  export async function setSandboxSkillId(sandboxId, skillName) {
35
- const keytar = await getKeytar();
36
- if (!keytar)
37
- return;
38
- try {
39
- const account = skillName
40
- ? `${SANDBOX_STORAGE.ACCOUNT}_${skillName}`
41
- : SANDBOX_STORAGE.ACCOUNT;
42
- await keytar.setPassword(SANDBOX_STORAGE.SERVICE, account, sandboxId);
43
- }
44
- catch (error) {
45
- // Ignore storage errors
46
- }
55
+ const store = readStore();
56
+ const key = skillName ?? '__default__';
57
+ store.skills[key] = sandboxId;
58
+ writeStore(store);
47
59
  }
48
60
  /**
49
61
  * Retrieves all sandbox skill IDs for all skills in the project.
50
- * Uses YAML config to get skill names and IDs.
51
62
  *
52
63
  * @param yamlConfig - The lua.skill.yaml config containing skill information
53
64
  * @returns Array of skill overrides with skillId and sandboxId pairs
@@ -56,15 +67,11 @@ export async function getAllSandboxSkillIds(yamlConfig) {
56
67
  try {
57
68
  const skills = skillHandler.getFromYaml(yamlConfig);
58
69
  const skillOverrides = [];
59
- // For each skill in YAML, get its sandbox ID
60
70
  for (const skill of skills) {
61
71
  if (skill.skillId && skill.name) {
62
72
  const sandboxId = await getSandboxSkillId(skill.name);
63
73
  if (sandboxId) {
64
- skillOverrides.push({
65
- skillId: skill.skillId,
66
- sandboxId: sandboxId
67
- });
74
+ skillOverrides.push({ skillId: skill.skillId, sandboxId });
68
75
  }
69
76
  }
70
77
  }
@@ -75,77 +82,29 @@ export async function getAllSandboxSkillIds(yamlConfig) {
75
82
  return [];
76
83
  }
77
84
  }
85
+ // =============================================================================
86
+ // Preprocessor sandbox IDs
87
+ // =============================================================================
78
88
  /**
79
- * Retrieves sandbox preprocessor ID from secure storage.
89
+ * Retrieves sandbox preprocessor ID from local storage.
80
90
  *
81
91
  * @param preprocessorName - Preprocessor name
82
92
  * @returns The sandbox preprocessor ID or null if not found
83
93
  */
84
94
  export async function getSandboxPreProcessorId(preprocessorName) {
85
- const keytar = await getKeytar();
86
- if (!keytar)
87
- return null;
88
- try {
89
- const account = `${SANDBOX_STORAGE.ACCOUNT}_preprocessor_${preprocessorName}`;
90
- return await keytar.getPassword(SANDBOX_STORAGE.SERVICE, account);
91
- }
92
- catch (error) {
93
- return null;
94
- }
95
+ const store = readStore();
96
+ return store.preprocessors[preprocessorName] ?? null;
95
97
  }
96
98
  /**
97
- * Stores sandbox preprocessor ID in secure storage.
99
+ * Stores sandbox preprocessor ID in local storage.
98
100
  *
99
101
  * @param sandboxId - The sandbox preprocessor ID to store
100
102
  * @param preprocessorName - Preprocessor name
101
103
  */
102
104
  export async function setSandboxPreProcessorId(sandboxId, preprocessorName) {
103
- const keytar = await getKeytar();
104
- if (!keytar)
105
- return;
106
- try {
107
- const account = `${SANDBOX_STORAGE.ACCOUNT}_preprocessor_${preprocessorName}`;
108
- await keytar.setPassword(SANDBOX_STORAGE.SERVICE, account, sandboxId);
109
- }
110
- catch (error) {
111
- // Ignore storage errors
112
- }
113
- }
114
- /**
115
- * Retrieves sandbox postprocessor ID from secure storage.
116
- *
117
- * @param postprocessorName - Postprocessor name
118
- * @returns The sandbox postprocessor ID or null if not found
119
- */
120
- export async function getSandboxPostProcessorId(postprocessorName) {
121
- const keytar = await getKeytar();
122
- if (!keytar)
123
- return null;
124
- try {
125
- const account = `${SANDBOX_STORAGE.ACCOUNT}_postprocessor_${postprocessorName}`;
126
- return await keytar.getPassword(SANDBOX_STORAGE.SERVICE, account);
127
- }
128
- catch (error) {
129
- return null;
130
- }
131
- }
132
- /**
133
- * Stores sandbox postprocessor ID in secure storage.
134
- *
135
- * @param sandboxId - The sandbox postprocessor ID to store
136
- * @param postprocessorName - Postprocessor name
137
- */
138
- export async function setSandboxPostProcessorId(sandboxId, postprocessorName) {
139
- const keytar = await getKeytar();
140
- if (!keytar)
141
- return;
142
- try {
143
- const account = `${SANDBOX_STORAGE.ACCOUNT}_postprocessor_${postprocessorName}`;
144
- await keytar.setPassword(SANDBOX_STORAGE.SERVICE, account, sandboxId);
145
- }
146
- catch (error) {
147
- // Ignore storage errors
148
- }
105
+ const store = readStore();
106
+ store.preprocessors[preprocessorName] = sandboxId;
107
+ writeStore(store);
149
108
  }
150
109
  /**
151
110
  * Gets all sandbox preprocessor overrides for the current config.
@@ -161,10 +120,7 @@ export async function getAllSandboxPreProcessorIds(config) {
161
120
  if (preprocessor.preprocessorId && preprocessor.name) {
162
121
  const sandboxId = await getSandboxPreProcessorId(preprocessor.name);
163
122
  if (sandboxId) {
164
- overrides.push({
165
- preprocessorId: preprocessor.preprocessorId,
166
- sandboxId: sandboxId
167
- });
123
+ overrides.push({ preprocessorId: preprocessor.preprocessorId, sandboxId });
168
124
  }
169
125
  }
170
126
  }
@@ -174,6 +130,30 @@ export async function getAllSandboxPreProcessorIds(config) {
174
130
  }
175
131
  return overrides;
176
132
  }
133
+ // =============================================================================
134
+ // Postprocessor sandbox IDs
135
+ // =============================================================================
136
+ /**
137
+ * Retrieves sandbox postprocessor ID from local storage.
138
+ *
139
+ * @param postprocessorName - Postprocessor name
140
+ * @returns The sandbox postprocessor ID or null if not found
141
+ */
142
+ export async function getSandboxPostProcessorId(postprocessorName) {
143
+ const store = readStore();
144
+ return store.postprocessors[postprocessorName] ?? null;
145
+ }
146
+ /**
147
+ * Stores sandbox postprocessor ID in local storage.
148
+ *
149
+ * @param sandboxId - The sandbox postprocessor ID to store
150
+ * @param postprocessorName - Postprocessor name
151
+ */
152
+ export async function setSandboxPostProcessorId(sandboxId, postprocessorName) {
153
+ const store = readStore();
154
+ store.postprocessors[postprocessorName] = sandboxId;
155
+ writeStore(store);
156
+ }
177
157
  /**
178
158
  * Gets all sandbox postprocessor overrides for the current config.
179
159
  *
@@ -188,10 +168,7 @@ export async function getAllSandboxPostProcessorIds(config) {
188
168
  if (postprocessor.postprocessorId && postprocessor.name) {
189
169
  const sandboxId = await getSandboxPostProcessorId(postprocessor.name);
190
170
  if (sandboxId) {
191
- overrides.push({
192
- postprocessorId: postprocessor.postprocessorId,
193
- sandboxId: sandboxId
194
- });
171
+ overrides.push({ postprocessorId: postprocessor.postprocessorId, sandboxId });
195
172
  }
196
173
  }
197
174
  }
@@ -201,4 +178,34 @@ export async function getAllSandboxPostProcessorIds(config) {
201
178
  }
202
179
  return overrides;
203
180
  }
181
+ // ===========================================================================
182
+ // DEVICE SANDBOX IDS
183
+ // ===========================================================================
184
+ export async function getSandboxDeviceId(deviceName) {
185
+ const store = readStore();
186
+ return store.devices[deviceName] ?? null;
187
+ }
188
+ export async function setSandboxDeviceId(sandboxId, deviceName) {
189
+ const store = readStore();
190
+ store.devices[deviceName] = sandboxId;
191
+ writeStore(store);
192
+ }
193
+ export async function getAllSandboxDeviceIds(yamlConfig) {
194
+ const overrides = [];
195
+ try {
196
+ const devices = yamlConfig?.devices || [];
197
+ for (const device of devices) {
198
+ if (device.deviceId && device.name) {
199
+ const sandboxId = await getSandboxDeviceId(device.name);
200
+ if (sandboxId) {
201
+ overrides.push({ deviceId: device.deviceId, sandboxId });
202
+ }
203
+ }
204
+ }
205
+ }
206
+ catch (error) {
207
+ console.error('Error getting sandbox device IDs:', error);
208
+ }
209
+ return overrides;
210
+ }
204
211
  //# sourceMappingURL=sandbox-storage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-storage.js","sourceRoot":"","sources":["../../src/utils/sandbox-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox-storage.js","sourceRoot":"","sources":["../../src/utils/sandbox-storage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/utils/sandbox.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAO/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,GAAG,CAAC;IACb,IAAI,EAAE,GAAG,CAAC;CACX;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,GAAG,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,2BAA4B,SAAQ,cAAc;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBjE;AA0CD,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,GAAG,CA4O1D;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,CAiD3E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAuDjF;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAqEzE;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC,CAqD3F;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC,CAqDhG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI;mBAExD,GAAG,EAAE;qBAgBH,GAAG,EAAE;oBAgBN,GAAG,EAAE;oBAgBL,GAAG,EAAE;EAiBxB"}
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/utils/sandbox.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAO/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,GAAG,CAAC;IACb,IAAI,EAAE,GAAG,CAAC;CACX;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,GAAG,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,2BAA4B,SAAQ,cAAc;IACjE,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBjE;AA0CD,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,GAAG,CAkQ1D;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,CAiD3E;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAuDjF;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAqEzE;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC,CAqD3F;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC,CAqDhG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI;mBAExD,GAAG,EAAE;qBAgBH,GAAG,EAAE;oBAgBN,GAAG,EAAE;oBAgBL,GAAG,EAAE;EAiBxB"}
@@ -278,6 +278,29 @@ export function createSandbox(options) {
278
278
  getJob: async (jobId) => jobService.getJob(jobId),
279
279
  getAll: async (options = {}) => jobService.getAll(options)
280
280
  },
281
+ // Device API (for sandbox — commands route through lua-api developer endpoint)
282
+ Device: {
283
+ sendCommand: async (deviceName, command, payload, timeout) => {
284
+ const { getDeviceInstance } = await import("../api/lazy-instances.js");
285
+ const deviceApi = await getDeviceInstance();
286
+ const response = await deviceApi.sendCommand(deviceName, command, payload, timeout || 30000);
287
+ if (!response.success)
288
+ throw new Error(response.error?.message || 'Device command failed');
289
+ return response.data;
290
+ },
291
+ listDevices: async () => {
292
+ const { getDeviceInstance } = await import("../api/lazy-instances.js");
293
+ const deviceApi = await getDeviceInstance();
294
+ const response = await deviceApi.getDevices();
295
+ return response.data?.devices || response.data || [];
296
+ },
297
+ getStatus: async (deviceName) => {
298
+ const { getDeviceInstance } = await import("../api/lazy-instances.js");
299
+ const deviceApi = await getDeviceInstance();
300
+ const response = await deviceApi.getDeviceStatus(deviceName);
301
+ return response.data;
302
+ },
303
+ },
281
304
  // Environment variables function
282
305
  env: (key) => envVars[key],
283
306
  // Enums for status values
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/utils/sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/utils/sandbox.ts"],"names":[],"mappings":"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"}