@debian777/kairos-mcp 3.0.1-beta.14

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 (502) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +108 -0
  3. package/dist/.tsbuildinfo +1 -0
  4. package/dist/cli/api-client.d.ts +31 -0
  5. package/dist/cli/api-client.d.ts.map +1 -0
  6. package/dist/cli/api-client.js +110 -0
  7. package/dist/cli/api-client.js.map +1 -0
  8. package/dist/cli/commands/attest.d.ts +6 -0
  9. package/dist/cli/commands/attest.d.ts.map +1 -0
  10. package/dist/cli/commands/attest.js +52 -0
  11. package/dist/cli/commands/attest.js.map +1 -0
  12. package/dist/cli/commands/begin.d.ts +6 -0
  13. package/dist/cli/commands/begin.d.ts.map +1 -0
  14. package/dist/cli/commands/begin.js +32 -0
  15. package/dist/cli/commands/begin.js.map +1 -0
  16. package/dist/cli/commands/delete.d.ts +6 -0
  17. package/dist/cli/commands/delete.d.ts.map +1 -0
  18. package/dist/cli/commands/delete.js +32 -0
  19. package/dist/cli/commands/delete.js.map +1 -0
  20. package/dist/cli/commands/mint.d.ts +6 -0
  21. package/dist/cli/commands/mint.d.ts.map +1 -0
  22. package/dist/cli/commands/mint.js +48 -0
  23. package/dist/cli/commands/mint.js.map +1 -0
  24. package/dist/cli/commands/next.d.ts +6 -0
  25. package/dist/cli/commands/next.d.ts.map +1 -0
  26. package/dist/cli/commands/next.js +89 -0
  27. package/dist/cli/commands/next.js.map +1 -0
  28. package/dist/cli/commands/search.d.ts +6 -0
  29. package/dist/cli/commands/search.d.ts.map +1 -0
  30. package/dist/cli/commands/search.js +32 -0
  31. package/dist/cli/commands/search.js.map +1 -0
  32. package/dist/cli/commands/update.d.ts +6 -0
  33. package/dist/cli/commands/update.d.ts.map +1 -0
  34. package/dist/cli/commands/update.js +72 -0
  35. package/dist/cli/commands/update.js.map +1 -0
  36. package/dist/cli/config.d.ts +9 -0
  37. package/dist/cli/config.d.ts.map +1 -0
  38. package/dist/cli/config.js +14 -0
  39. package/dist/cli/config.js.map +1 -0
  40. package/dist/cli/index.d.ts +6 -0
  41. package/dist/cli/index.d.ts.map +1 -0
  42. package/dist/cli/index.js +40 -0
  43. package/dist/cli/index.js.map +1 -0
  44. package/dist/cli/output.d.ts +10 -0
  45. package/dist/cli/output.d.ts.map +1 -0
  46. package/dist/cli/output.js +20 -0
  47. package/dist/cli/output.js.map +1 -0
  48. package/dist/config.d.ts +58 -0
  49. package/dist/config.d.ts.map +1 -0
  50. package/dist/config.js +165 -0
  51. package/dist/config.js.map +1 -0
  52. package/dist/embed-docs/mem/00000000-0000-0000-0000-000000002001.md +324 -0
  53. package/dist/embed-docs/mem/00000000-0000-0000-0000-000000002002.md +48 -0
  54. package/dist/http/bearer-validate.d.ts +14 -0
  55. package/dist/http/bearer-validate.d.ts.map +1 -0
  56. package/dist/http/bearer-validate.js +111 -0
  57. package/dist/http/bearer-validate.js.map +1 -0
  58. package/dist/http/http-api-attest.d.ts +7 -0
  59. package/dist/http/http-api-attest.d.ts.map +1 -0
  60. package/dist/http/http-api-attest.js +103 -0
  61. package/dist/http/http-api-attest.js.map +1 -0
  62. package/dist/http/http-api-begin-step.d.ts +8 -0
  63. package/dist/http/http-api-begin-step.d.ts.map +1 -0
  64. package/dist/http/http-api-begin-step.js +108 -0
  65. package/dist/http/http-api-begin-step.js.map +1 -0
  66. package/dist/http/http-api-begin.d.ts +8 -0
  67. package/dist/http/http-api-begin.d.ts.map +1 -0
  68. package/dist/http/http-api-begin.js +167 -0
  69. package/dist/http/http-api-begin.js.map +1 -0
  70. package/dist/http/http-api-delete.d.ts +9 -0
  71. package/dist/http/http-api-delete.d.ts.map +1 -0
  72. package/dist/http/http-api-delete.js +67 -0
  73. package/dist/http/http-api-delete.js.map +1 -0
  74. package/dist/http/http-api-dump.d.ts +8 -0
  75. package/dist/http/http-api-dump.d.ts.map +1 -0
  76. package/dist/http/http-api-dump.js +34 -0
  77. package/dist/http/http-api-dump.js.map +1 -0
  78. package/dist/http/http-api-mint.d.ts +9 -0
  79. package/dist/http/http-api-mint.d.ts.map +1 -0
  80. package/dist/http/http-api-mint.js +100 -0
  81. package/dist/http/http-api-mint.js.map +1 -0
  82. package/dist/http/http-api-next.d.ts +9 -0
  83. package/dist/http/http-api-next.d.ts.map +1 -0
  84. package/dist/http/http-api-next.js +237 -0
  85. package/dist/http/http-api-next.js.map +1 -0
  86. package/dist/http/http-api-routes.d.ts +13 -0
  87. package/dist/http/http-api-routes.d.ts.map +1 -0
  88. package/dist/http/http-api-routes.js +28 -0
  89. package/dist/http/http-api-routes.js.map +1 -0
  90. package/dist/http/http-api-snapshot.d.ts +4 -0
  91. package/dist/http/http-api-snapshot.d.ts.map +1 -0
  92. package/dist/http/http-api-snapshot.js +36 -0
  93. package/dist/http/http-api-snapshot.js.map +1 -0
  94. package/dist/http/http-api-update.d.ts +9 -0
  95. package/dist/http/http-api-update.d.ts.map +1 -0
  96. package/dist/http/http-api-update.js +105 -0
  97. package/dist/http/http-api-update.js.map +1 -0
  98. package/dist/http/http-auth-callback.d.ts +6 -0
  99. package/dist/http/http-auth-callback.d.ts.map +1 -0
  100. package/dist/http/http-auth-callback.js +183 -0
  101. package/dist/http/http-auth-callback.js.map +1 -0
  102. package/dist/http/http-auth-middleware.d.ts +30 -0
  103. package/dist/http/http-auth-middleware.d.ts.map +1 -0
  104. package/dist/http/http-auth-middleware.js +224 -0
  105. package/dist/http/http-auth-middleware.js.map +1 -0
  106. package/dist/http/http-error-handlers.d.ts +7 -0
  107. package/dist/http/http-error-handlers.d.ts.map +1 -0
  108. package/dist/http/http-error-handlers.js +35 -0
  109. package/dist/http/http-error-handlers.js.map +1 -0
  110. package/dist/http/http-health-routes.d.ts +9 -0
  111. package/dist/http/http-health-routes.d.ts.map +1 -0
  112. package/dist/http/http-health-routes.js +117 -0
  113. package/dist/http/http-health-routes.js.map +1 -0
  114. package/dist/http/http-mcp-handler.d.ts +8 -0
  115. package/dist/http/http-mcp-handler.d.ts.map +1 -0
  116. package/dist/http/http-mcp-handler.js +136 -0
  117. package/dist/http/http-mcp-handler.js.map +1 -0
  118. package/dist/http/http-metrics-middleware.d.ts +7 -0
  119. package/dist/http/http-metrics-middleware.d.ts.map +1 -0
  120. package/dist/http/http-metrics-middleware.js +56 -0
  121. package/dist/http/http-metrics-middleware.js.map +1 -0
  122. package/dist/http/http-server-config.d.ts +11 -0
  123. package/dist/http/http-server-config.d.ts.map +1 -0
  124. package/dist/http/http-server-config.js +15 -0
  125. package/dist/http/http-server-config.js.map +1 -0
  126. package/dist/http/http-server-startup.d.ts +9 -0
  127. package/dist/http/http-server-startup.d.ts.map +1 -0
  128. package/dist/http/http-server-startup.js +26 -0
  129. package/dist/http/http-server-startup.js.map +1 -0
  130. package/dist/http/http-server.d.ts +4 -0
  131. package/dist/http/http-server.d.ts.map +1 -0
  132. package/dist/http/http-server.js +39 -0
  133. package/dist/http/http-server.js.map +1 -0
  134. package/dist/http/http-well-known.d.ts +13 -0
  135. package/dist/http/http-well-known.d.ts.map +1 -0
  136. package/dist/http/http-well-known.js +32 -0
  137. package/dist/http/http-well-known.js.map +1 -0
  138. package/dist/index.d.ts +7 -0
  139. package/dist/index.d.ts.map +1 -0
  140. package/dist/index.js +100 -0
  141. package/dist/index.js.map +1 -0
  142. package/dist/metrics-server.d.ts +14 -0
  143. package/dist/metrics-server.d.ts.map +1 -0
  144. package/dist/metrics-server.js +41 -0
  145. package/dist/metrics-server.js.map +1 -0
  146. package/dist/resources/docs-resources.d.ts +2 -0
  147. package/dist/resources/docs-resources.d.ts.map +1 -0
  148. package/dist/resources/docs-resources.js +47 -0
  149. package/dist/resources/docs-resources.js.map +1 -0
  150. package/dist/resources/embedded-mcp-resources.d.ts +73 -0
  151. package/dist/resources/embedded-mcp-resources.d.ts.map +1 -0
  152. package/dist/resources/embedded-mcp-resources.js +132 -0
  153. package/dist/resources/embedded-mcp-resources.js.map +1 -0
  154. package/dist/resources/mem-resources-boot.d.ts +10 -0
  155. package/dist/resources/mem-resources-boot.d.ts.map +1 -0
  156. package/dist/resources/mem-resources-boot.js +164 -0
  157. package/dist/resources/mem-resources-boot.js.map +1 -0
  158. package/dist/resources/prompt-resources.d.ts +5 -0
  159. package/dist/resources/prompt-resources.d.ts.map +1 -0
  160. package/dist/resources/prompt-resources.js +42 -0
  161. package/dist/resources/prompt-resources.js.map +1 -0
  162. package/dist/resources/resource-bootstrap.d.ts +7 -0
  163. package/dist/resources/resource-bootstrap.d.ts.map +1 -0
  164. package/dist/resources/resource-bootstrap.js +33 -0
  165. package/dist/resources/resource-bootstrap.js.map +1 -0
  166. package/dist/server.d.ts +4 -0
  167. package/dist/server.d.ts.map +1 -0
  168. package/dist/server.js +79 -0
  169. package/dist/server.js.map +1 -0
  170. package/dist/services/chain-utils.d.ts +22 -0
  171. package/dist/services/chain-utils.d.ts.map +1 -0
  172. package/dist/services/chain-utils.js +95 -0
  173. package/dist/services/chain-utils.js.map +1 -0
  174. package/dist/services/code-block-processor.d.ts +40 -0
  175. package/dist/services/code-block-processor.d.ts.map +1 -0
  176. package/dist/services/code-block-processor.js +169 -0
  177. package/dist/services/code-block-processor.js.map +1 -0
  178. package/dist/services/embedding/config.d.ts +5 -0
  179. package/dist/services/embedding/config.d.ts.map +1 -0
  180. package/dist/services/embedding/config.js +13 -0
  181. package/dist/services/embedding/config.js.map +1 -0
  182. package/dist/services/embedding/providers.d.ts +5 -0
  183. package/dist/services/embedding/providers.d.ts.map +1 -0
  184. package/dist/services/embedding/providers.js +141 -0
  185. package/dist/services/embedding/providers.js.map +1 -0
  186. package/dist/services/embedding/service.d.ts +39 -0
  187. package/dist/services/embedding/service.d.ts.map +1 -0
  188. package/dist/services/embedding/service.js +302 -0
  189. package/dist/services/embedding/service.js.map +1 -0
  190. package/dist/services/embedding/types.d.ts +17 -0
  191. package/dist/services/embedding/types.d.ts.map +1 -0
  192. package/dist/services/embedding/types.js +2 -0
  193. package/dist/services/embedding/types.js.map +1 -0
  194. package/dist/services/id-generator.d.ts +63 -0
  195. package/dist/services/id-generator.d.ts.map +1 -0
  196. package/dist/services/id-generator.js +101 -0
  197. package/dist/services/id-generator.js.map +1 -0
  198. package/dist/services/key-value-store-factory.d.ts +7 -0
  199. package/dist/services/key-value-store-factory.d.ts.map +1 -0
  200. package/dist/services/key-value-store-factory.js +15 -0
  201. package/dist/services/key-value-store-factory.js.map +1 -0
  202. package/dist/services/key-value-store.d.ts +24 -0
  203. package/dist/services/key-value-store.d.ts.map +1 -0
  204. package/dist/services/key-value-store.js +6 -0
  205. package/dist/services/key-value-store.js.map +1 -0
  206. package/dist/services/memory/chain-builder-proof.d.ts +18 -0
  207. package/dist/services/memory/chain-builder-proof.d.ts.map +1 -0
  208. package/dist/services/memory/chain-builder-proof.js +78 -0
  209. package/dist/services/memory/chain-builder-proof.js.map +1 -0
  210. package/dist/services/memory/chain-builder.d.ts +4 -0
  211. package/dist/services/memory/chain-builder.d.ts.map +1 -0
  212. package/dist/services/memory/chain-builder.js +185 -0
  213. package/dist/services/memory/chain-builder.js.map +1 -0
  214. package/dist/services/memory/store-chain-default-handler.d.ts +9 -0
  215. package/dist/services/memory/store-chain-default-handler.d.ts.map +1 -0
  216. package/dist/services/memory/store-chain-default-handler.js +118 -0
  217. package/dist/services/memory/store-chain-default-handler.js.map +1 -0
  218. package/dist/services/memory/store-chain-header-handler.d.ts +8 -0
  219. package/dist/services/memory/store-chain-header-handler.d.ts.map +1 -0
  220. package/dist/services/memory/store-chain-header-handler.js +98 -0
  221. package/dist/services/memory/store-chain-header-handler.js.map +1 -0
  222. package/dist/services/memory/store-chain-helpers.d.ts +27 -0
  223. package/dist/services/memory/store-chain-helpers.d.ts.map +1 -0
  224. package/dist/services/memory/store-chain-helpers.js +102 -0
  225. package/dist/services/memory/store-chain-helpers.js.map +1 -0
  226. package/dist/services/memory/store-chain.d.ts +15 -0
  227. package/dist/services/memory/store-chain.d.ts.map +1 -0
  228. package/dist/services/memory/store-chain.js +56 -0
  229. package/dist/services/memory/store-chain.js.map +1 -0
  230. package/dist/services/memory/store-init.d.ts +3 -0
  231. package/dist/services/memory/store-init.d.ts.map +1 -0
  232. package/dist/services/memory/store-init.js +127 -0
  233. package/dist/services/memory/store-init.js.map +1 -0
  234. package/dist/services/memory/store-methods.d.ts +35 -0
  235. package/dist/services/memory/store-methods.d.ts.map +1 -0
  236. package/dist/services/memory/store-methods.js +308 -0
  237. package/dist/services/memory/store-methods.js.map +1 -0
  238. package/dist/services/memory/store.d.ts +36 -0
  239. package/dist/services/memory/store.d.ts.map +1 -0
  240. package/dist/services/memory/store.js +119 -0
  241. package/dist/services/memory/store.js.map +1 -0
  242. package/dist/services/memory-store.d.ts +33 -0
  243. package/dist/services/memory-store.d.ts.map +1 -0
  244. package/dist/services/memory-store.js +158 -0
  245. package/dist/services/memory-store.js.map +1 -0
  246. package/dist/services/metrics/agent-metrics.d.ts +12 -0
  247. package/dist/services/metrics/agent-metrics.d.ts.map +1 -0
  248. package/dist/services/metrics/agent-metrics.js +34 -0
  249. package/dist/services/metrics/agent-metrics.js.map +1 -0
  250. package/dist/services/metrics/embedding-metrics.d.ts +12 -0
  251. package/dist/services/metrics/embedding-metrics.d.ts.map +1 -0
  252. package/dist/services/metrics/embedding-metrics.js +41 -0
  253. package/dist/services/metrics/embedding-metrics.js.map +1 -0
  254. package/dist/services/metrics/http-metrics.d.ts +12 -0
  255. package/dist/services/metrics/http-metrics.d.ts.map +1 -0
  256. package/dist/services/metrics/http-metrics.js +41 -0
  257. package/dist/services/metrics/http-metrics.js.map +1 -0
  258. package/dist/services/metrics/mcp-metrics.d.ts +16 -0
  259. package/dist/services/metrics/mcp-metrics.d.ts.map +1 -0
  260. package/dist/services/metrics/mcp-metrics.js +55 -0
  261. package/dist/services/metrics/mcp-metrics.js.map +1 -0
  262. package/dist/services/metrics/memory-metrics.d.ts +10 -0
  263. package/dist/services/metrics/memory-metrics.d.ts.map +1 -0
  264. package/dist/services/metrics/memory-metrics.js +28 -0
  265. package/dist/services/metrics/memory-metrics.js.map +1 -0
  266. package/dist/services/metrics/qdrant-metrics.d.ts +11 -0
  267. package/dist/services/metrics/qdrant-metrics.d.ts.map +1 -0
  268. package/dist/services/metrics/qdrant-metrics.js +35 -0
  269. package/dist/services/metrics/qdrant-metrics.js.map +1 -0
  270. package/dist/services/metrics/registry.d.ts +9 -0
  271. package/dist/services/metrics/registry.d.ts.map +1 -0
  272. package/dist/services/metrics/registry.js +19 -0
  273. package/dist/services/metrics/registry.js.map +1 -0
  274. package/dist/services/metrics/system-metrics.d.ts +10 -0
  275. package/dist/services/metrics/system-metrics.d.ts.map +1 -0
  276. package/dist/services/metrics/system-metrics.js +35 -0
  277. package/dist/services/metrics/system-metrics.js.map +1 -0
  278. package/dist/services/proof-of-work-store.d.ts +66 -0
  279. package/dist/services/proof-of-work-store.d.ts.map +1 -0
  280. package/dist/services/proof-of-work-store.js +141 -0
  281. package/dist/services/proof-of-work-store.js.map +1 -0
  282. package/dist/services/qdrant/connection.d.ts +24 -0
  283. package/dist/services/qdrant/connection.d.ts.map +1 -0
  284. package/dist/services/qdrant/connection.js +126 -0
  285. package/dist/services/qdrant/connection.js.map +1 -0
  286. package/dist/services/qdrant/index.d.ts +3 -0
  287. package/dist/services/qdrant/index.d.ts.map +1 -0
  288. package/dist/services/qdrant/index.js +4 -0
  289. package/dist/services/qdrant/index.js.map +1 -0
  290. package/dist/services/qdrant/initialization.d.ts +25 -0
  291. package/dist/services/qdrant/initialization.d.ts.map +1 -0
  292. package/dist/services/qdrant/initialization.js +170 -0
  293. package/dist/services/qdrant/initialization.js.map +1 -0
  294. package/dist/services/qdrant/listing.d.ts +26 -0
  295. package/dist/services/qdrant/listing.d.ts.map +1 -0
  296. package/dist/services/qdrant/listing.js +88 -0
  297. package/dist/services/qdrant/listing.js.map +1 -0
  298. package/dist/services/qdrant/memory-retrieval.d.ts +14 -0
  299. package/dist/services/qdrant/memory-retrieval.d.ts.map +1 -0
  300. package/dist/services/qdrant/memory-retrieval.js +110 -0
  301. package/dist/services/qdrant/memory-retrieval.js.map +1 -0
  302. package/dist/services/qdrant/memory-store.d.ts +16 -0
  303. package/dist/services/qdrant/memory-store.d.ts.map +1 -0
  304. package/dist/services/qdrant/memory-store.js +108 -0
  305. package/dist/services/qdrant/memory-store.js.map +1 -0
  306. package/dist/services/qdrant/memory-updates.d.ts +8 -0
  307. package/dist/services/qdrant/memory-updates.d.ts.map +1 -0
  308. package/dist/services/qdrant/memory-updates.js +206 -0
  309. package/dist/services/qdrant/memory-updates.js.map +1 -0
  310. package/dist/services/qdrant/protocol.d.ts +16 -0
  311. package/dist/services/qdrant/protocol.d.ts.map +1 -0
  312. package/dist/services/qdrant/protocol.js +48 -0
  313. package/dist/services/qdrant/protocol.js.map +1 -0
  314. package/dist/services/qdrant/quality.d.ts +14 -0
  315. package/dist/services/qdrant/quality.d.ts.map +1 -0
  316. package/dist/services/qdrant/quality.js +101 -0
  317. package/dist/services/qdrant/quality.js.map +1 -0
  318. package/dist/services/qdrant/resources.d.ts +7 -0
  319. package/dist/services/qdrant/resources.d.ts.map +1 -0
  320. package/dist/services/qdrant/resources.js +108 -0
  321. package/dist/services/qdrant/resources.js.map +1 -0
  322. package/dist/services/qdrant/search.d.ts +22 -0
  323. package/dist/services/qdrant/search.d.ts.map +1 -0
  324. package/dist/services/qdrant/search.js +75 -0
  325. package/dist/services/qdrant/search.js.map +1 -0
  326. package/dist/services/qdrant/service.d.ts +90 -0
  327. package/dist/services/qdrant/service.d.ts.map +1 -0
  328. package/dist/services/qdrant/service.js +95 -0
  329. package/dist/services/qdrant/service.js.map +1 -0
  330. package/dist/services/qdrant/snapshots.d.ts +19 -0
  331. package/dist/services/qdrant/snapshots.d.ts.map +1 -0
  332. package/dist/services/qdrant/snapshots.js +130 -0
  333. package/dist/services/qdrant/snapshots.js.map +1 -0
  334. package/dist/services/qdrant/types.d.ts +39 -0
  335. package/dist/services/qdrant/types.d.ts.map +1 -0
  336. package/dist/services/qdrant/types.js +2 -0
  337. package/dist/services/qdrant/types.js.map +1 -0
  338. package/dist/services/qdrant/utils.d.ts +20 -0
  339. package/dist/services/qdrant/utils.d.ts.map +1 -0
  340. package/dist/services/qdrant/utils.js +121 -0
  341. package/dist/services/qdrant/utils.js.map +1 -0
  342. package/dist/services/redis-cache.d.ts +43 -0
  343. package/dist/services/redis-cache.d.ts.map +1 -0
  344. package/dist/services/redis-cache.js +214 -0
  345. package/dist/services/redis-cache.js.map +1 -0
  346. package/dist/services/redis.d.ts +43 -0
  347. package/dist/services/redis.d.ts.map +1 -0
  348. package/dist/services/redis.js +234 -0
  349. package/dist/services/redis.js.map +1 -0
  350. package/dist/services/stats/bonuses.d.ts +28 -0
  351. package/dist/services/stats/bonuses.d.ts.map +1 -0
  352. package/dist/services/stats/bonuses.js +96 -0
  353. package/dist/services/stats/bonuses.js.map +1 -0
  354. package/dist/services/stats/healer.d.ts +6 -0
  355. package/dist/services/stats/healer.d.ts.map +1 -0
  356. package/dist/services/stats/healer.js +24 -0
  357. package/dist/services/stats/healer.js.map +1 -0
  358. package/dist/services/stats/model-stats.d.ts +53 -0
  359. package/dist/services/stats/model-stats.d.ts.map +1 -0
  360. package/dist/services/stats/model-stats.js +238 -0
  361. package/dist/services/stats/model-stats.js.map +1 -0
  362. package/dist/services/stats/protocol.d.ts +11 -0
  363. package/dist/services/stats/protocol.d.ts.map +1 -0
  364. package/dist/services/stats/protocol.js +55 -0
  365. package/dist/services/stats/protocol.js.map +1 -0
  366. package/dist/services/stats/scoring.d.ts +19 -0
  367. package/dist/services/stats/scoring.d.ts.map +1 -0
  368. package/dist/services/stats/scoring.js +102 -0
  369. package/dist/services/stats/scoring.js.map +1 -0
  370. package/dist/services/stats/types.d.ts +39 -0
  371. package/dist/services/stats/types.d.ts.map +1 -0
  372. package/dist/services/stats/types.js +8 -0
  373. package/dist/services/stats/types.js.map +1 -0
  374. package/dist/tools/kairos_attest.d.ts +7 -0
  375. package/dist/tools/kairos_attest.d.ts.map +1 -0
  376. package/dist/tools/kairos_attest.js +179 -0
  377. package/dist/tools/kairos_attest.js.map +1 -0
  378. package/dist/tools/kairos_begin.d.ts +9 -0
  379. package/dist/tools/kairos_begin.d.ts.map +1 -0
  380. package/dist/tools/kairos_begin.js +149 -0
  381. package/dist/tools/kairos_begin.js.map +1 -0
  382. package/dist/tools/kairos_begin_schema.d.ts +48 -0
  383. package/dist/tools/kairos_begin_schema.d.ts.map +1 -0
  384. package/dist/tools/kairos_begin_schema.js +48 -0
  385. package/dist/tools/kairos_begin_schema.js.map +1 -0
  386. package/dist/tools/kairos_delete.d.ts +2 -0
  387. package/dist/tools/kairos_delete.d.ts.map +1 -0
  388. package/dist/tools/kairos_delete.js +113 -0
  389. package/dist/tools/kairos_delete.js.map +1 -0
  390. package/dist/tools/kairos_dump.d.ts +14 -0
  391. package/dist/tools/kairos_dump.d.ts.map +1 -0
  392. package/dist/tools/kairos_dump.js +148 -0
  393. package/dist/tools/kairos_dump.js.map +1 -0
  394. package/dist/tools/kairos_mint.d.ts +7 -0
  395. package/dist/tools/kairos_mint.d.ts.map +1 -0
  396. package/dist/tools/kairos_mint.js +233 -0
  397. package/dist/tools/kairos_mint.js.map +1 -0
  398. package/dist/tools/kairos_next-missing-proof-payload.d.ts +24 -0
  399. package/dist/tools/kairos_next-missing-proof-payload.d.ts.map +1 -0
  400. package/dist/tools/kairos_next-missing-proof-payload.js +32 -0
  401. package/dist/tools/kairos_next-missing-proof-payload.js.map +1 -0
  402. package/dist/tools/kairos_next-pow-helpers.d.ts +57 -0
  403. package/dist/tools/kairos_next-pow-helpers.d.ts.map +1 -0
  404. package/dist/tools/kairos_next-pow-helpers.js +271 -0
  405. package/dist/tools/kairos_next-pow-helpers.js.map +1 -0
  406. package/dist/tools/kairos_next-previous-step.d.ts +36 -0
  407. package/dist/tools/kairos_next-previous-step.d.ts.map +1 -0
  408. package/dist/tools/kairos_next-previous-step.js +121 -0
  409. package/dist/tools/kairos_next-previous-step.js.map +1 -0
  410. package/dist/tools/kairos_next.d.ts +12 -0
  411. package/dist/tools/kairos_next.d.ts.map +1 -0
  412. package/dist/tools/kairos_next.js +285 -0
  413. package/dist/tools/kairos_next.js.map +1 -0
  414. package/dist/tools/kairos_next_schema.d.ts +80 -0
  415. package/dist/tools/kairos_next_schema.d.ts.map +1 -0
  416. package/dist/tools/kairos_next_schema.js +82 -0
  417. package/dist/tools/kairos_next_schema.js.map +1 -0
  418. package/dist/tools/kairos_search.d.ts +15 -0
  419. package/dist/tools/kairos_search.d.ts.map +1 -0
  420. package/dist/tools/kairos_search.js +262 -0
  421. package/dist/tools/kairos_search.js.map +1 -0
  422. package/dist/tools/kairos_spaces.d.ts +10 -0
  423. package/dist/tools/kairos_spaces.d.ts.map +1 -0
  424. package/dist/tools/kairos_spaces.js +129 -0
  425. package/dist/tools/kairos_spaces.js.map +1 -0
  426. package/dist/tools/kairos_update.d.ts +2 -0
  427. package/dist/tools/kairos_update.d.ts.map +1 -0
  428. package/dist/tools/kairos_update.js +158 -0
  429. package/dist/tools/kairos_update.js.map +1 -0
  430. package/dist/types/index.d.ts +60 -0
  431. package/dist/types/index.d.ts.map +1 -0
  432. package/dist/types/index.js +21 -0
  433. package/dist/types/index.js.map +1 -0
  434. package/dist/types/memory.d.ts +38 -0
  435. package/dist/types/memory.d.ts.map +1 -0
  436. package/dist/types/memory.js +2 -0
  437. package/dist/types/memory.js.map +1 -0
  438. package/dist/utils/build-version.d.ts +15 -0
  439. package/dist/utils/build-version.d.ts.map +1 -0
  440. package/dist/utils/build-version.js +46 -0
  441. package/dist/utils/build-version.js.map +1 -0
  442. package/dist/utils/global-error-handlers.d.ts +7 -0
  443. package/dist/utils/global-error-handlers.d.ts.map +1 -0
  444. package/dist/utils/global-error-handlers.js +61 -0
  445. package/dist/utils/global-error-handlers.js.map +1 -0
  446. package/dist/utils/log-core.d.ts +11 -0
  447. package/dist/utils/log-core.d.ts.map +1 -0
  448. package/dist/utils/log-core.js +78 -0
  449. package/dist/utils/log-core.js.map +1 -0
  450. package/dist/utils/logger.d.ts +22 -0
  451. package/dist/utils/logger.d.ts.map +1 -0
  452. package/dist/utils/logger.js +63 -0
  453. package/dist/utils/logger.js.map +1 -0
  454. package/dist/utils/memory-body.d.ts +6 -0
  455. package/dist/utils/memory-body.d.ts.map +1 -0
  456. package/dist/utils/memory-body.js +21 -0
  457. package/dist/utils/memory-body.js.map +1 -0
  458. package/dist/utils/memory-store-utils.d.ts +14 -0
  459. package/dist/utils/memory-store-utils.d.ts.map +1 -0
  460. package/dist/utils/memory-store-utils.js +83 -0
  461. package/dist/utils/memory-store-utils.js.map +1 -0
  462. package/dist/utils/qdrant-collection-utils.d.ts +11 -0
  463. package/dist/utils/qdrant-collection-utils.d.ts.map +1 -0
  464. package/dist/utils/qdrant-collection-utils.js +62 -0
  465. package/dist/utils/qdrant-collection-utils.js.map +1 -0
  466. package/dist/utils/qdrant-query-utils.d.ts +6 -0
  467. package/dist/utils/qdrant-query-utils.d.ts.map +1 -0
  468. package/dist/utils/qdrant-query-utils.js +23 -0
  469. package/dist/utils/qdrant-query-utils.js.map +1 -0
  470. package/dist/utils/qdrant-utils.d.ts +5 -0
  471. package/dist/utils/qdrant-utils.d.ts.map +1 -0
  472. package/dist/utils/qdrant-utils.js +5 -0
  473. package/dist/utils/qdrant-utils.js.map +1 -0
  474. package/dist/utils/qdrant-vector-management.d.ts +25 -0
  475. package/dist/utils/qdrant-vector-management.d.ts.map +1 -0
  476. package/dist/utils/qdrant-vector-management.js +284 -0
  477. package/dist/utils/qdrant-vector-management.js.map +1 -0
  478. package/dist/utils/qdrant-vector-types.d.ts +35 -0
  479. package/dist/utils/qdrant-vector-types.d.ts.map +1 -0
  480. package/dist/utils/qdrant-vector-types.js +42 -0
  481. package/dist/utils/qdrant-vector-types.js.map +1 -0
  482. package/dist/utils/space-display.d.ts +11 -0
  483. package/dist/utils/space-display.d.ts.map +1 -0
  484. package/dist/utils/space-display.js +25 -0
  485. package/dist/utils/space-display.js.map +1 -0
  486. package/dist/utils/space-filter.d.ts +15 -0
  487. package/dist/utils/space-filter.d.ts.map +1 -0
  488. package/dist/utils/space-filter.js +18 -0
  489. package/dist/utils/space-filter.js.map +1 -0
  490. package/dist/utils/structured-logger.d.ts +41 -0
  491. package/dist/utils/structured-logger.d.ts.map +1 -0
  492. package/dist/utils/structured-logger.js +133 -0
  493. package/dist/utils/structured-logger.js.map +1 -0
  494. package/dist/utils/tenant-context.d.ts +67 -0
  495. package/dist/utils/tenant-context.d.ts.map +1 -0
  496. package/dist/utils/tenant-context.js +154 -0
  497. package/dist/utils/tenant-context.js.map +1 -0
  498. package/dist/utils/uri-builder.d.ts +37 -0
  499. package/dist/utils/uri-builder.d.ts.map +1 -0
  500. package/dist/utils/uri-builder.js +60 -0
  501. package/dist/utils/uri-builder.js.map +1 -0
  502. package/package.json +121 -0
