opensentinel 3.1.1 → 3.7.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 (361) hide show
  1. package/README.md +138 -83
  2. package/dist/agent-manager-JZ4IM7XI.js +39 -0
  3. package/dist/agent-processor-DDDHC2SO.js +281 -0
  4. package/dist/agent-processor-DDDHC2SO.js.map +1 -0
  5. package/dist/agent-types-2T4PXLFQ.js +12 -0
  6. package/dist/alerting-LK7VVYTX.js +699 -0
  7. package/dist/alerting-LK7VVYTX.js.map +1 -0
  8. package/dist/analysis-agent-JWN2GXYE.js +288 -0
  9. package/dist/analysis-agent-JWN2GXYE.js.map +1 -0
  10. package/dist/analyzer-OTWE3ARE.js +22 -0
  11. package/dist/{archiver-AVNBYCKQ.js → archiver-FPGKRP6P.js} +2 -2
  12. package/dist/{audit-logger-OBPR7CRO.js → audit-logger-CI4WZQPD.js} +6 -5
  13. package/dist/{auth-UOX5K2BE.js → auth-PH5IHISW.js} +2 -2
  14. package/dist/{autonomy-ZXDBDQUJ.js → autonomy-N7W5XPLX.js} +4 -3
  15. package/dist/autonomy-N7W5XPLX.js.map +1 -0
  16. package/dist/{aws-s3-Q4LLZZPD.js → aws-s3-QZMURYXB.js} +2 -2
  17. package/dist/{backup-restore-PZ7CYYB7.js → backup-restore-72OQTZO3.js} +2 -2
  18. package/dist/{blocks-R3PODY47.js → blocks-YOWOESDD.js} +4 -4
  19. package/dist/bot-VDHBGUVI.js +47 -0
  20. package/dist/brain-6QTXN4QP.js +66 -0
  21. package/dist/{camera-monitor-M5CYKUU4.js → camera-monitor-LHTUWHEL.js} +2 -2
  22. package/dist/{charts-V7ARZNKF.js → charts-FJ32GQK7.js} +2 -2
  23. package/dist/{chunk-WRAKK6K6.js → chunk-2I5QHYG6.js} +5 -3
  24. package/dist/chunk-2I5QHYG6.js.map +1 -0
  25. package/dist/{chunk-TVEWKIK3.js → chunk-2WTKTG2C.js} +2 -2
  26. package/dist/chunk-3AWAWRWB.js +143 -0
  27. package/dist/chunk-3AWAWRWB.js.map +1 -0
  28. package/dist/{chunk-ZLZKF2PM.js → chunk-4KIHDIXZ.js} +43 -2
  29. package/dist/chunk-4KIHDIXZ.js.map +1 -0
  30. package/dist/{chunk-EVE7MIIY.js → chunk-4WH6MFEW.js} +15 -16
  31. package/dist/chunk-4WH6MFEW.js.map +1 -0
  32. package/dist/{chunk-I6BDYQIG.js → chunk-56UJS2LA.js} +6 -6
  33. package/dist/chunk-56UJS2LA.js.map +1 -0
  34. package/dist/chunk-5BTVJR7R.js +37 -0
  35. package/dist/chunk-5BTVJR7R.js.map +1 -0
  36. package/dist/chunk-5JJTLWOR.js +1021 -0
  37. package/dist/chunk-5JJTLWOR.js.map +1 -0
  38. package/dist/chunk-66SAOZPU.js +236 -0
  39. package/dist/chunk-66SAOZPU.js.map +1 -0
  40. package/dist/chunk-6HGMRR4J.js +113 -0
  41. package/dist/chunk-6HGMRR4J.js.map +1 -0
  42. package/dist/chunk-6W6PTJFT.js +181 -0
  43. package/dist/chunk-6W6PTJFT.js.map +1 -0
  44. package/dist/chunk-6ZNCY2GI.js +418 -0
  45. package/dist/chunk-6ZNCY2GI.js.map +1 -0
  46. package/dist/chunk-7BNFELEK.js +31 -0
  47. package/dist/chunk-7BNFELEK.js.map +1 -0
  48. package/dist/chunk-ADTDYJO7.js +265 -0
  49. package/dist/chunk-ADTDYJO7.js.map +1 -0
  50. package/dist/{chunk-OCVQGBJK.js → chunk-BBN4VCNK.js} +6 -4
  51. package/dist/chunk-BBN4VCNK.js.map +1 -0
  52. package/dist/{chunk-SJSUSJ47.js → chunk-BNZHWAZC.js} +2 -2
  53. package/dist/chunk-C6PELIHS.js +60 -0
  54. package/dist/chunk-C6PELIHS.js.map +1 -0
  55. package/dist/{chunk-MQJ2ECQT.js → chunk-CUPEENUY.js} +3 -3
  56. package/dist/{chunk-NHMBTUMW.js → chunk-CWT6CAE5.js} +2 -2
  57. package/dist/{chunk-4GLYY4NN.js → chunk-CZTMGHUC.js} +8 -2
  58. package/dist/chunk-CZTMGHUC.js.map +1 -0
  59. package/dist/{chunk-RZ4YESBG.js → chunk-DOYGMNMK.js} +1 -1
  60. package/dist/chunk-DOYGMNMK.js.map +1 -0
  61. package/dist/chunk-DTISLIMB.js +89 -0
  62. package/dist/chunk-DTISLIMB.js.map +1 -0
  63. package/dist/{chunk-SPPMCAKG.js → chunk-GBVJTRXS.js} +2 -2
  64. package/dist/chunk-GBVJTRXS.js.map +1 -0
  65. package/dist/{chunk-AYUKPTSM.js → chunk-GJETKBOY.js} +96 -218
  66. package/dist/chunk-GJETKBOY.js.map +1 -0
  67. package/dist/{chunk-BXZ6EA52.js → chunk-GW6V4D43.js} +57 -3
  68. package/dist/chunk-GW6V4D43.js.map +1 -0
  69. package/dist/{chunk-6PMVAAA7.js → chunk-HJSEEFO3.js} +3 -3
  70. package/dist/{chunk-TYAGMJNV.js → chunk-HQZQFEAX.js} +5 -5
  71. package/dist/{chunk-MXAPLSJ5.js → chunk-J4JW73TT.js} +2 -2
  72. package/dist/{chunk-VEHFVBLI.js → chunk-JHYYFPKX.js} +2 -2
  73. package/dist/chunk-LFDXEYYB.js +150 -0
  74. package/dist/chunk-LFDXEYYB.js.map +1 -0
  75. package/dist/chunk-MIC5IBQF.js +386 -0
  76. package/dist/chunk-MIC5IBQF.js.map +1 -0
  77. package/dist/chunk-ODCFS5WD.js +463 -0
  78. package/dist/chunk-ODCFS5WD.js.map +1 -0
  79. package/dist/{chunk-XMCVRVTF.js → chunk-P64EV4YY.js} +1 -1
  80. package/dist/chunk-P64EV4YY.js.map +1 -0
  81. package/dist/chunk-PBOCSGNL.js +84 -0
  82. package/dist/chunk-PBOCSGNL.js.map +1 -0
  83. package/dist/{chunk-66OJ3WB4.js → chunk-PD3CTDO6.js} +2 -2
  84. package/dist/chunk-QPY3WRVM.js +647 -0
  85. package/dist/chunk-QPY3WRVM.js.map +1 -0
  86. package/dist/chunk-S2EOIVF4.js +3907 -0
  87. package/dist/chunk-S2EOIVF4.js.map +1 -0
  88. package/dist/chunk-SDLOMKCW.js +213 -0
  89. package/dist/chunk-SDLOMKCW.js.map +1 -0
  90. package/dist/chunk-TKBVW7ZJ.js +162 -0
  91. package/dist/chunk-TKBVW7ZJ.js.map +1 -0
  92. package/dist/{chunk-BRBWNV65.js → chunk-U2X2J3FI.js} +3 -3
  93. package/dist/chunk-U2X2J3FI.js.map +1 -0
  94. package/dist/{chunk-PLDDJCW6.js → chunk-UP2VWCW5.js} +1 -12
  95. package/dist/{chunk-SVAPX2XN.js → chunk-V3OKHQUX.js} +9 -7
  96. package/dist/{chunk-SVAPX2XN.js.map → chunk-V3OKHQUX.js.map} +1 -1
  97. package/dist/{chunk-4UOE5TUZ.js → chunk-WMDVOWN6.js} +4 -4
  98. package/dist/chunk-WMFYI7XC.js +564 -0
  99. package/dist/chunk-WMFYI7XC.js.map +1 -0
  100. package/dist/chunk-WZAH34TG.js +129 -0
  101. package/dist/chunk-WZAH34TG.js.map +1 -0
  102. package/dist/{chunk-H5RQOFO2.js → chunk-X6Q3K3L2.js} +6 -6
  103. package/dist/chunk-X6Q3K3L2.js.map +1 -0
  104. package/dist/chunk-XTX7EK43.js +134 -0
  105. package/dist/chunk-XTX7EK43.js.map +1 -0
  106. package/dist/chunk-YEDEAX6Y.js +194 -0
  107. package/dist/chunk-YEDEAX6Y.js.map +1 -0
  108. package/dist/{chunk-XKYRH4FM.js → chunk-ZIBRVA3Y.js} +70 -30
  109. package/dist/chunk-ZIBRVA3Y.js.map +1 -0
  110. package/dist/chunk-ZIYTHUM5.js +457 -0
  111. package/dist/chunk-ZIYTHUM5.js.map +1 -0
  112. package/dist/{chunk-766ASQWE.js → chunk-ZMML6T63.js} +2711 -2329
  113. package/dist/chunk-ZMML6T63.js.map +1 -0
  114. package/dist/chunk-ZVHG4KF2.js +380 -0
  115. package/dist/chunk-ZVHG4KF2.js.map +1 -0
  116. package/dist/chunker-K6WTR62A.js +12 -0
  117. package/dist/cli.js +1 -1
  118. package/dist/cli.js.map +1 -1
  119. package/dist/{client-ZQSFPMOB.js → client-FOIYPOZQ.js} +5 -6
  120. package/dist/{clipboard-manager-TEO2GEDN.js → clipboard-manager-4SBNESGZ.js} +2 -2
  121. package/dist/coding-agent-DESSU3AC.js +233 -0
  122. package/dist/coding-agent-DESSU3AC.js.map +1 -0
  123. package/dist/commands/setup.js +2 -2
  124. package/dist/commands/start.js +3 -3
  125. package/dist/commands/status.js +2 -2
  126. package/dist/commands/stop.js +2 -2
  127. package/dist/commands/utils.js +2 -2
  128. package/dist/cost-tracker-KZQSTSE2.js +11 -0
  129. package/dist/{cron-explain-HHQKPD3M.js → cron-explain-UOOOYWZZ.js} +2 -2
  130. package/dist/{crypto-4AP47IKC.js → crypto-2VG3RJR2.js} +2 -2
  131. package/dist/{databases-37X4CI2Y.js → databases-XDPMG5AV.js} +4 -4
  132. package/dist/db-I7MNG6CL.js +83 -0
  133. package/dist/discord-6UQHCN27.js +81 -0
  134. package/dist/documents-PFHSK7SZ.js +184 -0
  135. package/dist/documents-PFHSK7SZ.js.map +1 -0
  136. package/dist/docx-parser-EXL4TN5E.js +16 -0
  137. package/dist/{email-K7LO2IPB.js → email-6OIN4SYL.js} +34 -25
  138. package/dist/email-6OIN4SYL.js.map +1 -0
  139. package/dist/{enhanced-retrieval-DNLLEM4Z.js → enhanced-retrieval-JWX2HWU4.js} +12 -8
  140. package/dist/{enhanced-retrieval-DNLLEM4Z.js.map → enhanced-retrieval-JWX2HWU4.js.map} +1 -1
  141. package/dist/enrichment-pipeline-7FE5R5ZI.js +14 -0
  142. package/dist/{entity-resolution-Y3IUWEAT.js → entity-resolution-7Z6STVXX.js} +6 -5
  143. package/dist/env-GN5VHI43.js +12 -0
  144. package/dist/error-tracker-64DEH3D7.js +32 -0
  145. package/dist/finnhub-X7ZMQSXF.js +178 -0
  146. package/dist/finnhub-X7ZMQSXF.js.map +1 -0
  147. package/dist/fred-TMUF3J2V.js +203 -0
  148. package/dist/fred-TMUF3J2V.js.map +1 -0
  149. package/dist/github-DUWSXCNP.js +833 -0
  150. package/dist/github-DUWSXCNP.js.map +1 -0
  151. package/dist/{google-workspace-DKWUVNGC.js → google-workspace-TSZPZK5G.js} +2 -2
  152. package/dist/graph-client-NB475AK5.js +17 -0
  153. package/dist/{hash-tool-ULQYD7B5.js → hash-tool-ENAB5LWH.js} +2 -2
  154. package/dist/{heartbeat-monitor-GCISLXI3.js → heartbeat-monitor-KRDYTDBF.js} +2 -2
  155. package/dist/hooks-N4MIFBVM.js +14 -0
  156. package/dist/{image-generation-OSU7FP6F.js → image-generation-MDE6AVQO.js} +2 -2
  157. package/dist/imessage-DSGSGUZS.js +44 -0
  158. package/dist/inbox-summarizer-F2KAU72V.js +56 -0
  159. package/dist/{incident-response-C5J7Q6DT.js → incident-response-E3UGMX5G.js} +8 -6
  160. package/dist/incident-response-E3UGMX5G.js.map +1 -0
  161. package/dist/{inventory-manager-352OHXWD.js → inventory-manager-C67BSZM6.js} +2 -2
  162. package/dist/{jira-GSGDBMIG.js → jira-PAGZWUBJ.js} +2 -2
  163. package/dist/{json-tool-QE2SYHEG.js → json-tool-4FK5RNER.js} +2 -2
  164. package/dist/{key-rotation-DPHU4ZTB.js → key-rotation-WCC5FOYS.js} +2 -2
  165. package/dist/knowledge-base-5SMMOGQJ.js +46 -0
  166. package/dist/lib.d.ts +94 -1
  167. package/dist/lib.js +83 -66
  168. package/dist/lib.js.map +1 -1
  169. package/dist/{mailchimp-KKNF6QJ7.js → mailchimp-ZFYDC44J.js} +2 -2
  170. package/dist/{matrix-QVHG76I7.js → matrix-WYGEOZL5.js} +30 -21
  171. package/dist/{matrix-QVHG76I7.js.map → matrix-WYGEOZL5.js.map} +1 -1
  172. package/dist/{mcp-3JI6W7ZE.js → mcp-DJ2QDA6A.js} +3 -3
  173. package/dist/metrics-BH3ZLGEV.js +25 -0
  174. package/dist/{microsoft365-UCBKJHNX.js → microsoft365-6G2IJMWC.js} +2 -2
  175. package/dist/multi-user-XAEMB244.js +411 -0
  176. package/dist/multi-user-XAEMB244.js.map +1 -0
  177. package/dist/oauth-UPJYFOVU.js +34 -0
  178. package/dist/{ocr-AC7NPX33.js → ocr-UONKTQU7.js} +6 -4
  179. package/dist/{ollama-BOAMSPLJ.js → ollama-J7CU45WT.js} +2 -2
  180. package/dist/osint-agent-RL5XPBRQ.js +189 -0
  181. package/dist/osint-agent-RL5XPBRQ.js.map +1 -0
  182. package/dist/{pages-MI523RB7.js → pages-XDE7JRCA.js} +5 -5
  183. package/dist/{pair-JDFTERIK.js → pair-YZJFQUU5.js} +2 -2
  184. package/dist/{pairing-IFQYCPNS.js → pairing-77N47RAT.js} +2 -2
  185. package/dist/{pdf-ALQVOEJR.js → pdf-67HGXCFJ.js} +3 -3
  186. package/dist/pdf-parser-YLMTTYHL.js +14 -0
  187. package/dist/{presentations-DSV5IHG5.js → presentations-UOET2FVZ.js} +3 -3
  188. package/dist/presentations-UOET2FVZ.js.map +1 -0
  189. package/dist/{prometheus-JNT2BD4L.js → prometheus-YETCZO4I.js} +2 -2
  190. package/dist/prometheus-YETCZO4I.js.map +1 -0
  191. package/dist/{providers-J4LYPHDR.js → providers-2YQ6E3IF.js} +6 -4
  192. package/dist/providers-2YQ6E3IF.js.map +1 -0
  193. package/dist/{qr-code-WIX4PB4U.js → qr-code-6WZJHRKL.js} +2 -2
  194. package/dist/qr-code-6WZJHRKL.js.map +1 -0
  195. package/dist/{quickbooks-XB4NII2S.js → quickbooks-N675W7IK.js} +2 -2
  196. package/dist/{regex-tool-W4ABRKGK.js → regex-tool-6Q63LQ7B.js} +2 -2
  197. package/dist/regex-tool-6Q63LQ7B.js.map +1 -0
  198. package/dist/research-agent-WCRSY3UZ.js +168 -0
  199. package/dist/research-agent-WCRSY3UZ.js.map +1 -0
  200. package/dist/risk-engine-YKCPT5D5.js +10 -0
  201. package/dist/risk-engine-YKCPT5D5.js.map +1 -0
  202. package/dist/scheduler-6PLLAQI7.js +74 -0
  203. package/dist/scheduler-6PLLAQI7.js.map +1 -0
  204. package/dist/schema-ETY7L2VA.js +78 -0
  205. package/dist/schema-ETY7L2VA.js.map +1 -0
  206. package/dist/{search-BCLBO5E3.js → search-GMLKBHSW.js} +4 -4
  207. package/dist/search-GMLKBHSW.js.map +1 -0
  208. package/dist/{sendgrid-RNXCAFKM.js → sendgrid-QGJIVPWV.js} +2 -2
  209. package/dist/sharepoint-V5P4Q62L.js +30 -0
  210. package/dist/sharepoint-V5P4Q62L.js.map +1 -0
  211. package/dist/{shopify-NCXYJB4R.js → shopify-ON2PAU27.js} +2 -2
  212. package/dist/signal-7D5EPGVL.js +44 -0
  213. package/dist/signal-7D5EPGVL.js.map +1 -0
  214. package/dist/slack-KSS6YK5Z.js +86 -0
  215. package/dist/slack-KSS6YK5Z.js.map +1 -0
  216. package/dist/{sms-M3JIOTCW.js → sms-CSUCC7HL.js} +4 -4
  217. package/dist/sms-CSUCC7HL.js.map +1 -0
  218. package/dist/{src-VYUE6LRA.js → src-GO7GGW7O.js} +190 -52
  219. package/dist/src-GO7GGW7O.js.map +1 -0
  220. package/dist/{stocks-XXWBPOCU.js → stocks-4M4HZWZS.js} +2 -2
  221. package/dist/stocks-4M4HZWZS.js.map +1 -0
  222. package/dist/text-extractor-OAUBAW5P.js +12 -0
  223. package/dist/text-extractor-OAUBAW5P.js.map +1 -0
  224. package/dist/{text-transform-6SGUA5Z4.js → text-transform-HCLCUDFZ.js} +2 -2
  225. package/dist/text-transform-HCLCUDFZ.js.map +1 -0
  226. package/dist/token-store-SEWRX6RE.js +20 -0
  227. package/dist/token-store-SEWRX6RE.js.map +1 -0
  228. package/dist/tools-PJZ6RI4P.js +47 -0
  229. package/dist/tools-PJZ6RI4P.js.map +1 -0
  230. package/dist/{tunnel-IWMXUML4.js → tunnel-XOUVVRAK.js} +4 -2
  231. package/dist/tunnel-XOUVVRAK.js.map +1 -0
  232. package/dist/{twilio-53GEW5JT.js → twilio-3L7DUNYQ.js} +2 -2
  233. package/dist/{unit-converter-ZYXMEZOE.js → unit-converter-LYPAHU64.js} +2 -2
  234. package/dist/unit-converter-LYPAHU64.js.map +1 -0
  235. package/dist/whatsapp-DWXK25V2.js +44 -0
  236. package/dist/whatsapp-DWXK25V2.js.map +1 -0
  237. package/dist/{word-document-7B6SJMAY.js → word-document-AV3YB4L2.js} +4 -4
  238. package/dist/word-document-AV3YB4L2.js.map +1 -0
  239. package/dist/workflow-store-5Y56GUP7.js +373 -0
  240. package/dist/workflow-store-5Y56GUP7.js.map +1 -0
  241. package/dist/writing-agent-VDGLNOGO.js +243 -0
  242. package/dist/writing-agent-VDGLNOGO.js.map +1 -0
  243. package/dist/{xero-QYO66D45.js → xero-UHAHVYSD.js} +2 -2
  244. package/dist/{zapier-webhook-TBZ5YF2A.js → zapier-webhook-NIELLTXR.js} +2 -2
  245. package/drizzle/0002_mushy_master_mold.sql +139 -139
  246. package/drizzle/0003_overjoyed_rhodey.sql +46 -0
  247. package/drizzle/meta/0002_snapshot.json +3636 -3636
  248. package/drizzle/meta/0003_snapshot.json +3946 -0
  249. package/drizzle/meta/_journal.json +7 -0
  250. package/package.json +110 -100
  251. package/dist/autonomy-ZXDBDQUJ.js.map +0 -1
  252. package/dist/bot-QRARP4UN.js +0 -36
  253. package/dist/brain-7XLLM3KC.js +0 -56
  254. package/dist/chunk-4GLYY4NN.js.map +0 -1
  255. package/dist/chunk-766ASQWE.js.map +0 -1
  256. package/dist/chunk-AYUKPTSM.js.map +0 -1
  257. package/dist/chunk-BRBWNV65.js.map +0 -1
  258. package/dist/chunk-BXZ6EA52.js.map +0 -1
  259. package/dist/chunk-EVE7MIIY.js.map +0 -1
  260. package/dist/chunk-H5RQOFO2.js.map +0 -1
  261. package/dist/chunk-I6BDYQIG.js.map +0 -1
  262. package/dist/chunk-IZJMVV7O.js +0 -347
  263. package/dist/chunk-IZJMVV7O.js.map +0 -1
  264. package/dist/chunk-O7IH7JTI.js +0 -1898
  265. package/dist/chunk-O7IH7JTI.js.map +0 -1
  266. package/dist/chunk-OCVQGBJK.js.map +0 -1
  267. package/dist/chunk-RZ4YESBG.js.map +0 -1
  268. package/dist/chunk-SPPMCAKG.js.map +0 -1
  269. package/dist/chunk-VRD5CYRL.js +0 -1568
  270. package/dist/chunk-VRD5CYRL.js.map +0 -1
  271. package/dist/chunk-WRAKK6K6.js.map +0 -1
  272. package/dist/chunk-XKYRH4FM.js.map +0 -1
  273. package/dist/chunk-XMCVRVTF.js.map +0 -1
  274. package/dist/chunk-ZLZKF2PM.js.map +0 -1
  275. package/dist/discord-B3HUPGQ6.js +0 -70
  276. package/dist/dist-UISMLMFN.js +0 -21847
  277. package/dist/dist-UISMLMFN.js.map +0 -1
  278. package/dist/email-K7LO2IPB.js.map +0 -1
  279. package/dist/enrichment-pipeline-MNHNW65K.js +0 -13
  280. package/dist/env-IWXUVTCB.js +0 -12
  281. package/dist/imessage-NGA2XF2V.js +0 -35
  282. package/dist/inbox-summarizer-NRI4S7IF.js +0 -47
  283. package/dist/incident-response-C5J7Q6DT.js.map +0 -1
  284. package/dist/presentations-DSV5IHG5.js.map +0 -1
  285. package/dist/scheduler-VK4WFERV.js +0 -63
  286. package/dist/signal-6CGDFYL2.js +0 -35
  287. package/dist/slack-IZQWIKOH.js +0 -75
  288. package/dist/src-VYUE6LRA.js.map +0 -1
  289. package/dist/tools-2RLEI2N6.js +0 -38
  290. package/dist/tunnel-IWMXUML4.js.map +0 -1
  291. package/dist/whatsapp-LFX6YKCM.js +0 -35
  292. package/dist/word-document-7B6SJMAY.js.map +0 -1
  293. /package/dist/{audit-logger-OBPR7CRO.js.map → agent-manager-JZ4IM7XI.js.map} +0 -0
  294. /package/dist/{auth-UOX5K2BE.js.map → agent-types-2T4PXLFQ.js.map} +0 -0
  295. /package/dist/{backup-restore-PZ7CYYB7.js.map → analyzer-OTWE3ARE.js.map} +0 -0
  296. /package/dist/{archiver-AVNBYCKQ.js.map → archiver-FPGKRP6P.js.map} +0 -0
  297. /package/dist/{blocks-R3PODY47.js.map → audit-logger-CI4WZQPD.js.map} +0 -0
  298. /package/dist/{bot-QRARP4UN.js.map → auth-PH5IHISW.js.map} +0 -0
  299. /package/dist/{aws-s3-Q4LLZZPD.js.map → aws-s3-QZMURYXB.js.map} +0 -0
  300. /package/dist/{brain-7XLLM3KC.js.map → backup-restore-72OQTZO3.js.map} +0 -0
  301. /package/dist/{chunk-PLDDJCW6.js.map → blocks-YOWOESDD.js.map} +0 -0
  302. /package/dist/{client-ZQSFPMOB.js.map → bot-VDHBGUVI.js.map} +0 -0
  303. /package/dist/{clipboard-manager-TEO2GEDN.js.map → brain-6QTXN4QP.js.map} +0 -0
  304. /package/dist/{camera-monitor-M5CYKUU4.js.map → camera-monitor-LHTUWHEL.js.map} +0 -0
  305. /package/dist/{charts-V7ARZNKF.js.map → charts-FJ32GQK7.js.map} +0 -0
  306. /package/dist/{chunk-TVEWKIK3.js.map → chunk-2WTKTG2C.js.map} +0 -0
  307. /package/dist/{chunk-SJSUSJ47.js.map → chunk-BNZHWAZC.js.map} +0 -0
  308. /package/dist/{chunk-MQJ2ECQT.js.map → chunk-CUPEENUY.js.map} +0 -0
  309. /package/dist/{chunk-NHMBTUMW.js.map → chunk-CWT6CAE5.js.map} +0 -0
  310. /package/dist/{chunk-6PMVAAA7.js.map → chunk-HJSEEFO3.js.map} +0 -0
  311. /package/dist/{chunk-TYAGMJNV.js.map → chunk-HQZQFEAX.js.map} +0 -0
  312. /package/dist/{chunk-MXAPLSJ5.js.map → chunk-J4JW73TT.js.map} +0 -0
  313. /package/dist/{chunk-VEHFVBLI.js.map → chunk-JHYYFPKX.js.map} +0 -0
  314. /package/dist/{chunk-66OJ3WB4.js.map → chunk-PD3CTDO6.js.map} +0 -0
  315. /package/dist/{cron-explain-HHQKPD3M.js.map → chunk-UP2VWCW5.js.map} +0 -0
  316. /package/dist/{chunk-4UOE5TUZ.js.map → chunk-WMDVOWN6.js.map} +0 -0
  317. /package/dist/{crypto-4AP47IKC.js.map → chunker-K6WTR62A.js.map} +0 -0
  318. /package/dist/{databases-37X4CI2Y.js.map → client-FOIYPOZQ.js.map} +0 -0
  319. /package/dist/{discord-B3HUPGQ6.js.map → clipboard-manager-4SBNESGZ.js.map} +0 -0
  320. /package/dist/{enrichment-pipeline-MNHNW65K.js.map → cost-tracker-KZQSTSE2.js.map} +0 -0
  321. /package/dist/{entity-resolution-Y3IUWEAT.js.map → cron-explain-UOOOYWZZ.js.map} +0 -0
  322. /package/dist/{env-IWXUVTCB.js.map → crypto-2VG3RJR2.js.map} +0 -0
  323. /package/dist/{hash-tool-ULQYD7B5.js.map → databases-XDPMG5AV.js.map} +0 -0
  324. /package/dist/{heartbeat-monitor-GCISLXI3.js.map → db-I7MNG6CL.js.map} +0 -0
  325. /package/dist/{imessage-NGA2XF2V.js.map → discord-6UQHCN27.js.map} +0 -0
  326. /package/dist/{inbox-summarizer-NRI4S7IF.js.map → docx-parser-EXL4TN5E.js.map} +0 -0
  327. /package/dist/{inventory-manager-352OHXWD.js.map → enrichment-pipeline-7FE5R5ZI.js.map} +0 -0
  328. /package/dist/{json-tool-QE2SYHEG.js.map → entity-resolution-7Z6STVXX.js.map} +0 -0
  329. /package/dist/{key-rotation-DPHU4ZTB.js.map → env-GN5VHI43.js.map} +0 -0
  330. /package/dist/{mcp-3JI6W7ZE.js.map → error-tracker-64DEH3D7.js.map} +0 -0
  331. /package/dist/{google-workspace-DKWUVNGC.js.map → google-workspace-TSZPZK5G.js.map} +0 -0
  332. /package/dist/{ocr-AC7NPX33.js.map → graph-client-NB475AK5.js.map} +0 -0
  333. /package/dist/{ollama-BOAMSPLJ.js.map → hash-tool-ENAB5LWH.js.map} +0 -0
  334. /package/dist/{pages-MI523RB7.js.map → heartbeat-monitor-KRDYTDBF.js.map} +0 -0
  335. /package/dist/{pairing-IFQYCPNS.js.map → hooks-N4MIFBVM.js.map} +0 -0
  336. /package/dist/{image-generation-OSU7FP6F.js.map → image-generation-MDE6AVQO.js.map} +0 -0
  337. /package/dist/{pdf-ALQVOEJR.js.map → imessage-DSGSGUZS.js.map} +0 -0
  338. /package/dist/{prometheus-JNT2BD4L.js.map → inbox-summarizer-F2KAU72V.js.map} +0 -0
  339. /package/dist/{providers-J4LYPHDR.js.map → inventory-manager-C67BSZM6.js.map} +0 -0
  340. /package/dist/{jira-GSGDBMIG.js.map → jira-PAGZWUBJ.js.map} +0 -0
  341. /package/dist/{qr-code-WIX4PB4U.js.map → json-tool-4FK5RNER.js.map} +0 -0
  342. /package/dist/{regex-tool-W4ABRKGK.js.map → key-rotation-WCC5FOYS.js.map} +0 -0
  343. /package/dist/{scheduler-VK4WFERV.js.map → knowledge-base-5SMMOGQJ.js.map} +0 -0
  344. /package/dist/{mailchimp-KKNF6QJ7.js.map → mailchimp-ZFYDC44J.js.map} +0 -0
  345. /package/dist/{search-BCLBO5E3.js.map → mcp-DJ2QDA6A.js.map} +0 -0
  346. /package/dist/{signal-6CGDFYL2.js.map → metrics-BH3ZLGEV.js.map} +0 -0
  347. /package/dist/{microsoft365-UCBKJHNX.js.map → microsoft365-6G2IJMWC.js.map} +0 -0
  348. /package/dist/{slack-IZQWIKOH.js.map → oauth-UPJYFOVU.js.map} +0 -0
  349. /package/dist/{sms-M3JIOTCW.js.map → ocr-UONKTQU7.js.map} +0 -0
  350. /package/dist/{stocks-XXWBPOCU.js.map → ollama-J7CU45WT.js.map} +0 -0
  351. /package/dist/{text-transform-6SGUA5Z4.js.map → pages-XDE7JRCA.js.map} +0 -0
  352. /package/dist/{pair-JDFTERIK.js.map → pair-YZJFQUU5.js.map} +0 -0
  353. /package/dist/{tools-2RLEI2N6.js.map → pairing-77N47RAT.js.map} +0 -0
  354. /package/dist/{unit-converter-ZYXMEZOE.js.map → pdf-67HGXCFJ.js.map} +0 -0
  355. /package/dist/{whatsapp-LFX6YKCM.js.map → pdf-parser-YLMTTYHL.js.map} +0 -0
  356. /package/dist/{quickbooks-XB4NII2S.js.map → quickbooks-N675W7IK.js.map} +0 -0
  357. /package/dist/{sendgrid-RNXCAFKM.js.map → sendgrid-QGJIVPWV.js.map} +0 -0
  358. /package/dist/{shopify-NCXYJB4R.js.map → shopify-ON2PAU27.js.map} +0 -0
  359. /package/dist/{twilio-53GEW5JT.js.map → twilio-3L7DUNYQ.js.map} +0 -0
  360. /package/dist/{xero-QYO66D45.js.map → xero-UHAHVYSD.js.map} +0 -0
  361. /package/dist/{zapier-webhook-TBZ5YF2A.js.map → zapier-webhook-NIELLTXR.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  env
3
- } from "./chunk-ZLZKF2PM.js";
3
+ } from "./chunk-4KIHDIXZ.js";
4
4
  import {
5
5
  OpenAICompatibleProvider
6
6
  } from "./chunk-35WYTA3C.js";
