beeai-framework 0.1.2

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 (862) hide show
  1. package/README.md +226 -0
  2. package/dist/adapters/amazon-bedrock/backend/chat.cjs +21 -0
  3. package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -0
  4. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +49 -0
  5. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +49 -0
  6. package/dist/adapters/amazon-bedrock/backend/chat.js +19 -0
  7. package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -0
  8. package/dist/adapters/amazon-bedrock/backend/client.cjs +21 -0
  9. package/dist/adapters/amazon-bedrock/backend/client.cjs.map +1 -0
  10. package/dist/adapters/amazon-bedrock/backend/client.d.cts +28 -0
  11. package/dist/adapters/amazon-bedrock/backend/client.d.ts +28 -0
  12. package/dist/adapters/amazon-bedrock/backend/client.js +19 -0
  13. package/dist/adapters/amazon-bedrock/backend/client.js.map +1 -0
  14. package/dist/adapters/amazon-bedrock/backend/embedding.cjs +21 -0
  15. package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -0
  16. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +40 -0
  17. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +40 -0
  18. package/dist/adapters/amazon-bedrock/backend/embedding.js +19 -0
  19. package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -0
  20. package/dist/adapters/anthropic/backend/chat.cjs +24 -0
  21. package/dist/adapters/anthropic/backend/chat.cjs.map +1 -0
  22. package/dist/adapters/anthropic/backend/chat.d.cts +49 -0
  23. package/dist/adapters/anthropic/backend/chat.d.ts +49 -0
  24. package/dist/adapters/anthropic/backend/chat.js +22 -0
  25. package/dist/adapters/anthropic/backend/chat.js.map +1 -0
  26. package/dist/adapters/anthropic/backend/client.cjs +32 -0
  27. package/dist/adapters/anthropic/backend/client.cjs.map +1 -0
  28. package/dist/adapters/anthropic/backend/client.d.cts +28 -0
  29. package/dist/adapters/anthropic/backend/client.d.ts +28 -0
  30. package/dist/adapters/anthropic/backend/client.js +30 -0
  31. package/dist/adapters/anthropic/backend/client.js.map +1 -0
  32. package/dist/adapters/anthropic/backend/embedding.cjs +21 -0
  33. package/dist/adapters/anthropic/backend/embedding.cjs.map +1 -0
  34. package/dist/adapters/anthropic/backend/embedding.d.cts +40 -0
  35. package/dist/adapters/anthropic/backend/embedding.d.ts +40 -0
  36. package/dist/adapters/anthropic/backend/embedding.js +19 -0
  37. package/dist/adapters/anthropic/backend/embedding.js.map +1 -0
  38. package/dist/adapters/azure-openai/backend/chat.cjs +21 -0
  39. package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -0
  40. package/dist/adapters/azure-openai/backend/chat.d.cts +49 -0
  41. package/dist/adapters/azure-openai/backend/chat.d.ts +49 -0
  42. package/dist/adapters/azure-openai/backend/chat.js +19 -0
  43. package/dist/adapters/azure-openai/backend/chat.js.map +1 -0
  44. package/dist/adapters/azure-openai/backend/client.cjs +26 -0
  45. package/dist/adapters/azure-openai/backend/client.cjs.map +1 -0
  46. package/dist/adapters/azure-openai/backend/client.d.cts +28 -0
  47. package/dist/adapters/azure-openai/backend/client.d.ts +28 -0
  48. package/dist/adapters/azure-openai/backend/client.js +24 -0
  49. package/dist/adapters/azure-openai/backend/client.js.map +1 -0
  50. package/dist/adapters/azure-openai/backend/embedding.cjs +21 -0
  51. package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -0
  52. package/dist/adapters/azure-openai/backend/embedding.d.cts +40 -0
  53. package/dist/adapters/azure-openai/backend/embedding.d.ts +40 -0
  54. package/dist/adapters/azure-openai/backend/embedding.js +19 -0
  55. package/dist/adapters/azure-openai/backend/embedding.js.map +1 -0
  56. package/dist/adapters/dummy/backend/chat.cjs +51 -0
  57. package/dist/adapters/dummy/backend/chat.cjs.map +1 -0
  58. package/dist/adapters/dummy/backend/chat.d.cts +39 -0
  59. package/dist/adapters/dummy/backend/chat.d.ts +39 -0
  60. package/dist/adapters/dummy/backend/chat.js +49 -0
  61. package/dist/adapters/dummy/backend/chat.js.map +1 -0
  62. package/dist/adapters/dummy/backend/embedding.cjs +44 -0
  63. package/dist/adapters/dummy/backend/embedding.cjs.map +1 -0
  64. package/dist/adapters/dummy/backend/embedding.d.cts +41 -0
  65. package/dist/adapters/dummy/backend/embedding.d.ts +41 -0
  66. package/dist/adapters/dummy/backend/embedding.js +42 -0
  67. package/dist/adapters/dummy/backend/embedding.js.map +1 -0
  68. package/dist/adapters/google-vertex/backend/chat.cjs +21 -0
  69. package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -0
  70. package/dist/adapters/google-vertex/backend/chat.d.cts +49 -0
  71. package/dist/adapters/google-vertex/backend/chat.d.ts +49 -0
  72. package/dist/adapters/google-vertex/backend/chat.js +19 -0
  73. package/dist/adapters/google-vertex/backend/chat.js.map +1 -0
  74. package/dist/adapters/google-vertex/backend/client.cjs +25 -0
  75. package/dist/adapters/google-vertex/backend/client.cjs.map +1 -0
  76. package/dist/adapters/google-vertex/backend/client.d.cts +28 -0
  77. package/dist/adapters/google-vertex/backend/client.d.ts +28 -0
  78. package/dist/adapters/google-vertex/backend/client.js +23 -0
  79. package/dist/adapters/google-vertex/backend/client.js.map +1 -0
  80. package/dist/adapters/google-vertex/backend/embedding.cjs +21 -0
  81. package/dist/adapters/google-vertex/backend/embedding.cjs.map +1 -0
  82. package/dist/adapters/google-vertex/backend/embedding.d.cts +40 -0
  83. package/dist/adapters/google-vertex/backend/embedding.d.ts +40 -0
  84. package/dist/adapters/google-vertex/backend/embedding.js +19 -0
  85. package/dist/adapters/google-vertex/backend/embedding.js.map +1 -0
  86. package/dist/adapters/groq/backend/chat.cjs +24 -0
  87. package/dist/adapters/groq/backend/chat.cjs.map +1 -0
  88. package/dist/adapters/groq/backend/chat.d.cts +49 -0
  89. package/dist/adapters/groq/backend/chat.d.ts +49 -0
  90. package/dist/adapters/groq/backend/chat.js +22 -0
  91. package/dist/adapters/groq/backend/chat.js.map +1 -0
  92. package/dist/adapters/groq/backend/client.cjs +24 -0
  93. package/dist/adapters/groq/backend/client.cjs.map +1 -0
  94. package/dist/adapters/groq/backend/client.d.cts +28 -0
  95. package/dist/adapters/groq/backend/client.d.ts +28 -0
  96. package/dist/adapters/groq/backend/client.js +22 -0
  97. package/dist/adapters/groq/backend/client.js.map +1 -0
  98. package/dist/adapters/groq/backend/embedding.cjs +25 -0
  99. package/dist/adapters/groq/backend/embedding.cjs.map +1 -0
  100. package/dist/adapters/groq/backend/embedding.d.cts +40 -0
  101. package/dist/adapters/groq/backend/embedding.d.ts +40 -0
  102. package/dist/adapters/groq/backend/embedding.js +23 -0
  103. package/dist/adapters/groq/backend/embedding.js.map +1 -0
  104. package/dist/adapters/langchain/backend/chat.cjs +117 -0
  105. package/dist/adapters/langchain/backend/chat.cjs.map +1 -0
  106. package/dist/adapters/langchain/backend/chat.d.cts +48 -0
  107. package/dist/adapters/langchain/backend/chat.d.ts +48 -0
  108. package/dist/adapters/langchain/backend/chat.js +115 -0
  109. package/dist/adapters/langchain/backend/chat.js.map +1 -0
  110. package/dist/adapters/langchain/backend/embedding.cjs +56 -0
  111. package/dist/adapters/langchain/backend/embedding.cjs.map +1 -0
  112. package/dist/adapters/langchain/backend/embedding.d.cts +43 -0
  113. package/dist/adapters/langchain/backend/embedding.d.ts +43 -0
  114. package/dist/adapters/langchain/backend/embedding.js +54 -0
  115. package/dist/adapters/langchain/backend/embedding.js.map +1 -0
  116. package/dist/adapters/langchain/tools.cjs +114 -0
  117. package/dist/adapters/langchain/tools.cjs.map +1 -0
  118. package/dist/adapters/langchain/tools.d.cts +44 -0
  119. package/dist/adapters/langchain/tools.d.ts +44 -0
  120. package/dist/adapters/langchain/tools.js +92 -0
  121. package/dist/adapters/langchain/tools.js.map +1 -0
  122. package/dist/adapters/ollama/backend/chat.cjs +28 -0
  123. package/dist/adapters/ollama/backend/chat.cjs.map +1 -0
  124. package/dist/adapters/ollama/backend/chat.d.cts +50 -0
  125. package/dist/adapters/ollama/backend/chat.d.ts +50 -0
  126. package/dist/adapters/ollama/backend/chat.js +26 -0
  127. package/dist/adapters/ollama/backend/chat.js.map +1 -0
  128. package/dist/adapters/ollama/backend/client.cjs +23 -0
  129. package/dist/adapters/ollama/backend/client.cjs.map +1 -0
  130. package/dist/adapters/ollama/backend/client.d.cts +28 -0
  131. package/dist/adapters/ollama/backend/client.d.ts +28 -0
  132. package/dist/adapters/ollama/backend/client.js +21 -0
  133. package/dist/adapters/ollama/backend/client.js.map +1 -0
  134. package/dist/adapters/ollama/backend/embedding.cjs +21 -0
  135. package/dist/adapters/ollama/backend/embedding.cjs.map +1 -0
  136. package/dist/adapters/ollama/backend/embedding.d.cts +40 -0
  137. package/dist/adapters/ollama/backend/embedding.d.ts +40 -0
  138. package/dist/adapters/ollama/backend/embedding.js +19 -0
  139. package/dist/adapters/ollama/backend/embedding.js.map +1 -0
  140. package/dist/adapters/openai/backend/chat.cjs +21 -0
  141. package/dist/adapters/openai/backend/chat.cjs.map +1 -0
  142. package/dist/adapters/openai/backend/chat.d.cts +49 -0
  143. package/dist/adapters/openai/backend/chat.d.ts +49 -0
  144. package/dist/adapters/openai/backend/chat.js +19 -0
  145. package/dist/adapters/openai/backend/chat.js.map +1 -0
  146. package/dist/adapters/openai/backend/client.cjs +33 -0
  147. package/dist/adapters/openai/backend/client.cjs.map +1 -0
  148. package/dist/adapters/openai/backend/client.d.cts +28 -0
  149. package/dist/adapters/openai/backend/client.d.ts +28 -0
  150. package/dist/adapters/openai/backend/client.js +31 -0
  151. package/dist/adapters/openai/backend/client.js.map +1 -0
  152. package/dist/adapters/openai/backend/embedding.cjs +21 -0
  153. package/dist/adapters/openai/backend/embedding.cjs.map +1 -0
  154. package/dist/adapters/openai/backend/embedding.d.cts +40 -0
  155. package/dist/adapters/openai/backend/embedding.d.ts +40 -0
  156. package/dist/adapters/openai/backend/embedding.js +19 -0
  157. package/dist/adapters/openai/backend/embedding.js.map +1 -0
  158. package/dist/adapters/vercel/backend/chat.cjs +184 -0
  159. package/dist/adapters/vercel/backend/chat.cjs.map +1 -0
  160. package/dist/adapters/vercel/backend/chat.d.cts +45 -0
  161. package/dist/adapters/vercel/backend/chat.d.ts +45 -0
  162. package/dist/adapters/vercel/backend/chat.js +182 -0
  163. package/dist/adapters/vercel/backend/chat.js.map +1 -0
  164. package/dist/adapters/vercel/backend/embedding.cjs +63 -0
  165. package/dist/adapters/vercel/backend/embedding.cjs.map +1 -0
  166. package/dist/adapters/vercel/backend/embedding.d.cts +45 -0
  167. package/dist/adapters/vercel/backend/embedding.d.ts +45 -0
  168. package/dist/adapters/vercel/backend/embedding.js +61 -0
  169. package/dist/adapters/vercel/backend/embedding.js.map +1 -0
  170. package/dist/adapters/watsonx/backend/chat.cjs +199 -0
  171. package/dist/adapters/watsonx/backend/chat.cjs.map +1 -0
  172. package/dist/adapters/watsonx/backend/chat.d.cts +56 -0
  173. package/dist/adapters/watsonx/backend/chat.d.ts +56 -0
  174. package/dist/adapters/watsonx/backend/chat.js +193 -0
  175. package/dist/adapters/watsonx/backend/chat.js.map +1 -0
  176. package/dist/adapters/watsonx/backend/client.cjs +48 -0
  177. package/dist/adapters/watsonx/backend/client.cjs.map +1 -0
  178. package/dist/adapters/watsonx/backend/client.d.cts +38 -0
  179. package/dist/adapters/watsonx/backend/client.d.ts +38 -0
  180. package/dist/adapters/watsonx/backend/client.js +46 -0
  181. package/dist/adapters/watsonx/backend/client.js.map +1 -0
  182. package/dist/adapters/watsonx/backend/embedding.cjs +70 -0
  183. package/dist/adapters/watsonx/backend/embedding.cjs.map +1 -0
  184. package/dist/adapters/watsonx/backend/embedding.d.cts +50 -0
  185. package/dist/adapters/watsonx/backend/embedding.d.ts +50 -0
  186. package/dist/adapters/watsonx/backend/embedding.js +68 -0
  187. package/dist/adapters/watsonx/backend/embedding.js.map +1 -0
  188. package/dist/agent-BbaHVlob.d.cts +84 -0
  189. package/dist/agent-Bks2fOUl.d.ts +84 -0
  190. package/dist/agents/base.cjs +73 -0
  191. package/dist/agents/base.cjs.map +1 -0
  192. package/dist/agents/base.d.cts +18 -0
  193. package/dist/agents/base.d.ts +18 -0
  194. package/dist/agents/base.js +70 -0
  195. package/dist/agents/base.js.map +1 -0
  196. package/dist/agents/bee/agent.cjs +193 -0
  197. package/dist/agents/bee/agent.cjs.map +1 -0
  198. package/dist/agents/bee/agent.d.cts +32 -0
  199. package/dist/agents/bee/agent.d.ts +32 -0
  200. package/dist/agents/bee/agent.js +171 -0
  201. package/dist/agents/bee/agent.js.map +1 -0
  202. package/dist/agents/bee/prompts.cjs +176 -0
  203. package/dist/agents/bee/prompts.cjs.map +1 -0
  204. package/dist/agents/bee/prompts.d.cts +148 -0
  205. package/dist/agents/bee/prompts.d.ts +148 -0
  206. package/dist/agents/bee/prompts.js +166 -0
  207. package/dist/agents/bee/prompts.js.map +1 -0
  208. package/dist/agents/bee/runners/base.cjs +103 -0
  209. package/dist/agents/bee/runners/base.cjs.map +1 -0
  210. package/dist/agents/bee/runners/base.d.cts +32 -0
  211. package/dist/agents/bee/runners/base.d.ts +32 -0
  212. package/dist/agents/bee/runners/base.js +101 -0
  213. package/dist/agents/bee/runners/base.js.map +1 -0
  214. package/dist/agents/bee/runners/deep-think/prompts.cjs +92 -0
  215. package/dist/agents/bee/runners/deep-think/prompts.cjs.map +1 -0
  216. package/dist/agents/bee/runners/deep-think/prompts.d.cts +145 -0
  217. package/dist/agents/bee/runners/deep-think/prompts.d.ts +145 -0
  218. package/dist/agents/bee/runners/deep-think/prompts.js +84 -0
  219. package/dist/agents/bee/runners/deep-think/prompts.js.map +1 -0
  220. package/dist/agents/bee/runners/deep-think/runner.cjs +124 -0
  221. package/dist/agents/bee/runners/deep-think/runner.cjs.map +1 -0
  222. package/dist/agents/bee/runners/deep-think/runner.d.cts +166 -0
  223. package/dist/agents/bee/runners/deep-think/runner.d.ts +166 -0
  224. package/dist/agents/bee/runners/deep-think/runner.js +122 -0
  225. package/dist/agents/bee/runners/deep-think/runner.js.map +1 -0
  226. package/dist/agents/bee/runners/default/runner.cjs +416 -0
  227. package/dist/agents/bee/runners/default/runner.cjs.map +1 -0
  228. package/dist/agents/bee/runners/default/runner.d.cts +186 -0
  229. package/dist/agents/bee/runners/default/runner.d.ts +186 -0
  230. package/dist/agents/bee/runners/default/runner.js +414 -0
  231. package/dist/agents/bee/runners/default/runner.js.map +1 -0
  232. package/dist/agents/bee/runners/default/runner.spec.cjs +113 -0
  233. package/dist/agents/bee/runners/default/runner.spec.cjs.map +1 -0
  234. package/dist/agents/bee/runners/default/runner.spec.d.cts +2 -0
  235. package/dist/agents/bee/runners/default/runner.spec.d.ts +2 -0
  236. package/dist/agents/bee/runners/default/runner.spec.js +111 -0
  237. package/dist/agents/bee/runners/default/runner.spec.js.map +1 -0
  238. package/dist/agents/bee/runners/granite/prompts.cjs +94 -0
  239. package/dist/agents/bee/runners/granite/prompts.cjs.map +1 -0
  240. package/dist/agents/bee/runners/granite/prompts.d.cts +145 -0
  241. package/dist/agents/bee/runners/granite/prompts.d.ts +145 -0
  242. package/dist/agents/bee/runners/granite/prompts.js +86 -0
  243. package/dist/agents/bee/runners/granite/prompts.js.map +1 -0
  244. package/dist/agents/bee/runners/granite/runner.cjs +102 -0
  245. package/dist/agents/bee/runners/granite/runner.cjs.map +1 -0
  246. package/dist/agents/bee/runners/granite/runner.d.cts +167 -0
  247. package/dist/agents/bee/runners/granite/runner.d.ts +167 -0
  248. package/dist/agents/bee/runners/granite/runner.js +100 -0
  249. package/dist/agents/bee/runners/granite/runner.js.map +1 -0
  250. package/dist/agents/bee/types.cjs +4 -0
  251. package/dist/agents/bee/types.cjs.map +1 -0
  252. package/dist/agents/bee/types.d.cts +164 -0
  253. package/dist/agents/bee/types.d.ts +164 -0
  254. package/dist/agents/bee/types.js +3 -0
  255. package/dist/agents/bee/types.js.map +1 -0
  256. package/dist/agents/experimental/replan/agent.cjs +119 -0
  257. package/dist/agents/experimental/replan/agent.cjs.map +1 -0
  258. package/dist/agents/experimental/replan/agent.d.cts +96 -0
  259. package/dist/agents/experimental/replan/agent.d.ts +96 -0
  260. package/dist/agents/experimental/replan/agent.js +117 -0
  261. package/dist/agents/experimental/replan/agent.js.map +1 -0
  262. package/dist/agents/experimental/replan/prompts.cjs +89 -0
  263. package/dist/agents/experimental/replan/prompts.cjs.map +1 -0
  264. package/dist/agents/experimental/replan/prompts.d.cts +153 -0
  265. package/dist/agents/experimental/replan/prompts.d.ts +153 -0
  266. package/dist/agents/experimental/replan/prompts.js +85 -0
  267. package/dist/agents/experimental/replan/prompts.js.map +1 -0
  268. package/dist/agents/experimental/streamlit/agent.cjs +161 -0
  269. package/dist/agents/experimental/streamlit/agent.cjs.map +1 -0
  270. package/dist/agents/experimental/streamlit/agent.d.cts +95 -0
  271. package/dist/agents/experimental/streamlit/agent.d.ts +95 -0
  272. package/dist/agents/experimental/streamlit/agent.js +159 -0
  273. package/dist/agents/experimental/streamlit/agent.js.map +1 -0
  274. package/dist/agents/experimental/streamlit/prompts.cjs +312 -0
  275. package/dist/agents/experimental/streamlit/prompts.cjs.map +1 -0
  276. package/dist/agents/experimental/streamlit/prompts.d.cts +30 -0
  277. package/dist/agents/experimental/streamlit/prompts.d.ts +30 -0
  278. package/dist/agents/experimental/streamlit/prompts.js +310 -0
  279. package/dist/agents/experimental/streamlit/prompts.js.map +1 -0
  280. package/dist/agents/types.cjs +4 -0
  281. package/dist/agents/types.cjs.map +1 -0
  282. package/dist/agents/types.d.cts +18 -0
  283. package/dist/agents/types.d.ts +18 -0
  284. package/dist/agents/types.js +3 -0
  285. package/dist/agents/types.js.map +1 -0
  286. package/dist/backend/backend.cjs +45 -0
  287. package/dist/backend/backend.cjs.map +1 -0
  288. package/dist/backend/backend.d.cts +56 -0
  289. package/dist/backend/backend.d.ts +56 -0
  290. package/dist/backend/backend.js +43 -0
  291. package/dist/backend/backend.js.map +1 -0
  292. package/dist/backend/chat.cjs +270 -0
  293. package/dist/backend/chat.cjs.map +1 -0
  294. package/dist/backend/chat.d.cts +141 -0
  295. package/dist/backend/chat.d.ts +141 -0
  296. package/dist/backend/chat.js +267 -0
  297. package/dist/backend/chat.js.map +1 -0
  298. package/dist/backend/client.cjs +40 -0
  299. package/dist/backend/client.cjs.map +1 -0
  300. package/dist/backend/client.d.cts +33 -0
  301. package/dist/backend/client.d.ts +33 -0
  302. package/dist/backend/client.js +38 -0
  303. package/dist/backend/client.js.map +1 -0
  304. package/dist/backend/constants.cjs +62 -0
  305. package/dist/backend/constants.cjs.map +1 -0
  306. package/dist/backend/constants.d.cts +62 -0
  307. package/dist/backend/constants.d.ts +62 -0
  308. package/dist/backend/constants.js +60 -0
  309. package/dist/backend/constants.js.map +1 -0
  310. package/dist/backend/core.cjs +42 -0
  311. package/dist/backend/core.cjs.map +1 -0
  312. package/dist/backend/core.d.cts +23 -0
  313. package/dist/backend/core.d.ts +23 -0
  314. package/dist/backend/core.js +7 -0
  315. package/dist/backend/core.js.map +1 -0
  316. package/dist/backend/embedding.cjs +70 -0
  317. package/dist/backend/embedding.cjs.map +1 -0
  318. package/dist/backend/embedding.d.cts +50 -0
  319. package/dist/backend/embedding.d.ts +50 -0
  320. package/dist/backend/embedding.js +68 -0
  321. package/dist/backend/embedding.js.map +1 -0
  322. package/dist/backend/errors.cjs +27 -0
  323. package/dist/backend/errors.cjs.map +1 -0
  324. package/dist/backend/errors.d.cts +28 -0
  325. package/dist/backend/errors.d.ts +28 -0
  326. package/dist/backend/errors.js +23 -0
  327. package/dist/backend/errors.js.map +1 -0
  328. package/dist/backend/message.cjs +201 -0
  329. package/dist/backend/message.cjs.map +1 -0
  330. package/dist/backend/message.d.cts +85 -0
  331. package/dist/backend/message.d.ts +85 -0
  332. package/dist/backend/message.js +193 -0
  333. package/dist/backend/message.js.map +1 -0
  334. package/dist/backend/utils.cjs +39 -0
  335. package/dist/backend/utils.cjs.map +1 -0
  336. package/dist/backend/utils.d.cts +29 -0
  337. package/dist/backend/utils.d.ts +29 -0
  338. package/dist/backend/utils.js +36 -0
  339. package/dist/backend/utils.js.map +1 -0
  340. package/dist/base-Csr9guq2.d.cts +66 -0
  341. package/dist/base-DHhpWHQm.d.ts +66 -0
  342. package/dist/cache/base.cjs +16 -0
  343. package/dist/cache/base.cjs.map +1 -0
  344. package/dist/cache/base.d.cts +31 -0
  345. package/dist/cache/base.d.ts +31 -0
  346. package/dist/cache/base.js +14 -0
  347. package/dist/cache/base.js.map +1 -0
  348. package/dist/cache/decoratorCache.cjs +289 -0
  349. package/dist/cache/decoratorCache.cjs.map +1 -0
  350. package/dist/cache/decoratorCache.d.cts +66 -0
  351. package/dist/cache/decoratorCache.d.ts +66 -0
  352. package/dist/cache/decoratorCache.js +259 -0
  353. package/dist/cache/decoratorCache.js.map +1 -0
  354. package/dist/cache/fileCache.cjs +121 -0
  355. package/dist/cache/fileCache.cjs.map +1 -0
  356. package/dist/cache/fileCache.d.cts +48 -0
  357. package/dist/cache/fileCache.d.ts +48 -0
  358. package/dist/cache/fileCache.js +115 -0
  359. package/dist/cache/fileCache.js.map +1 -0
  360. package/dist/cache/nullCache.cjs +40 -0
  361. package/dist/cache/nullCache.cjs.map +1 -0
  362. package/dist/cache/nullCache.d.cts +36 -0
  363. package/dist/cache/nullCache.d.ts +36 -0
  364. package/dist/cache/nullCache.js +38 -0
  365. package/dist/cache/nullCache.js.map +1 -0
  366. package/dist/cache/slidingCache.cjs +81 -0
  367. package/dist/cache/slidingCache.cjs.map +1 -0
  368. package/dist/cache/slidingCache.d.cts +53 -0
  369. package/dist/cache/slidingCache.d.ts +53 -0
  370. package/dist/cache/slidingCache.js +79 -0
  371. package/dist/cache/slidingCache.js.map +1 -0
  372. package/dist/cache/unconstrainedCache.cjs +46 -0
  373. package/dist/cache/unconstrainedCache.cjs.map +1 -0
  374. package/dist/cache/unconstrainedCache.d.cts +37 -0
  375. package/dist/cache/unconstrainedCache.d.ts +37 -0
  376. package/dist/cache/unconstrainedCache.js +44 -0
  377. package/dist/cache/unconstrainedCache.js.map +1 -0
  378. package/dist/context.cjs +162 -0
  379. package/dist/context.cjs.map +1 -0
  380. package/dist/context.d.cts +79 -0
  381. package/dist/context.d.ts +79 -0
  382. package/dist/context.js +159 -0
  383. package/dist/context.js.map +1 -0
  384. package/dist/emitter/emitter.cjs +222 -0
  385. package/dist/emitter/emitter.cjs.map +1 -0
  386. package/dist/emitter/emitter.d.cts +4 -0
  387. package/dist/emitter/emitter.d.ts +4 -0
  388. package/dist/emitter/emitter.js +220 -0
  389. package/dist/emitter/emitter.js.map +1 -0
  390. package/dist/emitter/errors.cjs +15 -0
  391. package/dist/emitter/errors.cjs.map +1 -0
  392. package/dist/emitter/errors.d.cts +24 -0
  393. package/dist/emitter/errors.d.ts +24 -0
  394. package/dist/emitter/errors.js +13 -0
  395. package/dist/emitter/errors.js.map +1 -0
  396. package/dist/emitter/types.cjs +4 -0
  397. package/dist/emitter/types.cjs.map +1 -0
  398. package/dist/emitter/types.d.cts +4 -0
  399. package/dist/emitter/types.d.ts +4 -0
  400. package/dist/emitter/types.js +3 -0
  401. package/dist/emitter/types.js.map +1 -0
  402. package/dist/emitter/utils.cjs +38 -0
  403. package/dist/emitter/utils.cjs.map +1 -0
  404. package/dist/emitter/utils.d.cts +21 -0
  405. package/dist/emitter/utils.d.ts +21 -0
  406. package/dist/emitter/utils.js +33 -0
  407. package/dist/emitter/utils.js.map +1 -0
  408. package/dist/emitter-BWtGHYn0.d.cts +121 -0
  409. package/dist/emitter-l0W9gC1A.d.ts +121 -0
  410. package/dist/errors.cjs +144 -0
  411. package/dist/errors.cjs.map +1 -0
  412. package/dist/errors.d.cts +50 -0
  413. package/dist/errors.d.ts +50 -0
  414. package/dist/errors.js +116 -0
  415. package/dist/errors.js.map +1 -0
  416. package/dist/index.cjs +49 -0
  417. package/dist/index.cjs.map +1 -0
  418. package/dist/index.d.cts +23 -0
  419. package/dist/index.d.ts +23 -0
  420. package/dist/index.js +8 -0
  421. package/dist/index.js.map +1 -0
  422. package/dist/instrumentation/config.cjs +12 -0
  423. package/dist/instrumentation/config.cjs.map +1 -0
  424. package/dist/instrumentation/config.d.cts +19 -0
  425. package/dist/instrumentation/config.d.ts +19 -0
  426. package/dist/instrumentation/config.js +9 -0
  427. package/dist/instrumentation/config.js.map +1 -0
  428. package/dist/instrumentation/create-telemetry-middleware.cjs +239 -0
  429. package/dist/instrumentation/create-telemetry-middleware.cjs.map +1 -0
  430. package/dist/instrumentation/create-telemetry-middleware.d.cts +26 -0
  431. package/dist/instrumentation/create-telemetry-middleware.d.ts +26 -0
  432. package/dist/instrumentation/create-telemetry-middleware.js +237 -0
  433. package/dist/instrumentation/create-telemetry-middleware.js.map +1 -0
  434. package/dist/instrumentation/helpers/create-span.cjs +36 -0
  435. package/dist/instrumentation/helpers/create-span.cjs.map +1 -0
  436. package/dist/instrumentation/helpers/create-span.d.cts +34 -0
  437. package/dist/instrumentation/helpers/create-span.d.ts +34 -0
  438. package/dist/instrumentation/helpers/create-span.js +34 -0
  439. package/dist/instrumentation/helpers/create-span.js.map +1 -0
  440. package/dist/instrumentation/helpers/get-error-safe.cjs +20 -0
  441. package/dist/instrumentation/helpers/get-error-safe.cjs.map +1 -0
  442. package/dist/instrumentation/helpers/get-error-safe.d.cts +18 -0
  443. package/dist/instrumentation/helpers/get-error-safe.d.ts +18 -0
  444. package/dist/instrumentation/helpers/get-error-safe.js +18 -0
  445. package/dist/instrumentation/helpers/get-error-safe.js.map +1 -0
  446. package/dist/instrumentation/helpers/get-serialized-object-safe.cjs +27 -0
  447. package/dist/instrumentation/helpers/get-serialized-object-safe.cjs.map +1 -0
  448. package/dist/instrumentation/helpers/get-serialized-object-safe.d.cts +18 -0
  449. package/dist/instrumentation/helpers/get-serialized-object-safe.d.ts +18 -0
  450. package/dist/instrumentation/helpers/get-serialized-object-safe.js +25 -0
  451. package/dist/instrumentation/helpers/get-serialized-object-safe.js.map +1 -0
  452. package/dist/instrumentation/helpers/id-name-manager.cjs +34 -0
  453. package/dist/instrumentation/helpers/id-name-manager.cjs.map +1 -0
  454. package/dist/instrumentation/helpers/id-name-manager.d.cts +31 -0
  455. package/dist/instrumentation/helpers/id-name-manager.d.ts +31 -0
  456. package/dist/instrumentation/helpers/id-name-manager.js +32 -0
  457. package/dist/instrumentation/helpers/id-name-manager.js.map +1 -0
  458. package/dist/instrumentation/helpers/trace-serializer.cjs +30 -0
  459. package/dist/instrumentation/helpers/trace-serializer.cjs.map +1 -0
  460. package/dist/instrumentation/helpers/trace-serializer.d.cts +20 -0
  461. package/dist/instrumentation/helpers/trace-serializer.d.ts +20 -0
  462. package/dist/instrumentation/helpers/trace-serializer.js +28 -0
  463. package/dist/instrumentation/helpers/trace-serializer.js.map +1 -0
  464. package/dist/instrumentation/helpers/utils.cjs +14 -0
  465. package/dist/instrumentation/helpers/utils.cjs.map +1 -0
  466. package/dist/instrumentation/helpers/utils.d.cts +40 -0
  467. package/dist/instrumentation/helpers/utils.d.ts +40 -0
  468. package/dist/instrumentation/helpers/utils.js +12 -0
  469. package/dist/instrumentation/helpers/utils.js.map +1 -0
  470. package/dist/instrumentation/logger.cjs +12 -0
  471. package/dist/instrumentation/logger.cjs.map +1 -0
  472. package/dist/instrumentation/logger.d.cts +26 -0
  473. package/dist/instrumentation/logger.d.ts +26 -0
  474. package/dist/instrumentation/logger.js +10 -0
  475. package/dist/instrumentation/logger.js.map +1 -0
  476. package/dist/instrumentation/tracer.cjs +84 -0
  477. package/dist/instrumentation/tracer.cjs.map +1 -0
  478. package/dist/instrumentation/tracer.d.cts +36 -0
  479. package/dist/instrumentation/tracer.d.ts +36 -0
  480. package/dist/instrumentation/tracer.js +76 -0
  481. package/dist/instrumentation/tracer.js.map +1 -0
  482. package/dist/instrumentation/types.cjs +4 -0
  483. package/dist/instrumentation/types.cjs.map +1 -0
  484. package/dist/instrumentation/types.d.cts +39 -0
  485. package/dist/instrumentation/types.d.ts +39 -0
  486. package/dist/instrumentation/types.js +3 -0
  487. package/dist/instrumentation/types.js.map +1 -0
  488. package/dist/internals/env.cjs +43 -0
  489. package/dist/internals/env.cjs.map +1 -0
  490. package/dist/internals/env.d.cts +27 -0
  491. package/dist/internals/env.d.ts +27 -0
  492. package/dist/internals/env.js +39 -0
  493. package/dist/internals/env.js.map +1 -0
  494. package/dist/internals/fetcher.cjs +189 -0
  495. package/dist/internals/fetcher.cjs.map +1 -0
  496. package/dist/internals/fetcher.d.cts +101 -0
  497. package/dist/internals/fetcher.d.ts +101 -0
  498. package/dist/internals/fetcher.js +185 -0
  499. package/dist/internals/fetcher.js.map +1 -0
  500. package/dist/internals/helpers/array.cjs +30 -0
  501. package/dist/internals/helpers/array.cjs.map +1 -0
  502. package/dist/internals/helpers/array.d.cts +21 -0
  503. package/dist/internals/helpers/array.d.ts +21 -0
  504. package/dist/internals/helpers/array.js +26 -0
  505. package/dist/internals/helpers/array.js.map +1 -0
  506. package/dist/internals/helpers/cancellation.cjs +29 -0
  507. package/dist/internals/helpers/cancellation.cjs.map +1 -0
  508. package/dist/internals/helpers/cancellation.d.cts +19 -0
  509. package/dist/internals/helpers/cancellation.d.ts +19 -0
  510. package/dist/internals/helpers/cancellation.js +26 -0
  511. package/dist/internals/helpers/cancellation.js.map +1 -0
  512. package/dist/internals/helpers/counter.cjs +53 -0
  513. package/dist/internals/helpers/counter.cjs.map +1 -0
  514. package/dist/internals/helpers/counter.d.cts +40 -0
  515. package/dist/internals/helpers/counter.d.ts +40 -0
  516. package/dist/internals/helpers/counter.js +51 -0
  517. package/dist/internals/helpers/counter.js.map +1 -0
  518. package/dist/internals/helpers/general.cjs +31 -0
  519. package/dist/internals/helpers/general.cjs.map +1 -0
  520. package/dist/internals/helpers/general.d.cts +25 -0
  521. package/dist/internals/helpers/general.d.ts +25 -0
  522. package/dist/internals/helpers/general.js +28 -0
  523. package/dist/internals/helpers/general.js.map +1 -0
  524. package/dist/internals/helpers/guards.cjs +34 -0
  525. package/dist/internals/helpers/guards.cjs.map +1 -0
  526. package/dist/internals/helpers/guards.d.cts +19 -0
  527. package/dist/internals/helpers/guards.d.ts +19 -0
  528. package/dist/internals/helpers/guards.js +12 -0
  529. package/dist/internals/helpers/guards.js.map +1 -0
  530. package/dist/internals/helpers/hash.cjs +21 -0
  531. package/dist/internals/helpers/hash.cjs.map +1 -0
  532. package/dist/internals/helpers/hash.d.cts +19 -0
  533. package/dist/internals/helpers/hash.d.ts +19 -0
  534. package/dist/internals/helpers/hash.js +18 -0
  535. package/dist/internals/helpers/hash.js.map +1 -0
  536. package/dist/internals/helpers/map.cjs +16 -0
  537. package/dist/internals/helpers/map.cjs.map +1 -0
  538. package/dist/internals/helpers/map.d.cts +18 -0
  539. package/dist/internals/helpers/map.d.ts +18 -0
  540. package/dist/internals/helpers/map.js +14 -0
  541. package/dist/internals/helpers/map.js.map +1 -0
  542. package/dist/internals/helpers/math.cjs +31 -0
  543. package/dist/internals/helpers/math.cjs.map +1 -0
  544. package/dist/internals/helpers/math.d.cts +19 -0
  545. package/dist/internals/helpers/math.d.ts +19 -0
  546. package/dist/internals/helpers/math.js +28 -0
  547. package/dist/internals/helpers/math.js.map +1 -0
  548. package/dist/internals/helpers/number.cjs +48 -0
  549. package/dist/internals/helpers/number.cjs.map +1 -0
  550. package/dist/internals/helpers/number.d.cts +23 -0
  551. package/dist/internals/helpers/number.d.ts +23 -0
  552. package/dist/internals/helpers/number.js +24 -0
  553. package/dist/internals/helpers/number.js.map +1 -0
  554. package/dist/internals/helpers/object.cjs +142 -0
  555. package/dist/internals/helpers/object.cjs.map +1 -0
  556. package/dist/internals/helpers/object.d.cts +35 -0
  557. package/dist/internals/helpers/object.d.ts +35 -0
  558. package/dist/internals/helpers/object.js +108 -0
  559. package/dist/internals/helpers/object.js.map +1 -0
  560. package/dist/internals/helpers/paginate.cjs +28 -0
  561. package/dist/internals/helpers/paginate.cjs.map +1 -0
  562. package/dist/internals/helpers/paginate.d.cts +28 -0
  563. package/dist/internals/helpers/paginate.d.ts +28 -0
  564. package/dist/internals/helpers/paginate.js +26 -0
  565. package/dist/internals/helpers/paginate.js.map +1 -0
  566. package/dist/internals/helpers/promise.cjs +143 -0
  567. package/dist/internals/helpers/promise.cjs.map +1 -0
  568. package/dist/internals/helpers/promise.d.cts +45 -0
  569. package/dist/internals/helpers/promise.d.ts +45 -0
  570. package/dist/internals/helpers/promise.js +132 -0
  571. package/dist/internals/helpers/promise.js.map +1 -0
  572. package/dist/internals/helpers/prototype.cjs +56 -0
  573. package/dist/internals/helpers/prototype.cjs.map +1 -0
  574. package/dist/internals/helpers/prototype.d.cts +24 -0
  575. package/dist/internals/helpers/prototype.d.ts +24 -0
  576. package/dist/internals/helpers/prototype.js +32 -0
  577. package/dist/internals/helpers/prototype.js.map +1 -0
  578. package/dist/internals/helpers/retry.cjs +44 -0
  579. package/dist/internals/helpers/retry.cjs.map +1 -0
  580. package/dist/internals/helpers/retry.d.cts +29 -0
  581. package/dist/internals/helpers/retry.d.ts +29 -0
  582. package/dist/internals/helpers/retry.js +42 -0
  583. package/dist/internals/helpers/retry.js.map +1 -0
  584. package/dist/internals/helpers/retryable.cjs +169 -0
  585. package/dist/internals/helpers/retryable.cjs.map +1 -0
  586. package/dist/internals/helpers/retryable.d.cts +71 -0
  587. package/dist/internals/helpers/retryable.d.ts +71 -0
  588. package/dist/internals/helpers/retryable.js +146 -0
  589. package/dist/internals/helpers/retryable.js.map +1 -0
  590. package/dist/internals/helpers/schema.cjs +78 -0
  591. package/dist/internals/helpers/schema.cjs.map +1 -0
  592. package/dist/internals/helpers/schema.d.cts +36 -0
  593. package/dist/internals/helpers/schema.d.ts +36 -0
  594. package/dist/internals/helpers/schema.js +69 -0
  595. package/dist/internals/helpers/schema.js.map +1 -0
  596. package/dist/internals/helpers/stream.cjs +21 -0
  597. package/dist/internals/helpers/stream.cjs.map +1 -0
  598. package/dist/internals/helpers/stream.d.cts +19 -0
  599. package/dist/internals/helpers/stream.d.ts +19 -0
  600. package/dist/internals/helpers/stream.js +18 -0
  601. package/dist/internals/helpers/stream.js.map +1 -0
  602. package/dist/internals/helpers/string.cjs +230 -0
  603. package/dist/internals/helpers/string.cjs.map +1 -0
  604. package/dist/internals/helpers/string.d.cts +57 -0
  605. package/dist/internals/helpers/string.d.ts +57 -0
  606. package/dist/internals/helpers/string.js +201 -0
  607. package/dist/internals/helpers/string.js.map +1 -0
  608. package/dist/internals/helpers/weakRef.cjs +65 -0
  609. package/dist/internals/helpers/weakRef.cjs.map +1 -0
  610. package/dist/internals/helpers/weakRef.d.cts +29 -0
  611. package/dist/internals/helpers/weakRef.d.ts +29 -0
  612. package/dist/internals/helpers/weakRef.js +61 -0
  613. package/dist/internals/helpers/weakRef.js.map +1 -0
  614. package/dist/internals/serializable.cjs +63 -0
  615. package/dist/internals/serializable.cjs.map +1 -0
  616. package/dist/internals/serializable.d.cts +36 -0
  617. package/dist/internals/serializable.d.ts +36 -0
  618. package/dist/internals/serializable.js +61 -0
  619. package/dist/internals/serializable.js.map +1 -0
  620. package/dist/internals/types.cjs +15 -0
  621. package/dist/internals/types.cjs.map +1 -0
  622. package/dist/internals/types.d.cts +92 -0
  623. package/dist/internals/types.d.ts +92 -0
  624. package/dist/internals/types.js +13 -0
  625. package/dist/internals/types.js.map +1 -0
  626. package/dist/logger/logger.cjs +210 -0
  627. package/dist/logger/logger.cjs.map +1 -0
  628. package/dist/logger/logger.d.cts +48 -0
  629. package/dist/logger/logger.d.ts +48 -0
  630. package/dist/logger/logger.js +181 -0
  631. package/dist/logger/logger.js.map +1 -0
  632. package/dist/logger/pretty.cjs +79 -0
  633. package/dist/logger/pretty.cjs.map +1 -0
  634. package/dist/logger/pretty.d.cts +5 -0
  635. package/dist/logger/pretty.d.ts +5 -0
  636. package/dist/logger/pretty.js +72 -0
  637. package/dist/logger/pretty.js.map +1 -0
  638. package/dist/memory/base.cjs +98 -0
  639. package/dist/memory/base.cjs.map +1 -0
  640. package/dist/memory/base.d.cts +44 -0
  641. package/dist/memory/base.d.ts +44 -0
  642. package/dist/memory/base.js +93 -0
  643. package/dist/memory/base.js.map +1 -0
  644. package/dist/memory/slidingMemory.cjs +79 -0
  645. package/dist/memory/slidingMemory.cjs.map +1 -0
  646. package/dist/memory/slidingMemory.d.cts +30 -0
  647. package/dist/memory/slidingMemory.d.ts +30 -0
  648. package/dist/memory/slidingMemory.js +77 -0
  649. package/dist/memory/slidingMemory.js.map +1 -0
  650. package/dist/memory/summarizeMemory.cjs +82 -0
  651. package/dist/memory/summarizeMemory.cjs.map +1 -0
  652. package/dist/memory/summarizeMemory.d.cts +65 -0
  653. package/dist/memory/summarizeMemory.d.ts +65 -0
  654. package/dist/memory/summarizeMemory.js +79 -0
  655. package/dist/memory/summarizeMemory.js.map +1 -0
  656. package/dist/memory/tokenMemory.cjs +154 -0
  657. package/dist/memory/tokenMemory.cjs.map +1 -0
  658. package/dist/memory/tokenMemory.d.cts +55 -0
  659. package/dist/memory/tokenMemory.d.ts +55 -0
  660. package/dist/memory/tokenMemory.js +133 -0
  661. package/dist/memory/tokenMemory.js.map +1 -0
  662. package/dist/memory/unconstrainedMemory.cjs +43 -0
  663. package/dist/memory/unconstrainedMemory.cjs.map +1 -0
  664. package/dist/memory/unconstrainedMemory.d.cts +20 -0
  665. package/dist/memory/unconstrainedMemory.d.ts +20 -0
  666. package/dist/memory/unconstrainedMemory.js +41 -0
  667. package/dist/memory/unconstrainedMemory.js.map +1 -0
  668. package/dist/parsers/errors.cjs +32 -0
  669. package/dist/parsers/errors.cjs.map +1 -0
  670. package/dist/parsers/errors.d.cts +46 -0
  671. package/dist/parsers/errors.d.ts +46 -0
  672. package/dist/parsers/errors.js +30 -0
  673. package/dist/parsers/errors.js.map +1 -0
  674. package/dist/parsers/field.cjs +192 -0
  675. package/dist/parsers/field.cjs.map +1 -0
  676. package/dist/parsers/field.d.cts +68 -0
  677. package/dist/parsers/field.d.ts +68 -0
  678. package/dist/parsers/field.js +188 -0
  679. package/dist/parsers/field.js.map +1 -0
  680. package/dist/parsers/linePrefix.cjs +312 -0
  681. package/dist/parsers/linePrefix.cjs.map +1 -0
  682. package/dist/parsers/linePrefix.d.cts +127 -0
  683. package/dist/parsers/linePrefix.d.ts +127 -0
  684. package/dist/parsers/linePrefix.js +305 -0
  685. package/dist/parsers/linePrefix.js.map +1 -0
  686. package/dist/serializer/error.cjs +21 -0
  687. package/dist/serializer/error.cjs.map +1 -0
  688. package/dist/serializer/error.d.cts +25 -0
  689. package/dist/serializer/error.d.ts +25 -0
  690. package/dist/serializer/error.js +19 -0
  691. package/dist/serializer/error.js.map +1 -0
  692. package/dist/serializer/serializer.cjs +543 -0
  693. package/dist/serializer/serializer.cjs.map +1 -0
  694. package/dist/serializer/serializer.d.cts +4 -0
  695. package/dist/serializer/serializer.d.ts +4 -0
  696. package/dist/serializer/serializer.js +521 -0
  697. package/dist/serializer/serializer.js.map +1 -0
  698. package/dist/serializer/utils.cjs +261 -0
  699. package/dist/serializer/utils.cjs.map +1 -0
  700. package/dist/serializer/utils.d.cts +4 -0
  701. package/dist/serializer/utils.d.ts +4 -0
  702. package/dist/serializer/utils.js +226 -0
  703. package/dist/serializer/utils.js.map +1 -0
  704. package/dist/serializer-CJx5ZpUx.d.cts +125 -0
  705. package/dist/serializer-VYDhdryk.d.ts +125 -0
  706. package/dist/template.cjs +121 -0
  707. package/dist/template.cjs.map +1 -0
  708. package/dist/template.d.cts +75 -0
  709. package/dist/template.d.ts +75 -0
  710. package/dist/template.js +113 -0
  711. package/dist/template.js.map +1 -0
  712. package/dist/tools/arxiv.cjs +212 -0
  713. package/dist/tools/arxiv.cjs.map +1 -0
  714. package/dist/tools/arxiv.d.cts +196 -0
  715. package/dist/tools/arxiv.d.ts +196 -0
  716. package/dist/tools/arxiv.js +205 -0
  717. package/dist/tools/arxiv.js.map +1 -0
  718. package/dist/tools/base.cjs +434 -0
  719. package/dist/tools/base.cjs.map +1 -0
  720. package/dist/tools/base.d.cts +156 -0
  721. package/dist/tools/base.d.ts +156 -0
  722. package/dist/tools/base.js +407 -0
  723. package/dist/tools/base.js.map +1 -0
  724. package/dist/tools/calculator.cjs +74 -0
  725. package/dist/tools/calculator.cjs.map +1 -0
  726. package/dist/tools/calculator.d.cts +63 -0
  727. package/dist/tools/calculator.d.ts +63 -0
  728. package/dist/tools/calculator.js +72 -0
  729. package/dist/tools/calculator.js.map +1 -0
  730. package/dist/tools/custom.cjs +122 -0
  731. package/dist/tools/custom.cjs.map +1 -0
  732. package/dist/tools/custom.d.cts +110 -0
  733. package/dist/tools/custom.d.ts +110 -0
  734. package/dist/tools/custom.js +118 -0
  735. package/dist/tools/custom.js.map +1 -0
  736. package/dist/tools/database/elasticsearch.cjs +157 -0
  737. package/dist/tools/database/elasticsearch.cjs.map +1 -0
  738. package/dist/tools/database/elasticsearch.d.cts +78 -0
  739. package/dist/tools/database/elasticsearch.d.ts +78 -0
  740. package/dist/tools/database/elasticsearch.js +154 -0
  741. package/dist/tools/database/elasticsearch.js.map +1 -0
  742. package/dist/tools/database/metadata.cjs +114 -0
  743. package/dist/tools/database/metadata.cjs.map +1 -0
  744. package/dist/tools/database/metadata.d.cts +27 -0
  745. package/dist/tools/database/metadata.d.ts +27 -0
  746. package/dist/tools/database/metadata.js +112 -0
  747. package/dist/tools/database/metadata.js.map +1 -0
  748. package/dist/tools/database/milvus.cjs +191 -0
  749. package/dist/tools/database/milvus.cjs.map +1 -0
  750. package/dist/tools/database/milvus.d.cts +89 -0
  751. package/dist/tools/database/milvus.d.ts +89 -0
  752. package/dist/tools/database/milvus.js +188 -0
  753. package/dist/tools/database/milvus.js.map +1 -0
  754. package/dist/tools/database/sql.cjs +174 -0
  755. package/dist/tools/database/sql.cjs.map +1 -0
  756. package/dist/tools/database/sql.d.cts +71 -0
  757. package/dist/tools/database/sql.d.ts +71 -0
  758. package/dist/tools/database/sql.js +170 -0
  759. package/dist/tools/database/sql.js.map +1 -0
  760. package/dist/tools/llm.cjs +74 -0
  761. package/dist/tools/llm.cjs.map +1 -0
  762. package/dist/tools/llm.d.cts +68 -0
  763. package/dist/tools/llm.d.ts +68 -0
  764. package/dist/tools/llm.js +72 -0
  765. package/dist/tools/llm.js.map +1 -0
  766. package/dist/tools/mcp.cjs +73 -0
  767. package/dist/tools/mcp.cjs.map +1 -0
  768. package/dist/tools/mcp.d.cts +52 -0
  769. package/dist/tools/mcp.d.ts +52 -0
  770. package/dist/tools/mcp.js +70 -0
  771. package/dist/tools/mcp.js.map +1 -0
  772. package/dist/tools/openapi.cjs +178 -0
  773. package/dist/tools/openapi.cjs.map +1 -0
  774. package/dist/tools/openapi.d.cts +59 -0
  775. package/dist/tools/openapi.d.ts +59 -0
  776. package/dist/tools/openapi.js +175 -0
  777. package/dist/tools/openapi.js.map +1 -0
  778. package/dist/tools/python/output.cjs +65 -0
  779. package/dist/tools/python/output.cjs.map +1 -0
  780. package/dist/tools/python/output.d.cts +52 -0
  781. package/dist/tools/python/output.d.ts +52 -0
  782. package/dist/tools/python/output.js +63 -0
  783. package/dist/tools/python/output.js.map +1 -0
  784. package/dist/tools/python/python.cjs +163 -0
  785. package/dist/tools/python/python.cjs.map +1 -0
  786. package/dist/tools/python/python.d.cts +91 -0
  787. package/dist/tools/python/python.d.ts +91 -0
  788. package/dist/tools/python/python.js +160 -0
  789. package/dist/tools/python/python.js.map +1 -0
  790. package/dist/tools/python/storage.cjs +170 -0
  791. package/dist/tools/python/storage.cjs.map +1 -0
  792. package/dist/tools/python/storage.d.cts +83 -0
  793. package/dist/tools/python/storage.d.ts +83 -0
  794. package/dist/tools/python/storage.js +142 -0
  795. package/dist/tools/python/storage.js.map +1 -0
  796. package/dist/tools/search/base.cjs +77 -0
  797. package/dist/tools/search/base.cjs.map +1 -0
  798. package/dist/tools/search/base.d.cts +49 -0
  799. package/dist/tools/search/base.d.ts +49 -0
  800. package/dist/tools/search/base.js +55 -0
  801. package/dist/tools/search/base.js.map +1 -0
  802. package/dist/tools/search/duckDuckGoSearch.cjs +146 -0
  803. package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -0
  804. package/dist/tools/search/duckDuckGoSearch.d.cts +75 -0
  805. package/dist/tools/search/duckDuckGoSearch.d.ts +75 -0
  806. package/dist/tools/search/duckDuckGoSearch.js +136 -0
  807. package/dist/tools/search/duckDuckGoSearch.js.map +1 -0
  808. package/dist/tools/search/googleSearch.cjs +155 -0
  809. package/dist/tools/search/googleSearch.cjs.map +1 -0
  810. package/dist/tools/search/googleSearch.d.cts +62 -0
  811. package/dist/tools/search/googleSearch.d.ts +62 -0
  812. package/dist/tools/search/googleSearch.js +152 -0
  813. package/dist/tools/search/googleSearch.js.map +1 -0
  814. package/dist/tools/search/searXNGSearch.cjs +86 -0
  815. package/dist/tools/search/searXNGSearch.cjs.map +1 -0
  816. package/dist/tools/search/searXNGSearch.d.cts +61 -0
  817. package/dist/tools/search/searXNGSearch.d.ts +61 -0
  818. package/dist/tools/search/searXNGSearch.js +83 -0
  819. package/dist/tools/search/searXNGSearch.js.map +1 -0
  820. package/dist/tools/search/wikipedia.cjs +338 -0
  821. package/dist/tools/search/wikipedia.cjs.map +1 -0
  822. package/dist/tools/search/wikipedia.d.cts +108 -0
  823. package/dist/tools/search/wikipedia.d.ts +108 -0
  824. package/dist/tools/search/wikipedia.js +310 -0
  825. package/dist/tools/search/wikipedia.js.map +1 -0
  826. package/dist/tools/similarity.cjs +61 -0
  827. package/dist/tools/similarity.cjs.map +1 -0
  828. package/dist/tools/similarity.d.cts +90 -0
  829. package/dist/tools/similarity.d.ts +90 -0
  830. package/dist/tools/similarity.js +58 -0
  831. package/dist/tools/similarity.js.map +1 -0
  832. package/dist/tools/weather/openMeteo.cjs +221 -0
  833. package/dist/tools/weather/openMeteo.cjs.map +1 -0
  834. package/dist/tools/weather/openMeteo.d.cts +123 -0
  835. package/dist/tools/weather/openMeteo.d.ts +123 -0
  836. package/dist/tools/weather/openMeteo.js +218 -0
  837. package/dist/tools/weather/openMeteo.js.map +1 -0
  838. package/dist/tools/web/webCrawler.cjs +111 -0
  839. package/dist/tools/web/webCrawler.cjs.map +1 -0
  840. package/dist/tools/web/webCrawler.d.cts +66 -0
  841. package/dist/tools/web/webCrawler.d.ts +66 -0
  842. package/dist/tools/web/webCrawler.js +108 -0
  843. package/dist/tools/web/webCrawler.js.map +1 -0
  844. package/dist/version.cjs +9 -0
  845. package/dist/version.cjs.map +1 -0
  846. package/dist/version.d.cts +18 -0
  847. package/dist/version.d.ts +18 -0
  848. package/dist/version.js +9 -0
  849. package/dist/version.js.map +1 -0
  850. package/dist/workflows/agent.cjs +95 -0
  851. package/dist/workflows/agent.cjs.map +1 -0
  852. package/dist/workflows/agent.d.cts +166 -0
  853. package/dist/workflows/agent.d.ts +166 -0
  854. package/dist/workflows/agent.js +93 -0
  855. package/dist/workflows/agent.js.map +1 -0
  856. package/dist/workflows/workflow.cjs +222 -0
  857. package/dist/workflows/workflow.cjs.map +1 -0
  858. package/dist/workflows/workflow.d.cts +118 -0
  859. package/dist/workflows/workflow.d.ts +118 -0
  860. package/dist/workflows/workflow.js +219 -0
  861. package/dist/workflows/workflow.js.map +1 -0
  862. package/package.json +339 -0
