flow-frame-core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. package/README.md +64 -0
  2. package/dist/Dockerfile +86 -0
  3. package/dist/GPU_DEPLOYMENT_README.md +324 -0
  4. package/dist/OPS_AGENT_README.md +174 -0
  5. package/dist/README-H100-VM.md +192 -0
  6. package/dist/README-worker-pools.md +231 -0
  7. package/dist/README.md +8 -0
  8. package/dist/WEB-ELEMENT-REQUESTS-README.md +302 -0
  9. package/dist/append.d.ts +3 -0
  10. package/dist/append.d.ts.map +1 -0
  11. package/dist/append.js +42 -0
  12. package/dist/append.js.map +1 -0
  13. package/dist/audioRoutes.d.ts +2 -0
  14. package/dist/audioRoutes.d.ts.map +1 -0
  15. package/dist/audioRoutes.js +97 -0
  16. package/dist/audioRoutes.js.map +1 -0
  17. package/dist/augment-parallel.d.ts +6 -0
  18. package/dist/augment-parallel.d.ts.map +1 -0
  19. package/dist/augment-parallel.js +128 -0
  20. package/dist/augment-parallel.js.map +1 -0
  21. package/dist/augment-worker.d.ts +2 -0
  22. package/dist/augment-worker.d.ts.map +1 -0
  23. package/dist/augment-worker.js +100 -0
  24. package/dist/augment-worker.js.map +1 -0
  25. package/dist/browerRoutes.d.ts +2 -0
  26. package/dist/browerRoutes.d.ts.map +1 -0
  27. package/dist/browerRoutes.js +323 -0
  28. package/dist/browerRoutes.js.map +1 -0
  29. package/dist/browser-utils/utils.d.ts +6 -0
  30. package/dist/browser-utils/utils.d.ts.map +1 -0
  31. package/dist/browser-utils/utils.js +133 -0
  32. package/dist/browser-utils/utils.js.map +1 -0
  33. package/dist/capture_training_data_endpoints.d.ts +158 -0
  34. package/dist/capture_training_data_endpoints.d.ts.map +1 -0
  35. package/dist/capture_training_data_endpoints.js +1812 -0
  36. package/dist/capture_training_data_endpoints.js.map +1 -0
  37. package/dist/config.json +28 -0
  38. package/dist/configEndpoints.d.ts +2 -0
  39. package/dist/configEndpoints.d.ts.map +1 -0
  40. package/dist/configEndpoints.js +459 -0
  41. package/dist/configEndpoints.js.map +1 -0
  42. package/dist/constants.d.ts +109 -0
  43. package/dist/constants.d.ts.map +1 -0
  44. package/dist/constants.js +110 -0
  45. package/dist/constants.js.map +1 -0
  46. package/dist/docs/workflow_nodes.md +257 -0
  47. package/dist/download.d.ts +11 -0
  48. package/dist/download.d.ts.map +1 -0
  49. package/dist/download.js +31 -0
  50. package/dist/download.js.map +1 -0
  51. package/dist/download.py +61 -0
  52. package/dist/ecosystem.config.json +63 -0
  53. package/dist/email-body-extractor.d.ts +20 -0
  54. package/dist/email-body-extractor.d.ts.map +1 -0
  55. package/dist/email-body-extractor.js +103 -0
  56. package/dist/email-body-extractor.js.map +1 -0
  57. package/dist/express_util.d.ts +2 -0
  58. package/dist/express_util.d.ts.map +1 -0
  59. package/dist/express_util.js +30 -0
  60. package/dist/express_util.js.map +1 -0
  61. package/dist/extension/background.d.ts +2 -0
  62. package/dist/extension/background.d.ts.map +1 -0
  63. package/dist/extension/background.js +268 -0
  64. package/dist/extension/background.js.map +1 -0
  65. package/dist/extension/manifest.json +19 -0
  66. package/dist/extensionUtils.d.ts +2 -0
  67. package/dist/extensionUtils.d.ts.map +1 -0
  68. package/dist/extensionUtils.js +48 -0
  69. package/dist/extensionUtils.js.map +1 -0
  70. package/dist/filter-gmail-poller/README.md +320 -0
  71. package/dist/filter-gmail-poller/demo.d.ts +2 -0
  72. package/dist/filter-gmail-poller/demo.d.ts.map +1 -0
  73. package/dist/filter-gmail-poller/demo.js +79 -0
  74. package/dist/filter-gmail-poller/demo.js.map +1 -0
  75. package/dist/filter-gmail-poller/example-existing-app.d.ts +2 -0
  76. package/dist/filter-gmail-poller/example-existing-app.d.ts.map +1 -0
  77. package/dist/filter-gmail-poller/example-existing-app.js +72 -0
  78. package/dist/filter-gmail-poller/example-existing-app.js.map +1 -0
  79. package/dist/filter-gmail-poller/filter-gmail-poller.d.ts +160 -0
  80. package/dist/filter-gmail-poller/filter-gmail-poller.d.ts.map +1 -0
  81. package/dist/filter-gmail-poller/filter-gmail-poller.js +1048 -0
  82. package/dist/filter-gmail-poller/filter-gmail-poller.js.map +1 -0
  83. package/dist/filter-gmail-poller/index.d.ts +3 -0
  84. package/dist/filter-gmail-poller/index.d.ts.map +1 -0
  85. package/dist/filter-gmail-poller/index.js +18 -0
  86. package/dist/filter-gmail-poller/index.js.map +1 -0
  87. package/dist/filter-gmail-poller/manual-test.d.ts +2 -0
  88. package/dist/filter-gmail-poller/manual-test.d.ts.map +1 -0
  89. package/dist/filter-gmail-poller/manual-test.js +70 -0
  90. package/dist/filter-gmail-poller/manual-test.js.map +1 -0
  91. package/dist/filter-gmail-poller/poller-prompts.d.ts +12 -0
  92. package/dist/filter-gmail-poller/poller-prompts.d.ts.map +1 -0
  93. package/dist/filter-gmail-poller/poller-prompts.js +330 -0
  94. package/dist/filter-gmail-poller/poller-prompts.js.map +1 -0
  95. package/dist/filter-gmail-poller/test.js +69 -0
  96. package/dist/flowframe-auto-firebase-adminsdk.json +13 -0
  97. package/dist/gmail-poller/README-microsoft-email-poller.md +203 -0
  98. package/dist/gmail-poller/README.md +129 -0
  99. package/dist/gmail-poller/example.d.ts +5 -0
  100. package/dist/gmail-poller/example.d.ts.map +1 -0
  101. package/dist/gmail-poller/example.js +83 -0
  102. package/dist/gmail-poller/example.js.map +1 -0
  103. package/dist/gmail-poller/gmail-poller.d.ts +82 -0
  104. package/dist/gmail-poller/gmail-poller.d.ts.map +1 -0
  105. package/dist/gmail-poller/gmail-poller.js +455 -0
  106. package/dist/gmail-poller/gmail-poller.js.map +1 -0
  107. package/dist/gmail-poller/manual-test.d.ts +2 -0
  108. package/dist/gmail-poller/manual-test.d.ts.map +1 -0
  109. package/dist/gmail-poller/manual-test.js +37 -0
  110. package/dist/gmail-poller/manual-test.js.map +1 -0
  111. package/dist/gmail-poller/microsoft-email-example.d.ts +8 -0
  112. package/dist/gmail-poller/microsoft-email-example.d.ts.map +1 -0
  113. package/dist/gmail-poller/microsoft-email-example.js +58 -0
  114. package/dist/gmail-poller/microsoft-email-example.js.map +1 -0
  115. package/dist/gmail-poller/microsoft-email-poller.d.ts +73 -0
  116. package/dist/gmail-poller/microsoft-email-poller.d.ts.map +1 -0
  117. package/dist/gmail-poller/microsoft-email-poller.js +346 -0
  118. package/dist/gmail-poller/microsoft-email-poller.js.map +1 -0
  119. package/dist/gmail-poller/setup-auth.d.ts +3 -0
  120. package/dist/gmail-poller/setup-auth.d.ts.map +1 -0
  121. package/dist/gmail-poller/setup-auth.js +36 -0
  122. package/dist/gmail-poller/setup-auth.js.map +1 -0
  123. package/dist/gmail-poller/test.js +36 -0
  124. package/dist/index.d.ts +10 -0
  125. package/dist/index.d.ts.map +1 -0
  126. package/dist/index.js +28 -0
  127. package/dist/index.js.map +1 -0
  128. package/dist/inference/augment_levels.d.ts +2 -0
  129. package/dist/inference/augment_levels.d.ts.map +1 -0
  130. package/dist/inference/augment_levels.js +1 -0
  131. package/dist/inference/augment_levels.js.map +1 -0
  132. package/dist/inference/capture-overlay.d.ts +13 -0
  133. package/dist/inference/capture-overlay.d.ts.map +1 -0
  134. package/dist/inference/capture-overlay.js +355 -0
  135. package/dist/inference/capture-overlay.js.map +1 -0
  136. package/dist/inference/capturescreenshot.d.ts +12 -0
  137. package/dist/inference/capturescreenshot.d.ts.map +1 -0
  138. package/dist/inference/capturescreenshot.js +157 -0
  139. package/dist/inference/capturescreenshot.js.map +1 -0
  140. package/dist/jsonHandler.d.ts +37 -0
  141. package/dist/jsonHandler.d.ts.map +1 -0
  142. package/dist/jsonHandler.js +191 -0
  143. package/dist/jsonHandler.js.map +1 -0
  144. package/dist/localStorage.json +11 -0
  145. package/dist/media_data_endpoints.d.ts +2 -0
  146. package/dist/media_data_endpoints.d.ts.map +1 -0
  147. package/dist/media_data_endpoints.js +102 -0
  148. package/dist/media_data_endpoints.js.map +1 -0
  149. package/dist/operations/blender-ops.d.ts +4 -0
  150. package/dist/operations/blender-ops.d.ts.map +1 -0
  151. package/dist/operations/blender-ops.js +55 -0
  152. package/dist/operations/blender-ops.js.map +1 -0
  153. package/dist/operations.d.ts +34 -0
  154. package/dist/operations.d.ts.map +1 -0
  155. package/dist/operations.js +1514 -0
  156. package/dist/operations.js.map +1 -0
  157. package/dist/pdfRoutes.d.ts +2 -0
  158. package/dist/pdfRoutes.d.ts.map +1 -0
  159. package/dist/pdfRoutes.js +56 -0
  160. package/dist/pdfRoutes.js.map +1 -0
  161. package/dist/peers.d.ts +9 -0
  162. package/dist/peers.d.ts.map +1 -0
  163. package/dist/peers.js +70 -0
  164. package/dist/peers.js.map +1 -0
  165. package/dist/playparser.d.ts +2 -0
  166. package/dist/playparser.d.ts.map +1 -0
  167. package/dist/playparser.js +281 -0
  168. package/dist/playparser.js.map +1 -0
  169. package/dist/process.d.ts +4 -0
  170. package/dist/process.d.ts.map +1 -0
  171. package/dist/process.js +375 -0
  172. package/dist/process.js.map +1 -0
  173. package/dist/promptRoutes.d.ts +7 -0
  174. package/dist/promptRoutes.d.ts.map +1 -0
  175. package/dist/promptRoutes.js +68 -0
  176. package/dist/promptRoutes.js.map +1 -0
  177. package/dist/queueManager.d.ts +23 -0
  178. package/dist/queueManager.d.ts.map +1 -0
  179. package/dist/queueManager.js +96 -0
  180. package/dist/queueManager.js.map +1 -0
  181. package/dist/run-flow.d.ts +8 -0
  182. package/dist/run-flow.d.ts.map +1 -0
  183. package/dist/run-flow.js +220 -0
  184. package/dist/run-flow.js.map +1 -0
  185. package/dist/scraper.d.ts +2 -0
  186. package/dist/scraper.d.ts.map +1 -0
  187. package/dist/scraper.js +75 -0
  188. package/dist/scraper.js.map +1 -0
  189. package/dist/scraper_endpoints.d.ts +2 -0
  190. package/dist/scraper_endpoints.d.ts.map +1 -0
  191. package/dist/scraper_endpoints.js +40 -0
  192. package/dist/scraper_endpoints.js.map +1 -0
  193. package/dist/server.d.ts +2 -0
  194. package/dist/server.d.ts.map +1 -0
  195. package/dist/server.js +528 -0
  196. package/dist/server.js.map +1 -0
  197. package/dist/services/ModelContext.d.ts +7 -0
  198. package/dist/services/ModelContext.d.ts.map +1 -0
  199. package/dist/services/ModelContext.js +7 -0
  200. package/dist/services/ModelContext.js.map +1 -0
  201. package/dist/services/agenticUiPlanner.d.ts +27 -0
  202. package/dist/services/agenticUiPlanner.d.ts.map +1 -0
  203. package/dist/services/agenticUiPlanner.js +161 -0
  204. package/dist/services/agenticUiPlanner.js.map +1 -0
  205. package/dist/services/apiKeyService.d.ts +3 -0
  206. package/dist/services/apiKeyService.d.ts.map +1 -0
  207. package/dist/services/apiKeyService.js +7 -0
  208. package/dist/services/apiKeyService.js.map +1 -0
  209. package/dist/services/audioService.d.ts +10 -0
  210. package/dist/services/audioService.d.ts.map +1 -0
  211. package/dist/services/audioService.js +140 -0
  212. package/dist/services/audioService.js.map +1 -0
  213. package/dist/services/autoPromptOptimizer.d.ts +44 -0
  214. package/dist/services/autoPromptOptimizer.d.ts.map +1 -0
  215. package/dist/services/autoPromptOptimizer.js +344 -0
  216. package/dist/services/autoPromptOptimizer.js.map +1 -0
  217. package/dist/services/autoPromptOptimizer.manual-test.d.ts +2 -0
  218. package/dist/services/autoPromptOptimizer.manual-test.d.ts.map +1 -0
  219. package/dist/services/autoPromptOptimizer.manual-test.js +27 -0
  220. package/dist/services/autoPromptOptimizer.manual-test.js.map +1 -0
  221. package/dist/services/chainExecutor.d.ts +26 -0
  222. package/dist/services/chainExecutor.d.ts.map +1 -0
  223. package/dist/services/chainExecutor.js +399 -0
  224. package/dist/services/chainExecutor.js.map +1 -0
  225. package/dist/services/classifyImageQuestion.d.ts +55 -0
  226. package/dist/services/classifyImageQuestion.d.ts.map +1 -0
  227. package/dist/services/classifyImageQuestion.js +428 -0
  228. package/dist/services/classifyImageQuestion.js.map +1 -0
  229. package/dist/services/configuration/executor.d.ts +3 -0
  230. package/dist/services/configuration/executor.d.ts.map +1 -0
  231. package/dist/services/configuration/executor.js +795 -0
  232. package/dist/services/configuration/executor.js.map +1 -0
  233. package/dist/services/error.d.ts +13 -0
  234. package/dist/services/error.d.ts.map +1 -0
  235. package/dist/services/error.js +34 -0
  236. package/dist/services/error.js.map +1 -0
  237. package/dist/services/executor.d.ts +11 -0
  238. package/dist/services/executor.d.ts.map +1 -0
  239. package/dist/services/executor.js +1587 -0
  240. package/dist/services/executor.js.map +1 -0
  241. package/dist/services/extractPdf.d.ts +26 -0
  242. package/dist/services/extractPdf.d.ts.map +1 -0
  243. package/dist/services/extractPdf.js +256 -0
  244. package/dist/services/extractPdf.js.map +1 -0
  245. package/dist/services/generateJsTransformFromPrompt.d.ts +11 -0
  246. package/dist/services/generateJsTransformFromPrompt.d.ts.map +1 -0
  247. package/dist/services/generateJsTransformFromPrompt.js +328 -0
  248. package/dist/services/generateJsTransformFromPrompt.js.map +1 -0
  249. package/dist/services/localizeFirebaseMedia.d.ts +20 -0
  250. package/dist/services/localizeFirebaseMedia.d.ts.map +1 -0
  251. package/dist/services/localizeFirebaseMedia.js +135 -0
  252. package/dist/services/localizeFirebaseMedia.js.map +1 -0
  253. package/dist/services/polyfill_canvas.d.ts +2 -0
  254. package/dist/services/polyfill_canvas.d.ts.map +1 -0
  255. package/dist/services/polyfill_canvas.js +19 -0
  256. package/dist/services/polyfill_canvas.js.map +1 -0
  257. package/dist/services/promptRoutes.d.ts +7 -0
  258. package/dist/services/promptRoutes.d.ts.map +1 -0
  259. package/dist/services/promptRoutes.js +70 -0
  260. package/dist/services/promptRoutes.js.map +1 -0
  261. package/dist/services/runPrompt.d.ts +29 -0
  262. package/dist/services/runPrompt.d.ts.map +1 -0
  263. package/dist/services/runPrompt.js +232 -0
  264. package/dist/services/runPrompt.js.map +1 -0
  265. package/dist/services/schemaInference.d.ts +2 -0
  266. package/dist/services/schemaInference.d.ts.map +1 -0
  267. package/dist/services/schemaInference.js +17 -0
  268. package/dist/services/schemaInference.js.map +1 -0
  269. package/dist/services/self-learning/api.d.ts +2 -0
  270. package/dist/services/self-learning/api.d.ts.map +1 -0
  271. package/dist/services/self-learning/api.js +84 -0
  272. package/dist/services/self-learning/api.js.map +1 -0
  273. package/dist/services/self-learning/autolearn.d.ts +23 -0
  274. package/dist/services/self-learning/autolearn.d.ts.map +1 -0
  275. package/dist/services/self-learning/autolearn.js +308 -0
  276. package/dist/services/self-learning/autolearn.js.map +1 -0
  277. package/dist/services/self-learning/discover.d.ts +11 -0
  278. package/dist/services/self-learning/discover.d.ts.map +1 -0
  279. package/dist/services/self-learning/discover.js +446 -0
  280. package/dist/services/self-learning/discover.js.map +1 -0
  281. package/dist/services/self-learning/image.d.ts +10 -0
  282. package/dist/services/self-learning/image.d.ts.map +1 -0
  283. package/dist/services/self-learning/image.js +38 -0
  284. package/dist/services/self-learning/image.js.map +1 -0
  285. package/dist/services/self-learning/injest.d.ts +25 -0
  286. package/dist/services/self-learning/injest.d.ts.map +1 -0
  287. package/dist/services/self-learning/injest.js +110 -0
  288. package/dist/services/self-learning/injest.js.map +1 -0
  289. package/dist/services/self-learning/learn.d.ts +2 -0
  290. package/dist/services/self-learning/learn.d.ts.map +1 -0
  291. package/dist/services/self-learning/learn.js +145 -0
  292. package/dist/services/self-learning/learn.js.map +1 -0
  293. package/dist/services/self-learning/matcher.d.ts +2 -0
  294. package/dist/services/self-learning/matcher.d.ts.map +1 -0
  295. package/dist/services/self-learning/matcher.js +38 -0
  296. package/dist/services/self-learning/matcher.js.map +1 -0
  297. package/dist/services/self-learning/openai.d.ts +8 -0
  298. package/dist/services/self-learning/openai.d.ts.map +1 -0
  299. package/dist/services/self-learning/openai.js +97 -0
  300. package/dist/services/self-learning/openai.js.map +1 -0
  301. package/dist/services/self-learning/phash.d.ts +5 -0
  302. package/dist/services/self-learning/phash.d.ts.map +1 -0
  303. package/dist/services/self-learning/phash.js +68 -0
  304. package/dist/services/self-learning/phash.js.map +1 -0
  305. package/dist/services/self-learning/recognize.d.ts +17 -0
  306. package/dist/services/self-learning/recognize.d.ts.map +1 -0
  307. package/dist/services/self-learning/recognize.js +116 -0
  308. package/dist/services/self-learning/recognize.js.map +1 -0
  309. package/dist/services/self-learning/record_transition.d.ts +8 -0
  310. package/dist/services/self-learning/record_transition.d.ts.map +1 -0
  311. package/dist/services/self-learning/record_transition.js +20 -0
  312. package/dist/services/self-learning/record_transition.js.map +1 -0
  313. package/dist/services/self-learning/registry.d.ts +4 -0
  314. package/dist/services/self-learning/registry.d.ts.map +1 -0
  315. package/dist/services/self-learning/registry.js +19 -0
  316. package/dist/services/self-learning/registry.js.map +1 -0
  317. package/dist/services/self-learning/schema.d.ts +114 -0
  318. package/dist/services/self-learning/schema.d.ts.map +1 -0
  319. package/dist/services/self-learning/schema.js +70 -0
  320. package/dist/services/self-learning/schema.js.map +1 -0
  321. package/dist/services/self-learning/schemaStrictify.d.ts +2 -0
  322. package/dist/services/self-learning/schemaStrictify.d.ts.map +1 -0
  323. package/dist/services/self-learning/schemaStrictify.js +34 -0
  324. package/dist/services/self-learning/schemaStrictify.js.map +1 -0
  325. package/dist/services/self-learning/transition_graph.d.ts +6 -0
  326. package/dist/services/self-learning/transition_graph.d.ts.map +1 -0
  327. package/dist/services/self-learning/transition_graph.js +83 -0
  328. package/dist/services/self-learning/transition_graph.js.map +1 -0
  329. package/dist/services/self-learning/transition_log.d.ts +3 -0
  330. package/dist/services/self-learning/transition_log.d.ts.map +1 -0
  331. package/dist/services/self-learning/transition_log.js +42 -0
  332. package/dist/services/self-learning/transition_log.js.map +1 -0
  333. package/dist/services/self-learning/util.d.ts +3 -0
  334. package/dist/services/self-learning/util.d.ts.map +1 -0
  335. package/dist/services/self-learning/util.js +11 -0
  336. package/dist/services/self-learning/util.js.map +1 -0
  337. package/dist/services/stepByStepAiPlanner.d.ts +39 -0
  338. package/dist/services/stepByStepAiPlanner.d.ts.map +1 -0
  339. package/dist/services/stepByStepAiPlanner.js +379 -0
  340. package/dist/services/stepByStepAiPlanner.js.map +1 -0
  341. package/dist/services/test-genjs.js +39 -0
  342. package/dist/services/test-genjs.manual-test.d.ts +2 -0
  343. package/dist/services/test-genjs.manual-test.d.ts.map +1 -0
  344. package/dist/services/test-genjs.manual-test.js +40 -0
  345. package/dist/services/test-genjs.manual-test.js.map +1 -0
  346. package/dist/services/uiMapPathFinder.d.ts +13 -0
  347. package/dist/services/uiMapPathFinder.d.ts.map +1 -0
  348. package/dist/services/uiMapPathFinder.js +79 -0
  349. package/dist/services/uiMapPathFinder.js.map +1 -0
  350. package/dist/services/uiMapService.d.ts +26 -0
  351. package/dist/services/uiMapService.d.ts.map +1 -0
  352. package/dist/services/uiMapService.js +275 -0
  353. package/dist/services/uiMapService.js.map +1 -0
  354. package/dist/services/uiPlanner.d.ts +54 -0
  355. package/dist/services/uiPlanner.d.ts.map +1 -0
  356. package/dist/services/uiPlanner.js +558 -0
  357. package/dist/services/uiPlanner.js.map +1 -0
  358. package/dist/services/utilityFunctions.d.ts +80 -0
  359. package/dist/services/utilityFunctions.d.ts.map +1 -0
  360. package/dist/services/utilityFunctions.js +352 -0
  361. package/dist/services/utilityFunctions.js.map +1 -0
  362. package/dist/services/variableGenerator.d.ts +39 -0
  363. package/dist/services/variableGenerator.d.ts.map +1 -0
  364. package/dist/services/variableGenerator.js +157 -0
  365. package/dist/services/variableGenerator.js.map +1 -0
  366. package/dist/services/workflow/build-workflow.d.ts +49 -0
  367. package/dist/services/workflow/build-workflow.d.ts.map +1 -0
  368. package/dist/services/workflow/build-workflow.js +119 -0
  369. package/dist/services/workflow/build-workflow.js.map +1 -0
  370. package/dist/standardRoutes.d.ts +2 -0
  371. package/dist/standardRoutes.d.ts.map +1 -0
  372. package/dist/standardRoutes.js +1495 -0
  373. package/dist/standardRoutes.js.map +1 -0
  374. package/dist/stepWorkflowRoutes.d.ts +2 -0
  375. package/dist/stepWorkflowRoutes.d.ts.map +1 -0
  376. package/dist/stepWorkflowRoutes.js +1007 -0
  377. package/dist/stepWorkflowRoutes.js.map +1 -0
  378. package/dist/storage.d.ts +19 -0
  379. package/dist/storage.d.ts.map +1 -0
  380. package/dist/storage.docker.json +61 -0
  381. package/dist/storage.js +131 -0
  382. package/dist/storage.js.map +1 -0
  383. package/dist/storage.json +78 -0
  384. package/dist/storage_cache/boxes.json +48 -0
  385. package/dist/storage_cache/suno_state.json +3 -0
  386. package/dist/suno_download.d.ts +11 -0
  387. package/dist/suno_download.d.ts.map +1 -0
  388. package/dist/suno_download.js +33 -0
  389. package/dist/suno_download.js.map +1 -0
  390. package/dist/suno_download.py +119 -0
  391. package/dist/test-web-element-requests.d.ts +6 -0
  392. package/dist/test-web-element-requests.d.ts.map +1 -0
  393. package/dist/test-web-element-requests.js +114 -0
  394. package/dist/test-web-element-requests.js.map +1 -0
  395. package/dist/test_pdf_render.d.ts +2 -0
  396. package/dist/test_pdf_render.d.ts.map +1 -0
  397. package/dist/test_pdf_render.js +50 -0
  398. package/dist/test_pdf_render.js.map +1 -0
  399. package/dist/training_data_viewer_endpoints.d.ts +2 -0
  400. package/dist/training_data_viewer_endpoints.d.ts.map +1 -0
  401. package/dist/training_data_viewer_endpoints.js +141 -0
  402. package/dist/training_data_viewer_endpoints.js.map +1 -0
  403. package/dist/utils.d.ts +353 -0
  404. package/dist/utils.d.ts.map +1 -0
  405. package/dist/utils.js +1517 -0
  406. package/dist/utils.js.map +1 -0
  407. package/dist/vm-h100.env.template +55 -0
  408. package/dist/web-element-requests.d.ts +102 -0
  409. package/dist/web-element-requests.d.ts.map +1 -0
  410. package/dist/web-element-requests.js +278 -0
  411. package/dist/web-element-requests.js.map +1 -0
  412. package/dist/workflowRoutes.d.ts +2 -0
  413. package/dist/workflowRoutes.d.ts.map +1 -0
  414. package/dist/workflowRoutes.js +441 -0
  415. package/dist/workflowRoutes.js.map +1 -0
  416. package/package.json +109 -0
