onbuzz 4.9.0 → 4.9.1

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 (1019) hide show
  1. package/package.json +1 -1
  2. package/scripts/verify/azure-custom-embeddings.mjs +152 -0
  3. package/scripts/verify/azure-embeddings.mjs +146 -0
  4. package/scripts/verify/composio-toolkits.mjs +453 -0
  5. package/scripts/verify/local-embeddings.mjs +171 -0
  6. package/scripts/verify/openai-embeddings.mjs +140 -0
  7. package/src/core/__tests__/agentScheduler.autoRecall.test.js +215 -0
  8. package/src/core/__tests__/agentScheduler.errorCategorisation.test.js +169 -0
  9. package/src/core/agentScheduler.js +182 -36
  10. package/src/index.js +63 -1
  11. package/src/interfaces/webServer.js +90 -0
  12. package/src/services/__tests__/aiService.core.test.js +420 -0
  13. package/src/services/__tests__/aiService.embed.test.js +172 -0
  14. package/src/services/__tests__/apiKeyManager.getEmbeddingApiKey.test.js +86 -0
  15. package/src/services/__tests__/composioService.test.js +429 -47
  16. package/src/services/__tests__/telegramService.test.js +91 -0
  17. package/src/services/aiService.js +137 -0
  18. package/src/services/apiKeyManager.js +28 -0
  19. package/src/services/composioService.js +375 -24
  20. package/src/services/embeddings/__tests__/autoRecall.test.js +237 -0
  21. package/src/services/embeddings/__tests__/azureCustomProvider.test.js +232 -0
  22. package/src/services/embeddings/__tests__/cloudProviders.test.js +339 -0
  23. package/src/services/embeddings/__tests__/embeddingService.test.js +417 -0
  24. package/src/services/embeddings/__tests__/embeddingsConfig.test.js +182 -0
  25. package/src/services/embeddings/__tests__/inMemoryJsonStore.test.js +207 -0
  26. package/src/services/embeddings/__tests__/localProvider.test.js +263 -0
  27. package/src/services/embeddings/__tests__/providerInterface.test.js +209 -0
  28. package/src/services/embeddings/autoRecall.js +219 -0
  29. package/src/services/embeddings/embeddingService.js +452 -0
  30. package/src/services/embeddings/embeddingsConfig.js +203 -0
  31. package/src/services/embeddings/indexers/__tests__/agentIndexer.test.js +232 -0
  32. package/src/services/embeddings/indexers/__tests__/composioIndexer.test.js +265 -0
  33. package/src/services/embeddings/indexers/__tests__/memoryIndexer.test.js +418 -0
  34. package/src/services/embeddings/indexers/__tests__/reminisceIndexer.test.js +357 -0
  35. package/src/services/embeddings/indexers/__tests__/skillsIndexer.test.js +145 -0
  36. package/src/services/embeddings/indexers/__tests__/taskIndexer.test.js +146 -0
  37. package/src/services/embeddings/indexers/agentIndexer.js +249 -0
  38. package/src/services/embeddings/indexers/composioIndexer.js +279 -0
  39. package/src/services/embeddings/indexers/memoryIndexer.js +358 -0
  40. package/src/services/embeddings/indexers/reminisceIndexer.js +370 -0
  41. package/src/services/embeddings/indexers/skillsIndexer.js +154 -0
  42. package/src/services/embeddings/indexers/taskIndexer.js +155 -0
  43. package/src/services/embeddings/providerInterface.js +206 -0
  44. package/src/services/embeddings/providers/azureCustomProvider.js +154 -0
  45. package/src/services/embeddings/providers/azureProvider.js +122 -0
  46. package/src/services/embeddings/providers/cloudHttpTransport.js +205 -0
  47. package/src/services/embeddings/providers/localProvider.js +287 -0
  48. package/src/services/embeddings/providers/openaiProvider.js +101 -0
  49. package/src/services/embeddings/utilities/__tests__/textChunker.test.js +217 -0
  50. package/src/services/embeddings/utilities/textChunker.js +290 -0
  51. package/src/services/embeddings/vectorStore/__tests__/scoring.test.js +189 -0
  52. package/src/services/embeddings/vectorStore/inMemoryJsonStore.js +356 -0
  53. package/src/services/embeddings/vectorStore/scoring.js +128 -0
  54. package/src/services/embeddings/vectorStore/storeContractTests.js +179 -0
  55. package/src/services/embeddings/vectorStore/storeInterface.js +91 -0
  56. package/src/services/telegramService.js +140 -1
  57. package/src/tools/__tests__/agentCommunicationTool.findAgent.test.js +226 -0
  58. package/src/tools/__tests__/agentCommunicationTool.test.js +17 -2
  59. package/src/tools/__tests__/baseTool.test.js +14 -10
  60. package/src/tools/__tests__/cloneDetectionTool.test.js +430 -0
  61. package/src/tools/__tests__/composioTool.findAction.test.js +448 -0
  62. package/src/tools/__tests__/composioTool.test.js +254 -23
  63. package/src/tools/__tests__/dependencyResolverTool.test.js +567 -0
  64. package/src/tools/__tests__/docxTool.test.js +449 -0
  65. package/src/tools/__tests__/excelTool.test.js +486 -0
  66. package/src/tools/__tests__/importAnalyzerTool.test.js +368 -0
  67. package/src/tools/__tests__/memoryTool.forgetStale.test.js +272 -0
  68. package/src/tools/__tests__/memoryTool.reminisceSemanticSearch.test.js +301 -0
  69. package/src/tools/__tests__/memoryTool.semanticSearch.test.js +405 -0
  70. package/src/tools/__tests__/memoryTool.teamPool.test.js +293 -0
  71. package/src/tools/__tests__/openaiFunctionSchemas.validity.test.js +268 -0
  72. package/src/tools/__tests__/pdfTool.test.js +457 -0
  73. package/src/tools/__tests__/skillsTool.search.test.js +164 -0
  74. package/src/tools/__tests__/taskManagerTool.search.test.js +143 -0
  75. package/src/tools/agentCommunicationTool.js +120 -5
  76. package/src/tools/composioTool.js +373 -63
  77. package/src/tools/memoryTool.js +634 -5
  78. package/src/tools/openaiFunctionSchemas.js +796 -6
  79. package/src/tools/skillsTool.js +123 -0
  80. package/src/tools/taskManagerTool.js +115 -2
  81. package/src/tools/webTool.js +28 -1
  82. package/src/utilities/toolConstants.js +3 -1
  83. package/web-ui/build/index.html +2 -2
  84. package/web-ui/build/static/1c-CTztA3Xo.js +1 -0
  85. package/web-ui/build/static/abap-BsUhLmBp.js +1 -0
  86. package/web-ui/build/static/abnf-CGKV2y5s.js +1 -0
  87. package/web-ui/build/static/abnf-vQPGuzu_.js +1 -0
  88. package/web-ui/build/static/accesslog-mUZocN9d.js +1 -0
  89. package/web-ui/build/static/actionscript-BmCHyr7v.js +1 -0
  90. package/web-ui/build/static/actionscript-Cc5vZvFE.js +1 -0
  91. package/web-ui/build/static/ada-BHR9NMNv.js +1 -0
  92. package/web-ui/build/static/ada-DnxQs2b9.js +1 -0
  93. package/web-ui/build/static/agda-CHEWVCEZ.js +1 -0
  94. package/web-ui/build/static/al-C0otNZjc.js +1 -0
  95. package/web-ui/build/static/angelscript-Co5e7ZdR.js +1 -0
  96. package/web-ui/build/static/antlr4-Dkky4AXR.js +1 -0
  97. package/web-ui/build/static/apache-BJkYIuV-.js +1 -0
  98. package/web-ui/build/static/apacheconf-XLif_lM5.js +1 -0
  99. package/web-ui/build/static/apex-DiKnugSK.js +1 -0
  100. package/web-ui/build/static/apl-R5OItFx8.js +1 -0
  101. package/web-ui/build/static/applescript-D8uiCoXI.js +1 -0
  102. package/web-ui/build/static/applescript-e5KOVzz4.js +1 -0
  103. package/web-ui/build/static/aql-Cvy5hwR1.js +1 -0
  104. package/web-ui/build/static/arcade-0iAjFk8w.js +1 -0
  105. package/web-ui/build/static/arduino-BJeuGqAT.js +1 -0
  106. package/web-ui/build/static/arduino-QJJjnM1j.js +1 -0
  107. package/web-ui/build/static/arff-C-i_E_-B.js +1 -0
  108. package/web-ui/build/static/armasm-ukFQKHGn.js +1 -0
  109. package/web-ui/build/static/asciidoc-B49qqHJJ.js +1 -0
  110. package/web-ui/build/static/asciidoc-Nkm1Ylrd.js +1 -0
  111. package/web-ui/build/static/asm6502-CMiM3nZs.js +1 -0
  112. package/web-ui/build/static/asmatmel-DG9XzIBf.js +1 -0
  113. package/web-ui/build/static/aspectj-DjRutrRk.js +1 -0
  114. package/web-ui/build/static/aspnet-DCNVRVi9.js +1 -0
  115. package/web-ui/build/static/autohotkey-C7eyvps0.js +1 -0
  116. package/web-ui/build/static/autohotkey-CiaZi-WO.js +1 -0
  117. package/web-ui/build/static/autoit-CaKUQkux.js +1 -0
  118. package/web-ui/build/static/autoit-D-CUHQgt.js +1 -0
  119. package/web-ui/build/static/avisynth-DFP3h4zu.js +1 -0
  120. package/web-ui/build/static/avrasm-BqvUj3fg.js +1 -0
  121. package/web-ui/build/static/avro-idl-D3l0ptuQ.js +1 -0
  122. package/web-ui/build/static/awk-BmDxAZFj.js +1 -0
  123. package/web-ui/build/static/axapta-B424jrgT.js +1 -0
  124. package/web-ui/build/static/bash-CgAffr8Z.js +1 -0
  125. package/web-ui/build/static/bash-D41aILLG.js +1 -0
  126. package/web-ui/build/static/basic-5DFTo35K.js +1 -0
  127. package/web-ui/build/static/basic-BONYG7D2.js +1 -0
  128. package/web-ui/build/static/batch-BnaDGMwS.js +1 -0
  129. package/web-ui/build/static/bbcode-Daujj4hU.js +1 -0
  130. package/web-ui/build/static/bicep-CXidcIK5.js +1 -0
  131. package/web-ui/build/static/birb-CcOzsnqB.js +1 -0
  132. package/web-ui/build/static/bison-rq0w5JFF.js +1 -0
  133. package/web-ui/build/static/bnf-C4uK1dK8.js +1 -0
  134. package/web-ui/build/static/bnf-CvXZ9crt.js +1 -0
  135. package/web-ui/build/static/brainfuck-B5Ezdg2y.js +1 -0
  136. package/web-ui/build/static/brainfuck-BZaTfZ97.js +1 -0
  137. package/web-ui/build/static/brightscript-D_2WBVxt.js +1 -0
  138. package/web-ui/build/static/bro-BD7GT6j_.js +1 -0
  139. package/web-ui/build/static/bsl-Bh-qcQ3w.js +1 -0
  140. package/web-ui/build/static/c-DNmZz1iT.js +1 -0
  141. package/web-ui/build/static/c-dUrSOcB2.js +1 -0
  142. package/web-ui/build/static/c-like-DfzKY8Uu.js +1 -0
  143. package/web-ui/build/static/cal-DgrFs4te.js +1 -0
  144. package/web-ui/build/static/capnproto-BxFR2k8w.js +1 -0
  145. package/web-ui/build/static/ceylon-B2Q7BIPM.js +1 -0
  146. package/web-ui/build/static/cfscript-DeaR8rww.js +1 -0
  147. package/web-ui/build/static/chaiscript-BeBIoz6b.js +1 -0
  148. package/web-ui/build/static/cil-YHiHOb4c.js +1 -0
  149. package/web-ui/build/static/clean-BgOl_0cN.js +1 -0
  150. package/web-ui/build/static/clojure-BlgOza7C.js +1 -0
  151. package/web-ui/build/static/clojure-PlKRYx3q.js +1 -0
  152. package/web-ui/build/static/clojure-repl-Dv2_THNB.js +1 -0
  153. package/web-ui/build/static/cmake-Ccf43gsy.js +1 -0
  154. package/web-ui/build/static/cmake-Dah_b5tK.js +1 -0
  155. package/web-ui/build/static/cobol-o9YRDzXA.js +1 -0
  156. package/web-ui/build/static/coffeescript-DTYLvxG9.js +1 -0
  157. package/web-ui/build/static/coffeescript-Dm4UcexP.js +1 -0
  158. package/web-ui/build/static/concurnas-1OxY7nFV.js +1 -0
  159. package/web-ui/build/static/coq-CvJBSoWT.js +1 -0
  160. package/web-ui/build/static/coq-DPZunybQ.js +1 -0
  161. package/web-ui/build/static/cos-BBstQgB4.js +1 -0
  162. package/web-ui/build/static/cpp-BR1pa5Wr.js +1 -0
  163. package/web-ui/build/static/cpp-C-_tTuKh.js +1 -0
  164. package/web-ui/build/static/crmsh-BIme7ihG.js +1 -0
  165. package/web-ui/build/static/crystal-C2hlJxaB.js +1 -0
  166. package/web-ui/build/static/crystal-Ca6D0fV7.js +1 -0
  167. package/web-ui/build/static/csharp-DGvdwvDH.js +1 -0
  168. package/web-ui/build/static/csharp-DbAjVltn.js +1 -0
  169. package/web-ui/build/static/cshtml-DVC84JPa.js +1 -0
  170. package/web-ui/build/static/csp-BawtG83z.js +1 -0
  171. package/web-ui/build/static/csp-BlaoxdTK.js +1 -0
  172. package/web-ui/build/static/css-52oqss7r.js +1 -0
  173. package/web-ui/build/static/css-extras-BoTVw2IW.js +1 -0
  174. package/web-ui/build/static/csv-nXBSv5kK.js +1 -0
  175. package/web-ui/build/static/cypher-WuesoPm2.js +1 -0
  176. package/web-ui/build/static/d-BmmTjwiV.js +1 -0
  177. package/web-ui/build/static/d-BwHf5A8R.js +1 -0
  178. package/web-ui/build/static/dart-BVZTRb8b.js +1 -0
  179. package/web-ui/build/static/dart-CbWzIBpX.js +1 -0
  180. package/web-ui/build/static/dataweave-qi_fpjJR.js +1 -0
  181. package/web-ui/build/static/dax-BpP02TD3.js +1 -0
  182. package/web-ui/build/static/delphi-TK0E0gLN.js +1 -0
  183. package/web-ui/build/static/dhall-jyNJwUbo.js +1 -0
  184. package/web-ui/build/static/diff-Dbu90HZq.js +1 -0
  185. package/web-ui/build/static/diff-Df6ezhAq.js +1 -0
  186. package/web-ui/build/static/django-BDy-xiWR.js +1 -0
  187. package/web-ui/build/static/django-CbmnWIX9.js +1 -0
  188. package/web-ui/build/static/dns-D_wmKRHl.js +1 -0
  189. package/web-ui/build/static/dns-zone-file-_1osc1Qk.js +1 -0
  190. package/web-ui/build/static/docker-D62hlkjX.js +1 -0
  191. package/web-ui/build/static/dockerfile-DQ080zHh.js +1 -0
  192. package/web-ui/build/static/dos-B5mA8Wna.js +1 -0
  193. package/web-ui/build/static/dot-D497WUfu.js +1 -0
  194. package/web-ui/build/static/dsconfig-dERMCQVk.js +1 -0
  195. package/web-ui/build/static/dts-DC3ujcbX.js +1 -0
  196. package/web-ui/build/static/dust-Bhm1VBQg.js +1 -0
  197. package/web-ui/build/static/ebnf-1lmwK0bv.js +1 -0
  198. package/web-ui/build/static/ebnf-qzzqKVXL.js +1 -0
  199. package/web-ui/build/static/editorconfig-CCe25wQr.js +1 -0
  200. package/web-ui/build/static/eiffel-BFOXbwEN.js +1 -0
  201. package/web-ui/build/static/ejs-D94vVkGZ.js +1 -0
  202. package/web-ui/build/static/elixir-B2W81YV0.js +1 -0
  203. package/web-ui/build/static/elixir-CD1szlP_.js +1 -0
  204. package/web-ui/build/static/elm-BUJhR-kM.js +1 -0
  205. package/web-ui/build/static/elm-DwLnLHSK.js +1 -0
  206. package/web-ui/build/static/erb-CcokD9Fu.js +1 -0
  207. package/web-ui/build/static/erb-lzhmSBEV.js +1 -0
  208. package/web-ui/build/static/erlang-C0jnu48-.js +1 -0
  209. package/web-ui/build/static/erlang-CrevXBnJ.js +1 -0
  210. package/web-ui/build/static/erlang-repl-CNY6yNoO.js +1 -0
  211. package/web-ui/build/static/etlua-BMO_ICdR.js +1 -0
  212. package/web-ui/build/static/excel-C5PbLrVC.js +1 -0
  213. package/web-ui/build/static/excel-formula-CX4pOnnV.js +1 -0
  214. package/web-ui/build/static/factor-bW3WUpa0.js +1 -0
  215. package/web-ui/build/static/false-CQx6Crbr.js +1 -0
  216. package/web-ui/build/static/firestore-security-rules-DT5oRNdf.js +1 -0
  217. package/web-ui/build/static/fix-C4IWe2LI.js +1 -0
  218. package/web-ui/build/static/flix-hi9-cLwA.js +1 -0
  219. package/web-ui/build/static/flow-CkX6DAhF.js +1 -0
  220. package/web-ui/build/static/fortran-C4rIX-2n.js +1 -0
  221. package/web-ui/build/static/fortran-Dvu3q_x_.js +1 -0
  222. package/web-ui/build/static/fsharp-Bwa1UrRI.js +1 -0
  223. package/web-ui/build/static/fsharp-CvadhLcA.js +1 -0
  224. package/web-ui/build/static/ftl-eFEI11YV.js +1 -0
  225. package/web-ui/build/static/gams-BxGx7deQ.js +1 -0
  226. package/web-ui/build/static/gap-Dcv7bqDd.js +1 -0
  227. package/web-ui/build/static/gauss-CcVoF4l8.js +1 -0
  228. package/web-ui/build/static/gcode-B1dc5sh5.js +1 -0
  229. package/web-ui/build/static/gcode-D5OxRG5t.js +1 -0
  230. package/web-ui/build/static/gdscript-CL-EA1wk.js +1 -0
  231. package/web-ui/build/static/gedcom-BbXrNsr0.js +1 -0
  232. package/web-ui/build/static/gherkin-B2wQMbT2.js +1 -0
  233. package/web-ui/build/static/gherkin-CnL4Y3j1.js +1 -0
  234. package/web-ui/build/static/git-DpdutSM5.js +1 -0
  235. package/web-ui/build/static/glsl-C7sgdZCA.js +1 -0
  236. package/web-ui/build/static/glsl-DVaNsn1Z.js +1 -0
  237. package/web-ui/build/static/gml-B_NppoA4.js +1 -0
  238. package/web-ui/build/static/gml-DFrn75UD.js +1 -0
  239. package/web-ui/build/static/gn-BhTU_aTW.js +1 -0
  240. package/web-ui/build/static/go-DKrUPrfb.js +1 -0
  241. package/web-ui/build/static/go-DLAYIsJl.js +1 -0
  242. package/web-ui/build/static/go-module-BXY6q1Ug.js +1 -0
  243. package/web-ui/build/static/golo-CKxjLRpC.js +1 -0
  244. package/web-ui/build/static/gradle-DN8lsmJj.js +1 -0
  245. package/web-ui/build/static/graphql-CMb_4vdm.js +1 -0
  246. package/web-ui/build/static/groovy-Bhi1VPv7.js +1 -0
  247. package/web-ui/build/static/groovy-D3X3r3EX.js +1 -0
  248. package/web-ui/build/static/haml-CvOCw9lL.js +1 -0
  249. package/web-ui/build/static/haml-DYs0wBJO.js +1 -0
  250. package/web-ui/build/static/handlebars-CLnuKGPm.js +1 -0
  251. package/web-ui/build/static/handlebars-CYGG_M1h.js +1 -0
  252. package/web-ui/build/static/haskell-0Ju0XclD.js +1 -0
  253. package/web-ui/build/static/haskell-CL5jUHSd.js +1 -0
  254. package/web-ui/build/static/haxe-BghRbBtK.js +1 -0
  255. package/web-ui/build/static/haxe-dfL7GzPv.js +1 -0
  256. package/web-ui/build/static/hcl-BZP2QME-.js +1 -0
  257. package/web-ui/build/static/hlsl-Djp0TiCX.js +1 -0
  258. package/web-ui/build/static/hoon-Df5gJVqA.js +1 -0
  259. package/web-ui/build/static/hpkp-Cy-hjB4V.js +1 -0
  260. package/web-ui/build/static/hsp-CntMIMs4.js +1 -0
  261. package/web-ui/build/static/hsts-BNBhETNx.js +1 -0
  262. package/web-ui/build/static/htmlbars-VCCYaDHA.js +1 -0
  263. package/web-ui/build/static/http-7DbskohZ.js +1 -0
  264. package/web-ui/build/static/http-BT5FYFAK.js +1 -0
  265. package/web-ui/build/static/hy-DuGSaK_b.js +1 -0
  266. package/web-ui/build/static/ichigojam-CjvnJmlr.js +1 -0
  267. package/web-ui/build/static/icon-BsBz6XP6.js +1 -0
  268. package/web-ui/build/static/icu-message-format-BEpv_nip.js +1 -0
  269. package/web-ui/build/static/idris-DiXQdMPU.js +1 -0
  270. package/web-ui/build/static/iecst-C9tYEzwP.js +1 -0
  271. package/web-ui/build/static/ignore-DNMpCRPN.js +1 -0
  272. package/web-ui/build/static/index-B-r71gxO.js +1 -0
  273. package/web-ui/build/static/index-CTtNXVAZ.js +1217 -0
  274. package/web-ui/build/static/index-DkBBEGYj.css +1 -0
  275. package/web-ui/build/static/index-PvzceRzr.js +13 -0
  276. package/web-ui/build/static/inform7-D38mj1Ty.js +1 -0
  277. package/web-ui/build/static/inform7-SwIRbrNQ.js +1 -0
  278. package/web-ui/build/static/ini-B9xO6J_m.js +1 -0
  279. package/web-ui/build/static/ini-zcp_esam.js +1 -0
  280. package/web-ui/build/static/io-C-Ay4jvg.js +1 -0
  281. package/web-ui/build/static/irpf90-BYnkitLq.js +1 -0
  282. package/web-ui/build/static/isbl-BYtdwd6v.js +1 -0
  283. package/web-ui/build/static/j-ByZQN5E4.js +1 -0
  284. package/web-ui/build/static/java-BNtb6JWL.js +1 -0
  285. package/web-ui/build/static/java-CQZL3scW.js +1 -0
  286. package/web-ui/build/static/javadoc-BciMZ8jg.js +1 -0
  287. package/web-ui/build/static/javadoclike-07BOTXmy.js +1 -0
  288. package/web-ui/build/static/javascript-CViZlg1q.js +1 -0
  289. package/web-ui/build/static/javastacktrace-bWyAK0up.js +1 -0
  290. package/web-ui/build/static/jboss-cli-hz5boSGB.js +1 -0
  291. package/web-ui/build/static/jexl-DdIINSXT.js +1 -0
  292. package/web-ui/build/static/jolie-CQnDX-f0.js +1 -0
  293. package/web-ui/build/static/jq-BzhF0CHG.js +1 -0
  294. package/web-ui/build/static/js-extras-jizEtT14.js +1 -0
  295. package/web-ui/build/static/js-templates-Dr1BqLAt.js +1 -0
  296. package/web-ui/build/static/jsdoc-CI-GPi6r.js +1 -0
  297. package/web-ui/build/static/json-2eDPxnHO.js +1 -0
  298. package/web-ui/build/static/json-BBqUMOAQ.js +1 -0
  299. package/web-ui/build/static/json5-CeIoln-Y.js +1 -0
  300. package/web-ui/build/static/jsonp-DWe9tbr2.js +1 -0
  301. package/web-ui/build/static/jsstacktrace-aE-go9tq.js +1 -0
  302. package/web-ui/build/static/jsx-BTXEPQYI.js +1 -0
  303. package/web-ui/build/static/julia-4VeOirXa.js +1 -0
  304. package/web-ui/build/static/julia-Da6yHEfz.js +1 -0
  305. package/web-ui/build/static/julia-repl-CFrizGkE.js +1 -0
  306. package/web-ui/build/static/keepalived-39SDM4j5.js +1 -0
  307. package/web-ui/build/static/keyman-DU5yOLYr.js +1 -0
  308. package/web-ui/build/static/kotlin-DJoqh3HG.js +1 -0
  309. package/web-ui/build/static/kotlin-DsKd3r_L.js +1 -0
  310. package/web-ui/build/static/kumir-CO96hby4.js +1 -0
  311. package/web-ui/build/static/kusto-DyuMf8l-.js +1 -0
  312. package/web-ui/build/static/lasso-BiPmQTXQ.js +1 -0
  313. package/web-ui/build/static/latex-Bd1ef5fi.js +1 -0
  314. package/web-ui/build/static/latex-DUrYkmWb.js +1 -0
  315. package/web-ui/build/static/latte-BSD-hpi5.js +1 -0
  316. package/web-ui/build/static/ldif-1ZMSg0qI.js +1 -0
  317. package/web-ui/build/static/leaf-Cg0eq01F.js +1 -0
  318. package/web-ui/build/static/less-BKcd1_xh.js +1 -0
  319. package/web-ui/build/static/less-SB5bcusC.js +1 -0
  320. package/web-ui/build/static/lilypond-BX_kuAqT.js +1 -0
  321. package/web-ui/build/static/liquid-C337T5bt.js +1 -0
  322. package/web-ui/build/static/lisp-B_bJRelF.js +1 -0
  323. package/web-ui/build/static/lisp-Du04Vdmx.js +1 -0
  324. package/web-ui/build/static/livecodeserver-BOkA9fV6.js +1 -0
  325. package/web-ui/build/static/livescript-DkMTCCBM.js +1 -0
  326. package/web-ui/build/static/livescript-rTaLq5oP.js +1 -0
  327. package/web-ui/build/static/llvm-BrBlvl5p.js +1 -0
  328. package/web-ui/build/static/llvm-DQbygw7z.js +1 -0
  329. package/web-ui/build/static/log-DoAzOt8c.js +1 -0
  330. package/web-ui/build/static/lolcode-DnB7KhRR.js +1 -0
  331. package/web-ui/build/static/lsl-DpzE7F5A.js +1 -0
  332. package/web-ui/build/static/lua-CIceROsO.js +1 -0
  333. package/web-ui/build/static/lua-DhnvJuMn.js +1 -0
  334. package/web-ui/build/static/magma-BwjzpKxi.js +1 -0
  335. package/web-ui/build/static/makefile-D10Y62dl.js +1 -0
  336. package/web-ui/build/static/makefile-esgkquGi.js +1 -0
  337. package/web-ui/build/static/markdown-B-Y7Y0Nn.js +1 -0
  338. package/web-ui/build/static/markdown-Cv3Onm-Q.js +1 -0
  339. package/web-ui/build/static/markup-templating-B1-9WWYa.js +1 -0
  340. package/web-ui/build/static/mathematica-gSyKdw2h.js +1 -0
  341. package/web-ui/build/static/matlab-6i1uXuBx.js +1 -0
  342. package/web-ui/build/static/matlab-CqcSZ1d9.js +1 -0
  343. package/web-ui/build/static/maxima-Bc-OnIOQ.js +1 -0
  344. package/web-ui/build/static/maxscript-Bce44o6c.js +1 -0
  345. package/web-ui/build/static/mel-0Jk3y-vw.js +1 -0
  346. package/web-ui/build/static/mel-DmA_8WPg.js +1 -0
  347. package/web-ui/build/static/mercury-DNdP1u-O.js +1 -0
  348. package/web-ui/build/static/mermaid-DrLkSIIb.js +1 -0
  349. package/web-ui/build/static/mipsasm-BIQVs3Ff.js +1 -0
  350. package/web-ui/build/static/mizar-BD5ZD_Rk.js +1 -0
  351. package/web-ui/build/static/mizar-DThX8Mdy.js +1 -0
  352. package/web-ui/build/static/mojolicious-Bra-ClwJ.js +1 -0
  353. package/web-ui/build/static/mongodb-DirByEEg.js +1 -0
  354. package/web-ui/build/static/monkey-C-Pvu43G.js +1 -0
  355. package/web-ui/build/static/monkey-n4IFmaA7.js +1 -0
  356. package/web-ui/build/static/moonscript-B1DM34lp.js +1 -0
  357. package/web-ui/build/static/moonscript-B82JBytX.js +1 -0
  358. package/web-ui/build/static/n1ql-C46iq3Hh.js +1 -0
  359. package/web-ui/build/static/n1ql-DOs3gJQo.js +1 -0
  360. package/web-ui/build/static/n4js-CPYgal3G.js +1 -0
  361. package/web-ui/build/static/nand2tetris-hdl-BhlUIq7M.js +1 -0
  362. package/web-ui/build/static/naniscript-D1YZXYcf.js +1 -0
  363. package/web-ui/build/static/nasm-2-TtCBo4.js +1 -0
  364. package/web-ui/build/static/neon-BzoXMDea.js +1 -0
  365. package/web-ui/build/static/nevod-DW_87wHj.js +1 -0
  366. package/web-ui/build/static/nginx-BgieYUhk.js +1 -0
  367. package/web-ui/build/static/nginx-DW0RVJbs.js +1 -0
  368. package/web-ui/build/static/nim-BbTa7YZN.js +1 -0
  369. package/web-ui/build/static/nim-VdXk3QT9.js +1 -0
  370. package/web-ui/build/static/nix-3tNNprEI.js +1 -0
  371. package/web-ui/build/static/nix-BDghlfzh.js +1 -0
  372. package/web-ui/build/static/node-repl-BBLv3tyt.js +1 -0
  373. package/web-ui/build/static/nsis-DxjfnSO8.js +1 -0
  374. package/web-ui/build/static/nsis-FY5xiiar.js +1 -0
  375. package/web-ui/build/static/objectivec-CXhf_sp_.js +1 -0
  376. package/web-ui/build/static/objectivec-DcRKjWcd.js +1 -0
  377. package/web-ui/build/static/ocaml-BLRL6Zro.js +1 -0
  378. package/web-ui/build/static/ocaml-C4S4QQtS.js +1 -0
  379. package/web-ui/build/static/opencl-ruEAYetM.js +1 -0
  380. package/web-ui/build/static/openqasm-D6r_FwIh.js +1 -0
  381. package/web-ui/build/static/openscad-BEPjoj_N.js +1 -0
  382. package/web-ui/build/static/oxygene-A61yc5Or.js +1 -0
  383. package/web-ui/build/static/oz-DICidCTs.js +1 -0
  384. package/web-ui/build/static/parigp-MjTNwy2s.js +1 -0
  385. package/web-ui/build/static/parser-DmI7lg_r.js +1 -0
  386. package/web-ui/build/static/parser3-Bv9kXAib.js +1 -0
  387. package/web-ui/build/static/pascal-B23PBLTj.js +1 -0
  388. package/web-ui/build/static/pascaligo-CPIJtX2C.js +1 -0
  389. package/web-ui/build/static/pcaxis-Bsj_6x8j.js +1 -0
  390. package/web-ui/build/static/peoplecode-VvQbMjsD.js +1 -0
  391. package/web-ui/build/static/perl-Cr6Y9-hl.js +1 -0
  392. package/web-ui/build/static/perl-D37oTJip.js +1 -0
  393. package/web-ui/build/static/pf-BKHaWcGm.js +1 -0
  394. package/web-ui/build/static/pgsql-ChusgWw2.js +1 -0
  395. package/web-ui/build/static/php-3Qr4hNV1.js +1 -0
  396. package/web-ui/build/static/php-CgxeEh4Y.js +1 -0
  397. package/web-ui/build/static/php-extras-DeLqwT6H.js +1 -0
  398. package/web-ui/build/static/php-template-DcOJxuIf.js +1 -0
  399. package/web-ui/build/static/phpdoc-amFph5Ax.js +1 -0
  400. package/web-ui/build/static/plaintext-mqBcO1hG.js +1 -0
  401. package/web-ui/build/static/plsql-ioyqfxP7.js +1 -0
  402. package/web-ui/build/static/pony-nxjy8Qot.js +1 -0
  403. package/web-ui/build/static/powerquery-Ci_Fxyg8.js +1 -0
  404. package/web-ui/build/static/powershell-CB_GgRqr.js +1 -0
  405. package/web-ui/build/static/powershell-au4fYIm7.js +1 -0
  406. package/web-ui/build/static/processing-Bkd3f-Wz.js +1 -0
  407. package/web-ui/build/static/processing-PgCPZm30.js +1 -0
  408. package/web-ui/build/static/profile-C2GBY6C9.js +1 -0
  409. package/web-ui/build/static/prolog-BRjYwjIO.js +1 -0
  410. package/web-ui/build/static/prolog-BheGlH8Q.js +1 -0
  411. package/web-ui/build/static/promql-CtCmTKys.js +1 -0
  412. package/web-ui/build/static/properties-BpLqVZha.js +1 -0
  413. package/web-ui/build/static/properties-UQxavHUY.js +1 -0
  414. package/web-ui/build/static/protobuf-BSuul6Uw.js +1 -0
  415. package/web-ui/build/static/protobuf-CLRi8VTE.js +1 -0
  416. package/web-ui/build/static/psl-CJsJilqO.js +1 -0
  417. package/web-ui/build/static/pug-5BY6sdv1.js +1 -0
  418. package/web-ui/build/static/puppet-DBg45gHV.js +1 -0
  419. package/web-ui/build/static/puppet-DPANCbOj.js +1 -0
  420. package/web-ui/build/static/pure-Cn4p-7Bj.js +1 -0
  421. package/web-ui/build/static/purebasic-CoXbIzZJ.js +1 -0
  422. package/web-ui/build/static/purebasic-DZ_eLoUV.js +1 -0
  423. package/web-ui/build/static/purescript-B98GoUb_.js +1 -0
  424. package/web-ui/build/static/python-B-Lm1OME.js +1 -0
  425. package/web-ui/build/static/python-C_ApFGS1.js +1 -0
  426. package/web-ui/build/static/python-repl-CJW5_RON.js +1 -0
  427. package/web-ui/build/static/q-BB2BYhxG.js +1 -0
  428. package/web-ui/build/static/q-DVqo_ScG.js +1 -0
  429. package/web-ui/build/static/qml-Co-8g096.js +1 -0
  430. package/web-ui/build/static/qml-Du0WFcoy.js +1 -0
  431. package/web-ui/build/static/qore-C6XBzy3U.js +1 -0
  432. package/web-ui/build/static/qsharp-BCMklAuq.js +1 -0
  433. package/web-ui/build/static/r-B5CGUQwN.js +1 -0
  434. package/web-ui/build/static/r-Dxhot-za.js +1 -0
  435. package/web-ui/build/static/racket-C0dCdrKh.js +1 -0
  436. package/web-ui/build/static/reason-DGJ1fFJs.js +1 -0
  437. package/web-ui/build/static/reasonml-gt_AvBg7.js +1 -0
  438. package/web-ui/build/static/regex-B5iNH8MZ.js +1 -0
  439. package/web-ui/build/static/rego-hfPajYet.js +1 -0
  440. package/web-ui/build/static/renpy-BkG5aM4I.js +1 -0
  441. package/web-ui/build/static/rest-C4uwtrF8.js +1 -0
  442. package/web-ui/build/static/rib-D32ew8Y7.js +1 -0
  443. package/web-ui/build/static/rip-BIEbWzxe.js +1 -0
  444. package/web-ui/build/static/roboconf-CMN8BoHf.js +1 -0
  445. package/web-ui/build/static/roboconf-GVMh3ioj.js +1 -0
  446. package/web-ui/build/static/robotframework-CUQybJQ9.js +1 -0
  447. package/web-ui/build/static/routeros-DUEdLmuc.js +1 -0
  448. package/web-ui/build/static/rsl-BsAePIwQ.js +1 -0
  449. package/web-ui/build/static/ruby-CZMMjJFw.js +1 -0
  450. package/web-ui/build/static/ruby-WOVZyoXO.js +1 -0
  451. package/web-ui/build/static/ruleslanguage-xV-HszUl.js +1 -0
  452. package/web-ui/build/static/rust-Da9GRxLz.js +1 -0
  453. package/web-ui/build/static/rust-uCND428m.js +1 -0
  454. package/web-ui/build/static/sas-BW15NPzf.js +1 -0
  455. package/web-ui/build/static/sas-DCx9gext.js +1 -0
  456. package/web-ui/build/static/sass-BMD7eETo.js +1 -0
  457. package/web-ui/build/static/scala-0wnxLTlF.js +1 -0
  458. package/web-ui/build/static/scala-D3Hk-q5-.js +1 -0
  459. package/web-ui/build/static/scheme-Ci9QOUcD.js +1 -0
  460. package/web-ui/build/static/scheme-CtqjB_HN.js +1 -0
  461. package/web-ui/build/static/scilab-CnITQd23.js +1 -0
  462. package/web-ui/build/static/scss-DCceV6xw.js +1 -0
  463. package/web-ui/build/static/scss-N5EuPQOS.js +1 -0
  464. package/web-ui/build/static/shell-BegJTton.js +1 -0
  465. package/web-ui/build/static/shell-session-BHBoosfJ.js +1 -0
  466. package/web-ui/build/static/smali-CoHePNQf.js +1 -0
  467. package/web-ui/build/static/smali-D64W1f0Y.js +1 -0
  468. package/web-ui/build/static/smalltalk-CagI-Ky8.js +1 -0
  469. package/web-ui/build/static/smalltalk-DHLuWDjp.js +1 -0
  470. package/web-ui/build/static/smarty-CSS2XBuu.js +1 -0
  471. package/web-ui/build/static/sml-D8Oyp9xr.js +1 -0
  472. package/web-ui/build/static/sml-DvC_VDmX.js +1 -0
  473. package/web-ui/build/static/solidity-DVkeulrL.js +1 -0
  474. package/web-ui/build/static/solution-file-Bd7qWzoo.js +1 -0
  475. package/web-ui/build/static/soy-BRSlVWf7.js +1 -0
  476. package/web-ui/build/static/sparql-DNnCQmqM.js +1 -0
  477. package/web-ui/build/static/splunk-spl-DXCDUv2Y.js +1 -0
  478. package/web-ui/build/static/sqf-C_IKzP5b.js +1 -0
  479. package/web-ui/build/static/sqf-DBqlUGoG.js +1 -0
  480. package/web-ui/build/static/sql-Dt3ZutCc.js +1 -0
  481. package/web-ui/build/static/sql-q0UMLqb7.js +1 -0
  482. package/web-ui/build/static/sql_more-DAuY5p3F.js +1 -0
  483. package/web-ui/build/static/squirrel-CgQZeaNT.js +1 -0
  484. package/web-ui/build/static/stan-D5kYsid7.js +1 -0
  485. package/web-ui/build/static/stan-JSHToKMA.js +1 -0
  486. package/web-ui/build/static/stata-DRVhVjVb.js +1 -0
  487. package/web-ui/build/static/step21-C7h5ssgs.js +1 -0
  488. package/web-ui/build/static/stylus-BXIDNFUe.js +1 -0
  489. package/web-ui/build/static/stylus-CyMBrStz.js +1 -0
  490. package/web-ui/build/static/subunit-Lbpuvy4t.js +1 -0
  491. package/web-ui/build/static/swift-BCxWOc8n.js +1 -0
  492. package/web-ui/build/static/swift-B_YEL6eF.js +1 -0
  493. package/web-ui/build/static/systemd-_zWfs8U5.js +1 -0
  494. package/web-ui/build/static/t4-cs-BCiVX6dp.js +1 -0
  495. package/web-ui/build/static/t4-templating-CDm61rWh.js +1 -0
  496. package/web-ui/build/static/t4-vb-OO2oZZrL.js +1 -0
  497. package/web-ui/build/static/taggerscript-CkXxiITO.js +1 -0
  498. package/web-ui/build/static/tap-C612JPhJ.js +1 -0
  499. package/web-ui/build/static/tap-J-zR66jL.js +1 -0
  500. package/web-ui/build/static/tcl-DIGan5K8.js +1 -0
  501. package/web-ui/build/static/tcl-SFVWFwbb.js +1 -0
  502. package/web-ui/build/static/textile-D0WxA5g8.js +1 -0
  503. package/web-ui/build/static/thrift-jboo4tJl.js +1 -0
  504. package/web-ui/build/static/toml-DIK32ROb.js +1 -0
  505. package/web-ui/build/static/tp-Bhs1iGD3.js +1 -0
  506. package/web-ui/build/static/tremor-4d_juLiN.js +1 -0
  507. package/web-ui/build/static/tsx-hEN3qQzd.js +1 -0
  508. package/web-ui/build/static/tt2-WU6EuPNO.js +1 -0
  509. package/web-ui/build/static/turtle-CUM3xwNI.js +1 -0
  510. package/web-ui/build/static/twig-B9JwTKv9.js +1 -0
  511. package/web-ui/build/static/twig-Crv6BtK7.js +1 -0
  512. package/web-ui/build/static/typescript-BmabW_ur.js +1 -0
  513. package/web-ui/build/static/typescript-oMKx2dph.js +1 -0
  514. package/web-ui/build/static/typoscript-X48MNTeK.js +1 -0
  515. package/web-ui/build/static/unrealscript-qnu9Ogmz.js +1 -0
  516. package/web-ui/build/static/uorazor-BicTvjGt.js +1 -0
  517. package/web-ui/build/static/uri-CyRoMB-u.js +1 -0
  518. package/web-ui/build/static/v-BDM6ZJR7.js +1 -0
  519. package/web-ui/build/static/vala-BWCf7DTx.js +1 -0
  520. package/web-ui/build/static/vala-COL5roWV.js +1 -0
  521. package/web-ui/build/static/vbnet-BHPgkiip.js +1 -0
  522. package/web-ui/build/static/vbnet-BadWmTKs.js +1 -0
  523. package/web-ui/build/static/vbscript-BfUpIAaV.js +1 -0
  524. package/web-ui/build/static/vbscript-html-BBR6zcvV.js +1 -0
  525. package/web-ui/build/static/velocity-k4gGPuiP.js +1 -0
  526. package/web-ui/build/static/verilog-BoNroxW8.js +1 -0
  527. package/web-ui/build/static/verilog-C7cplLIi.js +1 -0
  528. package/web-ui/build/static/vhdl-BrKkx69g.js +1 -0
  529. package/web-ui/build/static/vhdl-CWacsAXR.js +1 -0
  530. package/web-ui/build/static/vim-BcdueaEC.js +1 -0
  531. package/web-ui/build/static/vim-BwsUolG_.js +1 -0
  532. package/web-ui/build/static/visual-basic-DTXlX5HN.js +1 -0
  533. package/web-ui/build/static/warpscript-2w0_2KsB.js +1 -0
  534. package/web-ui/build/static/wasm-BPaXQO-A.js +1 -0
  535. package/web-ui/build/static/web-idl-BoCTFQod.js +1 -0
  536. package/web-ui/build/static/wiki-BkkCi9wm.js +1 -0
  537. package/web-ui/build/static/wolfram-CvRNTaAX.js +1 -0
  538. package/web-ui/build/static/wren-Bz8Smtz-.js +1 -0
  539. package/web-ui/build/static/x86asm-BM83B0N_.js +1 -0
  540. package/web-ui/build/static/xeora-BjuDukl7.js +1 -0
  541. package/web-ui/build/static/xl-ByiuKWwm.js +1 -0
  542. package/web-ui/build/static/xml-Dut2p53G.js +1 -0
  543. package/web-ui/build/static/xml-doc-CxgwiuaA.js +1 -0
  544. package/web-ui/build/static/xojo-CBqUB8JI.js +1 -0
  545. package/web-ui/build/static/xquery-D-agM4jx.js +1 -0
  546. package/web-ui/build/static/xquery-DL_eetrQ.js +1 -0
  547. package/web-ui/build/static/yaml-DZ7HVZSe.js +1 -0
  548. package/web-ui/build/static/yaml-DatJAv7_.js +1 -0
  549. package/web-ui/build/static/yang-D0nrKE-r.js +1 -0
  550. package/web-ui/build/static/zephir--M2g15-k.js +1 -0
  551. package/web-ui/build/static/zig-CK6rUH8E.js +1 -0
  552. package/web-ui/build/static/1c-BoCdC5pC.js +0 -1
  553. package/web-ui/build/static/abap-D7A92M1K.js +0 -1
  554. package/web-ui/build/static/abnf-DIcpJ99N.js +0 -1
  555. package/web-ui/build/static/abnf-d4I9yABN.js +0 -1
  556. package/web-ui/build/static/accesslog-D_Ksv5Fi.js +0 -1
  557. package/web-ui/build/static/actionscript-CMJI1an7.js +0 -1
  558. package/web-ui/build/static/actionscript-CNcWu4a1.js +0 -1
  559. package/web-ui/build/static/ada-BIqOBKro.js +0 -1
  560. package/web-ui/build/static/ada-BaTkJMdz.js +0 -1
  561. package/web-ui/build/static/agda-DmRdGgvt.js +0 -1
  562. package/web-ui/build/static/al-g8BvIfOt.js +0 -1
  563. package/web-ui/build/static/angelscript-BGxc0B7l.js +0 -1
  564. package/web-ui/build/static/antlr4-Da7ff6-m.js +0 -1
  565. package/web-ui/build/static/apache-Bibp-dVJ.js +0 -1
  566. package/web-ui/build/static/apacheconf-VzeL8tYb.js +0 -1
  567. package/web-ui/build/static/apex-DUaOCea3.js +0 -1
  568. package/web-ui/build/static/apl-BpwvFE2V.js +0 -1
  569. package/web-ui/build/static/applescript-5YKSWwV1.js +0 -1
  570. package/web-ui/build/static/applescript-BHqj5bpe.js +0 -1
  571. package/web-ui/build/static/aql-B0Wx_3hH.js +0 -1
  572. package/web-ui/build/static/arcade-CR8KkII1.js +0 -1
  573. package/web-ui/build/static/arduino-CYx5u85C.js +0 -1
  574. package/web-ui/build/static/arduino-ClVU2zro.js +0 -1
  575. package/web-ui/build/static/arff-kutIH4CC.js +0 -1
  576. package/web-ui/build/static/armasm-DBm1lGrc.js +0 -1
  577. package/web-ui/build/static/asciidoc-Cl02VMGf.js +0 -1
  578. package/web-ui/build/static/asciidoc-MMFYRqre.js +0 -1
  579. package/web-ui/build/static/asm6502-DPVMGaHn.js +0 -1
  580. package/web-ui/build/static/asmatmel-Dz4vtZ11.js +0 -1
  581. package/web-ui/build/static/aspectj-BZidGBlr.js +0 -1
  582. package/web-ui/build/static/aspnet-C2mo9iee.js +0 -1
  583. package/web-ui/build/static/autohotkey-Bx83oFMW.js +0 -1
  584. package/web-ui/build/static/autohotkey-DciFl6K5.js +0 -1
  585. package/web-ui/build/static/autoit-TVKWI5bu.js +0 -1
  586. package/web-ui/build/static/autoit-oORW7mrd.js +0 -1
  587. package/web-ui/build/static/avisynth-D_5uOtxP.js +0 -1
  588. package/web-ui/build/static/avrasm-D22JmbLm.js +0 -1
  589. package/web-ui/build/static/avro-idl-CtTuANGZ.js +0 -1
  590. package/web-ui/build/static/awk-Bnez22eR.js +0 -1
  591. package/web-ui/build/static/axapta-eqcr7C2-.js +0 -1
  592. package/web-ui/build/static/bash-D3XWHCZZ.js +0 -1
  593. package/web-ui/build/static/bash-px0MqVxE.js +0 -1
  594. package/web-ui/build/static/basic-BWOdgKLg.js +0 -1
  595. package/web-ui/build/static/basic-C7PK4wVg.js +0 -1
  596. package/web-ui/build/static/batch-CFeuSY9D.js +0 -1
  597. package/web-ui/build/static/bbcode-CRC0UNOS.js +0 -1
  598. package/web-ui/build/static/bicep-C18w8d6Z.js +0 -1
  599. package/web-ui/build/static/birb-DPiF4fwX.js +0 -1
  600. package/web-ui/build/static/bison-C1RWPaLl.js +0 -1
  601. package/web-ui/build/static/bnf-BelSXhsr.js +0 -1
  602. package/web-ui/build/static/bnf-D_m4SZuc.js +0 -1
  603. package/web-ui/build/static/brainfuck-Ci7P0POq.js +0 -1
  604. package/web-ui/build/static/brainfuck-DIrW6_96.js +0 -1
  605. package/web-ui/build/static/brightscript-4XgpA0OQ.js +0 -1
  606. package/web-ui/build/static/bro-4kAMStb2.js +0 -1
  607. package/web-ui/build/static/bsl-CleVjH1I.js +0 -1
  608. package/web-ui/build/static/c-Ct3AAwH6.js +0 -1
  609. package/web-ui/build/static/c-EiJrAzIQ.js +0 -1
  610. package/web-ui/build/static/c-like-B361rHmz.js +0 -1
  611. package/web-ui/build/static/cal-BZ3Pr4JI.js +0 -1
  612. package/web-ui/build/static/capnproto-LmwOdJJp.js +0 -1
  613. package/web-ui/build/static/ceylon-CKAfIFzx.js +0 -1
  614. package/web-ui/build/static/cfscript-Cms4z16U.js +0 -1
  615. package/web-ui/build/static/chaiscript-DKxRiUyN.js +0 -1
  616. package/web-ui/build/static/cil-C6rGhwce.js +0 -1
  617. package/web-ui/build/static/clean-DmpXs6RN.js +0 -1
  618. package/web-ui/build/static/clojure-DRYxiF9s.js +0 -1
  619. package/web-ui/build/static/clojure-DTjXEJCq.js +0 -1
  620. package/web-ui/build/static/clojure-repl-C1qlAUnK.js +0 -1
  621. package/web-ui/build/static/cmake-DtUokafC.js +0 -1
  622. package/web-ui/build/static/cmake-_WqF1fG8.js +0 -1
  623. package/web-ui/build/static/cobol-D2Q0IMuT.js +0 -1
  624. package/web-ui/build/static/coffeescript-MRThzdTU.js +0 -1
  625. package/web-ui/build/static/coffeescript-OHOpkJvb.js +0 -1
  626. package/web-ui/build/static/concurnas-CVGat9IA.js +0 -1
  627. package/web-ui/build/static/coq-CB_bM4lt.js +0 -1
  628. package/web-ui/build/static/coq-WNK38Cqz.js +0 -1
  629. package/web-ui/build/static/cos-CNa5GVxa.js +0 -1
  630. package/web-ui/build/static/cpp-D-9lHx0_.js +0 -1
  631. package/web-ui/build/static/cpp-DRvL1yaA.js +0 -1
  632. package/web-ui/build/static/crmsh-evnPMxnd.js +0 -1
  633. package/web-ui/build/static/crystal-RGhNrgnC.js +0 -1
  634. package/web-ui/build/static/crystal-yrBjXjEh.js +0 -1
  635. package/web-ui/build/static/csharp-Dr7sLtl1.js +0 -1
  636. package/web-ui/build/static/csharp-zNVQxjuC.js +0 -1
  637. package/web-ui/build/static/cshtml-CoiK-7Bu.js +0 -1
  638. package/web-ui/build/static/csp-Bhgq86EB.js +0 -1
  639. package/web-ui/build/static/csp-C20UcGAL.js +0 -1
  640. package/web-ui/build/static/css-D1vlrRV2.js +0 -1
  641. package/web-ui/build/static/css-extras-DVSAYMbv.js +0 -1
  642. package/web-ui/build/static/csv-BgR9D8jG.js +0 -1
  643. package/web-ui/build/static/cypher-Dxehyj6Y.js +0 -1
  644. package/web-ui/build/static/d-B-Se39n2.js +0 -1
  645. package/web-ui/build/static/d-Cr4d56op.js +0 -1
  646. package/web-ui/build/static/dart-BBqlOFkR.js +0 -1
  647. package/web-ui/build/static/dart-GRD7MWem.js +0 -1
  648. package/web-ui/build/static/dataweave-BK-Tahkw.js +0 -1
  649. package/web-ui/build/static/dax-pTr9GVoe.js +0 -1
  650. package/web-ui/build/static/delphi-CbwSNmp4.js +0 -1
  651. package/web-ui/build/static/dhall-CuFqRXr6.js +0 -1
  652. package/web-ui/build/static/diff-CK8Fq88e.js +0 -1
  653. package/web-ui/build/static/diff-CWbUTU-C.js +0 -1
  654. package/web-ui/build/static/django-DWaEPdP6.js +0 -1
  655. package/web-ui/build/static/django-TkEFpAOO.js +0 -1
  656. package/web-ui/build/static/dns-DKpFJlA0.js +0 -1
  657. package/web-ui/build/static/dns-zone-file-BIsmZEMf.js +0 -1
  658. package/web-ui/build/static/docker-DUavAYf7.js +0 -1
  659. package/web-ui/build/static/dockerfile-YnavjTIo.js +0 -1
  660. package/web-ui/build/static/dos-Dv3Qr-Oo.js +0 -1
  661. package/web-ui/build/static/dot-BtIPbx7t.js +0 -1
  662. package/web-ui/build/static/dsconfig-CEgd9-kI.js +0 -1
  663. package/web-ui/build/static/dts-BztZn8T6.js +0 -1
  664. package/web-ui/build/static/dust-B-527Hc0.js +0 -1
  665. package/web-ui/build/static/ebnf-CH_nnNi5.js +0 -1
  666. package/web-ui/build/static/ebnf-CuBjcj0j.js +0 -1
  667. package/web-ui/build/static/editorconfig-CA9KaQ0w.js +0 -1
  668. package/web-ui/build/static/eiffel-DVYJwwQw.js +0 -1
  669. package/web-ui/build/static/ejs-C2LKgDYE.js +0 -1
  670. package/web-ui/build/static/elixir-DVXGkbnw.js +0 -1
  671. package/web-ui/build/static/elixir-meJ_qqx4.js +0 -1
  672. package/web-ui/build/static/elm-C5sYS5Cb.js +0 -1
  673. package/web-ui/build/static/elm-Dj443pWY.js +0 -1
  674. package/web-ui/build/static/erb-CAj5yksQ.js +0 -1
  675. package/web-ui/build/static/erb-CcUB2tMd.js +0 -1
  676. package/web-ui/build/static/erlang-JusKooAX.js +0 -1
  677. package/web-ui/build/static/erlang-repl-wYgxDX5h.js +0 -1
  678. package/web-ui/build/static/erlang-sn-PsrSf.js +0 -1
  679. package/web-ui/build/static/etlua-ChDwUxz6.js +0 -1
  680. package/web-ui/build/static/excel-BJux1m2h.js +0 -1
  681. package/web-ui/build/static/excel-formula-i5ByFxAu.js +0 -1
  682. package/web-ui/build/static/factor-CTutAp6r.js +0 -1
  683. package/web-ui/build/static/false-DQz_zYVV.js +0 -1
  684. package/web-ui/build/static/firestore-security-rules-DRGBNXh2.js +0 -1
  685. package/web-ui/build/static/fix-DeSUhixI.js +0 -1
  686. package/web-ui/build/static/flix-BKTJVua_.js +0 -1
  687. package/web-ui/build/static/flow-BpcZsNuo.js +0 -1
  688. package/web-ui/build/static/fortran-BZIKfBPW.js +0 -1
  689. package/web-ui/build/static/fortran-BdezWEh5.js +0 -1
  690. package/web-ui/build/static/fsharp-1Gpt8wZo.js +0 -1
  691. package/web-ui/build/static/fsharp-CMyiqXUW.js +0 -1
  692. package/web-ui/build/static/ftl-D9bBJMhV.js +0 -1
  693. package/web-ui/build/static/gams-DL57wTHN.js +0 -1
  694. package/web-ui/build/static/gap-DN4Uo9cF.js +0 -1
  695. package/web-ui/build/static/gauss-DTa1H0QR.js +0 -1
  696. package/web-ui/build/static/gcode-U5GhqE37.js +0 -1
  697. package/web-ui/build/static/gcode-s-E37fb4.js +0 -1
  698. package/web-ui/build/static/gdscript-DkjgGcDv.js +0 -1
  699. package/web-ui/build/static/gedcom-BbjSSId3.js +0 -1
  700. package/web-ui/build/static/gherkin-BwIzGx7J.js +0 -1
  701. package/web-ui/build/static/gherkin-C97W_9I9.js +0 -1
  702. package/web-ui/build/static/git-DO8dnOip.js +0 -1
  703. package/web-ui/build/static/glsl-B_4UD4-O.js +0 -1
  704. package/web-ui/build/static/glsl-CGSjLy2x.js +0 -1
  705. package/web-ui/build/static/gml-BiITg8HI.js +0 -1
  706. package/web-ui/build/static/gml-DInGU66p.js +0 -1
  707. package/web-ui/build/static/gn--m2IH4i3.js +0 -1
  708. package/web-ui/build/static/go-DOK7GAd-.js +0 -1
  709. package/web-ui/build/static/go-bof0B9jK.js +0 -1
  710. package/web-ui/build/static/go-module-CPIVqmnL.js +0 -1
  711. package/web-ui/build/static/golo-jgy07E43.js +0 -1
  712. package/web-ui/build/static/gradle-BISOF0nH.js +0 -1
  713. package/web-ui/build/static/graphql-FqlbDLTL.js +0 -1
  714. package/web-ui/build/static/groovy-BM0ZyW4a.js +0 -1
  715. package/web-ui/build/static/groovy-oUdbfbZY.js +0 -1
  716. package/web-ui/build/static/haml-C8Qg-VO5.js +0 -1
  717. package/web-ui/build/static/haml-Dse28pB_.js +0 -1
  718. package/web-ui/build/static/handlebars-CWT7WazY.js +0 -1
  719. package/web-ui/build/static/handlebars-Ow3joqOm.js +0 -1
  720. package/web-ui/build/static/haskell-BfraeRhd.js +0 -1
  721. package/web-ui/build/static/haskell-EhcU7sbn.js +0 -1
  722. package/web-ui/build/static/haxe-B8tUoExu.js +0 -1
  723. package/web-ui/build/static/haxe-D9WQHhTh.js +0 -1
  724. package/web-ui/build/static/hcl-CG3GCouf.js +0 -1
  725. package/web-ui/build/static/hlsl-CSWRMQ3m.js +0 -1
  726. package/web-ui/build/static/hoon-Cj0JdbFY.js +0 -1
  727. package/web-ui/build/static/hpkp-CmjdXbgl.js +0 -1
  728. package/web-ui/build/static/hsp-VaFZ7Rlv.js +0 -1
  729. package/web-ui/build/static/hsts-CkJ6UPzY.js +0 -1
  730. package/web-ui/build/static/htmlbars-pfHjYqd2.js +0 -1
  731. package/web-ui/build/static/http-2LA-qivJ.js +0 -1
  732. package/web-ui/build/static/http-CQ_5JSsj.js +0 -1
  733. package/web-ui/build/static/hy-C-Dll2MQ.js +0 -1
  734. package/web-ui/build/static/ichigojam-DecRewwq.js +0 -1
  735. package/web-ui/build/static/icon-CdnU9zPA.js +0 -1
  736. package/web-ui/build/static/icu-message-format-CUQtjk6Q.js +0 -1
  737. package/web-ui/build/static/idris-CRMftLq6.js +0 -1
  738. package/web-ui/build/static/iecst-CXhHqz1P.js +0 -1
  739. package/web-ui/build/static/ignore-_emqIx7v.js +0 -1
  740. package/web-ui/build/static/index-BBHrMvg7.js +0 -1216
  741. package/web-ui/build/static/index-ChkZR_aE.js +0 -13
  742. package/web-ui/build/static/index-DU4GNSOf.js +0 -1
  743. package/web-ui/build/static/index-_z8JjNrI.css +0 -1
  744. package/web-ui/build/static/inform7-CbqlFoFE.js +0 -1
  745. package/web-ui/build/static/inform7-TxZViMJ9.js +0 -1
  746. package/web-ui/build/static/ini-D1sHtm5e.js +0 -1
  747. package/web-ui/build/static/ini-DnqB7pfX.js +0 -1
  748. package/web-ui/build/static/io-MnQK1mM-.js +0 -1
  749. package/web-ui/build/static/irpf90-BRaAenqx.js +0 -1
  750. package/web-ui/build/static/isbl-kubGT4rM.js +0 -1
  751. package/web-ui/build/static/j-BIz9wT9q.js +0 -1
  752. package/web-ui/build/static/java-CbQmsHSK.js +0 -1
  753. package/web-ui/build/static/java-v1B9fNL2.js +0 -1
  754. package/web-ui/build/static/javadoc-TB1OtWS7.js +0 -1
  755. package/web-ui/build/static/javadoclike-BBQPwDAU.js +0 -1
  756. package/web-ui/build/static/javascript-DzNVL5l_.js +0 -1
  757. package/web-ui/build/static/javastacktrace-BduOgG1e.js +0 -1
  758. package/web-ui/build/static/jboss-cli-BcqzI366.js +0 -1
  759. package/web-ui/build/static/jexl-Boyapidr.js +0 -1
  760. package/web-ui/build/static/jolie-hEbkNpsb.js +0 -1
  761. package/web-ui/build/static/jq-ZyEE6oGU.js +0 -1
  762. package/web-ui/build/static/js-extras-CXOzvlL7.js +0 -1
  763. package/web-ui/build/static/js-templates-CkHsm5px.js +0 -1
  764. package/web-ui/build/static/jsdoc-Uk3hj8z2.js +0 -1
  765. package/web-ui/build/static/json-BFi9igjd.js +0 -1
  766. package/web-ui/build/static/json-LI9wtNaG.js +0 -1
  767. package/web-ui/build/static/json5-PwjNByuN.js +0 -1
  768. package/web-ui/build/static/jsonp-DpfGuNSW.js +0 -1
  769. package/web-ui/build/static/jsstacktrace-DhOP2AhS.js +0 -1
  770. package/web-ui/build/static/jsx-DmWoDk8F.js +0 -1
  771. package/web-ui/build/static/julia-DBC5h81N.js +0 -1
  772. package/web-ui/build/static/julia-Dh9sV3LX.js +0 -1
  773. package/web-ui/build/static/julia-repl-BYyDp1f4.js +0 -1
  774. package/web-ui/build/static/keepalived-BTxjrZMV.js +0 -1
  775. package/web-ui/build/static/keyman-IYiyCDCU.js +0 -1
  776. package/web-ui/build/static/kotlin-C0PBuzvy.js +0 -1
  777. package/web-ui/build/static/kotlin-LWYZUK_T.js +0 -1
  778. package/web-ui/build/static/kumir-CQIbnv9I.js +0 -1
  779. package/web-ui/build/static/kusto-DA7pQ-Rb.js +0 -1
  780. package/web-ui/build/static/lasso-CrHySbnC.js +0 -1
  781. package/web-ui/build/static/latex-CLSOFXG4.js +0 -1
  782. package/web-ui/build/static/latex-DYknD4Dx.js +0 -1
  783. package/web-ui/build/static/latte-4QvZcKVw.js +0 -1
  784. package/web-ui/build/static/ldif-Dr96BfRx.js +0 -1
  785. package/web-ui/build/static/leaf-C9qL2Qde.js +0 -1
  786. package/web-ui/build/static/less-DpoID9ZJ.js +0 -1
  787. package/web-ui/build/static/less-wO8QO0XW.js +0 -1
  788. package/web-ui/build/static/lilypond-CNp4Kb1P.js +0 -1
  789. package/web-ui/build/static/liquid-DLULQdgV.js +0 -1
  790. package/web-ui/build/static/lisp-CrVo-Llt.js +0 -1
  791. package/web-ui/build/static/lisp-QIAoXzmW.js +0 -1
  792. package/web-ui/build/static/livecodeserver-DrehOgbf.js +0 -1
  793. package/web-ui/build/static/livescript-Cm2Yp34x.js +0 -1
  794. package/web-ui/build/static/livescript-mVYzlrko.js +0 -1
  795. package/web-ui/build/static/llvm-D6KsQJjh.js +0 -1
  796. package/web-ui/build/static/llvm-DhIp1o-1.js +0 -1
  797. package/web-ui/build/static/log-Sj3ocpgB.js +0 -1
  798. package/web-ui/build/static/lolcode-BSeGnWYG.js +0 -1
  799. package/web-ui/build/static/lsl-DwgUIp0U.js +0 -1
  800. package/web-ui/build/static/lua-B7Ot0Oou.js +0 -1
  801. package/web-ui/build/static/lua-zydwn5-S.js +0 -1
  802. package/web-ui/build/static/magma-Dgfy2Qny.js +0 -1
  803. package/web-ui/build/static/makefile-CSjtzdcw.js +0 -1
  804. package/web-ui/build/static/makefile-DrnEneus.js +0 -1
  805. package/web-ui/build/static/markdown-D9Ke3tYA.js +0 -1
  806. package/web-ui/build/static/markdown-DmwKuI2Y.js +0 -1
  807. package/web-ui/build/static/markup-templating-CikqfHT9.js +0 -1
  808. package/web-ui/build/static/mathematica-OC0imzI5.js +0 -1
  809. package/web-ui/build/static/matlab-BlPcqzRw.js +0 -1
  810. package/web-ui/build/static/matlab-C1iteCkE.js +0 -1
  811. package/web-ui/build/static/maxima-DecbOh0Y.js +0 -1
  812. package/web-ui/build/static/maxscript-80cPuIOA.js +0 -1
  813. package/web-ui/build/static/mel-NI7ysGX2.js +0 -1
  814. package/web-ui/build/static/mel-r03p1eJo.js +0 -1
  815. package/web-ui/build/static/mercury-BdNZw6ZU.js +0 -1
  816. package/web-ui/build/static/mermaid-C1LB7zMJ.js +0 -1
  817. package/web-ui/build/static/mipsasm-BnZ0cdht.js +0 -1
  818. package/web-ui/build/static/mizar-BGPNX3WQ.js +0 -1
  819. package/web-ui/build/static/mizar-CswPcmcG.js +0 -1
  820. package/web-ui/build/static/mojolicious-rRtgy8Or.js +0 -1
  821. package/web-ui/build/static/mongodb-CJU0oeix.js +0 -1
  822. package/web-ui/build/static/monkey-Bj0HaV5-.js +0 -1
  823. package/web-ui/build/static/monkey-JRYuMIYc.js +0 -1
  824. package/web-ui/build/static/moonscript-i7e8bkxZ.js +0 -1
  825. package/web-ui/build/static/moonscript-ldoM156V.js +0 -1
  826. package/web-ui/build/static/n1ql-C0xs8qWA.js +0 -1
  827. package/web-ui/build/static/n1ql-DlC-GlVq.js +0 -1
  828. package/web-ui/build/static/n4js-mIwtIanO.js +0 -1
  829. package/web-ui/build/static/nand2tetris-hdl-mfHIYPZD.js +0 -1
  830. package/web-ui/build/static/naniscript-DiDayxx1.js +0 -1
  831. package/web-ui/build/static/nasm-7uf2nfNC.js +0 -1
  832. package/web-ui/build/static/neon-BKgOgIAL.js +0 -1
  833. package/web-ui/build/static/nevod-BlujoQ5k.js +0 -1
  834. package/web-ui/build/static/nginx-Bb57ubp_.js +0 -1
  835. package/web-ui/build/static/nginx-DmLU0URp.js +0 -1
  836. package/web-ui/build/static/nim-CmnPRTHF.js +0 -1
  837. package/web-ui/build/static/nim-DOReB32c.js +0 -1
  838. package/web-ui/build/static/nix-BDMn1sgi.js +0 -1
  839. package/web-ui/build/static/nix-LTHuFEfQ.js +0 -1
  840. package/web-ui/build/static/node-repl-dxwu8SWp.js +0 -1
  841. package/web-ui/build/static/nsis-CKD0KqBT.js +0 -1
  842. package/web-ui/build/static/nsis-IlSwBUak.js +0 -1
  843. package/web-ui/build/static/objectivec-D4Lo30HV.js +0 -1
  844. package/web-ui/build/static/objectivec-zmGGqvoM.js +0 -1
  845. package/web-ui/build/static/ocaml-2uzfqAr8.js +0 -1
  846. package/web-ui/build/static/ocaml-wF6lV9H4.js +0 -1
  847. package/web-ui/build/static/opencl-B82Xjnw5.js +0 -1
  848. package/web-ui/build/static/openqasm-VzVaHpAP.js +0 -1
  849. package/web-ui/build/static/openscad-B-qK1VfW.js +0 -1
  850. package/web-ui/build/static/oxygene-BNTVgbsA.js +0 -1
  851. package/web-ui/build/static/oz-5ZfXBXQY.js +0 -1
  852. package/web-ui/build/static/parigp-S8JhoJoz.js +0 -1
  853. package/web-ui/build/static/parser-BZPtbLcv.js +0 -1
  854. package/web-ui/build/static/parser3-BZRLDHuv.js +0 -1
  855. package/web-ui/build/static/pascal-GKzqT2Ku.js +0 -1
  856. package/web-ui/build/static/pascaligo-DnbFz_mr.js +0 -1
  857. package/web-ui/build/static/pcaxis-DiRsos26.js +0 -1
  858. package/web-ui/build/static/peoplecode-CMDLbqGB.js +0 -1
  859. package/web-ui/build/static/perl-BOnBAciC.js +0 -1
  860. package/web-ui/build/static/perl-fMVLgVTb.js +0 -1
  861. package/web-ui/build/static/pf-z6xsHHPS.js +0 -1
  862. package/web-ui/build/static/pgsql-5jHAyGJf.js +0 -1
  863. package/web-ui/build/static/php-CbG6Jq36.js +0 -1
  864. package/web-ui/build/static/php-D9yyh70o.js +0 -1
  865. package/web-ui/build/static/php-extras-CQKSwnMo.js +0 -1
  866. package/web-ui/build/static/php-template-Ch4UQhUx.js +0 -1
  867. package/web-ui/build/static/phpdoc-Be7TYcGQ.js +0 -1
  868. package/web-ui/build/static/plaintext-BsYjBqDy.js +0 -1
  869. package/web-ui/build/static/plsql-Dc4ePipN.js +0 -1
  870. package/web-ui/build/static/pony-Cen7DtWb.js +0 -1
  871. package/web-ui/build/static/powerquery-BIOJ1eUE.js +0 -1
  872. package/web-ui/build/static/powershell-CbEjJpj7.js +0 -1
  873. package/web-ui/build/static/powershell-DlceT0ds.js +0 -1
  874. package/web-ui/build/static/processing-C9GaKPU-.js +0 -1
  875. package/web-ui/build/static/processing-CTPA3QIV.js +0 -1
  876. package/web-ui/build/static/profile-CHjz016L.js +0 -1
  877. package/web-ui/build/static/prolog-BK0g5F4c.js +0 -1
  878. package/web-ui/build/static/prolog-DrrwUODp.js +0 -1
  879. package/web-ui/build/static/promql-DftRCUlR.js +0 -1
  880. package/web-ui/build/static/properties-B122hwLT.js +0 -1
  881. package/web-ui/build/static/properties-C0m3XIaN.js +0 -1
  882. package/web-ui/build/static/protobuf-CanIoKel.js +0 -1
  883. package/web-ui/build/static/protobuf-WvDgzNtD.js +0 -1
  884. package/web-ui/build/static/psl-JsKwhg_r.js +0 -1
  885. package/web-ui/build/static/pug-DoQaiAyU.js +0 -1
  886. package/web-ui/build/static/puppet-CoRftQQB.js +0 -1
  887. package/web-ui/build/static/puppet-DHgjsvQ8.js +0 -1
  888. package/web-ui/build/static/pure-BgZIQeOr.js +0 -1
  889. package/web-ui/build/static/purebasic-BRYfIFBb.js +0 -1
  890. package/web-ui/build/static/purebasic-DxXSa8gN.js +0 -1
  891. package/web-ui/build/static/purescript-ChvJvUnk.js +0 -1
  892. package/web-ui/build/static/python-DqhW0V3z.js +0 -1
  893. package/web-ui/build/static/python-Dz2FyIQx.js +0 -1
  894. package/web-ui/build/static/python-repl-Cl3mEb2H.js +0 -1
  895. package/web-ui/build/static/q-Bg4mQWXp.js +0 -1
  896. package/web-ui/build/static/q-DwaQK_1p.js +0 -1
  897. package/web-ui/build/static/qml-D1-fdJvp.js +0 -1
  898. package/web-ui/build/static/qml-DFsoiY0T.js +0 -1
  899. package/web-ui/build/static/qore-DdEtFSV5.js +0 -1
  900. package/web-ui/build/static/qsharp-B_A0OUBX.js +0 -1
  901. package/web-ui/build/static/r-C3M2HrKx.js +0 -1
  902. package/web-ui/build/static/r-_EUAt74Q.js +0 -1
  903. package/web-ui/build/static/racket-B3uAs3VE.js +0 -1
  904. package/web-ui/build/static/reason-CyAzPvNW.js +0 -1
  905. package/web-ui/build/static/reasonml-iEzx6ejF.js +0 -1
  906. package/web-ui/build/static/regex-suWqSnRa.js +0 -1
  907. package/web-ui/build/static/rego-QeDW60Lx.js +0 -1
  908. package/web-ui/build/static/renpy-03fEqIYK.js +0 -1
  909. package/web-ui/build/static/rest-BRJIE-UZ.js +0 -1
  910. package/web-ui/build/static/rib-DOI_C8C9.js +0 -1
  911. package/web-ui/build/static/rip-BaEBdknp.js +0 -1
  912. package/web-ui/build/static/roboconf-DC8IQe4Z.js +0 -1
  913. package/web-ui/build/static/roboconf-jTu2wKoD.js +0 -1
  914. package/web-ui/build/static/robotframework-BFp2sQG2.js +0 -1
  915. package/web-ui/build/static/routeros-Br-GCWs7.js +0 -1
  916. package/web-ui/build/static/rsl-BpWeUJqw.js +0 -1
  917. package/web-ui/build/static/ruby-C3nnVoGq.js +0 -1
  918. package/web-ui/build/static/ruby-DD90V5PL.js +0 -1
  919. package/web-ui/build/static/ruleslanguage-BflyDdqj.js +0 -1
  920. package/web-ui/build/static/rust-DtiFFJtC.js +0 -1
  921. package/web-ui/build/static/rust-uJHZCfXQ.js +0 -1
  922. package/web-ui/build/static/sas-DUr8rIBf.js +0 -1
  923. package/web-ui/build/static/sas-POH3vAEy.js +0 -1
  924. package/web-ui/build/static/sass-D1oLbZQ0.js +0 -1
  925. package/web-ui/build/static/scala-CDtrRn0l.js +0 -1
  926. package/web-ui/build/static/scala-VCIKIldH.js +0 -1
  927. package/web-ui/build/static/scheme-CAWHx2Oj.js +0 -1
  928. package/web-ui/build/static/scheme-DzKv24tn.js +0 -1
  929. package/web-ui/build/static/scilab-DuxpEvzV.js +0 -1
  930. package/web-ui/build/static/scss-BKd4Y-UF.js +0 -1
  931. package/web-ui/build/static/scss-BpqUKxry.js +0 -1
  932. package/web-ui/build/static/shell-session-CglnRr2l.js +0 -1
  933. package/web-ui/build/static/shell-u-Y3PKLQ.js +0 -1
  934. package/web-ui/build/static/smali-D308KWif.js +0 -1
  935. package/web-ui/build/static/smali-DYT-jHPu.js +0 -1
  936. package/web-ui/build/static/smalltalk-BLYA-Ag1.js +0 -1
  937. package/web-ui/build/static/smalltalk-BdMVmgN0.js +0 -1
  938. package/web-ui/build/static/smarty-DUYgBrje.js +0 -1
  939. package/web-ui/build/static/sml-EEhIaAvM.js +0 -1
  940. package/web-ui/build/static/sml-bQ27koeV.js +0 -1
  941. package/web-ui/build/static/solidity-U7x7-dFr.js +0 -1
  942. package/web-ui/build/static/solution-file-Cr03jaqW.js +0 -1
  943. package/web-ui/build/static/soy-lnGOhaRM.js +0 -1
  944. package/web-ui/build/static/sparql-BRm44B1P.js +0 -1
  945. package/web-ui/build/static/splunk-spl-DdrdBOQJ.js +0 -1
  946. package/web-ui/build/static/sqf-CDtvZjid.js +0 -1
  947. package/web-ui/build/static/sqf-wr3PtKhW.js +0 -1
  948. package/web-ui/build/static/sql-B1-8AkNe.js +0 -1
  949. package/web-ui/build/static/sql-zWEK1lPB.js +0 -1
  950. package/web-ui/build/static/sql_more-Ck0DuSs3.js +0 -1
  951. package/web-ui/build/static/squirrel-CfQEIe5h.js +0 -1
  952. package/web-ui/build/static/stan-BM1Wilpj.js +0 -1
  953. package/web-ui/build/static/stan-DFPCSU1l.js +0 -1
  954. package/web-ui/build/static/stata-BJ-qKfEg.js +0 -1
  955. package/web-ui/build/static/step21-fPKcuR3s.js +0 -1
  956. package/web-ui/build/static/stylus-BhqK2C03.js +0 -1
  957. package/web-ui/build/static/stylus-BxloRYSO.js +0 -1
  958. package/web-ui/build/static/subunit-CueM7bOY.js +0 -1
  959. package/web-ui/build/static/swift-CPgZZ0ja.js +0 -1
  960. package/web-ui/build/static/swift-CsEMsJ7g.js +0 -1
  961. package/web-ui/build/static/systemd-B1Wwkby4.js +0 -1
  962. package/web-ui/build/static/t4-cs-CL3Ca0dW.js +0 -1
  963. package/web-ui/build/static/t4-templating-BoV5iKxA.js +0 -1
  964. package/web-ui/build/static/t4-vb-BKXXzk5n.js +0 -1
  965. package/web-ui/build/static/taggerscript-aJQMdfVb.js +0 -1
  966. package/web-ui/build/static/tap-BBfQFbbW.js +0 -1
  967. package/web-ui/build/static/tap-CmCrAtSH.js +0 -1
  968. package/web-ui/build/static/tcl-B8xfoxf8.js +0 -1
  969. package/web-ui/build/static/tcl-CPzoU-PX.js +0 -1
  970. package/web-ui/build/static/textile-B99mXtsV.js +0 -1
  971. package/web-ui/build/static/thrift-Cd40Ii7J.js +0 -1
  972. package/web-ui/build/static/toml-DV5wxyQS.js +0 -1
  973. package/web-ui/build/static/tp-o2VorAT6.js +0 -1
  974. package/web-ui/build/static/tremor-Cs0K_i4_.js +0 -1
  975. package/web-ui/build/static/tsx-KG-mQur8.js +0 -1
  976. package/web-ui/build/static/tt2-M3GHOvjN.js +0 -1
  977. package/web-ui/build/static/turtle-D6o0UODZ.js +0 -1
  978. package/web-ui/build/static/twig-D7LOxPkH.js +0 -1
  979. package/web-ui/build/static/twig-SHSTj-jA.js +0 -1
  980. package/web-ui/build/static/typescript-BeIk_BLV.js +0 -1
  981. package/web-ui/build/static/typescript-Btz-ypJW.js +0 -1
  982. package/web-ui/build/static/typoscript-7jDBTKMM.js +0 -1
  983. package/web-ui/build/static/unrealscript-f2f2MAJa.js +0 -1
  984. package/web-ui/build/static/uorazor-c5VZAS6K.js +0 -1
  985. package/web-ui/build/static/uri-DY2cDkq-.js +0 -1
  986. package/web-ui/build/static/v-6ffK7TKq.js +0 -1
  987. package/web-ui/build/static/vala-BgOkjEeg.js +0 -1
  988. package/web-ui/build/static/vala-BvuDZGU_.js +0 -1
  989. package/web-ui/build/static/vbnet-Bdh9clH3.js +0 -1
  990. package/web-ui/build/static/vbnet-CDpcSndL.js +0 -1
  991. package/web-ui/build/static/vbscript-dH3gn1bx.js +0 -1
  992. package/web-ui/build/static/vbscript-html-a_tIfb0-.js +0 -1
  993. package/web-ui/build/static/velocity-DGDKyukB.js +0 -1
  994. package/web-ui/build/static/verilog-CtJaE20M.js +0 -1
  995. package/web-ui/build/static/verilog-CvdiugJe.js +0 -1
  996. package/web-ui/build/static/vhdl-CN1nxPYJ.js +0 -1
  997. package/web-ui/build/static/vhdl-JtjHb_oM.js +0 -1
  998. package/web-ui/build/static/vim-DBRKYGcU.js +0 -1
  999. package/web-ui/build/static/vim-DQiU261H.js +0 -1
  1000. package/web-ui/build/static/visual-basic-D_daebxW.js +0 -1
  1001. package/web-ui/build/static/warpscript-B4PIoyZp.js +0 -1
  1002. package/web-ui/build/static/wasm-D6_O5K2p.js +0 -1
  1003. package/web-ui/build/static/web-idl-D7BDrII0.js +0 -1
  1004. package/web-ui/build/static/wiki-D-bqO098.js +0 -1
  1005. package/web-ui/build/static/wolfram-NnogXigM.js +0 -1
  1006. package/web-ui/build/static/wren-DwgJaCDU.js +0 -1
  1007. package/web-ui/build/static/x86asm-B9-C3MH5.js +0 -1
  1008. package/web-ui/build/static/xeora-wudvnBkY.js +0 -1
  1009. package/web-ui/build/static/xl-BeBZDETk.js +0 -1
  1010. package/web-ui/build/static/xml-DgNmhWin.js +0 -1
  1011. package/web-ui/build/static/xml-doc-B2RShOT5.js +0 -1
  1012. package/web-ui/build/static/xojo-C0HF7CVl.js +0 -1
  1013. package/web-ui/build/static/xquery-CMss7jIw.js +0 -1
  1014. package/web-ui/build/static/xquery-Dy1YImWg.js +0 -1
  1015. package/web-ui/build/static/yaml--7oDAAKr.js +0 -1
  1016. package/web-ui/build/static/yaml-1-HThDJz.js +0 -1
  1017. package/web-ui/build/static/yang-CxleyLxS.js +0 -1
  1018. package/web-ui/build/static/zephir-B7LMkND2.js +0 -1
  1019. package/web-ui/build/static/zig-DST87v3k.js +0 -1
