beeai-framework 0.1.16 → 0.1.18

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 (663) hide show
  1. package/dist/adapters/a2a/agents/agent.cjs +296 -0
  2. package/dist/adapters/a2a/agents/agent.cjs.map +1 -0
  3. package/dist/adapters/a2a/agents/agent.d.cts +55 -0
  4. package/dist/adapters/a2a/agents/agent.d.ts +55 -0
  5. package/dist/adapters/a2a/agents/agent.js +294 -0
  6. package/dist/adapters/a2a/agents/agent.js.map +1 -0
  7. package/dist/adapters/a2a/agents/events.cjs +4 -0
  8. package/dist/adapters/a2a/agents/events.cjs.map +1 -0
  9. package/dist/adapters/a2a/agents/events.d.cts +23 -0
  10. package/dist/adapters/a2a/agents/events.d.ts +23 -0
  11. package/dist/adapters/a2a/agents/events.js +3 -0
  12. package/dist/adapters/a2a/agents/events.js.map +1 -0
  13. package/dist/adapters/a2a/agents/types.cjs +4 -0
  14. package/dist/adapters/a2a/agents/types.cjs.map +1 -0
  15. package/dist/adapters/a2a/agents/types.d.cts +45 -0
  16. package/dist/adapters/a2a/agents/types.d.ts +45 -0
  17. package/dist/adapters/a2a/agents/types.js +3 -0
  18. package/dist/adapters/a2a/agents/types.js.map +1 -0
  19. package/dist/adapters/a2a/agents/utils.cjs +41 -0
  20. package/dist/adapters/a2a/agents/utils.cjs.map +1 -0
  21. package/dist/adapters/a2a/agents/utils.d.cts +15 -0
  22. package/dist/adapters/a2a/agents/utils.d.ts +15 -0
  23. package/dist/adapters/a2a/agents/utils.js +39 -0
  24. package/dist/adapters/a2a/agents/utils.js.map +1 -0
  25. package/dist/adapters/a2a/serve/agent_executor.cjs +233 -0
  26. package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -0
  27. package/dist/adapters/a2a/serve/agent_executor.d.cts +55 -0
  28. package/dist/adapters/a2a/serve/agent_executor.d.ts +55 -0
  29. package/dist/adapters/a2a/serve/agent_executor.js +229 -0
  30. package/dist/adapters/a2a/serve/agent_executor.js.map +1 -0
  31. package/dist/adapters/a2a/serve/server.cjs +112 -0
  32. package/dist/adapters/a2a/serve/server.cjs.map +1 -0
  33. package/dist/adapters/a2a/serve/server.d.cts +56 -0
  34. package/dist/adapters/a2a/serve/server.d.ts +56 -0
  35. package/dist/adapters/a2a/serve/server.js +105 -0
  36. package/dist/adapters/a2a/serve/server.js.map +1 -0
  37. package/dist/adapters/acp/agents/agent.cjs.map +1 -1
  38. package/dist/adapters/acp/agents/agent.d.cts +3 -14
  39. package/dist/adapters/acp/agents/agent.d.ts +3 -14
  40. package/dist/adapters/acp/agents/agent.js.map +1 -1
  41. package/dist/adapters/acp/agents/events.d.cts +2 -13
  42. package/dist/adapters/acp/agents/events.d.ts +2 -13
  43. package/dist/adapters/acp/agents/types.d.cts +1 -12
  44. package/dist/adapters/acp/agents/types.d.ts +1 -12
  45. package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
  46. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +3 -14
  47. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +3 -14
  48. package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
  49. package/dist/adapters/amazon-bedrock/backend/client.cjs.map +1 -1
  50. package/dist/adapters/amazon-bedrock/backend/client.d.cts +1 -12
  51. package/dist/adapters/amazon-bedrock/backend/client.d.ts +1 -12
  52. package/dist/adapters/amazon-bedrock/backend/client.js.map +1 -1
  53. package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
  54. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +3 -14
  55. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +3 -14
  56. package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
  57. package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
  58. package/dist/adapters/anthropic/backend/chat.d.cts +3 -14
  59. package/dist/adapters/anthropic/backend/chat.d.ts +3 -14
  60. package/dist/adapters/anthropic/backend/chat.js.map +1 -1
  61. package/dist/adapters/anthropic/backend/client.cjs +1 -4
  62. package/dist/adapters/anthropic/backend/client.cjs.map +1 -1
  63. package/dist/adapters/anthropic/backend/client.d.cts +1 -12
  64. package/dist/adapters/anthropic/backend/client.d.ts +1 -12
  65. package/dist/adapters/anthropic/backend/client.js +3 -6
  66. package/dist/adapters/anthropic/backend/client.js.map +1 -1
  67. package/dist/adapters/anthropic/backend/embedding.cjs.map +1 -1
  68. package/dist/adapters/anthropic/backend/embedding.d.cts +3 -14
  69. package/dist/adapters/anthropic/backend/embedding.d.ts +3 -14
  70. package/dist/adapters/anthropic/backend/embedding.js.map +1 -1
  71. package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
  72. package/dist/adapters/azure-openai/backend/chat.d.cts +3 -14
  73. package/dist/adapters/azure-openai/backend/chat.d.ts +3 -14
  74. package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
  75. package/dist/adapters/azure-openai/backend/client.cjs.map +1 -1
  76. package/dist/adapters/azure-openai/backend/client.d.cts +1 -12
  77. package/dist/adapters/azure-openai/backend/client.d.ts +1 -12
  78. package/dist/adapters/azure-openai/backend/client.js.map +1 -1
  79. package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
  80. package/dist/adapters/azure-openai/backend/embedding.d.cts +3 -14
  81. package/dist/adapters/azure-openai/backend/embedding.d.ts +3 -14
  82. package/dist/adapters/azure-openai/backend/embedding.js.map +1 -1
  83. package/dist/adapters/beeai_platform/agents/agent.cjs.map +1 -1
  84. package/dist/adapters/beeai_platform/agents/agent.d.cts +2 -2
  85. package/dist/adapters/beeai_platform/agents/agent.d.ts +2 -2
  86. package/dist/adapters/beeai_platform/agents/agent.js.map +1 -1
  87. package/dist/adapters/beeai_platform/agents/events.d.cts +2 -13
  88. package/dist/adapters/beeai_platform/agents/events.d.ts +2 -13
  89. package/dist/adapters/beeai_platform/agents/types.d.cts +1 -12
  90. package/dist/adapters/beeai_platform/agents/types.d.ts +1 -12
  91. package/dist/adapters/dummy/backend/chat.cjs +9 -9
  92. package/dist/adapters/dummy/backend/chat.cjs.map +1 -1
  93. package/dist/adapters/dummy/backend/chat.d.cts +2 -2
  94. package/dist/adapters/dummy/backend/chat.d.ts +2 -2
  95. package/dist/adapters/dummy/backend/chat.js +9 -9
  96. package/dist/adapters/dummy/backend/chat.js.map +1 -1
  97. package/dist/adapters/dummy/backend/embedding.cjs +9 -9
  98. package/dist/adapters/dummy/backend/embedding.cjs.map +1 -1
  99. package/dist/adapters/dummy/backend/embedding.d.cts +3 -14
  100. package/dist/adapters/dummy/backend/embedding.d.ts +3 -14
  101. package/dist/adapters/dummy/backend/embedding.js +9 -9
  102. package/dist/adapters/dummy/backend/embedding.js.map +1 -1
  103. package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
  104. package/dist/adapters/google-vertex/backend/chat.d.cts +3 -14
  105. package/dist/adapters/google-vertex/backend/chat.d.ts +3 -14
  106. package/dist/adapters/google-vertex/backend/chat.js.map +1 -1
  107. package/dist/adapters/google-vertex/backend/client.cjs.map +1 -1
  108. package/dist/adapters/google-vertex/backend/client.d.cts +1 -12
  109. package/dist/adapters/google-vertex/backend/client.d.ts +1 -12
  110. package/dist/adapters/google-vertex/backend/client.js.map +1 -1
  111. package/dist/adapters/google-vertex/backend/embedding.cjs.map +1 -1
  112. package/dist/adapters/google-vertex/backend/embedding.d.cts +3 -14
  113. package/dist/adapters/google-vertex/backend/embedding.d.ts +3 -14
  114. package/dist/adapters/google-vertex/backend/embedding.js.map +1 -1
  115. package/dist/adapters/groq/backend/chat.cjs.map +1 -1
  116. package/dist/adapters/groq/backend/chat.d.cts +3 -14
  117. package/dist/adapters/groq/backend/chat.d.ts +3 -14
  118. package/dist/adapters/groq/backend/chat.js.map +1 -1
  119. package/dist/adapters/groq/backend/client.cjs.map +1 -1
  120. package/dist/adapters/groq/backend/client.d.cts +1 -12
  121. package/dist/adapters/groq/backend/client.d.ts +1 -12
  122. package/dist/adapters/groq/backend/client.js.map +1 -1
  123. package/dist/adapters/groq/backend/embedding.cjs.map +1 -1
  124. package/dist/adapters/groq/backend/embedding.d.cts +3 -14
  125. package/dist/adapters/groq/backend/embedding.d.ts +3 -14
  126. package/dist/adapters/groq/backend/embedding.js.map +1 -1
  127. package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
  128. package/dist/adapters/langchain/backend/chat.d.cts +2 -2
  129. package/dist/adapters/langchain/backend/chat.d.ts +2 -2
  130. package/dist/adapters/langchain/backend/chat.js.map +1 -1
  131. package/dist/adapters/langchain/backend/embedding.cjs.map +1 -1
  132. package/dist/adapters/langchain/backend/embedding.d.cts +3 -14
  133. package/dist/adapters/langchain/backend/embedding.d.ts +3 -14
  134. package/dist/adapters/langchain/backend/embedding.js.map +1 -1
  135. package/dist/adapters/langchain/tools.cjs.map +1 -1
  136. package/dist/adapters/langchain/tools.d.cts +1 -1
  137. package/dist/adapters/langchain/tools.d.ts +1 -1
  138. package/dist/adapters/langchain/tools.js.map +1 -1
  139. package/dist/adapters/mcp/serve/http_server.cjs.map +1 -1
  140. package/dist/adapters/mcp/serve/http_server.d.cts +1 -12
  141. package/dist/adapters/mcp/serve/http_server.d.ts +1 -12
  142. package/dist/adapters/mcp/serve/http_server.js.map +1 -1
  143. package/dist/adapters/mcp/serve/in_memory_store.cjs.map +1 -1
  144. package/dist/adapters/mcp/serve/in_memory_store.d.cts +1 -12
  145. package/dist/adapters/mcp/serve/in_memory_store.d.ts +1 -12
  146. package/dist/adapters/mcp/serve/in_memory_store.js.map +1 -1
  147. package/dist/adapters/mcp/serve/server.cjs.map +1 -1
  148. package/dist/adapters/mcp/serve/server.d.cts +3 -14
  149. package/dist/adapters/mcp/serve/server.d.ts +3 -14
  150. package/dist/adapters/mcp/serve/server.js.map +1 -1
  151. package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
  152. package/dist/adapters/ollama/backend/chat.d.cts +3 -14
  153. package/dist/adapters/ollama/backend/chat.d.ts +3 -14
  154. package/dist/adapters/ollama/backend/chat.js.map +1 -1
  155. package/dist/adapters/ollama/backend/client.cjs +12 -3
  156. package/dist/adapters/ollama/backend/client.cjs.map +1 -1
  157. package/dist/adapters/ollama/backend/client.d.cts +4 -13
  158. package/dist/adapters/ollama/backend/client.d.ts +4 -13
  159. package/dist/adapters/ollama/backend/client.js +13 -4
  160. package/dist/adapters/ollama/backend/client.js.map +1 -1
  161. package/dist/adapters/ollama/backend/embedding.cjs.map +1 -1
  162. package/dist/adapters/ollama/backend/embedding.d.cts +3 -14
  163. package/dist/adapters/ollama/backend/embedding.d.ts +3 -14
  164. package/dist/adapters/ollama/backend/embedding.js.map +1 -1
  165. package/dist/adapters/openai/backend/chat.cjs.map +1 -1
  166. package/dist/adapters/openai/backend/chat.d.cts +3 -14
  167. package/dist/adapters/openai/backend/chat.d.ts +3 -14
  168. package/dist/adapters/openai/backend/chat.js.map +1 -1
  169. package/dist/adapters/openai/backend/client.cjs +1 -4
  170. package/dist/adapters/openai/backend/client.cjs.map +1 -1
  171. package/dist/adapters/openai/backend/client.d.cts +1 -12
  172. package/dist/adapters/openai/backend/client.d.ts +1 -12
  173. package/dist/adapters/openai/backend/client.js +3 -6
  174. package/dist/adapters/openai/backend/client.js.map +1 -1
  175. package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
  176. package/dist/adapters/openai/backend/embedding.d.cts +3 -14
  177. package/dist/adapters/openai/backend/embedding.d.ts +3 -14
  178. package/dist/adapters/openai/backend/embedding.js.map +1 -1
  179. package/dist/adapters/vercel/backend/chat.cjs +2 -2
  180. package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
  181. package/dist/adapters/vercel/backend/chat.d.cts +2 -2
  182. package/dist/adapters/vercel/backend/chat.d.ts +2 -2
  183. package/dist/adapters/vercel/backend/chat.js +2 -2
  184. package/dist/adapters/vercel/backend/chat.js.map +1 -1
  185. package/dist/adapters/vercel/backend/embedding.cjs.map +1 -1
  186. package/dist/adapters/vercel/backend/embedding.d.cts +3 -14
  187. package/dist/adapters/vercel/backend/embedding.d.ts +3 -14
  188. package/dist/adapters/vercel/backend/embedding.js.map +1 -1
  189. package/dist/adapters/vercel/backend/utils.cjs +11 -2
  190. package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
  191. package/dist/adapters/vercel/backend/utils.d.cts +3 -13
  192. package/dist/adapters/vercel/backend/utils.d.ts +3 -13
  193. package/dist/adapters/vercel/backend/utils.js +11 -3
  194. package/dist/adapters/vercel/backend/utils.js.map +1 -1
  195. package/dist/adapters/watsonx/backend/chat.cjs +13 -13
  196. package/dist/adapters/watsonx/backend/chat.cjs.map +1 -1
  197. package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
  198. package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
  199. package/dist/adapters/watsonx/backend/chat.js +13 -13
  200. package/dist/adapters/watsonx/backend/chat.js.map +1 -1
  201. package/dist/adapters/watsonx/backend/client.cjs.map +1 -1
  202. package/dist/adapters/watsonx/backend/client.d.cts +1 -12
  203. package/dist/adapters/watsonx/backend/client.d.ts +1 -12
  204. package/dist/adapters/watsonx/backend/client.js.map +1 -1
  205. package/dist/adapters/watsonx/backend/embedding.cjs.map +1 -1
  206. package/dist/adapters/watsonx/backend/embedding.d.cts +3 -14
  207. package/dist/adapters/watsonx/backend/embedding.d.ts +3 -14
  208. package/dist/adapters/watsonx/backend/embedding.js.map +1 -1
  209. package/dist/adapters/xai/backend/chat.cjs +24 -0
  210. package/dist/adapters/xai/backend/chat.cjs.map +1 -0
  211. package/dist/adapters/xai/backend/chat.d.cts +39 -0
  212. package/dist/adapters/xai/backend/chat.d.ts +39 -0
  213. package/dist/adapters/xai/backend/chat.js +22 -0
  214. package/dist/adapters/xai/backend/chat.js.map +1 -0
  215. package/dist/adapters/xai/backend/client.cjs +26 -0
  216. package/dist/adapters/xai/backend/client.cjs.map +1 -0
  217. package/dist/adapters/xai/backend/client.d.cts +17 -0
  218. package/dist/adapters/xai/backend/client.d.ts +17 -0
  219. package/dist/adapters/xai/backend/client.js +24 -0
  220. package/dist/adapters/xai/backend/client.js.map +1 -0
  221. package/dist/{agent-Ca5UE2P1.d.cts → agent-Bhm6xSfI.d.cts} +3 -3
  222. package/dist/{agent-CgsoqVL5.d.ts → agent-CmCmnEDX.d.ts} +3 -3
  223. package/dist/agents/base.cjs.map +1 -1
  224. package/dist/agents/base.d.cts +2 -2
  225. package/dist/agents/base.d.ts +2 -2
  226. package/dist/agents/base.js.map +1 -1
  227. package/dist/agents/experimental/replan/agent.cjs +8 -8
  228. package/dist/agents/experimental/replan/agent.cjs.map +1 -1
  229. package/dist/agents/experimental/replan/agent.d.cts +4 -15
  230. package/dist/agents/experimental/replan/agent.d.ts +4 -15
  231. package/dist/agents/experimental/replan/agent.js +8 -8
  232. package/dist/agents/experimental/replan/agent.js.map +1 -1
  233. package/dist/agents/experimental/replan/prompts.cjs.map +1 -1
  234. package/dist/agents/experimental/replan/prompts.d.cts +1 -1
  235. package/dist/agents/experimental/replan/prompts.d.ts +1 -1
  236. package/dist/agents/experimental/replan/prompts.js.map +1 -1
  237. package/dist/agents/experimental/streamlit/agent.cjs +9 -9
  238. package/dist/agents/experimental/streamlit/agent.cjs.map +1 -1
  239. package/dist/agents/experimental/streamlit/agent.d.cts +4 -15
  240. package/dist/agents/experimental/streamlit/agent.d.ts +4 -15
  241. package/dist/agents/experimental/streamlit/agent.js +9 -9
  242. package/dist/agents/experimental/streamlit/agent.js.map +1 -1
  243. package/dist/agents/experimental/streamlit/prompts.cjs.map +1 -1
  244. package/dist/agents/experimental/streamlit/prompts.d.cts +1 -12
  245. package/dist/agents/experimental/streamlit/prompts.d.ts +1 -12
  246. package/dist/agents/experimental/streamlit/prompts.js.map +1 -1
  247. package/dist/agents/react/agent.cjs +8 -8
  248. package/dist/agents/react/agent.cjs.map +1 -1
  249. package/dist/agents/react/agent.d.cts +4 -4
  250. package/dist/agents/react/agent.d.ts +4 -4
  251. package/dist/agents/react/agent.js +8 -8
  252. package/dist/agents/react/agent.js.map +1 -1
  253. package/dist/agents/react/prompts.cjs.map +1 -1
  254. package/dist/agents/react/prompts.d.cts +1 -12
  255. package/dist/agents/react/prompts.d.ts +1 -12
  256. package/dist/agents/react/prompts.js.map +1 -1
  257. package/dist/agents/react/runners/base.cjs +2 -2
  258. package/dist/agents/react/runners/base.cjs.map +1 -1
  259. package/dist/agents/react/runners/base.d.cts +4 -4
  260. package/dist/agents/react/runners/base.d.ts +4 -4
  261. package/dist/agents/react/runners/base.js +2 -2
  262. package/dist/agents/react/runners/base.js.map +1 -1
  263. package/dist/agents/react/runners/deep-think/prompts.cjs.map +1 -1
  264. package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -12
  265. package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -12
  266. package/dist/agents/react/runners/deep-think/prompts.js.map +1 -1
  267. package/dist/agents/react/runners/deep-think/runner.cjs.map +1 -1
  268. package/dist/agents/react/runners/deep-think/runner.d.cts +4 -4
  269. package/dist/agents/react/runners/deep-think/runner.d.ts +4 -4
  270. package/dist/agents/react/runners/deep-think/runner.js.map +1 -1
  271. package/dist/agents/react/runners/default/runner.cjs.map +1 -1
  272. package/dist/agents/react/runners/default/runner.d.cts +4 -4
  273. package/dist/agents/react/runners/default/runner.d.ts +4 -4
  274. package/dist/agents/react/runners/default/runner.js.map +1 -1
  275. package/dist/agents/react/runners/default/runner.spec.cjs.map +1 -1
  276. package/dist/agents/react/runners/default/runner.spec.js.map +1 -1
  277. package/dist/agents/react/runners/granite/prompts.cjs.map +1 -1
  278. package/dist/agents/react/runners/granite/prompts.d.cts +1 -12
  279. package/dist/agents/react/runners/granite/prompts.d.ts +1 -12
  280. package/dist/agents/react/runners/granite/prompts.js.map +1 -1
  281. package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
  282. package/dist/agents/react/runners/granite/runner.d.cts +4 -4
  283. package/dist/agents/react/runners/granite/runner.d.ts +4 -4
  284. package/dist/agents/react/runners/granite/runner.js.map +1 -1
  285. package/dist/agents/react/types.d.cts +3 -14
  286. package/dist/agents/react/types.d.ts +3 -14
  287. package/dist/agents/toolCalling/agent.cjs +8 -8
  288. package/dist/agents/toolCalling/agent.cjs.map +1 -1
  289. package/dist/agents/toolCalling/agent.d.cts +4 -15
  290. package/dist/agents/toolCalling/agent.d.ts +4 -15
  291. package/dist/agents/toolCalling/agent.js +8 -8
  292. package/dist/agents/toolCalling/agent.js.map +1 -1
  293. package/dist/agents/toolCalling/prompts.cjs.map +1 -1
  294. package/dist/agents/toolCalling/prompts.d.cts +1 -12
  295. package/dist/agents/toolCalling/prompts.d.ts +1 -12
  296. package/dist/agents/toolCalling/prompts.js.map +1 -1
  297. package/dist/agents/toolCalling/types.d.cts +2 -13
  298. package/dist/agents/toolCalling/types.d.ts +2 -13
  299. package/dist/agents/types.d.cts +2 -2
  300. package/dist/agents/types.d.ts +2 -2
  301. package/dist/backend/backend.cjs.map +1 -1
  302. package/dist/backend/backend.d.cts +3 -14
  303. package/dist/backend/backend.d.ts +3 -14
  304. package/dist/backend/backend.js.map +1 -1
  305. package/dist/backend/chat.cjs.map +1 -1
  306. package/dist/backend/chat.d.cts +2 -2
  307. package/dist/backend/chat.d.ts +2 -2
  308. package/dist/backend/chat.js.map +1 -1
  309. package/dist/backend/client.cjs.map +1 -1
  310. package/dist/backend/client.d.cts +1 -12
  311. package/dist/backend/client.d.ts +1 -12
  312. package/dist/backend/client.js.map +1 -1
  313. package/dist/backend/constants.cjs +8 -0
  314. package/dist/backend/constants.cjs.map +1 -1
  315. package/dist/backend/constants.d.cts +6 -12
  316. package/dist/backend/constants.d.ts +6 -12
  317. package/dist/backend/constants.js +8 -0
  318. package/dist/backend/constants.js.map +1 -1
  319. package/dist/backend/core.d.cts +2 -2
  320. package/dist/backend/core.d.ts +2 -2
  321. package/dist/backend/embedding.cjs.map +1 -1
  322. package/dist/backend/embedding.d.cts +2 -2
  323. package/dist/backend/embedding.d.ts +2 -2
  324. package/dist/backend/embedding.js.map +1 -1
  325. package/dist/backend/errors.cjs.map +1 -1
  326. package/dist/backend/errors.d.cts +1 -12
  327. package/dist/backend/errors.d.ts +1 -12
  328. package/dist/backend/errors.js.map +1 -1
  329. package/dist/backend/message.cjs.map +1 -1
  330. package/dist/backend/message.d.cts +2 -13
  331. package/dist/backend/message.d.ts +2 -13
  332. package/dist/backend/message.js.map +1 -1
  333. package/dist/backend/utils.cjs.map +1 -1
  334. package/dist/backend/utils.d.cts +2 -2
  335. package/dist/backend/utils.d.ts +2 -2
  336. package/dist/backend/utils.js.map +1 -1
  337. package/dist/{base-szR2Izbt.d.cts → base-BP7v-NSL.d.cts} +3 -14
  338. package/dist/{base-BOCDDBvG.d.ts → base-BsY2baWy.d.ts} +3 -14
  339. package/dist/cache/base.cjs.map +1 -1
  340. package/dist/cache/base.d.cts +1 -12
  341. package/dist/cache/base.d.ts +1 -12
  342. package/dist/cache/base.js.map +1 -1
  343. package/dist/cache/decoratorCache.cjs +2 -2
  344. package/dist/cache/decoratorCache.cjs.map +1 -1
  345. package/dist/cache/decoratorCache.d.cts +1 -12
  346. package/dist/cache/decoratorCache.d.ts +1 -12
  347. package/dist/cache/decoratorCache.js +2 -2
  348. package/dist/cache/decoratorCache.js.map +1 -1
  349. package/dist/cache/fileCache.cjs.map +1 -1
  350. package/dist/cache/fileCache.d.cts +1 -12
  351. package/dist/cache/fileCache.d.ts +1 -12
  352. package/dist/cache/fileCache.js.map +1 -1
  353. package/dist/cache/nullCache.cjs.map +1 -1
  354. package/dist/cache/nullCache.d.cts +1 -12
  355. package/dist/cache/nullCache.d.ts +1 -12
  356. package/dist/cache/nullCache.js.map +1 -1
  357. package/dist/cache/slidingCache.cjs.map +1 -1
  358. package/dist/cache/slidingCache.d.cts +1 -12
  359. package/dist/cache/slidingCache.d.ts +1 -12
  360. package/dist/cache/slidingCache.js.map +1 -1
  361. package/dist/cache/unconstrainedCache.cjs.map +1 -1
  362. package/dist/cache/unconstrainedCache.d.cts +1 -12
  363. package/dist/cache/unconstrainedCache.d.ts +1 -12
  364. package/dist/cache/unconstrainedCache.js.map +1 -1
  365. package/dist/{chat-DvMzAHj6.d.cts → chat-CR4yfOR9.d.cts} +3 -14
  366. package/dist/{chat-BdN8hGWn.d.ts → chat-W9j8T6UU.d.ts} +3 -14
  367. package/dist/context.cjs +3 -4
  368. package/dist/context.cjs.map +1 -1
  369. package/dist/context.d.cts +2 -13
  370. package/dist/context.d.ts +2 -13
  371. package/dist/context.js +3 -4
  372. package/dist/context.js.map +1 -1
  373. package/dist/emitter/emitter.cjs.map +1 -1
  374. package/dist/emitter/emitter.d.cts +1 -1
  375. package/dist/emitter/emitter.d.ts +1 -1
  376. package/dist/emitter/emitter.js.map +1 -1
  377. package/dist/emitter/errors.cjs.map +1 -1
  378. package/dist/emitter/errors.d.cts +1 -12
  379. package/dist/emitter/errors.d.ts +1 -12
  380. package/dist/emitter/errors.js.map +1 -1
  381. package/dist/emitter/types.d.cts +1 -1
  382. package/dist/emitter/types.d.ts +1 -1
  383. package/dist/emitter/utils.cjs.map +1 -1
  384. package/dist/emitter/utils.d.cts +1 -12
  385. package/dist/emitter/utils.d.ts +1 -12
  386. package/dist/emitter/utils.js.map +1 -1
  387. package/dist/{emitter-C3dO-s2P.d.ts → emitter-C9nwGLt6.d.ts} +3 -25
  388. package/dist/{emitter-D5Mu0EEH.d.cts → emitter-DWEsd-ud.d.cts} +3 -25
  389. package/dist/errors.cjs.map +1 -1
  390. package/dist/errors.d.cts +1 -12
  391. package/dist/errors.d.ts +1 -12
  392. package/dist/errors.js.map +1 -1
  393. package/dist/index.d.cts +4 -4
  394. package/dist/index.d.ts +4 -4
  395. package/dist/internals/env.cjs.map +1 -1
  396. package/dist/internals/env.d.cts +1 -12
  397. package/dist/internals/env.d.ts +1 -12
  398. package/dist/internals/env.js.map +1 -1
  399. package/dist/internals/fetcher.cjs +8 -8
  400. package/dist/internals/fetcher.cjs.map +1 -1
  401. package/dist/internals/fetcher.d.cts +2 -13
  402. package/dist/internals/fetcher.d.ts +2 -13
  403. package/dist/internals/fetcher.js +8 -8
  404. package/dist/internals/fetcher.js.map +1 -1
  405. package/dist/internals/helpers/array.cjs.map +1 -1
  406. package/dist/internals/helpers/array.d.cts +1 -12
  407. package/dist/internals/helpers/array.d.ts +1 -12
  408. package/dist/internals/helpers/array.js.map +1 -1
  409. package/dist/internals/helpers/cancellation.cjs.map +1 -1
  410. package/dist/internals/helpers/cancellation.d.cts +1 -12
  411. package/dist/internals/helpers/cancellation.d.ts +1 -12
  412. package/dist/internals/helpers/cancellation.js.map +1 -1
  413. package/dist/internals/helpers/counter.cjs.map +1 -1
  414. package/dist/internals/helpers/counter.d.cts +1 -12
  415. package/dist/internals/helpers/counter.d.ts +1 -12
  416. package/dist/internals/helpers/counter.js.map +1 -1
  417. package/dist/internals/helpers/general.cjs.map +1 -1
  418. package/dist/internals/helpers/general.d.cts +1 -12
  419. package/dist/internals/helpers/general.d.ts +1 -12
  420. package/dist/internals/helpers/general.js.map +1 -1
  421. package/dist/internals/helpers/guards.cjs.map +1 -1
  422. package/dist/internals/helpers/guards.d.cts +1 -12
  423. package/dist/internals/helpers/guards.d.ts +1 -12
  424. package/dist/internals/helpers/guards.js.map +1 -1
  425. package/dist/internals/helpers/hash.cjs.map +1 -1
  426. package/dist/internals/helpers/hash.d.cts +1 -12
  427. package/dist/internals/helpers/hash.d.ts +1 -12
  428. package/dist/internals/helpers/hash.js.map +1 -1
  429. package/dist/internals/helpers/map.cjs.map +1 -1
  430. package/dist/internals/helpers/map.d.cts +1 -12
  431. package/dist/internals/helpers/map.d.ts +1 -12
  432. package/dist/internals/helpers/map.js.map +1 -1
  433. package/dist/internals/helpers/math.cjs.map +1 -1
  434. package/dist/internals/helpers/math.d.cts +1 -12
  435. package/dist/internals/helpers/math.d.ts +1 -12
  436. package/dist/internals/helpers/math.js.map +1 -1
  437. package/dist/internals/helpers/number.cjs.map +1 -1
  438. package/dist/internals/helpers/number.d.cts +1 -12
  439. package/dist/internals/helpers/number.d.ts +1 -12
  440. package/dist/internals/helpers/number.js.map +1 -1
  441. package/dist/internals/helpers/object.cjs.map +1 -1
  442. package/dist/internals/helpers/object.d.cts +1 -12
  443. package/dist/internals/helpers/object.d.ts +1 -12
  444. package/dist/internals/helpers/object.js.map +1 -1
  445. package/dist/internals/helpers/paginate.cjs.map +1 -1
  446. package/dist/internals/helpers/paginate.d.cts +1 -12
  447. package/dist/internals/helpers/paginate.d.ts +1 -12
  448. package/dist/internals/helpers/paginate.js.map +1 -1
  449. package/dist/internals/helpers/promise.cjs +1 -3
  450. package/dist/internals/helpers/promise.cjs.map +1 -1
  451. package/dist/internals/helpers/promise.d.cts +1 -12
  452. package/dist/internals/helpers/promise.d.ts +1 -12
  453. package/dist/internals/helpers/promise.js +1 -3
  454. package/dist/internals/helpers/promise.js.map +1 -1
  455. package/dist/internals/helpers/prototype.cjs.map +1 -1
  456. package/dist/internals/helpers/prototype.d.cts +1 -12
  457. package/dist/internals/helpers/prototype.d.ts +1 -12
  458. package/dist/internals/helpers/prototype.js.map +1 -1
  459. package/dist/internals/helpers/retry.cjs.map +1 -1
  460. package/dist/internals/helpers/retry.d.cts +1 -12
  461. package/dist/internals/helpers/retry.d.ts +1 -12
  462. package/dist/internals/helpers/retry.js.map +1 -1
  463. package/dist/internals/helpers/retryable.cjs.map +1 -1
  464. package/dist/internals/helpers/retryable.d.cts +1 -12
  465. package/dist/internals/helpers/retryable.d.ts +1 -12
  466. package/dist/internals/helpers/retryable.js.map +1 -1
  467. package/dist/internals/helpers/schema.cjs.map +1 -1
  468. package/dist/internals/helpers/schema.d.cts +1 -12
  469. package/dist/internals/helpers/schema.d.ts +1 -12
  470. package/dist/internals/helpers/schema.js.map +1 -1
  471. package/dist/internals/helpers/stream.cjs.map +1 -1
  472. package/dist/internals/helpers/stream.d.cts +1 -12
  473. package/dist/internals/helpers/stream.d.ts +1 -12
  474. package/dist/internals/helpers/stream.js.map +1 -1
  475. package/dist/internals/helpers/string.cjs.map +1 -1
  476. package/dist/internals/helpers/string.d.cts +1 -12
  477. package/dist/internals/helpers/string.d.ts +1 -12
  478. package/dist/internals/helpers/string.js.map +1 -1
  479. package/dist/internals/helpers/weakRef.cjs.map +1 -1
  480. package/dist/internals/helpers/weakRef.d.cts +1 -12
  481. package/dist/internals/helpers/weakRef.d.ts +1 -12
  482. package/dist/internals/helpers/weakRef.js.map +1 -1
  483. package/dist/internals/serializable.cjs.map +1 -1
  484. package/dist/internals/serializable.d.cts +1 -12
  485. package/dist/internals/serializable.d.ts +1 -12
  486. package/dist/internals/serializable.js.map +1 -1
  487. package/dist/internals/types.cjs.map +1 -1
  488. package/dist/internals/types.d.cts +1 -12
  489. package/dist/internals/types.d.ts +1 -12
  490. package/dist/internals/types.js.map +1 -1
  491. package/dist/logger/logger.cjs.map +1 -1
  492. package/dist/logger/logger.js.map +1 -1
  493. package/dist/logger/pretty.cjs.map +1 -1
  494. package/dist/logger/pretty.js.map +1 -1
  495. package/dist/memory/base.cjs.map +1 -1
  496. package/dist/memory/base.js.map +1 -1
  497. package/dist/memory/slidingMemory.cjs.map +1 -1
  498. package/dist/memory/slidingMemory.js.map +1 -1
  499. package/dist/memory/summarizeMemory.cjs.map +1 -1
  500. package/dist/memory/summarizeMemory.d.cts +2 -2
  501. package/dist/memory/summarizeMemory.d.ts +2 -2
  502. package/dist/memory/summarizeMemory.js.map +1 -1
  503. package/dist/memory/tokenMemory.cjs.map +1 -1
  504. package/dist/memory/tokenMemory.js.map +1 -1
  505. package/dist/memory/unconstrainedMemory.cjs.map +1 -1
  506. package/dist/memory/unconstrainedMemory.js.map +1 -1
  507. package/dist/parsers/errors.cjs.map +1 -1
  508. package/dist/parsers/errors.d.cts +1 -12
  509. package/dist/parsers/errors.d.ts +1 -12
  510. package/dist/parsers/errors.js.map +1 -1
  511. package/dist/parsers/field.cjs +2 -2
  512. package/dist/parsers/field.cjs.map +1 -1
  513. package/dist/parsers/field.js +2 -2
  514. package/dist/parsers/field.js.map +1 -1
  515. package/dist/parsers/linePrefix.cjs +15 -15
  516. package/dist/parsers/linePrefix.cjs.map +1 -1
  517. package/dist/parsers/linePrefix.d.cts +2 -13
  518. package/dist/parsers/linePrefix.d.ts +2 -13
  519. package/dist/parsers/linePrefix.js +15 -15
  520. package/dist/parsers/linePrefix.js.map +1 -1
  521. package/dist/serializer/error.cjs.map +1 -1
  522. package/dist/serializer/error.d.cts +1 -12
  523. package/dist/serializer/error.d.ts +1 -12
  524. package/dist/serializer/error.js.map +1 -1
  525. package/dist/serializer/serializer.cjs.map +1 -1
  526. package/dist/serializer/serializer.d.cts +1 -1
  527. package/dist/serializer/serializer.d.ts +1 -1
  528. package/dist/serializer/serializer.js.map +1 -1
  529. package/dist/serializer/utils.cjs +1 -2
  530. package/dist/serializer/utils.cjs.map +1 -1
  531. package/dist/serializer/utils.d.cts +1 -1
  532. package/dist/serializer/utils.d.ts +1 -1
  533. package/dist/serializer/utils.js +1 -2
  534. package/dist/serializer/utils.js.map +1 -1
  535. package/dist/{serializer-Dz4AIM2O.d.cts → serializer-BKn50Vnx.d.cts} +2 -24
  536. package/dist/{serializer-BswFRdT8.d.ts → serializer-CQxucveV.d.ts} +2 -24
  537. package/dist/serve/server.cjs +13 -7
  538. package/dist/serve/server.cjs.map +1 -1
  539. package/dist/serve/server.d.cts +5 -15
  540. package/dist/serve/server.d.ts +5 -15
  541. package/dist/serve/server.js +13 -7
  542. package/dist/serve/server.js.map +1 -1
  543. package/dist/template.cjs.map +1 -1
  544. package/dist/template.d.cts +1 -12
  545. package/dist/template.d.ts +1 -12
  546. package/dist/template.js.map +1 -1
  547. package/dist/tools/arxiv.cjs.map +1 -1
  548. package/dist/tools/arxiv.d.cts +2 -13
  549. package/dist/tools/arxiv.d.ts +2 -13
  550. package/dist/tools/arxiv.js.map +1 -1
  551. package/dist/tools/base.cjs.map +1 -1
  552. package/dist/tools/base.d.cts +1 -1
  553. package/dist/tools/base.d.ts +1 -1
  554. package/dist/tools/base.js.map +1 -1
  555. package/dist/tools/calculator.cjs.map +1 -1
  556. package/dist/tools/calculator.d.cts +2 -13
  557. package/dist/tools/calculator.d.ts +2 -13
  558. package/dist/tools/calculator.js.map +1 -1
  559. package/dist/tools/custom.cjs.map +1 -1
  560. package/dist/tools/custom.d.cts +3 -14
  561. package/dist/tools/custom.d.ts +3 -14
  562. package/dist/tools/custom.js.map +1 -1
  563. package/dist/tools/database/elasticsearch.cjs.map +1 -1
  564. package/dist/tools/database/elasticsearch.d.cts +2 -13
  565. package/dist/tools/database/elasticsearch.d.ts +2 -13
  566. package/dist/tools/database/elasticsearch.js.map +1 -1
  567. package/dist/tools/database/metadata.cjs.map +1 -1
  568. package/dist/tools/database/metadata.d.cts +1 -12
  569. package/dist/tools/database/metadata.d.ts +1 -12
  570. package/dist/tools/database/metadata.js.map +1 -1
  571. package/dist/tools/database/milvus.cjs.map +1 -1
  572. package/dist/tools/database/milvus.d.cts +2 -13
  573. package/dist/tools/database/milvus.d.ts +2 -13
  574. package/dist/tools/database/milvus.js.map +1 -1
  575. package/dist/tools/database/qdrant.cjs.map +1 -1
  576. package/dist/tools/database/qdrant.d.cts +2 -13
  577. package/dist/tools/database/qdrant.d.ts +2 -13
  578. package/dist/tools/database/qdrant.js.map +1 -1
  579. package/dist/tools/database/sql.cjs.map +1 -1
  580. package/dist/tools/database/sql.d.cts +2 -13
  581. package/dist/tools/database/sql.d.ts +2 -13
  582. package/dist/tools/database/sql.js.map +1 -1
  583. package/dist/tools/llm.cjs +3 -3
  584. package/dist/tools/llm.cjs.map +1 -1
  585. package/dist/tools/llm.d.cts +3 -14
  586. package/dist/tools/llm.d.ts +3 -14
  587. package/dist/tools/llm.js +3 -3
  588. package/dist/tools/llm.js.map +1 -1
  589. package/dist/tools/mcp.cjs +2 -1
  590. package/dist/tools/mcp.cjs.map +1 -1
  591. package/dist/tools/mcp.d.cts +2 -13
  592. package/dist/tools/mcp.d.ts +2 -13
  593. package/dist/tools/mcp.js +2 -1
  594. package/dist/tools/mcp.js.map +1 -1
  595. package/dist/tools/openapi.cjs.map +1 -1
  596. package/dist/tools/openapi.d.cts +1 -1
  597. package/dist/tools/openapi.d.ts +1 -1
  598. package/dist/tools/openapi.js.map +1 -1
  599. package/dist/tools/python/output.cjs.map +1 -1
  600. package/dist/tools/python/output.d.cts +2 -13
  601. package/dist/tools/python/output.d.ts +2 -13
  602. package/dist/tools/python/output.js.map +1 -1
  603. package/dist/tools/python/python.cjs.map +1 -1
  604. package/dist/tools/python/python.d.cts +2 -2
  605. package/dist/tools/python/python.d.ts +2 -2
  606. package/dist/tools/python/python.js.map +1 -1
  607. package/dist/tools/python/storage.cjs.map +1 -1
  608. package/dist/tools/python/storage.d.cts +1 -12
  609. package/dist/tools/python/storage.d.ts +1 -12
  610. package/dist/tools/python/storage.js.map +1 -1
  611. package/dist/tools/search/base.cjs.map +1 -1
  612. package/dist/tools/search/base.d.cts +2 -13
  613. package/dist/tools/search/base.d.ts +2 -13
  614. package/dist/tools/search/base.js.map +1 -1
  615. package/dist/tools/search/duckDuckGoSearch.cjs +7 -1
  616. package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -1
  617. package/dist/tools/search/duckDuckGoSearch.d.cts +2 -13
  618. package/dist/tools/search/duckDuckGoSearch.d.ts +2 -13
  619. package/dist/tools/search/duckDuckGoSearch.js +7 -1
  620. package/dist/tools/search/duckDuckGoSearch.js.map +1 -1
  621. package/dist/tools/search/googleSearch.cjs.map +1 -1
  622. package/dist/tools/search/googleSearch.d.cts +1 -1
  623. package/dist/tools/search/googleSearch.d.ts +1 -1
  624. package/dist/tools/search/googleSearch.js.map +1 -1
  625. package/dist/tools/search/searXNGSearch.cjs.map +1 -1
  626. package/dist/tools/search/searXNGSearch.d.cts +2 -13
  627. package/dist/tools/search/searXNGSearch.d.ts +2 -13
  628. package/dist/tools/search/searXNGSearch.js.map +1 -1
  629. package/dist/tools/search/wikipedia.cjs +11 -11
  630. package/dist/tools/search/wikipedia.cjs.map +1 -1
  631. package/dist/tools/search/wikipedia.d.cts +1 -1
  632. package/dist/tools/search/wikipedia.d.ts +1 -1
  633. package/dist/tools/search/wikipedia.js +11 -11
  634. package/dist/tools/search/wikipedia.js.map +1 -1
  635. package/dist/tools/similarity.cjs.map +1 -1
  636. package/dist/tools/similarity.d.cts +2 -13
  637. package/dist/tools/similarity.d.ts +2 -13
  638. package/dist/tools/similarity.js.map +1 -1
  639. package/dist/tools/weather/openMeteo.cjs.map +1 -1
  640. package/dist/tools/weather/openMeteo.d.cts +2 -13
  641. package/dist/tools/weather/openMeteo.d.ts +2 -13
  642. package/dist/tools/weather/openMeteo.js.map +1 -1
  643. package/dist/tools/web/webCrawler.cjs.map +1 -1
  644. package/dist/tools/web/webCrawler.d.cts +1 -1
  645. package/dist/tools/web/webCrawler.d.ts +1 -1
  646. package/dist/tools/web/webCrawler.js.map +1 -1
  647. package/dist/version.cjs +1 -1
  648. package/dist/version.cjs.map +1 -1
  649. package/dist/version.d.cts +1 -12
  650. package/dist/version.d.ts +1 -12
  651. package/dist/version.js +1 -1
  652. package/dist/version.js.map +1 -1
  653. package/dist/workflows/agent.cjs.map +1 -1
  654. package/dist/workflows/agent.d.cts +40 -40
  655. package/dist/workflows/agent.d.ts +40 -40
  656. package/dist/workflows/agent.js.map +1 -1
  657. package/dist/workflows/workflow.cjs +3 -3
  658. package/dist/workflows/workflow.cjs.map +1 -1
  659. package/dist/workflows/workflow.d.cts +1 -1
  660. package/dist/workflows/workflow.d.ts +1 -1
  661. package/dist/workflows/workflow.js +3 -3
  662. package/dist/workflows/workflow.js.map +1 -1
  663. package/package.json +42 -73