@@ -197,6 +197,36 @@ function mapStopReason(reason) {
197
197
  }
198
198
  }
199
199
 
200
+ // src/core/providers/gemini.ts
201
+ var GeminiProvider = class extends OpenAICompatibleProvider {
202
+ constructor(apiKey, defaultModel = "gemini-2.0-flash") {
203
+ super({
204
+ id: "gemini",
205
+ name: "Google Gemini",
206
+ type: "openai-compatible",
207
+ apiKey,
208
+ baseUrl: "https://generativelanguage.googleapis.com/v1beta/openai/",
209
+ defaultModel,
210
+ enabled: true
211
+ });
212
+ }
213
+ /**
214
+ * Gemini 2.0 Flash supports vision, tool use, and streaming
215
+ * with a 1M token context window.
216
+ */
217
+ getCapabilities() {
218
+ return {
219
+ supportsVision: true,
220
+ supportsToolUse: true,
221
+ supportsStreaming: true,
222
+ supportsExtendedThinking: false,
223
+ supportsSystemPrompt: true,
224
+ maxContextWindow: 1048576
225
+ // 1M tokens
226
+ };
227
+ }
228
+ };
229
+
200
230
  // src/core/providers/registry.ts
201
231
  var ProviderRegistry = class {
202
232
  providers = /* @__PURE__ */ new Map();
@@ -328,6 +358,29 @@ async function initializeProviders() {
328
358
  );
329
359
  console.log("[LLM] Registered provider: Mistral");
330
360
  }