@@ -11,8 +11,10 @@
11
11
  * holds the OAuth tokens server-side and auto-refreshes them. Our
12
12
  * code never sees raw tokens.
13
13
  *
14
- * API key: `process.env.COMPOSIO_API_KEY`. Required to do anything;
15
- * obtain at dashboard.composio.dev.
14
+ * API key: resolved by composioService.getClient() first checks the
15
+ * encrypted vault (where the web-ui's Integrations page saves it),
16
+ * then falls back to process.env.COMPOSIO_API_KEY for ops who set it
17
+ * out-of-band. Obtain at dashboard.composio.dev.
16
18
  *
17
19
  * Security note: Composio had a security incident in May 2026 that
18
20
  * leaked ~5K GitHub OAuth tokens. Key rotation should be automatable
@@ -25,13 +27,17 @@
25
27
  */
26
28
 
27
29
  import { BaseTool } from './baseTool.js';
30
+ import { ComposioIndexer } from '../services/embeddings/indexers/composioIndexer.js';
31
+ import * as composioService from '../services/composioService.js';
28
32
 
29
33
  const SUPPORTED_ACTIONS = [
30
- 'list-toolkits', // discover available integrations
31
- 'list-tools', // for a specific toolkit, list its action slugs + schemas
32
- 'connect', // generate a Connect Link URL for the user to OAuth into a toolkit
33
- 'connection-status', // check whether the current user has an active connection to a toolkit
34
- 'execute', // invoke a Composio action with arguments
34
+ 'list-toolkits', // discover available integrations
35
+ 'list-tools', // for a specific toolkit, list its action slugs + schemas
36
+ 'connect', // generate a Connect Link URL for the user to OAuth into a toolkit
37
+ 'connection-status', // check whether the current user has an active connection to a toolkit
38
+ 'execute', // invoke a Composio action with arguments
39
+ 'find-action', // semantic search over the Composio catalog (needs index)
40
+ 'backfill-actions-index', // (re)build the catalog vector index for find-action
35
41
  ];
36
42
 
37
43
  class ComposioTool extends BaseTool {
@@ -41,8 +47,13 @@ class ComposioTool extends BaseTool {
41
47
  this.requiresProject = false;
42
48
  this.isAsync = true;
43
49
  this.timeout = config.timeout || 60_000;
44
- this._sdkClient = null; // lazy-loaded @composio/core instance
45
- this._sdkUnavailableReason = null; // populated if dynamic import fails
50
+ // SDK client + key resolution are owned by composioService; we
51
+ // don't keep our own instance cache here because the service's
52
+ // cache is already keyed by API-key fingerprint and gets
53
+ // invalidated when the UI rotates the key. Holding a parallel
54
+ // cache here would mean "agent sees old key" after a rotation —
55
+ // which is exactly the regression that caused the
56
+ // "COMPOSIO_API_KEY env var is not set" bug report.
46
57
  }
47
58
 
48
59
  getDescription() {
@@ -106,8 +117,10 @@ Returns: { success: true|false, output: <upstream result>, error? }
106
117
  NOTES:
107
118
  - Each agent is mapped to a distinct Composio userId (agentId is reused).
108
119
  Tokens are isolated per-agent.
109
- - The org-level API key is read from \`COMPOSIO_API_KEY\` env var.
110
- - If the env var is missing OR the SDK isn't installed, every action
120
+ - The org-level API key is resolved by composioService: encrypted vault
121
+ first (saved via Settings Integrations), then \`COMPOSIO_API_KEY\`
122
+ env var as an operator fallback.
123
+ - If neither source has a key OR the SDK isn't installed, every action
111
124
  returns a structured error so the agent can recover gracefully.
112
125
  - Composio holds OAuth tokens server-side. We never see raw tokens.
113
126
  `.trim();
@@ -153,45 +166,31 @@ NOTES:
153
166
  if (!a.toolkitSlug) errors.push(`${tag}toolkitSlug is required for execute`);
154
167
  if (!a.actionSlug) errors.push(`${tag}actionSlug is required for execute`);
155
168
  break;
169
+ case 'find-action':
170
+ if (!a.query || typeof a.query !== 'string' || !a.query.trim()) {
171
+ errors.push(`${tag}query is required for find-action`);
172
+ }
173
+ if (a.topK != null && (!Number.isInteger(a.topK) || a.topK <= 0)) {
174
+ errors.push(`${tag}topK must be a positive integer when provided`);
175
+ }
176
+ break;
177
+ // backfill-actions-index needs no params (full rebuild of the catalog).
156
178
  }
157
179
  }
158
180
  return { valid: errors.length === 0, errors };
159
181
  }
