@creezio/electron-shell 0.22.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 (563) hide show
  1. package/README.md +351 -0
  2. package/dist/.creezio-src-hash.json +4 -0
  3. package/dist/admin-window.d.ts +18 -0
  4. package/dist/admin-window.d.ts.map +1 -0
  5. package/dist/admin-window.js +75 -0
  6. package/dist/admin-window.js.map +1 -0
  7. package/dist/boot.d.ts +36 -0
  8. package/dist/boot.d.ts.map +1 -0
  9. package/dist/boot.js +99 -0
  10. package/dist/boot.js.map +1 -0
  11. package/dist/desktop/assistant-chrome.d.ts +42 -0
  12. package/dist/desktop/assistant-chrome.d.ts.map +1 -0
  13. package/dist/desktop/assistant-chrome.js +178 -0
  14. package/dist/desktop/assistant-chrome.js.map +1 -0
  15. package/dist/desktop/brand-desktop-runtime.d.ts +72 -0
  16. package/dist/desktop/brand-desktop-runtime.d.ts.map +1 -0
  17. package/dist/desktop/brand-desktop-runtime.js +3926 -0
  18. package/dist/desktop/brand-desktop-runtime.js.map +1 -0
  19. package/dist/desktop/desktop-session.d.ts +85 -0
  20. package/dist/desktop/desktop-session.d.ts.map +1 -0
  21. package/dist/desktop/desktop-session.js +163 -0
  22. package/dist/desktop/desktop-session.js.map +1 -0
  23. package/dist/desktop/error-page-html.d.ts +16 -0
  24. package/dist/desktop/error-page-html.d.ts.map +1 -0
  25. package/dist/desktop/error-page-html.js +88 -0
  26. package/dist/desktop/error-page-html.js.map +1 -0
  27. package/dist/desktop/legacy-brand-compat.d.ts +45 -0
  28. package/dist/desktop/legacy-brand-compat.d.ts.map +1 -0
  29. package/dist/desktop/legacy-brand-compat.js +49 -0
  30. package/dist/desktop/legacy-brand-compat.js.map +1 -0
  31. package/dist/desktop/oauth-loopback.d.ts +28 -0
  32. package/dist/desktop/oauth-loopback.d.ts.map +1 -0
  33. package/dist/desktop/oauth-loopback.js +137 -0
  34. package/dist/desktop/oauth-loopback.js.map +1 -0
  35. package/dist/desktop/profile-picker-html.d.ts +27 -0
  36. package/dist/desktop/profile-picker-html.d.ts.map +1 -0
  37. package/dist/desktop/profile-picker-html.js +213 -0
  38. package/dist/desktop/profile-picker-html.js.map +1 -0
  39. package/dist/desktop/remote-offline-html.d.ts +14 -0
  40. package/dist/desktop/remote-offline-html.d.ts.map +1 -0
  41. package/dist/desktop/remote-offline-html.js +88 -0
  42. package/dist/desktop/remote-offline-html.js.map +1 -0
  43. package/dist/factory-reset-runtime.d.ts +11 -0
  44. package/dist/factory-reset-runtime.d.ts.map +1 -0
  45. package/dist/factory-reset-runtime.js +77 -0
  46. package/dist/factory-reset-runtime.js.map +1 -0
  47. package/dist/host/ai-workspace/actions.d.ts +12 -0
  48. package/dist/host/ai-workspace/actions.d.ts.map +1 -0
  49. package/dist/host/ai-workspace/actions.js +243 -0
  50. package/dist/host/ai-workspace/actions.js.map +1 -0
  51. package/dist/host/ai-workspace/bindings.d.ts +51 -0
  52. package/dist/host/ai-workspace/bindings.d.ts.map +1 -0
  53. package/dist/host/ai-workspace/bindings.js +40 -0
  54. package/dist/host/ai-workspace/bindings.js.map +1 -0
  55. package/dist/host/ai-workspace/index.d.ts +11 -0
  56. package/dist/host/ai-workspace/index.d.ts.map +1 -0
  57. package/dist/host/ai-workspace/index.js +6 -0
  58. package/dist/host/ai-workspace/index.js.map +1 -0
  59. package/dist/host/ai-workspace/manager.d.ts +128 -0
  60. package/dist/host/ai-workspace/manager.d.ts.map +1 -0
  61. package/dist/host/ai-workspace/manager.js +519 -0
  62. package/dist/host/ai-workspace/manager.js.map +1 -0
  63. package/dist/host/ai-workspace/profile-window.d.ts +37 -0
  64. package/dist/host/ai-workspace/profile-window.d.ts.map +1 -0
  65. package/dist/host/ai-workspace/profile-window.js +121 -0
  66. package/dist/host/ai-workspace/profile-window.js.map +1 -0
  67. package/dist/host/ai-workspace/screencast.d.ts +56 -0
  68. package/dist/host/ai-workspace/screencast.d.ts.map +1 -0
  69. package/dist/host/ai-workspace/screencast.js +245 -0
  70. package/dist/host/ai-workspace/screencast.js.map +1 -0
  71. package/dist/host/ai-workspace/types.d.ts +40 -0
  72. package/dist/host/ai-workspace/types.d.ts.map +1 -0
  73. package/dist/host/ai-workspace/types.js +6 -0
  74. package/dist/host/ai-workspace/types.js.map +1 -0
  75. package/dist/host/brand-host-runtime.d.ts +107 -0
  76. package/dist/host/brand-host-runtime.d.ts.map +1 -0
  77. package/dist/host/brand-host-runtime.js +274 -0
  78. package/dist/host/brand-host-runtime.js.map +1 -0
  79. package/dist/host/brand-host-stack.d.ts +117 -0
  80. package/dist/host/brand-host-stack.d.ts.map +1 -0
  81. package/dist/host/brand-host-stack.js +253 -0
  82. package/dist/host/brand-host-stack.js.map +1 -0
  83. package/dist/host/brand-kernel-http.d.ts +34 -0
  84. package/dist/host/brand-kernel-http.d.ts.map +1 -0
  85. package/dist/host/brand-kernel-http.js +95 -0
  86. package/dist/host/brand-kernel-http.js.map +1 -0
  87. package/dist/host/brand-meili-boot.d.ts +67 -0
  88. package/dist/host/brand-meili-boot.d.ts.map +1 -0
  89. package/dist/host/brand-meili-boot.js +100 -0
  90. package/dist/host/brand-meili-boot.js.map +1 -0
  91. package/dist/host/bridge-client.d.ts +54 -0
  92. package/dist/host/bridge-client.d.ts.map +1 -0
  93. package/dist/host/bridge-client.js +187 -0
  94. package/dist/host/bridge-client.js.map +1 -0
  95. package/dist/host/browser-tabs/browser-tab-driver.d.ts +45 -0
  96. package/dist/host/browser-tabs/browser-tab-driver.d.ts.map +1 -0
  97. package/dist/host/browser-tabs/browser-tab-driver.js +154 -0
  98. package/dist/host/browser-tabs/browser-tab-driver.js.map +1 -0
  99. package/dist/host/browser-tabs/browser-tab-manager.d.ts +208 -0
  100. package/dist/host/browser-tabs/browser-tab-manager.d.ts.map +1 -0
  101. package/dist/host/browser-tabs/browser-tab-manager.js +758 -0
  102. package/dist/host/browser-tabs/browser-tab-manager.js.map +1 -0
  103. package/dist/host/browser-tabs/browser-tab-preload-path.d.ts +2 -0
  104. package/dist/host/browser-tabs/browser-tab-preload-path.d.ts.map +1 -0
  105. package/dist/host/browser-tabs/browser-tab-preload-path.js +29 -0
  106. package/dist/host/browser-tabs/browser-tab-preload-path.js.map +1 -0
  107. package/dist/host/browser-tabs/browser-tab-preload.d.ts +11 -0
  108. package/dist/host/browser-tabs/browser-tab-preload.d.ts.map +1 -0
  109. package/dist/host/browser-tabs/browser-tab-preload.js +11 -0
  110. package/dist/host/browser-tabs/browser-tab-preload.js.map +1 -0
  111. package/dist/host/browser-tabs/chrome-ua.d.ts +19 -0
  112. package/dist/host/browser-tabs/chrome-ua.d.ts.map +1 -0
  113. package/dist/host/browser-tabs/chrome-ua.js +37 -0
  114. package/dist/host/browser-tabs/chrome-ua.js.map +1 -0
  115. package/dist/host/browser-tabs/fake-cursor-inject.d.ts +7 -0
  116. package/dist/host/browser-tabs/fake-cursor-inject.d.ts.map +1 -0
  117. package/dist/host/browser-tabs/fake-cursor-inject.js +7 -0
  118. package/dist/host/browser-tabs/fake-cursor-inject.js.map +1 -0
  119. package/dist/host/browser-tabs/index.d.ts +13 -0
  120. package/dist/host/browser-tabs/index.d.ts.map +1 -0
  121. package/dist/host/browser-tabs/index.js +13 -0
  122. package/dist/host/browser-tabs/index.js.map +1 -0
  123. package/dist/host/browser-tabs/tab-load-state.d.ts +56 -0
  124. package/dist/host/browser-tabs/tab-load-state.d.ts.map +1 -0
  125. package/dist/host/browser-tabs/tab-load-state.js +56 -0
  126. package/dist/host/browser-tabs/tab-load-state.js.map +1 -0
  127. package/dist/host/browser-tabs/tab-url.d.ts +10 -0
  128. package/dist/host/browser-tabs/tab-url.d.ts.map +1 -0
  129. package/dist/host/browser-tabs/tab-url.js +57 -0
  130. package/dist/host/browser-tabs/tab-url.js.map +1 -0
  131. package/dist/host/context.d.ts +70 -0
  132. package/dist/host/context.d.ts.map +1 -0
  133. package/dist/host/context.js +16 -0
  134. package/dist/host/context.js.map +1 -0
  135. package/dist/host/contracts.d.ts +39 -0
  136. package/dist/host/contracts.d.ts.map +1 -0
  137. package/dist/host/contracts.js +26 -0
  138. package/dist/host/contracts.js.map +1 -0
  139. package/dist/host/crash-reporter.d.ts +65 -0
  140. package/dist/host/crash-reporter.d.ts.map +1 -0
  141. package/dist/host/crash-reporter.js +371 -0
  142. package/dist/host/crash-reporter.js.map +1 -0
  143. package/dist/host/ensure-kit-binaries.d.ts +17 -0
  144. package/dist/host/ensure-kit-binaries.d.ts.map +1 -0
  145. package/dist/host/ensure-kit-binaries.js +205 -0
  146. package/dist/host/ensure-kit-binaries.js.map +1 -0
  147. package/dist/host/feature-off-host.d.ts +130 -0
  148. package/dist/host/feature-off-host.d.ts.map +1 -0
  149. package/dist/host/feature-off-host.js +138 -0
  150. package/dist/host/feature-off-host.js.map +1 -0
  151. package/dist/host/hermes/crm-key.d.ts +49 -0
  152. package/dist/host/hermes/crm-key.d.ts.map +1 -0
  153. package/dist/host/hermes/crm-key.js +126 -0
  154. package/dist/host/hermes/crm-key.js.map +1 -0
  155. package/dist/host/hermes/ensure-crm-key-db.d.ts +7 -0
  156. package/dist/host/hermes/ensure-crm-key-db.d.ts.map +1 -0
  157. package/dist/host/hermes/ensure-crm-key-db.js +84 -0
  158. package/dist/host/hermes/ensure-crm-key-db.js.map +1 -0
  159. package/dist/host/hermes/launcher.d.ts +98 -0
  160. package/dist/host/hermes/launcher.d.ts.map +1 -0
  161. package/dist/host/hermes/launcher.js +972 -0
  162. package/dist/host/hermes/launcher.js.map +1 -0
  163. package/dist/host/hermes/runtime-bootstrap.d.ts +172 -0
  164. package/dist/host/hermes/runtime-bootstrap.d.ts.map +1 -0
  165. package/dist/host/hermes/runtime-bootstrap.js +789 -0
  166. package/dist/host/hermes/runtime-bootstrap.js.map +1 -0
  167. package/dist/host/hermes/skills-seed.d.ts +40 -0
  168. package/dist/host/hermes/skills-seed.d.ts.map +1 -0
  169. package/dist/host/hermes/skills-seed.js +100 -0
  170. package/dist/host/hermes/skills-seed.js.map +1 -0
  171. package/dist/host/host-stack.d.ts +35 -0
  172. package/dist/host/host-stack.d.ts.map +1 -0
  173. package/dist/host/host-stack.js +38 -0
  174. package/dist/host/host-stack.js.map +1 -0
  175. package/dist/host/kit-os-resources.d.ts +6 -0
  176. package/dist/host/kit-os-resources.d.ts.map +1 -0
  177. package/dist/host/kit-os-resources.js +88 -0
  178. package/dist/host/kit-os-resources.js.map +1 -0
  179. package/dist/host/load-electron.d.ts +2 -0
  180. package/dist/host/load-electron.d.ts.map +1 -0
  181. package/dist/host/load-electron.js +44 -0
  182. package/dist/host/load-electron.js.map +1 -0
  183. package/dist/host/local-config.d.ts +120 -0
  184. package/dist/host/local-config.d.ts.map +1 -0
  185. package/dist/host/local-config.js +633 -0
  186. package/dist/host/local-config.js.map +1 -0
  187. package/dist/host/meili/browse.d.ts +58 -0
  188. package/dist/host/meili/browse.d.ts.map +1 -0
  189. package/dist/host/meili/browse.js +98 -0
  190. package/dist/host/meili/browse.js.map +1 -0
  191. package/dist/host/meili/coherence-db.d.ts +35 -0
  192. package/dist/host/meili/coherence-db.d.ts.map +1 -0
  193. package/dist/host/meili/coherence-db.js +129 -0
  194. package/dist/host/meili/coherence-db.js.map +1 -0
  195. package/dist/host/meili/coherence-query.d.ts +10 -0
  196. package/dist/host/meili/coherence-query.d.ts.map +1 -0
  197. package/dist/host/meili/coherence-query.js +23 -0
  198. package/dist/host/meili/coherence-query.js.map +1 -0
  199. package/dist/host/meili/coherence.d.ts +53 -0
  200. package/dist/host/meili/coherence.d.ts.map +1 -0
  201. package/dist/host/meili/coherence.js +148 -0
  202. package/dist/host/meili/coherence.js.map +1 -0
  203. package/dist/host/meili/feed.d.ts +82 -0
  204. package/dist/host/meili/feed.d.ts.map +1 -0
  205. package/dist/host/meili/feed.js +100 -0
  206. package/dist/host/meili/feed.js.map +1 -0
  207. package/dist/host/meili/generic-indexer.d.ts +34 -0
  208. package/dist/host/meili/generic-indexer.d.ts.map +1 -0
  209. package/dist/host/meili/generic-indexer.js +333 -0
  210. package/dist/host/meili/generic-indexer.js.map +1 -0
  211. package/dist/host/meili/index-schema.d.ts +64 -0
  212. package/dist/host/meili/index-schema.d.ts.map +1 -0
  213. package/dist/host/meili/index-schema.js +70 -0
  214. package/dist/host/meili/index-schema.js.map +1 -0
  215. package/dist/host/meili/index.d.ts +13 -0
  216. package/dist/host/meili/index.d.ts.map +1 -0
  217. package/dist/host/meili/index.js +8 -0
  218. package/dist/host/meili/index.js.map +1 -0
  219. package/dist/host/meili/indexer.d.ts +31 -0
  220. package/dist/host/meili/indexer.d.ts.map +1 -0
  221. package/dist/host/meili/indexer.js +49 -0
  222. package/dist/host/meili/indexer.js.map +1 -0
  223. package/dist/host/meili-launcher.d.ts +30 -0
  224. package/dist/host/meili-launcher.d.ts.map +1 -0
  225. package/dist/host/meili-launcher.js +115 -0
  226. package/dist/host/meili-launcher.js.map +1 -0
  227. package/dist/host/n8n/agent-isolation.d.ts +55 -0
  228. package/dist/host/n8n/agent-isolation.d.ts.map +1 -0
  229. package/dist/host/n8n/agent-isolation.js +158 -0
  230. package/dist/host/n8n/agent-isolation.js.map +1 -0
  231. package/dist/host/n8n/api-key.d.ts +67 -0
  232. package/dist/host/n8n/api-key.d.ts.map +1 -0
  233. package/dist/host/n8n/api-key.js +297 -0
  234. package/dist/host/n8n/api-key.js.map +1 -0
  235. package/dist/host/n8n/launcher.d.ts +126 -0
  236. package/dist/host/n8n/launcher.d.ts.map +1 -0
  237. package/dist/host/n8n/launcher.js +1170 -0
  238. package/dist/host/n8n/launcher.js.map +1 -0
  239. package/dist/host/n8n/runtime-bootstrap.d.ts +44 -0
  240. package/dist/host/n8n/runtime-bootstrap.d.ts.map +1 -0
  241. package/dist/host/n8n/runtime-bootstrap.js +230 -0
  242. package/dist/host/n8n/runtime-bootstrap.js.map +1 -0
  243. package/dist/host/node-runtime.d.ts +52 -0
  244. package/dist/host/node-runtime.d.ts.map +1 -0
  245. package/dist/host/node-runtime.js +257 -0
  246. package/dist/host/node-runtime.js.map +1 -0
  247. package/dist/host/npm-cli.d.ts +43 -0
  248. package/dist/host/npm-cli.d.ts.map +1 -0
  249. package/dist/host/npm-cli.js +213 -0
  250. package/dist/host/npm-cli.js.map +1 -0
  251. package/dist/host/plugins/accept-check.d.ts +19 -0
  252. package/dist/host/plugins/accept-check.d.ts.map +1 -0
  253. package/dist/host/plugins/accept-check.js +172 -0
  254. package/dist/host/plugins/accept-check.js.map +1 -0
  255. package/dist/host/plugins/brand-bindings.d.ts +103 -0
  256. package/dist/host/plugins/brand-bindings.d.ts.map +1 -0
  257. package/dist/host/plugins/brand-bindings.js +65 -0
  258. package/dist/host/plugins/brand-bindings.js.map +1 -0
  259. package/dist/host/plugins/control-adapters.d.ts +11 -0
  260. package/dist/host/plugins/control-adapters.d.ts.map +1 -0
  261. package/dist/host/plugins/control-adapters.js +83 -0
  262. package/dist/host/plugins/control-adapters.js.map +1 -0
  263. package/dist/host/plugins/control-extras.d.ts +61 -0
  264. package/dist/host/plugins/control-extras.d.ts.map +1 -0
  265. package/dist/host/plugins/control-extras.js +382 -0
  266. package/dist/host/plugins/control-extras.js.map +1 -0
  267. package/dist/host/plugins/control-plane.d.ts +42 -0
  268. package/dist/host/plugins/control-plane.d.ts.map +1 -0
  269. package/dist/host/plugins/control-plane.js +124 -0
  270. package/dist/host/plugins/control-plane.js.map +1 -0
  271. package/dist/host/plugins/control-token.d.ts +24 -0
  272. package/dist/host/plugins/control-token.d.ts.map +1 -0
  273. package/dist/host/plugins/control-token.js +77 -0
  274. package/dist/host/plugins/control-token.js.map +1 -0
  275. package/dist/host/plugins/crm-key.d.ts +25 -0
  276. package/dist/host/plugins/crm-key.d.ts.map +1 -0
  277. package/dist/host/plugins/crm-key.js +126 -0
  278. package/dist/host/plugins/crm-key.js.map +1 -0
  279. package/dist/host/plugins/data.d.ts +21 -0
  280. package/dist/host/plugins/data.d.ts.map +1 -0
  281. package/dist/host/plugins/data.js +100 -0
  282. package/dist/host/plugins/data.js.map +1 -0
  283. package/dist/host/plugins/events.d.ts +6 -0
  284. package/dist/host/plugins/events.d.ts.map +1 -0
  285. package/dist/host/plugins/events.js +6 -0
  286. package/dist/host/plugins/events.js.map +1 -0
  287. package/dist/host/plugins/execution-grant.d.ts +6 -0
  288. package/dist/host/plugins/execution-grant.d.ts.map +1 -0
  289. package/dist/host/plugins/execution-grant.js +6 -0
  290. package/dist/host/plugins/execution-grant.js.map +1 -0
  291. package/dist/host/plugins/git.d.ts +56 -0
  292. package/dist/host/plugins/git.d.ts.map +1 -0
  293. package/dist/host/plugins/git.js +357 -0
  294. package/dist/host/plugins/git.js.map +1 -0
  295. package/dist/host/plugins/host.d.ts +68 -0
  296. package/dist/host/plugins/host.d.ts.map +1 -0
  297. package/dist/host/plugins/host.js +276 -0
  298. package/dist/host/plugins/host.js.map +1 -0
  299. package/dist/host/plugins/launcher.d.ts +146 -0
  300. package/dist/host/plugins/launcher.d.ts.map +1 -0
  301. package/dist/host/plugins/launcher.js +489 -0
  302. package/dist/host/plugins/launcher.js.map +1 -0
  303. package/dist/host/plugins/runtime.d.ts +28 -0
  304. package/dist/host/plugins/runtime.d.ts.map +1 -0
  305. package/dist/host/plugins/runtime.js +430 -0
  306. package/dist/host/plugins/runtime.js.map +1 -0
  307. package/dist/host/plugins/test-runner.d.ts +15 -0
  308. package/dist/host/plugins/test-runner.d.ts.map +1 -0
  309. package/dist/host/plugins/test-runner.js +106 -0
  310. package/dist/host/plugins/test-runner.js.map +1 -0
  311. package/dist/host/safe-storage.d.ts +21 -0
  312. package/dist/host/safe-storage.d.ts.map +1 -0
  313. package/dist/host/safe-storage.js +55 -0
  314. package/dist/host/safe-storage.js.map +1 -0
  315. package/dist/host/sandbox/embed-sandbox.d.ts +133 -0
  316. package/dist/host/sandbox/embed-sandbox.d.ts.map +1 -0
  317. package/dist/host/sandbox/embed-sandbox.js +378 -0
  318. package/dist/host/sandbox/embed-sandbox.js.map +1 -0
  319. package/dist/host/sandbox/os-sandbox.d.ts +41 -0
  320. package/dist/host/sandbox/os-sandbox.d.ts.map +1 -0
  321. package/dist/host/sandbox/os-sandbox.js +98 -0
  322. package/dist/host/sandbox/os-sandbox.js.map +1 -0
  323. package/dist/host/server-env.d.ts +50 -0
  324. package/dist/host/server-env.d.ts.map +1 -0
  325. package/dist/host/server-env.js +64 -0
  326. package/dist/host/server-env.js.map +1 -0
  327. package/dist/host/server-launcher.d.ts +49 -0
  328. package/dist/host/server-launcher.d.ts.map +1 -0
  329. package/dist/host/server-launcher.js +43 -0
  330. package/dist/host/server-launcher.js.map +1 -0
  331. package/dist/host/tunnel/cloudflared-respawn.d.ts +58 -0
  332. package/dist/host/tunnel/cloudflared-respawn.d.ts.map +1 -0
  333. package/dist/host/tunnel/cloudflared-respawn.js +73 -0
  334. package/dist/host/tunnel/cloudflared-respawn.js.map +1 -0
  335. package/dist/host/tunnel/tunnel.d.ts +72 -0
  336. package/dist/host/tunnel/tunnel.d.ts.map +1 -0
  337. package/dist/host/tunnel/tunnel.js +462 -0
  338. package/dist/host/tunnel/tunnel.js.map +1 -0
  339. package/dist/host/web-telemetry.d.ts +16 -0
  340. package/dist/host/web-telemetry.d.ts.map +1 -0
  341. package/dist/host/web-telemetry.js +97 -0
  342. package/dist/host/web-telemetry.js.map +1 -0
  343. package/dist/index.d.ts +198 -0
  344. package/dist/index.d.ts.map +1 -0
  345. package/dist/index.js +102 -0
  346. package/dist/index.js.map +1 -0
  347. package/dist/logger.d.ts +44 -0
  348. package/dist/logger.d.ts.map +1 -0
  349. package/dist/logger.js +252 -0
  350. package/dist/logger.js.map +1 -0
  351. package/dist/main-facade.d.ts +51 -0
  352. package/dist/main-facade.d.ts.map +1 -0
  353. package/dist/main-facade.js +96 -0
  354. package/dist/main-facade.js.map +1 -0
  355. package/dist/meili.d.ts +19 -0
  356. package/dist/meili.d.ts.map +1 -0
  357. package/dist/meili.js +14 -0
  358. package/dist/meili.js.map +1 -0
  359. package/dist/splash-ui.d.ts +69 -0
  360. package/dist/splash-ui.d.ts.map +1 -0
  361. package/dist/splash-ui.js +431 -0
  362. package/dist/splash-ui.js.map +1 -0
  363. package/dist/tray.d.ts +44 -0
  364. package/dist/tray.d.ts.map +1 -0
  365. package/dist/tray.js +173 -0
  366. package/dist/tray.js.map +1 -0
  367. package/dist/updater.d.ts +36 -0
  368. package/dist/updater.d.ts.map +1 -0
  369. package/dist/updater.js +257 -0
  370. package/dist/updater.js.map +1 -0
  371. package/dist/window-chrome.d.ts +12 -0
  372. package/dist/window-chrome.d.ts.map +1 -0
  373. package/dist/window-chrome.js +93 -0
  374. package/dist/window-chrome.js.map +1 -0
  375. package/dist-cjs/admin-window.js +116 -0
  376. package/dist-cjs/admin-window.js.map +1 -0
  377. package/dist-cjs/boot.js +139 -0
  378. package/dist-cjs/boot.js.map +1 -0
  379. package/dist-cjs/desktop/assistant-chrome.js +184 -0
  380. package/dist-cjs/desktop/assistant-chrome.js.map +1 -0
  381. package/dist-cjs/desktop/brand-desktop-runtime.js +3932 -0
  382. package/dist-cjs/desktop/brand-desktop-runtime.js.map +1 -0
  383. package/dist-cjs/desktop/desktop-session.js +171 -0
  384. package/dist-cjs/desktop/desktop-session.js.map +1 -0
  385. package/dist-cjs/desktop/error-page-html.js +92 -0
  386. package/dist-cjs/desktop/error-page-html.js.map +1 -0
  387. package/dist-cjs/desktop/legacy-brand-compat.js +56 -0
  388. package/dist-cjs/desktop/legacy-brand-compat.js.map +1 -0
  389. package/dist-cjs/desktop/oauth-loopback.js +144 -0
  390. package/dist-cjs/desktop/oauth-loopback.js.map +1 -0
  391. package/dist-cjs/desktop/profile-picker-html.js +216 -0
  392. package/dist-cjs/desktop/profile-picker-html.js.map +1 -0
  393. package/dist-cjs/desktop/remote-offline-html.js +91 -0
  394. package/dist-cjs/desktop/remote-offline-html.js.map +1 -0
  395. package/dist-cjs/factory-reset-runtime.js +117 -0
  396. package/dist-cjs/factory-reset-runtime.js.map +1 -0
  397. package/dist-cjs/host/ai-workspace/actions.js +247 -0
  398. package/dist-cjs/host/ai-workspace/actions.js.map +1 -0
  399. package/dist-cjs/host/ai-workspace/bindings.js +49 -0
  400. package/dist-cjs/host/ai-workspace/bindings.js.map +1 -0
  401. package/dist-cjs/host/ai-workspace/index.js +21 -0
  402. package/dist-cjs/host/ai-workspace/index.js.map +1 -0
  403. package/dist-cjs/host/ai-workspace/manager.js +528 -0
  404. package/dist-cjs/host/ai-workspace/manager.js.map +1 -0
  405. package/dist-cjs/host/ai-workspace/profile-window.js +125 -0
  406. package/dist-cjs/host/ai-workspace/profile-window.js.map +1 -0
  407. package/dist-cjs/host/ai-workspace/screencast.js +249 -0
  408. package/dist-cjs/host/ai-workspace/screencast.js.map +1 -0
  409. package/dist-cjs/host/ai-workspace/types.js +7 -0
  410. package/dist-cjs/host/ai-workspace/types.js.map +1 -0
  411. package/dist-cjs/host/brand-host-runtime.js +286 -0
  412. package/dist-cjs/host/brand-host-runtime.js.map +1 -0
  413. package/dist-cjs/host/brand-host-stack.js +259 -0
  414. package/dist-cjs/host/brand-host-stack.js.map +1 -0
  415. package/dist-cjs/host/brand-kernel-http.js +101 -0
  416. package/dist-cjs/host/brand-kernel-http.js.map +1 -0
  417. package/dist-cjs/host/brand-meili-boot.js +106 -0
  418. package/dist-cjs/host/brand-meili-boot.js.map +1 -0
  419. package/dist-cjs/host/bridge-client.js +191 -0
  420. package/dist-cjs/host/bridge-client.js.map +1 -0
  421. package/dist-cjs/host/browser-tabs/browser-tab-driver.js +158 -0
  422. package/dist-cjs/host/browser-tabs/browser-tab-driver.js.map +1 -0
  423. package/dist-cjs/host/browser-tabs/browser-tab-manager.js +766 -0
  424. package/dist-cjs/host/browser-tabs/browser-tab-manager.js.map +1 -0
  425. package/dist-cjs/host/browser-tabs/browser-tab-preload-path.js +35 -0
  426. package/dist-cjs/host/browser-tabs/browser-tab-preload-path.js.map +1 -0
  427. package/dist-cjs/host/browser-tabs/browser-tab-preload.js +12 -0
  428. package/dist-cjs/host/browser-tabs/browser-tab-preload.js.map +1 -0
  429. package/dist-cjs/host/browser-tabs/chrome-ua.js +41 -0
  430. package/dist-cjs/host/browser-tabs/chrome-ua.js.map +1 -0
  431. package/dist-cjs/host/browser-tabs/fake-cursor-inject.js +11 -0
  432. package/dist-cjs/host/browser-tabs/fake-cursor-inject.js.map +1 -0
  433. package/dist-cjs/host/browser-tabs/index.js +29 -0
  434. package/dist-cjs/host/browser-tabs/index.js.map +1 -0
  435. package/dist-cjs/host/browser-tabs/tab-load-state.js +59 -0
  436. package/dist-cjs/host/browser-tabs/tab-load-state.js.map +1 -0
  437. package/dist-cjs/host/browser-tabs/tab-url.js +62 -0
  438. package/dist-cjs/host/browser-tabs/tab-url.js.map +1 -0
  439. package/dist-cjs/host/context.js +20 -0
  440. package/dist-cjs/host/context.js.map +1 -0
  441. package/dist-cjs/host/contracts.js +32 -0
  442. package/dist-cjs/host/contracts.js.map +1 -0
  443. package/dist-cjs/host/crash-reporter.js +422 -0
  444. package/dist-cjs/host/crash-reporter.js.map +1 -0
  445. package/dist-cjs/host/ensure-kit-binaries.js +212 -0
  446. package/dist-cjs/host/ensure-kit-binaries.js.map +1 -0
  447. package/dist-cjs/host/feature-off-host.js +144 -0
  448. package/dist-cjs/host/feature-off-host.js.map +1 -0
  449. package/dist-cjs/host/hermes/crm-key.js +137 -0
  450. package/dist-cjs/host/hermes/crm-key.js.map +1 -0
  451. package/dist-cjs/host/hermes/ensure-crm-key-db.js +89 -0
  452. package/dist-cjs/host/hermes/ensure-crm-key-db.js.map +1 -0
  453. package/dist-cjs/host/hermes/launcher.js +981 -0
  454. package/dist-cjs/host/hermes/launcher.js.map +1 -0
  455. package/dist-cjs/host/hermes/runtime-bootstrap.js +853 -0
  456. package/dist-cjs/host/hermes/runtime-bootstrap.js.map +1 -0
  457. package/dist-cjs/host/hermes/skills-seed.js +110 -0
  458. package/dist-cjs/host/hermes/skills-seed.js.map +1 -0
  459. package/dist-cjs/host/host-stack.js +42 -0
  460. package/dist-cjs/host/host-stack.js.map +1 -0
  461. package/dist-cjs/host/kit-os-resources.js +96 -0
  462. package/dist-cjs/host/kit-os-resources.js.map +1 -0
  463. package/dist-cjs/host/load-electron.js +47 -0
  464. package/dist-cjs/host/load-electron.js.map +1 -0
  465. package/dist-cjs/host/local-config.js +640 -0
  466. package/dist-cjs/host/local-config.js.map +1 -0
  467. package/dist-cjs/host/meili/browse.js +103 -0
  468. package/dist-cjs/host/meili/browse.js.map +1 -0
  469. package/dist-cjs/host/meili/coherence-db.js +139 -0
  470. package/dist-cjs/host/meili/coherence-db.js.map +1 -0
  471. package/dist-cjs/host/meili/coherence-query.js +25 -0
  472. package/dist-cjs/host/meili/coherence-query.js.map +1 -0
  473. package/dist-cjs/host/meili/coherence.js +158 -0
  474. package/dist-cjs/host/meili/coherence.js.map +1 -0
  475. package/dist-cjs/host/meili/feed.js +108 -0
  476. package/dist-cjs/host/meili/feed.js.map +1 -0
  477. package/dist-cjs/host/meili/generic-indexer.js +340 -0
  478. package/dist-cjs/host/meili/generic-indexer.js.map +1 -0
  479. package/dist-cjs/host/meili/index-schema.js +79 -0
  480. package/dist-cjs/host/meili/index-schema.js.map +1 -0
  481. package/dist-cjs/host/meili/index.js +45 -0
  482. package/dist-cjs/host/meili/index.js.map +1 -0
  483. package/dist-cjs/host/meili/indexer.js +85 -0
  484. package/dist-cjs/host/meili/indexer.js.map +1 -0
  485. package/dist-cjs/host/meili-launcher.js +121 -0
  486. package/dist-cjs/host/meili-launcher.js.map +1 -0
  487. package/dist-cjs/host/n8n/agent-isolation.js +173 -0
  488. package/dist-cjs/host/n8n/agent-isolation.js.map +1 -0
  489. package/dist-cjs/host/n8n/api-key.js +314 -0
  490. package/dist-cjs/host/n8n/api-key.js.map +1 -0
  491. package/dist-cjs/host/n8n/launcher.js +1209 -0
  492. package/dist-cjs/host/n8n/launcher.js.map +1 -0
  493. package/dist-cjs/host/n8n/runtime-bootstrap.js +244 -0
  494. package/dist-cjs/host/n8n/runtime-bootstrap.js.map +1 -0
  495. package/dist-cjs/host/node-runtime.js +274 -0
  496. package/dist-cjs/host/node-runtime.js.map +1 -0
  497. package/dist-cjs/host/npm-cli.js +224 -0
  498. package/dist-cjs/host/npm-cli.js.map +1 -0
  499. package/dist-cjs/host/plugins/accept-check.js +176 -0
  500. package/dist-cjs/host/plugins/accept-check.js.map +1 -0
  501. package/dist-cjs/host/plugins/brand-bindings.js +78 -0
  502. package/dist-cjs/host/plugins/brand-bindings.js.map +1 -0
  503. package/dist-cjs/host/plugins/control-adapters.js +89 -0
  504. package/dist-cjs/host/plugins/control-adapters.js.map +1 -0
  505. package/dist-cjs/host/plugins/control-extras.js +397 -0
  506. package/dist-cjs/host/plugins/control-extras.js.map +1 -0
  507. package/dist-cjs/host/plugins/control-plane.js +130 -0
  508. package/dist-cjs/host/plugins/control-plane.js.map +1 -0
  509. package/dist-cjs/host/plugins/control-token.js +90 -0
  510. package/dist-cjs/host/plugins/control-token.js.map +1 -0
  511. package/dist-cjs/host/plugins/crm-key.js +135 -0
  512. package/dist-cjs/host/plugins/crm-key.js.map +1 -0
  513. package/dist-cjs/host/plugins/data.js +107 -0
  514. package/dist-cjs/host/plugins/data.js.map +1 -0
  515. package/dist-cjs/host/plugins/events.js +19 -0
  516. package/dist-cjs/host/plugins/events.js.map +1 -0
  517. package/dist-cjs/host/plugins/execution-grant.js +11 -0
  518. package/dist-cjs/host/plugins/execution-grant.js.map +1 -0
  519. package/dist-cjs/host/plugins/git.js +371 -0
  520. package/dist-cjs/host/plugins/git.js.map +1 -0
  521. package/dist-cjs/host/plugins/host.js +283 -0
  522. package/dist-cjs/host/plugins/host.js.map +1 -0
  523. package/dist-cjs/host/plugins/launcher.js +514 -0
  524. package/dist-cjs/host/plugins/launcher.js.map +1 -0
  525. package/dist-cjs/host/plugins/runtime.js +446 -0
  526. package/dist-cjs/host/plugins/runtime.js.map +1 -0
  527. package/dist-cjs/host/plugins/test-runner.js +112 -0
  528. package/dist-cjs/host/plugins/test-runner.js.map +1 -0
  529. package/dist-cjs/host/safe-storage.js +95 -0
  530. package/dist-cjs/host/safe-storage.js.map +1 -0
  531. package/dist-cjs/host/sandbox/embed-sandbox.js +396 -0
  532. package/dist-cjs/host/sandbox/embed-sandbox.js.map +1 -0
  533. package/dist-cjs/host/sandbox/os-sandbox.js +106 -0
  534. package/dist-cjs/host/sandbox/os-sandbox.js.map +1 -0
  535. package/dist-cjs/host/server-env.js +69 -0
  536. package/dist-cjs/host/server-env.js.map +1 -0
  537. package/dist-cjs/host/server-launcher.js +52 -0
  538. package/dist-cjs/host/server-launcher.js.map +1 -0
  539. package/dist-cjs/host/tunnel/cloudflared-respawn.js +80 -0
  540. package/dist-cjs/host/tunnel/cloudflared-respawn.js.map +1 -0
  541. package/dist-cjs/host/tunnel/tunnel.js +470 -0
  542. package/dist-cjs/host/tunnel/tunnel.js.map +1 -0
  543. package/dist-cjs/host/web-telemetry.js +100 -0
  544. package/dist-cjs/host/web-telemetry.js.map +1 -0
  545. package/dist-cjs/index.js +496 -0
  546. package/dist-cjs/index.js.map +1 -0
  547. package/dist-cjs/logger.js +269 -0
  548. package/dist-cjs/logger.js.map +1 -0
  549. package/dist-cjs/main-facade.js +139 -0
  550. package/dist-cjs/main-facade.js.map +1 -0
  551. package/dist-cjs/meili.js +51 -0
  552. package/dist-cjs/meili.js.map +1 -0
  553. package/dist-cjs/package.json +3 -0
  554. package/dist-cjs/splash-ui.js +447 -0
  555. package/dist-cjs/splash-ui.js.map +1 -0
  556. package/dist-cjs/tray.js +182 -0
  557. package/dist-cjs/tray.js.map +1 -0
  558. package/dist-cjs/updater.js +304 -0
  559. package/dist-cjs/updater.js.map +1 -0
  560. package/dist-cjs/window-chrome.js +98 -0
  561. package/dist-cjs/window-chrome.js.map +1 -0
  562. package/package.json +87 -0
  563. package/scripts/ensure-kit-binaries.mjs +73 -0