@@ -1 +1 @@
1
- {"version":3,"sources":["workflow.ts"],"names":["WorkflowError","FrameworkError","constructor","message","extra","errors","context","run","isRetryable","isFatal","Workflow","Serializable","START","SELF","PREV","NEXT","END","emitter","steps","startStep","input","Map","undefined","Emitter","root","child","namespace","toCamelCase","name","filter","Boolean","creator","getSteps","Array","from","keys","schemas","pick","addStep","step","_addStep","addStrictStep","schema","schemaOrStep","stepOrEmpty","trim","ValueError","has","stepOrFlow","set","handler","asStep","setStart","state","options","RunContext","enter","signal","params","runContext","parse","result","handlers","abort","reason","next","findStep","start","current","get","emit","parseAsync","catch","err","shallowCopy","then","deepCopy","nextStepRaw","at","prev","stepResult","push","error","outputSchema","delStep","delete","overrides","ctx","mappedInput","mappedOutput","output","Object","assign","index","indexOf","createSnapshot","omit","loadSnapshot","snapshot","z","any"],"mappings":"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","file":"workflow.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { z, ZodSchema } from \"zod\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { RunContext } from \"@/context.js\";\nimport { omit, pick, toCamelCase } from \"remeda\";\nimport { deepCopy, shallowCopy } from \"@/serializer/utils.js\";\nimport { FrameworkError, ValueError } from \"@/errors.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\ntype WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;\n\nexport interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n result: z.output<T2>;\n steps: WorkflowStepRes<T, K>[];\n state: z.output<T>;\n}\n\nexport interface WorkflowRunOptions<K extends string> {\n start?: K;\n signal?: AbortSignal;\n}\n\nexport interface WorkflowStepDef<T extends ZodSchema, K extends string> {\n schema: T;\n handler: WorkflowStepHandler<T, K>;\n}\n\nexport interface WorkflowStepRes<T extends ZodSchema, K extends string> {\n name: K;\n next: K | ReservedStep;\n state: z.output<T>;\n}\n\nexport interface WorkflowRunContext<T extends ZodSchema, K extends string> {\n steps: WorkflowStepRes<T, K>[];\n signal: AbortSignal;\n abort: (reason?: Error) => void;\n}\n\nexport type WorkflowStepHandler<T extends ZodSchema, K extends string> = (\n state: z.output<T>,\n context: WorkflowRunContext<T, K>,\n) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;\n\nexport interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n start: Callback<{ step: K; run: WorkflowRun<T, T2, K> }>;\n error: Callback<{\n step: K;\n error: Error;\n run: WorkflowRun<T, T2, K>;\n }>;\n success: Callback<{\n step: K;\n next: K | ReservedStep;\n state: z.output<T>;\n run: WorkflowRun<T, T2, K>;\n }>;\n}\n\ninterface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {\n name?: string;\n schema: TS;\n outputSchema?: TS2;\n}\n\ntype RunStep<K extends string> = K | typeof Workflow.END;\ntype ReservedStep =\n | typeof Workflow.START\n | typeof Workflow.NEXT\n | typeof Workflow.PREV\n | typeof Workflow.END\n | typeof Workflow.SELF;\nexport type FlowStepName<K extends string> = K | ReservedStep;\n\nexport class WorkflowError<\n T extends ZodSchema,\n T2 extends ZodSchema,\n K extends string,\n> extends FrameworkError {\n constructor(message: string, extra?: { run?: WorkflowRun<T, T2, K>; errors?: Error[] }) {\n super(message, extra?.errors, {\n context: extra?.run ?? {},\n isRetryable: false,\n isFatal: true,\n });\n }\n}\n\nexport class Workflow<\n TInput extends ZodSchema,\n TOutput extends ZodSchema = TInput,\n TKeys extends string = string,\n> extends Serializable {\n public static readonly START = \"__start__\";\n public static readonly SELF = \"__self__\";\n public static readonly PREV = \"__prev__\";\n public static readonly NEXT = \"__next__\";\n public static readonly END = \"__end__\";\n\n public readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;\n\n protected readonly steps = new Map<string, WorkflowStepDef<TInput, TKeys>>();\n protected startStep: TKeys | undefined = undefined;\n\n constructor(protected readonly input: FlowInput<TInput, TOutput>) {\n super();\n this.emitter = Emitter.root.child({\n namespace: [\"workflow\", toCamelCase(input?.name ?? \"\")].filter(Boolean),\n creator: this,\n });\n }\n\n getSteps() {\n return Array.from(this.steps.keys()) as TKeys[];\n }\n\n get name() {\n return this.input.name ?? \"\";\n }\n\n get schemas() {\n return pick(this.input, [\"schema\", \"outputSchema\"]);\n }\n\n addStep<L extends string>(\n name: L,\n handler: WorkflowStepHandler<TInput | TOutput, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string, TFlow extends AnyWorkflowFlow>(\n name: L,\n flow: Workflow.pipeable<this, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string>(\n name: L,\n step: WorkflowStepHandler<TInput | TOutput, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, step);\n }\n\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n handler: WorkflowStepHandler<TI2, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(\n name: L,\n schema: TI2,\n flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n step: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, schema, step);\n }\n\n protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(\n name: L,\n schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow,\n stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n if (!name.trim()) {\n throw new ValueError(`Step name cannot be empty!`);\n }\n if (this.steps.has(name)) {\n throw new ValueError(`Step '${name}' already exists!`);\n }\n if (name === Workflow.END) {\n throw new ValueError(`The name '${name}' cannot be used!`);\n }\n\n const schema = (schemaOrStep && stepOrEmpty ? schemaOrStep : this.input.schema) as TInput;\n const stepOrFlow = stepOrEmpty || schemaOrStep;\n\n this.steps.set(name, {\n schema,\n handler: stepOrFlow instanceof Workflow ? stepOrFlow.asStep({}) : stepOrFlow,\n } as WorkflowStepDef<TInput, TKeys>);\n\n return this as unknown as Workflow<TInput, TOutput, L | TKeys>;\n }\n\n setStart(name: TKeys) {\n this.startStep = name;\n return this;\n }\n\n run(state: z.input<TInput>, options: WorkflowRunOptions<TKeys> = {}) {\n return RunContext.enter(\n this,\n { signal: options?.signal, params: [state, options] as const },\n async (runContext): Promise<WorkflowRun<TInput, TOutput, TKeys>> => {\n const run: WorkflowRun<TInput, TOutput, TKeys> = {\n steps: [],\n state: this.input.schema.parse(state),\n result: undefined as z.output<TOutput>,\n };\n const handlers: WorkflowRunContext<TInput, TKeys> = {\n steps: run.steps,\n signal: runContext.signal,\n abort: (reason) => runContext.abort(reason),\n };\n\n let next: RunStep<TKeys> =\n this.findStep(options?.start || this.startStep || this.getSteps()[0]).current ??\n Workflow.END;\n\n while (next && next !== Workflow.END) {\n const name = next;\n const step = this.steps.get(next);\n if (!step) {\n throw new WorkflowError(`Step '${next}' was not found.`, { run });\n }\n await runContext.emitter.emit(\"start\", { run, step: next });\n try {\n const state = await step.schema\n .parseAsync(run.state)\n .catch(async (err: Error) => {\n throw new WorkflowError(\n `Step '${next}' cannot be executed because the provided input doesn't adhere to the step's schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n })\n .then(deepCopy);\n\n const nextStepRaw = await step.handler(state, handlers);\n if (nextStepRaw === Workflow.START) {\n next = run.steps.at(0)?.name!;\n } else if (nextStepRaw === Workflow.PREV) {\n next = this.findStep(next).prev;\n } else if (nextStepRaw === Workflow.SELF) {\n next = this.findStep(next).current;\n } else if (!nextStepRaw || nextStepRaw === Workflow.NEXT) {\n next = this.findStep(next).next || Workflow.END;\n } else {\n next = nextStepRaw;\n }\n\n const stepResult: WorkflowStepRes<TInput, TKeys> = {\n name,\n state,\n next,\n };\n run.steps.push(stepResult);\n run.state = stepResult.state;\n\n await runContext.emitter.emit(\"success\", {\n run: shallowCopy(run),\n state: stepResult.state,\n step: stepResult.name,\n next: stepResult.next,\n });\n } catch (error) {\n await runContext.emitter.emit(\"error\", {\n run: shallowCopy(run),\n step: next as TKeys,\n error,\n });\n throw error;\n }\n }\n\n run.result = await (this.input.outputSchema ?? this.input.schema)\n .parseAsync(run.state)\n .catch((err) => {\n throw new WorkflowError(\n `Workflow has ended but it's state does not adhere to the workflow's output schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n });\n return run;\n },\n );\n }\n\n delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>> {\n if (this.startStep === name) {\n this.startStep = undefined;\n }\n this.steps.delete(name);\n return this as unknown as Workflow<TInput, TOutput, Exclude<TKeys, L>>;\n }\n\n asStep<\n TInput2 extends ZodSchema = TInput,\n TOutput2 extends ZodSchema = TOutput,\n TKeys2 extends string = TKeys,\n >(overrides: {\n input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;\n output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;\n start?: TKeys;\n next?: FlowStepName<TKeys2>;\n }): WorkflowStepHandler<TInput2, TKeys | TKeys2> {\n return async (state, ctx) => {\n const mappedInput = overrides?.input ? overrides.input(state) : state;\n const result = await this.run(mappedInput, { start: overrides?.start, signal: ctx.signal });\n const mappedOutput = overrides?.output ? overrides.output(result.state) : result.state;\n Object.assign(state, mappedOutput);\n return overrides.next;\n };\n }\n\n protected findStep(current: TKeys) {\n const steps = this.getSteps();\n const index = steps.indexOf(current);\n return {\n prev: steps[index - 1],\n current: steps[index],\n next: steps[index + 1],\n };\n }\n\n createSnapshot() {\n return {\n input: omit(this.input, [\"schema\", \"outputSchema\"]),\n emitter: this.emitter,\n startStep: this.startStep,\n steps: this.steps,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n this.input.schema ??= z.any() as unknown as TInput;\n this.input.outputSchema ??= z.any() as unknown as TOutput;\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Workflow {\n export type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> =\n Workflow.state<T> extends Workflow.input<T2> ? T2 : never;\n export type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;\n export type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;\n export type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;\n export type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;\n}\n\nexport type AnyWorkflowFlow = Workflow<any, any, any>;\n"]}
1
+ {"version":3,"sources":["../../src/workflows/workflow.ts"],"names":["WorkflowError","FrameworkError","message","extra","errors","context","run","isRetryable","isFatal","Workflow","Serializable","START","SELF","PREV","NEXT","END","emitter","steps","Map","startStep","undefined","input","Emitter","root","child","namespace","toCamelCase","name","filter","Boolean","creator","getSteps","Array","from","keys","schemas","pick","addStep","step","_addStep","addStrictStep","schema","schemaOrStep","stepOrEmpty","trim","ValueError","has","stepOrFlow","set","handler","asStep","setStart","state","options","RunContext","enter","signal","params","runContext","parse","result","handlers","abort","reason","next","findStep","start","current","get","emit","parseAsync","catch","err","shallowCopy","then","deepCopy","nextStepRaw","at","prev","stepResult","push","error","outputSchema","delStep","delete","overrides","ctx","mappedInput","mappedOutput","output","Object","assign","index","indexOf","createSnapshot","omit","loadSnapshot","snapshot","z","any"],"mappings":"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","file":"workflow.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { z, ZodSchema } from \"zod\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { RunContext } from \"@/context.js\";\nimport { omit, pick, toCamelCase } from \"remeda\";\nimport { deepCopy, shallowCopy } from \"@/serializer/utils.js\";\nimport { FrameworkError, ValueError } from \"@/errors.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\ntype WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;\n\nexport interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n result: z.output<T2>;\n steps: WorkflowStepRes<T, K>[];\n state: z.output<T>;\n}\n\nexport interface WorkflowRunOptions<K extends string> {\n start?: K;\n signal?: AbortSignal;\n}\n\nexport interface WorkflowStepDef<T extends ZodSchema, K extends string> {\n schema: T;\n handler: WorkflowStepHandler<T, K>;\n}\n\nexport interface WorkflowStepRes<T extends ZodSchema, K extends string> {\n name: K;\n next: K | ReservedStep;\n state: z.output<T>;\n}\n\nexport interface WorkflowRunContext<T extends ZodSchema, K extends string> {\n steps: WorkflowStepRes<T, K>[];\n signal: AbortSignal;\n abort: (reason?: Error) => void;\n}\n\nexport type WorkflowStepHandler<T extends ZodSchema, K extends string> = (\n state: z.output<T>,\n context: WorkflowRunContext<T, K>,\n) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;\n\nexport interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n start: Callback<{ step: K; run: WorkflowRun<T, T2, K> }>;\n error: Callback<{\n step: K;\n error: Error;\n run: WorkflowRun<T, T2, K>;\n }>;\n success: Callback<{\n step: K;\n next: K | ReservedStep;\n state: z.output<T>;\n run: WorkflowRun<T, T2, K>;\n }>;\n}\n\ninterface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {\n name?: string;\n schema: TS;\n outputSchema?: TS2;\n}\n\ntype RunStep<K extends string> = K | typeof Workflow.END;\ntype ReservedStep =\n | typeof Workflow.START\n | typeof Workflow.NEXT\n | typeof Workflow.PREV\n | typeof Workflow.END\n | typeof Workflow.SELF;\nexport type FlowStepName<K extends string> = K | ReservedStep;\n\nexport class WorkflowError<\n T extends ZodSchema,\n T2 extends ZodSchema,\n K extends string,\n> extends FrameworkError {\n constructor(message: string, extra?: { run?: WorkflowRun<T, T2, K>; errors?: Error[] }) {\n super(message, extra?.errors, {\n context: extra?.run ?? {},\n isRetryable: false,\n isFatal: true,\n });\n }\n}\n\nexport class Workflow<\n TInput extends ZodSchema,\n TOutput extends ZodSchema = TInput,\n TKeys extends string = string,\n> extends Serializable {\n public static readonly START = \"__start__\";\n public static readonly SELF = \"__self__\";\n public static readonly PREV = \"__prev__\";\n public static readonly NEXT = \"__next__\";\n public static readonly END = \"__end__\";\n\n public readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;\n\n protected readonly steps = new Map<string, WorkflowStepDef<TInput, TKeys>>();\n protected startStep: TKeys | undefined = undefined;\n\n constructor(protected readonly input: FlowInput<TInput, TOutput>) {\n super();\n this.emitter = Emitter.root.child({\n namespace: [\"workflow\", toCamelCase(input?.name ?? \"\")].filter(Boolean),\n creator: this,\n });\n }\n\n getSteps() {\n return Array.from(this.steps.keys()) as TKeys[];\n }\n\n get name() {\n return this.input.name ?? \"\";\n }\n\n get schemas() {\n return pick(this.input, [\"schema\", \"outputSchema\"]);\n }\n\n addStep<L extends string>(\n name: L,\n handler: WorkflowStepHandler<TInput | TOutput, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string, TFlow extends AnyWorkflowFlow>(\n name: L,\n flow: Workflow.pipeable<this, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string>(\n name: L,\n step: WorkflowStepHandler<TInput | TOutput, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, step);\n }\n\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n handler: WorkflowStepHandler<TI2, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(\n name: L,\n schema: TI2,\n flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n step: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, schema, step);\n }\n\n protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(\n name: L,\n schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow,\n stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n if (!name.trim()) {\n throw new ValueError(`Step name cannot be empty!`);\n }\n if (this.steps.has(name)) {\n throw new ValueError(`Step '${name}' already exists!`);\n }\n if (name === Workflow.END) {\n throw new ValueError(`The name '${name}' cannot be used!`);\n }\n\n const schema = (schemaOrStep && stepOrEmpty ? schemaOrStep : this.input.schema) as TInput;\n const stepOrFlow = stepOrEmpty || schemaOrStep;\n\n this.steps.set(name, {\n schema,\n handler: stepOrFlow instanceof Workflow ? stepOrFlow.asStep({}) : stepOrFlow,\n } as WorkflowStepDef<TInput, TKeys>);\n\n return this as unknown as Workflow<TInput, TOutput, L | TKeys>;\n }\n\n setStart(name: TKeys) {\n this.startStep = name;\n return this;\n }\n\n run(state: z.input<TInput>, options: WorkflowRunOptions<TKeys> = {}) {\n return RunContext.enter(\n this,\n { signal: options?.signal, params: [state, options] as const },\n async (runContext): Promise<WorkflowRun<TInput, TOutput, TKeys>> => {\n const run: WorkflowRun<TInput, TOutput, TKeys> = {\n steps: [],\n state: this.input.schema.parse(state),\n result: undefined as z.output<TOutput>,\n };\n const handlers: WorkflowRunContext<TInput, TKeys> = {\n steps: run.steps,\n signal: runContext.signal,\n abort: (reason) => runContext.abort(reason),\n };\n\n let next: RunStep<TKeys> =\n this.findStep(options?.start || this.startStep || this.getSteps()[0]).current ??\n Workflow.END;\n\n while (next && next !== Workflow.END) {\n const name = next;\n const step = this.steps.get(next);\n if (!step) {\n throw new WorkflowError(`Step '${next}' was not found.`, { run });\n }\n await runContext.emitter.emit(\"start\", { run, step: next });\n try {\n const state = await step.schema\n .parseAsync(run.state)\n .catch(async (err: Error) => {\n throw new WorkflowError(\n `Step '${next}' cannot be executed because the provided input doesn't adhere to the step's schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n })\n .then(deepCopy);\n\n const nextStepRaw = await step.handler(state, handlers);\n if (nextStepRaw === Workflow.START) {\n next = run.steps.at(0)?.name!;\n } else if (nextStepRaw === Workflow.PREV) {\n next = this.findStep(next).prev;\n } else if (nextStepRaw === Workflow.SELF) {\n next = this.findStep(next).current;\n } else if (!nextStepRaw || nextStepRaw === Workflow.NEXT) {\n next = this.findStep(next).next || Workflow.END;\n } else {\n next = nextStepRaw;\n }\n\n const stepResult: WorkflowStepRes<TInput, TKeys> = {\n name,\n state,\n next,\n };\n run.steps.push(stepResult);\n run.state = stepResult.state;\n\n await runContext.emitter.emit(\"success\", {\n run: shallowCopy(run),\n state: stepResult.state,\n step: stepResult.name,\n next: stepResult.next,\n });\n } catch (error) {\n await runContext.emitter.emit(\"error\", {\n run: shallowCopy(run),\n step: next as TKeys,\n error,\n });\n throw error;\n }\n }\n\n run.result = await (this.input.outputSchema ?? this.input.schema)\n .parseAsync(run.state)\n .catch((err) => {\n throw new WorkflowError(\n `Workflow has ended but it's state does not adhere to the workflow's output schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n });\n return run;\n },\n );\n }\n\n delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>> {\n if (this.startStep === name) {\n this.startStep = undefined;\n }\n this.steps.delete(name);\n return this as unknown as Workflow<TInput, TOutput, Exclude<TKeys, L>>;\n }\n\n asStep<\n TInput2 extends ZodSchema = TInput,\n TOutput2 extends ZodSchema = TOutput,\n TKeys2 extends string = TKeys,\n >(overrides: {\n input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;\n output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;\n start?: TKeys;\n next?: FlowStepName<TKeys2>;\n }): WorkflowStepHandler<TInput2, TKeys | TKeys2> {\n return async (state, ctx) => {\n const mappedInput = overrides?.input ? overrides.input(state) : state;\n const result = await this.run(mappedInput, { start: overrides?.start, signal: ctx.signal });\n const mappedOutput = overrides?.output ? overrides.output(result.state) : result.state;\n Object.assign(state, mappedOutput);\n return overrides.next;\n };\n }\n\n protected findStep(current: TKeys) {\n const steps = this.getSteps();\n const index = steps.indexOf(current);\n return {\n prev: steps[index - 1],\n current: steps[index],\n next: steps[index + 1],\n };\n }\n\n createSnapshot() {\n return {\n input: omit(this.input, [\"schema\", \"outputSchema\"]),\n emitter: this.emitter,\n startStep: this.startStep,\n steps: this.steps,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n this.input.schema ??= z.any() as unknown as TInput;\n this.input.outputSchema ??= z.any() as unknown as TOutput;\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Workflow {\n export type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> =\n Workflow.state<T> extends Workflow.input<T2> ? T2 : never;\n export type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;\n export type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;\n export type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;\n export type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;\n}\n\nexport type AnyWorkflowFlow = Workflow<any, any, any>;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "beeai-framework",
3
- "version": "0.1.16",
3
+ "version": "0.1.18",
4
4
  "license": "Apache-2.0",
5
5
  "description": "BeeAI Framework - LLM Agent Framework",
6
6
  "author": "BeeAI a Series of LF Projects, LLC",
@@ -13,7 +13,7 @@
13
13
  "Bee Agent Framework",
14
14
  "NodeJS Agent Framework"
15
15
  ],