160
182
 
161
183
  /**
162
- * Lazy SDK loader. Catches missing-dependency / missing-API-key gracefully.
184
+ * Delegate SDK loading to composioService single source of truth for
185
+ * key resolution (vault → env-var fallback) and client caching. The
186
+ * service's cache invalidates on key rotation (UI save / forget), so
187
+ * the next invocation here picks up the new key without a restart.
188
+ *
163
189
  * Returns { client } on success or { error } on failure — never throws.
164
- * Override-friendly: tests can stub `_loadSdk` to inject a mock client.
190
+ * Tests can still stub this method to inject a mock client.
165
191
  */
166
192
  async _loadSdk() {
167
- if (this._sdkClient) return { client: this._sdkClient };
168
- if (this._sdkUnavailableReason) return { error: this._sdkUnavailableReason };
169
-
170
- const apiKey = process.env.COMPOSIO_API_KEY;
171
- if (!apiKey) {
172
- const error = 'COMPOSIO_API_KEY env var is not set. Obtain at https://dashboard.composio.dev and set it in the Loxia process environment.';
173
- this._sdkUnavailableReason = error;
174
- return { error };
175
- }
176
-
177
- let Composio;
178
- try {
179
- const mod = await import('@composio/core');
180
- Composio = mod.Composio || mod.default?.Composio || mod.default;
181
- } catch (e) {
182
- const error = `@composio/core SDK is not installed. Run \`npm install @composio/core\` (optionalDependencies). Detail: ${e.message}`;
183
- this._sdkUnavailableReason = error;
184
- return { error };
185
- }
186
-
187
- try {
188
- this._sdkClient = new Composio({ apiKey });
189
- return { client: this._sdkClient };
190
- } catch (e) {
191
- const error = `Composio SDK initialization failed: ${e.message}`;
192
- this._sdkUnavailableReason = error;
193
- return { error };
194
- }
193
+ return composioService.getClient();
195
194
  }