@@ -0,0 +1,175 @@
1
+ import { join } from 'path';
2
+ import { StringToolOutput, Tool, ToolError } from './base.js';
3
+ import { Emitter } from '../emitter/emitter.js';
4
+ import { ValueError } from '../errors.js';
5
+ import { parse } from 'yaml';
6
+ import { toCamelCase, isTruthy, isEmpty, clone } from 'remeda';
7
+
8
+ var __defProp = Object.defineProperty;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ class OpenAPIToolOutput extends StringToolOutput {
11
+ static {
12
+ __name(this, "OpenAPIToolOutput");
13
+ }
14
+ status;
15
+ statusText;
16
+ result;
17
+ constructor(status, statusText, result = "") {
18
+ super(), this.status = status, this.statusText = statusText, this.result = result;
19
+ this.status = status;
20
+ this.statusText = statusText;
21
+ this.result = result ?? "";
22
+ }
23
+ }
24
+ class OpenAPITool extends Tool {
25
+ static {
26
+ __name(this, "OpenAPITool");
27
+ }
28
+ name;
29
+ description;
30
+ url;
31
+ openApiSchema;
32
+ inputSchema() {
33
+ const getReferencedObject = /* @__PURE__ */ __name((json, refPath) => {
34
+ const pathSegments = refPath.split("/");
35
+ let currentObject = json;
36
+ for (const segment of pathSegments) {
37
+ if (segment === "#") {
38
+ continue;
39
+ }
40
+ currentObject = currentObject[segment];
41
+ }
42
+ return currentObject;
43
+ }, "getReferencedObject");
44
+ return {
45
+ type: "object",
46
+ required: [
47
+ "path",
48
+ "method"
49
+ ],
50
+ oneOf: Object.entries(this.openApiSchema.paths).flatMap(([path, pathSpec]) => Object.entries(pathSpec).map(([method, methodSpec]) => ({
51
+ additionalProperties: false,
52
+ properties: {
53
+ path: {
54
+ const: path,
55
+ description: "Do not replace variables in path, instead of, put them to the parameters object."
56
+ },
57
+ method: {
58
+ const: method,
59
+ description: methodSpec.summary || methodSpec.description
60
+ },
61
+ ...methodSpec.requestBody?.content?.["application/json"]?.schema ? {
62
+ body: methodSpec.requestBody?.content?.["application/json"]?.schema
63
+ } : {},
64
+ ...methodSpec.parameters ? {
65
+ parameters: {
66
+ type: "object",
67
+ additionalProperties: false,
68
+ required: methodSpec.parameters.filter((p) => p.required === true).map((p) => p.name),
69
+ properties: methodSpec.parameters.reduce((acc, p) => !p.$ref ? {
70
+ ...acc,
71
+ [p.name]: {
72
+ ...p.schema,
73
+ description: p.name
74
+ }
75
+ } : {
76
+ ...acc,
77
+ [getReferencedObject(this.openApiSchema, p.$ref)?.name]: {
78
+ ...getReferencedObject(this.openApiSchema, p.$ref)?.schema,
79
+ description: getReferencedObject(this.openApiSchema, p.$ref)?.name
80
+ }
81
+ }, {})
82
+ }
83
+ } : {}
84
+ }
85
+ })))
86
+ };
87
+ }
88
+ emitter;
89
+ static {
90
+ this.register();
91
+ }
92
+ constructor(options) {
93
+ super(options);
94
+ this.openApiSchema = parse(options.openApiSchema);
95
+ this.url = this.options.url || this.openApiSchema.servers?.find((s) => s?.url)?.url;
96
+ if (!this.url) {
97
+ throw new ValueError("OpenAPI schema hasn't any server with url specified. Pass it manually.");
98
+ }
99
+ this.name = options.name ?? this.openApiSchema?.info?.title?.trim();
100
+ if (!this.name) {
101
+ throw new ValueError("OpenAPI schema hasn't 'name' specified. Pass it manually.");
102
+ }
103
+ this.emitter = Emitter.root.child({
104
+ namespace: [
105
+ "tool",
106
+ "web",
107
+ "openAPI",
108
+ toCamelCase(this.name)
109
+ ],
110
+ creator: this
111
+ });
112
+ this.description = options.description || this.openApiSchema?.info?.description || "Performs REST API requests to the servers and retrieves the response. The server API interfaces are defined in OpenAPI schema. \nOnly use the OpenAPI tool if you need to communicate to external servers.";
113
+ if (!this.description) {
114
+ throw new ValueError("OpenAPI schema hasn't 'description' specified. Pass it manually.");
115
+ }
116
+ }
117
+ async _run(input, _options, run) {
118
+ let path = input.path || "";
119
+ const url = new URL(this.url);
120
+ Object.keys(input.parameters ?? {}).forEach((key) => {
121
+ const value = input.parameters[key];
122
+ const newPath = path.replace(`{${key}}`, value);
123
+ if (newPath == path) {
124
+ url.searchParams.append(key, value);
125
+ } else {
126
+ path = newPath;
127
+ }
128
+ });
129
+ url.pathname = join(url.pathname, path);
130
+ const options = {
131
+ ...this.options.fetchOptions,
132
+ signal: AbortSignal.any([
133
+ run.signal,
134
+ this.options.fetchOptions?.signal
135
+ ].filter(isTruthy)),
136
+ body: !isEmpty(input.body) ? input.body : void 0,
137
+ method: input.method.toLowerCase(),
138
+ headers: {
139
+ Accept: "application/json",
140
+ ...this.options.fetchOptions?.headers
141
+ }
142
+ };
143
+ await run.emitter.emit("beforeFetch", {
144
+ options,
145
+ url
146
+ });
147
+ try {
148
+ const response = await fetch(url.toString(), options);
149
+ const text = await response.text();
150
+ const output = new OpenAPIToolOutput(response.status, response.statusText, text);
151
+ await run.emitter.emit("afterFetch", {
152
+ data: output,
153
+ url
154
+ });
155
+ return output;
156
+ } catch (err) {
157
+ throw new ToolError(`Request to ${url} has failed.`, [
158
+ err
159
+ ]);
160
+ }
161
+ }
162
+ createSnapshot() {
163
+ return {
164
+ ...super.createSnapshot(),
165
+ openApiSchema: clone(this.openApiSchema),
166
+ name: this.name,
167
+ description: this.description,
168
+ url: this.url
169
+ };
170
+ }
171
+ }
172
+
173
+ export { OpenAPITool, OpenAPIToolOutput };
174
+ //# sourceMappingURL=openapi.js.map
175
+ //# sourceMappingURL=openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/tools/openapi.ts"],"names":["OpenAPIToolOutput","StringToolOutput","constructor","status","statusText","result","OpenAPITool","Tool","name","description","url","openApiSchema","inputSchema","getReferencedObject","json","refPath","pathSegments","split","currentObject","segment","type","required","oneOf","Object","entries","paths","flatMap","path","pathSpec","map","method","methodSpec","additionalProperties","properties","const","summary","requestBody","content","schema","body","parameters","filter","p","reduce","acc","$ref","emitter","register","options","parse","servers","find","s","ValueError","info","title","trim","Emitter","root","child","namespace","toCamelCase","creator","_run","input","_options","run","URL","keys","forEach","key","value","newPath","replace","searchParams","append","pathname","join","fetchOptions","signal","AbortSignal","any","isTruthy","isEmpty","undefined","toLowerCase","headers","Accept","emit","response","fetch","toString","text","output","data","err","ToolError","createSnapshot","clone"],"mappings":"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","file":"openapi.js","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\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 { join } from \"path\";\n\nimport {\n BaseToolOptions,\n BaseToolRunOptions,\n StringToolOutput,\n Tool,\n ToolError,\n ToolEmitter,\n} from \"@/tools/base.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { ValueError } from \"@/errors.js\";\nimport { SchemaObject } from \"ajv\";\nimport { parse } from \"yaml\";\nimport { isEmpty, isTruthy, clone, toCamelCase } from \"remeda\";\n\nexport interface OpenAPIToolOptions extends BaseToolOptions {\n name?: string;\n description?: string;\n openApiSchema: any;\n url?: string;\n fetchOptions?: RequestInit;\n}\n\nexport interface OpenAPIEvents {\n beforeFetch: Callback<{ options: RequestInit; url: URL }>;\n afterFetch: Callback<{ data: OpenAPIToolOutput; url: URL }>;\n}\n\nexport class OpenAPIToolOutput extends StringToolOutput {\n constructor(\n public readonly status: number,\n public readonly statusText: string,\n public readonly result = \"\",\n ) {\n super();\n this.status = status;\n this.statusText = statusText;\n this.result = result ?? \"\";\n }\n}\n\nexport class OpenAPITool extends Tool<OpenAPIToolOutput, OpenAPIToolOptions> {\n public readonly name: string;\n public readonly description: string;\n public readonly url: string;\n\n public readonly openApiSchema: any;\n\n inputSchema(): SchemaObject {\n const getReferencedObject = (json: any, refPath: string) => {\n const pathSegments = refPath.split(\"/\");\n let currentObject = json;\n for (const segment of pathSegments) {\n if (segment === \"#\") {\n continue;\n }\n currentObject = currentObject[segment];\n }\n return currentObject;\n };\n\n return {\n type: \"object\",\n required: [\"path\", \"method\"],\n oneOf: Object.entries(this.openApiSchema.paths).flatMap(([path, pathSpec]: [string, any]) =>\n Object.entries(pathSpec).map(([method, methodSpec]: [string, any]) => ({\n additionalProperties: false,\n properties: {\n path: {\n const: path,\n description:\n \"Do not replace variables in path, instead of, put them to the parameters object.\",\n },\n method: { const: method, description: methodSpec.summary || methodSpec.description },\n ...(methodSpec.requestBody?.content?.[\"application/json\"]?.schema\n ? {\n body: methodSpec.requestBody?.content?.[\"application/json\"]?.schema,\n }\n : {}),\n ...(methodSpec.parameters\n ? {\n parameters: {\n type: \"object\",\n additionalProperties: false,\n required: methodSpec.parameters\n .filter((p: any) => p.required === true)\n .map((p: any) => p.name),\n properties: methodSpec.parameters.reduce(\n (acc: any, p: any) =>\n !p.$ref\n ? { ...acc, [p.name]: { ...p.schema, description: p.name } }\n : {\n ...acc,\n [getReferencedObject(this.openApiSchema, p.$ref)?.name]: {\n ...getReferencedObject(this.openApiSchema, p.$ref)?.schema,\n description: getReferencedObject(this.openApiSchema, p.$ref)?.name,\n },\n },\n {},\n ),\n },\n }\n : {}),\n },\n })),\n ),\n } as const satisfies SchemaObject;\n }\n\n public readonly emitter: ToolEmitter<Record<string, any>, OpenAPIToolOutput, OpenAPIEvents>;\n\n static {\n this.register();\n }\n\n public constructor(options: OpenAPIToolOptions) {\n super(options);\n\n this.openApiSchema = parse(options.openApiSchema);\n\n this.url = this.options.url || this.openApiSchema.servers?.find((s: any) => s?.url)?.url;\n if (!this.url) {\n throw new ValueError(\n \"OpenAPI schema hasn't any server with url specified. Pass it manually.\",\n );\n }\n\n this.name = options.name ?? this.openApiSchema?.info?.title?.trim();\n if (!this.name) {\n throw new ValueError(\"OpenAPI schema hasn't 'name' specified. Pass it manually.\");\n }\n this.emitter = Emitter.root.child({\n namespace: [\"tool\", \"web\", \"openAPI\", toCamelCase(this.name)],\n creator: this,\n });\n\n this.description =\n options.description ||\n this.openApiSchema?.info?.description ||\n \"Performs REST API requests to the servers and retrieves the response. The server API interfaces are defined in OpenAPI schema. \\n\" +\n \"Only use the OpenAPI tool if you need to communicate to external servers.\";\n\n if (!this.description) {\n throw new ValueError(\"OpenAPI schema hasn't 'description' specified. Pass it manually.\");\n }\n }\n\n protected async _run(\n input: Record<string, any>,\n _options: Partial<BaseToolRunOptions>,\n run: GetRunContext<typeof this>,\n ) {\n let path: string = input.path || \"\";\n const url = new URL(this.url);\n Object.keys(input.parameters ?? {}).forEach((key) => {\n const value = input.parameters[key];\n const newPath = path.replace(`{${key}}`, value);\n if (newPath == path) {\n url.searchParams.append(key, value);\n } else {\n path = newPath;\n }\n });\n url.pathname = join(url.pathname, path);\n const options: RequestInit = {\n ...this.options.fetchOptions,\n signal: AbortSignal.any([run.signal, this.options.fetchOptions?.signal].filter(isTruthy)),\n body: !isEmpty(input.body) ? input.body : undefined,\n method: input.method.toLowerCase(),\n headers: { Accept: \"application/json\", ...this.options.fetchOptions?.headers },\n };\n await run.emitter.emit(\"beforeFetch\", { options: options, url: url });\n try {\n const response = await fetch(url.toString(), options);\n const text = await response.text();\n const output = new OpenAPIToolOutput(response.status, response.statusText, text);\n await run.emitter.emit(\"afterFetch\", { data: output, url });\n return output;\n } catch (err) {\n throw new ToolError(`Request to ${url} has failed.`, [err]);\n }\n }\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n openApiSchema: clone(this.openApiSchema),\n name: this.name,\n description: this.description,\n url: this.url,\n };\n }\n}\n"]}
@@ -0,0 +1,65 @@
1
+ 'use strict';
2
+
3
+ var base_cjs = require('../base.cjs');
4
+
5
+ var __defProp = Object.defineProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ class PythonToolOutput extends base_cjs.ToolOutput {
8
+ static {
9
+ __name(this, "PythonToolOutput");
10
+ }
11
+ stdout;
12
+ stderr;
13
+ exitCode;
14
+ outputFiles;
15
+ static FILE_PREFIX = "urn:bee:file";
16
+ constructor(stdout, stderr, exitCode, outputFiles = []) {
17
+ super(), this.stdout = stdout, this.stderr = stderr, this.exitCode = exitCode, this.outputFiles = outputFiles;
18
+ }
19
+ static {
20
+ this.register();
21
+ }
22
+ isEmpty() {
23
+ return false;
24
+ }
25
+ getTextContent() {
26
+ const executionStatus = this.exitCode === 0 ? "The code executed successfully." : `The code exited with error code ${this.exitCode}.`;
27
+ const stdout = this.stdout.trim() ? `Standard output:
28
+ \`\`\`
29
+ ${this.stdout}
30
+ \`\`\`` : null;
31
+ const stderr = this.stderr.trim() ? `Error output:
32
+ \`\`\`
33
+ ${this.stderr}
34
+ \`\`\`` : null;
35
+ const isImage = /* @__PURE__ */ __name((filename) => [
36
+ ".png",
37
+ ".jpg",
38
+ ".jpeg",
39
+ ".gif",
40
+ ".bmp"
41
+ ].some((ext) => filename.toLowerCase().endsWith(ext)), "isImage");
42
+ const files = this.outputFiles.length ? "The following files were created or modified. The user does not see them yet. To present a file to the user, send them the link below, verbatim:\n" + this.outputFiles.map((file) => `${isImage(file.filename) ? "!" : ""}[${file.filename}](${PythonToolOutput.FILE_PREFIX}:${file.id})`).join("\n") : null;
43
+ return [
44
+ executionStatus,
45
+ stdout,
46
+ stderr,
47
+ files
48
+ ].filter(Boolean).join("\n");
49
+ }
50
+ createSnapshot() {
51
+ return {
52
+ stdout: this.stdout,
53
+ stderr: this.stderr,
54
+ exitCode: this.exitCode,
55
+ outputFiles: this.outputFiles
56
+ };
57
+ }
58
+ loadSnapshot(snapshot) {
59
+ Object.assign(this, snapshot);
60
+ }
61
+ }
62
+
63
+ exports.PythonToolOutput = PythonToolOutput;
64
+ //# sourceMappingURL=output.cjs.map
65
+ //# sourceMappingURL=output.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tools/python/output.ts"],"names":["PythonToolOutput","ToolOutput","FILE_PREFIX","constructor","stdout","stderr","exitCode","outputFiles","register","isEmpty","getTextContent","executionStatus","trim","isImage","filename","some","ext","toLowerCase","endsWith","files","length","map","file","id","join","filter","Boolean","createSnapshot","loadSnapshot","snapshot","Object","assign"],"mappings":";;;;;;AAmBO,MAAMA,yBAAyBC,mBAAAA,CAAAA;EAnBtC;;;;;;;AAoBE,EAAA,OAAOC,WAAc,GAAA,cAAA;AAErBC,EAAAA,WAAAA,CACkBC,MACAC,EAAAA,MAAAA,EACAC,QACAC,EAAAA,WAAAA,GAA4B,EAC5C,EAAA;AACA,IAAK,KAAA,EAAA,EAAA,IALWH,CAAAA,MAAAA,GAAAA,MAAAA,EAAAA,IAAAA,CACAC,MAAAA,GAAAA,MAAAA,EAAAA,IACAC,CAAAA,QAAAA,GAAAA,QAAAA,EAAAA,IAAAA,CACAC,WAAAA,GAAAA,WAAAA;AAGlB;EAEA;AACE,IAAA,IAAA,CAAKC,QAAQ,EAAA;AACf;EAEAC,OAAU,GAAA;AACR,IAAO,OAAA,KAAA;AACT;EAEAC,cAAiB,GAAA;AACf,IAAA,MAAMC,kBACJ,IAAKL,CAAAA,QAAAA,KAAa,IACd,iCACA,GAAA,CAAA,gCAAA,EAAmC,KAAKA,QAAQ,CAAA,CAAA,CAAA;AACtD,IAAA,MAAMF,MAAS,GAAA,IAAA,CAAKA,MAAOQ,CAAAA,IAAAA,EAAS,GAAA,CAAA;;AAA8B,EAAA,IAAA,CAAKR,MAAM;AAAa,MAAA,CAAA,GAAA,IAAA;AAC1F,IAAA,MAAMC,MAAS,GAAA,IAAA,CAAKA,MAAOO,CAAAA,IAAAA,EAAS,GAAA,CAAA;;AAA2B,EAAA,IAAA,CAAKP,MAAM;AAAa,MAAA,CAAA,GAAA,IAAA;AACvF,IAAMQ,MAAAA,OAAAA,2BAAWC,QACf,KAAA;AAAC,MAAA,MAAA;AAAQ,MAAA,MAAA;AAAQ,MAAA,OAAA;AAAS,MAAA,MAAA;AAAQ,MAAA;MAAQC,IAAK,CAAA,CAACC,QAAQF,QAASG,CAAAA,WAAAA,GAAcC,QAASF,CAAAA,GAAAA,CAAAA,CAD1E,EAAA,SAAA,CAAA;AAEhB,IAAA,MAAMG,KAAQ,GAAA,IAAA,CAAKZ,WAAYa,CAAAA,MAAAA,GAC3B,oJACA,GAAA,IAAA,CAAKb,WACFc,CAAAA,GAAAA,CACC,CAACC,IAAAA,KACC,CAAGT,EAAAA,OAAAA,CAAQS,KAAKR,QAAQ,CAAA,GAAI,GAAM,GAAA,EAAA,CAAMQ,CAAAA,EAAAA,IAAAA,CAAKR,QAAQ,CAAA,EAAA,EAAKd,gBAAiBE,CAAAA,WAAW,CAAIoB,CAAAA,EAAAA,IAAAA,CAAKC,EAAE,CAAA,CAAA,CAAG,CAEvGC,CAAAA,IAAAA,CAAK,IAAA,CACR,GAAA,IAAA;AAEJ,IAAO,OAAA;AAACb,MAAAA,eAAAA;AAAiBP,MAAAA,MAAAA;AAAQC,MAAAA,MAAAA;AAAQc,MAAAA;MAAOM,MAAOC,CAAAA,OAAAA,CAASF,CAAAA,IAAAA,CAAK,IAAA,CAAA;AACvE;EAEAG,cAAiB,GAAA;AACf,IAAO,OAAA;AACLvB,MAAAA,MAAAA,EAAQ,IAAKA,CAAAA,MAAAA;AACbC,MAAAA,MAAAA,EAAQ,IAAKA,CAAAA,MAAAA;AACbC,MAAAA,QAAAA,EAAU,IAAKA,CAAAA,QAAAA;AACfC,MAAAA,WAAAA,EAAa,IAAKA,CAAAA;AACpB,KAAA;AACF;AAEAqB,EAAAA,YAAAA,CAAaC,QAAkD,EAAA;AAC7DC,IAAOC,MAAAA,CAAAA,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACtB;AACF","file":"output.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\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 { ToolOutput } from \"@/tools/base.js\";\nimport { PythonFile } from \"@/tools/python/storage.js\";\n\nexport class PythonToolOutput extends ToolOutput {\n static FILE_PREFIX = \"urn:bee:file\";\n\n constructor(\n public readonly stdout: string,\n public readonly stderr: string,\n public readonly exitCode?: number,\n public readonly outputFiles: PythonFile[] = [],\n ) {\n super();\n }\n\n static {\n this.register();\n }\n\n isEmpty() {\n return false;\n }\n\n getTextContent() {\n const executionStatus =\n this.exitCode === 0\n ? \"The code executed successfully.\"\n : `The code exited with error code ${this.exitCode}.`;\n const stdout = this.stdout.trim() ? `Standard output: \\n\\`\\`\\`\\n${this.stdout}\\n\\`\\`\\`` : null;\n const stderr = this.stderr.trim() ? `Error output: \\n\\`\\`\\`\\n${this.stderr}\\n\\`\\`\\`` : null;\n const isImage = (filename: string) =>\n [\".png\", \".jpg\", \".jpeg\", \".gif\", \".bmp\"].some((ext) => filename.toLowerCase().endsWith(ext));\n const files = this.outputFiles.length\n ? \"The following files were created or modified. The user does not see them yet. To present a file to the user, send them the link below, verbatim:\\n\" +\n this.outputFiles\n .map(\n (file) =>\n `${isImage(file.filename) ? \"!\" : \"\"}[${file.filename}](${PythonToolOutput.FILE_PREFIX}:${file.id})`,\n )\n .join(\"\\n\")\n : null;\n\n return [executionStatus, stdout, stderr, files].filter(Boolean).join(\"\\n\");\n }\n\n createSnapshot() {\n return {\n stdout: this.stdout,\n stderr: this.stderr,\n exitCode: this.exitCode,\n outputFiles: this.outputFiles,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n}\n"]}
@@ -0,0 +1,52 @@
1
+ import { ToolOutput } from '../base.cjs';
2
+ import { PythonFile } from './storage.cjs';
3
+ import 'ajv';
4
+ import '../../context.cjs';
5
+ import '../../emitter-BWtGHYn0.cjs';
6
+ import '../../internals/types.cjs';
7
+ import '../../internals/helpers/guards.cjs';
8
+ import '../../internals/serializable.cjs';
9
+ import '../../internals/helpers/promise.cjs';
10
+ import '../../errors.cjs';
11
+ import 'promise-based-task';
12
+ import '../../cache/base.cjs';
13
+ import '../../internals/helpers/schema.cjs';
14
+ import 'zod';
15
+ import 'zod-to-json-schema';
16
+ import 'fs';
17
+
18
+ /**
19
+ * Copyright 2025 IBM Corp.
20
+ *
21
+ * Licensed under the Apache License, Version 2.0 (the "License");
22
+ * you may not use this file except in compliance with the License.
23
+ * You may obtain a copy of the License at
24
+ *
25
+ * http://www.apache.org/licenses/LICENSE-2.0
26
+ *
27
+ * Unless required by applicable law or agreed to in writing, software
28
+ * distributed under the License is distributed on an "AS IS" BASIS,
29
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30
+ * See the License for the specific language governing permissions and
31
+ * limitations under the License.
32
+ */
33
+
34
+ declare class PythonToolOutput extends ToolOutput {
35
+ readonly stdout: string;
36
+ readonly stderr: string;
37
+ readonly exitCode?: number | undefined;
38
+ readonly outputFiles: PythonFile[];
39
+ static FILE_PREFIX: string;
40
+ constructor(stdout: string, stderr: string, exitCode?: number | undefined, outputFiles?: PythonFile[]);
41
+ isEmpty(): boolean;
42
+ getTextContent(): string;
43
+ createSnapshot(): {
44
+ stdout: string;
45
+ stderr: string;
46
+ exitCode: number | undefined;
47
+ outputFiles: PythonFile[];
48
+ };
49
+ loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
50
+ }
51
+
52
+ export { PythonToolOutput };
@@ -0,0 +1,52 @@
1
+ import { ToolOutput } from '../base.js';
2
+ import { PythonFile } from './storage.js';
3
+ import 'ajv';
4
+ import '../../context.js';
5
+ import '../../emitter-l0W9gC1A.js';
6
+ import '../../internals/types.js';
7
+ import '../../internals/helpers/guards.js';
8
+ import '../../internals/serializable.js';
9
+ import '../../internals/helpers/promise.js';
10
+ import '../../errors.js';
11
+ import 'promise-based-task';
12
+ import '../../cache/base.js';
13
+ import '../../internals/helpers/schema.js';
14
+ import 'zod';
15
+ import 'zod-to-json-schema';
16
+ import 'fs';
17
+
18
+ /**
19
+ * Copyright 2025 IBM Corp.
20
+ *
21
+ * Licensed under the Apache License, Version 2.0 (the "License");
22
+ * you may not use this file except in compliance with the License.
23
+ * You may obtain a copy of the License at
24
+ *
25
+ * http://www.apache.org/licenses/LICENSE-2.0
26
+ *
27
+ * Unless required by applicable law or agreed to in writing, software
28
+ * distributed under the License is distributed on an "AS IS" BASIS,
29
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30
+ * See the License for the specific language governing permissions and
31
+ * limitations under the License.
32
+ */
33
+
34
+ declare class PythonToolOutput extends ToolOutput {
35
+ readonly stdout: string;
36
+ readonly stderr: string;
37
+ readonly exitCode?: number | undefined;
38
+ readonly outputFiles: PythonFile[];
39
+ static FILE_PREFIX: string;
40
+ constructor(stdout: string, stderr: string, exitCode?: number | undefined, outputFiles?: PythonFile[]);
41
+ isEmpty(): boolean;
42
+ getTextContent(): string;
43
+ createSnapshot(): {
44
+ stdout: string;
45
+ stderr: string;
46
+ exitCode: number | undefined;
47
+ outputFiles: PythonFile[];
48
+ };
49
+ loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
50
+ }
51
+
52
+ export { PythonToolOutput };
@@ -0,0 +1,63 @@
1
+ import { ToolOutput } from '../base.js';
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
5
+ class PythonToolOutput extends ToolOutput {
6
+ static {
7
+ __name(this, "PythonToolOutput");
8
+ }
9
+ stdout;
10
+ stderr;
11
+ exitCode;
12
+ outputFiles;
13
+ static FILE_PREFIX = "urn:bee:file";
14
+ constructor(stdout, stderr, exitCode, outputFiles = []) {
15
+ super(), this.stdout = stdout, this.stderr = stderr, this.exitCode = exitCode, this.outputFiles = outputFiles;
16
+ }
17
+ static {
18
+ this.register();
19
+ }
20
+ isEmpty() {
21
+ return false;
22
+ }
23
+ getTextContent() {
24
+ const executionStatus = this.exitCode === 0 ? "The code executed successfully." : `The code exited with error code ${this.exitCode}.`;
25
+ const stdout = this.stdout.trim() ? `Standard output:
26
+ \`\`\`
27
+ ${this.stdout}
28
+ \`\`\`` : null;
29
+ const stderr = this.stderr.trim() ? `Error output:
30
+ \`\`\`
31
+ ${this.stderr}
32
+ \`\`\`` : null;
33
+ const isImage = /* @__PURE__ */ __name((filename) => [
34
+ ".png",
35
+ ".jpg",
36
+ ".jpeg",
37
+ ".gif",
38
+ ".bmp"
39
+ ].some((ext) => filename.toLowerCase().endsWith(ext)), "isImage");
40
+ const files = this.outputFiles.length ? "The following files were created or modified. The user does not see them yet. To present a file to the user, send them the link below, verbatim:\n" + this.outputFiles.map((file) => `${isImage(file.filename) ? "!" : ""}[${file.filename}](${PythonToolOutput.FILE_PREFIX}:${file.id})`).join("\n") : null;
41
+ return [
42
+ executionStatus,
43
+ stdout,
44
+ stderr,
45
+ files
46
+ ].filter(Boolean).join("\n");
47
+ }
48
+ createSnapshot() {
49
+ return {
50
+ stdout: this.stdout,
51
+ stderr: this.stderr,
52
+ exitCode: this.exitCode,
53
+ outputFiles: this.outputFiles
54
+ };
55
+ }
56
+ loadSnapshot(snapshot) {
57
+ Object.assign(this, snapshot);
58
+ }
59
+ }
60
+
61
+ export { PythonToolOutput };
62
+ //# sourceMappingURL=output.js.map
63
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tools/python/output.ts"],"names":["PythonToolOutput","ToolOutput","FILE_PREFIX","constructor","stdout","stderr","exitCode","outputFiles","register","isEmpty","getTextContent","executionStatus","trim","isImage","filename","some","ext","toLowerCase","endsWith","files","length","map","file","id","join","filter","Boolean","createSnapshot","loadSnapshot","snapshot","Object","assign"],"mappings":";;;;AAmBO,MAAMA,yBAAyBC,UAAAA,CAAAA;EAnBtC;;;;;;;AAoBE,EAAA,OAAOC,WAAc,GAAA,cAAA;AAErBC,EAAAA,WAAAA,CACkBC,MACAC,EAAAA,MAAAA,EACAC,QACAC,EAAAA,WAAAA,GAA4B,EAC5C,EAAA;AACA,IAAK,KAAA,EAAA,EAAA,IALWH,CAAAA,MAAAA,GAAAA,MAAAA,EAAAA,IAAAA,CACAC,MAAAA,GAAAA,MAAAA,EAAAA,IACAC,CAAAA,QAAAA,GAAAA,QAAAA,EAAAA,IAAAA,CACAC,WAAAA,GAAAA,WAAAA;AAGlB;EAEA;AACE,IAAA,IAAA,CAAKC,QAAQ,EAAA;AACf;EAEAC,OAAU,GAAA;AACR,IAAO,OAAA,KAAA;AACT;EAEAC,cAAiB,GAAA;AACf,IAAA,MAAMC,kBACJ,IAAKL,CAAAA,QAAAA,KAAa,IACd,iCACA,GAAA,CAAA,gCAAA,EAAmC,KAAKA,QAAQ,CAAA,CAAA,CAAA;AACtD,IAAA,MAAMF,MAAS,GAAA,IAAA,CAAKA,MAAOQ,CAAAA,IAAAA,EAAS,GAAA,CAAA;;AAA8B,EAAA,IAAA,CAAKR,MAAM;AAAa,MAAA,CAAA,GAAA,IAAA;AAC1F,IAAA,MAAMC,MAAS,GAAA,IAAA,CAAKA,MAAOO,CAAAA,IAAAA,EAAS,GAAA,CAAA;;AAA2B,EAAA,IAAA,CAAKP,MAAM;AAAa,MAAA,CAAA,GAAA,IAAA;AACvF,IAAMQ,MAAAA,OAAAA,2BAAWC,QACf,KAAA;AAAC,MAAA,MAAA;AAAQ,MAAA,MAAA;AAAQ,MAAA,OAAA;AAAS,MAAA,MAAA;AAAQ,MAAA;MAAQC,IAAK,CAAA,CAACC,QAAQF,QAASG,CAAAA,WAAAA,GAAcC,QAASF,CAAAA,GAAAA,CAAAA,CAD1E,EAAA,SAAA,CAAA;AAEhB,IAAA,MAAMG,KAAQ,GAAA,IAAA,CAAKZ,WAAYa,CAAAA,MAAAA,GAC3B,oJACA,GAAA,IAAA,CAAKb,WACFc,CAAAA,GAAAA,CACC,CAACC,IAAAA,KACC,CAAGT,EAAAA,OAAAA,CAAQS,KAAKR,QAAQ,CAAA,GAAI,GAAM,GAAA,EAAA,CAAMQ,CAAAA,EAAAA,IAAAA,CAAKR,QAAQ,CAAA,EAAA,EAAKd,gBAAiBE,CAAAA,WAAW,CAAIoB,CAAAA,EAAAA,IAAAA,CAAKC,EAAE,CAAA,CAAA,CAAG,CAEvGC,CAAAA,IAAAA,CAAK,IAAA,CACR,GAAA,IAAA;AAEJ,IAAO,OAAA;AAACb,MAAAA,eAAAA;AAAiBP,MAAAA,MAAAA;AAAQC,MAAAA,MAAAA;AAAQc,MAAAA;MAAOM,MAAOC,CAAAA,OAAAA,CAASF,CAAAA,IAAAA,CAAK,IAAA,CAAA;AACvE;EAEAG,cAAiB,GAAA;AACf,IAAO,OAAA;AACLvB,MAAAA,MAAAA,EAAQ,IAAKA,CAAAA,MAAAA;AACbC,MAAAA,MAAAA,EAAQ,IAAKA,CAAAA,MAAAA;AACbC,MAAAA,QAAAA,EAAU,IAAKA,CAAAA,QAAAA;AACfC,MAAAA,WAAAA,EAAa,IAAKA,CAAAA;AACpB,KAAA;AACF;AAEAqB,EAAAA,YAAAA,CAAaC,QAAkD,EAAA;AAC7DC,IAAOC,MAAAA,CAAAA,MAAAA,CAAO,MAAMF,QAAAA,CAAAA;AACtB;AACF","file":"output.js","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\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 { ToolOutput } from \"@/tools/base.js\";\nimport { PythonFile } from \"@/tools/python/storage.js\";\n\nexport class PythonToolOutput extends ToolOutput {\n static FILE_PREFIX = \"urn:bee:file\";\n\n constructor(\n public readonly stdout: string,\n public readonly stderr: string,\n public readonly exitCode?: number,\n public readonly outputFiles: PythonFile[] = [],\n ) {\n super();\n }\n\n static {\n this.register();\n }\n\n isEmpty() {\n return false;\n }\n\n getTextContent() {\n const executionStatus =\n this.exitCode === 0\n ? \"The code executed successfully.\"\n : `The code exited with error code ${this.exitCode}.`;\n const stdout = this.stdout.trim() ? `Standard output: \\n\\`\\`\\`\\n${this.stdout}\\n\\`\\`\\`` : null;\n const stderr = this.stderr.trim() ? `Error output: \\n\\`\\`\\`\\n${this.stderr}\\n\\`\\`\\`` : null;\n const isImage = (filename: string) =>\n [\".png\", \".jpg\", \".jpeg\", \".gif\", \".bmp\"].some((ext) => filename.toLowerCase().endsWith(ext));\n const files = this.outputFiles.length\n ? \"The following files were created or modified. The user does not see them yet. To present a file to the user, send them the link below, verbatim:\\n\" +\n this.outputFiles\n .map(\n (file) =>\n `${isImage(file.filename) ? \"!\" : \"\"}[${file.filename}](${PythonToolOutput.FILE_PREFIX}:${file.id})`,\n )\n .join(\"\\n\")\n : null;\n\n return [executionStatus, stdout, stderr, files].filter(Boolean).join(\"\\n\");\n }\n\n createSnapshot() {\n return {\n stdout: this.stdout,\n stderr: this.stderr,\n exitCode: this.exitCode,\n outputFiles: this.outputFiles,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n }\n}\n"]}
@@ -0,0 +1,163 @@
1
+ 'use strict';
2
+
3
+ var base_cjs = require('../base.cjs');
4
+ var zod = require('zod');
5
+ var remeda = require('remeda');
6
+ var output_cjs = require('./output.cjs');
7
+ var ajv = require('ajv');
8
+ var array_cjs = require('../../internals/helpers/array.cjs');
9
+ var emitter_cjs = require('../../emitter/emitter.cjs');
10
+ var utils_cjs = require('../../serializer/utils.cjs');
11
+ var message_cjs = require('../../backend/message.cjs');
12
+
13
+ var __defProp = Object.defineProperty;
14
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
15
+ class PythonTool extends base_cjs.Tool {
16
+ static {
17
+ __name(this, "PythonTool");
18
+ }
19
+ name = "Python";
20
+ description = [
21
+ "Run Python and/or shell code and return the console output. Use for isolated calculations, computations, data or file manipulation but still prefer assistant's capabilities (IMPORTANT: Do not use for text analysis or summarization).",
22
+ "Files provided by the user, or created in a previous run, will be accessible if and only if they are specified in the input. It is necessary to always print() results.",
23
+ "The following shell commands are available:",
24
+ "Use ffmpeg to convert videos.",
25
+ "Use yt-dlp to download videos, and unless specified otherwise use `-S vcodec:h264,res,acodec:m4a` for video and `-x --audio-format mp3` for audio-only.",
26
+ "Use pandoc to convert documents between formats (like MD, DOC, DOCX, PDF) -- and don't forget that you can create PDFs by writing markdown and then converting.",
27
+ "In Python, the following modules are available:",
28
+ "Use numpy, pandas, scipy and sympy for working with data.",
29
+ "Use matplotlib to plot charts.",
30
+ "Use pillow (import PIL) to create and manipulate images.",
31
+ "Use moviepy for complex manipulations with videos.",
32
+ "Use PyPDF2, pikepdf, or fitz to manipulate PDFs.",
33
+ "Use pdf2image to convert PDF to images.",
34
+ "Other Python libraries are also available -- however, prefer using the ones above.",
35
+ "Prefer using qualified imports -- `import library; library.thing()` instead of `import thing from library`.",
36
+ "Do not attempt to install libraries manually -- it will not work.",
37
+ "Each invocation of Python runs in a completely fresh VM -- it will not remember anything from before.",
38
+ "Do not use this tool multiple times in a row, always write the full code you want to run in a single invocation."
39
+ ].join(" ");
40
+ storage;
41
+ files = [];
42
+ emitter = emitter_cjs.Emitter.root.child({
43
+ namespace: [
44
+ "tool",
45
+ "python"
46
+ ],
47
+ creator: this
48
+ });
49
+ async inputSchema() {
50
+ this.files = await this.storage.list();
51
+ const fileNames = remeda.unique(remeda.map(this.files, ({ filename }) => filename));
52
+ return zod.z.object({
53
+ language: zod.z.enum([
54
+ "python",
55
+ "shell"
56
+ ]).describe("Use shell for ffmpeg, pandoc, yt-dlp"),
57
+ code: zod.z.string().describe("full source code file that will be executed"),
58
+ ...array_cjs.hasMinLength(fileNames, 1) ? {
59
+ inputFiles: zod.z.array(zod.z.enum(fileNames)).describe("To access an existing file, you must specify it; otherwise, the file will not be accessible. IMPORTANT: If the file is not provided in the input, it will not be accessible.")
60
+ } : {}
61
+ });
62
+ }
63
+ preprocess;
64
+ constructor(options) {
65
+ super(options);
66
+ if (!options.codeInterpreter.url) {
67
+ throw new ajv.ValidationError([
68
+ {
69
+ message: "Property must be a valid URL!",
70
+ data: options,
71
+ propertyName: "codeInterpreter.url"
72
+ }
73
+ ]);
74
+ }
75
+ this.preprocess = options.preprocess;
76
+ this.storage = options.storage;
77
+ }
78
+ static {
79
+ this.register();
80
+ }
81
+ async _run(input, _options, run) {
82
+ const inputFiles = await remeda.pipe(this.files ?? await this.storage.list(), remeda.uniqueBy((f) => f.filename), remeda.filter((file) => remeda.isIncludedIn(file.filename, input.inputFiles ?? [])), (files) => this.storage.upload(files));
83
+ const getSourceCode = /* @__PURE__ */ __name(async () => {
84
+ if (this.preprocess) {
85
+ const { llm, promptTemplate } = this.preprocess;
86
+ const response = await llm.create({
87
+ messages: [
88
+ new message_cjs.UserMessage(promptTemplate.render({
89
+ input: input.code
90
+ }))
91
+ ],
92
+ abortSignal: run.signal
93
+ });
94
+ return response.getTextContent().trim();
95
+ }
96
+ return input.code;
97
+ }, "getSourceCode");
98
+ const prefix = "/workspace/";
99
+ const result = await callCodeInterpreter({
100
+ url: `${this.options.codeInterpreter.url}/v1/execute`,
101
+ body: {
102
+ source_code: await getSourceCode(),
103
+ files: Object.fromEntries(inputFiles.map((file) => [
104
+ `${prefix}${file.filename}`,
105
+ file.pythonId
106
+ ]))
107
+ },
108
+ signal: run.signal
109
+ });
110
+ const filesOutput = await this.storage.download(Object.entries(result.files).filter(([path, _]) => path.startsWith(prefix)).map(([path, pythonId]) => ({
111
+ path,
112
+ pythonId: String(pythonId)
113
+ })).map((file) => ({
114
+ filename: file.path.slice(prefix.length),
115
+ pythonId: file.pythonId
116
+ })).filter((file) => inputFiles.every((input2) => input2.filename !== file.filename || input2.pythonId !== file.pythonId)));
117
+ return new output_cjs.PythonToolOutput(result.stdout, result.stderr, result.exit_code, filesOutput);
118
+ }
119
+ createSnapshot() {
120
+ return {
121
+ ...super.createSnapshot(),
122
+ files: utils_cjs.shallowCopy(this.files),
123
+ storage: this.storage,
124
+ preprocess: this.preprocess
125
+ };
126
+ }
127
+ loadSnapshot(snapshot) {
128
+ super.loadSnapshot(snapshot);
129
+ }
130
+ }
131
+ async function callCodeInterpreter({ url, body, signal }) {
132
+ const response = await fetch(url, {
133
+ method: "POST",
134
+ headers: {
135
+ "Accept": "application/json",
136
+ "Content-Type": "application/json"
137
+ },
138
+ body: JSON.stringify(body),
139
+ signal
140
+ }).catch((error) => {
141
+ if (error.cause.name == "HTTPParserError") {
142
+ throw new base_cjs.ToolError("Request to bee-code-interpreter has failed -- ensure that CODE_INTERPRETER_URL points to the new HTTP endpoint (default port: 50081).", [
143
+ error
144
+ ]);
145
+ } else {
146
+ throw new base_cjs.ToolError("Request to bee-code-interpreter has failed.", [
147
+ error
148
+ ]);
149
+ }
150
+ });
151
+ if (!response?.ok && response.status > 400) {
152
+ throw new base_cjs.ToolError(`Request to bee-code-interpreter has failed with HTTP status code ${response.status}.`, [
153
+ new Error(await response.text())
154
+ ]);
155
+ }
156
+ return await response.json();
157
+ }
158
+ __name(callCodeInterpreter, "callCodeInterpreter");
159
+
160
+ exports.PythonTool = PythonTool;
161
+ exports.callCodeInterpreter = callCodeInterpreter;
162
+ //# sourceMappingURL=python.cjs.map
163
+ //# sourceMappingURL=python.cjs.map