16
- "packageManager": "yarn@4.1.1",
16
+ "packageManager": "yarn@4.9.1",
17
17
  "commitlint": {
18
18
  "extends": [
19
19
  "@commitlint/config-conventional"
@@ -46,11 +46,6 @@
46
46
  ]
47
47
  }
48
48
  },
49
- "lint-staged": {
50
- "{src,tests,scripts}/**/*": "yarn copyright",
51
- "*": "prettier --ignore-unknown --write",
52
- "*.{ts,js}": "eslint --fix"
53
- },
54
49
  "prettier": {
55
50
  "printWidth": 100,
56
51
  "quoteProps": "consistent"
@@ -84,16 +79,11 @@
84
79
  "publish": true
85
80
  },
86
81
  "hooks": {
87
- "before:init": [
88
- "yarn lint",
89
- "yarn ts:check",
90
- "[ \"$RELEASE_SKIP_TESTS\" = \"true\" ] && echo 'Skipping tests.' || yarn test:all"
91
- ],
92
82
  "after:bump": [
93
- "yarn build"
83
+ "mise typescript:build"
94
84
  ],
95
85
  "before:release": [
96
- "yarn lint:fix && yarn format:fix && git add . --update"
86
+ "mise typescript:fix && git add . --update"
97
87
  ]
98
88
  },
