agent-orcha 0.0.4 → 0.0.5

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 (483) hide show
  1. package/README.md +197 -221
  2. package/dist/lib/agents/agent-executor.d.ts +13 -4
  3. package/dist/lib/agents/agent-executor.d.ts.map +1 -1
  4. package/dist/lib/agents/agent-executor.js +307 -73
  5. package/dist/lib/agents/agent-executor.js.map +1 -1
  6. package/dist/lib/agents/agent-loader.d.ts +1 -1
  7. package/dist/lib/agents/agent-loader.d.ts.map +1 -1
  8. package/dist/lib/agents/agent-loader.js +10 -3
  9. package/dist/lib/agents/agent-loader.js.map +1 -1
  10. package/dist/lib/agents/index.d.ts +5 -5
  11. package/dist/lib/agents/index.js +4 -4
  12. package/dist/lib/agents/react-loop.d.ts +30 -0
  13. package/dist/lib/agents/react-loop.d.ts.map +1 -0
  14. package/dist/lib/agents/react-loop.js +155 -0
  15. package/dist/lib/agents/react-loop.js.map +1 -0
  16. package/dist/lib/agents/structured-output-wrapper.d.ts +3 -3
  17. package/dist/lib/agents/structured-output-wrapper.d.ts.map +1 -1
  18. package/dist/lib/agents/structured-output-wrapper.js +2 -2
  19. package/dist/lib/agents/structured-output-wrapper.js.map +1 -1
  20. package/dist/lib/agents/types.d.ts +132 -8
  21. package/dist/lib/agents/types.d.ts.map +1 -1
  22. package/dist/lib/agents/types.js +16 -2
  23. package/dist/lib/agents/types.js.map +1 -1
  24. package/dist/lib/functions/function-loader.d.ts +1 -1
  25. package/dist/lib/functions/function-loader.js +13 -5
  26. package/dist/lib/functions/function-loader.js.map +1 -1
  27. package/dist/lib/functions/index.d.ts +2 -2
  28. package/dist/lib/functions/index.js +1 -1
  29. package/dist/lib/functions/simple-function-wrapper.d.ts +2 -11
  30. package/dist/lib/functions/simple-function-wrapper.d.ts.map +1 -1
  31. package/dist/lib/functions/simple-function-wrapper.js +3 -3
  32. package/dist/lib/functions/simple-function-wrapper.js.map +1 -1
  33. package/dist/lib/index.d.ts +29 -17
  34. package/dist/lib/index.d.ts.map +1 -1
  35. package/dist/lib/index.js +21 -9
  36. package/dist/lib/index.js.map +1 -1
  37. package/dist/lib/integrations/collabnook.d.ts +56 -0
  38. package/dist/lib/integrations/collabnook.d.ts.map +1 -0
  39. package/dist/lib/integrations/collabnook.js +307 -0
  40. package/dist/lib/integrations/collabnook.js.map +1 -0
  41. package/dist/lib/integrations/integration-manager.d.ts +14 -0
  42. package/dist/lib/integrations/integration-manager.d.ts.map +1 -0
  43. package/dist/lib/integrations/integration-manager.js +109 -0
  44. package/dist/lib/integrations/integration-manager.js.map +1 -0
  45. package/dist/lib/integrations/types.d.ts +49 -0
  46. package/dist/lib/integrations/types.d.ts.map +1 -0
  47. package/dist/lib/integrations/types.js +14 -0
  48. package/dist/lib/integrations/types.js.map +1 -0
  49. package/dist/lib/knowledge/direct-mapper.d.ts +21 -0
  50. package/dist/lib/knowledge/direct-mapper.d.ts.map +1 -0
  51. package/dist/lib/knowledge/direct-mapper.js +134 -0
  52. package/dist/lib/knowledge/direct-mapper.js.map +1 -0
  53. package/dist/lib/knowledge/index.d.ts +9 -8
  54. package/dist/lib/knowledge/index.d.ts.map +1 -1
  55. package/dist/lib/knowledge/index.js +9 -7
  56. package/dist/lib/knowledge/index.js.map +1 -1
  57. package/dist/lib/knowledge/knowledge-store-metadata.d.ts +40 -0
  58. package/dist/lib/knowledge/knowledge-store-metadata.d.ts.map +1 -0
  59. package/dist/lib/knowledge/knowledge-store-metadata.js +93 -0
  60. package/dist/lib/knowledge/knowledge-store-metadata.js.map +1 -0
  61. package/dist/lib/knowledge/knowledge-store.d.ts +43 -0
  62. package/dist/lib/knowledge/knowledge-store.d.ts.map +1 -0
  63. package/dist/lib/knowledge/knowledge-store.js +603 -0
  64. package/dist/lib/knowledge/knowledge-store.js.map +1 -0
  65. package/dist/lib/knowledge/loaders/database-loader.d.ts +5 -5
  66. package/dist/lib/knowledge/loaders/database-loader.d.ts.map +1 -1
  67. package/dist/lib/knowledge/loaders/database-loader.js +21 -10
  68. package/dist/lib/knowledge/loaders/database-loader.js.map +1 -1
  69. package/dist/lib/knowledge/loaders/file-loaders.d.ts +39 -0
  70. package/dist/lib/knowledge/loaders/file-loaders.d.ts.map +1 -0
  71. package/dist/lib/knowledge/loaders/file-loaders.js +131 -0
  72. package/dist/lib/knowledge/loaders/file-loaders.js.map +1 -0
  73. package/dist/lib/knowledge/loaders/index.d.ts +3 -3
  74. package/dist/lib/knowledge/loaders/index.d.ts.map +1 -1
  75. package/dist/lib/knowledge/loaders/index.js +3 -3
  76. package/dist/lib/knowledge/loaders/index.js.map +1 -1
  77. package/dist/lib/knowledge/loaders/web-loader.d.ts +2 -2
  78. package/dist/lib/knowledge/loaders/web-loader.d.ts.map +1 -1
  79. package/dist/lib/knowledge/loaders/web-loader.js +22 -21
  80. package/dist/lib/knowledge/loaders/web-loader.js.map +1 -1
  81. package/dist/lib/knowledge/sqlite-store.d.ts +107 -0
  82. package/dist/lib/knowledge/sqlite-store.d.ts.map +1 -0
  83. package/dist/lib/knowledge/sqlite-store.js +327 -0
  84. package/dist/lib/knowledge/sqlite-store.js.map +1 -0
  85. package/dist/lib/knowledge/types.d.ts +72 -1432
  86. package/dist/lib/knowledge/types.d.ts.map +1 -1
  87. package/dist/lib/knowledge/types.js +36 -57
  88. package/dist/lib/knowledge/types.js.map +1 -1
  89. package/dist/lib/knowledge/utils/connection-pool.d.ts +3 -2
  90. package/dist/lib/knowledge/utils/connection-pool.d.ts.map +1 -1
  91. package/dist/lib/knowledge/utils/connection-pool.js +20 -10
  92. package/dist/lib/knowledge/utils/connection-pool.js.map +1 -1
  93. package/dist/lib/knowledge/utils/index.d.ts +2 -2
  94. package/dist/lib/knowledge/utils/index.js +2 -2
  95. package/dist/lib/llm/index.d.ts +5 -5
  96. package/dist/lib/llm/index.d.ts.map +1 -1
  97. package/dist/lib/llm/index.js +3 -3
  98. package/dist/lib/llm/index.js.map +1 -1
  99. package/dist/lib/llm/llm-call-logger.d.ts +37 -0
  100. package/dist/lib/llm/llm-call-logger.d.ts.map +1 -0
  101. package/dist/lib/llm/llm-call-logger.js +105 -0
  102. package/dist/lib/llm/llm-call-logger.js.map +1 -0
  103. package/dist/lib/llm/llm-config.d.ts +22 -16
  104. package/dist/lib/llm/llm-config.d.ts.map +1 -1
  105. package/dist/lib/llm/llm-config.js +19 -3
  106. package/dist/lib/llm/llm-config.js.map +1 -1
  107. package/dist/lib/llm/llm-factory.d.ts +3 -16
  108. package/dist/lib/llm/llm-factory.d.ts.map +1 -1
  109. package/dist/lib/llm/llm-factory.js +30 -48
  110. package/dist/lib/llm/llm-factory.js.map +1 -1
  111. package/dist/lib/llm/provider-detector.d.ts +1 -1
  112. package/dist/lib/llm/providers/anthropic-chat-model.d.ts +27 -0
  113. package/dist/lib/llm/providers/anthropic-chat-model.d.ts.map +1 -0
  114. package/dist/lib/llm/providers/anthropic-chat-model.js +186 -0
  115. package/dist/lib/llm/providers/anthropic-chat-model.js.map +1 -0
  116. package/dist/lib/llm/providers/gemini-chat-model.d.ts +29 -0
  117. package/dist/lib/llm/providers/gemini-chat-model.d.ts.map +1 -0
  118. package/dist/lib/llm/providers/gemini-chat-model.js +241 -0
  119. package/dist/lib/llm/providers/gemini-chat-model.js.map +1 -0
  120. package/dist/lib/llm/providers/gemini-embeddings.d.ts +14 -0
  121. package/dist/lib/llm/providers/gemini-embeddings.d.ts.map +1 -0
  122. package/dist/lib/llm/providers/gemini-embeddings.js +20 -0
  123. package/dist/lib/llm/providers/gemini-embeddings.js.map +1 -0
  124. package/dist/lib/llm/providers/openai-chat-model.d.ts +30 -0
  125. package/dist/lib/llm/providers/openai-chat-model.d.ts.map +1 -0
  126. package/dist/lib/llm/providers/openai-chat-model.js +196 -0
  127. package/dist/lib/llm/providers/openai-chat-model.js.map +1 -0
  128. package/dist/lib/llm/providers/openai-embeddings.d.ts +17 -0
  129. package/dist/lib/llm/providers/openai-embeddings.d.ts.map +1 -0
  130. package/dist/lib/llm/providers/openai-embeddings.js +35 -0
  131. package/dist/lib/llm/providers/openai-embeddings.js.map +1 -0
  132. package/dist/lib/llm/types.d.ts +2 -2
  133. package/dist/lib/llm/types.js +1 -1
  134. package/dist/lib/logger.d.ts +7 -0
  135. package/dist/lib/logger.d.ts.map +1 -1
  136. package/dist/lib/logger.js +43 -4
  137. package/dist/lib/logger.js.map +1 -1
  138. package/dist/lib/mcp/index.d.ts +3 -3
  139. package/dist/lib/mcp/index.js +2 -2
  140. package/dist/lib/mcp/mcp-client.d.ts +3 -2
  141. package/dist/lib/mcp/mcp-client.d.ts.map +1 -1
  142. package/dist/lib/mcp/mcp-client.js +5 -2
  143. package/dist/lib/mcp/mcp-client.js.map +1 -1
  144. package/dist/lib/mcp/types.d.ts +33 -23
  145. package/dist/lib/mcp/types.d.ts.map +1 -1
  146. package/dist/lib/mcp/types.js +11 -2
  147. package/dist/lib/mcp/types.js.map +1 -1
  148. package/dist/lib/memory/conversation-store.d.ts +2 -2
  149. package/dist/lib/memory/conversation-store.d.ts.map +1 -1
  150. package/dist/lib/memory/conversation-store.js +1 -1
  151. package/dist/lib/memory/index.d.ts +3 -2
  152. package/dist/lib/memory/index.d.ts.map +1 -1
  153. package/dist/lib/memory/index.js +3 -2
  154. package/dist/lib/memory/index.js.map +1 -1
  155. package/dist/lib/memory/memory-manager.d.ts +9 -0
  156. package/dist/lib/memory/memory-manager.d.ts.map +1 -0
  157. package/dist/lib/memory/memory-manager.js +34 -0
  158. package/dist/lib/memory/memory-manager.js.map +1 -0
  159. package/dist/lib/memory/types.d.ts +1 -1
  160. package/dist/lib/memory/types.d.ts.map +1 -1
  161. package/dist/lib/orchestrator.d.ts +78 -18
  162. package/dist/lib/orchestrator.d.ts.map +1 -1
  163. package/dist/lib/orchestrator.js +247 -55
  164. package/dist/lib/orchestrator.js.map +1 -1
  165. package/dist/lib/sandbox/html-to-markdown.d.ts +2 -0
  166. package/dist/lib/sandbox/html-to-markdown.d.ts.map +1 -0
  167. package/dist/lib/sandbox/html-to-markdown.js +64 -0
  168. package/dist/lib/sandbox/html-to-markdown.js.map +1 -0
  169. package/dist/lib/sandbox/index.d.ts +7 -0
  170. package/dist/lib/sandbox/index.d.ts.map +1 -0
  171. package/dist/lib/sandbox/index.js +6 -0
  172. package/dist/lib/sandbox/index.js.map +1 -0
  173. package/dist/lib/sandbox/sandbox-exec.d.ts +5 -0
  174. package/dist/lib/sandbox/sandbox-exec.d.ts.map +1 -0
  175. package/dist/lib/sandbox/sandbox-exec.js +35 -0
  176. package/dist/lib/sandbox/sandbox-exec.js.map +1 -0
  177. package/dist/lib/sandbox/sandbox-web.d.ts +5 -0
  178. package/dist/lib/sandbox/sandbox-web.d.ts.map +1 -0
  179. package/dist/lib/sandbox/sandbox-web.js +211 -0
  180. package/dist/lib/sandbox/sandbox-web.js.map +1 -0
  181. package/dist/lib/sandbox/types.d.ts +21 -0
  182. package/dist/lib/sandbox/types.d.ts.map +1 -0
  183. package/dist/lib/sandbox/types.js +7 -0
  184. package/dist/lib/sandbox/types.js.map +1 -0
  185. package/dist/lib/sandbox/vm-executor.d.ts +12 -0
  186. package/dist/lib/sandbox/vm-executor.d.ts.map +1 -0
  187. package/dist/lib/sandbox/vm-executor.js +101 -0
  188. package/dist/lib/sandbox/vm-executor.js.map +1 -0
  189. package/dist/lib/skills/index.d.ts +4 -0
  190. package/dist/lib/skills/index.d.ts.map +1 -0
  191. package/dist/lib/skills/index.js +3 -0
  192. package/dist/lib/skills/index.js.map +1 -0
  193. package/dist/lib/skills/skill-loader.d.ts +19 -0
  194. package/dist/lib/skills/skill-loader.d.ts.map +1 -0
  195. package/dist/lib/skills/skill-loader.js +105 -0
  196. package/dist/lib/skills/skill-loader.js.map +1 -0
  197. package/dist/lib/skills/types.d.ts +17 -0
  198. package/dist/lib/skills/types.d.ts.map +1 -0
  199. package/dist/lib/skills/types.js +6 -0
  200. package/dist/lib/skills/types.js.map +1 -0
  201. package/dist/lib/tasks/index.d.ts +4 -0
  202. package/dist/lib/tasks/index.d.ts.map +1 -0
  203. package/dist/lib/tasks/index.js +4 -0
  204. package/dist/lib/tasks/index.js.map +1 -0
  205. package/dist/lib/tasks/task-manager.d.ts +25 -0
  206. package/dist/lib/tasks/task-manager.d.ts.map +1 -0
  207. package/dist/lib/tasks/task-manager.js +189 -0
  208. package/dist/lib/tasks/task-manager.js.map +1 -0
  209. package/dist/lib/tasks/task-store.d.ts +20 -0
  210. package/dist/lib/tasks/task-store.d.ts.map +1 -0
  211. package/dist/lib/tasks/task-store.js +102 -0
  212. package/dist/lib/tasks/task-store.js.map +1 -0
  213. package/dist/lib/tasks/types.d.ts +38 -0
  214. package/dist/lib/tasks/types.d.ts.map +1 -0
  215. package/dist/lib/tasks/types.js +2 -0
  216. package/dist/lib/tasks/types.js.map +1 -0
  217. package/dist/lib/templates/resource-templates.d.ts +6 -0
  218. package/dist/lib/templates/resource-templates.d.ts.map +1 -0
  219. package/dist/lib/templates/resource-templates.js +146 -0
  220. package/dist/lib/templates/resource-templates.js.map +1 -0
  221. package/dist/lib/tools/agent-tool-wrapper.d.ts +5 -5
  222. package/dist/lib/tools/agent-tool-wrapper.js +3 -3
  223. package/dist/lib/tools/agent-tool-wrapper.js.map +1 -1
  224. package/dist/lib/tools/built-in/ask-user.tool.d.ts +1 -1
  225. package/dist/lib/tools/built-in/ask-user.tool.d.ts.map +1 -1
  226. package/dist/lib/tools/built-in/ask-user.tool.js +2 -2
  227. package/dist/lib/tools/built-in/ask-user.tool.js.map +1 -1
  228. package/dist/lib/tools/built-in/index.d.ts +9 -2
  229. package/dist/lib/tools/built-in/index.d.ts.map +1 -1
  230. package/dist/lib/tools/built-in/index.js +9 -2
  231. package/dist/lib/tools/built-in/index.js.map +1 -1
  232. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts +9 -0
  233. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts.map +1 -0
  234. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js +102 -0
  235. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js.map +1 -0
  236. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.d.ts +9 -0
  237. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.d.ts.map +1 -0
  238. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.js +96 -0
  239. package/dist/lib/tools/built-in/knowledge-graph-schema.tool.js.map +1 -0
  240. package/dist/lib/tools/built-in/knowledge-search.tool.d.ts +2 -2
  241. package/dist/lib/tools/built-in/knowledge-search.tool.d.ts.map +1 -1
  242. package/dist/lib/tools/built-in/knowledge-search.tool.js +1 -1
  243. package/dist/lib/tools/built-in/knowledge-search.tool.js.map +1 -1
  244. package/dist/lib/tools/built-in/knowledge-sql.tool.d.ts +7 -0
  245. package/dist/lib/tools/built-in/knowledge-sql.tool.d.ts.map +1 -0
  246. package/dist/lib/tools/built-in/knowledge-sql.tool.js +127 -0
  247. package/dist/lib/tools/built-in/knowledge-sql.tool.js.map +1 -0
  248. package/dist/lib/tools/built-in/knowledge-tools-factory.d.ts +17 -0
  249. package/dist/lib/tools/built-in/knowledge-tools-factory.d.ts.map +1 -0
  250. package/dist/lib/tools/built-in/knowledge-tools-factory.js +54 -0
  251. package/dist/lib/tools/built-in/knowledge-tools-factory.js.map +1 -0
  252. package/dist/lib/tools/built-in/knowledge-traverse.tool.d.ts +9 -0
  253. package/dist/lib/tools/built-in/knowledge-traverse.tool.d.ts.map +1 -0
  254. package/dist/lib/tools/built-in/knowledge-traverse.tool.js +91 -0
  255. package/dist/lib/tools/built-in/knowledge-traverse.tool.js.map +1 -0
  256. package/dist/lib/tools/built-in/memory-save.tool.d.ts +4 -0
  257. package/dist/lib/tools/built-in/memory-save.tool.d.ts.map +1 -0
  258. package/dist/lib/tools/built-in/memory-save.tool.js +21 -0
  259. package/dist/lib/tools/built-in/memory-save.tool.js.map +1 -0
  260. package/dist/lib/tools/built-in/query-validators.d.ts +18 -0
  261. package/dist/lib/tools/built-in/query-validators.d.ts.map +1 -0
  262. package/dist/lib/tools/built-in/query-validators.js +87 -0
  263. package/dist/lib/tools/built-in/query-validators.js.map +1 -0
  264. package/dist/lib/tools/index.d.ts +4 -4
  265. package/dist/lib/tools/index.js +4 -4
  266. package/dist/lib/tools/tool-discovery.d.ts +11 -33
  267. package/dist/lib/tools/tool-discovery.d.ts.map +1 -1
  268. package/dist/lib/tools/tool-discovery.js +16 -43
  269. package/dist/lib/tools/tool-discovery.js.map +1 -1
  270. package/dist/lib/tools/tool-registry.d.ts +10 -18
  271. package/dist/lib/tools/tool-registry.d.ts.map +1 -1
  272. package/dist/lib/tools/tool-registry.js +37 -23
  273. package/dist/lib/tools/tool-registry.js.map +1 -1
  274. package/dist/lib/tools/workspace/workspace-tools.d.ts +60 -0
  275. package/dist/lib/tools/workspace/workspace-tools.d.ts.map +1 -0
  276. package/dist/lib/tools/workspace/workspace-tools.js +140 -0
  277. package/dist/lib/tools/workspace/workspace-tools.js.map +1 -0
  278. package/dist/lib/triggers/cron-trigger.d.ts +12 -0
  279. package/dist/lib/triggers/cron-trigger.d.ts.map +1 -0
  280. package/dist/lib/triggers/cron-trigger.js +45 -0
  281. package/dist/lib/triggers/cron-trigger.js.map +1 -0
  282. package/dist/lib/triggers/index.d.ts +6 -0
  283. package/dist/lib/triggers/index.d.ts.map +1 -0
  284. package/dist/lib/triggers/index.js +5 -0
  285. package/dist/lib/triggers/index.js.map +1 -0
  286. package/dist/lib/triggers/trigger-manager.d.ts +11 -0
  287. package/dist/lib/triggers/trigger-manager.d.ts.map +1 -0
  288. package/dist/lib/triggers/trigger-manager.js +51 -0
  289. package/dist/lib/triggers/trigger-manager.js.map +1 -0
  290. package/dist/lib/triggers/types.d.ts +57 -0
  291. package/dist/lib/triggers/types.d.ts.map +1 -0
  292. package/dist/lib/triggers/types.js +16 -0
  293. package/dist/lib/triggers/types.js.map +1 -0
  294. package/dist/lib/triggers/webhook-trigger.d.ts +12 -0
  295. package/dist/lib/triggers/webhook-trigger.d.ts.map +1 -0
  296. package/dist/lib/triggers/webhook-trigger.js +34 -0
  297. package/dist/lib/triggers/webhook-trigger.js.map +1 -0
  298. package/dist/lib/types/llm-types.d.ts +54 -0
  299. package/dist/lib/types/llm-types.d.ts.map +1 -0
  300. package/dist/lib/types/llm-types.js +22 -0
  301. package/dist/lib/types/llm-types.js.map +1 -0
  302. package/dist/lib/types/text-splitters.d.ts +27 -0
  303. package/dist/lib/types/text-splitters.d.ts.map +1 -0
  304. package/dist/lib/types/text-splitters.js +114 -0
  305. package/dist/lib/types/text-splitters.js.map +1 -0
  306. package/dist/lib/types/tool-factory.d.ts +9 -0
  307. package/dist/lib/types/tool-factory.d.ts.map +1 -0
  308. package/dist/lib/types/tool-factory.js +12 -0
  309. package/dist/lib/types/tool-factory.js.map +1 -0
  310. package/dist/lib/utils/file-utils.d.ts +11 -0
  311. package/dist/lib/utils/file-utils.d.ts.map +1 -0
  312. package/dist/lib/utils/file-utils.js +86 -0
  313. package/dist/lib/utils/file-utils.js.map +1 -0
  314. package/dist/lib/workflows/index.d.ts +6 -6
  315. package/dist/lib/workflows/index.d.ts.map +1 -1
  316. package/dist/lib/workflows/index.js +5 -5
  317. package/dist/lib/workflows/index.js.map +1 -1
  318. package/dist/lib/workflows/interrupt-manager.d.ts +1 -1
  319. package/dist/lib/workflows/interrupt-manager.js +1 -1
  320. package/dist/lib/workflows/react-workflow-executor.d.ts +26 -0
  321. package/dist/lib/workflows/react-workflow-executor.d.ts.map +1 -0
  322. package/dist/lib/workflows/react-workflow-executor.js +333 -0
  323. package/dist/lib/workflows/react-workflow-executor.js.map +1 -0
  324. package/dist/lib/workflows/types.d.ts +96 -97
  325. package/dist/lib/workflows/types.d.ts.map +1 -1
  326. package/dist/lib/workflows/types.js +5 -5
  327. package/dist/lib/workflows/types.js.map +1 -1
  328. package/dist/lib/workflows/workflow-executor.d.ts +3 -3
  329. package/dist/lib/workflows/workflow-executor.js +2 -2
  330. package/dist/lib/workflows/workflow-executor.js.map +1 -1
  331. package/dist/lib/workflows/workflow-loader.d.ts +1 -1
  332. package/dist/lib/workflows/workflow-loader.d.ts.map +1 -1
  333. package/dist/lib/workflows/workflow-loader.js +10 -3
  334. package/dist/lib/workflows/workflow-loader.js.map +1 -1
  335. package/dist/public/index.html +32 -0
  336. package/dist/public/src/components/AgentsView.js +298 -44
  337. package/dist/public/src/components/AppRoot.js +124 -4
  338. package/dist/public/src/components/GraphView.js +336 -0
  339. package/dist/public/src/components/IdeView.js +462 -7
  340. package/dist/public/src/components/KnowledgeView.js +443 -66
  341. package/dist/public/src/components/MonitorView.js +388 -0
  342. package/dist/public/src/components/NavBar.js +3 -0
  343. package/dist/public/src/components/SkillsView.js +137 -0
  344. package/dist/public/src/components/WorkflowsView.js +287 -114
  345. package/dist/public/src/services/ApiService.js +165 -25
  346. package/dist/public/src/store.js +3 -2
  347. package/dist/public/src/utils/markdown.js +1 -0
  348. package/dist/src/cli/commands/init.js +2 -2
  349. package/dist/src/cli/commands/init.js.map +1 -1
  350. package/dist/src/cli/commands/start.d.ts +0 -1
  351. package/dist/src/cli/commands/start.d.ts.map +1 -1
  352. package/dist/src/cli/commands/start.js +23 -14
  353. package/dist/src/cli/commands/start.js.map +1 -1
  354. package/dist/src/cli/index.js +3 -3
  355. package/dist/src/index.d.ts +1 -1
  356. package/dist/src/index.d.ts.map +1 -1
  357. package/dist/src/index.js +23 -9
  358. package/dist/src/index.js.map +1 -1
  359. package/dist/src/middleware/auth.d.ts +3 -0
  360. package/dist/src/middleware/auth.d.ts.map +1 -0
  361. package/dist/src/middleware/auth.js +107 -0
  362. package/dist/src/middleware/auth.js.map +1 -0
  363. package/dist/src/routes/agents.route.d.ts.map +1 -1
  364. package/dist/src/routes/agents.route.js +31 -2
  365. package/dist/src/routes/agents.route.js.map +1 -1
  366. package/dist/src/routes/files.route.d.ts.map +1 -1
  367. package/dist/src/routes/files.route.js +128 -87
  368. package/dist/src/routes/files.route.js.map +1 -1
  369. package/dist/src/routes/functions.route.js +1 -1
  370. package/dist/src/routes/graph.route.d.ts +3 -0
  371. package/dist/src/routes/graph.route.d.ts.map +1 -0
  372. package/dist/src/routes/graph.route.js +173 -0
  373. package/dist/src/routes/graph.route.js.map +1 -0
  374. package/dist/src/routes/knowledge.route.d.ts.map +1 -1
  375. package/dist/src/routes/knowledge.route.js +172 -69
  376. package/dist/src/routes/knowledge.route.js.map +1 -1
  377. package/dist/src/routes/llm.route.d.ts.map +1 -1
  378. package/dist/src/routes/llm.route.js +48 -7
  379. package/dist/src/routes/llm.route.js.map +1 -1
  380. package/dist/src/routes/mcp.route.js +1 -1
  381. package/dist/src/routes/skills.route.d.ts +3 -0
  382. package/dist/src/routes/skills.route.d.ts.map +1 -0
  383. package/dist/src/routes/skills.route.js +23 -0
  384. package/dist/src/routes/skills.route.js.map +1 -0
  385. package/dist/src/routes/tasks.route.d.ts +3 -0
  386. package/dist/src/routes/tasks.route.d.ts.map +1 -0
  387. package/dist/src/routes/tasks.route.js +135 -0
  388. package/dist/src/routes/tasks.route.js.map +1 -0
  389. package/dist/src/routes/workflows.route.d.ts.map +1 -1
  390. package/dist/src/routes/workflows.route.js +9 -1
  391. package/dist/src/routes/workflows.route.js.map +1 -1
  392. package/dist/src/server.d.ts +1 -1
  393. package/dist/src/server.d.ts.map +1 -1
  394. package/dist/src/server.js +21 -8
  395. package/dist/src/server.js.map +1 -1
  396. package/dist/templates/.env.example +4 -19
  397. package/dist/templates/README.md +18 -10
  398. package/dist/templates/agents/architect.agent.yaml +49 -0
  399. package/dist/templates/agents/chatbot.agent.yaml +58 -0
  400. package/dist/templates/agents/knowledge-broker.agent.yaml +39 -0
  401. package/dist/templates/agents/sandbox.agent.yaml +56 -0
  402. package/dist/templates/knowledge/example.knowledge.yaml +0 -3
  403. package/dist/templates/knowledge/org-chart/personnel.csv +21 -0
  404. package/dist/templates/knowledge/org-chart.knowledge.yaml +49 -0
  405. package/dist/templates/knowledge/pet-store/pet-store.db +0 -0
  406. package/dist/templates/knowledge/pet-store.knowledge.yaml +78 -0
  407. package/dist/templates/knowledge/web-docs.knowledge.yaml +20 -0
  408. package/dist/templates/llm.json +2 -2
  409. package/dist/templates/mcp.json +3 -0
  410. package/dist/templates/skills/orcha-builder/SKILL.md +339 -0
  411. package/dist/templates/skills/sandbox/SKILL.md +63 -0
  412. package/dist/templates/workflows/example.workflow.yaml +25 -30
  413. package/dist/templates/workflows/react-example.workflow.yaml +53 -0
  414. package/package.json +17 -20
  415. package/dist/lib/knowledge/graph-rag/community-detector.d.ts +0 -16
  416. package/dist/lib/knowledge/graph-rag/community-detector.d.ts.map +0 -1
  417. package/dist/lib/knowledge/graph-rag/community-detector.js +0 -81
  418. package/dist/lib/knowledge/graph-rag/community-detector.js.map +0 -1
  419. package/dist/lib/knowledge/graph-rag/community-summarizer.d.ts +0 -17
  420. package/dist/lib/knowledge/graph-rag/community-summarizer.d.ts.map +0 -1
  421. package/dist/lib/knowledge/graph-rag/community-summarizer.js +0 -87
  422. package/dist/lib/knowledge/graph-rag/community-summarizer.js.map +0 -1
  423. package/dist/lib/knowledge/graph-rag/entity-extractor.d.ts +0 -36
  424. package/dist/lib/knowledge/graph-rag/entity-extractor.d.ts.map +0 -1
  425. package/dist/lib/knowledge/graph-rag/entity-extractor.js +0 -192
  426. package/dist/lib/knowledge/graph-rag/entity-extractor.js.map +0 -1
  427. package/dist/lib/knowledge/graph-rag/extraction-cache.d.ts +0 -30
  428. package/dist/lib/knowledge/graph-rag/extraction-cache.d.ts.map +0 -1
  429. package/dist/lib/knowledge/graph-rag/extraction-cache.js +0 -88
  430. package/dist/lib/knowledge/graph-rag/extraction-cache.js.map +0 -1
  431. package/dist/lib/knowledge/graph-rag/global-search.d.ts +0 -19
  432. package/dist/lib/knowledge/graph-rag/global-search.d.ts.map +0 -1
  433. package/dist/lib/knowledge/graph-rag/global-search.js +0 -96
  434. package/dist/lib/knowledge/graph-rag/global-search.js.map +0 -1
  435. package/dist/lib/knowledge/graph-rag/graph-rag-factory.d.ts +0 -24
  436. package/dist/lib/knowledge/graph-rag/graph-rag-factory.d.ts.map +0 -1
  437. package/dist/lib/knowledge/graph-rag/graph-rag-factory.js +0 -239
  438. package/dist/lib/knowledge/graph-rag/graph-rag-factory.js.map +0 -1
  439. package/dist/lib/knowledge/graph-rag/index.d.ts +0 -14
  440. package/dist/lib/knowledge/graph-rag/index.d.ts.map +0 -1
  441. package/dist/lib/knowledge/graph-rag/index.js +0 -12
  442. package/dist/lib/knowledge/graph-rag/index.js.map +0 -1
  443. package/dist/lib/knowledge/graph-rag/local-search.d.ts +0 -20
  444. package/dist/lib/knowledge/graph-rag/local-search.d.ts.map +0 -1
  445. package/dist/lib/knowledge/graph-rag/local-search.js +0 -110
  446. package/dist/lib/knowledge/graph-rag/local-search.js.map +0 -1
  447. package/dist/lib/knowledge/graph-rag/memory-graph-store.d.ts +0 -31
  448. package/dist/lib/knowledge/graph-rag/memory-graph-store.d.ts.map +0 -1
  449. package/dist/lib/knowledge/graph-rag/memory-graph-store.js +0 -165
  450. package/dist/lib/knowledge/graph-rag/memory-graph-store.js.map +0 -1
  451. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.d.ts +0 -38
  452. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.d.ts.map +0 -1
  453. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.js +0 -190
  454. package/dist/lib/knowledge/graph-rag/neo4j-graph-store.js.map +0 -1
  455. package/dist/lib/knowledge/graph-rag/search-mode-detector.d.ts +0 -11
  456. package/dist/lib/knowledge/graph-rag/search-mode-detector.d.ts.map +0 -1
  457. package/dist/lib/knowledge/graph-rag/search-mode-detector.js +0 -50
  458. package/dist/lib/knowledge/graph-rag/search-mode-detector.js.map +0 -1
  459. package/dist/lib/knowledge/graph-rag/types.d.ts +0 -368
  460. package/dist/lib/knowledge/graph-rag/types.d.ts.map +0 -1
  461. package/dist/lib/knowledge/graph-rag/types.js +0 -48
  462. package/dist/lib/knowledge/graph-rag/types.js.map +0 -1
  463. package/dist/lib/knowledge/knowledge-store-factory.d.ts +0 -16
  464. package/dist/lib/knowledge/knowledge-store-factory.d.ts.map +0 -1
  465. package/dist/lib/knowledge/knowledge-store-factory.js +0 -376
  466. package/dist/lib/knowledge/knowledge-store-factory.js.map +0 -1
  467. package/dist/lib/knowledge/knowledge-store-manager.d.ts +0 -18
  468. package/dist/lib/knowledge/knowledge-store-manager.d.ts.map +0 -1
  469. package/dist/lib/knowledge/knowledge-store-manager.js +0 -98
  470. package/dist/lib/knowledge/knowledge-store-manager.js.map +0 -1
  471. package/dist/lib/knowledge/loaders/s3-loader.d.ts +0 -17
  472. package/dist/lib/knowledge/loaders/s3-loader.d.ts.map +0 -1
  473. package/dist/lib/knowledge/loaders/s3-loader.js +0 -185
  474. package/dist/lib/knowledge/loaders/s3-loader.js.map +0 -1
  475. package/dist/lib/workflows/langgraph-executor.d.ts +0 -51
  476. package/dist/lib/workflows/langgraph-executor.d.ts.map +0 -1
  477. package/dist/lib/workflows/langgraph-executor.js +0 -297
  478. package/dist/lib/workflows/langgraph-executor.js.map +0 -1
  479. package/dist/templates/agents/call-center-analyst-simple.agent.yaml +0 -36
  480. package/dist/templates/agents/math.agent.yaml +0 -28
  481. package/dist/templates/agents/sentiment-structured.agent.yaml +0 -42
  482. package/dist/templates/llm.md +0 -1195
  483. package/dist/templates/workflows/langgraph-example.workflow.yaml +0 -84