196
195
 
197
196
  async execute(params, context = {}) {
@@ -204,7 +203,11 @@ NOTES:
204
203
  const userId = context.agentId || 'default-user';
205
204
  const { client, error: sdkErr } = await this._loadSdk();
206
205
  if (sdkErr) {
207
- return { success: false, error: sdkErr, hint: 'Set COMPOSIO_API_KEY and `npm install @composio/core`.' };
206
+ return {
207
+ success: false,
208
+ error: sdkErr,
209
+ hint: 'Add a Composio API key on the Integrations page (Settings → Integrations) or set COMPOSIO_API_KEY in the environment. Also ensure `@composio/core` is installed.',
210
+ };
208
211
  }
209
212
 
210
213
  // Single-action: return its result directly (back-compat with other
@@ -241,43 +244,346 @@ NOTES:
241
244
  return [];
242
245
  }
243
246
 
247
+ /**
248
+ * Lazy ComposioIndexer accessor. Mirrors the memoryTool / reminisce
249
+ * pattern: cached on the instance after first use; null when no
250
+ * embedding service is attached to aiService.
251
+ *
252
+ * @private
253
+ * @returns {ComposioIndexer | null}
254
+ */
255
+ _getComposioIndexer() {
256
+ if (this._composioIndexer) return this._composioIndexer;
257
+ const svc = this.aiService?.getEmbeddingService?.();
258
+ if (!svc) return null;
259
+ this._composioIndexer = new ComposioIndexer({ embeddingService: svc, logger: this.logger });
260
+ return this._composioIndexer;
261
+ }
262
+
263
+ /**
264
+ * Execute find-action: semantic search across the indexed catalog.
265
+ * Returns ranked candidates with their toolkitSlug, actionSlug,
266
+ * displayName, description, and inputSchema — everything the agent
267
+ * needs to immediately call `execute` without a second round-trip.
268
+ *
269
+ * When the index is empty / stale, surfaces a clear hint to run
270
+ * `backfill-actions-index` first.
271
+ *
272
+ * @private
273
+ */
274
+ async _executeFindAction(action, context = {}) {
275
+ const query = String(action.query || '').trim();
276
+ if (!query) {
277
+ return { success: false, action: 'find-action', error: 'query is required' };
278
+ }
279
+ const topK = Number.isInteger(action.topK) && action.topK > 0 ? action.topK : 10;
280
+ const hybrid = action.hybrid !== false;
281
+ const toolkitSlug = typeof action.toolkitSlug === 'string' && action.toolkitSlug ? action.toolkitSlug : null;
282
+ const userId = context.agentId || 'default-user';
283
+
284
+ // Try the embedding path first. We DEGRADE GRACEFULLY: if embeddings
285
+ // are missing, disabled, the index is empty, or search throws, we
286
+ // fall back to a substring-match scan via the Composio SDK so the
287
+ // agent always gets *something* useful. The fallback comes with a
288
+ // warning so the agent + operator know quality is degraded and how
289
+ // to upgrade it.
290
+ const indexer = this._getComposioIndexer();
291
+ const embeddingsLive = !!(indexer && indexer.isEnabled);
292
+ // Track WHY we fell back so the warning is accurate. Three distinct
293
+ // causes — each routes the operator to a different remediation.
294
+ let fallbackCause = 'embeddings-unavailable';
295
+ let embeddingErrorDetail = null;
296
+
297
+ if (embeddingsLive) {
298
+ fallbackCause = 'index-empty';
299
+ let indexCount = 0;
300
+ try {
301
+ const stats = await indexer.stats();
302
+ indexCount = stats?.count || 0;
303
+ } catch { /* fall through to fallback */ }
304
+
305
+ if (indexCount > 0) {
306
+ try {
307
+ const { hits, error } = await indexer.search(query, { topK, hybrid, toolkitSlug });
308
+ if (!error) {
309
+ return {
310
+ success: true,
311
+ action: 'find-action',
312
+ mode: hybrid ? 'hybrid' : 'semantic',
313
+ query, topK, toolkitSlug, hits,
314
+ message: hits.length === 0
315
+ ? `No actions matched "${query}"`
316
+ : `Found ${hits.length} candidate actions ranked by similarity to "${query}".`,
317
+ };
318
+ }
319
+ // Embedding search returned an error — fall through to substring.
320
+ fallbackCause = 'embedding-search-failed';
321
+ embeddingErrorDetail = error;
322
+ this.logger?.warn?.('[composio] embedding find-action failed; falling back to substring', { error });
323
+ } catch (err) {
324
+ fallbackCause = 'embedding-search-failed';
325
+ embeddingErrorDetail = err?.message || String(err);
326
+ this.logger?.warn?.('[composio] embedding find-action threw; falling back to substring', { error: err?.message });
327
+ }
328
+ }
329
+ // else: index empty → fall through with a "build me" hint.
330
+ }
331
+
332
+ // ─── Substring fallback ────────────────────────────────────────
333
+ let reason, upgradeHint;
334
+ if (fallbackCause === 'embeddings-unavailable') {
335
+ reason = 'Embeddings unavailable.';
336
+ upgradeHint = 'Enable an embedding provider in Settings → Embeddings for semantic ranking.';
337
+ } else if (fallbackCause === 'index-empty') {
338
+ reason = 'Catalog index is empty.';
339
+ upgradeHint = 'Run `composio.backfill-actions-index` once to enable semantic ranking.';
340
+ } else {
341
+ // 'embedding-search-failed'
342
+ reason = `Embedding search failed${embeddingErrorDetail ? ` (${embeddingErrorDetail})` : ''}.`;
343
+ upgradeHint = 'Check the embedding provider status; using substring search in the meantime.';
344
+ }
345
+
346
+ const fallback = await this._substringFindAction(query, { topK, toolkitSlug, userId });
347
+ return {
348
+ ...fallback,
349
+ warning: `${reason} Used substring search (lower quality). ${upgradeHint}`,
350
+ fallbackCause,
351
+ };
352
+ }
353
+
354
+ /**
355
+ * Brute-force substring/keyword search across the Composio catalog.
356
+ * Used when the embedding index is unavailable or empty so the agent
357
+ * still gets ranked candidates.
358
+ *
359
+ * Strategy:
360
+ * 1. List toolkits (or use the supplied toolkitSlug as the only one).
361
+ * 2. Score each by token overlap with the query against name/slug/desc.
362
+ * 3. For the top-5 toolkits (by score), list their tools and score
363
+ * each tool the same way. Top-5 cap keeps API fan-out bounded —
364
+ * a query against 250 toolkits should not produce 250 list-tools
365
+ * calls in the worst case.
366
+ * 4. Rank tools by score, return top-K with the same hit shape as
367
+ * the embedding path (toolkitSlug, actionSlug, displayName,
368
+ * description, inputSchema, score).
369
+ *
370
+ * @private
371
+ */
372
+ async _substringFindAction(query, { topK, toolkitSlug, userId }) {
373
+ const tokenize = (s) => String(s || '')
374
+ .toLowerCase()
375
+ .split(/[\s_,.\-/()\[\]{}]+/)
376
+ .filter(t => t.length > 1);
377
+ const qTokens = tokenize(query);
378
+ if (qTokens.length === 0) {
379
+ return { success: true, action: 'find-action', mode: 'substring-fallback', query, topK, toolkitSlug, hits: [], message: 'No searchable tokens in query.' };
380
+ }
381
+ const scoreText = (text) => {
382
+ const tTokens = tokenize(text);
383
+ let s = 0;
384
+ for (const q of qTokens) {
385
+ for (const t of tTokens) {
386
+ if (t === q) s += 3; // exact token match
387
+ else if (t.includes(q) || q.includes(t)) s += 1; // substring either way
388
+ }
389
+ }
390
+ return s;
391
+ };
392
+
393
+ // Step 1: get the candidate toolkit list.
394
+ let toolkits;
395
+ if (toolkitSlug) {
396
+ toolkits = [{ slug: toolkitSlug, name: toolkitSlug }];
397
+ } else {
398
+ const tk = await composioService.listToolkits();
399
+ if (!tk.success) {
400
+ return { success: false, action: 'find-action', mode: 'substring-fallback', error: tk.error };
401
+ }
402
+ toolkits = tk.toolkits;
403
+ }
404
+
405
+ if (toolkits.length === 0) {
406
+ return {
407
+ success: true,
408
+ action: 'find-action',
409
+ mode: 'substring-fallback',
410
+ query, topK, toolkitSlug,
411
+ hits: [],
412
+ message: 'Composio returned no toolkits to search.',
413
+ };
414
+ }
415
+
416
+ // Step 2: rank toolkits, take top-5 (or all if toolkitSlug is pinned).
417
+ const toolkitMaxFanout = toolkitSlug ? 1 : 5;
418
+ const toolkitsScored = toolkits
419
+ .map(tk => ({ tk, score: scoreText(`${tk.slug || ''} ${tk.name || ''} ${tk.description || ''}`) }))
420
+ .sort((a, b) => b.score - a.score);
421
+ // If at least one toolkit scored, scan those. Otherwise scan the first
422
+ // N alphabetically as a last-ditch — the query may not match any
423
+ // toolkit name but might match action names within a toolkit.
424
+ const toolkitsToScan = (toolkitsScored[0]?.score > 0
425
+ ? toolkitsScored.filter(x => x.score > 0)
426
+ : toolkitsScored
427
+ ).slice(0, toolkitMaxFanout);
428
+
429
+ // Step 3: scan tools in those toolkits.
430
+ const allHits = [];
431
+ for (const { tk } of toolkitsToScan) {
432
+ const r = await composioService.listTools(tk.slug, userId);
433
+ if (!r.success) continue;
434
+ for (const tool of (r.tools || [])) {
435
+ const text = `${tool.slug || ''} ${tool.displayName || tool.name || ''} ${tool.description || ''}`;
436
+ const score = scoreText(text);
437
+ if (score > 0) {
438
+ allHits.push({
439
+ toolkitSlug: tk.slug,
440
+ actionSlug: tool.slug,
441
+ displayName: tool.displayName || tool.name || tool.slug,
442
+ description: tool.description || '',
443
+ inputSchema: tool.input || tool.parameters || tool.inputParameters || null,
444
+ score,
445
+ });
446
+ }
447
+ }
448
+ }
449
+ allHits.sort((a, b) => b.score - a.score);
450
+ const hits = allHits.slice(0, topK);
451
+
452
+ return {
453
+ success: true,
454
+ action: 'find-action',
455
+ mode: 'substring-fallback',
456
+ query, topK, toolkitSlug,
457
+ hits,
458
+ message: hits.length === 0
459
+ ? `No actions matched "${query}" via substring search.`
460
+ : `Found ${hits.length} candidate actions via substring search.`,
461
+ };
462
+ }
463
+
464
+ /**
465
+ * Execute backfill-actions-index: walk every Composio toolkit, fetch
466
+ * its actions, embed them all in batched calls, write the global
467
+ * catalog index. Drops any prior index first (full rebuild semantics).
468
+ *
469
+ * @private
470
+ */
471
+ async _executeBackfillActionsIndex(client, userId) {
472
+ const indexer = this._getComposioIndexer();
473
+ if (!indexer || !indexer.isEnabled) {
474
+ return {
475
+ success: false,
476
+ action: 'backfill-actions-index',
477
+ message: 'Embeddings are not enabled — nothing to backfill. Enable a provider in Settings → Embeddings first.',
478
+ };
479
+ }
480
+
481
+ // Delegate to composioService — same code path everything else uses.
482
+ // The previous implementation called `client.toolkits.list()` and
483
+ // `client.tools.list()` directly, which silently returned undefined
484
+ // because those methods don't exist on the @composio/core SDK
485
+ // (it's `toolkits.get` / `tools.get`, and toolkits.get drops
486
+ // pagination so even that wouldn't be enough). The service now
487
+ // paginates via REST and returns the full ~1043-toolkit catalog.
488
+ const tkResult = await composioService.listToolkits();
489
+ if (!tkResult.success) {
490
+ return {
491
+ success: false,
492
+ action: 'backfill-actions-index',
493
+ error: `Could not list toolkits: ${tkResult.error}`,
494
+ };
495
+ }
496
+ const toolkits = tkResult.toolkits;
497
+ if (toolkits.length === 0) {
498
+ return {
499
+ success: false,
500
+ action: 'backfill-actions-index',
501
+ error: 'Composio returned no toolkits — check the Composio API key and that the org has at least one integration enabled.',
502
+ };
503
+ }
504
+
505
+ const fetcher = async (toolkitSlug) => {
506
+ const r = await composioService.listTools(toolkitSlug, userId);
507
+ return r.success ? (r.tools || []) : [];
508
+ };
509
+
510
+ const r = await indexer.indexCatalog(toolkits, fetcher);
511
+ return {
512
+ success: r.ok !== false,
513
+ action: 'backfill-actions-index',
514
+ indexedActions: r.indexedActions || 0,
515
+ indexedToolkits: r.indexedToolkits || 0,
516
+ failedToolkits: r.failedToolkits || 0,
517
+ ...(r.error ? { error: r.error } : {}),
518
+ message: r.ok === false
519
+ ? `Backfill failed: ${r.reason || r.error || 'unknown'}`
520
+ : `Indexed ${r.indexedActions || 0} actions across ${r.indexedToolkits || 0} toolkits` +
521
+ (r.failedToolkits ? ` (${r.failedToolkits} toolkits failed to load)` : '') + '.',
522
+ };
523
+ }
524
+
244
525
  /** @private */