@@ -0,0 +1,640 @@
1
+ "use strict";
2
+ /**
3
+ * Config locale + safeStorage — factory brand-agnostic (TF2 local-config.ts).
4
+ *
5
+ * Usage :
6
+ * ```ts
7
+ * const store = await createLocalConfigStore({
8
+ * configPath: resolveLocalConfigPath(ctx),
9
+ * manifest,
10
+ * });
11
+ * store.ensureAuthSecret();
12
+ * ```
13
+ */
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.createLocalConfigStore = createLocalConfigStore;
19
+ exports.createLocalConfigStoreSync = createLocalConfigStoreSync;
20
+ const node_crypto_1 = __importDefault(require("node:crypto"));
21
+ const node_fs_1 = __importDefault(require("node:fs"));
22
+ const node_path_1 = __importDefault(require("node:path"));
23
+ const platform_core_1 = require("@creezio/platform-core");
24
+ const safe_storage_js_1 = require("./safe-storage.js");
25
+ async function resolveBackend(opts) {
26
+ if (opts.encryption === "plain")
27
+ return null;
28
+ if (opts.encryption === "inject" || opts.safeStorage !== undefined) {
29
+ return opts.safeStorage ?? null;
30
+ }
31
+ try {
32
+ return await (0, safe_storage_js_1.loadElectronSafeStorage)();
33
+ }
34
+ catch {
35
+ return null;
36
+ }
37
+ }
38
+ function resolveConfigPath(configPath) {
39
+ return typeof configPath === "function" ? configPath() : configPath;
40
+ }
41
+ function buildStore(configPath, manifest, backend) {
42
+ const seal = (v) => (0, safe_storage_js_1.sealValue)(backend, v);
43
+ const open = (v) => (0, safe_storage_js_1.openValue)(backend, v);
44
+ function readFile() {
45
+ try {
46
+ const raw = node_fs_1.default.readFileSync(resolveConfigPath(configPath), "utf8");
47
+ const parsed = JSON.parse(raw);
48
+ if ((0, platform_core_1.isLocalConfigV1)(parsed))
49
+ return parsed;
50
+ }
51
+ catch {
52
+ /* premier lancement */
53
+ }
54
+ return (0, platform_core_1.emptyLocalConfig)();
55
+ }
56
+ function writeFile(cfg) {
57
+ const filePath = resolveConfigPath(configPath);
58
+ const dir = node_path_1.default.dirname(filePath);
59
+ if (dir && dir !== ".")
60
+ node_fs_1.default.mkdirSync(dir, { recursive: true });
61
+ node_fs_1.default.writeFileSync(filePath, JSON.stringify(cfg, null, 2), {
62
+ mode: 0o600,
63
+ });
64
+ }
65
+ function ensureAuthSecret() {
66
+ const cfg = readFile();
67
+ let authSecret = open(cfg.authSecret);
68
+ if (!authSecret) {
69
+ authSecret = node_crypto_1.default.randomBytes(32).toString("hex");
70
+ cfg.authSecret = seal(authSecret);
71
+ writeFile(cfg);
72
+ }
73
+ return authSecret;
74
+ }
75
+ function ensureMcpJwtSecret() {
76
+ const cfg = readFile();
77
+ let secret = open(cfg.mcpJwtSecret);
78
+ if (!secret) {
79
+ secret = node_crypto_1.default.randomBytes(32).toString("hex");
80
+ cfg.mcpJwtSecret = seal(secret);
81
+ writeFile(cfg);
82
+ }
83
+ return secret;
84
+ }
85
+ function getLocalAuth() {
86
+ const cfg = readFile();
87
+ const authSecret = open(cfg.authSecret);
88
+ const authUser = open(cfg.authUser);
89
+ const authPassword = open(cfg.authPassword);
90
+ if (!authSecret || !authUser || !authPassword)
91
+ return null;
92
+ return { authUser, authPassword, authSecret };
93
+ }
94
+ function ensureLocalAuth() {
95
+ ensureAuthSecret();
96
+ const auth = getLocalAuth();
97
+ if (!auth) {
98
+ throw new Error("Compte local non configuré — terminer le wizard /setup");
99
+ }
100
+ return auth;
101
+ }
102
+ function setLocalAuthCredentials(user, password) {
103
+ const u = user.trim();
104
+ const p = password;
105
+ if (!u || u.length < 2)
106
+ throw new Error("Identifiant trop court (min. 2 caractères)");
107
+ if (!p || p.length < 6)
108
+ throw new Error("Mot de passe trop court (min. 6 caractères)");
109
+ const cfg = readFile();
110
+ cfg.authSecret = seal(ensureAuthSecret());
111
+ cfg.authUser = seal(u);
112
+ cfg.authPassword = seal(p);
113
+ writeFile(cfg);
114
+ }
115
+ function changeLocalPassword(currentPassword, newPassword) {
116
+ const auth = getLocalAuth();
117
+ if (!auth)
118
+ throw new Error("Compte local non configuré");
119
+ if (currentPassword !== auth.authPassword) {
120
+ throw new Error("Mot de passe actuel incorrect");
121
+ }
122
+ if (!newPassword || newPassword.length < 6) {
123
+ throw new Error("Nouveau mot de passe trop court (min. 6 caractères)");
124
+ }
125
+ const cfg = readFile();
126
+ cfg.authPassword = seal(newPassword);
127
+ writeFile(cfg);
128
+ }
129
+ function hasRecoveryKeyConfigured() {
130
+ const cfg = readFile();
131
+ return Boolean(cfg.recoveryVerifier && cfg.recoveryEnvelope);
132
+ }
133
+ function resetPasswordWithRecoveryKey(recoveryKey, newPassword) {
134
+ if (!newPassword || newPassword.length < 6) {
135
+ throw new Error("Nouveau mot de passe trop court (min. 6 caractères)");
136
+ }
137
+ const cfg = readFile();
138
+ if (!(0, platform_core_1.verifyRecoveryKey)(recoveryKey, cfg.recoveryVerifier)) {
139
+ throw new Error("Clé de récupération incorrecte");
140
+ }
141
+ const unwrapped = (0, platform_core_1.unwrapSecretsWithRecoveryKey)(recoveryKey, cfg.recoveryEnvelope);
142
+ const authSecret = open(cfg.authSecret) || unwrapped.authSecret;
143
+ cfg.authSecret = seal(authSecret);
144
+ cfg.authUser = seal(unwrapped.authUser);
145
+ cfg.authPassword = seal(newPassword);
146
+ cfg.recoveryEnvelope = (0, platform_core_1.wrapSecretsWithRecoveryKey)(recoveryKey, {
147
+ authUser: unwrapped.authUser,
148
+ authPassword: newPassword,
149
+ authSecret,
150
+ });
151
+ cfg.skipAutoLogin = false;
152
+ writeFile(cfg);
153
+ return { username: unwrapped.authUser };
154
+ }
155
+ function isSetupComplete() {
156
+ const cfg = readFile();
157
+ if (cfg.setupComplete === true)
158
+ return true;
159
+ if (cfg.setupComplete === false)
160
+ return false;
161
+ const authUser = open(cfg.authUser);
162
+ const authPassword = open(cfg.authPassword);
163
+ const authSecret = open(cfg.authSecret);
164
+ if (authUser && authPassword && authSecret) {
165
+ cfg.setupComplete = true;
166
+ writeFile(cfg);
167
+ return true;
168
+ }
169
+ return false;
170
+ }
171
+ function applyFirstRunSetup(opts) {
172
+ const u = opts.username.trim();
173
+ const p = opts.password;
174
+ const key = opts.openaiKey.trim();
175
+ const recoveryKey = String(opts.recoveryKey || "").trim();
176
+ if (!u || u.length < 2)
177
+ throw new Error("Identifiant trop court (min. 2 caractères)");
178
+ if (!p || p.length < 6)
179
+ throw new Error("Mot de passe trop court (min. 6 caractères)");
180
+ if (!key)
181
+ throw new Error("Clé OpenAI requise");
182
+ if (!recoveryKey)
183
+ throw new Error("Clé de récupération requise");
184
+ const cfg = readFile();
185
+ let authSecret = open(cfg.authSecret);
186
+ if (!authSecret)
187
+ authSecret = node_crypto_1.default.randomBytes(32).toString("hex");
188
+ cfg.authSecret = seal(authSecret);
189
+ cfg.authUser = seal(u);
190
+ cfg.authPassword = seal(p);
191
+ cfg.openaiApiKey = seal(key);
192
+ cfg.recoveryVerifier = (0, platform_core_1.createRecoveryVerifier)(recoveryKey);
193
+ cfg.recoveryEnvelope = (0, platform_core_1.wrapSecretsWithRecoveryKey)(recoveryKey, {
194
+ authUser: u,
195
+ authPassword: p,
196
+ authSecret,
197
+ });
198
+ cfg.setupComplete = true;
199
+ cfg.skipAutoLogin = false;
200
+ cfg.stayLoggedIn = opts.stayLoggedIn !== false;
201
+ writeFile(cfg);
202
+ }
203
+ function markSetupComplete() {
204
+ const cfg = readFile();
205
+ cfg.setupComplete = true;
206
+ cfg.skipAutoLogin = false;
207
+ if (cfg.stayLoggedIn == null)
208
+ cfg.stayLoggedIn = true;
209
+ writeFile(cfg);
210
+ }
211
+ function getLlmKeys() {
212
+ const cfg = readFile();
213
+ // BYOK store prioritaire (clé posée par l'utilisateur via l'UI) ; sinon
214
+ // clé opérateur au niveau hôte (serveurs Docker headless : server-docker
215
+ // forward OPENAI_API_KEY / ANTHROPIC_API_KEY dans l'env du container).
216
+ return {
217
+ openai: open(cfg.openaiApiKey) ||
218
+ (process.env.OPENAI_API_KEY || "").trim() ||
219
+ null,
220
+ anthropic: open(cfg.anthropicApiKey) ||
221
+ (process.env.ANTHROPIC_API_KEY || "").trim() ||
222
+ null,
223
+ };
224
+ }
225
+ function setLlmKey(provider, key) {
226
+ const cfg = readFile();
227
+ const field = provider === "openai" ? "openaiApiKey" : "anthropicApiKey";
228
+ if (key)
229
+ cfg[field] = seal(key);
230
+ else
231
+ delete cfg[field];
232
+ writeFile(cfg);
233
+ }
234
+ function getGoogleTokens() {
235
+ return open(readFile().googleTokens);
236
+ }
237
+ function setGoogleTokens(json) {
238
+ const cfg = readFile();
239
+ if (json)
240
+ cfg.googleTokens = seal(json);
241
+ else
242
+ delete cfg.googleTokens;
243
+ writeFile(cfg);
244
+ }
245
+ function getTunnelConfig() {
246
+ const cfg = readFile();
247
+ const meta = cfg.tunnelMeta;
248
+ if (!meta)
249
+ return null;
250
+ // Token vide autorisé = surface locale (sans Cloudflare).
251
+ const token = open(cfg.tunnelToken) ?? "";
252
+ return { ...meta, tunnelToken: token };
253
+ }
254
+ function setTunnelConfig(cfg) {
255
+ const file = readFile();
256
+ const { tunnelToken, ...meta } = cfg;
257
+ file.tunnelMeta = meta;
258
+ file.tunnelToken = seal(tunnelToken);
259
+ writeFile(file);
260
+ }
261
+ function clearTunnelConfig() {
262
+ const file = readFile();
263
+ delete file.tunnelMeta;
264
+ delete file.tunnelToken;
265
+ writeFile(file);
266
+ }
267
+ function getTunnelPublic() {
268
+ const cfg = getTunnelConfig();
269
+ const envFlat = String(process.env.CREEZIO_TUNNEL_FLAT_HOSTS || "").trim();
270
+ const hostMode = envFlat
271
+ ? (0, platform_core_1.resolveTunnelHostMode)()
272
+ : (0, platform_core_1.resolveTunnelHostMode)(cfg?.hostMode ?? manifest.tunnelHostMode);
273
+ const storedOk = Boolean(cfg?.publicUrls?.n8n && cfg?.publicUrls?.hermes) &&
274
+ cfg?.hostMode === hostMode;
275
+ const publicUrls = storedOk
276
+ ? cfg.publicUrls
277
+ : cfg?.hostname
278
+ ? (0, platform_core_1.buildTunnelPublicUrls)(cfg.hostname, hostMode)
279
+ : null;
280
+ return {
281
+ configured: Boolean(cfg),
282
+ slug: cfg?.slug ?? null,
283
+ hostname: cfg?.hostname ?? null,
284
+ publicUrl: cfg?.publicUrl ?? null,
285
+ publicUrls,
286
+ };
287
+ }
288
+ function getEmailInboundSecret() {
289
+ return open(readFile().emailInboundSecret);
290
+ }
291
+ function setEmailInboundSecret(secret) {
292
+ const cfg = readFile();
293
+ if (secret)
294
+ cfg.emailInboundSecret = seal(secret);
295
+ else
296
+ delete cfg.emailInboundSecret;
297
+ writeFile(cfg);
298
+ }
299
+ function getEmailNextEnv(mailRootDomain) {
300
+ const tunnel = getTunnelConfig();
301
+ const secret = getEmailInboundSecret();
302
+ const out = {};
303
+ if (secret)
304
+ out.EMAIL_INBOUND_SECRET = secret;
305
+ const root = mailRootDomain || `mail.${manifest.tunnelRootDomain}`;
306
+ const domain = tunnel?.emailDomain ||
307
+ (tunnel?.slug ? `${tunnel.slug}.${root}` : "");
308
+ if (domain)
309
+ out.EMAIL_DOMAIN = domain;
310
+ return out;
311
+ }
312
+ function getSkipAutoLogin() {
313
+ return readFile().skipAutoLogin === true;
314
+ }
315
+ function setSkipAutoLogin(skip) {
316
+ const cfg = readFile();
317
+ cfg.skipAutoLogin = skip;
318
+ if (skip)
319
+ cfg.stayLoggedIn = false;
320
+ writeFile(cfg);
321
+ }
322
+ function getStayLoggedIn() {
323
+ return readFile().stayLoggedIn === true;
324
+ }
325
+ function setStayLoggedIn(stay) {
326
+ const cfg = readFile();
327
+ cfg.stayLoggedIn = stay;
328
+ if (stay)
329
+ cfg.skipAutoLogin = false;
330
+ writeFile(cfg);
331
+ }
332
+ function shouldAutoLoginOnBoot() {
333
+ if (!isSetupComplete())
334
+ return false;
335
+ if (getSkipAutoLogin())
336
+ return false;
337
+ return getStayLoggedIn();
338
+ }
339
+ function getConnectionProfileStored() {
340
+ const cfg = readFile();
341
+ if (!cfg.connectionProfile)
342
+ return null;
343
+ return (0, platform_core_1.sanitizeConnectionProfile)(cfg.connectionProfile);
344
+ }
345
+ function getConnectionProfile() {
346
+ return getConnectionProfileStored() ?? (0, platform_core_1.defaultLocalProfile)();
347
+ }
348
+ function setConnectionProfile(profile) {
349
+ const ready = (0, platform_core_1.assertProfileReady)({ ...profile, chosen: true });
350
+ const cfg = readFile();
351
+ cfg.connectionProfile = ready;
352
+ writeFile(cfg);
353
+ return ready;
354
+ }
355
+ function clearConnectionProfileChoice() {
356
+ const cfg = readFile();
357
+ const cur = (0, platform_core_1.sanitizeConnectionProfile)(cfg.connectionProfile ?? (0, platform_core_1.defaultLocalProfile)());
358
+ cfg.connectionProfile = { ...cur, chosen: false };
359
+ writeFile(cfg);
360
+ }
361
+ function markConnectionPickerRequired() {
362
+ const cfg = readFile();
363
+ cfg.connectionProfile = {
364
+ mode: "local",
365
+ remoteUrl: null,
366
+ localBind: "127.0.0.1",
367
+ chosen: false,
368
+ };
369
+ writeFile(cfg);
370
+ }
371
+ function hermesRaw(cfg) {
372
+ return cfg.hermesEmbed ?? cfg.hermes;
373
+ }
374
+ function n8nRaw(cfg) {
375
+ return cfg.n8nEmbed ?? cfg.n8n;
376
+ }
377
+ function getHermesEmbedConfig() {
378
+ return (0, platform_core_1.sanitizeHermesEmbedConfig)(hermesRaw(readFile()));
379
+ }
380
+ function setHermesEmbedConfig(raw) {
381
+ const next = (0, platform_core_1.sanitizeHermesEmbedConfig)({
382
+ ...getHermesEmbedConfig(),
383
+ ...raw,
384
+ chosen: true,
385
+ });
386
+ const cfg = readFile();
387
+ cfg.hermesEmbed = next;
388
+ writeFile(cfg);
389
+ return next;
390
+ }
391
+ function getN8nEmbedConfig() {
392
+ return (0, platform_core_1.sanitizeN8nEmbedConfig)(n8nRaw(readFile()));
393
+ }
394
+ function setN8nEmbedConfig(raw) {
395
+ const next = (0, platform_core_1.sanitizeN8nEmbedConfig)({
396
+ ...getN8nEmbedConfig(),
397
+ ...raw,
398
+ chosen: true,
399
+ });
400
+ const cfg = readFile();
401
+ cfg.n8nEmbed = next;
402
+ writeFile(cfg);
403
+ return next;
404
+ }
405
+ function getEmbedUserEnv(service) {
406
+ const raw = readFile().embedEnv?.[service];
407
+ return (0, platform_core_1.sanitizeUserEnvOverlay)(service, raw);
408
+ }
409
+ function getFleetTelemetry() {
410
+ return (0, platform_core_1.sanitizeFleetTelemetry)(readFile().fleetTelemetry);
411
+ }
412
+ function setFleetTelemetry(patch) {
413
+ const next = (0, platform_core_1.applyFleetTelemetryPatch)(getFleetTelemetry(), patch);
414
+ const cfg = readFile();
415
+ cfg.fleetTelemetry = next;
416
+ writeFile(cfg);
417
+ return next;
418
+ }
419
+ function setEmbedUserEnv(service, values) {
420
+ if (!(0, platform_core_1.isEmbedEnvService)(service)) {
421
+ throw new Error(`service env inconnu: ${service}`);
422
+ }
423
+ const next = (0, platform_core_1.sanitizeUserEnvOverlay)(service, values);
424
+ const cfg = readFile();
425
+ cfg.embedEnv = { ...(cfg.embedEnv || {}), [service]: next };
426
+ writeFile(cfg);
427
+ return next;
428
+ }
429
+ function getBackgroundSettings() {
430
+ const cfg = readFile();
431
+ const raw = cfg.background;
432
+ return {
433
+ closeToTray: raw?.closeToTray !== false && cfg.closeToTray !== false,
434
+ launchAtStartup: raw?.launchAtStartup === true || cfg.launchAtStartup === true,
435
+ };
436
+ }
437
+ function setBackgroundSettings(patch) {
438
+ const cur = getBackgroundSettings();
439
+ const next = {
440
+ closeToTray: typeof patch.closeToTray === "boolean"
441
+ ? patch.closeToTray
442
+ : cur.closeToTray,
443
+ launchAtStartup: typeof patch.launchAtStartup === "boolean"
444
+ ? patch.launchAtStartup
445
+ : cur.launchAtStartup,
446
+ };
447
+ const cfg = readFile();
448
+ cfg.background = next;
449
+ writeFile(cfg);
450
+ return next;
451
+ }
452
+ function getAiWorkspacePresentation() {
453
+ return readFile().aiWorkspacePresentation === "embedded"
454
+ ? "embedded"
455
+ : "window";
456
+ }
457
+ function setAiWorkspacePresentation(value) {
458
+ const next = value === "embedded" ? "embedded" : "window";
459
+ const cfg = readFile();
460
+ cfg.aiWorkspacePresentation = next;
461
+ writeFile(cfg);
462
+ return next;
463
+ }
464
+ const MAX_REMEMBERED_SERVERS = 8;
465
+ function rememberedServerId(url) {
466
+ try {
467
+ const u = new URL(url);
468
+ const hostPort = u.port ? `${u.hostname}-${u.port}` : u.hostname;
469
+ return hostPort
470
+ .toLowerCase()
471
+ .replace(/[^a-z0-9._-]+/g, "-")
472
+ .slice(0, 64);
473
+ }
474
+ catch {
475
+ return url
476
+ .toLowerCase()
477
+ .replace(/[^a-z0-9._-]+/g, "-")
478
+ .slice(0, 64);
479
+ }
480
+ }
481
+ function sanitizeRememberedServers(raw) {
482
+ if (!Array.isArray(raw))
483
+ return [];
484
+ const out = [];
485
+ for (const item of raw) {
486
+ if (!item || typeof item !== "object")
487
+ continue;
488
+ const r = item;
489
+ if (typeof r.url !== "string" || !r.url.trim())
490
+ continue;
491
+ const url = r.url.trim().replace(/\/+$/, "");
492
+ out.push({
493
+ id: typeof r.id === "string" && r.id ? r.id : rememberedServerId(url),
494
+ url,
495
+ label: typeof r.label === "string" && r.label.trim()
496
+ ? r.label.trim()
497
+ : rememberedServerId(url),
498
+ lastUsedAt: typeof r.lastUsedAt === "string" && r.lastUsedAt
499
+ ? r.lastUsedAt
500
+ : new Date(0).toISOString(),
501
+ });
502
+ }
503
+ out.sort((a, b) => b.lastUsedAt.localeCompare(a.lastUsedAt));
504
+ return out.slice(0, MAX_REMEMBERED_SERVERS);
505
+ }
506
+ function listRememberedServers() {
507
+ return sanitizeRememberedServers(readFile().profiles?.servers);
508
+ }
509
+ function rememberServer(rawUrl, label) {
510
+ const url = String(rawUrl || "")
511
+ .trim()
512
+ .replace(/\/+$/, "");
513
+ if (!url)
514
+ return listRememberedServers();
515
+ const id = rememberedServerId(url);
516
+ let displayLabel = label?.trim() || "";
517
+ if (!displayLabel) {
518
+ try {
519
+ displayLabel = new URL(url).hostname;
520
+ }
521
+ catch {
522
+ displayLabel = id;
523
+ }
524
+ }
525
+ const entry = {
526
+ id,
527
+ url,
528
+ label: displayLabel,
529
+ lastUsedAt: new Date().toISOString(),
530
+ };
531
+ const cur = listRememberedServers().filter((s) => s.id !== id);
532
+ const next = [entry, ...cur].slice(0, MAX_REMEMBERED_SERVERS);
533
+ const cfg = readFile();
534
+ cfg.profiles = { ...(cfg.profiles || {}), servers: next };
535
+ writeFile(cfg);
536
+ return next;
537
+ }
538
+ function forgetRememberedServer(id) {
539
+ const next = listRememberedServers().filter((s) => s.id !== id);
540
+ const cfg = readFile();
541
+ cfg.profiles = { ...(cfg.profiles || {}), servers: next };
542
+ writeFile(cfg);
543
+ return next;
544
+ }
545
+ function getSetupDraft() {
546
+ const cfg = readFile();
547
+ const llm = getLlmKeys();
548
+ const tunnel = cfg.tunnelMeta;
549
+ return {
550
+ setupComplete: isSetupComplete(),
551
+ hasAuth: Boolean(open(cfg.authUser) && open(cfg.authPassword)),
552
+ username: open(cfg.authUser),
553
+ hasOpenai: Boolean(llm.openai),
554
+ hasTunnel: Boolean(tunnel && open(cfg.tunnelToken)),
555
+ tunnelSlug: tunnel?.slug ?? null,
556
+ };
557
+ }
558
+ function getAccountPublic() {
559
+ return {
560
+ username: open(readFile().authUser),
561
+ setupComplete: isSetupComplete(),
562
+ };
563
+ }
564
+ return {
565
+ get configPath() {
566
+ return resolveConfigPath(configPath);
567
+ },
568
+ manifest,
569
+ encryptionAvailable: () => (0, safe_storage_js_1.canEncrypt)(backend),
570
+ readRaw: readFile,
571
+ writeRaw: writeFile,
572
+ ensureAuthSecret,
573
+ ensureMcpJwtSecret,
574
+ getLocalAuth,
575
+ ensureLocalAuth,
576
+ setLocalAuthCredentials,
577
+ changeLocalPassword,
578
+ hasRecoveryKeyConfigured,
579
+ resetPasswordWithRecoveryKey,
580
+ isSetupComplete,
581
+ applyFirstRunSetup,
582
+ markSetupComplete,
583
+ getSetupDraft,
584
+ getAccountPublic,
585
+ getSkipAutoLogin,
586
+ setSkipAutoLogin,
587
+ getStayLoggedIn,
588
+ setStayLoggedIn,
589
+ shouldAutoLoginOnBoot,
590
+ getLlmKeys,
591
+ setLlmKey,
592
+ getGoogleTokens,
593
+ setGoogleTokens,
594
+ getTunnelConfig,
595
+ setTunnelConfig,
596
+ clearTunnelConfig,
597
+ getTunnelPublic,
598
+ getEmailInboundSecret,
599
+ setEmailInboundSecret,
600
+ getEmailNextEnv,
601
+ getConnectionProfileStored,
602
+ getConnectionProfile,
603
+ setConnectionProfile,
604
+ clearConnectionProfileChoice,
605
+ markConnectionPickerRequired,
606
+ getHermesEmbedConfig,
607
+ setHermesEmbedConfig,
608
+ getN8nEmbedConfig,
609
+ setN8nEmbedConfig,
610
+ getEmbedUserEnv,
611
+ setEmbedUserEnv,
612
+ getFleetTelemetry,
613
+ setFleetTelemetry,
614
+ getBackgroundSettings,
615
+ setBackgroundSettings,
616
+ getAiWorkspacePresentation,
617
+ setAiWorkspacePresentation,
618
+ listRememberedServers,
619
+ rememberServer,
620
+ forgetRememberedServer,
621
+ generateRecoveryKey: platform_core_1.generateRecoveryKey,
622
+ normalizeRecoveryKey: platform_core_1.normalizeRecoveryKey,
623
+ };
624
+ }
625
+ async function createLocalConfigStore(opts) {
626
+ const backend = await resolveBackend(opts);
627
+ return buildStore(opts.configPath, opts.manifest, backend);
628
+ }
629
+ /** Variante sync — tests (plain/inject) ou main Electron (encryption electron). */
630
+ function createLocalConfigStoreSync(opts) {
631
+ let backend = null;
632
+ if (opts.encryption === "inject") {
633
+ backend = opts.safeStorage ?? null;
634
+ }
635
+ else if (opts.encryption === "electron") {
636
+ backend = (0, safe_storage_js_1.loadElectronSafeStorageSync)();
637
+ }
638
+ return buildStore(opts.configPath, opts.manifest, backend);
639
+ }
640
+ //# sourceMappingURL=local-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-config.js","sourceRoot":"","sources":["../../src/host/local-config.ts"],"names":[],"mappings":"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"}