@@ -0,0 +1,29 @@
1
+ export declare function runPromptGrok(messages: any, model: any, jsonMode?: boolean, maxRetries?: number, baseDelay?: number): Promise<string>;
2
+ export declare function classifyImageQuery(model: any, question: any, image: any): Promise<{
3
+ answer: string;
4
+ confidence: number;
5
+ reason: any;
6
+ }>;
7
+ export declare function generalClassifyImageQuery(model: any, question: any, image: any): Promise<any>;
8
+ export declare function findImageInImageQuery(model: any, imageA: any, imageB: any): Promise<{
9
+ found: boolean;
10
+ confidence: number;
11
+ box: {
12
+ x_center_rel: number;
13
+ y_center_rel: number;
14
+ width_rel: number;
15
+ height_rel: number;
16
+ };
17
+ reason: any;
18
+ }>;
19
+ export declare function runImagePromptGrok(prompt: any, base64_image: any, model?: string): Promise<string>;
20
+ export declare function processLLMResponse(response: any, model?: string, provider?: string): Promise<any>;
21
+ /**
22
+ * Sends a sequence of chat messages to the OpenAI API and returns the assistant's reply.
23
+ *
24
+ * @param messages - An array of messages with roles ("system", "user", "assistant").
25
+ * @param model - The model ID to use (e.g., "gpt-4", "gpt-3.5-turbo").
26
+ * @returns - The content of the first choice, or an empty string if none.
27
+ */
28
+ export declare function runPrompt(messages: any, model: any, images: any[], jsonMode: boolean, timeout: any): Promise<string>;
29
+ //# sourceMappingURL=runPrompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runPrompt.d.ts","sourceRoot":"","sources":["../../src/services/runPrompt.ts"],"names":[],"mappings":"AAOA,wBAAsB,aAAa,CAC/B,QAAQ,KAAA,EACR,KAAK,KAAA,EACL,QAAQ,UAAQ,EAChB,UAAU,SAAI,EACd,SAAS,SAAQ,mBAwCpB;AACD,wBAAsB,kBAAkB,CAAC,KAAK,KAAA,EAAE,QAAQ,KAAA,EAAE,KAAK,KAAA;;;;GAgB9D;AAED,wBAAsB,yBAAyB,CAAC,KAAK,KAAA,EAAE,QAAQ,KAAA,EAAE,KAAK,KAAA,gBAgBrE;AAED,wBAAsB,qBAAqB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,EAAE,MAAM,KAAA;;;;;;;;;;GAgBhE;AAED,wBAAsB,kBAAkB,CACpC,MAAM,KAAA,EACN,YAAY,KAAA,EACZ,KAAK,SAA8C,mBA0BtD;AAED,wBAAsB,kBAAkB,CAAC,QAAQ,KAAA,EAAE,KAAK,SAA8C,EAAE,QAAQ,SAAS,gBAwDxH;AACD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC3B,QAAQ,KAAA,EACR,KAAK,KAAA,EACL,MAAM,OAAK,EACX,QAAQ,SAAQ,EAChB,OAAO,KAAA,mBAgDV"}
@@ -0,0 +1,232 @@
1
+ // src/services/runPrompt.js
2
+ import OpenAI from 'openai';
3
+ import { fetchOpenApiKey, fetchGrokApiKey } from './apiKeyService.js';
4
+ import { Groq } from 'groq-sdk';
5
+ import { classifyImageQuestion, extractJson, findImageInImage, generalClassifyImageQuestion } from './classifyImageQuestion.js';
6
+ export async function runPromptGrok(messages, model, jsonMode = false, maxRetries = 3, baseDelay = 15000 // Start with 15 seconds as suggested by retry-after header
7
+ ) {
8
+ const key = await fetchGrokApiKey();
9
+ const groq = new Groq({
10
+ apiKey: key,
11
+ dangerouslyAllowBrowser: true, // Use with caution in production
12
+ });
13
+ for (let attempt = 0; attempt <= maxRetries; attempt++) {
14
+ try {
15
+ const chatCompletion = await groq.chat.completions.create({
16
+ "messages": messages,
17
+ model,
18
+ "max_completion_tokens": 8192,
19
+ response_format: jsonMode ? { type: "json_object" } : undefined,
20
+ });
21
+ return chatCompletion.choices[0].message.content;
22
+ }
23
+ catch (error) {
24
+ // Check if it's a 503 over capacity error
25
+ const isOverCapacity = error.status === 503 &&
26
+ error.error?.error?.message?.includes('over capacity');
27
+ // If it's the last attempt or not an over capacity error, throw
28
+ if (attempt === maxRetries || !isOverCapacity) {
29
+ console.error(`Groq API error after ${attempt + 1} attempts:`, error.message);
30
+ throw error;
31
+ }
32
+ // Calculate exponential backoff delay
33
+ const delay = baseDelay * Math.pow(2, attempt);
34
+ const retryAfter = error.headers?.['retry-after'];
35
+ const actualDelay = retryAfter ? parseInt(retryAfter) * 1000 : delay;
36
+ console.log(`Groq over capacity (attempt ${attempt + 1}/${maxRetries + 1}). Retrying in ${actualDelay}ms...`);
37
+ // Wait before retrying
38
+ await new Promise(resolve => setTimeout(resolve, actualDelay));
39
+ }
40
+ }
41
+ }
42
+ export async function classifyImageQuery(model, question, image) {
43
+ let client, provider;
44
+ if (!model.startsWith('gpt-') && !model.startsWith('o4-')) {
45
+ client = new Groq({
46
+ apiKey: await fetchGrokApiKey(),
47
+ dangerouslyAllowBrowser: true,
48
+ });
49
+ provider = 'groq';
50
+ }
51
+ else {
52
+ client = new OpenAI({
53
+ apiKey: await fetchOpenApiKey(),
54
+ dangerouslyAllowBrowser: true,
55
+ });
56
+ provider = 'openai';
57
+ }
58
+ return await classifyImageQuestion({ client, provider, model, question, image });
59
+ }
60
+ export async function generalClassifyImageQuery(model, question, image) {
61
+ let client, provider;
62
+ if (!model.startsWith('gpt-') && !model.startsWith('o4-')) {
63
+ client = new Groq({
64
+ apiKey: await fetchGrokApiKey(),
65
+ dangerouslyAllowBrowser: true,
66
+ });
67
+ provider = 'groq';
68
+ }
69
+ else {
70
+ client = new OpenAI({
71
+ apiKey: await fetchOpenApiKey(),
72
+ dangerouslyAllowBrowser: true,
73
+ });
74
+ provider = 'openai';
75
+ }
76
+ return await generalClassifyImageQuestion({ client, provider, model, question, image });
77
+ }
78
+ export async function findImageInImageQuery(model, imageA, imageB) {
79
+ let client, provider;
80
+ if (!model.startsWith('gpt-') && !model.startsWith('o4-')) {
81
+ client = new Groq({
82
+ apiKey: await fetchGrokApiKey(),
83
+ dangerouslyAllowBrowser: true,
84
+ });
85
+ provider = 'groq';
86
+ }
87
+ else {
88
+ client = new OpenAI({
89
+ apiKey: await fetchOpenApiKey(),
90
+ dangerouslyAllowBrowser: true,
91
+ });
92
+ provider = 'openai';
93
+ }
94
+ return await findImageInImage({ client, provider, model, imageA, imageB });
95
+ }
96
+ export async function runImagePromptGrok(prompt, base64_image, model = "meta-llama/llama-4-scout-17b-16e-instruct") {
97
+ const key = await fetchGrokApiKey();
98
+ const groq = new Groq({
99
+ apiKey: key,
100
+ });
101
+ console.log(`base64_image length: ${base64_image.length}`);
102
+ console.log(base64_image);
103
+ const chatCompletion = await groq.chat.completions.create({
104
+ "messages": [
105
+ {
106
+ role: "user", content: [
107
+ { type: "text", text: prompt },
108
+ {
109
+ type: "image_url",
110
+ image_url: {
111
+ url: `${base64_image}`,
112
+ },
113
+ },
114
+ ],
115
+ },
116
+ ],
117
+ model: model || "meta-llama/llama-4-scout-17b-16e-instruct",
118
+ });
119
+ console.log(chatCompletion);
120
+ return chatCompletion.choices[0].message.content;
121
+ }
122
+ export async function processLLMResponse(response, model = 'meta-llama/llama-4-scout-17b-16e-instruct', provider = 'grok') {
123
+ let parsed;
124
+ model = model || 'meta-llama/llama-4-scout-17b-16e-instruct';
125
+ try {
126
+ parsed = extractJson(response);
127
+ }
128
+ catch (e) {
129
+ // Fallback: if model ignored instructions, force a re-ask with the raw text included
130
+ // (One extra round, still synchronous)
131
+ const repairPrompt = `
132
+ You failed to return valid JSON. Convert the following text into valid JSON that matches the structure requested in the question or the default schema:
133
+ ${response}
134
+
135
+ Default SCHEMA if not specified:
136
+ {
137
+ "answer": "string",
138
+ "confidence": number between 0 and 1,
139
+ "reason": "brief visual explanation (<= 20 words)"
140
+ }
141
+ Return ONLY the JSON.
142
+ `;
143
+ let client;
144
+ if (!model.startsWith('gpt-') && !model.startsWith('o4-')) {
145
+ client = new Groq({
146
+ apiKey: await fetchGrokApiKey(),
147
+ dangerouslyAllowBrowser: true,
148
+ });
149
+ provider = 'groq';
150
+ }
151
+ else {
152
+ client = new OpenAI({
153
+ apiKey: await fetchOpenApiKey(),
154
+ dangerouslyAllowBrowser: true,
155
+ });
156
+ provider = 'openai';
157
+ }
158
+ if (provider === 'openai') {
159
+ const resp2 = await client.chat.completions.create({
160
+ model,
161
+ temperature: 0,
162
+ messages: [
163
+ { role: 'system', content: repairPrompt }
164
+ ]
165
+ });
166
+ parsed = extractJson(resp2?.choices?.[0]?.message?.content || '');
167
+ }
168
+ else {
169
+ const resp2 = await client.chat.completions.create({
170
+ model,
171
+ temperature: 0,
172
+ messages: [
173
+ { role: 'system', content: repairPrompt }
174
+ ]
175
+ });
176
+ parsed = extractJson(resp2?.choices?.[0]?.message?.content || '');
177
+ }
178
+ }
179
+ return parsed;
180
+ }
181
+ /**
182
+ * Sends a sequence of chat messages to the OpenAI API and returns the assistant's reply.
183
+ *
184
+ * @param messages - An array of messages with roles ("system", "user", "assistant").
185
+ * @param model - The model ID to use (e.g., "gpt-4", "gpt-3.5-turbo").
186
+ * @returns - The content of the first choice, or an empty string if none.
187
+ */
188
+ export async function runPrompt(messages, model, images = [], jsonMode = false, timeout) {
189
+ if (images && images.length > 0) {
190
+ const lastUserIndex = messages.map(m => m.role).lastIndexOf('user');
191
+ if (lastUserIndex !== -1) {
192
+ let content = messages[lastUserIndex].content;
193
+ if (typeof content === 'string') {
194
+ content = [{ type: 'text', text: content }];
195
+ }
196
+ images.forEach(url => {
197
+ content.push({ type: 'image_url', image_url: { url } });
198
+ });
199
+ messages[lastUserIndex].content = content;
200
+ }
201
+ }
202
+ if (!model?.startsWith('gpt-') && !model?.startsWith('o4-')) {
203
+ // If the model starts with "groq-", use Groq's API
204
+ try {
205
+ return runPromptGrok(messages, model, jsonMode);
206
+ }
207
+ catch (err) {
208
+ console.error('Error in runPromptGrok:', err);
209
+ model = 'gpt-4';
210
+ }
211
+ }
212
+ // 1️⃣ Fetch your API key at runtime (avoids bundling secrets)
213
+ const key = await fetchOpenApiKey();
214
+ // 2️⃣ Initialize the OpenAI client for browser or Node use
215
+ const openai = new OpenAI({
216
+ apiKey: key,
217
+ dangerouslyAllowBrowser: true,
218
+ timeout: timeout || 600000, // Default to 10 minutes if not provided
219
+ });
220
+ // 3️⃣ Call the Chat Completions endpoint with your message array
221
+ const resp = await openai.chat.completions.create({
222
+ model,
223
+ messages,
224
+ top_p: 1, // Optional: use nucleus sampling
225
+ frequency_penalty: 0, // Optional: discourage repetition
226
+ presence_penalty: 0, // Optional: encourage new topics
227
+ response_format: jsonMode ? { type: "json_object" } : undefined,
228
+ });
229
+ // 4️⃣ Return the assistant’s reply, or a safe empty string
230
+ return resp.choices[0]?.message?.content || '';
231
+ }
232
+ //# sourceMappingURL=runPrompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runPrompt.js","sourceRoot":"","sources":["../../src/services/runPrompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function inferSchema(prompt: any, model: any): Promise<any>;
2
+ //# sourceMappingURL=schemaInference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaInference.d.ts","sourceRoot":"","sources":["../../src/services/schemaInference.ts"],"names":[],"mappings":"AAIA,wBAAsB,WAAW,CAC7B,MAAM,KAAA,EACN,KAAK,KAAA,gBAcR"}
@@ -0,0 +1,17 @@
1
+ import OpenAI from 'openai';
2
+ import { fetchOpenApiKey } from './apiKeyService';
3
+ export async function inferSchema(prompt, model) {
4
+ const key = await fetchOpenApiKey();
5
+ const openai = new OpenAI({ apiKey: key, dangerouslyAllowBrowser: true });
6
+ const system = 'You are a JSON Schema generator (draft‑07). Reply _only_ with valid JSON.';
7
+ const user = `Generate a JSON Schema for the output of this prompt:\n\n"""${prompt}"""`;
8
+ const resp = await openai.chat.completions.create({
9
+ model,
10
+ messages: [
11
+ { role: 'system', content: system },
12
+ { role: 'user', content: user },
13
+ ],
14
+ });
15
+ return JSON.parse(resp.choices[0].message.content || '');
16
+ }
17
+ //# sourceMappingURL=schemaInference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaInference.js","sourceRoot":"","sources":["../../src/services/schemaInference.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC7B,MAAM,EACN,KAAK;IAEL,MAAM,GAAG,GAAG,MAAM,eAAe,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,2EAA2E,CAAC;IAC3F,MAAM,IAAI,GAAG,+DAA+D,MAAM,KAAK,CAAC;IACxF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QAC9C,KAAK;QACL,QAAQ,EAAE;YACN,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE;YACnC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;SAClC;KACJ,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function selfLearningApi(app: any, options: any): Promise<void>;
2
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/services/self-learning/api.ts"],"names":[],"mappings":"AAMA,wBAAsB,eAAe,CAAC,GAAG,KAAA,EAAE,OAAO,KAAA,iBAmFjD"}
@@ -0,0 +1,84 @@
1
+ import path from 'path';
2
+ import { ingestScreenshot, screensDir } from './injest.js';
3
+ import { discoverScreens } from './discover.js';
4
+ import { runPrompt } from '../runPrompt.js';
5
+ export async function selfLearningApi(app, options) {
6
+ // Placeholder for future self-learning API functions
7
+ let mediaFolder = options.mediaFolder();
8
+ app.post('/api/self-learning/enhance', async (req, res) => {
9
+ try {
10
+ const { systemPrompt, userPrompt, model = 'gpt-4o' } = req.body;
11
+ if (!userPrompt) {
12
+ return res.status(400).json({ success: false, message: 'Missing userPrompt' });
13
+ }
14
+ const messages = [
15
+ { role: 'system', content: systemPrompt || 'You are a helpful assistant.' },
16
+ { role: 'user', content: userPrompt }
17
+ ];
18
+ const result = await runPrompt(messages, model);
19
+ res.json({ success: true, result });
20
+ }
21
+ catch (error) {
22
+ console.error('Error in /api/self-learning/enhance:', error);
23
+ res.status(500).json({ success: false, message: error.message });
24
+ }
25
+ });
26
+ app.get('/api/self-learning/media-folder', (req, res) => {
27
+ res.json({ mediaFolder });
28
+ });
29
+ app.post('/api/self-learning/media-folder', (req, res) => {
30
+ const { folder } = req.body;
31
+ if (typeof folder === 'string' && folder.trim() !== '') {
32
+ mediaFolder = folder.trim();
33
+ res.json({ success: true, mediaFolder });
34
+ }
35
+ else {
36
+ res.status(400).json({ success: false, message: 'Invalid folder path' });
37
+ }
38
+ });
39
+ // call inject.js
40
+ app.post('/api/self-learning/injest', async (req, res) => {
41
+ try {
42
+ const { imagePath, metadata, tags } = req.body;
43
+ if (typeof imagePath !== 'string' || imagePath.trim() === '') {
44
+ return res.status(400).json({ success: false, message: 'Invalid image path' });
45
+ }
46
+ // const result = await injestModule.injestImage(imagePath, metadata || {}, mediaFolder);
47
+ const meta = metadata || {};
48
+ const event = await ingestScreenshot({
49
+ imagePath: path.join(mediaFolder, imagePath),
50
+ meta,
51
+ tags
52
+ });
53
+ res.json({ success: true, result: event });
54
+ }
55
+ catch (error) {
56
+ console.error('Error in /api/self-learning/injest:', error);
57
+ res.status(500).json({ success: false, message: error.message });
58
+ }
59
+ });
60
+ app.post('/api/self-learning/discover', async (req, res) => {
61
+ try {
62
+ const args = req.body || {};
63
+ const result = await discoverScreens({
64
+ inputDir: args.inputDir || screensDir(),
65
+ limit: args.limit || 1000,
66
+ minClusterSize: args.minClusterSize || 3,
67
+ maxClusters: args.maxClusters || 100,
68
+ clusterAMax: args.clusterAMax || 48,
69
+ clusterDMax: args.clusterDMax || 48,
70
+ bucketPrefix: args.bucketPrefix || 2,
71
+ makeCatalog: args.makeCatalog !== undefined ? args.makeCatalog : true,
72
+ tuneAnchors: args.tuneAnchors !== undefined ? args.tuneAnchors : false,
73
+ knownMatchPreScoreMin: args.knownMatchPreScoreMin || 0.7,
74
+ screenIdPrefix: args.screenIdPrefix || 'screen_'
75
+ });
76
+ res.json({ success: true, result });
77
+ }
78
+ catch (error) {
79
+ console.error('Error in /api/self-learning/discover:', error);
80
+ res.status(500).json({ success: false, message: error.message });
81
+ }
82
+ });
83
+ }
84
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/services/self-learning/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import "dotenv/config";
2
+ /**
3
+ * Autolearn:
4
+ * - Reads ingest/events.jsonl
5
+ * - Filters unprocessed events
6
+ * - Picks "unknown-ish" events (not close to any existing signature prototypes)
7
+ * - Clusters unknowns by aHash/dHash distances
8
+ * - Learns a new signature for each cluster medoid by calling learn.js
9
+ */
10
+ export declare function autoLearn(options?: {}): Promise<{
11
+ learned: number;
12
+ clusters: number;
13
+ message: string;
14
+ consideredClusters?: undefined;
15
+ unknownCandidates?: undefined;
16
+ } | {
17
+ learned: number;
18
+ clusters: number;
19
+ consideredClusters: number;
20
+ unknownCandidates: number;
21
+ message?: undefined;
22
+ }>;
23
+ //# sourceMappingURL=autolearn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autolearn.d.ts","sourceRoot":"","sources":["../../../src/services/self-learning/autolearn.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAkLvB;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAAC,OAAO,KAAK;;;;;;;;;;;;GAiH3C"}