361
+ if (env.GEMINI_API_KEY) {
362
+ providerRegistry.register(
363
+ new GeminiProvider(
364
+ env.GEMINI_API_KEY,
365
+ env.GEMINI_DEFAULT_MODEL || "gemini-2.0-flash"
366
+ )
367
+ );
368
+ console.log("[LLM] Registered provider: Google Gemini");
369
+ }
370
+ if (env.XAI_API_KEY) {
371
+ providerRegistry.register(
372
+ new OpenAICompatibleProvider({
373
+ id: "xai",
374
+ name: "xAI (Grok)",
375
+ type: "openai-compatible",
376
+ apiKey: env.XAI_API_KEY,
377
+ baseUrl: "https://api.x.ai/v1",
378
+ defaultModel: env.XAI_DEFAULT_MODEL || "grok-2",
379
+ enabled: true
380
+ })
381
+ );
382
+ console.log("[LLM] Registered provider: xAI (Grok)");
383
+ }
331
384
  if (env.OPENAI_COMPATIBLE_BASE_URL) {
332
385
  providerRegistry.register(
333
386
  new OpenAICompatibleProvider({
@@ -344,7 +397,7 @@ async function initializeProviders() {
344
397
  }
345
398
  if (env.OLLAMA_ENABLED) {
346
399
  try {
347
- const { OllamaProvider: OllamaProvider2 } = await import("./ollama-BOAMSPLJ.js");
400
+ const { OllamaProvider: OllamaProvider2 } = await import("./ollama-J7CU45WT.js");
348
401
  const ollamaBaseUrl = env.OLLAMA_BASE_URL || "http://localhost:11434";
349
402
  const ollamaModel = env.OLLAMA_DEFAULT_MODEL || "llama3.1";
350
403
  const ollama = new OllamaProvider2(ollamaBaseUrl, ollamaModel);
@@ -376,7 +429,8 @@ async function initializeProviders() {
376
429
 
377
430
  export {
378
431
  AnthropicProvider,
432
+ GeminiProvider,
379
433
  providerRegistry,
380
434
  initializeProviders
381
435
  };
382
- //# sourceMappingURL=chunk-BXZ6EA52.js.map
436
+ //# sourceMappingURL=chunk-GW6V4D43.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/core/providers/anthropic-provider.ts","../src/core/providers/gemini.ts","../src/core/providers/registry.ts","../src/core/providers/index.ts"],"sourcesContent":["/**\n * Anthropic Provider — Wraps the Anthropic SDK\n *\n * Converts between provider-agnostic LLM types and Anthropic's SDK types.\n * Handles extended thinking, vision, and tool use natively.\n */\n\nimport Anthropic from \"@anthropic-ai/sdk\";\nimport type { LLMProvider } from \"./provider\";\nimport type {\n LLMProviderCapabilities,\n LLMProviderConfig,\n LLMRequest,\n LLMResponse,\n LLMContentBlock,\n LLMStreamEvent,\n LLMStreamResult,\n LLMMessage,\n LLMTool,\n} from \"./types\";\n\nexport class AnthropicProvider implements LLMProvider {\n readonly id: string;\n readonly name: string;\n readonly type = \"anthropic\";\n private client: Anthropic;\n\n constructor(config: LLMProviderConfig) {\n this.id = config.id;\n this.name = config.name;\n this.client = new Anthropic({ apiKey: config.apiKey });\n }\n\n getCapabilities(): LLMProviderCapabilities {\n return {\n supportsVision: true,\n supportsToolUse: true,\n supportsStreaming: true,\n supportsExtendedThinking: true,\n supportsSystemPrompt: true,\n maxContextWindow: 200000,\n };\n }\n\n async createMessage(request: LLMRequest): Promise<LLMResponse> {\n const { system, messages } = this.extractSystem(request);\n\n const params: any = {\n model: request.model,\n max_tokens: request.max_tokens,\n system,\n messages,\n };\n\n if (request.tools?.length) {\n params.tools = request.tools.map(toLLMToolToAnthropicTool);\n }\n\n if (request.thinking) {\n params.thinking = request.thinking;\n }\n\n const response = await this.client.messages.create(params);\n\n return {\n content: response.content.map(anthropicBlockToLLM),\n stop_reason: mapStopReason(response.stop_reason),\n usage: {\n input_tokens: response.usage.input_tokens,\n output_tokens: response.usage.output_tokens,\n },\n model: response.model,\n };\n }\n\n streamMessage(request: LLMRequest): LLMStreamResult {\n const { system, messages } = this.extractSystem(request);\n\n const params: any = {\n model: request.model,\n max_tokens: request.max_tokens,\n system,\n messages,\n };\n\n if (request.tools?.length) {\n params.tools = request.tools.map(toLLMToolToAnthropicTool);\n }\n\n const stream = this.client.messages.stream(params);\n\n const events: AsyncIterable<LLMStreamEvent> = {\n async *[Symbol.asyncIterator]() {\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && (event.delta as any).type === \"text_delta\") {\n yield {\n type: \"content_block_delta\" as const,\n delta: { type: \"text_delta\" as const, text: (event.delta as any).text },\n };\n }\n }\n },\n };\n\n return {\n events,\n async finalMessage(): Promise<LLMResponse> {\n const msg = await stream.finalMessage();\n return {\n content: msg.content.map(anthropicBlockToLLM),\n stop_reason: mapStopReason(msg.stop_reason),\n usage: {\n input_tokens: msg.usage.input_tokens,\n output_tokens: msg.usage.output_tokens,\n },\n model: msg.model,\n };\n },\n };\n }\n\n async listModels(): Promise<string[]> {\n return [\n \"claude-haiku-4-5-20251001\",\n \"claude-sonnet-4-20250514\",\n \"claude-opus-4-20250514\",\n ];\n }\n\n async isAvailable(): Promise<boolean> {\n try {\n // Minimal API call to check connectivity\n await this.client.messages.create({\n model: \"claude-haiku-4-5-20251001\",\n max_tokens: 1,\n messages: [{ role: \"user\", content: \"hi\" }],\n });\n return true;\n } catch {\n return false;\n }\n }\n\n /** Get the raw Anthropic client (for specialized use cases like vision) */\n getClient(): Anthropic {\n return this.client;\n }\n\n /**\n * Extract system messages and convert LLMMessages to Anthropic MessageParam format.\n * Anthropic uses a separate `system` parameter instead of a system role message.\n */\n private extractSystem(request: LLMRequest): {\n system: string;\n messages: any[];\n } {\n let system = request.system || \"\";\n\n const messages = request.messages\n .filter((m) => m.role !== \"system\")\n .map((m) => llmMessageToAnthropicMessage(m));\n\n return { system, messages };\n }\n}\n\n// ============================================\n// Conversion helpers\n// ============================================\n\nfunction toLLMToolToAnthropicTool(tool: LLMTool): any {\n // Anthropic uses the same format: { name, description, input_schema }\n return {\n name: tool.name,\n description: tool.description,\n input_schema: tool.input_schema,\n };\n}\n\nfunction llmMessageToAnthropicMessage(msg: LLMMessage): any {\n if (typeof msg.content === \"string\") {\n return { role: msg.role, content: msg.content };\n }\n\n // Convert content blocks\n const anthropicContent = msg.content.map((block) => {\n switch (block.type) {\n case \"text\":\n return { type: \"text\", text: block.text };\n case \"image\":\n return {\n type: \"image\",\n source: {\n type: block.source?.type || \"base64\",\n media_type: block.source?.mediaType || \"image/jpeg\",\n data: block.source?.data,\n ...(block.source?.url ? { url: block.source.url } : {}),\n },\n };\n case \"tool_use\":\n return {\n type: \"tool_use\",\n id: block.id,\n name: block.name,\n input: block.input,\n };\n case \"tool_result\":\n return {\n type: \"tool_result\",\n tool_use_id: block.tool_use_id,\n content: block.content,\n };\n default:\n return { type: \"text\", text: block.text || \"\" };\n }\n });\n\n return { role: msg.role, content: anthropicContent };\n}\n\nfunction anthropicBlockToLLM(block: any): LLMContentBlock {\n switch (block.type) {\n case \"text\":\n return { type: \"text\", text: block.text };\n case \"tool_use\":\n return {\n type: \"tool_use\",\n id: block.id,\n name: block.name,\n input: block.input,\n };\n default:\n return { type: \"text\", text: block.text || \"\" };\n }\n}\n\nfunction mapStopReason(reason: string | null): LLMResponse[\"stop_reason\"] {\n switch (reason) {\n case \"end_turn\":\n return \"end_turn\";\n case \"tool_use\":\n return \"tool_use\";\n case \"max_tokens\":\n return \"max_tokens\";\n default:\n return \"end_turn\";\n }\n}\n","/**\r\n * Google Gemini Provider\r\n *\r\n * Extends the OpenAI-compatible provider for Google's Gemini API.\r\n * Gemini exposes an OpenAI-compatible endpoint at\r\n * https://generativelanguage.googleapis.com/v1beta/openai/\r\n */\r\n\r\nimport { OpenAICompatibleProvider } from \"./openai-compatible-provider\";\r\nimport type { LLMProviderCapabilities } from \"./types\";\r\n\r\nexport class GeminiProvider extends OpenAICompatibleProvider {\r\n constructor(\r\n apiKey: string,\r\n defaultModel: string = \"gemini-2.0-flash\"\r\n ) {\r\n super({\r\n id: \"gemini\",\r\n name: \"Google Gemini\",\r\n type: \"openai-compatible\",\r\n apiKey,\r\n baseUrl: \"https://generativelanguage.googleapis.com/v1beta/openai/\",\r\n defaultModel,\r\n enabled: true,\r\n });\r\n }\r\n\r\n /**\r\n * Gemini 2.0 Flash supports vision, tool use, and streaming\r\n * with a 1M token context window.\r\n */\r\n override getCapabilities(): LLMProviderCapabilities {\r\n return {\r\n supportsVision: true,\r\n supportsToolUse: true,\r\n supportsStreaming: true,\r\n supportsExtendedThinking: false,\r\n supportsSystemPrompt: true,\r\n maxContextWindow: 1048576, // 1M tokens\r\n };\r\n }\r\n}\r\n","/**\n * Provider Registry — Manages all configured LLM providers\n */\n\nimport type { LLMProvider } from \"./provider\";\n\nexport class ProviderRegistry {\n private providers: Map<string, LLMProvider> = new Map();\n private defaultProviderId: string | null = null;\n\n register(provider: LLMProvider): void {\n this.providers.set(provider.id, provider);\n // First registered provider becomes default\n if (!this.defaultProviderId) {\n this.defaultProviderId = provider.id;\n }\n }\n\n unregister(id: string): void {\n this.providers.delete(id);\n if (this.defaultProviderId === id) {\n this.defaultProviderId = this.providers.keys().next().value || null;\n }\n }\n\n get(id: string): LLMProvider | undefined {\n return this.providers.get(id);\n }\n\n getDefault(): LLMProvider {\n if (!this.defaultProviderId) {\n throw new Error(\n \"[ProviderRegistry] No LLM providers configured. Set CLAUDE_API_KEY, OPENROUTER_API_KEY, or OLLAMA_ENABLED.\"\n );\n }\n const provider = this.providers.get(this.defaultProviderId);\n if (!provider) {\n throw new Error(`[ProviderRegistry] Default provider '${this.defaultProviderId}' not found.`);\n }\n return provider;\n }\n\n setDefault(id: string): void {\n if (!this.providers.has(id)) {\n console.warn(`[ProviderRegistry] Provider '${id}' not registered, cannot set as default.`);\n return;\n }\n this.defaultProviderId = id;\n }\n\n getDefaultId(): string | null {\n return this.defaultProviderId;\n }\n\n has(id: string): boolean {\n return this.providers.has(id);\n }\n\n listProviders(): Array<{ id: string; name: string; type: string }> {\n return Array.from(this.providers.values()).map((p) => ({\n id: p.id,\n name: p.name,\n type: p.type,\n }));\n }\n\n getProviderCount(): number {\n return this.providers.size;\n }\n\n clear(): void {\n this.providers.clear();\n this.defaultProviderId = null;\n }\n}\n\nexport const providerRegistry = new ProviderRegistry();\n","/**\r\n * Provider initialization and re-exports\r\n */\r\n\r\nimport { env } from \"../../config/env\";\r\nimport { AnthropicProvider } from \"./anthropic-provider\";\r\nimport { OpenAICompatibleProvider } from \"./openai-compatible-provider\";\r\nimport { GeminiProvider } from \"./gemini\";\r\nimport { providerRegistry } from \"./registry\";\r\n\r\n/**\r\n * Initialize all configured LLM providers from environment variables.\r\n * Called once during application startup.\r\n */\r\nexport async function initializeProviders(): Promise<void> {\r\n // Always register Anthropic if CLAUDE_API_KEY is set\r\n if (env.CLAUDE_API_KEY) {\r\n providerRegistry.register(\r\n new AnthropicProvider({\r\n id: \"anthropic\",\r\n name: \"Anthropic\",\r\n type: \"anthropic\",\r\n apiKey: env.CLAUDE_API_KEY,\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: Anthropic\");\r\n }\r\n\r\n // Register OpenAI if key is set (for LLM use, separate from Whisper STT)\r\n if ((env as any).OPENAI_LLM_ENABLED && env.OPENAI_API_KEY) {\r\n providerRegistry.register(\r\n new OpenAICompatibleProvider({\r\n id: \"openai\",\r\n name: \"OpenAI\",\r\n type: \"openai\",\r\n apiKey: env.OPENAI_API_KEY,\r\n baseUrl: \"https://api.openai.com/v1\",\r\n defaultModel: \"gpt-4o\",\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: OpenAI\");\r\n }\r\n\r\n // Register OpenRouter if configured\r\n if ((env as any).OPENROUTER_API_KEY) {\r\n providerRegistry.register(\r\n new OpenAICompatibleProvider({\r\n id: \"openrouter\",\r\n name: \"OpenRouter\",\r\n type: \"openai-compatible\",\r\n apiKey: (env as any).OPENROUTER_API_KEY,\r\n baseUrl: (env as any).OPENROUTER_BASE_URL || \"https://openrouter.ai/api/v1\",\r\n defaultModel: \"anthropic/claude-sonnet-4-20250514\",\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: OpenRouter\");\r\n }\r\n\r\n // Register Groq if configured\r\n if ((env as any).GROQ_API_KEY) {\r\n providerRegistry.register(\r\n new OpenAICompatibleProvider({\r\n id: \"groq\",\r\n name: \"Groq\",\r\n type: \"openai-compatible\",\r\n apiKey: (env as any).GROQ_API_KEY,\r\n baseUrl: \"https://api.groq.com/openai/v1\",\r\n defaultModel: \"llama-3.1-70b-versatile\",\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: Groq\");\r\n }\r\n\r\n // Register Mistral if configured\r\n if ((env as any).MISTRAL_API_KEY) {\r\n providerRegistry.register(\r\n new OpenAICompatibleProvider({\r\n id: \"mistral\",\r\n name: \"Mistral\",\r\n type: \"openai-compatible\",\r\n apiKey: (env as any).MISTRAL_API_KEY,\r\n baseUrl: \"https://api.mistral.ai/v1\",\r\n defaultModel: \"mistral-large-latest\",\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: Mistral\");\r\n }\r\n\r\n // Register Google Gemini if configured\r\n if ((env as any).GEMINI_API_KEY) {\r\n providerRegistry.register(\r\n new GeminiProvider(\r\n (env as any).GEMINI_API_KEY,\r\n (env as any).GEMINI_DEFAULT_MODEL || \"gemini-2.0-flash\"\r\n )\r\n );\r\n console.log(\"[LLM] Registered provider: Google Gemini\");\r\n }\r\n\r\n // Register xAI (Grok) if configured\r\n if ((env as any).XAI_API_KEY) {\r\n providerRegistry.register(\r\n new OpenAICompatibleProvider({\r\n id: \"xai\",\r\n name: \"xAI (Grok)\",\r\n type: \"openai-compatible\",\r\n apiKey: (env as any).XAI_API_KEY,\r\n baseUrl: \"https://api.x.ai/v1\",\r\n defaultModel: (env as any).XAI_DEFAULT_MODEL || \"grok-2\",\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: xAI (Grok)\");\r\n }\r\n\r\n // Register generic OpenAI-compatible endpoint if configured\r\n if ((env as any).OPENAI_COMPATIBLE_BASE_URL) {\r\n providerRegistry.register(\r\n new OpenAICompatibleProvider({\r\n id: \"custom\",\r\n name: \"Custom Provider\",\r\n type: \"openai-compatible\",\r\n apiKey: (env as any).OPENAI_COMPATIBLE_API_KEY || \"not-needed\",\r\n baseUrl: (env as any).OPENAI_COMPATIBLE_BASE_URL,\r\n defaultModel: (env as any).OPENAI_COMPATIBLE_MODEL || \"default\",\r\n enabled: true,\r\n })\r\n );\r\n console.log(\"[LLM] Registered provider: Custom (\" + (env as any).OPENAI_COMPATIBLE_BASE_URL + \")\");\r\n }\r\n\r\n // Register Ollama if enabled (requires async probe)\r\n if ((env as any).OLLAMA_ENABLED) {\r\n try {\r\n const { OllamaProvider } = await import(\"./ollama\");\r\n const ollamaBaseUrl = (env as any).OLLAMA_BASE_URL || \"http://localhost:11434\";\r\n const ollamaModel = (env as any).OLLAMA_DEFAULT_MODEL || \"llama3.1\";\r\n const ollama = new OllamaProvider(ollamaBaseUrl, ollamaModel);\r\n\r\n const available = await ollama.isAvailable();\r\n if (available) {\r\n providerRegistry.register(ollama);\r\n const models = await ollama.listModels();\r\n console.log(`[LLM] Registered provider: Ollama (${models.length} model(s): ${models.slice(0, 5).join(\", \")})`);\r\n } else {\r\n console.warn(`[LLM] Ollama enabled but not reachable at ${ollamaBaseUrl}`);\r\n }\r\n } catch (err: any) {\r\n console.warn(\"[LLM] Failed to initialize Ollama:\", err.message);\r\n }\r\n }\r\n\r\n // Set default provider\r\n const defaultId = (env as any).LLM_PROVIDER || \"anthropic\";\r\n if (providerRegistry.has(defaultId)) {\r\n providerRegistry.setDefault(defaultId);\r\n }\r\n\r\n const providers = providerRegistry.listProviders();\r\n if (providers.length === 0) {\r\n console.warn(\"[LLM] No LLM providers configured. Set CLAUDE_API_KEY or another provider key.\");\r\n } else {\r\n console.log(\r\n `[LLM] ${providers.length} provider(s) ready. Default: ${providerRegistry.getDefaultId()}`\r\n );\r\n }\r\n}\r\n\r\n// Re-exports\r\nexport { providerRegistry } from \"./registry\";\r\nexport { AnthropicProvider } from \"./anthropic-provider\";\r\nexport { OpenAICompatibleProvider } from \"./openai-compatible-provider\";\r\nexport { OllamaProvider } from \"./ollama\";\r\nexport { GeminiProvider } from \"./gemini\";\r\nexport type { LLMProvider } from \"./provider\";\r\nexport type {\r\n LLMMessage,\r\n LLMContentBlock,\r\n LLMTool,\r\n LLMRequest,\r\n LLMResponse,\r\n LLMStreamEvent,\r\n LLMStreamResult,\r\n LLMProviderCapabilities,\r\n LLMProviderConfig,\r\n} from \"./types\";\r\n"],"mappings":"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","names":["OllamaProvider"]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  env
3
- } from "./chunk-ZLZKF2PM.js";
3
+ } from "./chunk-4KIHDIXZ.js";
4
4
  import {
5
5
  __require
6
- } from "./chunk-PLDDJCW6.js";
6
+ } from "./chunk-UP2VWCW5.js";
7
7
 
8
8
  // src/integrations/twilio/sms.ts
9
9
  var TWILIO_API_URL = "https://api.twilio.com/2010-04-01";
@@ -193,4 +193,4 @@ export {
193
193
  validateTwilioSignature,
194
194
  isTwilioConfigured
195
195
  };
196
- //# sourceMappingURL=chunk-6PMVAAA7.js.map
196
+ //# sourceMappingURL=chunk-HJSEEFO3.js.map
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  textToSpeech
3
- } from "./chunk-MXAPLSJ5.js";
3
+ } from "./chunk-J4JW73TT.js";
4
4
  import {
5
5
  transcribeAudio
6
- } from "./chunk-SJSUSJ47.js";
6
+ } from "./chunk-BNZHWAZC.js";
7
7
  import {
8
8
  scheduleReminder
9
- } from "./chunk-AYUKPTSM.js";
9
+ } from "./chunk-GJETKBOY.js";
10
10
  import {
11
11
  chatWithTools
12
- } from "./chunk-766ASQWE.js";
12
+ } from "./chunk-ZMML6T63.js";
13
13
 