99
89
  "github": {
@@ -147,42 +137,18 @@
147
137
  "bugs": {
148
138
  "url": "https://github.com/i-am-bee/beeai-framework/issues"
149
139
  },
150
- "scripts": {
151
- "clean": "rimraf dist",
152
- "build": "yarn clean && yarn ts:check && NODE_OPTIONS='--max-old-space-size=8192' tsup",
153
- "ts:check": "tsc --noEmit && tsc -p tsconfig.examples.json --noEmit",
154
- "start": "tsx --tsconfig tsconfig.examples.json",
155
- "start:bee": "yarn start -- examples/agents/bee.ts",
156
- "lint": "yarn eslint",
157
- "prepare": "../.githooks/install.sh",
158
- "lint:fix": "yarn eslint --fix",
159
- "format": "yarn prettier --check .",
160
- "format:fix": "yarn prettier --write .",
161
- "test:unit": "vitest run src",
162
- "test:unit:watch": "vitest run src",
163
- "test:e2e": "vitest run tests/e2e",
164
- "test:e2e:watch": "vitest watch tests/e2e",
165
- "test:all": "yarn test:unit && yarn test:e2e && yarn test:examples",
166
- "test:examples": "vitest --config ./examples/vitest.examples.config.ts run tests/examples",
167
- "test:examples:watch": "vitest --config ./examples/vitest.examples.config.ts watch tests/examples",
168
- "copyright": "./scripts/copyright.sh",
169
- "copyright:check": "TYPE=check ./scripts/copyright.sh",
170
- "release": "release-it",
171
- "_ensure_env": "cp -n .env.template .env || true",
172
- "git:commit-msg": "yarn commitlint --edit --",
173
- "git:pre-commit": "yarn copyright:check && yarn lint && yarn format && yarn ts:check && yarn run test:unit"
174
- },
175
140
  "dependencies": {
141
+ "@ai-sdk/xai": "^1.2.18",
176
142
  "@ai-zen/node-fetch-event-source": "^2.1.4",
177
143
  "@streamparser/json": "^0.0.22",
178
- "ai": "^4.3.13",
144
+ "ai": "^4.3.19",
179
145
  "ajv": "^8.17.1",
180
146
  "ajv-formats": "^3.0.1",
181
147
  "duck-duck-scrape": "^2.2.7",
182
- "fast-xml-parser": "^5.0.8",
183
- "header-generator": "^2.1.62",
148
+ "fast-xml-parser": "^5.2.5",
149
+ "header-generator": "^2.1.69",
184
150
  "joplin-turndown-plugin-gfm": "^1.0.12",
185
- "jsonrepair": "^3.12.0",
151
+ "jsonrepair": "^3.13.0",
186
152
  "mathjs": "^14.0.0",
187
153
  "mustache": "^4.2.0",
188
154
  "object-hash": "^3.0.0",
@@ -193,33 +159,37 @@
193
159
  "remeda": "^2.21.0",
194
160
  "serialize-error-cjs": "^0.2.0",
195
161
  "string-comparison": "^1.3.0",
196
- "string-strip-html": "^13.4.12",
162
+ "string-strip-html": "^13.4.13",
197
163
  "turndown": "^7.2.0",
198
164
  "wikipedia": "^2.1.2",
199
- "zod": "^3.24.2",
200
- "zod-to-json-schema": "^3.24.3"
165
+ "zod": "^3.24.4",
166
+ "zod-to-json-schema": "^3.24.6"
201
167
  },
202
168
  "peerDependencies": {
203
- "@ai-sdk/amazon-bedrock": "^2.2.8",
204
- "@ai-sdk/anthropic": "^1.2.10",
205
- "@ai-sdk/azure": "^1.3.14",
206
- "@ai-sdk/google-vertex": "^2.2.15",
207
- "@ai-sdk/groq": "^1.2.8",
208
- "@ai-sdk/openai": "^1.3.21",
209
- "@aws-sdk/client-bedrock-runtime": "^3.772.0",
169
+ "@a2a-js/sdk": "^0.3.4",
170
+ "@ai-sdk/amazon-bedrock": "^2.2.12",
171
+ "@ai-sdk/anthropic": "^1.2.12",
172
+ "@ai-sdk/azure": "^1.3.24",
173
+ "@ai-sdk/google-vertex": "^2.2.27",
174
+ "@ai-sdk/groq": "^1.2.9",
175
+ "@ai-sdk/openai": "^1.3.23",
176
+ "@aws-sdk/client-bedrock-runtime": "^3.848.0",
210
177
  "@elastic/elasticsearch": "^8.0.0",
211
178
  "@googleapis/customsearch": "^3.2.0",
212
179
  "@langchain/community": ">=0.2.28",
213
180
  "@langchain/core": ">=0.2.27",
214
- "@modelcontextprotocol/sdk": "^1.12.0",
215
- "@qdrant/js-client-rest": "^1.14.0",
216
- "@zilliz/milvus2-sdk-node": "^2.4.9",
181
+ "@modelcontextprotocol/sdk": "^1.17.0",
182
+ "@qdrant/js-client-rest": "^1.15.0",
183
+ "@zilliz/milvus2-sdk-node": "^2.6.0",
217
184
  "express": "^5.0.0",
218
185
  "ollama-ai-provider": "^1.2.0",
219
- "sequelize": "^6.37.3",
186
+ "sequelize": "^6.37.7",
220
187
  "yaml": "^2.6.1"
221
188
  },
222
189
  "peerDependenciesMeta": {
190
+ "@a2a-js/sdk": {
191
+ "optional": true
192
+ },
223
193
  "@ai-sdk/amazon-bedrock": {
224
194
  "optional": true
225
195
  },
@@ -276,22 +246,23 @@
276
246
  }
277
247
  },