245
526
  async _dispatch(client, userId, action) {
246
527
  const type = action.type || action.action;
247
528
  try {
248
529
  switch (type) {
249
530
  case 'list-toolkits': {
250
- const toolkits = await client.toolkits?.list?.();
251
- return { success: true, action: 'list-toolkits', toolkits: toolkits || [] };
531
+ // Delegate to composioService — single source of truth for
532
+ // the SDK's paginated/wrapped response shape (`{items:[]}` vs
533
+ // `{data:[]}` vs Array). Direct `await client.toolkits.list()`
534
+ // here used to return the wrapper object as "the list" or
535
+ // collapse to `[]` via the `|| []` fallback, which is how
536
+ // agents saw "0 toolkits" even when integrations existed.
537
+ const r = await composioService.listToolkits();
538
+ return r.success
539
+ ? { success: true, action: 'list-toolkits', toolkits: r.toolkits }
540
+ : { success: false, action: 'list-toolkits', error: r.error };
252
541
  }
253
542
  case 'list-tools': {
254
- const tools = await client.tools?.list?.({ toolkit: action.toolkitSlug, userId });
255
- return { success: true, action: 'list-tools', toolkitSlug: action.toolkitSlug, tools: tools || [] };
543
+ const r = await composioService.listTools(action.toolkitSlug, userId);
544
+ return r.success
545
+ ? { success: true, action: 'list-tools', toolkitSlug: action.toolkitSlug, tools: r.tools }
546
+ : { success: false, action: 'list-tools', toolkitSlug: action.toolkitSlug, error: r.error };
256
547
  }
257
548
  case 'connect': {
258
- const result = await client.connectedAccounts?.initiate?.({
259
- userId,
260
- toolkit: action.toolkitSlug,
261
- ...(action.authConfigId ? { authConfigId: action.authConfigId } : {}),
549
+ // composioService.connect maps the cryptic SDK error
550
+ // "authConfigIds.0 should be a string, but you provided
551
+ // undefined" into a human message that names the actual
552
+ // remediation (go to Composio dashboard Integrations,
553
+ // add the toolkit's integration).
554
+ const r = await composioService.connect(userId, action.toolkitSlug, {
555
+ authConfigId: action.authConfigId,
262
556
  });
263
- return {
264
- success: true,
265
- action: 'connect',
266
- connectLink: result?.redirectUrl || result?.connectLink || null,
267
- connectionId: result?.id || result?.connectionId || null,
268
- raw: result,
269
- };
557
+ return r.success
558
+ ? {
559
+ success: true,
560
+ action: 'connect',
561
+ connectLink: r.connectLink,
562
+ connectionId: r.connectionId,
563
+ raw: r.raw,
564
+ }
565
+ : {
566
+ success: false,
567
+ action: 'connect',
568
+ error: r.error,
569
+ ...(r.code ? { code: r.code } : {}),
570
+ };
270
571
  }
271
572
  case 'connection-status': {
272
- const conn = await client.connectedAccounts?.get?.({ userId, toolkit: action.toolkitSlug });
273
- const connected = !!(conn && (conn.status === 'ACTIVE' || conn.connected === true));
573
+ // composioService.connectionStatus uses `.list({userId,
574
+ // toolkit})` + client-side filter the old `.get({…})`
575
+ // path passed an object as a connectionId and got back the
576
+ // "Path parameters result in path with invalid segments"
577
+ // SDK error.
578
+ const r = await composioService.connectionStatus(userId, action.toolkitSlug);
274
579
  return {
275
- success: true,
580
+ success: r.success,
276
581
  action: 'connection-status',
277
582
  toolkitSlug: action.toolkitSlug,
278
- connected,
279
- status: conn?.status || 'NOT_CONNECTED',
280
- connectionId: conn?.id || null,
583
+ connected: r.connected,
584
+ status: r.status,
585
+ connectionId: r.connectionId,
586
+ ...(r.error ? { error: r.error } : {}),
281
587
  };
282
588
  }
283
589
  case 'execute': {
@@ -294,6 +600,10 @@ NOTES:
294
600
  error: result?.error || null,
295
601
  };
296
602
  }
603
+ case 'find-action':
604
+ return await this._executeFindAction(action, { agentId: userId });
605
+ case 'backfill-actions-index':
606
+ return await this._executeBackfillActionsIndex(client, userId);
297
607
  default:
298
608
  return { success: false, error: `Unknown composio action: ${type}` };
299
609
  }