14
14
  // src/inputs/discord/index.ts
15
15
  import {
@@ -803,4 +803,4 @@ export {
803
803
  createDiscordBot,
804
804
  discord_default
805
805
  };
806
- //# sourceMappingURL=chunk-TYAGMJNV.js.map
806
+ //# sourceMappingURL=chunk-HQZQFEAX.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  env
3
- } from "./chunk-ZLZKF2PM.js";
3
+ } from "./chunk-4KIHDIXZ.js";
4
4
 
5
5
  // src/outputs/tts.ts
6
6
  var ELEVENLABS_API_URL = "https://api.elevenlabs.io/v1";
@@ -48,4 +48,4 @@ async function textToSpeech(text, options = {}) {
48
48
  export {
49
49
  textToSpeech
50
50
  };
51
- //# sourceMappingURL=chunk-MXAPLSJ5.js.map
51
+ //# sourceMappingURL=chunk-J4JW73TT.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  chatWithTools
3
- } from "./chunk-766ASQWE.js";
3
+ } from "./chunk-ZMML6T63.js";
4
4
 
5
5
  // src/inputs/signal/index.ts
6
6
  import { spawn } from "child_process";
@@ -126,4 +126,4 @@ export {
126
126
  SignalBot,
127
127
  signal_default
128
128
  };