278
248
  "devDependencies": {
279
- "@ai-sdk/amazon-bedrock": "^2.2.8",
280
- "@ai-sdk/anthropic": "^1.2.10",
281
- "@ai-sdk/azure": "^1.3.14",
282
- "@ai-sdk/google-vertex": "^2.2.15",
283
- "@ai-sdk/groq": "^1.2.8",
284
- "@ai-sdk/openai": "^1.3.13",
249
+ "@a2a-js/sdk": "^0.3.4",
250
+ "@ai-sdk/amazon-bedrock": "^2.2.12",
251
+ "@ai-sdk/anthropic": "^1.2.12",
252
+ "@ai-sdk/azure": "^1.3.24",
253
+ "@ai-sdk/google-vertex": "^2.2.27",
254
+ "@ai-sdk/groq": "^1.2.9",
255
+ "@ai-sdk/openai": "^1.3.23",
285
256
  "@commitlint/cli": "^19.7.1",
286
257
  "@commitlint/config-conventional": "^19.7.1",
287
258
  "@elastic/elasticsearch": "^8.16.2",
288
259
  "@eslint/js": "^9.16.0",
289
260
  "@eslint/markdown": "^6.2.1",
290
261
  "@googleapis/customsearch": "^3.2.0",
291
- "@ibm-cloud/watsonx-ai": "^1.6.0",
292
- "@langchain/community": "0.3.34",
293
- "@langchain/core": "0.3.42",
294
- "@langchain/langgraph": "0.2.55",
262
+ "@ibm-cloud/watsonx-ai": "^1.6.9",
263
+ "@langchain/community": "^0.3.49",
264
+ "@langchain/core": "^0.3.59",
265
+ "@langchain/langgraph": "^0.3.11",
295
266
  "@langchain/ollama": "^0.2.0",
296
267
  "@modelcontextprotocol/sdk": "^1.12.0",
297
268
  "@qdrant/js-client-rest": "^1.14.0",
@@ -318,23 +289,21 @@
318
289
  "eslint-plugin-unused-imports": "^4.1.4",
319
290
  "express": "^5.0.0",
320
291
  "glob": "^11.0.0",
321
- "ibm-cloud-sdk-core": "^5.3.2",
292
+ "ibm-cloud-sdk-core": "^5.4.2",
322
293
  "langchain": "0.3.19",
323
- "linkinator": "^6.1.2",
324
- "lint-staged": "^15.2.10",
325
294
  "ollama-ai-provider": "^1.2.0",
326
295
  "picocolors": "^1.1.1",
327
296
  "pino-pretty": "^13.0.0",
328
297
  "pino-test": "^1.1.0",
329
- "prettier": "^3.4.2",
298
+ "prettier": "^3.6.2",
330
299
  "release-it": "^17.10.0",
331
300
  "rimraf": "^6.0.1",
332
301
  "sequelize": "^6.37.5",
333
302
  "sqlite3": "^5.1.7",
334
303
  "strip-ansi": "^7.1.0",
335
304
  "tsup": "^8.4.0",
336
- "tsx": "^4.19.2",
337
- "typescript": "^5.8.2",
305
+ "tsx": "^4.20.3",
306
+ "typescript": "^5.8.3",
338
307
  "typescript-eslint": "^8.26.1",
339
308
  "vite-tsconfig-paths": "^5.1.4",
340
309
  "vitest": "^2.1.9",