@dexto/core 1.4.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/README.md +36 -0
  2. package/dist/agent/DextoAgent.cjs +22 -3
  3. package/dist/agent/DextoAgent.d.ts +19 -2
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +23 -4
  6. package/dist/agent/index.cjs +4 -1
  7. package/dist/agent/index.d.ts +1 -1
  8. package/dist/agent/index.d.ts.map +1 -1
  9. package/dist/agent/index.js +5 -1
  10. package/dist/agent/schemas.cjs +90 -71
  11. package/dist/agent/schemas.d.ts +5959 -96
  12. package/dist/agent/schemas.d.ts.map +1 -1
  13. package/dist/agent/schemas.js +87 -66
  14. package/dist/approval/manager.cjs +165 -1
  15. package/dist/approval/manager.d.ts +91 -2
  16. package/dist/approval/manager.d.ts.map +1 -1
  17. package/dist/approval/manager.js +155 -1
  18. package/dist/approval/schemas.cjs +39 -3
  19. package/dist/approval/schemas.d.ts +238 -1
  20. package/dist/approval/schemas.d.ts.map +1 -1
  21. package/dist/approval/schemas.js +35 -3
  22. package/dist/approval/types.cjs +1 -0
  23. package/dist/approval/types.d.ts +26 -1
  24. package/dist/approval/types.d.ts.map +1 -1
  25. package/dist/approval/types.js +1 -0
  26. package/dist/context/compaction/factory.cjs +57 -0
  27. package/dist/context/compaction/factory.d.ts +17 -0
  28. package/dist/context/compaction/factory.d.ts.map +1 -0
  29. package/dist/context/compaction/factory.js +34 -0
  30. package/dist/context/compaction/index.cjs +49 -0
  31. package/dist/context/compaction/index.d.ts +11 -0
  32. package/dist/context/compaction/index.d.ts.map +1 -0
  33. package/dist/context/compaction/index.js +19 -0
  34. package/dist/context/{compression → compaction}/overflow.cjs +3 -3
  35. package/dist/context/{compression → compaction}/overflow.d.ts +4 -4
  36. package/dist/context/compaction/overflow.d.ts.map +1 -0
  37. package/dist/context/{compression → compaction}/overflow.js +2 -2
  38. package/dist/context/compaction/provider.cjs +16 -0
  39. package/dist/context/compaction/provider.d.ts +48 -0
  40. package/dist/context/compaction/provider.d.ts.map +1 -0
  41. package/dist/context/compaction/providers/noop-provider.cjs +48 -0
  42. package/dist/context/compaction/providers/noop-provider.d.ts +24 -0
  43. package/dist/context/compaction/providers/noop-provider.d.ts.map +1 -0
  44. package/dist/context/compaction/providers/noop-provider.js +24 -0
  45. package/dist/context/compaction/providers/reactive-overflow-provider.cjs +61 -0
  46. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +36 -0
  47. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +1 -0
  48. package/dist/context/compaction/providers/reactive-overflow-provider.js +37 -0
  49. package/dist/context/compaction/registry.cjs +39 -0
  50. package/dist/context/compaction/registry.d.ts +19 -0
  51. package/dist/context/compaction/registry.d.ts.map +1 -0
  52. package/dist/context/compaction/registry.js +16 -0
  53. package/dist/context/compaction/schemas.cjs +38 -0
  54. package/dist/context/compaction/schemas.d.ts +24 -0
  55. package/dist/context/compaction/schemas.d.ts.map +1 -0
  56. package/dist/context/compaction/schemas.js +14 -0
  57. package/dist/context/compaction/strategies/noop.cjs +36 -0
  58. package/dist/context/compaction/strategies/noop.d.ts +18 -0
  59. package/dist/context/compaction/strategies/noop.d.ts.map +1 -0
  60. package/dist/context/compaction/strategies/noop.js +13 -0
  61. package/dist/context/{compression → compaction/strategies}/reactive-overflow.cjs +3 -3
  62. package/dist/context/{compression → compaction/strategies}/reactive-overflow.d.ts +6 -6
  63. package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +1 -0
  64. package/dist/context/{compression → compaction/strategies}/reactive-overflow.js +4 -4
  65. package/dist/context/{compression → compaction}/types.d.ts +4 -4
  66. package/dist/context/compaction/types.d.ts.map +1 -0
  67. package/dist/context/compaction/types.js +0 -0
  68. package/dist/context/error-codes.cjs +4 -0
  69. package/dist/context/error-codes.d.ts +4 -0
  70. package/dist/context/error-codes.d.ts.map +1 -1
  71. package/dist/context/error-codes.js +4 -0
  72. package/dist/context/errors.cjs +40 -0
  73. package/dist/context/errors.d.ts +14 -0
  74. package/dist/context/errors.d.ts.map +1 -1
  75. package/dist/context/errors.js +40 -0
  76. package/dist/context/index.cjs +3 -1
  77. package/dist/context/index.d.ts +1 -0
  78. package/dist/context/index.d.ts.map +1 -1
  79. package/dist/context/index.js +1 -0
  80. package/dist/context/types.d.ts +6 -0
  81. package/dist/context/types.d.ts.map +1 -1
  82. package/dist/context/utils.cjs +27 -7
  83. package/dist/context/utils.d.ts.map +1 -1
  84. package/dist/context/utils.js +27 -7
  85. package/dist/errors/result-bridge.cjs +2 -3
  86. package/dist/errors/result-bridge.d.ts.map +1 -1
  87. package/dist/errors/result-bridge.js +2 -3
  88. package/dist/events/index.cjs +6 -3
  89. package/dist/events/index.d.ts +35 -19
  90. package/dist/events/index.d.ts.map +1 -1
  91. package/dist/events/index.js +5 -3
  92. package/dist/filesystem/filesystem-service.cjs +39 -0
  93. package/dist/filesystem/filesystem-service.d.ts +32 -0
  94. package/dist/filesystem/filesystem-service.d.ts.map +1 -1
  95. package/dist/filesystem/filesystem-service.js +39 -0
  96. package/dist/filesystem/index.d.ts +1 -1
  97. package/dist/filesystem/index.d.ts.map +1 -1
  98. package/dist/filesystem/path-validator.cjs +69 -1
  99. package/dist/filesystem/path-validator.d.ts +43 -2
  100. package/dist/filesystem/path-validator.d.ts.map +1 -1
  101. package/dist/filesystem/path-validator.js +69 -1
  102. package/dist/image/define-image.cjs +146 -0
  103. package/dist/image/define-image.d.ts +71 -0
  104. package/dist/image/define-image.d.ts.map +1 -0
  105. package/dist/image/define-image.js +121 -0
  106. package/dist/image/index.cjs +32 -0
  107. package/dist/image/index.d.ts +53 -0
  108. package/dist/image/index.d.ts.map +1 -0
  109. package/dist/image/index.js +7 -0
  110. package/dist/image/types.cjs +16 -0
  111. package/dist/image/types.d.ts +231 -0
  112. package/dist/image/types.d.ts.map +1 -0
  113. package/dist/image/types.js +0 -0
  114. package/dist/index.cjs +5 -1
  115. package/dist/index.d.ts +2 -0
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/index.js +2 -0
  118. package/dist/llm/error-codes.cjs +1 -0
  119. package/dist/llm/error-codes.d.ts +1 -0
  120. package/dist/llm/error-codes.d.ts.map +1 -1
  121. package/dist/llm/error-codes.js +1 -0
  122. package/dist/llm/errors.cjs +24 -0
  123. package/dist/llm/errors.d.ts +19 -6
  124. package/dist/llm/errors.d.ts.map +1 -1
  125. package/dist/llm/errors.js +24 -0
  126. package/dist/llm/executor/provider-options.cjs +87 -0
  127. package/dist/llm/executor/provider-options.d.ts +49 -0
  128. package/dist/llm/executor/provider-options.d.ts.map +1 -0
  129. package/dist/llm/executor/provider-options.js +63 -0
  130. package/dist/llm/executor/stream-processor.cjs +22 -11
  131. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  132. package/dist/llm/executor/stream-processor.js +22 -11
  133. package/dist/llm/executor/turn-executor.cjs +60 -23
  134. package/dist/llm/executor/turn-executor.d.ts +7 -5
  135. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  136. package/dist/llm/executor/turn-executor.js +60 -23
  137. package/dist/llm/formatters/vercel.cjs +15 -3
  138. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  139. package/dist/llm/formatters/vercel.js +15 -3
  140. package/dist/llm/index.cjs +18 -1
  141. package/dist/llm/index.d.ts +2 -0
  142. package/dist/llm/index.d.ts.map +1 -1
  143. package/dist/llm/index.js +14 -0
  144. package/dist/llm/providers/local/ai-sdk-adapter.cjs +308 -0
  145. package/dist/llm/providers/local/ai-sdk-adapter.d.ts +29 -0
  146. package/dist/llm/providers/local/ai-sdk-adapter.d.ts.map +1 -0
  147. package/dist/llm/providers/local/ai-sdk-adapter.js +278 -0
  148. package/dist/llm/providers/local/downloader.cjs +291 -0
  149. package/dist/llm/providers/local/downloader.d.ts +82 -0
  150. package/dist/llm/providers/local/downloader.d.ts.map +1 -0
  151. package/dist/llm/providers/local/downloader.js +251 -0
  152. package/dist/llm/providers/local/error-codes.cjs +57 -0
  153. package/dist/llm/providers/local/error-codes.d.ts +66 -0
  154. package/dist/llm/providers/local/error-codes.d.ts.map +1 -0
  155. package/dist/llm/providers/local/error-codes.js +34 -0
  156. package/dist/llm/providers/local/errors.cjs +240 -0
  157. package/dist/llm/providers/local/errors.d.ts +31 -0
  158. package/dist/llm/providers/local/errors.d.ts.map +1 -0
  159. package/dist/llm/providers/local/errors.js +217 -0
  160. package/dist/llm/providers/local/gpu-detector.cjs +214 -0
  161. package/dist/llm/providers/local/gpu-detector.d.ts +28 -0
  162. package/dist/llm/providers/local/gpu-detector.d.ts.map +1 -0
  163. package/dist/llm/providers/local/gpu-detector.js +178 -0
  164. package/dist/llm/providers/local/index.cjs +147 -0
  165. package/dist/llm/providers/local/index.d.ts +21 -0
  166. package/dist/llm/providers/local/index.d.ts.map +1 -0
  167. package/dist/llm/providers/local/index.js +126 -0
  168. package/dist/llm/providers/local/node-llama-provider.cjs +216 -0
  169. package/dist/llm/providers/local/node-llama-provider.d.ts +90 -0
  170. package/dist/llm/providers/local/node-llama-provider.d.ts.map +1 -0
  171. package/dist/llm/providers/local/node-llama-provider.js +176 -0
  172. package/dist/llm/providers/local/ollama-provider.cjs +230 -0
  173. package/dist/llm/providers/local/ollama-provider.d.ts +70 -0
  174. package/dist/llm/providers/local/ollama-provider.d.ts.map +1 -0
  175. package/dist/llm/providers/local/ollama-provider.js +198 -0
  176. package/dist/llm/providers/local/registry.cjs +343 -0
  177. package/dist/llm/providers/local/registry.d.ts +51 -0
  178. package/dist/llm/providers/local/registry.d.ts.map +1 -0
  179. package/dist/llm/providers/local/registry.js +312 -0
  180. package/dist/llm/providers/local/schemas.cjs +169 -0
  181. package/dist/llm/providers/local/schemas.d.ts +395 -0
  182. package/dist/llm/providers/local/schemas.d.ts.map +1 -0
  183. package/dist/llm/providers/local/schemas.js +133 -0
  184. package/dist/llm/providers/local/types.cjs +16 -0
  185. package/dist/llm/providers/local/types.d.ts +219 -0
  186. package/dist/llm/providers/local/types.d.ts.map +1 -0
  187. package/dist/llm/providers/local/types.js +0 -0
  188. package/dist/llm/providers/openrouter-model-registry.cjs +350 -0
  189. package/dist/llm/providers/openrouter-model-registry.d.ts +120 -0
  190. package/dist/llm/providers/openrouter-model-registry.d.ts.map +1 -0
  191. package/dist/llm/providers/openrouter-model-registry.js +309 -0
  192. package/dist/llm/registry.cjs +604 -9
  193. package/dist/llm/registry.d.ts +35 -0
  194. package/dist/llm/registry.d.ts.map +1 -1
  195. package/dist/llm/registry.js +600 -9
  196. package/dist/llm/resolver.cjs +63 -5
  197. package/dist/llm/resolver.d.ts +3 -3
  198. package/dist/llm/resolver.d.ts.map +1 -1
  199. package/dist/llm/resolver.js +69 -6
  200. package/dist/llm/schemas.cjs +107 -81
  201. package/dist/llm/schemas.d.ts +181 -22
  202. package/dist/llm/schemas.d.ts.map +1 -1
  203. package/dist/llm/schemas.js +107 -81
  204. package/dist/llm/services/factory.cjs +87 -13
  205. package/dist/llm/services/factory.d.ts +4 -1
  206. package/dist/llm/services/factory.d.ts.map +1 -1
  207. package/dist/llm/services/factory.js +85 -12
  208. package/dist/llm/services/test-utils.integration.cjs +22 -2
  209. package/dist/llm/services/test-utils.integration.d.ts +7 -1
  210. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  211. package/dist/llm/services/test-utils.integration.js +26 -3
  212. package/dist/llm/services/vercel.cjs +8 -3
  213. package/dist/llm/services/vercel.d.ts +3 -2
  214. package/dist/llm/services/vercel.d.ts.map +1 -1
  215. package/dist/llm/services/vercel.js +8 -3
  216. package/dist/llm/types.cjs +11 -1
  217. package/dist/llm/types.d.ts +1 -1
  218. package/dist/llm/types.d.ts.map +1 -1
  219. package/dist/llm/types.js +11 -1
  220. package/dist/logger/logger.cjs +7 -3
  221. package/dist/logger/logger.d.ts.map +1 -1
  222. package/dist/logger/logger.js +7 -3
  223. package/dist/mcp/manager.cjs +8 -0
  224. package/dist/mcp/manager.d.ts +17 -0
  225. package/dist/mcp/manager.d.ts.map +1 -1
  226. package/dist/mcp/manager.js +8 -0
  227. package/dist/mcp/mcp-client.cjs +0 -3
  228. package/dist/mcp/mcp-client.d.ts.map +1 -1
  229. package/dist/mcp/mcp-client.js +0 -3
  230. package/dist/memory/schemas.d.ts +3 -3
  231. package/dist/plugins/error-codes.cjs +3 -0
  232. package/dist/plugins/error-codes.d.ts +7 -1
  233. package/dist/plugins/error-codes.d.ts.map +1 -1
  234. package/dist/plugins/error-codes.js +3 -0
  235. package/dist/plugins/index.cjs +7 -0
  236. package/dist/plugins/index.d.ts +4 -2
  237. package/dist/plugins/index.d.ts.map +1 -1
  238. package/dist/plugins/index.js +6 -1
  239. package/dist/plugins/manager.cjs +92 -7
  240. package/dist/plugins/manager.d.ts +10 -3
  241. package/dist/plugins/manager.d.ts.map +1 -1
  242. package/dist/plugins/manager.js +92 -7
  243. package/dist/plugins/registry.cjs +63 -0
  244. package/dist/plugins/registry.d.ts +101 -0
  245. package/dist/plugins/registry.d.ts.map +1 -0
  246. package/dist/plugins/registry.js +39 -0
  247. package/dist/plugins/schemas.cjs +17 -5
  248. package/dist/plugins/schemas.d.ts +62 -5
  249. package/dist/plugins/schemas.d.ts.map +1 -1
  250. package/dist/plugins/schemas.js +15 -4
  251. package/dist/providers/base-registry.cjs +147 -0
  252. package/dist/providers/base-registry.d.ts +147 -0
  253. package/dist/providers/base-registry.d.ts.map +1 -0
  254. package/dist/providers/base-registry.js +123 -0
  255. package/dist/providers/discovery.cjs +109 -0
  256. package/dist/providers/discovery.d.ts +96 -0
  257. package/dist/providers/discovery.d.ts.map +1 -0
  258. package/dist/providers/discovery.js +84 -0
  259. package/dist/providers/index.cjs +24 -0
  260. package/dist/providers/index.d.ts +32 -0
  261. package/dist/providers/index.d.ts.map +1 -0
  262. package/dist/providers/index.js +2 -0
  263. package/dist/resources/reference-parser.cjs +3 -3
  264. package/dist/resources/reference-parser.d.ts.map +1 -1
  265. package/dist/resources/reference-parser.js +3 -3
  266. package/dist/session/chat-session.cjs +20 -3
  267. package/dist/session/chat-session.d.ts.map +1 -1
  268. package/dist/session/chat-session.js +21 -4
  269. package/dist/session/history/database.cjs +49 -15
  270. package/dist/session/history/database.d.ts.map +1 -1
  271. package/dist/session/history/database.js +49 -15
  272. package/dist/session/session-manager.cjs +2 -1
  273. package/dist/session/session-manager.d.ts.map +1 -1
  274. package/dist/session/session-manager.js +2 -1
  275. package/dist/storage/blob/factory.cjs +8 -11
  276. package/dist/storage/blob/factory.d.ts +32 -6
  277. package/dist/storage/blob/factory.d.ts.map +1 -1
  278. package/dist/storage/blob/factory.js +8 -11
  279. package/dist/storage/blob/index.cjs +56 -0
  280. package/dist/storage/blob/index.d.ts +45 -0
  281. package/dist/storage/blob/index.d.ts.map +1 -0
  282. package/dist/storage/blob/index.js +30 -0
  283. package/dist/storage/blob/provider.cjs +16 -0
  284. package/dist/storage/blob/provider.d.ts +50 -0
  285. package/dist/storage/blob/provider.d.ts.map +1 -0
  286. package/dist/storage/blob/provider.js +0 -0
  287. package/dist/storage/blob/providers/index.cjs +31 -0
  288. package/dist/storage/blob/providers/index.d.ts +8 -0
  289. package/dist/storage/blob/providers/index.d.ts.map +1 -0
  290. package/dist/storage/blob/providers/index.js +7 -0
  291. package/dist/storage/blob/providers/local.cjs +39 -0
  292. package/dist/storage/blob/providers/local.d.ts +17 -0
  293. package/dist/storage/blob/providers/local.d.ts.map +1 -0
  294. package/dist/storage/blob/providers/local.js +16 -0
  295. package/dist/storage/blob/providers/memory.cjs +39 -0
  296. package/dist/storage/blob/providers/memory.d.ts +17 -0
  297. package/dist/storage/blob/providers/memory.d.ts.map +1 -0
  298. package/dist/storage/blob/providers/memory.js +16 -0
  299. package/dist/storage/blob/registry.cjs +50 -0
  300. package/dist/storage/blob/registry.d.ts +42 -0
  301. package/dist/storage/blob/registry.d.ts.map +1 -0
  302. package/dist/storage/blob/registry.js +26 -0
  303. package/dist/storage/blob/schemas.cjs +9 -12
  304. package/dist/storage/blob/schemas.d.ts +39 -34
  305. package/dist/storage/blob/schemas.d.ts.map +1 -1
  306. package/dist/storage/blob/schemas.js +6 -11
  307. package/dist/storage/cache/factory.cjs +8 -36
  308. package/dist/storage/cache/factory.d.ts +32 -7
  309. package/dist/storage/cache/factory.d.ts.map +1 -1
  310. package/dist/storage/cache/factory.js +8 -26
  311. package/dist/storage/cache/index.cjs +53 -0
  312. package/dist/storage/cache/index.d.ts +44 -0
  313. package/dist/storage/cache/index.d.ts.map +1 -0
  314. package/dist/storage/cache/index.js +28 -0
  315. package/dist/storage/cache/provider.cjs +16 -0
  316. package/dist/storage/cache/provider.d.ts +56 -0
  317. package/dist/storage/cache/provider.d.ts.map +1 -0
  318. package/dist/storage/cache/provider.js +0 -0
  319. package/dist/storage/cache/providers/index.cjs +31 -0
  320. package/dist/storage/cache/providers/index.d.ts +8 -0
  321. package/dist/storage/cache/providers/index.d.ts.map +1 -0
  322. package/dist/storage/cache/providers/index.js +7 -0
  323. package/dist/storage/cache/providers/memory.cjs +40 -0
  324. package/dist/storage/cache/providers/memory.d.ts +17 -0
  325. package/dist/storage/cache/providers/memory.d.ts.map +1 -0
  326. package/dist/storage/cache/providers/memory.js +17 -0
  327. package/dist/storage/cache/providers/redis.cjs +66 -0
  328. package/dist/storage/cache/providers/redis.d.ts +20 -0
  329. package/dist/storage/cache/providers/redis.d.ts.map +1 -0
  330. package/dist/storage/cache/providers/redis.js +33 -0
  331. package/dist/storage/cache/registry.cjs +50 -0
  332. package/dist/storage/cache/registry.d.ts +42 -0
  333. package/dist/storage/cache/registry.d.ts.map +1 -0
  334. package/dist/storage/cache/registry.js +26 -0
  335. package/dist/storage/cache/schemas.cjs +6 -2
  336. package/dist/storage/cache/schemas.d.ts +2 -3
  337. package/dist/storage/cache/schemas.d.ts.map +1 -1
  338. package/dist/storage/cache/schemas.js +3 -1
  339. package/dist/storage/database/factory.cjs +8 -47
  340. package/dist/storage/database/factory.d.ts +34 -8
  341. package/dist/storage/database/factory.d.ts.map +1 -1
  342. package/dist/storage/database/factory.js +8 -37
  343. package/dist/storage/database/index.cjs +58 -0
  344. package/dist/storage/database/index.d.ts +45 -0
  345. package/dist/storage/database/index.d.ts.map +1 -0
  346. package/dist/storage/database/index.js +37 -0
  347. package/dist/storage/database/postgres-store.cjs +174 -78
  348. package/dist/storage/database/postgres-store.d.ts +19 -0
  349. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  350. package/dist/storage/database/postgres-store.js +174 -78
  351. package/dist/storage/database/provider.cjs +16 -0
  352. package/dist/storage/database/provider.d.ts +56 -0
  353. package/dist/storage/database/provider.d.ts.map +1 -0
  354. package/dist/storage/database/provider.js +0 -0
  355. package/dist/storage/database/providers/index.cjs +34 -0
  356. package/dist/storage/database/providers/index.d.ts +9 -0
  357. package/dist/storage/database/providers/index.d.ts.map +1 -0
  358. package/dist/storage/database/providers/index.js +9 -0
  359. package/dist/storage/database/providers/memory.cjs +40 -0
  360. package/dist/storage/database/providers/memory.d.ts +16 -0
  361. package/dist/storage/database/providers/memory.d.ts.map +1 -0
  362. package/dist/storage/database/providers/memory.js +17 -0
  363. package/dist/storage/database/providers/postgres.cjs +62 -0
  364. package/dist/storage/database/providers/postgres.d.ts +19 -0
  365. package/dist/storage/database/providers/postgres.d.ts.map +1 -0
  366. package/dist/storage/database/providers/postgres.js +29 -0
  367. package/dist/storage/database/providers/sqlite.cjs +66 -0
  368. package/dist/storage/database/providers/sqlite.d.ts +20 -0
  369. package/dist/storage/database/providers/sqlite.d.ts.map +1 -0
  370. package/dist/storage/database/providers/sqlite.js +33 -0
  371. package/dist/storage/database/registry.cjs +50 -0
  372. package/dist/storage/database/registry.d.ts +42 -0
  373. package/dist/storage/database/registry.d.ts.map +1 -0
  374. package/dist/storage/database/registry.js +26 -0
  375. package/dist/storage/database/schemas.cjs +12 -3
  376. package/dist/storage/database/schemas.d.ts +11 -4
  377. package/dist/storage/database/schemas.d.ts.map +1 -1
  378. package/dist/storage/database/schemas.js +8 -2
  379. package/dist/storage/error-codes.cjs +6 -0
  380. package/dist/storage/error-codes.d.ts +7 -1
  381. package/dist/storage/error-codes.d.ts.map +1 -1
  382. package/dist/storage/error-codes.js +6 -0
  383. package/dist/storage/errors.cjs +80 -0
  384. package/dist/storage/errors.d.ts +24 -0
  385. package/dist/storage/errors.d.ts.map +1 -1
  386. package/dist/storage/errors.js +80 -0
  387. package/dist/storage/index.cjs +47 -4
  388. package/dist/storage/index.d.ts +34 -8
  389. package/dist/storage/index.d.ts.map +1 -1
  390. package/dist/storage/index.js +32 -3
  391. package/dist/storage/schemas.cjs +4 -0
  392. package/dist/storage/schemas.d.ts +24 -50
  393. package/dist/storage/schemas.d.ts.map +1 -1
  394. package/dist/storage/schemas.js +5 -1
  395. package/dist/storage/storage-manager.cjs +6 -6
  396. package/dist/storage/storage-manager.d.ts.map +1 -1
  397. package/dist/storage/storage-manager.js +3 -3
  398. package/dist/systemPrompt/in-built-prompts.cjs +7 -6
  399. package/dist/systemPrompt/in-built-prompts.d.ts +2 -2
  400. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  401. package/dist/systemPrompt/in-built-prompts.js +6 -5
  402. package/dist/systemPrompt/registry.cjs +2 -2
  403. package/dist/systemPrompt/registry.d.ts +1 -1
  404. package/dist/systemPrompt/registry.d.ts.map +1 -1
  405. package/dist/systemPrompt/registry.js +2 -2
  406. package/dist/systemPrompt/schemas.cjs +2 -2
  407. package/dist/systemPrompt/schemas.d.ts +13 -13
  408. package/dist/systemPrompt/schemas.js +2 -2
  409. package/dist/tools/custom-tool-registry.cjs +64 -0
  410. package/dist/tools/custom-tool-registry.d.ts +126 -0
  411. package/dist/tools/custom-tool-registry.d.ts.map +1 -0
  412. package/dist/tools/custom-tool-registry.js +40 -0
  413. package/dist/tools/custom-tool-schema-registry.cjs +164 -0
  414. package/dist/tools/custom-tool-schema-registry.d.ts +86 -0
  415. package/dist/tools/custom-tool-schema-registry.d.ts.map +1 -0
  416. package/dist/tools/custom-tool-schema-registry.js +140 -0
  417. package/dist/tools/error-codes.cjs +3 -0
  418. package/dist/tools/error-codes.d.ts +4 -1
  419. package/dist/tools/error-codes.d.ts.map +1 -1
  420. package/dist/tools/error-codes.js +3 -0
  421. package/dist/tools/errors.cjs +41 -0
  422. package/dist/tools/errors.d.ts +17 -0
  423. package/dist/tools/errors.d.ts.map +1 -1
  424. package/dist/tools/errors.js +41 -0
  425. package/dist/tools/index.cjs +13 -1
  426. package/dist/tools/index.d.ts +4 -0
  427. package/dist/tools/index.d.ts.map +1 -1
  428. package/dist/tools/index.js +11 -1
  429. package/dist/tools/internal-tools/constants.cjs +3 -9
  430. package/dist/tools/internal-tools/constants.d.ts +1 -1
  431. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  432. package/dist/tools/internal-tools/constants.js +3 -9
  433. package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +113 -0
  434. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +30 -0
  435. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +1 -0
  436. package/dist/tools/internal-tools/implementations/get-resource-tool.js +90 -0
  437. package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +91 -0
  438. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +24 -0
  439. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +1 -0
  440. package/dist/tools/internal-tools/implementations/list-resources-tool.js +68 -0
  441. package/dist/tools/internal-tools/provider.cjs +153 -23
  442. package/dist/tools/internal-tools/provider.d.ts +55 -10
  443. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  444. package/dist/tools/internal-tools/provider.js +153 -23
  445. package/dist/tools/internal-tools/registry.cjs +18 -43
  446. package/dist/tools/internal-tools/registry.d.ts +4 -4
  447. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  448. package/dist/tools/internal-tools/registry.js +18 -43
  449. package/dist/tools/schemas.cjs +20 -0
  450. package/dist/tools/schemas.d.ts +43 -1
  451. package/dist/tools/schemas.d.ts.map +1 -1
  452. package/dist/tools/schemas.js +16 -0
  453. package/dist/tools/tool-manager.cjs +140 -13
  454. package/dist/tools/tool-manager.d.ts +22 -3
  455. package/dist/tools/tool-manager.d.ts.map +1 -1
  456. package/dist/tools/tool-manager.js +140 -13
  457. package/dist/tools/types.d.ts +43 -0
  458. package/dist/tools/types.d.ts.map +1 -1
  459. package/dist/utils/api-key-resolver.cjs +19 -1
  460. package/dist/utils/api-key-resolver.d.ts.map +1 -1
  461. package/dist/utils/api-key-resolver.js +19 -1
  462. package/dist/utils/index.cjs +0 -2
  463. package/dist/utils/index.d.ts +0 -1
  464. package/dist/utils/index.d.ts.map +1 -1
  465. package/dist/utils/index.js +0 -1
  466. package/dist/utils/redactor.cjs +18 -3
  467. package/dist/utils/redactor.d.ts +0 -7
  468. package/dist/utils/redactor.d.ts.map +1 -1
  469. package/dist/utils/redactor.js +18 -3
  470. package/dist/utils/service-initializer.cjs +9 -35
  471. package/dist/utils/service-initializer.d.ts.map +1 -1
  472. package/dist/utils/service-initializer.js +9 -35
  473. package/package.json +5 -2
  474. package/dist/context/compression/overflow.d.ts.map +0 -1
  475. package/dist/context/compression/reactive-overflow.d.ts.map +0 -1
  476. package/dist/context/compression/types.d.ts.map +0 -1
  477. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +0 -130
  478. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts +0 -13
  479. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts.map +0 -1
  480. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +0 -97
  481. package/dist/tools/internal-tools/implementations/bash-output-tool.cjs +0 -49
  482. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts +0 -12
  483. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts.map +0 -1
  484. package/dist/tools/internal-tools/implementations/bash-output-tool.js +0 -26
  485. package/dist/tools/internal-tools/implementations/edit-file-tool.cjs +0 -127
  486. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts +0 -12
  487. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts.map +0 -1
  488. package/dist/tools/internal-tools/implementations/edit-file-tool.js +0 -104
  489. package/dist/tools/internal-tools/implementations/glob-files-tool.cjs +0 -70
  490. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts +0 -12
  491. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts.map +0 -1
  492. package/dist/tools/internal-tools/implementations/glob-files-tool.js +0 -47
  493. package/dist/tools/internal-tools/implementations/grep-content-tool.cjs +0 -86
  494. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts +0 -12
  495. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts.map +0 -1
  496. package/dist/tools/internal-tools/implementations/grep-content-tool.js +0 -63
  497. package/dist/tools/internal-tools/implementations/kill-process-tool.cjs +0 -47
  498. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts +0 -12
  499. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts.map +0 -1
  500. package/dist/tools/internal-tools/implementations/kill-process-tool.js +0 -24
  501. package/dist/tools/internal-tools/implementations/read-file-tool.cjs +0 -63
  502. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts +0 -12
  503. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts.map +0 -1
  504. package/dist/tools/internal-tools/implementations/read-file-tool.js +0 -40
  505. package/dist/tools/internal-tools/implementations/write-file-tool.cjs +0 -124
  506. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts +0 -12
  507. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts.map +0 -1
  508. package/dist/tools/internal-tools/implementations/write-file-tool.js +0 -103
  509. package/dist/utils/env-file.cjs +0 -118
  510. package/dist/utils/env-file.d.ts +0 -5
  511. package/dist/utils/env-file.d.ts.map +0 -1
  512. package/dist/utils/env-file.js +0 -85
  513. /package/dist/context/{compression/types.js → compaction/provider.js} +0 -0
  514. /package/dist/context/{compression → compaction}/types.cjs +0 -0
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var local_exports = {};
21
+ __export(local_exports, {
22
+ DEFAULT_OLLAMA_URL: () => import_ollama_provider.DEFAULT_OLLAMA_URL,
23
+ GPUBackendSchema: () => import_schemas.GPUBackendSchema,
24
+ GPUInfoSchema: () => import_schemas.GPUInfoSchema,
25
+ InstalledModelSchema: () => import_schemas.InstalledModelSchema,
26
+ LOCAL_MODEL_REGISTRY: () => import_registry.LOCAL_MODEL_REGISTRY,
27
+ LocalLLMConfigSchema: () => import_schemas.LocalLLMConfigSchema,
28
+ LocalModelCategorySchema: () => import_schemas.LocalModelCategorySchema,
29
+ LocalModelError: () => import_errors.LocalModelError,
30
+ LocalModelErrorCode: () => import_error_codes.LocalModelErrorCode,
31
+ LocalModelInfoSchema: () => import_schemas.LocalModelInfoSchema,
32
+ ModelDownloadOptionsSchema: () => import_schemas.ModelDownloadOptionsSchema,
33
+ ModelDownloadProgressSchema: () => import_schemas.ModelDownloadProgressSchema,
34
+ ModelDownloadStatusSchema: () => import_schemas.ModelDownloadStatusSchema,
35
+ ModelSourceSchema: () => import_schemas.ModelSourceSchema,
36
+ ModelStateSchema: () => import_schemas.ModelStateSchema,
37
+ OllamaModelInfoSchema: () => import_schemas.OllamaModelInfoSchema,
38
+ OllamaStatusSchema: () => import_schemas.OllamaStatusSchema,
39
+ QuantizationTypeSchema: () => import_schemas.QuantizationTypeSchema,
40
+ calculateFileHash: () => import_downloader.calculateFileHash,
41
+ checkDiskSpace: () => import_downloader.checkDiskSpace,
42
+ checkOllamaStatus: () => import_ollama_provider.checkOllamaStatus,
43
+ cleanupPartialDownload: () => import_downloader.cleanupPartialDownload,
44
+ createLocalLanguageModel: () => import_ai_sdk_adapter.createLocalLanguageModel,
45
+ createOllamaModel: () => import_ollama_provider.createOllamaModel,
46
+ createValidatedOllamaModel: () => import_ollama_provider.createValidatedOllamaModel,
47
+ deleteOllamaModel: () => import_ollama_provider.deleteOllamaModel,
48
+ detectGPU: () => import_gpu_detector.detectGPU,
49
+ downloadModel: () => import_downloader.downloadModel,
50
+ downloadModelFromUrl: () => import_downloader.downloadModelFromUrl,
51
+ formatGPUInfo: () => import_gpu_detector.formatGPUInfo,
52
+ generateOllamaEmbeddings: () => import_ollama_provider.generateOllamaEmbeddings,
53
+ getAllLocalModels: () => import_registry.getAllLocalModels,
54
+ getAvailableBackends: () => import_gpu_detector.getAvailableBackends,
55
+ getDefaultLocalModelId: () => import_registry.getDefaultLocalModelId,
56
+ getLoadedModelCount: () => import_node_llama_provider.getLoadedModelCount,
57
+ getLocalModelById: () => import_registry.getLocalModelById,
58
+ getLocalModelsByCategory: () => import_registry.getLocalModelsByCategory,
59
+ getModelsForRAM: () => import_registry.getModelsForRAM,
60
+ getModelsForVRAM: () => import_registry.getModelsForVRAM,
61
+ getOllamaModelInfo: () => import_ollama_provider.getOllamaModelInfo,
62
+ getPartialDownloadProgress: () => import_downloader.getPartialDownloadProgress,
63
+ getRecommendedLocalModels: () => import_registry.getRecommendedLocalModels,
64
+ isBackendAvailable: () => import_gpu_detector.isBackendAvailable,
65
+ isDownloadInProgress: () => import_downloader.isDownloadInProgress,
66
+ isModelLoaded: () => import_node_llama_provider.isModelLoaded,
67
+ isNodeLlamaCppInstalled: () => import_node_llama_provider.isNodeLlamaCppInstalled,
68
+ isOllamaModelAvailable: () => import_ollama_provider.isOllamaModelAvailable,
69
+ listOllamaModels: () => import_ollama_provider.listOllamaModels,
70
+ loadModel: () => import_node_llama_provider.loadModel,
71
+ pullOllamaModel: () => import_ollama_provider.pullOllamaModel,
72
+ requireNodeLlamaCpp: () => import_node_llama_provider.requireNodeLlamaCpp,
73
+ searchLocalModels: () => import_registry.searchLocalModels,
74
+ unloadAllModels: () => import_node_llama_provider.unloadAllModels,
75
+ unloadModel: () => import_node_llama_provider.unloadModel,
76
+ validateDiskSpace: () => import_downloader.validateDiskSpace
77
+ });
78
+ module.exports = __toCommonJS(local_exports);
79
+ __reExport(local_exports, require("./types.js"), module.exports);
80
+ var import_error_codes = require("./error-codes.js");
81
+ var import_errors = require("./errors.js");
82
+ var import_schemas = require("./schemas.js");
83
+ var import_registry = require("./registry.js");
84
+ var import_gpu_detector = require("./gpu-detector.js");
85
+ var import_downloader = require("./downloader.js");
86
+ var import_ollama_provider = require("./ollama-provider.js");
87
+ var import_node_llama_provider = require("./node-llama-provider.js");
88
+ var import_ai_sdk_adapter = require("./ai-sdk-adapter.js");
89
+ // Annotate the CommonJS export names for ESM import in node:
90
+ 0 && (module.exports = {
91
+ DEFAULT_OLLAMA_URL,
92
+ GPUBackendSchema,
93
+ GPUInfoSchema,
94
+ InstalledModelSchema,
95
+ LOCAL_MODEL_REGISTRY,
96
+ LocalLLMConfigSchema,
97
+ LocalModelCategorySchema,
98
+ LocalModelError,
99
+ LocalModelErrorCode,
100
+ LocalModelInfoSchema,
101
+ ModelDownloadOptionsSchema,
102
+ ModelDownloadProgressSchema,
103
+ ModelDownloadStatusSchema,
104
+ ModelSourceSchema,
105
+ ModelStateSchema,
106
+ OllamaModelInfoSchema,
107
+ OllamaStatusSchema,
108
+ QuantizationTypeSchema,
109
+ calculateFileHash,
110
+ checkDiskSpace,
111
+ checkOllamaStatus,
112
+ cleanupPartialDownload,
113
+ createLocalLanguageModel,
114
+ createOllamaModel,
115
+ createValidatedOllamaModel,
116
+ deleteOllamaModel,
117
+ detectGPU,
118
+ downloadModel,
119
+ downloadModelFromUrl,
120
+ formatGPUInfo,
121
+ generateOllamaEmbeddings,
122
+ getAllLocalModels,
123
+ getAvailableBackends,
124
+ getDefaultLocalModelId,
125
+ getLoadedModelCount,
126
+ getLocalModelById,
127
+ getLocalModelsByCategory,
128
+ getModelsForRAM,
129
+ getModelsForVRAM,
130
+ getOllamaModelInfo,
131
+ getPartialDownloadProgress,
132
+ getRecommendedLocalModels,
133
+ isBackendAvailable,
134
+ isDownloadInProgress,
135
+ isModelLoaded,
136
+ isNodeLlamaCppInstalled,
137
+ isOllamaModelAvailable,
138
+ listOllamaModels,
139
+ loadModel,
140
+ pullOllamaModel,
141
+ requireNodeLlamaCpp,
142
+ searchLocalModels,
143
+ unloadAllModels,
144
+ unloadModel,
145
+ validateDiskSpace,
146
+ ...require("./types.js")
147
+ });
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Native local model support via node-llama-cpp and Ollama.
3
+ *
4
+ * This module provides:
5
+ * - Local model registry with curated GGUF models
6
+ * - GPU detection (Metal/CUDA/Vulkan)
7
+ * - Model downloading with progress
8
+ * - node-llama-cpp provider for native GGUF execution
9
+ * - Ollama provider for Ollama server integration
10
+ */
11
+ export * from './types.js';
12
+ export { LocalModelErrorCode } from './error-codes.js';
13
+ export { LocalModelError } from './errors.js';
14
+ export { GPUBackendSchema, QuantizationTypeSchema, LocalModelCategorySchema, ModelSourceSchema, ModelDownloadStatusSchema, LocalModelInfoSchema, ModelDownloadProgressSchema, GPUInfoSchema, LocalLLMConfigSchema, InstalledModelSchema, ModelStateSchema, ModelDownloadOptionsSchema, OllamaModelInfoSchema, OllamaStatusSchema, } from './schemas.js';
15
+ export { LOCAL_MODEL_REGISTRY, getAllLocalModels, getLocalModelById, getLocalModelsByCategory, getRecommendedLocalModels, getModelsForVRAM, getModelsForRAM, searchLocalModels, getDefaultLocalModelId, } from './registry.js';
16
+ export { detectGPU, formatGPUInfo, isBackendAvailable, getAvailableBackends, } from './gpu-detector.js';
17
+ export { downloadModel, downloadModelFromUrl, calculateFileHash, checkDiskSpace, validateDiskSpace, cleanupPartialDownload, isDownloadInProgress, getPartialDownloadProgress, type DownloadEvents, type DownloadOptions, type DownloadResult, } from './downloader.js';
18
+ export { DEFAULT_OLLAMA_URL, checkOllamaStatus, listOllamaModels, isOllamaModelAvailable, pullOllamaModel, createOllamaModel, createValidatedOllamaModel, getOllamaModelInfo, deleteOllamaModel, generateOllamaEmbeddings, type OllamaConfig, } from './ollama-provider.js';
19
+ export { isNodeLlamaCppInstalled, requireNodeLlamaCpp, loadModel, unloadModel, unloadAllModels, isModelLoaded, getLoadedModelCount, type NodeLlamaConfig, type ModelSession, type LoadedModel, } from './node-llama-provider.js';
20
+ export { createLocalLanguageModel, type LocalModelAdapterConfig } from './ai-sdk-adapter.js';
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/llm/providers/local/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EACH,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,EAC3B,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,GACrB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACH,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACzB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACH,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GACvB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACH,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,cAAc,GACtB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACH,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,0BAA0B,EAC1B,kBAAkB,EAClB,iBAAiB,EACjB,wBAAwB,EACxB,KAAK,YAAY,GACpB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACH,uBAAuB,EACvB,mBAAmB,EACnB,SAAS,EACT,WAAW,EACX,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,WAAW,GACnB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,126 @@
1
+ import "../../../chunk-PTJYTZNU.js";
2
+ export * from "./types.js";
3
+ import { LocalModelErrorCode } from "./error-codes.js";
4
+ import { LocalModelError } from "./errors.js";
5
+ import {
6
+ GPUBackendSchema,
7
+ QuantizationTypeSchema,
8
+ LocalModelCategorySchema,
9
+ ModelSourceSchema,
10
+ ModelDownloadStatusSchema,
11
+ LocalModelInfoSchema,
12
+ ModelDownloadProgressSchema,
13
+ GPUInfoSchema,
14
+ LocalLLMConfigSchema,
15
+ InstalledModelSchema,
16
+ ModelStateSchema,
17
+ ModelDownloadOptionsSchema,
18
+ OllamaModelInfoSchema,
19
+ OllamaStatusSchema
20
+ } from "./schemas.js";
21
+ import {
22
+ LOCAL_MODEL_REGISTRY,
23
+ getAllLocalModels,
24
+ getLocalModelById,
25
+ getLocalModelsByCategory,
26
+ getRecommendedLocalModels,
27
+ getModelsForVRAM,
28
+ getModelsForRAM,
29
+ searchLocalModels,
30
+ getDefaultLocalModelId
31
+ } from "./registry.js";
32
+ import {
33
+ detectGPU,
34
+ formatGPUInfo,
35
+ isBackendAvailable,
36
+ getAvailableBackends
37
+ } from "./gpu-detector.js";
38
+ import {
39
+ downloadModel,
40
+ downloadModelFromUrl,
41
+ calculateFileHash,
42
+ checkDiskSpace,
43
+ validateDiskSpace,
44
+ cleanupPartialDownload,
45
+ isDownloadInProgress,
46
+ getPartialDownloadProgress
47
+ } from "./downloader.js";
48
+ import {
49
+ DEFAULT_OLLAMA_URL,
50
+ checkOllamaStatus,
51
+ listOllamaModels,
52
+ isOllamaModelAvailable,
53
+ pullOllamaModel,
54
+ createOllamaModel,
55
+ createValidatedOllamaModel,
56
+ getOllamaModelInfo,
57
+ deleteOllamaModel,
58
+ generateOllamaEmbeddings
59
+ } from "./ollama-provider.js";
60
+ import {
61
+ isNodeLlamaCppInstalled,
62
+ requireNodeLlamaCpp,
63
+ loadModel,
64
+ unloadModel,
65
+ unloadAllModels,
66
+ isModelLoaded,
67
+ getLoadedModelCount
68
+ } from "./node-llama-provider.js";
69
+ import { createLocalLanguageModel } from "./ai-sdk-adapter.js";
70
+ export {
71
+ DEFAULT_OLLAMA_URL,
72
+ GPUBackendSchema,
73
+ GPUInfoSchema,
74
+ InstalledModelSchema,
75
+ LOCAL_MODEL_REGISTRY,
76
+ LocalLLMConfigSchema,
77
+ LocalModelCategorySchema,
78
+ LocalModelError,
79
+ LocalModelErrorCode,
80
+ LocalModelInfoSchema,
81
+ ModelDownloadOptionsSchema,
82
+ ModelDownloadProgressSchema,
83
+ ModelDownloadStatusSchema,
84
+ ModelSourceSchema,
85
+ ModelStateSchema,
86
+ OllamaModelInfoSchema,
87
+ OllamaStatusSchema,
88
+ QuantizationTypeSchema,
89
+ calculateFileHash,
90
+ checkDiskSpace,
91
+ checkOllamaStatus,
92
+ cleanupPartialDownload,
93
+ createLocalLanguageModel,
94
+ createOllamaModel,
95
+ createValidatedOllamaModel,
96
+ deleteOllamaModel,
97
+ detectGPU,
98
+ downloadModel,
99
+ downloadModelFromUrl,
100
+ formatGPUInfo,
101
+ generateOllamaEmbeddings,
102
+ getAllLocalModels,
103
+ getAvailableBackends,
104
+ getDefaultLocalModelId,
105
+ getLoadedModelCount,
106
+ getLocalModelById,
107
+ getLocalModelsByCategory,
108
+ getModelsForRAM,
109
+ getModelsForVRAM,
110
+ getOllamaModelInfo,
111
+ getPartialDownloadProgress,
112
+ getRecommendedLocalModels,
113
+ isBackendAvailable,
114
+ isDownloadInProgress,
115
+ isModelLoaded,
116
+ isNodeLlamaCppInstalled,
117
+ isOllamaModelAvailable,
118
+ listOllamaModels,
119
+ loadModel,
120
+ pullOllamaModel,
121
+ requireNodeLlamaCpp,
122
+ searchLocalModels,
123
+ unloadAllModels,
124
+ unloadModel,
125
+ validateDiskSpace
126
+ };
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var node_llama_provider_exports = {};
30
+ __export(node_llama_provider_exports, {
31
+ getLoadedModelCount: () => getLoadedModelCount,
32
+ isModelLoaded: () => isModelLoaded,
33
+ isNodeLlamaCppInstalled: () => isNodeLlamaCppInstalled,
34
+ loadModel: () => loadModel,
35
+ requireNodeLlamaCpp: () => requireNodeLlamaCpp,
36
+ unloadAllModels: () => unloadAllModels,
37
+ unloadModel: () => unloadModel
38
+ });
39
+ module.exports = __toCommonJS(node_llama_provider_exports);
40
+ var import_errors = require("./errors.js");
41
+ var import_gpu_detector = require("./gpu-detector.js");
42
+ var import_path = require("../../../utils/path.js");
43
+ var import_module = require("module");
44
+ var path = __toESM(require("path"), 1);
45
+ const import_meta = {};
46
+ function getGlobalNodeLlamaCppPath() {
47
+ return path.join((0, import_path.getDextoGlobalPath)("deps"), "node_modules", "node-llama-cpp");
48
+ }
49
+ async function isNodeLlamaCppInstalled() {
50
+ try {
51
+ await import("node-llama-cpp");
52
+ return true;
53
+ } catch {
54
+ }
55
+ try {
56
+ const globalPath = getGlobalNodeLlamaCppPath();
57
+ const require2 = (0, import_module.createRequire)(import_meta.url);
58
+ require2.resolve(globalPath);
59
+ return true;
60
+ } catch {
61
+ return false;
62
+ }
63
+ }
64
+ async function importNodeLlamaCpp() {
65
+ try {
66
+ return await import("node-llama-cpp");
67
+ } catch {
68
+ }
69
+ try {
70
+ const globalPath = getGlobalNodeLlamaCppPath();
71
+ const entryPoint = path.join(globalPath, "dist", "index.js");
72
+ return await import(entryPoint);
73
+ } catch {
74
+ return null;
75
+ }
76
+ }
77
+ function requireNodeLlamaCpp() {
78
+ throw import_errors.LocalModelError.nodeLlamaNotInstalled();
79
+ }
80
+ const modelCache = /* @__PURE__ */ new Map();
81
+ async function loadModel(config) {
82
+ const { modelPath, gpuLayers = -1, contextSize, threads, batchSize = 512 } = config;
83
+ const cacheKey = `${modelPath}:${gpuLayers}:${contextSize}`;
84
+ const cached = modelCache.get(cacheKey);
85
+ if (cached) {
86
+ return cached;
87
+ }
88
+ const loadPromise = (async () => {
89
+ const nodeLlama = await importNodeLlamaCpp();
90
+ if (!nodeLlama) {
91
+ throw import_errors.LocalModelError.nodeLlamaNotInstalled();
92
+ }
93
+ try {
94
+ const gpuInfo = await (0, import_gpu_detector.detectGPU)();
95
+ const getLlama = nodeLlama["getLlama"];
96
+ const LlamaLogLevel = nodeLlama["LlamaLogLevel"];
97
+ const LlamaChatSession = nodeLlama["LlamaChatSession"];
98
+ const llama = await getLlama({
99
+ logLevel: LlamaLogLevel.warn,
100
+ gpu: gpuInfo.backend === "cpu" ? false : "auto"
101
+ });
102
+ const model = await llama.loadModel({
103
+ modelPath,
104
+ gpuLayers: gpuLayers === -1 ? "auto" : gpuLayers
105
+ });
106
+ const contextOptions = {
107
+ batchSize
108
+ };
109
+ if (contextSize !== void 0) {
110
+ contextOptions.contextSize = contextSize;
111
+ }
112
+ if (threads !== void 0) {
113
+ contextOptions.threads = threads;
114
+ }
115
+ const context = await model.createContext(contextOptions);
116
+ return {
117
+ modelPath,
118
+ gpuInfo,
119
+ async createSession() {
120
+ const session = new LlamaChatSession({
121
+ contextSequence: context.getSequence()
122
+ });
123
+ return {
124
+ async prompt(text, options = {}) {
125
+ const {
126
+ maxTokens = 1024,
127
+ temperature = 0.7,
128
+ topP = 0.9,
129
+ signal,
130
+ onToken
131
+ } = options;
132
+ const promptOptions = {
133
+ maxTokens,
134
+ temperature,
135
+ topP,
136
+ stopOnAbortSignal: true,
137
+ trimWhitespaceSuffix: true
138
+ };
139
+ if (signal) {
140
+ promptOptions.signal = signal;
141
+ }
142
+ if (onToken) {
143
+ promptOptions.onTextChunk = onToken;
144
+ }
145
+ const response = await session.prompt(text, promptOptions);
146
+ return response;
147
+ },
148
+ async dispose() {
149
+ }
150
+ };
151
+ },
152
+ async dispose() {
153
+ await context.dispose();
154
+ await model.dispose();
155
+ modelCache.delete(cacheKey);
156
+ }
157
+ };
158
+ } catch (error) {
159
+ modelCache.delete(cacheKey);
160
+ if (error instanceof Error && "code" in error) {
161
+ throw error;
162
+ }
163
+ throw import_errors.LocalModelError.modelLoadFailed(
164
+ modelPath,
165
+ error instanceof Error ? error.message : String(error)
166
+ );
167
+ }
168
+ })();
169
+ modelCache.set(cacheKey, loadPromise);
170
+ return loadPromise;
171
+ }
172
+ async function unloadModel(modelPath) {
173
+ for (const [key, loadPromise] of modelCache.entries()) {
174
+ const keyModelPath = key.split(":")[0];
175
+ if (keyModelPath === modelPath) {
176
+ try {
177
+ const loaded = await loadPromise;
178
+ await loaded.dispose();
179
+ } catch {
180
+ }
181
+ modelCache.delete(key);
182
+ }
183
+ }
184
+ }
185
+ async function unloadAllModels() {
186
+ for (const [key, loadPromise] of modelCache.entries()) {
187
+ try {
188
+ const loaded = await loadPromise;
189
+ await loaded.dispose();
190
+ } catch {
191
+ }
192
+ modelCache.delete(key);
193
+ }
194
+ }
195
+ function isModelLoaded(modelPath) {
196
+ for (const key of modelCache.keys()) {
197
+ const keyModelPath = key.split(":")[0];
198
+ if (keyModelPath === modelPath) {
199
+ return true;
200
+ }
201
+ }
202
+ return false;
203
+ }
204
+ function getLoadedModelCount() {
205
+ return modelCache.size;
206
+ }
207
+ // Annotate the CommonJS export names for ESM import in node:
208
+ 0 && (module.exports = {
209
+ getLoadedModelCount,
210
+ isModelLoaded,
211
+ isNodeLlamaCppInstalled,
212
+ loadModel,
213
+ requireNodeLlamaCpp,
214
+ unloadAllModels,
215
+ unloadModel
216
+ });
@@ -0,0 +1,90 @@
1
+ /**
2
+ * node-llama-cpp provider for native local model execution.
3
+ *
4
+ * This module provides utilities for loading and using GGUF models via node-llama-cpp.
5
+ * Since node-llama-cpp is an optional dependency, all functions handle the case
6
+ * where it's not installed gracefully.
7
+ *
8
+ * For Vercel AI SDK integration, we recommend using Ollama which provides
9
+ * an OpenAI-compatible API that works seamlessly with the SDK.
10
+ */
11
+ import type { GPUInfo } from './types.js';
12
+ /**
13
+ * Check if node-llama-cpp is installed.
14
+ * Checks both standard node resolution (for dev/projects) and global deps (~/.dexto/deps).
15
+ */
16
+ export declare function isNodeLlamaCppInstalled(): Promise<boolean>;
17
+ /**
18
+ * Throws an error indicating node-llama-cpp needs to be installed.
19
+ */
20
+ export declare function requireNodeLlamaCpp(): never;
21
+ /**
22
+ * Configuration for the node-llama-cpp model.
23
+ */
24
+ export interface NodeLlamaConfig {
25
+ /** Path to the .gguf model file */
26
+ modelPath: string;
27
+ /** Number of GPU layers to offload (-1 = all, 0 = CPU only) */
28
+ gpuLayers?: number;
29
+ /** Context window size */
30
+ contextSize?: number;
31
+ /** Number of CPU threads */
32
+ threads?: number;
33
+ /** Batch size for inference */
34
+ batchSize?: number;
35
+ /** Whether to use Flash Attention (if available) */
36
+ flashAttention?: boolean;
37
+ }
38
+ /**
39
+ * Model session interface for node-llama-cpp.
40
+ * This provides a simplified interface for text generation.
41
+ */
42
+ export interface ModelSession {
43
+ /** Generate a response from a prompt */
44
+ prompt(text: string, options?: {
45
+ maxTokens?: number;
46
+ temperature?: number;
47
+ topP?: number;
48
+ signal?: AbortSignal;
49
+ onToken?: (token: string) => void;
50
+ }): Promise<string>;
51
+ /** Dispose the session and free resources */
52
+ dispose(): Promise<void>;
53
+ }
54
+ /**
55
+ * Loaded model interface.
56
+ */
57
+ export interface LoadedModel {
58
+ /** Model file path */
59
+ modelPath: string;
60
+ /** GPU info used for loading */
61
+ gpuInfo: GPUInfo;
62
+ /** Create a new chat session */
63
+ createSession(): Promise<ModelSession>;
64
+ /** Dispose the model and free resources */
65
+ dispose(): Promise<void>;
66
+ }
67
+ /**
68
+ * Load a GGUF model using node-llama-cpp.
69
+ *
70
+ * @throws {DextoRuntimeError} If node-llama-cpp is not installed
71
+ */
72
+ export declare function loadModel(config: NodeLlamaConfig): Promise<LoadedModel>;
73
+ /**
74
+ * Unload a model and free resources.
75
+ * Removes all cache entries for the given model path (across different configs).
76
+ */
77
+ export declare function unloadModel(modelPath: string): Promise<void>;
78
+ /**
79
+ * Unload all models and free resources.
80
+ */
81
+ export declare function unloadAllModels(): Promise<void>;
82
+ /**
83
+ * Check if a model is currently loaded.
84
+ */
85
+ export declare function isModelLoaded(modelPath: string): boolean;
86
+ /**
87
+ * Get the number of currently loaded models.
88
+ */
89
+ export declare function getLoadedModelCount(): number;
90
+ //# sourceMappingURL=node-llama-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-llama-provider.d.ts","sourceRoot":"","sources":["../../../../src/llm/providers/local/node-llama-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAc1C;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC,CAmBhE;AA6BD;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,KAAK,CAE3C;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IACzB,wCAAwC;IACxC,MAAM,CACF,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;KACrC,GACF,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,6CAA6C;IAC7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,sBAAsB;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,aAAa,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IACvC,2CAA2C;IAC3C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAKD;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAuJ7E;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAclE;AAED;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAUrD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CASxD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}