129
- //# sourceMappingURL=chunk-VEHFVBLI.js.map
129
+ //# sourceMappingURL=chunk-JHYYFPKX.js.map
@@ -0,0 +1,150 @@
1
+ // src/core/agents/agent-types.ts
2
+ var AGENT_SYSTEM_PROMPTS = {
3
+ research: `You are a Research Agent. Your goal is to thoroughly investigate a topic and provide comprehensive, well-sourced information.
4
+
5
+ Process:
6
+ 1. Break down the research question into sub-questions
7
+ 2. Search for information from multiple sources
8
+ 3. Cross-reference and verify findings
9
+ 4. Synthesize information into a coherent report
10
+ 5. Note confidence levels and any uncertainties
11
+
12
+ Guidelines:
13
+ - Always cite or reference your sources
14
+ - Present multiple perspectives when relevant
15
+ - Distinguish between facts and interpretations
16
+ - Flag when information might be outdated
17
+ - Structure findings hierarchically
18
+
19
+ Report your progress after each major step.`,
20
+ coding: `You are a Coding Agent. Your goal is to implement, debug, or improve code based on the given objective.
21
+
22
+ Process:
23
+ 1. Understand the requirements thoroughly
24
+ 2. Explore existing code if relevant
25
+ 3. Plan the implementation approach
26
+ 4. Write clean, documented code
27
+ 5. Test and verify the solution
28
+
29
+ Guidelines:
30
+ - Follow existing code conventions in the project
31
+ - Write clear comments for complex logic
32
+ - Handle edge cases and errors gracefully
33
+ - Consider performance implications
34
+ - Provide a summary of changes made
35
+
36
+ Report your progress after each significant step.`,
37
+ writing: `You are a Writing Agent. Your goal is to create high-quality written content based on the given objective.
38
+
39
+ Process:
40
+ 1. Understand the purpose and audience
41
+ 2. Research the topic if needed
42
+ 3. Create an outline
43
+ 4. Write the first draft
44
+ 5. Review and refine
45
+
46
+ Guidelines:
47
+ - Match the tone and style to the purpose
48
+ - Structure content logically
49
+ - Use clear, concise language
50
+ - Support claims with evidence when relevant
51
+ - Proofread for grammar and clarity
52
+
53
+ Report your progress at each stage.`,
54
+ analysis: `You are an Analysis Agent. Your goal is to analyze data or information and provide actionable insights.
55
+
56
+ Process:
57
+ 1. Understand the analysis objective
58
+ 2. Gather and organize the data
59
+ 3. Apply appropriate analytical methods
60
+ 4. Identify patterns and insights
61
+ 5. Present findings with recommendations
62
+
63
+ Guidelines:
64
+ - Be objective and data-driven
65
+ - Acknowledge limitations in the data
66
+ - Provide context for numbers
67
+ - Make recommendations actionable
68
+ - Visualize data when helpful
69
+
70
+ Report your progress and key findings along the way.`,
71
+ osint: `You are an OSINT (Open Source Intelligence) Agent. Your goal is to investigate entities, trace financial flows, map organizational relationships, and build comprehensive intelligence profiles using public records and open data sources.
72
+
73
+ Process:
74
+ 1. Identify the target entity (person, organization, committee)
75
+ 2. Search across public records databases (FEC, IRS 990, USAspending, SEC EDGAR, OpenCorporates)
76
+ 3. Resolve and deduplicate entities using fuzzy matching and identifiers
77
+ 4. Build relationship graphs connecting discovered entities
78
+ 5. Enrich discovered entities with additional data from all available sources
79
+ 6. Analyze patterns: financial flows, organizational hierarchies, political connections
80
+ 7. Generate an intelligence report with confidence levels
81
+
82
+ Guidelines:
83
+ - Use only publicly available information from official government databases
84
+ - Cross-reference data across multiple sources to verify findings
85
+ - Flag low-confidence matches explicitly
86
+ - Build the knowledge graph incrementally, enriching as you discover connections
87
+ - Track the provenance of every data point (source API, date retrieved)
88
+ - Respect rate limits on all public APIs
89
+ - Distinguish between confirmed facts and inferred connections
90
+ - Quantify financial relationships with exact dollar amounts when available
91
+ - Note temporal aspects (when relationships were active)
92
+ - Provide actionable next steps for further investigation
93
+
94
+ Report findings as you progress through each data source.`
95
+ };
96
+ var AGENT_TOOL_PERMISSIONS = {
97
+ research: [
98
+ "web_search",
99
+ "browse_url",
100
+ "read_file",
101
+ "list_directory",
102
+ "search_files"
103
+ ],
104
+ coding: [
105
+ "read_file",
106
+ "write_file",
107
+ "list_directory",
108
+ "search_files",
109
+ "execute_command"
110
+ ],
111
+ writing: [
112
+ "read_file",
113
+ "write_file",
114
+ "web_search",
115
+ "browse_url"
116
+ ],
117
+ analysis: [
118
+ "read_file",
119
+ "web_search",
120
+ "browse_url",
121
+ "list_directory",
122
+ "search_files",
123
+ "fred_economic_data",
124
+ "finnhub_market_data",
125
+ "crypto_price",
126
+ "stock_price",
127
+ "currency_exchange"
128
+ ],
129
+ osint: [
130
+ "web_search",
131
+ "browse_url",
132
+ "read_file",
133
+ "search_files",
134
+ "osint_search",
135
+ "osint_graph",
136
+ "osint_enrich",
137
+ "osint_analyze"
138
+ ]
139
+ };
140
+ var agent_types_default = {
141
+ AGENT_SYSTEM_PROMPTS,
142
+ AGENT_TOOL_PERMISSIONS
143
+ };
144
+
145
+ export {
146
+ AGENT_SYSTEM_PROMPTS,
147
+ AGENT_TOOL_PERMISSIONS,
148
+ agent_types_default
149
+ };
150
+ //# sourceMappingURL=chunk-LFDXEYYB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/core/agents/agent-types.ts"],"sourcesContent":["export type AgentType = \"research\" | \"coding\" | \"writing\" | \"analysis\" | \"osint\";\r\n\r\nexport type AgentStatus =\r\n | \"pending\"\r\n | \"running\"\r\n | \"completed\"\r\n | \"failed\"\r\n | \"cancelled\";\r\n\r\nexport interface AgentConfig {\r\n type: AgentType;\r\n objective: string;\r\n context?: Record<string, unknown>;\r\n tokenBudget?: number;\r\n timeBudgetMs?: number;\r\n}\r\n\r\nexport interface AgentProgress {\r\n step: number;\r\n description: string;\r\n status: \"pending\" | \"running\" | \"completed\" | \"failed\";\r\n output?: unknown;\r\n timestamp: Date;\r\n}\r\n\r\nexport interface AgentResult {\r\n success: boolean;\r\n output?: unknown;\r\n summary?: string;\r\n artifacts?: Array<{\r\n type: \"file\" | \"data\" | \"report\";\r\n name: string;\r\n content: unknown;\r\n }>;\r\n error?: string;\r\n tokensUsed: number;\r\n durationMs: number;\r\n}\r\n\r\nexport interface AgentMessage {\r\n role: \"user\" | \"assistant\" | \"system\" | \"tool_result\";\r\n content: string;\r\n metadata?: Record<string, unknown>;\r\n timestamp: Date;\r\n}\r\n\r\nexport interface Agent {\r\n id: string;\r\n userId: string;\r\n type: AgentType;\r\n name: string;\r\n status: AgentStatus;\r\n objective: string;\r\n context?: Record<string, unknown>;\r\n tokenBudget: number;\r\n tokensUsed: number;\r\n timeBudgetMs: number;\r\n startedAt?: Date;\r\n completedAt?: Date;\r\n createdAt: Date;\r\n messages: AgentMessage[];\r\n progress: AgentProgress[];\r\n result?: AgentResult;\r\n}\r\n\r\n// System prompts for each agent type\r\nexport const AGENT_SYSTEM_PROMPTS: Record<AgentType, string> = {\r\n research: `You are a Research Agent. Your goal is to thoroughly investigate a topic and provide comprehensive, well-sourced information.\r\n\r\nProcess:\r\n1. Break down the research question into sub-questions\r\n2. Search for information from multiple sources\r\n3. Cross-reference and verify findings\r\n4. Synthesize information into a coherent report\r\n5. Note confidence levels and any uncertainties\r\n\r\nGuidelines:\r\n- Always cite or reference your sources\r\n- Present multiple perspectives when relevant\r\n- Distinguish between facts and interpretations\r\n- Flag when information might be outdated\r\n- Structure findings hierarchically\r\n\r\nReport your progress after each major step.`,\r\n\r\n coding: `You are a Coding Agent. Your goal is to implement, debug, or improve code based on the given objective.\r\n\r\nProcess:\r\n1. Understand the requirements thoroughly\r\n2. Explore existing code if relevant\r\n3. Plan the implementation approach\r\n4. Write clean, documented code\r\n5. Test and verify the solution\r\n\r\nGuidelines:\r\n- Follow existing code conventions in the project\r\n- Write clear comments for complex logic\r\n- Handle edge cases and errors gracefully\r\n- Consider performance implications\r\n- Provide a summary of changes made\r\n\r\nReport your progress after each significant step.`,\r\n\r\n writing: `You are a Writing Agent. Your goal is to create high-quality written content based on the given objective.\r\n\r\nProcess:\r\n1. Understand the purpose and audience\r\n2. Research the topic if needed\r\n3. Create an outline\r\n4. Write the first draft\r\n5. Review and refine\r\n\r\nGuidelines:\r\n- Match the tone and style to the purpose\r\n- Structure content logically\r\n- Use clear, concise language\r\n- Support claims with evidence when relevant\r\n- Proofread for grammar and clarity\r\n\r\nReport your progress at each stage.`,\r\n\r\n analysis: `You are an Analysis Agent. Your goal is to analyze data or information and provide actionable insights.\r\n\r\nProcess:\r\n1. Understand the analysis objective\r\n2. Gather and organize the data\r\n3. Apply appropriate analytical methods\r\n4. Identify patterns and insights\r\n5. Present findings with recommendations\r\n\r\nGuidelines:\r\n- Be objective and data-driven\r\n- Acknowledge limitations in the data\r\n- Provide context for numbers\r\n- Make recommendations actionable\r\n- Visualize data when helpful\r\n\r\nReport your progress and key findings along the way.`,\r\n\r\n osint: `You are an OSINT (Open Source Intelligence) Agent. Your goal is to investigate entities, trace financial flows, map organizational relationships, and build comprehensive intelligence profiles using public records and open data sources.\r\n\r\nProcess:\r\n1. Identify the target entity (person, organization, committee)\r\n2. Search across public records databases (FEC, IRS 990, USAspending, SEC EDGAR, OpenCorporates)\r\n3. Resolve and deduplicate entities using fuzzy matching and identifiers\r\n4. Build relationship graphs connecting discovered entities\r\n5. Enrich discovered entities with additional data from all available sources\r\n6. Analyze patterns: financial flows, organizational hierarchies, political connections\r\n7. Generate an intelligence report with confidence levels\r\n\r\nGuidelines:\r\n- Use only publicly available information from official government databases\r\n- Cross-reference data across multiple sources to verify findings\r\n- Flag low-confidence matches explicitly\r\n- Build the knowledge graph incrementally, enriching as you discover connections\r\n- Track the provenance of every data point (source API, date retrieved)\r\n- Respect rate limits on all public APIs\r\n- Distinguish between confirmed facts and inferred connections\r\n- Quantify financial relationships with exact dollar amounts when available\r\n- Note temporal aspects (when relationships were active)\r\n- Provide actionable next steps for further investigation\r\n\r\nReport findings as you progress through each data source.`,\r\n};\r\n\r\n// Tool permissions for each agent type\r\nexport const AGENT_TOOL_PERMISSIONS: Record<AgentType, string[]> = {\r\n research: [\r\n \"web_search\",\r\n \"browse_url\",\r\n \"read_file\",\r\n \"list_directory\",\r\n \"search_files\",\r\n ],\r\n coding: [\r\n \"read_file\",\r\n \"write_file\",\r\n \"list_directory\",\r\n \"search_files\",\r\n \"execute_command\",\r\n ],\r\n writing: [\r\n \"read_file\",\r\n \"write_file\",\r\n \"web_search\",\r\n \"browse_url\",\r\n ],\r\n analysis: [\r\n \"read_file\",\r\n \"web_search\",\r\n \"browse_url\",\r\n \"list_directory\",\r\n \"search_files\",\r\n \"fred_economic_data\",\r\n \"finnhub_market_data\",\r\n \"crypto_price\",\r\n \"stock_price\",\r\n \"currency_exchange\",\r\n ],\r\n osint: [\r\n \"web_search\",\r\n \"browse_url\",\r\n \"read_file\",\r\n \"search_files\",\r\n \"osint_search\",\r\n \"osint_graph\",\r\n \"osint_enrich\",\r\n \"osint_analyze\",\r\n ],\r\n};\r\n\r\nexport default {\r\n AGENT_SYSTEM_PROMPTS,\r\n AGENT_TOOL_PERMISSIONS,\r\n};\r\n"],"mappings":";AAkEO,IAAM,uBAAkD;AAAA,EAC7D,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBV,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBR,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBT,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBV,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAwBT;AAGO,IAAM,yBAAsD;AAAA,EACjE,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEA,IAAO,sBAAQ;AAAA,EACb;AAAA,EACA;AACF;","names":[]}