@@ -1,45 +1,51 @@
1
1
  import { z } from 'zod';
2
+ import type { LLMProvider } from './provider-detector.ts';
3
+ /**
4
+ * Resolves the API key for a given provider.
5
+ * Priority: explicit apiKey in config > provider-specific env var.
6
+ */
7
+ export declare function resolveApiKey(provider: LLMProvider, apiKey?: string): string | undefined;
2
8
  export declare const ModelConfigSchema: z.ZodObject<{
3
9
  provider: z.ZodOptional<z.ZodEnum<["openai", "gemini", "anthropic", "local"]>>;
4
10
  baseUrl: z.ZodOptional<z.ZodString>;
5
- apiKey: z.ZodString;
11
+ apiKey: z.ZodOptional<z.ZodString>;
6
12
  model: z.ZodString;
7
13
  temperature: z.ZodOptional<z.ZodNumber>;
8
14
  maxTokens: z.ZodOptional<z.ZodNumber>;
9
15
  }, "strip", z.ZodTypeAny, {
10
- apiKey: string;
11
16
  model: string;
12
17
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
13
18
  baseUrl?: string | undefined;
19
+ apiKey?: string | undefined;
14
20
  temperature?: number | undefined;
15
21
  maxTokens?: number | undefined;
16
22
  }, {
17
- apiKey: string;
18
23
  model: string;
19
24
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
20
25
  baseUrl?: string | undefined;
26
+ apiKey?: string | undefined;
21
27
  temperature?: number | undefined;
22
28
  maxTokens?: number | undefined;
23
29
  }>;