@@ -0,0 +1,169 @@
1
+ // logger import removed because not used
2
+ /**
3
+ * Service for extracting and processing code blocks from markdown content
4
+ * to enhance searchability of technical documentation
5
+ */
6
+ export class CodeBlockProcessor {
7
+ /**
8
+ * Extract code blocks from markdown content
9
+ */
10
+ extractCodeBlocks(markdown) {
11
+ const codeBlocks = [];
12
+ const lines = markdown.split(/\r?\n/);
13
+ let inCodeBlock = false;
14
+ let currentBlock = null;
15
+ for (const line of lines) {
16
+ if (line.trim().startsWith('```')) {
17
+ if (!inCodeBlock) {
18
+ // Start of code block
19
+ inCodeBlock = true;
20
+ const language = line.trim().substring(3).trim() || 'text';
21
+ currentBlock = { language, content: [] };
22
+ }
23
+ else {
24
+ // End of code block
25
+ if (currentBlock) {
26
+ const content = currentBlock.content.join('\n');
27
+ const identifiers = this.extractIdentifiers(content, currentBlock.language);
28
+ codeBlocks.push({
29
+ language: currentBlock.language,
30
+ content,
31
+ identifiers
32
+ });
33
+ }
34
+ inCodeBlock = false;
35
+ currentBlock = null;
36
+ }
37
+ }
38
+ else if (inCodeBlock && currentBlock) {
39
+ currentBlock.content.push(line);
40
+ }
41
+ }
42
+ return codeBlocks;
43
+ }
44
+ /**
45
+ * Extract searchable identifiers from code content
46
+ */
47
+ extractIdentifiers(code, language) {
48
+ const identifiers = new Set();
49
+ // Language-specific patterns
50
+ const patterns = this.getLanguagePatterns(language);
51
+ for (const pattern of patterns) {
52
+ const matches = code.matchAll(pattern.regex);
53
+ for (const match of matches) {
54
+ const identifier = match[1] || match[0];
55
+ if (identifier && identifier.length > 2 && identifier.length < 50) {
56
+ // Filter out common keywords and short fragments
57
+ if (!this.isCommonKeyword(identifier, language)) {
58
+ identifiers.add(identifier.toLowerCase());
59
+ }
60
+ }
61
+ }
62
+ }
63
+ return Array.from(identifiers);
64
+ }
65
+ /**
66
+ * Get regex patterns for extracting identifiers from different languages
67
+ */
68
+ getLanguagePatterns(language) {
69
+ const basePatterns = [
70
+ // Function names (various languages)
71
+ { regex: /\bfunction\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/g, type: 'function' },
72
+ { regex: /\bdef\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/g, type: 'function' },
73
+ { regex: /\b([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\([^)]*\)\s*{/g, type: 'function' }, // C-style functions
74
+ // Class names
75
+ { regex: /\bclass\s+([a-zA-Z_$][a-zA-Z0-9_$]*)/g, type: 'class' },
76
+ // Variable/constant declarations
77
+ { regex: /\b(?:const|let|var)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*[:=]/g, type: 'variable' },
78
+ { regex: /\b([a-zA-Z_$][a-zA-Z0-9_$]*)\s*[:=]\s*function/g, type: 'variable' },
79
+ // Interface/type names
80
+ { regex: /\binterface\s+([a-zA-Z_$][a-zA-Z0-9_$]*)/g, type: 'interface' },
81
+ { regex: /\btype\s+([a-zA-Z_$][a-zA-Z0-9_$]*)/g, type: 'type' },
82
+ // Method calls (potential API methods)
83
+ { regex: /\.([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(/g, type: 'method' },
84
+ // Import/require statements
85
+ { regex: /(?:import|from|require)\s+['"]([^'"]+)['"]/g, type: 'import' },
86
+ { regex: /(?:import|require)\s*\(\s*['"]([^'"]+)['"]\s*\)/g, type: 'import' },
87
+ ];
88
+ // Language-specific additions
89
+ switch (language.toLowerCase()) {
90
+ case 'javascript':
91
+ case 'typescript':
92
+ case 'js':
93
+ case 'ts':
94
+ return [
95
+ ...basePatterns,
96
+ // Arrow functions
97
+ { regex: /\b([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=>/g, type: 'function' },
98
+ // Export statements
99
+ { regex: /\bexport\s+(?:const|function|class)\s+([a-zA-Z_$][a-zA-Z0-9_$]*)/g, type: 'export' },
100
+ ];
101
+ case 'python':
102
+ case 'py':
103
+ return [
104
+ ...basePatterns,
105
+ // Class methods
106
+ { regex: /\bdef\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\(self/g, type: 'method' },
107
+ ];
108
+ case 'java':
109
+ return [
110
+ ...basePatterns,
111
+ // Package declarations
112
+ { regex: /\bpackage\s+([a-zA-Z_$][a-zA-Z0-9_$.]*)/g, type: 'package' },
113
+ ];
114
+ case 'csharp':
115
+ case 'c#':
116
+ return [
117
+ ...basePatterns,
118
+ // Namespace
119
+ { regex: /\bnamespace\s+([a-zA-Z_$][a-zA-Z0-9_$.]*)/g, type: 'namespace' },
120
+ ];
121
+ default:
122
+ return basePatterns;
123
+ }
124
+ }
125
+ /**
126
+ * Check if an identifier is a common keyword that shouldn't be indexed
127
+ */
128
+ isCommonKeyword(identifier, language) {
129
+ const commonKeywords = new Set([
130
+ 'function', 'class', 'const', 'let', 'var', 'if', 'else', 'for', 'while',
131
+ 'return', 'import', 'export', 'from', 'require', 'interface', 'type',
132
+ 'public', 'private', 'protected', 'static', 'final', 'void', 'int',
133
+ 'string', 'boolean', 'object', 'array', 'null', 'undefined', 'true', 'false'
134
+ ]);
135
+ // Language-specific keywords
136
+ const languageKeywords = {
137
+ 'javascript': new Set(['console', 'log', 'error', 'warn', 'info', 'document', 'window']),
138
+ 'typescript': new Set(['console', 'log', 'error', 'warn', 'info', 'document', 'window', 'any']),
139
+ 'python': new Set(['self', 'print', 'len', 'str', 'int', 'list', 'dict', 'set']),
140
+ 'java': new Set(['System', 'out', 'println', 'String', 'Integer', 'List', 'Map']),
141
+ };
142
+ const langKeywords = languageKeywords[language.toLowerCase()] || new Set();
143
+ return commonKeywords.has(identifier.toLowerCase()) || langKeywords.has(identifier);
144
+ }
145
+ /**
146
+ * Process markdown content and return code processing results
147
+ */
148
+ processMarkdown(markdown) {
149
+ const codeBlocks = this.extractCodeBlocks(markdown);
150
+ const allIdentifiers = codeBlocks.flatMap(block => block.identifiers);
151
+ return {
152
+ codeBlocks,
153
+ allIdentifiers: [...new Set(allIdentifiers)] // Remove duplicates
154
+ };
155
+ }
156
+ /**
157
+ * Enhance text content with code identifiers for better searchability
158
+ */
159
+ enhanceContentForSearch(originalText, codeResult) {
160
+ if (codeResult.allIdentifiers.length === 0) {
161
+ return originalText;
162
+ }
163
+ // Add code identifiers to the end of the text for search purposes
164
+ // This ensures they're included in embeddings and text search
165
+ const identifierText = codeResult.allIdentifiers.join(' ');
166
+ return `${originalText}\n\n[CODE_IDENTIFIERS: ${identifierText}]`;
167
+ }
168
+ }
169
+ //# sourceMappingURL=code-block-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-block-processor.js","sourceRoot":"","sources":["../../src/services/code-block-processor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const DEFAULT_MODEL: string;
2
+ export declare const DEFAULT_DIMENSION: number;
3
+ export declare const OPENAI_ENDPOINT = "https://api.openai.com/v1/embeddings";
4
+ export declare const TEI_EMBEDDING_ENDPOINT: string;
5
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/services/embedding/config.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa,QAAyB,CAAC;AACpD,eAAO,MAAM,iBAAiB,QAA0B,CAAC;AACzD,eAAO,MAAM,eAAe,yCAAyC,CAAC;AAGtE,eAAO,MAAM,sBAAsB,QAE3B,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { logger } from '../../utils/logger.js';
2
+ import { OPENAI_EMBEDDING_MODEL, getEmbeddingDimension, OPENAI_API_KEY, TEI_BASE_URL } from '../../config.js';
3
+ export const DEFAULT_MODEL = OPENAI_EMBEDDING_MODEL;
4
+ export const DEFAULT_DIMENSION = getEmbeddingDimension();
5
+ export const OPENAI_ENDPOINT = 'https://api.openai.com/v1/embeddings';
6
+ // TEI (Text Embeddings Inference) configuration
7
+ export const TEI_EMBEDDING_ENDPOINT = TEI_BASE_URL
8
+ ? (TEI_BASE_URL.endsWith('/') ? TEI_BASE_URL.slice(0, -1) : TEI_BASE_URL) + '/v1/embeddings'
9
+ : '';
10
+ if (!OPENAI_API_KEY) {
11
+ logger.debug('OPENAI_API_KEY not configured; OpenAI usage will be disabled unless explicitly requested.');
12
+ }
13
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/services/embedding/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE9G,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,CAAC;AACpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,EAAE,CAAC;AACzD,MAAM,CAAC,MAAM,eAAe,GAAG,sCAAsC,CAAC;AAEtE,gDAAgD;AAChD,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY;IAC9C,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,gBAAgB;IAC5F,CAAC,CAAC,EAAE,CAAC;AAET,IAAI,CAAC,cAAc,EAAE,CAAC;IAClB,MAAM,CAAC,KAAK,CAAC,2FAA2F,CAAC,CAAC;AAC9G,CAAC"}
@@ -0,0 +1,5 @@
1
+ declare function postEmbeddingsOpenAI(input: string[] | string): Promise<number[][]>;
2
+ declare function postEmbeddingsTEI(input: string[] | string): Promise<number[][]>;
3
+ declare function postEmbeddings(input: string[] | string): Promise<number[][]>;
4
+ export { postEmbeddings, postEmbeddingsOpenAI, postEmbeddingsTEI };
5
+ //# sourceMappingURL=providers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../../src/services/embedding/providers.ts"],"names":[],"mappings":"AAIA,iBAAe,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAuDjF;AAED,iBAAe,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAuD9E;AAED,iBAAe,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CA2B3E;AAED,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,141 @@
1
+ import { logger } from '../../utils/logger.js';
2
+ import { OPENAI_API_KEY, EMBEDDING_PROVIDER, TEI_BASE_URL, TEI_MODEL, TEI_API_KEY } from '../../config.js';
3
+ import { DEFAULT_MODEL, DEFAULT_DIMENSION, OPENAI_ENDPOINT, TEI_EMBEDDING_ENDPOINT } from './config.js';
4
+ async function postEmbeddingsOpenAI(input) {
5
+ if (!OPENAI_API_KEY || !DEFAULT_MODEL)
6
+ throw new Error('OpenAI requires OPENAI_API_KEY and OPENAI_EMBEDDING_MODEL to be configured');
7
+ const inputArray = Array.isArray(input) ? input : [input];
8
+ const body = {
9
+ model: DEFAULT_MODEL,
10
+ input: inputArray,
11
+ };
12
+ const headers = {
13
+ 'Content-Type': 'application/json',
14
+ 'Authorization': `Bearer ${OPENAI_API_KEY}`,
15
+ };
16
+ const res = await fetch(OPENAI_ENDPOINT, {
17
+ method: 'POST',
18
+ headers,
19
+ body: JSON.stringify(body),
20
+ });
21
+ const data = await res.json().catch((err) => {
22
+ logger.error('[EmbeddingService] Failed to parse OpenAI response as JSON', err);
23
+ throw new Error(`OpenAI embeddings returned non-JSON response (HTTP ${res.status})`);
24
+ });
25
+ if (!res.ok) {
26
+ const errMsg = data?.error?.message || data?.message || `OpenAI embeddings HTTP ${res.status}`;
27
+ if (res.status === 401) {
28
+ throw new Error(`OpenAI authentication failed (401). Check OPENAI_API_KEY: ${errMsg}`);
29
+ }
30
+ if (res.status === 429) {
31
+ throw new Error(`OpenAI rate limit (429): ${errMsg}`);
32
+ }
33
+ throw new Error(`OpenAI embeddings error (HTTP ${res.status}): ${errMsg}`);
34
+ }
35
+ if (!Array.isArray(data?.data)) {
36
+ logger.error('[EmbeddingService] Unexpected OpenAI response shape', data);
37
+ throw new Error('Unexpected OpenAI embeddings response shape');
38
+ }
39
+ const embeddings = data.data.map((d) => {
40
+ if (!Array.isArray(d?.embedding))
41
+ throw new Error('OpenAI returned invalid embedding shape');
42
+ return d.embedding;
43
+ });
44
+ // Basic dimension validation
45
+ if (embeddings.length > 0 && embeddings[0]) {
46
+ const dim = embeddings[0].length;
47
+ if (dim !== DEFAULT_DIMENSION) {
48
+ logger.warn(`[EmbeddingService] Embedding dimension mismatch: got ${dim}, expected ${DEFAULT_DIMENSION}`);
49
+ throw new Error(`Embedding dimension mismatch: got ${dim}, expected ${DEFAULT_DIMENSION}`);
50
+ }
51
+ }
52
+ logger.info(`[EmbeddingService] Received ${embeddings.length} embeddings (dim=${DEFAULT_DIMENSION}) [provider=openai]`);
53
+ return embeddings;
54
+ }
55
+ async function postEmbeddingsTEI(input) {
56
+ if (!TEI_BASE_URL || !TEI_MODEL)
57
+ throw new Error('TEI requires TEI_BASE_URL and TEI_MODEL to be configured');
58
+ const inputArray = Array.isArray(input) ? input : [input];
59
+ const body = { input: inputArray, model: TEI_MODEL };
60
+ const headers = { 'Content-Type': 'application/json' };
61
+ if (TEI_API_KEY)
62
+ headers['x-api-key'] = TEI_API_KEY;
63
+ const url = TEI_EMBEDDING_ENDPOINT || TEI_BASE_URL;
64
+ const res = await fetch(url, {
65
+ method: 'POST',
66
+ headers,
67
+ body: JSON.stringify(body)
68
+ });
69
+ const data = await res.json().catch((err) => {
70
+ logger.error('[EmbeddingService] Failed to parse TEI response as JSON', err);
71
+ throw new Error(`TEI embeddings returned non-JSON response (HTTP ${res.status})`);
72
+ });
73
+ if (!res.ok) {
74
+ if (res.status === 401) {
75
+ throw new Error('TEI authentication failed (401)');
76
+ }
77
+ if (res.status === 429) {
78
+ throw new Error('TEI rate limit (429)');
79
+ }
80
+ throw new Error(`TEI embeddings error (HTTP ${res.status})`);
81
+ }
82
+ // Different TEI servers return different shapes; try to extract embeddings
83
+ let embeddings = null;
84
+ if (Array.isArray(data?.embeddings)) {
85
+ embeddings = data.embeddings.map((e) => Array.isArray(e) ? e : e?.embedding || e);
86
+ }
87
+ else if (Array.isArray(data?.data)) {
88
+ embeddings = data.data.map((d) => d?.embedding ?? d);
89
+ }
90
+ else if (Array.isArray(data?.result)) {
91
+ embeddings = data.result;
92
+ }
93
+ else if (Array.isArray(data)) {
94
+ embeddings = data;
95
+ }
96
+ if (!embeddings || embeddings.length === 0 || !Array.isArray(embeddings[0])) {
97
+ logger.error('[EmbeddingService] TEI returned unexpected embedding shape', data);
98
+ throw new Error('TEI returned unexpected embedding shape');
99
+ }
100
+ // Validate dimensions
101
+ const dim = embeddings[0].length;
102
+ if (dim !== DEFAULT_DIMENSION) {
103
+ logger.warn(`[EmbeddingService] TEI embedding dimension mismatch: got ${dim}, expected ${DEFAULT_DIMENSION}`);
104
+ throw new Error(`TEI embedding dimension mismatch: got ${dim}, expected ${DEFAULT_DIMENSION}`);
105
+ }
106
+ logger.info(`[EmbeddingService] Received ${embeddings.length} embeddings (dim=${DEFAULT_DIMENSION}) [provider=tei]`);
107
+ return embeddings;
108
+ }
109
+ async function postEmbeddings(input) {
110
+ // Choose provider based on explicit ENV override or auto-discovery
111
+ const providerPref = EMBEDDING_PROVIDER; // 'auto' | 'openai' | 'tei'
112
+ if (providerPref === 'openai') {
113
+ if (!OPENAI_API_KEY || !DEFAULT_MODEL)
114
+ throw new Error('OpenAI requires OPENAI_API_KEY and OPENAI_EMBEDDING_MODEL to be configured');
115
+ return await postEmbeddingsOpenAI(input);
116
+ }
117
+ if (providerPref === 'tei') {
118
+ if (!TEI_BASE_URL || !TEI_MODEL)
119
+ throw new Error('TEI requires TEI_BASE_URL and TEI_MODEL to be configured');
120
+ return await postEmbeddingsTEI(input);
121
+ }
122
+ // Auto detection: prefer OpenAI if both OPENAI vars present, otherwise TEI
123
+ if (OPENAI_API_KEY && DEFAULT_MODEL) {
124
+ try {
125
+ return await postEmbeddingsOpenAI(input);
126
+ }
127
+ catch (err) {
128
+ logger.warn('[EmbeddingService] OpenAI failed, attempting TEI fallback: ' + (err instanceof Error ? err.message : String(err)));
129
+ if (TEI_BASE_URL && TEI_MODEL) {
130
+ return await postEmbeddingsTEI(input);
131
+ }
132
+ throw err;
133
+ }
134
+ }
135
+ if (TEI_BASE_URL && TEI_MODEL) {
136
+ return await postEmbeddingsTEI(input);
137
+ }
138
+ throw new Error('No embedding provider configured (OPENAI_API_KEY+OPENAI_EMBEDDING_MODEL or TEI_BASE_URL+TEI_MODEL required)');
139
+ }
140
+ export { postEmbeddings, postEmbeddingsOpenAI, postEmbeddingsTEI };
141
+ //# sourceMappingURL=providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/services/embedding/providers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Embedding Service using OpenAI embeddings
3
+ *
4
+ * Implements pure OpenAI embedding support.
5
+ * Uses environment variables:
6
+ * - OPENAI_API_KEY
7
+ * - OPENAI_EMBEDDING_MODEL
8
+ * - EMBEDDING_DIMENSION
9
+ *
10
+ * Supports OpenAI and TEI (Text Embeddings Inference) providers. Selection:
11
+ * - If OPENAI_API_KEY is set, OpenAI is used.
12
+ * - Otherwise, TEI_BASE_URL + TEI_MODEL will be used if configured.
13
+ */
14
+ import type { EmbeddingResult, BatchEmbeddingResult } from './types.js';
15
+ export type { EmbeddingResult, BatchEmbeddingResult } from './types.js';
16
+ export declare class EmbeddingService {
17
+ private readonly embeddingDimension;
18
+ constructor();
19
+ generateEmbedding(text: string): Promise<EmbeddingResult>;
20
+ generateBatchEmbeddings(texts: string[]): Promise<BatchEmbeddingResult>;
21
+ calculateCosineSimilarity(embedding1: number[] | undefined, embedding2: number[] | undefined): number;
22
+ generateMemoryEmbedding(memory: any): Promise<number[]>;
23
+ estimateCost(): number;
24
+ healthCheck(): Promise<{
25
+ healthy: boolean;
26
+ message: string;
27
+ }>;
28
+ getProvider(): 'openai' | 'tei' | 'local';
29
+ getConfig(): {
30
+ model: string;
31
+ dimension: number;
32
+ provider: "none" | "openai" | "tei";
33
+ apiKeyConfigured: boolean;
34
+ teiConfigured: boolean;
35
+ providerPref: string;
36
+ };
37
+ }
38
+ export declare const embeddingService: EmbeddingService;
39
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/embedding/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAWxE,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAExE,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;;IAMtC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IA6CzD,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAyD7E,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM;IAa/F,uBAAuB,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAa7D,YAAY,IAAI,MAAM;IAKhB,WAAW,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAoHnE,WAAW,IAAI,QAAQ,GAAG,KAAK,GAAG,OAAO;IASzC,SAAS;;;;;;;;CAiBZ;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}