24
30
  export declare const EmbeddingModelConfigSchema: z.ZodObject<{
25
31
  provider: z.ZodOptional<z.ZodEnum<["openai", "gemini", "anthropic", "local"]>>;
26
32
  baseUrl: z.ZodOptional<z.ZodString>;
27
- apiKey: z.ZodString;
33
+ apiKey: z.ZodOptional<z.ZodString>;
28
34
  model: z.ZodString;
29
35
  dimensions: z.ZodOptional<z.ZodNumber>;
30
36
  eosToken: z.ZodOptional<z.ZodString>;
31
37
  }, "strip", z.ZodTypeAny, {
32
- apiKey: string;
33
38
  model: string;
34
39
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
35
40
  baseUrl?: string | undefined;
41
+ apiKey?: string | undefined;
36
42
  dimensions?: number | undefined;
37
43
  eosToken?: string | undefined;
38
44
  }, {
39
- apiKey: string;
40
45
  model: string;
41
46
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
42
47
  baseUrl?: string | undefined;
48
+ apiKey?: string | undefined;
43
49
  dimensions?: number | undefined;
44
50
  eosToken?: string | undefined;
45
51
  }>;
@@ -48,79 +54,79 @@ export declare const LLMJsonConfigSchema: z.ZodObject<{
48
54
  models: z.ZodRecord<z.ZodString, z.ZodObject<{
49
55
  provider: z.ZodOptional<z.ZodEnum<["openai", "gemini", "anthropic", "local"]>>;
50
56
  baseUrl: z.ZodOptional<z.ZodString>;
51
- apiKey: z.ZodString;
57
+ apiKey: z.ZodOptional<z.ZodString>;
52
58
  model: z.ZodString;
53
59
  temperature: z.ZodOptional<z.ZodNumber>;
54
60
  maxTokens: z.ZodOptional<z.ZodNumber>;
55
61
  }, "strip", z.ZodTypeAny, {
56
- apiKey: string;
57
62
  model: string;
58
63
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
59
64
  baseUrl?: string | undefined;
65
+ apiKey?: string | undefined;
60
66
  temperature?: number | undefined;
61
67
  maxTokens?: number | undefined;
62
68
  }, {
63
- apiKey: string;
64
69
  model: string;
65
70
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
66
71
  baseUrl?: string | undefined;
72
+ apiKey?: string | undefined;
67
73
  temperature?: number | undefined;
68
74
  maxTokens?: number | undefined;
69
75
  }>>;
70
76
  embeddings: z.ZodRecord<z.ZodString, z.ZodObject<{
71
77
  provider: z.ZodOptional<z.ZodEnum<["openai", "gemini", "anthropic", "local"]>>;
72
78
  baseUrl: z.ZodOptional<z.ZodString>;
73
- apiKey: z.ZodString;
79
+ apiKey: z.ZodOptional<z.ZodString>;
74
80
  model: z.ZodString;
75
81
  dimensions: z.ZodOptional<z.ZodNumber>;
76
82
  eosToken: z.ZodOptional<z.ZodString>;
77
83
  }, "strip", z.ZodTypeAny, {
78
- apiKey: string;
79
84
  model: string;
80
85
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
81
86
  baseUrl?: string | undefined;
87
+ apiKey?: string | undefined;
82
88
  dimensions?: number | undefined;
83
89
  eosToken?: string | undefined;
84
90
  }, {
85
- apiKey: string;
86
91
  model: string;
87
92
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
88
93
  baseUrl?: string | undefined;
94
+ apiKey?: string | undefined;
89
95
  dimensions?: number | undefined;
90
96
  eosToken?: string | undefined;
91
97
  }>>;
92
98
  }, "strip", z.ZodTypeAny, {
93
99
  version: string;
94
100
  models: Record<string, {
95
- apiKey: string;
96
101
  model: string;
97
102
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
98
103
  baseUrl?: string | undefined;
104
+ apiKey?: string | undefined;
99
105
  temperature?: number | undefined;
100
106
  maxTokens?: number | undefined;
101
107
  }>;
102
108
  embeddings: Record<string, {
103
- apiKey: string;
104
109
  model: string;
105
110
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
106
111
  baseUrl?: string | undefined;
112
+ apiKey?: string | undefined;
107
113
  dimensions?: number | undefined;
108
114
  eosToken?: string | undefined;
109
115
  }>;
110
116
  }, {
111
117
  models: Record<string, {
112
- apiKey: string;
113
118
  model: string;
114
119
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
115
120
  baseUrl?: string | undefined;
121
+ apiKey?: string | undefined;
116
122
  temperature?: number | undefined;
117
123
  maxTokens?: number | undefined;
118
124
  }>;
119
125
  embeddings: Record<string, {
120
- apiKey: string;
121
126
  model: string;
122
127
  provider?: "openai" | "gemini" | "anthropic" | "local" | undefined;
123
128
  baseUrl?: string | undefined;
129
+ apiKey?: string | undefined;
124
130
  dimensions?: number | undefined;
125
131
  eosToken?: string | undefined;
126
132
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-config.d.ts","sourceRoot":"","sources":["../../../lib/llm/llm-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;EAOrC,CAAC;AAGH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI9B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAKhE,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAU/E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAYxD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAYrE;AAED,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAK3C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAK/C;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C"}
1
+ {"version":3,"file":"llm-config.d.ts","sourceRoot":"","sources":["../../../lib/llm/llm-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAS1D;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIxF;AAGD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;EAOrC,CAAC;AAGH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI9B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAKhE,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAU/E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAYxD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAYrE;AAED,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAK3C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAK/C;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C"}
@@ -1,11 +1,27 @@
1
1
  import * as fs from 'fs/promises';
2
2
  import { z } from 'zod';
3
- import { logger } from '../logger.js';
3
+ import { logger } from "../logger.js";
4
+ const PROVIDER_ENV_VARS = {
5
+ openai: 'OPENAI_API_KEY',
6
+ gemini: 'GOOGLE_API_KEY',
7
+ anthropic: 'ANTHROPIC_API_KEY',
8
+ local: 'OPENAI_API_KEY',
9
+ };
10
+ /**
11
+ * Resolves the API key for a given provider.
12
+ * Priority: explicit apiKey in config > provider-specific env var.
13
+ */
14
+ export function resolveApiKey(provider, apiKey) {
15
+ if (apiKey)
16
+ return apiKey;
17
+ const envVar = PROVIDER_ENV_VARS[provider];
18
+ return process.env[envVar];
19
+ }
4
20
  // Schema for individual model configuration
5
21
  export const ModelConfigSchema = z.object({
6
22
  provider: z.enum(['openai', 'gemini', 'anthropic', 'local']).optional(),
7
23
  baseUrl: z.string().optional(),
8
- apiKey: z.string(),
24
+ apiKey: z.string().optional(),
9
25
  model: z.string(),
10
26
  temperature: z.number().min(0).max(2).optional(),
11
27
  maxTokens: z.number().optional(),
@@ -14,7 +30,7 @@ export const ModelConfigSchema = z.object({
14
30
  export const EmbeddingModelConfigSchema = z.object({
15
31
  provider: z.enum(['openai', 'gemini', 'anthropic', 'local']).optional(),
16
32
  baseUrl: z.string().optional(),
17
- apiKey: z.string(),
33
+ apiKey: z.string().optional(),
18
34
  model: z.string(),
19
35
  dimensions: z.number().optional(), // Embedding dimensions (optional, e.g., for OpenAI)
20
36
  eosToken: z.string().optional(), // EOS token to append to text (e.g., for Nomic models)
@@ -1 +1 @@
1
- {"version":3,"file":"llm-config.js","sourceRoot":"","sources":["../../../lib/llm/llm-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-config.js","sourceRoot":"","sources":["../../../lib/llm/llm-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,MAAM,iBAAiB,GAAgC;IACrD,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;IAC9B,KAAK,EAAE,gBAAgB;CACxB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,QAAqB,EAAE,MAAe;IAClE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,4CAA4C;AAC5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,gDAAgD;AAChD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,oDAAoD;IACvF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,uDAAuD;CACzF,CAAC,CAAC;AAEH,sCAAsC;AACtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC;IAC/C,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,0BAA0B,CAAC;CAC7D,CAAC,CAAC;AAMH,2BAA2B;AAC3B,IAAI,YAAY,GAAyB,IAAI,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,WAAmB;IACrD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpD,YAAY,GAAG,SAAS,CAAC;IAEzB,MAAM,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,cAAc,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC;IAE7I,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,2BAA2B,SAAS,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,2BAA2B,SAAS,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,YAAY,KAAK,IAAI,CAAC;AAC/B,CAAC"}
@@ -1,28 +1,15 @@
1
- import type { BaseChatModel } from '@langchain/core/language_models/chat_models';
2
- import { type AgentLLMRef } from './types.js';
1
+ import type { ChatModel } from '../types/llm-types.ts';
2
+ import { type AgentLLMRef } from './types.ts';
3
3
  export declare class LLMFactory {
4
4
  private static instances;
5
5
  /**
6
6
  * Create an LLM instance from a config name (defined in llm.json)
7
7
  * @param ref - Config name as string, or object with name and optional temperature override
8
8
  */
9
- static create(ref?: AgentLLMRef): BaseChatModel;
10
- /**
11
- * Create OpenAI LLM instance
12
- */
9
+ static create(ref?: AgentLLMRef): ChatModel;
13
10
  private static createOpenAI;
14
- /**
15
- * Create Google Gemini LLM instance
16
- */
17
11
  private static createGemini;
18
- /**
19
- * Create Anthropic Claude LLM instance
20
- */
21
12
  private static createAnthropic;
22
- /**
23
- * Create Local LLM instance (OpenAI-compatible)
24
- * Used for LM Studio, Ollama, and other OpenAI-compatible local servers
25
- */
26
13
  private static createLocal;
27
14
  private static getCacheKey;
28
15
  static clearCache(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-factory.d.ts","sourceRoot":"","sources":["../../../lib/llm/llm-factory.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAEjF,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAIlE,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAyC;IAEjE;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,GAAG,GAAE,WAAuB,GAAG,aAAa;IAsC1D;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAe3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAc3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAc9B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,MAAM,CAAC,UAAU,IAAI,IAAI;CAG1B"}
1
+ {"version":3,"file":"llm-factory.d.ts","sourceRoot":"","sources":["../../../lib/llm/llm-factory.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAIlE,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAqC;IAE7D;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,GAAG,GAAE,WAAuB,GAAG,SAAS;IAsCtD,OAAO,CAAC,MAAM,CAAC,YAAY;IAY3B,OAAO,CAAC,MAAM,CAAC,YAAY;IAU3B,OAAO,CAAC,MAAM,CAAC,eAAe;IAU9B,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,MAAM,CAAC,UAAU,IAAI,IAAI;CAG1B"}
@@ -1,10 +1,10 @@
1
- import { ChatOpenAI } from '@langchain/openai';
2
- import { ChatGoogleGenerativeAI } from '@langchain/google-genai';
3
- import { ChatAnthropic } from '@langchain/anthropic';
4
- import { getModelConfig } from './llm-config.js';
5
- import { resolveAgentLLMRef } from './types.js';
6
- import { detectProvider } from './provider-detector.js';
7
- import { logger } from '../logger.js';
1
+ import { OpenAIChatModel } from "./providers/openai-chat-model.js";
2
+ import { AnthropicChatModel } from "./providers/anthropic-chat-model.js";
3
+ import { GeminiChatModel } from "./providers/gemini-chat-model.js";
4
+ import { getModelConfig, resolveApiKey } from "./llm-config.js";
5
+ import { resolveAgentLLMRef } from "./types.js";
6
+ import { detectProvider } from "./provider-detector.js";
7
+ import { logger } from "../logger.js";
8
8
  export class LLMFactory {
9
9
  static instances = new Map();
10
10
  /**
@@ -35,7 +35,7 @@ export class LLMFactory {
35
35
  llm = this.createAnthropic(config, temperature);
36
36
  break;
37
37
  case 'local':
38
- llm = this.createLocal(config, temperature);
38
+ llm = this.createLocal(config, temperature, 'local');
39
39
  break;
40
40
  default:
41
41
  throw new Error(`Unsupported provider: ${provider}`);
@@ -43,55 +43,37 @@ export class LLMFactory {
43
43
  this.instances.set(key, llm);
44
44
  return llm;
45
45
  }
46
- /**
47
- * Create OpenAI LLM instance
48
- */
49
- static createOpenAI(config, temperature) {
50
- const options = {
46
+ static createOpenAI(config, temperature, provider = 'openai') {
47
+ const apiKey = resolveApiKey(provider, config.apiKey);
48
+ return new OpenAIChatModel({
51
49
  modelName: config.model,
52
- openAIApiKey: config.apiKey,
50
+ apiKey,
53
51
  maxTokens: config.maxTokens,
54
- configuration: config.baseUrl ? { baseURL: config.baseUrl } : undefined,
55
- };
56
- if (temperature !== undefined) {
57
- options.temperature = temperature;
58
- }
59
- return new ChatOpenAI(options);
52
+ streamUsage: true,
53
+ baseURL: config.baseUrl,
54
+ ...(temperature !== undefined ? { temperature } : {}),
55
+ });
60
56
  }
61
- /**
62
- * Create Google Gemini LLM instance
63
- */
64
57
  static createGemini(config, temperature) {
65
- const options = {
66
- model: config.model,
67
- apiKey: config.apiKey,
68
- maxOutputTokens: config.maxTokens,
69
- };
70
- if (temperature !== undefined) {
71
- options.temperature = temperature;
72
- }
73
- return new ChatGoogleGenerativeAI(options);
58
+ const apiKey = resolveApiKey('gemini', config.apiKey);
59
+ return new GeminiChatModel({
60
+ modelName: config.model,
61
+ apiKey,
62
+ maxTokens: config.maxTokens,
63
+ ...(temperature !== undefined ? { temperature } : {}),
64
+ });
74
65
  }
75
- /**
76
- * Create Anthropic Claude LLM instance
77
- */
78
66
  static createAnthropic(config, temperature) {
79
- const options = {
67
+ const apiKey = resolveApiKey('anthropic', config.apiKey);
68
+ return new AnthropicChatModel({
80
69
  modelName: config.model,
81
- anthropicApiKey: config.apiKey,
70
+ apiKey,
82
71
  maxTokens: config.maxTokens,
83
- };
84
- if (temperature !== undefined) {
85
- options.temperature = temperature;
86
- }
87
- return new ChatAnthropic(options);
72
+ ...(temperature !== undefined ? { temperature } : {}),
73
+ });
88
74
  }
89
- /**
90
- * Create Local LLM instance (OpenAI-compatible)
91
- * Used for LM Studio, Ollama, and other OpenAI-compatible local servers
92
- */
93
- static createLocal(config, temperature) {
94
- return this.createOpenAI(config, temperature);
75
+ static createLocal(config, temperature, provider = 'local') {
76
+ return this.createOpenAI(config, temperature, provider);
95
77
  }
96
78
  static getCacheKey(name, temperature) {
97
79
  return `${name}-${temperature}`;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-factory.js","sourceRoot":"","sources":["../../../lib/llm/llm-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-factory.js","sourceRoot":"","sources":["../../../lib/llm/llm-factory.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ModelConfig } from './llm-config.js';
1
+ import type { ModelConfig } from './llm-config.ts';
2
2
  export type LLMProvider = 'openai' | 'gemini' | 'anthropic' | 'local';
3
3
  /**
4
4
  * Detects which LLM provider to use based on configuration
@@ -0,0 +1,27 @@
1
+ import type { ChatModel, ChatModelResponse, BaseMessage, StructuredTool } from '../../types/llm-types.ts';
2
+ interface AnthropicChatModelOptions {
3
+ apiKey?: string;
4
+ modelName: string;
5
+ temperature?: number;
6
+ maxTokens?: number;
7
+ }
8
+ export declare class AnthropicChatModel implements ChatModel {
9
+ private client;
10
+ private modelName;
11
+ private temperature?;
12
+ private maxTokens;
13
+ private boundTools?;
14
+ private structuredSchema?;
15
+ constructor(options: AnthropicChatModelOptions);
16
+ private extractSystemAndMessages;
17
+ private toAnthropicTools;
18
+ private parseResponse;
19
+ invoke(messages: BaseMessage[]): Promise<ChatModelResponse>;
20
+ stream(messages: BaseMessage[], options?: {
21
+ signal?: AbortSignal;
22
+ }): AsyncIterable<ChatModelResponse>;
23
+ bindTools(tools: StructuredTool[]): ChatModel;
24
+ withStructuredOutput(schema: Record<string, unknown>): ChatModel;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=anthropic-chat-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic-chat-model.d.ts","sourceRoot":"","sources":["../../../../lib/llm/providers/anthropic-chat-model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,cAAc,EAEf,MAAM,0BAA0B,CAAC;AAElC,UAAU,yBAAyB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,kBAAmB,YAAW,SAAS;IAClD,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,gBAAgB,CAAC,CAA0B;gBAEvC,OAAO,EAAE,yBAAyB;IAO9C,OAAO,CAAC,wBAAwB;IA+ChC,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,aAAa;IA2Bf,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgB1D,MAAM,CACX,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GACjC,aAAa,CAAC,iBAAiB,CAAC;IAyDnC,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,SAAS;IAa7C,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;CAYjE"}
@@ -0,0 +1,186 @@
1
+ import Anthropic from '@anthropic-ai/sdk';
2
+ import { zodToJsonSchema } from 'zod-to-json-schema';
3
+ export class AnthropicChatModel {
4
+ client;
5
+ modelName;
6
+ temperature;
7
+ maxTokens;
8
+ boundTools;
9
+ structuredSchema;
10
+ constructor(options) {
11
+ this.client = new Anthropic({ apiKey: options.apiKey ?? process.env.ANTHROPIC_API_KEY ?? 'not-set' });
12
+ this.modelName = options.modelName;
13
+ this.temperature = options.temperature;
14
+ this.maxTokens = options.maxTokens ?? 4096;
15
+ }
16
+ extractSystemAndMessages(messages) {
17
+ let system;
18
+ const anthropicMessages = [];
19
+ for (const msg of messages) {
20
+ if (msg.role === 'system') {
21
+ system = system ? `${system}\n\n${msg.content}` : msg.content;
22
+ continue;
23
+ }
24
+ if (msg.role === 'human') {
25
+ anthropicMessages.push({ role: 'user', content: msg.content });
26
+ }
27
+ else if (msg.role === 'ai') {
28
+ const content = [];
29
+ if (msg.content) {
30
+ content.push({ type: 'text', text: msg.content });
31
+ }
32
+ if (msg.tool_calls?.length) {
33
+ for (const tc of msg.tool_calls) {
34
+ content.push({
35
+ type: 'tool_use',
36
+ id: tc.id,
37
+ name: tc.name,
38
+ input: tc.args,
39
+ });
40
+ }
41
+ }
42
+ anthropicMessages.push({ role: 'assistant', content });
43
+ }
44
+ else if (msg.role === 'tool') {
45
+ anthropicMessages.push({
46
+ role: 'user',
47
+ content: [
48
+ {
49
+ type: 'tool_result',
50
+ tool_use_id: msg.tool_call_id,
51
+ content: msg.content,
52
+ },
53
+ ],
54
+ });
55
+ }
56
+ }
57
+ return { system, messages: anthropicMessages };
58
+ }
59
+ toAnthropicTools() {
60
+ if (!this.boundTools?.length)
61
+ return undefined;
62
+ return this.boundTools.map((t) => ({
63
+ name: t.name,
64
+ description: t.description,
65
+ input_schema: zodToJsonSchema(t.schema),
66
+ }));
67
+ }
68
+ parseResponse(response) {
69
+ let content = '';
70
+ const toolCalls = [];
71
+ for (const block of response.content) {
72
+ if (block.type === 'text') {
73
+ content += block.text;
74
+ }
75
+ else if (block.type === 'tool_use') {
76
+ toolCalls.push({
77
+ id: block.id,
78
+ name: block.name,
79
+ args: block.input,
80
+ });
81
+ }
82
+ }
83
+ return {
84
+ content,
85
+ tool_calls: toolCalls.length > 0 ? toolCalls : undefined,
86
+ usage_metadata: {
87
+ input_tokens: response.usage.input_tokens,
88
+ output_tokens: response.usage.output_tokens,
89
+ total_tokens: response.usage.input_tokens + response.usage.output_tokens,
90
+ },
91
+ };
92
+ }
93
+ async invoke(messages) {
94
+ const { system, messages: anthropicMessages } = this.extractSystemAndMessages(messages);
95
+ const params = {
96
+ model: this.modelName,
97
+ max_tokens: this.maxTokens,
98
+ messages: anthropicMessages,
99
+ ...(system ? { system } : {}),
100
+ ...(this.temperature !== undefined ? { temperature: this.temperature } : {}),
101
+ ...(this.toAnthropicTools() ? { tools: this.toAnthropicTools() } : {}),
102
+ };
103
+ const response = await this.client.messages.create(params);
104
+ return this.parseResponse(response);
105
+ }
106
+ async *stream(messages, options) {
107
+ const { system, messages: anthropicMessages } = this.extractSystemAndMessages(messages);
108
+ const stream = this.client.messages.stream({
109
+ model: this.modelName,
110
+ max_tokens: this.maxTokens,
111
+ messages: anthropicMessages,
112
+ ...(system ? { system } : {}),
113
+ ...(this.temperature !== undefined ? { temperature: this.temperature } : {}),
114
+ ...(this.toAnthropicTools() ? { tools: this.toAnthropicTools() } : {}),
115
+ }, { signal: options?.signal });
116
+ const toolCalls = new Map();
117
+ for await (const event of stream) {
118
+ if (event.type === 'content_block_delta') {
119
+ if (event.delta.type === 'text_delta') {
120
+ yield { content: event.delta.text };
121
+ }
122
+ else if (event.delta.type === 'input_json_delta') {
123
+ const existing = toolCalls.get(event.index);
124
+ if (existing) {
125
+ existing.args += event.delta.partial_json;
126
+ }
127
+ }
128
+ }
129
+ else if (event.type === 'content_block_start') {
130
+ if (event.content_block.type === 'tool_use') {
131
+ toolCalls.set(event.index, {
132
+ id: event.content_block.id,
133
+ name: event.content_block.name,
134
+ args: '',
135
+ });
136
+ }
137
+ }
138
+ else if (event.type === 'message_delta') {
139
+ // Final message with usage
140
+ const parsedToolCalls = toolCalls.size > 0
141
+ ? Array.from(toolCalls.values()).map((tc) => ({
142
+ id: tc.id,
143
+ name: tc.name,
144
+ args: JSON.parse(tc.args || '{}'),
145
+ }))
146
+ : undefined;
147
+ yield {
148
+ content: '',
149
+ tool_calls: parsedToolCalls,
150
+ usage_metadata: event.usage
151
+ ? {
152
+ input_tokens: 0,
153
+ output_tokens: event.usage.output_tokens,
154
+ total_tokens: event.usage.output_tokens,
155
+ }
156
+ : undefined,
157
+ };
158
+ }
159
+ }
160
+ }
161
+ bindTools(tools) {
162
+ const bound = new AnthropicChatModel({
163
+ apiKey: this.client.apiKey ?? undefined,
164
+ modelName: this.modelName,
165
+ temperature: this.temperature,
166
+ maxTokens: this.maxTokens,
167
+ });
168
+ bound.client = this.client;
169
+ bound.boundTools = tools;
170
+ bound.structuredSchema = this.structuredSchema;
171
+ return bound;
172
+ }
173
+ withStructuredOutput(schema) {
174
+ const wrapped = new AnthropicChatModel({
175
+ apiKey: this.client.apiKey ?? undefined,
176
+ modelName: this.modelName,
177
+ temperature: this.temperature,
178
+ maxTokens: this.maxTokens,
179
+ });
180
+ wrapped.client = this.client;
181
+ wrapped.structuredSchema = schema;
182
+ wrapped.boundTools = this.boundTools;
183
+ return wrapped;
184
+ }
185
+ }
186
+ //# sourceMappingURL=anthropic-chat-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropic-chat-model.js","sourceRoot":"","sources":["../../../../lib/llm/providers/anthropic-chat-model.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAgBrD,MAAM,OAAO,kBAAkB;IACrB,MAAM,CAAY;IAClB,SAAS,CAAS;IAClB,WAAW,CAAU;IACrB,SAAS,CAAS;IAClB,UAAU,CAAoB;IAC9B,gBAAgB,CAA2B;IAEnD,YAAY,OAAkC;QAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,SAAS,EAAE,CAAC,CAAC;QACtG,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC7C,CAAC;IAEO,wBAAwB,CAC9B,QAAuB;QAEvB,IAAI,MAA0B,CAAC;QAC/B,MAAM,iBAAiB,GAA6B,EAAE,CAAC;QAEvD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;gBAC9D,SAAS;YACX,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzB,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACjE,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAkC,EAAE,CAAC;gBAClD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBAChB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACpD,CAAC;gBACD,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;oBAC3B,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;wBAChC,OAAO,CAAC,IAAI,CAAC;4BACX,IAAI,EAAE,UAAU;4BAChB,EAAE,EAAE,EAAE,CAAC,EAAE;4BACT,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,KAAK,EAAE,EAAE,CAAC,IAAI;yBACf,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;YACzD,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC/B,iBAAiB,CAAC,IAAI,CAAC;oBACrB,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,aAAa;4BACnB,WAAW,EAAE,GAAG,CAAC,YAAa;4BAC9B,OAAO,EAAE,GAAG,CAAC,OAAO;yBACrB;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IACjD,CAAC;IAEO,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM;YAAE,OAAO,SAAS,CAAC;QAC/C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAA+B;SACtE,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,aAAa,CAAC,QAA2B;QAC/C,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,MAAM,SAAS,GAAe,EAAE,CAAC;QAEjC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC1B,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC;YACxB,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACrC,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,KAAK,CAAC,KAAgC;iBAC7C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO;YACP,UAAU,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACxD,cAAc,EAAE;gBACd,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY;gBACzC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa;gBAC3C,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa;aACzE;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAuB;QAClC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QAExF,MAAM,MAAM,GAA8C;YACxD,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,QAAQ,EAAE,iBAAiB;YAC3B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CACX,QAAuB,EACvB,OAAkC;QAElC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QAExF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACzC,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,QAAQ,EAAE,iBAAiB;YAC3B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAEhC,MAAM,SAAS,GAA4D,IAAI,GAAG,EAAE,CAAC;QAErF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBACzC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBACtC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtC,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;oBACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC5C,IAAI,QAAQ,EAAE,CAAC;wBACb,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;oBAC5C,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBAChD,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC5C,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE;wBACzB,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,EAAE;wBAC1B,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI;wBAC9B,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBAC1C,2BAA2B;gBAC3B,MAAM,eAAe,GAA2B,SAAS,CAAC,IAAI,GAAG,CAAC;oBAChE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBAC1C,EAAE,EAAE,EAAE,CAAC,EAAE;wBACT,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC;qBAClC,CAAC,CAAC;oBACL,CAAC,CAAC,SAAS,CAAC;gBAEd,MAAM;oBACJ,OAAO,EAAE,EAAE;oBACX,UAAU,EAAE,eAAe;oBAC3B,cAAc,EAAE,KAAK,CAAC,KAAK;wBACzB,CAAC,CAAC;4BACE,YAAY,EAAE,CAAC;4BACf,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa;4BACxC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa;yBACxC;wBACH,CAAC,CAAC,SAAS;iBACd,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,CAAC,KAAuB;QAC/B,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS;YACvC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;QACzB,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oBAAoB,CAAC,MAA+B;QAClD,MAAM,OAAO,GAAG,IAAI,kBAAkB,CAAC;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS;YACvC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,OAAO,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAClC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ import type { ChatModel, ChatModelResponse, BaseMessage, StructuredTool } from '../../types/llm-types.ts';
2
+ interface GeminiChatModelOptions {
3
+ apiKey?: string;
4
+ modelName: string;
5
+ temperature?: number;
6
+ maxTokens?: number;
7
+ }
8
+ export declare class GeminiChatModel implements ChatModel {
9
+ private genAI;
10
+ private modelName;
11
+ private temperature?;
12
+ private maxTokens?;
13
+ private boundTools?;
14
+ private structuredSchema?;
15
+ constructor(options: GeminiChatModelOptions);
16
+ private extractSystemAndContents;
17
+ private toGeminiTools;
18
+ private convertToGeminiSchema;
19
+ private convertPropertyToGemini;
20
+ private mapSchemaType;
21
+ invoke(messages: BaseMessage[]): Promise<ChatModelResponse>;
22
+ stream(messages: BaseMessage[], _options?: {
23
+ signal?: AbortSignal;
24
+ }): AsyncIterable<ChatModelResponse>;
25
+ bindTools(tools: StructuredTool[]): ChatModel;
26
+ withStructuredOutput(schema: Record<string, unknown>): ChatModel;
27
+ }
28
+ export {};
29
+ //# sourceMappingURL=gemini-chat-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-chat-model.d.ts","sourceRoot":"","sources":["../../../../lib/llm/providers/gemini-chat-model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,cAAc,EAEf,MAAM,0BAA0B,CAAC;AAElC,UAAU,sBAAsB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,eAAgB,YAAW,SAAS;IAC/C,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,gBAAgB,CAAC,CAA0B;gBAEvC,OAAO,EAAE,sBAAsB;IAO3C,OAAO,CAAC,wBAAwB;IA+ChC,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,uBAAuB;IAgC/B,OAAO,CAAC,aAAa;IAYf,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkD1D,MAAM,CACX,QAAQ,EAAE,WAAW,EAAE,EACvB,QAAQ,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAClC,aAAa,CAAC,iBAAiB,CAAC;IAiDnC,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,SAAS;IAa7C,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;CAYjE"}