beeai-framework 0.1.19 → 0.1.21

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 (375) hide show
  1. package/dist/adapters/a2a/agents/agent.cjs +4 -4
  2. package/dist/adapters/a2a/agents/agent.cjs.map +1 -1
  3. package/dist/adapters/a2a/agents/agent.d.cts +2 -2
  4. package/dist/adapters/a2a/agents/agent.d.ts +2 -2
  5. package/dist/adapters/a2a/agents/agent.js +4 -4
  6. package/dist/adapters/a2a/agents/agent.js.map +1 -1
  7. package/dist/adapters/a2a/agents/events.d.cts +1 -1
  8. package/dist/adapters/a2a/agents/events.d.ts +1 -1
  9. package/dist/adapters/a2a/agents/types.d.cts +2 -2
  10. package/dist/adapters/a2a/agents/types.d.ts +2 -2
  11. package/dist/adapters/a2a/agents/utils.cjs +2 -2
  12. package/dist/adapters/a2a/agents/utils.cjs.map +1 -1
  13. package/dist/adapters/a2a/agents/utils.js +2 -2
  14. package/dist/adapters/a2a/agents/utils.js.map +1 -1
  15. package/dist/adapters/a2a/serve/agent_executor.cjs +1 -3
  16. package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -1
  17. package/dist/adapters/a2a/serve/agent_executor.d.cts +4 -3
  18. package/dist/adapters/a2a/serve/agent_executor.d.ts +4 -3
  19. package/dist/adapters/a2a/serve/agent_executor.js +1 -3
  20. package/dist/adapters/a2a/serve/agent_executor.js.map +1 -1
  21. package/dist/adapters/a2a/serve/server.cjs +15 -0
  22. package/dist/adapters/a2a/serve/server.cjs.map +1 -1
  23. package/dist/adapters/a2a/serve/server.d.cts +4 -2
  24. package/dist/adapters/a2a/serve/server.d.ts +4 -2
  25. package/dist/adapters/a2a/serve/server.js +15 -0
  26. package/dist/adapters/a2a/serve/server.js.map +1 -1
  27. package/dist/adapters/acp/agents/agent.d.cts +2 -2
  28. package/dist/adapters/acp/agents/agent.d.ts +2 -2
  29. package/dist/adapters/acp/agents/events.d.cts +1 -1
  30. package/dist/adapters/acp/agents/events.d.ts +1 -1
  31. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.cjs +4 -4
  32. package/dist/adapters/agentstack/agents/agent.cjs.map +1 -0
  33. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.cts +12 -12
  34. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.ts +12 -12
  35. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.js +4 -4
  36. package/dist/adapters/agentstack/agents/agent.js.map +1 -0
  37. package/dist/adapters/agentstack/agents/events.d.cts +23 -0
  38. package/dist/adapters/agentstack/agents/events.d.ts +23 -0
  39. package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.cts +4 -4
  40. package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.ts +4 -4
  41. package/dist/adapters/amazon-bedrock/backend/chat.cjs +3 -2
  42. package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
  43. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +5 -6
  44. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +5 -6
  45. package/dist/adapters/amazon-bedrock/backend/chat.js +3 -2
  46. package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
  47. package/dist/adapters/amazon-bedrock/backend/embedding.cjs +2 -2
  48. package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
  49. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +4 -4
  50. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +4 -4
  51. package/dist/adapters/amazon-bedrock/backend/embedding.js +2 -2
  52. package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
  53. package/dist/adapters/anthropic/backend/chat.cjs +3 -2
  54. package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
  55. package/dist/adapters/anthropic/backend/chat.d.cts +5 -6
  56. package/dist/adapters/anthropic/backend/chat.d.ts +5 -6
  57. package/dist/adapters/anthropic/backend/chat.js +3 -2
  58. package/dist/adapters/anthropic/backend/chat.js.map +1 -1
  59. package/dist/adapters/anthropic/backend/embedding.d.cts +2 -2
  60. package/dist/adapters/anthropic/backend/embedding.d.ts +2 -2
  61. package/dist/adapters/azure-openai/backend/chat.cjs +3 -2
  62. package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
  63. package/dist/adapters/azure-openai/backend/chat.d.cts +5 -6
  64. package/dist/adapters/azure-openai/backend/chat.d.ts +5 -6
  65. package/dist/adapters/azure-openai/backend/chat.js +3 -2
  66. package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
  67. package/dist/adapters/azure-openai/backend/embedding.cjs +2 -2
  68. package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
  69. package/dist/adapters/azure-openai/backend/embedding.d.cts +3 -3
  70. package/dist/adapters/azure-openai/backend/embedding.d.ts +3 -3
  71. package/dist/adapters/azure-openai/backend/embedding.js +2 -2
  72. package/dist/adapters/azure-openai/backend/embedding.js.map +1 -1
  73. package/dist/adapters/dummy/backend/chat.d.cts +2 -2
  74. package/dist/adapters/dummy/backend/chat.d.ts +2 -2
  75. package/dist/adapters/dummy/backend/embedding.d.cts +2 -2
  76. package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
  77. package/dist/adapters/google-vertex/backend/chat.cjs +3 -2
  78. package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
  79. package/dist/adapters/google-vertex/backend/chat.d.cts +5 -6
  80. package/dist/adapters/google-vertex/backend/chat.d.ts +5 -6
  81. package/dist/adapters/google-vertex/backend/chat.js +3 -2
  82. package/dist/adapters/google-vertex/backend/chat.js.map +1 -1
  83. package/dist/adapters/google-vertex/backend/embedding.d.cts +2 -2
  84. package/dist/adapters/google-vertex/backend/embedding.d.ts +2 -2
  85. package/dist/adapters/groq/backend/chat.cjs +3 -2
  86. package/dist/adapters/groq/backend/chat.cjs.map +1 -1
  87. package/dist/adapters/groq/backend/chat.d.cts +5 -6
  88. package/dist/adapters/groq/backend/chat.d.ts +5 -6
  89. package/dist/adapters/groq/backend/chat.js +3 -2
  90. package/dist/adapters/groq/backend/chat.js.map +1 -1
  91. package/dist/adapters/groq/backend/embedding.d.cts +2 -2
  92. package/dist/adapters/groq/backend/embedding.d.ts +2 -2
  93. package/dist/adapters/langchain/backend/chat.cjs +6 -5
  94. package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
  95. package/dist/adapters/langchain/backend/chat.d.cts +2 -2
  96. package/dist/adapters/langchain/backend/chat.d.ts +2 -2
  97. package/dist/adapters/langchain/backend/chat.js +6 -5
  98. package/dist/adapters/langchain/backend/chat.js.map +1 -1
  99. package/dist/adapters/langchain/backend/embedding.d.cts +3 -3
  100. package/dist/adapters/langchain/backend/embedding.d.ts +3 -3
  101. package/dist/adapters/langchain/tools.d.cts +1 -1
  102. package/dist/adapters/langchain/tools.d.ts +1 -1
  103. package/dist/adapters/mcp/serve/server.cjs +12 -4
  104. package/dist/adapters/mcp/serve/server.cjs.map +1 -1
  105. package/dist/adapters/mcp/serve/server.d.cts +1 -1
  106. package/dist/adapters/mcp/serve/server.d.ts +1 -1
  107. package/dist/adapters/mcp/serve/server.js +12 -4
  108. package/dist/adapters/mcp/serve/server.js.map +1 -1
  109. package/dist/adapters/ollama/backend/chat.cjs +1 -4
  110. package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
  111. package/dist/adapters/ollama/backend/chat.d.cts +4 -4
  112. package/dist/adapters/ollama/backend/chat.d.ts +4 -4
  113. package/dist/adapters/ollama/backend/chat.js +1 -4
  114. package/dist/adapters/ollama/backend/chat.js.map +1 -1
  115. package/dist/adapters/ollama/backend/client.cjs +2 -2
  116. package/dist/adapters/ollama/backend/client.cjs.map +1 -1
  117. package/dist/adapters/ollama/backend/client.d.cts +1 -1
  118. package/dist/adapters/ollama/backend/client.d.ts +1 -1
  119. package/dist/adapters/ollama/backend/client.js +1 -1
  120. package/dist/adapters/ollama/backend/client.js.map +1 -1
  121. package/dist/adapters/ollama/backend/embedding.cjs.map +1 -1
  122. package/dist/adapters/ollama/backend/embedding.d.cts +3 -3
  123. package/dist/adapters/ollama/backend/embedding.d.ts +3 -3
  124. package/dist/adapters/ollama/backend/embedding.js.map +1 -1
  125. package/dist/adapters/openai/backend/chat.cjs +3 -2
  126. package/dist/adapters/openai/backend/chat.cjs.map +1 -1
  127. package/dist/adapters/openai/backend/chat.d.cts +5 -6
  128. package/dist/adapters/openai/backend/chat.d.ts +5 -6
  129. package/dist/adapters/openai/backend/chat.js +3 -2
  130. package/dist/adapters/openai/backend/chat.js.map +1 -1
  131. package/dist/adapters/openai/backend/client.cjs +2 -11
  132. package/dist/adapters/openai/backend/client.cjs.map +1 -1
  133. package/dist/adapters/openai/backend/client.js +3 -12
  134. package/dist/adapters/openai/backend/client.js.map +1 -1
  135. package/dist/adapters/openai/backend/embedding.cjs +2 -2
  136. package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
  137. package/dist/adapters/openai/backend/embedding.d.cts +4 -4
  138. package/dist/adapters/openai/backend/embedding.d.ts +4 -4
  139. package/dist/adapters/openai/backend/embedding.js +2 -2
  140. package/dist/adapters/openai/backend/embedding.js.map +1 -1
  141. package/dist/adapters/vercel/backend/chat.cjs +26 -21
  142. package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
  143. package/dist/adapters/vercel/backend/chat.d.cts +6 -4
  144. package/dist/adapters/vercel/backend/chat.d.ts +6 -4
  145. package/dist/adapters/vercel/backend/chat.js +27 -22
  146. package/dist/adapters/vercel/backend/chat.js.map +1 -1
  147. package/dist/adapters/vercel/backend/embedding.cjs.map +1 -1
  148. package/dist/adapters/vercel/backend/embedding.d.cts +3 -3
  149. package/dist/adapters/vercel/backend/embedding.d.ts +3 -3
  150. package/dist/adapters/vercel/backend/embedding.js.map +1 -1
  151. package/dist/adapters/vercel/backend/utils.cjs +11 -0
  152. package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
  153. package/dist/adapters/vercel/backend/utils.d.cts +19 -2
  154. package/dist/adapters/vercel/backend/utils.d.ts +19 -2
  155. package/dist/adapters/vercel/backend/utils.js +11 -1
  156. package/dist/adapters/vercel/backend/utils.js.map +1 -1
  157. package/dist/adapters/watsonx/backend/chat.cjs +10 -4
  158. package/dist/adapters/watsonx/backend/chat.cjs.map +1 -1
  159. package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
  160. package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
  161. package/dist/adapters/watsonx/backend/chat.js +10 -4
  162. package/dist/adapters/watsonx/backend/chat.js.map +1 -1
  163. package/dist/adapters/watsonx/backend/embedding.d.cts +2 -2
  164. package/dist/adapters/watsonx/backend/embedding.d.ts +2 -2
  165. package/dist/adapters/xai/backend/chat.cjs +3 -2
  166. package/dist/adapters/xai/backend/chat.cjs.map +1 -1
  167. package/dist/adapters/xai/backend/chat.d.cts +5 -6
  168. package/dist/adapters/xai/backend/chat.d.ts +5 -6
  169. package/dist/adapters/xai/backend/chat.js +3 -2
  170. package/dist/adapters/xai/backend/chat.js.map +1 -1
  171. package/dist/{agent-7NzfPC6d.d.ts → agent-CHebzsQB.d.ts} +4 -4
  172. package/dist/{agent-B6pOfx0K.d.cts → agent-DvvVGvLr.d.cts} +4 -4
  173. package/dist/agents/base.d.cts +2 -2
  174. package/dist/agents/base.d.ts +2 -2
  175. package/dist/agents/experimental/replan/agent.d.cts +3 -3
  176. package/dist/agents/experimental/replan/agent.d.ts +3 -3
  177. package/dist/agents/experimental/replan/prompts.d.cts +1 -1
  178. package/dist/agents/experimental/replan/prompts.d.ts +1 -1
  179. package/dist/agents/experimental/streamlit/agent.d.cts +3 -3
  180. package/dist/agents/experimental/streamlit/agent.d.ts +3 -3
  181. package/dist/agents/react/agent.d.cts +5 -4
  182. package/dist/agents/react/agent.d.ts +5 -4
  183. package/dist/agents/react/prompts.d.cts +1 -1
  184. package/dist/agents/react/prompts.d.ts +1 -1
  185. package/dist/agents/react/runners/base.cjs.map +1 -1
  186. package/dist/agents/react/runners/base.d.cts +5 -4
  187. package/dist/agents/react/runners/base.d.ts +5 -4
  188. package/dist/agents/react/runners/base.js.map +1 -1
  189. package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -1
  190. package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -1
  191. package/dist/agents/react/runners/deep-think/runner.d.cts +6 -5
  192. package/dist/agents/react/runners/deep-think/runner.d.ts +6 -5
  193. package/dist/agents/react/runners/default/runner.cjs.map +1 -1
  194. package/dist/agents/react/runners/default/runner.d.cts +6 -5
  195. package/dist/agents/react/runners/default/runner.d.ts +6 -5
  196. package/dist/agents/react/runners/default/runner.js.map +1 -1
  197. package/dist/agents/react/runners/granite/prompts.d.cts +1 -1
  198. package/dist/agents/react/runners/granite/prompts.d.ts +1 -1
  199. package/dist/agents/react/runners/granite/runner.cjs +4 -2
  200. package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
  201. package/dist/agents/react/runners/granite/runner.d.cts +6 -5
  202. package/dist/agents/react/runners/granite/runner.d.ts +6 -5
  203. package/dist/agents/react/runners/granite/runner.js +4 -2
  204. package/dist/agents/react/runners/granite/runner.js.map +1 -1
  205. package/dist/agents/react/types.d.cts +3 -2
  206. package/dist/agents/react/types.d.ts +3 -2
  207. package/dist/agents/toolCalling/agent.cjs +9 -5
  208. package/dist/agents/toolCalling/agent.cjs.map +1 -1
  209. package/dist/agents/toolCalling/agent.d.cts +3 -3
  210. package/dist/agents/toolCalling/agent.d.ts +3 -3
  211. package/dist/agents/toolCalling/agent.js +9 -5
  212. package/dist/agents/toolCalling/agent.js.map +1 -1
  213. package/dist/agents/toolCalling/types.d.cts +1 -1
  214. package/dist/agents/toolCalling/types.d.ts +1 -1
  215. package/dist/agents/types.d.cts +2 -2
  216. package/dist/agents/types.d.ts +2 -2
  217. package/dist/backend/backend.d.cts +2 -2
  218. package/dist/backend/backend.d.ts +2 -2
  219. package/dist/backend/chat.cjs +1 -1
  220. package/dist/backend/chat.cjs.map +1 -1
  221. package/dist/backend/chat.d.cts +2 -2
  222. package/dist/backend/chat.d.ts +2 -2
  223. package/dist/backend/chat.js +1 -1
  224. package/dist/backend/chat.js.map +1 -1
  225. package/dist/backend/core.d.cts +2 -2
  226. package/dist/backend/core.d.ts +2 -2
  227. package/dist/backend/embedding.d.cts +2 -2
  228. package/dist/backend/embedding.d.ts +2 -2
  229. package/dist/backend/message.cjs +59 -3
  230. package/dist/backend/message.cjs.map +1 -1
  231. package/dist/backend/message.d.cts +3 -0
  232. package/dist/backend/message.d.ts +3 -0
  233. package/dist/backend/message.js +59 -3
  234. package/dist/backend/message.js.map +1 -1
  235. package/dist/backend/utils.d.cts +2 -2
  236. package/dist/backend/utils.d.ts +2 -2
  237. package/dist/{base-Bguef5Dg.d.ts → base-BQgDlcGa.d.ts} +1 -1
  238. package/dist/{base-C1hO5EJe.d.cts → base-CwcxwybB.d.cts} +1 -1
  239. package/dist/cache/fileCache.cjs.map +1 -1
  240. package/dist/cache/fileCache.js.map +1 -1
  241. package/dist/{chat-BBoOSvzm.d.ts → chat-C0s-o6ll.d.ts} +4 -2
  242. package/dist/{chat-BZ55YQab.d.cts → chat-CRb3vUVg.d.cts} +4 -2
  243. package/dist/context.d.cts +1 -1
  244. package/dist/context.d.ts +1 -1
  245. package/dist/emitter/emitter.d.cts +1 -1
  246. package/dist/emitter/emitter.d.ts +1 -1
  247. package/dist/emitter/types.d.cts +1 -1
  248. package/dist/emitter/types.d.ts +1 -1
  249. package/dist/{emitter-BqpLJQVb.d.ts → emitter-CZFbzlUi.d.ts} +3 -3
  250. package/dist/{emitter-pJzHC_AM.d.cts → emitter-DpqUYjXH.d.cts} +3 -3
  251. package/dist/index.d.cts +3 -3
  252. package/dist/index.d.ts +3 -3
  253. package/dist/internals/fetcher.d.cts +1 -1
  254. package/dist/internals/fetcher.d.ts +1 -1
  255. package/dist/internals/helpers/array.cjs +35 -0
  256. package/dist/internals/helpers/array.cjs.map +1 -1
  257. package/dist/internals/helpers/array.d.cts +6 -1
  258. package/dist/internals/helpers/array.d.ts +6 -1
  259. package/dist/internals/helpers/array.js +35 -1
  260. package/dist/internals/helpers/array.js.map +1 -1
  261. package/dist/internals/helpers/object.cjs +30 -5
  262. package/dist/internals/helpers/object.cjs.map +1 -1
  263. package/dist/internals/helpers/object.d.cts +3 -2
  264. package/dist/internals/helpers/object.d.ts +3 -2
  265. package/dist/internals/helpers/object.js +29 -5
  266. package/dist/internals/helpers/object.js.map +1 -1
  267. package/dist/logger/logger.cjs +8 -4
  268. package/dist/logger/logger.cjs.map +1 -1
  269. package/dist/logger/logger.d.cts +21 -15
  270. package/dist/logger/logger.d.ts +21 -15
  271. package/dist/logger/logger.js +6 -3
  272. package/dist/logger/logger.js.map +1 -1
  273. package/dist/logger/pretty.cjs +2 -2
  274. package/dist/logger/pretty.cjs.map +1 -1
  275. package/dist/logger/pretty.js +2 -2
  276. package/dist/logger/pretty.js.map +1 -1
  277. package/dist/memory/summarizeMemory.d.cts +2 -2
  278. package/dist/memory/summarizeMemory.d.ts +2 -2
  279. package/dist/parsers/linePrefix.cjs.map +1 -1
  280. package/dist/parsers/linePrefix.d.cts +4 -8
  281. package/dist/parsers/linePrefix.d.ts +4 -8
  282. package/dist/parsers/linePrefix.js.map +1 -1
  283. package/dist/serializer/utils.cjs.map +1 -1
  284. package/dist/serializer/utils.js.map +1 -1
  285. package/dist/tools/arxiv.cjs.map +1 -1
  286. package/dist/tools/arxiv.d.cts +1 -1
  287. package/dist/tools/arxiv.d.ts +1 -1
  288. package/dist/tools/arxiv.js.map +1 -1
  289. package/dist/tools/base.cjs.map +1 -1
  290. package/dist/tools/base.d.cts +1 -1
  291. package/dist/tools/base.d.ts +1 -1
  292. package/dist/tools/base.js.map +1 -1
  293. package/dist/tools/calculator.d.cts +1 -1
  294. package/dist/tools/calculator.d.ts +1 -1
  295. package/dist/tools/custom.d.cts +2 -2
  296. package/dist/tools/custom.d.ts +2 -2
  297. package/dist/tools/database/elasticsearch.cjs.map +1 -1
  298. package/dist/tools/database/elasticsearch.d.cts +1 -1
  299. package/dist/tools/database/elasticsearch.d.ts +1 -1
  300. package/dist/tools/database/elasticsearch.js.map +1 -1
  301. package/dist/tools/database/milvus.cjs +3 -3
  302. package/dist/tools/database/milvus.cjs.map +1 -1
  303. package/dist/tools/database/milvus.d.cts +1 -1
  304. package/dist/tools/database/milvus.d.ts +1 -1
  305. package/dist/tools/database/milvus.js +3 -3
  306. package/dist/tools/database/milvus.js.map +1 -1
  307. package/dist/tools/database/qdrant.cjs +2 -2
  308. package/dist/tools/database/qdrant.cjs.map +1 -1
  309. package/dist/tools/database/qdrant.d.cts +1 -1
  310. package/dist/tools/database/qdrant.d.ts +1 -1
  311. package/dist/tools/database/qdrant.js +2 -2
  312. package/dist/tools/database/qdrant.js.map +1 -1
  313. package/dist/tools/database/sql.cjs.map +1 -1
  314. package/dist/tools/database/sql.d.cts +1 -1
  315. package/dist/tools/database/sql.d.ts +1 -1
  316. package/dist/tools/database/sql.js.map +1 -1
  317. package/dist/tools/llm.d.cts +2 -2
  318. package/dist/tools/llm.d.ts +2 -2
  319. package/dist/tools/mcp.d.cts +1 -1
  320. package/dist/tools/mcp.d.ts +1 -1
  321. package/dist/tools/openapi.d.cts +1 -1
  322. package/dist/tools/openapi.d.ts +1 -1
  323. package/dist/tools/python/output.d.cts +1 -1
  324. package/dist/tools/python/output.d.ts +1 -1
  325. package/dist/tools/python/python.d.cts +2 -2
  326. package/dist/tools/python/python.d.ts +2 -2
  327. package/dist/tools/search/base.cjs.map +1 -1
  328. package/dist/tools/search/base.d.cts +1 -1
  329. package/dist/tools/search/base.d.ts +1 -1
  330. package/dist/tools/search/base.js.map +1 -1
  331. package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -1
  332. package/dist/tools/search/duckDuckGoSearch.d.cts +1 -1
  333. package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
  334. package/dist/tools/search/duckDuckGoSearch.js.map +1 -1
  335. package/dist/tools/search/googleSearch.cjs.map +1 -1
  336. package/dist/tools/search/googleSearch.d.cts +1 -1
  337. package/dist/tools/search/googleSearch.d.ts +1 -1
  338. package/dist/tools/search/googleSearch.js.map +1 -1
  339. package/dist/tools/search/searXNGSearch.d.cts +1 -1
  340. package/dist/tools/search/searXNGSearch.d.ts +1 -1
  341. package/dist/tools/search/wikipedia.cjs +25 -0
  342. package/dist/tools/search/wikipedia.cjs.map +1 -1
  343. package/dist/tools/search/wikipedia.d.cts +2 -3
  344. package/dist/tools/search/wikipedia.d.ts +2 -3
  345. package/dist/tools/search/wikipedia.js +23 -0
  346. package/dist/tools/search/wikipedia.js.map +1 -1
  347. package/dist/tools/similarity.d.cts +1 -1
  348. package/dist/tools/similarity.d.ts +1 -1
  349. package/dist/tools/weather/openMeteo.cjs.map +1 -1
  350. package/dist/tools/weather/openMeteo.d.cts +1 -1
  351. package/dist/tools/weather/openMeteo.d.ts +1 -1
  352. package/dist/tools/weather/openMeteo.js.map +1 -1
  353. package/dist/tools/web/webCrawler.cjs.map +1 -1
  354. package/dist/tools/web/webCrawler.d.cts +1 -1
  355. package/dist/tools/web/webCrawler.d.ts +1 -1
  356. package/dist/tools/web/webCrawler.js.map +1 -1
  357. package/dist/version.cjs +1 -1
  358. package/dist/version.js +1 -1
  359. package/dist/workflows/agent.d.cts +3 -3
  360. package/dist/workflows/agent.d.ts +3 -3
  361. package/dist/workflows/workflow.d.cts +1 -1
  362. package/dist/workflows/workflow.d.ts +1 -1
  363. package/package.json +68 -67
  364. package/dist/adapters/beeai_platform/agents/agent.cjs.map +0 -1
  365. package/dist/adapters/beeai_platform/agents/agent.js.map +0 -1
  366. package/dist/adapters/beeai_platform/agents/events.d.cts +0 -23
  367. package/dist/adapters/beeai_platform/agents/events.d.ts +0 -23
  368. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs +0 -0
  369. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs.map +0 -0
  370. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js +0 -0
  371. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js.map +0 -0
  372. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs +0 -0
  373. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs.map +0 -0
  374. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js +0 -0
  375. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js.map +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":";;;;;;;;;;;;;;;;;;;;AAGC,SAAA,YAAA,CAAA,UAAA,EAAA,MAAA,EAAA,GAAA,EAAA,IAAA,EAAA;;;;;;AAAA,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;;;;;AAsCM,MAAMA,sBAAsBC,mBAAAA,CAAAA;EAzCnC;;;EA0CYC,oBAAAA,GAAuB,KAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,kCAAAA;MACRC,SAAAA,EAAWC,qCAAAA;MACXC,IAAAA,EAAMC,gCAAAA;MACNC,WAAAA,EAAaC,uCAAAA;MACbC,iBAAAA,EAAmBC,wCAAAA;MACnBC,SAAAA,EAAWC,qCAAAA;MACXC,cAAAA,EAAgBC,0CAAAA;MAChBC,SAAAA,EAAWC,qCAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;AAEA,EAAA,MAAMC,GAAAA,CAAI,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,SAAO,EAA+D;AAC9F,IAAA,MAAMC,cAAAA,GAAiB,aAAA;AAEvB,IAAA,OAAO,IAAIC,uBAAAA,CAAU;MACnBC,OAAAA,kBAAS,MAAA,CAAA,MAAMH,OAAAA,CAAQI,IAAAA,CAAK,OAAA,EAAS;AAAEL,QAAAA;AAAK,OAAA,CAAA,EAAnC,SAAA,CAAA;AACTM,MAAAA,OAAAA,gCAAgBC,KAAAA,KAAAA;AACd,QAAA,MAAMN,OAAAA,CAAQI,KAAK,OAAA,EAAS;AAAEE,UAAAA,KAAAA;AAAOP,UAAAA;SAAK,CAAA;AAC1C,QAAA,IAAA,CAAKQ,qBAAAA,CAAsBC,IAAIF,KAAAA,CAAAA;AAE/B,QAAA,IAAIA,iBAAiBG,oCAAAA,EAAuB;AAE1C,UAAA,IAAIH,KAAAA,CAAMI,MAAAA,KAAWD,oCAAAA,CAAsBE,MAAAA,CAAOC,cAAAA,EAAgB;AAChE,YAAA,MAAM,IAAA,CAAKC,MAAAA,CAAOC,GAAAA,CAChB,IAAIC,6BAAiB,IAAA,EAAM;AACzB,cAAA,CAACd,cAAAA,GAAiB;AACpB,aAAA,CAAA,CAAA;WAEJ,MAAO;AACL,YAAA,MAAM,IAAA,CAAKY,MAAAA,CAAOC,GAAAA,CAChB,IAAIE,uBAAAA,CAAY,IAAA,CAAKC,SAAAA,CAAUjC,WAAAA,CAAYkC,MAAAA,CAAO,EAAC,CAAA,EAAI;AACrD,cAAA,CAACjB,cAAAA,GAAiB;AACpB,aAAA,CAAA,CAAA;AAEJ;AACF;OACF,EApBS,SAAA,CAAA;AAqBTkB,MAAAA,QAAAA,kBAAU,MAAA,CAAA,YAAA;AACR,QAAA,MAAMC,KAAAA,GAAQ,IAAA,CAAKC,KAAAA,CAAMD,KAAAA,CAAME,KAAAA,EAAK;AACpC,QAAA,MAAMtB,OAAAA,CAAQI,KAAK,OAAA,EAAS;AAAEL,UAAAA,IAAAA;AAAMqB,UAAAA,KAAAA;AAAOP,UAAAA,MAAAA,EAAQ,IAAA,CAAKA;SAAO,CAAA;AAE/D,QAAA,MAAM,EAAEU,MAAAA,EAAM,GAAK,IAAA,CAAKC,aAAaJ,KAAAA,CAAAA;AACrC,QAAA,MAAMK,GAAAA,GAAM,MAAM,IAAA,CAAKJ,KAAAA,CAAMxB,IAC1B6B,MAAAA,CAAO;UACNC,QAAAA,EAAU,IAAA,CAAKd,MAAAA,CAAOc,QAAAA,CAASL,KAAAA,EAAK;UACpCF,KAAAA,EAAO,IAAA,CAAK5C,uBAAuB4C,KAAAA,GAAQQ,MAAAA;UAC3CC,WAAAA,EAAa/B,MAAAA;UACbgC,MAAAA,EAAQ,IAAA,CAAKT,MAAMS,MAAAA,KAAW;SAChC,CAAA,CACCC,OAAAA,CAAQ,CAACC,UAAAA,KAAAA;AACRT,UAAAA,MAAAA,CAAOvB,OAAAA,CAAQiC,GAAG,QAAA,EAAU,OAAO,EAAEC,KAAAA,EAAOC,GAAAA,EAAKC,OAAK,KAAE;AACtD,YAAA,IAAID,GAAAA,KAAQ,aAAA,IAAiBZ,MAAAA,CAAOc,MAAAA,EAAQ;AAC1C,cAAA;AACF;AACA,YAAA,MAAMrC,OAAAA,CAAQI,KAAK,QAAA,EAAU;AAC3BkC,cAAAA,IAAAA,EAAMf,MAAAA,CAAOgB,UAAAA;cACbC,MAAAA,EAAQ;AAAEL,gBAAAA,GAAAA;AAAKD,gBAAAA,KAAAA,EAAOE,KAAAA,CAAMX,GAAAA;gBAAKgB,WAAAA,EAAaP;AAAM,eAAA;cACpDnC,IAAAA,EAAM;gBAAE2C,OAAAA,EAAS,IAAA;gBAAM,GAAG3C;AAAK,eAAA;AAC/Bc,cAAAA,MAAAA,EAAQ,IAAA,CAAKA;aACf,CAAA;WACF,CAAA;AACAU,UAAAA,MAAAA,CAAOvB,OAAAA,CAAQiC,GAAG,eAAA,EAAiB,OAAO,EAAEE,GAAAA,EAAKQ,KAAAA,EAAOT,OAAK,KAAE;AAC7D,YAAA,MAAMlC,OAAAA,CAAQI,KAAK,eAAA,EAAiB;AAClCkC,cAAAA,IAAAA,EAAMf,MAAAA,CAAOgB,UAAAA;cACbC,MAAAA,EAAQ;AAAEL,gBAAAA,GAAAA;gBAAKD,KAAAA,EAAOS,KAAAA;gBAAOF,WAAAA,EAAaP;AAAM,eAAA;cAChDnC,IAAAA,EAAM;gBAAE2C,OAAAA,EAAS,IAAA;gBAAM,GAAG3C;AAAK;aACjC,CAAA;WACF,CAAA;AAEAiC,UAAAA,UAAAA,CAAWC,GAAG,UAAA,EAAY,OAAO,EAAEC,KAAAA,EAAOU,WAAS,KAAE;AACnD,YAAA,IAAIrB,OAAOc,MAAAA,EAAQ;AACjBO,cAAAA,SAAAA,CAAUC,KAAAA,EAAK;AACf,cAAA;AACF;AAEA,YAAA,MAAMtB,MAAAA,CAAOT,GAAAA,CAAIoB,KAAAA,CAAMY,cAAAA,EAAc,CAAA;AACrC,YAAA,IAAIvB,MAAAA,CAAOwB,YAAAA,CAAaC,WAAAA,KAAgBpB,MAAAA,EAAW;AACjDgB,cAAAA,SAAAA,CAAUC,KAAAA,EAAK;AACjB;WACF,CAAA;SACF,CAAA;AAEF,QAAA,MAAMtB,OAAO0B,GAAAA,EAAG;AAChB,QAAA,MAAM,IAAA,CAAKpC,MAAAA,CAAOqC,UAAAA,CAChB,IAAA,CAAKrC,MAAAA,CAAOc,QAAAA,CAASwB,MAAAA,CAAO,CAACC,GAAAA,KAAQC,kBAAAA,CAAQD,GAAAA,CAAIrD,IAAAA,EAAM;AAACE,UAAAA;AAAe,SAAA,CAAA,KAAM,IAAA,CAAA,CAAA;AAG/E,QAAA,OAAO;AACLqD,UAAAA,KAAAA,EAAO/B,MAAAA,CAAOgB,UAAAA;AACdd,UAAAA;AACF,SAAA;OACF,EAtDU,UAAA,CAAA;MAuDV8B,MAAAA,EAAQ;QACNC,UAAAA,EAAY,IAAA,CAAKC,QAAQC,SAAAA,EAAWC,iBAAAA;AACpC7D,QAAAA;AACF;AACF,KAAA,EAAG8D,GAAAA,EAAG;AACR;AAEA,EAAA,MAAMC,KAAK,EAAEP,KAAAA,EAAOxD,MAAAA,EAAQC,IAAAA,EAAMC,SAAO,EAA+B;AACtE,IAAA,MAAM6D,OAAO,IAAA,CAAKxC,KAAAA,CAAMD,MAAM0C,IAAAA,CAC5B,CAACD,UAASA,KAAAA,CAAKE,IAAAA,CAAKC,IAAAA,EAAI,CAAGC,aAAW,IAAMX,KAAAA,CAAMY,WAAWF,IAAAA,EAAAA,EAAQC,aAAAA,CAAAA;AAEvE,IAAA,IAAI,CAACJ,IAAAA,EAAM;AACT,MAAA,IAAA,CAAKtD,qBAAAA,CAAsBC,IACzB,IAAI2D,qBAAAA,CAAW,8CAA8Cb,KAAAA,CAAMY,SAAS,CAAA,CAAA,CAAA,EAAK,EAAA,EAAI;QACnFE,OAAAA,EAAS;AAAEd,UAAAA,KAAAA;AAAOvD,UAAAA;AAAK;AACzB,OAAA,CAAA,CAAA;AAGF,MAAA,OAAO;QACL2C,OAAAA,EAAS,KAAA;QACT2B,MAAAA,EAAQ,IAAA,CAAKpD,SAAAA,CAAU/B,iBAAAA,CAAkBgC,MAAAA,CAAO;AAC9CE,UAAAA,KAAAA,EAAO,KAAKC,KAAAA,CAAMD;SACpB;AACF,OAAA;AACF;AAEA,IAAA,OAAO,IAAIlB,uBAAAA,CAAU;MACnBqD,MAAAA,EAAQ;AACNzD,QAAAA,MAAAA;QACA0D,UAAAA,EAAY,IAAA,CAAKC,QAAQC,SAAAA,EAAWC;AACtC,OAAA;AACAtD,MAAAA,OAAAA,gCAAgBC,KAAAA,KAAAA;AACd,QAAA,MAAMN,OAAAA,CAAQI,KAAK,WAAA,EAAa;UAC9BkC,IAAAA,EAAM;YACJgC,SAAAA,EAAWhB,KAAAA;AACXO,YAAAA,IAAAA;AACAxC,YAAAA,KAAAA,EAAOiC,KAAAA,CAAMiB,UAAAA;AACbd,YAAAA,OAAAA,EAAS,IAAA,CAAKA,OAAAA;YACdnD,KAAAA,EAAOkE,yBAAAA,CAAeC,OAAOnE,KAAAA;AAC/B,WAAA;AACAP,UAAAA;SACF,CAAA;AACA,QAAA,IAAA,CAAKQ,qBAAAA,CAAsBC,IAAIF,KAAAA,CAAAA;OACjC,EAZS,SAAA,CAAA;AAaTa,MAAAA,QAAAA,kBAAU,MAAA,CAAA,YAAA;AACR,QAAA,MAAMuD,WAAAA,GAAcC,qBAAAA,CAAY,IAAA,CAAKlB,OAAO,CAAA;AAE5C,QAAA,IAAI;AACF,UAAA,MAAMzD,OAAAA,CAAQI,KAAK,WAAA,EAAa;YAC9BkC,IAAAA,EAAM;AACJuB,cAAAA,IAAAA;AACAxC,cAAAA,KAAAA,EAAOiC,KAAAA,CAAMiB,UAAAA;cACbd,OAAAA,EAASiB,WAAAA;cACTJ,SAAAA,EAAWhB;AACb,aAAA;AACAvD,YAAAA;WACF,CAAA;AACA,UAAA,MAAM6E,UAAAA,GAAyB,MAAMf,IAAAA,CAAKgB,GAAAA,CAAIvB,MAAMiB,UAAAA,EAAYG,WAAAA,EAAaN,OAAAA,CAAQ;AACnF,YAAA,CAACU,eAAAA,CAAKC,WAAAA,CAAYC,MAAM,GAAG,IAAA,CAAKnE;WAClC,CAAA;AACA,UAAA,MAAMb,OAAAA,CAAQI,KAAK,aAAA,EAAe;YAChCkC,IAAAA,EAAM;AACJuB,cAAAA,IAAAA;AACAxC,cAAAA,KAAAA,EAAOiC,KAAAA,CAAMiB,UAAAA;cACbd,OAAAA,EAASiB,WAAAA;cACTO,MAAAA,EAAQL,UAAAA;cACRN,SAAAA,EAAWhB;AACb,aAAA;AACAvD,YAAAA;WACF,CAAA;AAEA,UAAA,IAAI6E,UAAAA,CAAWM,SAAO,EAAI;AACxB,YAAA,OAAO;AAAEb,cAAAA,MAAAA,EAAQ,IAAA,CAAKpD,SAAAA,CAAUvB,iBAAAA,CAAkBwB,MAAAA,CAAO,EAAC,CAAA;cAAIwB,OAAAA,EAAS;AAAK,aAAA;AAC9E;AAEA,UAAA,OAAO;YACLA,OAAAA,EAAS,IAAA;AACT2B,YAAAA,MAAAA,EAAQO,WAAW9B,cAAAA;AACrB,WAAA;AACF,SAAA,CAAA,OAASxC,KAAAA,EAAO;AACd,UAAA,MAAMN,OAAAA,CAAQI,KAAK,WAAA,EAAa;YAC9BkC,IAAAA,EAAM;AACJuB,cAAAA,IAAAA;AACAxC,cAAAA,KAAAA,EAAOiC,KAAAA,CAAMiB,UAAAA;cACbd,OAAAA,EAASiB,WAAAA;AACTpE,cAAAA,KAAAA;cACAgE,SAAAA,EAAWhB;AACb,aAAA;AACAvD,YAAAA;WACF,CAAA;AAEA,UAAA,IAAIO,iBAAiB6E,mCAAAA,EAA0B;AAC7C,YAAA,IAAA,CAAK5E,qBAAAA,CAAsBC,IAAIF,KAAAA,CAAAA;AAE/B,YAAA,OAAO;cACLoC,OAAAA,EAAS,KAAA;cACT2B,MAAAA,EAAQ,IAAA,CAAKpD,SAAAA,CAAU3B,cAAAA,CAAe4B,MAAAA,CAAO;AAC3CR,gBAAAA,MAAAA,EAAQJ,MAAM8E,QAAAA;eAChB;AACF,aAAA;AACF;AAEA,UAAA,IAAI9E,iBAAiB+E,oBAAAA,EAAW;AAC9B,YAAA,IAAA,CAAK9E,qBAAAA,CAAsBC,IAAIF,KAAAA,CAAAA;AAE/B,YAAA,OAAO;cACLoC,OAAAA,EAAS,KAAA;cACT2B,MAAAA,EAAQ,IAAA,CAAKpD,SAAAA,CAAU7B,SAAAA,CAAU8B,MAAAA,CAAO;AACtCR,gBAAAA,MAAAA,EAAQJ,MAAMgF,OAAAA;eAChB;AACF,aAAA;AACF;AAEA,UAAA,MAAMhF,KAAAA;AACR;OACF,EAvEU,UAAA;AAwEZ,KAAA,EAAGsD,GAAAA,EAAG;AACR;AAEA,EAAA,IACc2B,SAAAA,GAAY;AACxB,IAAA,MAAMC,IAAAA,GAAO;MACX1G,IAAAA,EAAM;QACJ2G,OAAAA,kBAAS,MAAA,CAAA,CAAC,EAAEC,MAAAA,EAAM,KAChBA,WAAW,IAAA,IAAQ,IAAA,CAAKrE,KAAAA,CAAMR,MAAAA,CAAOqE,OAAAA,EAAO,GACxC,IAAIlE,uBAAAA,CAAY0E,MAAAA,IAAU,KAAKzE,SAAAA,CAAUzB,SAAAA,CAAU0B,OAAO,EAAC,CAAA,CAAA,GAC3DU,MAAAA,EAHG,SAAA;AAIX,OAAA;MACAlD,MAAAA,EAAQ;QACNiH,SAAAA,EAAW;AACTvE,UAAAA,KAAAA,kBAAO,MAAA,CAAA,YAAA;AACL,YAAA,OAAO,MAAMwE,QAAQC,GAAAA,CACnB,IAAA,CAAKxE,MAAMD,KAAAA,CAAM0E,GAAAA,CAAI,OAAOjC,IAAAA,MAAU;AACpCE,cAAAA,IAAAA,EAAMF,IAAAA,CAAKE,IAAAA;cACXgC,WAAAA,EAAalC,IAAAA,CAAKkC,WAAAA,CAAYC,UAAAA,CAAW,IAAA,EAAM,GAAA,CAAA,CAAKC,OAAAA,CAAQ,KAAA,EAAO,EAAA,CAAA,CAAIC,MAAAA,CAAO,GAAA,CAAA;AAC9EC,cAAAA,MAAAA,EAAQC,KAAKC,SAAAA,CACX,MAAMxC,IAAAA,CAAKyC,kBAAAA,oBACV,CAAA,MAAA;AACC,gBAAA,MAAMC,WAAAA,uBAAkBC,GAAAA,CAAI;AAAC,kBAAA,WAAA;AAAa,kBAAA,WAAA;AAAa,kBAAA;AAAU,iBAAA,CAAA;AACjE,gBAAA,OAAO,CAACrE,GAAAA,EAAKD,KAAAA,KAAWqE,YAAYE,GAAAA,CAAItE,GAAAA,IAAOP,MAAAA,GAAYM,KAAAA;AAC7D,eAAA,GAAA;AAEJ,aAAA,CAAA,CAAA,CAAA;WAEJ,EAdO,OAAA;AAeT,SAAA;AACAuD,QAAAA,OAAAA,qCACE,IAAIiB,yBAAAA,CACF,IAAA,CAAKzF,SAAAA,CAAUvC,OAAOwC,MAAAA,CAAO;AAC3BE,UAAAA,KAAAA,EAAO,MAAMoE,IAAAA,CAAK9G,MAAAA,CAAOiH,SAAAA,CAAUvE,KAAAA,EAAK;UACxCuF,YAAAA,EAAc/E,MAAAA;UACdgF,SAAAA,EAAAA,iBAAW,IAAIC,IAAAA,EAAAA,EAAOC,WAAAA;AACxB,SAAA,CAAA,EACA;AACEF,UAAAA,SAAAA,sBAAeC,IAAAA;AACjB,SAAA,CAAA,EATK,SAAA;AAWX;AACF,KAAA;AACA,IAAA,OAAOrB,IAAAA;AACT;EAEA,MAAgBuB,UAAAA,CAAW,EAAErB,MAAAA,EAAM,EAA6C;AAC9E,IAAA,MAAM,EAAE7E,MAAAA,EAAQmG,OAAAA,EAAO,GAAK,IAAA,CAAK3F,KAAAA;AAEjC,IAAA,MAAM4F,gBAAAA,GAAmB;SAAID,OAAAA,CAAQrF,QAAAA;MAAU,IAAA,CAAK4D,SAAAA,CAAUzG,KAAK2G,OAAAA,CAAQ;AAAEC,QAAAA;OAAO;AACjFvC,KAAAA,CAAAA,MAAAA,CAAO+D,eAAAA,CAAAA,CACPpB,GAAAA,CAAI,CAACL,OAAAA,KAAAA;AACJ,MAAA,IAAIA,OAAAA,CAAQ0B,IAAAA,KAASC,gBAAAA,CAAKC,IAAAA,EAAM;AAC9B,QAAA,MAAMnC,OAAAA,GAAU,CAACO,OAAAA,CAAQ6B,IAAAA,CAAKtD,IAAAA,EAAI;AAClC,QAAA,MAAMsD,IAAAA,GAAOpC,OAAAA,GAAAA,CACR,IAAA,CAAKjE,SAAAA,EAAWzB,aAAaC,qCAAAA,EAA2ByB,MAAAA,CAAO,EAAC,CAAA,GAAA,CAChE,IAAA,CAAKD,SAAAA,EAAWnC,IAAAA,IAAQC,kCAAsBmC,MAAAA,CAAO;AACpDG,UAAAA,KAAAA,EAAOoE,OAAAA,CAAQ6B,IAAAA;UACfvH,IAAAA,EAAM;AACJ,YAAA,GAAG0F,OAAAA,EAAS1F,IAAAA;YACZ6G,SAAAA,EAAWnB,OAAAA,EAAS1F,IAAAA,EAAM6G,SAAAA,EAAWE,WAAAA;AACvC;SACF,CAAA;AAEJ,QAAA,OAAO,IAAI9F,uBAAAA,CAAYsG,IAAAA,EAAM7B,OAAAA,CAAQ1F,IAAI,CAAA;AAC3C;AACA,MAAA,OAAO0F,OAAAA;KACT,CAAA;AAEF,IAAA,MAAM5E,MAAAA,GAAS,IAAI0G,2BAAAA,CAAY;MAC7BC,iBAAAA,EAAmB,IAAA;MACnBC,aAAAA,EAAe,GAAA;MACfC,QAAAA,EAAU;AACRC,QAAAA,eAAAA,CAAgBC,WAAAA,EAAW;AAEzB,UAAA,MAAMC,uBAAAA,GAA0BD,YAAY9D,IAAAA,CAAK,CAACV,QAAQ6D,gBAAAA,CAAiBa,QAAAA,CAAS1E,GAAAA,CAAAA,CAAAA;AACpF,UAAA,IAAIyE,uBAAAA,IAA2BA,uBAAAA,KAA4BE,WAAAA,CAAKd,gBAAAA,CAAAA,EAAmB;AACjF,YAAA,OAAOY,uBAAAA;AACT;AAEA,UAAA,MAAMG,WAAAA,GACJJ,WAAAA,CAAYK,MAAAA,GAAS,CAAA,GAChBL,WAAAA,CAAY9D,IAAAA,CACX,CAACV,GAAAA,KACCA,GAAAA,CAAI+D,IAAAA,KAASC,gBAAAA,CAAKc,SAAAA,IAAa7E,mBAAQD,GAAAA,EAAK;AAAC,YAAA,KAAA;AAAO,YAAA;WAAU,CAAA,KAAM,KAAA,CAAA,IACnEwE,WAAAA,CAAY9D,IAAAA,CAAK,CAACV,QAAQA,GAAAA,CAAI+D,IAAAA,KAASC,gBAAAA,CAAKc,SAAS,CAAA,GAC1D,IAAA;AAEN,UAAA,IAAI,CAACF,WAAAA,EAAa;AAChB,YAAA,MAAM,IAAI7D,sBAAW,8DAAA,CAAA;AACvB;AACA,UAAA,OAAO6D,WAAAA;AACT;AACF;KACF,CAAA;AACA,IAAA,MAAMnH,OAAOsH,OAAAA,CAAQ;MAAC,MAAM,IAAA,CAAK5C,SAAAA,CAAU7G,MAAAA,CAAO+G,OAAAA,EAAO;AAAOwB,MAAAA,GAAAA;AAAiB,KAAA,CAAA;AACjF,IAAA,OAAOpG,MAAAA;AACT;AAEUW,EAAAA,YAAAA,CAAaJ,KAAAA,EAAkB;AACvC,IAAA,MAAMG,MAAAA,GAAS,IAAI6G,+BAAAA,CACjB;MACEC,OAAAA,EAAS;QACPC,MAAAA,EAAQ,UAAA;QACRC,IAAAA,EAAM;AAAC,UAAA,WAAA;AAAa,UAAA;;QACpBC,OAAAA,EAAS,IAAA;AACTpG,QAAAA,KAAAA,EAAO,IAAIqG,wBAAAA,CAAeC,KAAAA,CAAEC,QAAM,CAAGC,GAAAA,CAAI,CAAA,CAAA;AAC3C,OAAA;MACA1E,SAAAA,EAAW;QACToE,MAAAA,EAAQ,gBAAA;QACRC,IAAAA,EAAM;AAAC,UAAA;;AACPnG,QAAAA,KAAAA,EAAO,IAAIqG,wBAAAA,CACTC,KAAAA,CAAEG,SACAH,KAAAA,CAAEC,MAAAA,GAAS3E,IAAAA,EAAI,EACf0E,MAAEI,IAAAA,CAAK1H,KAAAA,CAAM0E,IAAI,CAACjC,IAAAA,KAASA,KAAKE,IAAI,CAAA,CAAA,CAAA;AAG1C,OAAA;MACAQ,UAAAA,EAAY;QACV+D,MAAAA,EAAQ,iBAAA;QACRC,IAAAA,EAAM;AAAC,UAAA;;QACPQ,KAAAA,EAAO,IAAA;AACP3G,QAAAA,KAAAA,EAAO,IAAI4G,yBAAAA,CAAgB;AACzB7C,UAAAA,MAAAA,EAAQuC,KAAAA,CAAEO,MAAAA,CAAO,EAAC,EAAGC,WAAAA,EAAW;AAChCC,UAAAA,IAAAA,EAAM,EAAC;UACPC,SAAAA,EAAW;AAAC,YAAA,GAAA;AAAK,YAAA;;SACnB;AACF,OAAA;MACApG,WAAAA,EAAa;QACXsF,MAAAA,EAAQ,kBAAA;QACRC,IAAAA,EAAM;AAAC,UAAA;;QACPQ,KAAAA,EAAO,IAAA;AACP3G,QAAAA,KAAAA,EAAO,IAAIqG,wBAAAA,CAAeC,KAAAA,CAAEC,MAAAA,EAAM;AACpC,OAAA;MACAU,YAAAA,EAAc;QACZf,MAAAA,EAAQ,eAAA;AACRC,QAAAA,IAAAA,EAAM,EAAA;QACNC,OAAAA,EAAS,IAAA;QACTO,KAAAA,EAAO,IAAA;AACP3G,QAAAA,KAAAA,EAAO,IAAIqG,wBAAAA,CAAeC,KAAAA,CAAEC,QAAM,CAAGC,GAAAA,CAAI,CAAA,CAAA;AAC3C;KACF,EACA;MACEU,gBAAAA,EAAkB,IAAA;MAClBC,WAAAA,EAAa,IAAA;MACbC,QAAAA,kBAAU,MAAA,CAAA,CAACC,UACTA,KAAAA,GACI;AACE,QAAA;UAAEtH,GAAAA,EAAK,SAAA;UAAWD,KAAAA,EAAO;AAA+B,SAAA;AACxD,QAAA;UAAEC,GAAAA,EAAK,cAAA;UAAgBD,KAAAA,EAAOuH;AAAM;AAEtC,OAAA,GAAA,EAAA,EANI,UAAA;KAOZ,CAAA;AAGF,IAAA,OAAO;AACLlI,MAAAA;AACF,KAAA;AACF;AACF;;;IAvXWmI,UAAAA,EAAY;;;;;;;IA2NZA,UAAAA,EAAY","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { PromptTemplate } from '../../../../template.cjs';
2
- import { B as BaseRunner, b as ReActAgentRunnerLLMInput, c as ReActAgentRunnerToolInput } from '../../../../agent-B6pOfx0K.cjs';
2
+ import { B as BaseRunner, R as ReActAgentRunnerLLMInput, a as ReActAgentRunnerToolInput } from '../../../../agent-DvvVGvLr.cjs';
3
3
  import { ReActAgentRunIteration, ReActAgentRunInput, ReActAgentParserInput } from '../../types.cjs';
4
4
  import { AnyTool } from '../../../../tools/base.cjs';
5
5
  import { LinePrefixParser } from '../../../../parsers/linePrefix.cjs';
@@ -12,10 +12,10 @@ import '../../../../internals/helpers/guards.cjs';
12
12
  import '../../../../internals/serializable.cjs';
13
13
  import 'ajv';
14
14
  import '../../../../context.cjs';
15
- import '../../../../emitter-pJzHC_AM.cjs';
15
+ import '../../../../emitter-DpqUYjXH.cjs';
16
16
  import '../../../../internals/helpers/promise.cjs';
17
- import '../../../../base-C1hO5EJe.cjs';
18
- import '../../../../chat-BZ55YQab.cjs';
17
+ import '../../../../base-CwcxwybB.cjs';
18
+ import '../../../../chat-CRb3vUVg.cjs';
19
19
  import 'ai';
20
20
  import 'promise-based-task';
21
21
  import '../../../../cache/base.cjs';
@@ -29,6 +29,7 @@ import '@streamparser/json';
29
29
  import 'jsonrepair/stream';
30
30
  import '../../../../internals/helpers/schema.cjs';
31
31
  import 'zod-to-json-schema';
32
+ import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
32
33
  import '../../../../parsers/errors.cjs';
33
34
 
34
35
  declare class DefaultRunner extends BaseRunner {
@@ -51,12 +52,12 @@ declare class DefaultRunner extends BaseRunner {
51
52
  }, z.ZodTypeAny, "passthrough">>, "many">;
52
53
  createdAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
53
54
  }, "strip", z.ZodTypeAny, {
55
+ instructions: string;
54
56
  tools: z.objectOutputType<{
55
57
  name: z.ZodString;
56
58
  description: z.ZodString;
57
59
  schema: z.ZodString;
58
60
  }, z.ZodTypeAny, "passthrough">[];
59
- instructions: string;
60
61
  createdAt?: string | null | undefined;
61
62
  }, {
62
63
  tools: z.objectInputType<{
@@ -1,5 +1,5 @@
1
1
  import { PromptTemplate } from '../../../../template.js';
2
- import { B as BaseRunner, b as ReActAgentRunnerLLMInput, c as ReActAgentRunnerToolInput } from '../../../../agent-7NzfPC6d.js';
2
+ import { B as BaseRunner, R as ReActAgentRunnerLLMInput, a as ReActAgentRunnerToolInput } from '../../../../agent-CHebzsQB.js';
3
3
  import { ReActAgentRunIteration, ReActAgentRunInput, ReActAgentParserInput } from '../../types.js';
4
4
  import { AnyTool } from '../../../../tools/base.js';
5
5
  import { LinePrefixParser } from '../../../../parsers/linePrefix.js';
@@ -12,10 +12,10 @@ import '../../../../internals/helpers/guards.js';
12
12
  import '../../../../internals/serializable.js';
13
13
  import 'ajv';
14
14
  import '../../../../context.js';
15
- import '../../../../emitter-BqpLJQVb.js';
15
+ import '../../../../emitter-CZFbzlUi.js';
16
16
  import '../../../../internals/helpers/promise.js';
17
- import '../../../../base-Bguef5Dg.js';
18
- import '../../../../chat-BBoOSvzm.js';
17
+ import '../../../../base-BQgDlcGa.js';
18
+ import '../../../../chat-C0s-o6ll.js';
19
19
  import 'ai';
20
20
  import 'promise-based-task';
21
21
  import '../../../../cache/base.js';
@@ -29,6 +29,7 @@ import '@streamparser/json';
29
29
  import 'jsonrepair/stream';
30
30
  import '../../../../internals/helpers/schema.js';
31
31
  import 'zod-to-json-schema';
32
+ import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
32
33
  import '../../../../parsers/errors.js';
33
34
 
34
35
  declare class DefaultRunner extends BaseRunner {
@@ -51,12 +52,12 @@ declare class DefaultRunner extends BaseRunner {
51
52
  }, z.ZodTypeAny, "passthrough">>, "many">;
52
53
  createdAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
53
54
  }, "strip", z.ZodTypeAny, {
55
+ instructions: string;
54
56
  tools: z.objectOutputType<{
55
57
  name: z.ZodString;
56
58
  description: z.ZodString;
57
59
  schema: z.ZodString;
58
60
  }, z.ZodTypeAny, "passthrough">[];
59
- instructions: string;
60
61
  createdAt?: string | null | undefined;
61
62
  }, {
62
63
  tools: z.objectInputType<{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../../../src/agents/react/runners/default/runner.ts"],"names":["DefaultRunner","BaseRunner","useNativeToolCalling","defaultTemplates","system","ReActAgentSystemPrompt","assistant","ReActAgentAssistantPrompt","user","ReActAgentUserPrompt","schemaError","ReActAgentSchemaErrorPrompt","toolNotFoundError","ReActAgentToolNotFoundPrompt","toolError","ReActAgentToolErrorPrompt","toolInputError","ReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","llm","signal","meta","emitter","tempMessageKey","Retryable","onRetry","emit","onError","error","failedAttemptsCounter","use","LinePrefixParserError","reason","Reason","NoDataReceived","memory","add","AssistantMessage","UserMessage","templates","render","executor","tools","input","slice","parser","createParser","raw","create","messages","undefined","abortSignal","stream","observe","llmEmitter","on","value","key","field","isDone","data","finalState","update","parsedValue","success","delta","callbacks","abort","getTextContent","partialState","tool_output","end","deleteMany","filter","msg","getProp","state","config","maxRetries","options","execution","maxRetriesPerStep","get","tool","find","name","trim","toUpperCase","tool_name","AgentError","context","output","iteration","tool_input","FrameworkError","ensure","toolOptions","shallowCopy","toolOutput","run","Tool","contextKeys","Memory","result","isEmpty","ToolInputValidationError","toString","ToolError","explain","renderers","self","message","prompt","variables","Promise","all","map","description","replaceAll","replace","concat","schema","JSON","stringify","getInputJsonSchema","ignoredKeys","Set","has","SystemMessage","instructions","createdAt","Date","toISOString","initMemory","history","prevConversation","isTruthy","role","Role","USER","text","TokenMemory","capacityThreshold","syncThreshold","handlers","removalSelector","curMessages","prevConversationMessage","includes","last","lastMessage","length","ASSISTANT","addMany","LinePrefixParser","thought","prefix","next","isStart","ZodParserField","z","string","min","pipeline","enum","isEnd","JSONParserField","object","passthrough","base","matchPair","final_answer","waitForStartNode","endOnRepeat","fallback","stash","enumerable"],"mappings":"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","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n BaseRunner,\n ReActAgentRunnerLLMInput,\n ReActAgentRunnerToolInput,\n} from \"@/agents/react/runners/base.js\";\nimport type {\n ReActAgentRunIteration,\n ReActAgentParserInput,\n ReActAgentRunInput,\n} from \"@/agents/react/types.js\";\nimport { Retryable } from \"@/internals/helpers/retryable.js\";\nimport { AgentError } from \"@/agents/base.js\";\nimport {\n ReActAgentAssistantPrompt,\n ReActAgentSchemaErrorPrompt,\n ReActAgentSystemPrompt,\n ReActAgentToolErrorPrompt,\n ReActAgentToolInputErrorPrompt,\n ReActAgentToolNoResultsPrompt,\n ReActAgentToolNotFoundPrompt,\n ReActAgentUserEmptyPrompt,\n ReActAgentUserPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { AnyTool, Tool, ToolError, ToolInputValidationError, ToolOutput } from \"@/tools/base.js\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { isTruthy, last } from \"remeda\";\nimport { LinePrefixParser, LinePrefixParserError } from \"@/parsers/linePrefix.js\";\nimport { JSONParserField, ZodParserField } from \"@/parsers/field.js\";\nimport { z } from \"zod\";\nimport { AssistantMessage, Role, SystemMessage, UserMessage } from \"@/backend/message.js\";\nimport { TokenMemory } from \"@/memory/tokenMemory.js\";\nimport { getProp } from \"@/internals/helpers/object.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\n\nexport class DefaultRunner extends BaseRunner {\n protected useNativeToolCalling = false;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: ReActAgentSystemPrompt,\n assistant: ReActAgentAssistantPrompt,\n user: ReActAgentUserPrompt,\n schemaError: ReActAgentSchemaErrorPrompt,\n toolNotFoundError: ReActAgentToolNotFoundPrompt,\n toolError: ReActAgentToolErrorPrompt,\n toolInputError: ReActAgentToolInputErrorPrompt,\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n async llm({ signal, meta, emitter }: ReActAgentRunnerLLMInput): Promise<ReActAgentRunIteration> {\n const tempMessageKey = \"tempMessage\" as const;\n\n return new Retryable({\n onRetry: () => emitter.emit(\"retry\", { meta }),\n onError: async (error) => {\n await emitter.emit(\"error\", { error, meta });\n this.failedAttemptsCounter.use(error);\n\n if (error instanceof LinePrefixParserError) {\n // Prevent hanging on EOT\n if (error.reason === LinePrefixParserError.Reason.NoDataReceived) {\n await this.memory.add(\n new AssistantMessage(\"\\n\", {\n [tempMessageKey]: true,\n }),\n );\n } else {\n await this.memory.add(\n new UserMessage(this.templates.schemaError.render({}), {\n [tempMessageKey]: true,\n }),\n );\n }\n }\n },\n executor: async () => {\n const tools = this.input.tools.slice();\n await emitter.emit(\"start\", { meta, tools, memory: this.memory });\n\n const { parser } = this.createParser(tools);\n const raw = await this.input.llm\n .create({\n messages: this.memory.messages.slice(),\n tools: this.useNativeToolCalling ? tools : undefined,\n abortSignal: signal,\n stream: this.input.stream !== false,\n })\n .observe((llmEmitter) => {\n parser.emitter.on(\"update\", async ({ value, key, field }) => {\n if (key === \"tool_output\" && parser.isDone) {\n return;\n }\n await emitter.emit(\"update\", {\n data: parser.finalState,\n update: { key, value: field.raw, parsedValue: value },\n meta: { success: true, ...meta },\n memory: this.memory,\n });\n });\n parser.emitter.on(\"partialUpdate\", async ({ key, delta, value }) => {\n await emitter.emit(\"partialUpdate\", {\n data: parser.finalState,\n update: { key, value: delta, parsedValue: value },\n meta: { success: true, ...meta },\n });\n });\n\n llmEmitter.on(\"newToken\", async ({ value, callbacks }) => {\n if (parser.isDone) {\n callbacks.abort();\n return;\n }\n\n await parser.add(value.getTextContent());\n if (parser.partialState.tool_output !== undefined) {\n callbacks.abort();\n }\n });\n });\n\n await parser.end();\n await this.memory.deleteMany(\n this.memory.messages.filter((msg) => getProp(msg.meta, [tempMessageKey]) === true),\n );\n\n return {\n state: parser.finalState,\n raw,\n };\n },\n config: {\n maxRetries: this.options.execution?.maxRetriesPerStep,\n signal,\n },\n }).get();\n }\n\n async tool({ state, signal, meta, emitter }: ReActAgentRunnerToolInput) {\n const tool = this.input.tools.find(\n (tool) => tool.name.trim().toUpperCase() == state.tool_name?.trim()?.toUpperCase(),\n );\n if (!tool) {\n this.failedAttemptsCounter.use(\n new AgentError(`Agent was trying to use non-existing tool \"${state.tool_name}\"`, [], {\n context: { state, meta },\n }),\n );\n\n return {\n success: false,\n output: this.templates.toolNotFoundError.render({\n tools: this.input.tools,\n }),\n };\n }\n\n return new Retryable({\n config: {\n signal,\n maxRetries: this.options.execution?.maxRetriesPerStep,\n },\n onError: async (error) => {\n await emitter.emit(\"toolError\", {\n data: {\n iteration: state,\n tool,\n input: state.tool_input,\n options: this.options,\n error: FrameworkError.ensure(error),\n },\n meta,\n });\n this.failedAttemptsCounter.use(error);\n },\n executor: async () => {\n const toolOptions = shallowCopy(this.options);\n\n try {\n await emitter.emit(\"toolStart\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n iteration: state,\n },\n meta,\n });\n const toolOutput: ToolOutput = await tool.run(state.tool_input, toolOptions).context({\n [Tool.contextKeys.Memory]: this.memory,\n });\n await emitter.emit(\"toolSuccess\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n result: toolOutput,\n iteration: state,\n },\n meta,\n });\n\n if (toolOutput.isEmpty()) {\n return { output: this.templates.toolNoResultError.render({}), success: true };\n }\n\n return {\n success: true,\n output: toolOutput.getTextContent(),\n };\n } catch (error) {\n await emitter.emit(\"toolError\", {\n data: {\n tool,\n input: state.tool_input,\n options: toolOptions,\n error,\n iteration: state,\n },\n meta,\n });\n\n if (error instanceof ToolInputValidationError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolInputError.render({\n reason: error.toString(),\n }),\n };\n }\n\n if (error instanceof ToolError) {\n this.failedAttemptsCounter.use(error);\n\n return {\n success: false,\n output: this.templates.toolError.render({\n reason: error.explain(),\n }),\n };\n }\n\n throw error;\n }\n },\n }).get();\n }\n\n @Cache({ enumerable: false })\n protected get renderers() {\n const self = {\n user: {\n message: ({ prompt }: ReActAgentRunInput) =>\n prompt !== null || this.input.memory.isEmpty()\n ? new UserMessage(prompt || this.templates.userEmpty.render({}))\n : undefined,\n },\n system: {\n variables: {\n tools: async () => {\n return await Promise.all(\n this.input.tools.map(async (tool) => ({\n name: tool.name,\n description: tool.description.replaceAll(\"\\n\", \".\").replace(/\\.$/, \"\").concat(\".\"),\n schema: JSON.stringify(\n await tool.getInputJsonSchema(),\n (() => {\n const ignoredKeys = new Set([\"minLength\", \"maxLength\", \"$schema\"]);\n return (key, value) => (ignoredKeys.has(key) ? undefined : value);\n })(),\n ),\n })),\n );\n },\n },\n message: async () =>\n new SystemMessage(\n this.templates.system.render({\n tools: await self.system.variables.tools(),\n instructions: undefined,\n createdAt: new Date().toISOString(),\n }),\n {\n createdAt: new Date(),\n },\n ),\n },\n };\n return self;\n }\n\n protected async initMemory({ prompt }: ReActAgentRunInput): Promise<BaseMemory> {\n const { memory: history } = this.input;\n\n const prevConversation = [...history.messages, this.renderers.user.message({ prompt })]\n .filter(isTruthy)\n .map((message) => {\n if (message.role === Role.USER) {\n const isEmpty = !message.text.trim();\n const text = isEmpty\n ? (this.templates?.userEmpty ?? ReActAgentUserEmptyPrompt).render({})\n : (this.templates?.user ?? ReActAgentUserPrompt).render({\n input: message.text,\n meta: {\n ...message?.meta,\n createdAt: message?.meta?.createdAt?.toISOString?.(),\n },\n });\n\n return new UserMessage(text, message.meta);\n }\n return message;\n });\n\n const memory = new TokenMemory({\n capacityThreshold: 0.85,\n syncThreshold: 0.5,\n handlers: {\n removalSelector(curMessages) {\n // First we remove messages from the past conversations\n const prevConversationMessage = curMessages.find((msg) => prevConversation.includes(msg));\n if (prevConversationMessage && prevConversationMessage !== last(prevConversation)) {\n return prevConversationMessage;\n }\n\n const lastMessage =\n curMessages.length > 3\n ? (curMessages.find(\n (msg) =>\n msg.role === Role.ASSISTANT && getProp(msg, [\"ctx\", \"success\"]) === false,\n ) ?? curMessages.find((msg) => msg.role === Role.ASSISTANT))\n : null;\n\n if (!lastMessage) {\n throw new AgentError(\"Cannot fit the current conversation into the context window!\");\n }\n return lastMessage;\n },\n },\n });\n await memory.addMany([await this.renderers.system.message(), ...prevConversation]);\n return memory;\n }\n\n protected createParser(tools: AnyTool[]) {\n const parser = new LinePrefixParser<ReActAgentParserInput>(\n {\n thought: {\n prefix: \"Thought:\",\n next: [\"tool_name\", \"final_answer\"],\n isStart: true,\n field: new ZodParserField(z.string().min(1)),\n },\n tool_name: {\n prefix: \"Function Name:\",\n next: [\"tool_input\"],\n field: new ZodParserField(\n z.pipeline(\n z.string().trim(),\n z.enum(tools.map((tool) => tool.name) as [string, ...string[]]),\n ),\n ),\n },\n tool_input: {\n prefix: \"Function Input:\",\n next: [\"tool_output\"],\n isEnd: true,\n field: new JSONParserField({\n schema: z.object({}).passthrough(),\n base: {},\n matchPair: [\"{\", \"}\"],\n }),\n },\n tool_output: {\n prefix: \"Function Output:\",\n next: [\"final_answer\"],\n isEnd: true,\n field: new ZodParserField(z.string()),\n },\n final_answer: {\n prefix: \"Final Answer:\",\n next: [],\n isStart: true,\n isEnd: true,\n field: new ZodParserField(z.string().min(1)),\n },\n },\n {\n waitForStartNode: true,\n endOnRepeat: true,\n fallback: (stash) =>\n stash\n ? [\n { key: \"thought\", value: \"I now know the final answer.\" },\n { key: \"final_answer\", value: stash },\n ]\n : [],\n },\n );\n\n return {\n parser,\n } as const;\n }\n}\n"]}
@@ -46,12 +46,12 @@ declare const GraniteReActAgentSystemPrompt: PromptTemplate<zod.ZodObject<{
46
46
  }, zod.ZodTypeAny, "passthrough">>, "many">;
47
47
  createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
48
48
  }, "strip", zod.ZodTypeAny, {
49
+ instructions: string;
49
50
  tools: zod.objectOutputType<{
50
51
  name: zod.ZodString;
51
52
  description: zod.ZodString;
52
53
  schema: zod.ZodString;
53
54
  }, zod.ZodTypeAny, "passthrough">[];
54
- instructions: string;
55
55
  createdAt?: string | null | undefined;
56
56
  }, {
57
57
  tools: zod.objectInputType<{
@@ -46,12 +46,12 @@ declare const GraniteReActAgentSystemPrompt: PromptTemplate<zod.ZodObject<{
46
46
  }, zod.ZodTypeAny, "passthrough">>, "many">;
47
47
  createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
48
48
  }, "strip", zod.ZodTypeAny, {
49
+ instructions: string;
49
50
  tools: zod.objectOutputType<{
50
51
  name: zod.ZodString;
51
52
  description: zod.ZodString;
52
53
  schema: zod.ZodString;
53
54
  }, zod.ZodTypeAny, "passthrough">[];
54
- instructions: string;
55
55
  createdAt?: string | null | undefined;
56
56
  }, {
57
57
  tools: zod.objectInputType<{
@@ -47,9 +47,11 @@ class GraniteRunner extends runner_cjs.DefaultRunner {
47
47
  if (update.key === "tool_output") {
48
48
  await memory.add(new message_cjs.ToolMessage({
49
49
  type: "tool-result",
50
- result: update.value,
50
+ output: {
51
+ type: meta.success ? "text" : "error-text",
52
+ value: update.value
53
+ },
51
54
  toolName: data.tool_name,
52
- isError: !meta.success,
53
55
  toolCallId: "DUMMY_ID"
54
56
  }, {
55
57
  success: meta.success
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","result","value","toolName","tool_name","isError","success","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;;;AAGC,SAAA,YAAA,CAAA,UAAA,EAAA,MAAA,EAAA,GAAA,EAAA,IAAA,EAAA;;;;;;AAAA,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;;;;;AAuBM,MAAMA,sBAAsBC,wBAAAA,CAAAA;EA1BnC;;;EA2BYC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,2CAAAA;MACRC,SAAAA,EAAWC,8CAAAA;MACXC,IAAAA,EAAMC,yCAAAA;MACNC,WAAAA,EAAaC,gDAAAA;MACbC,iBAAAA,EAAmBC,iDAAAA;MACnBC,SAAAA,EAAWC,8CAAAA;MACXC,cAAAA,EAAgBC,mDAAAA;;MAEhBC,SAAAA,EAAWC,qCAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,uBAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;AACNC,UAAAA,MAAAA,EAAQR,MAAAA,CAAOS,KAAAA;AACfC,UAAAA,QAAAA,EAAUP,IAAAA,CAAKQ,SAAAA;AACfC,UAAAA,OAAAA,EAAS,CAACX,IAAAA,CAAKY,OAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAED,UAAAA,OAAAA,EAASZ,IAAAA,CAAKY;AAAQ,SAAA,CAAA,CAAA;AAG9B;KACF,EACA;MACEE,UAAAA,EAAY;KACd,CAAA;AAEJ;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOxB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAwB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDX,SAAAA,EAAW;AAAE,YAAA,GAAGS,KAAAA,CAAMT,SAAAA;YAAWW,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF;AACF;;;IAnEWK,UAAAA,EAAY","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n GraniteReActAgentAssistantPrompt,\n GraniteReActAgentSchemaErrorPrompt,\n GraniteReActAgentSystemPrompt,\n GraniteReActAgentToolErrorPrompt,\n GraniteReActAgentToolInputErrorPrompt,\n GraniteReActAgentToolNotFoundPrompt,\n GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n ReActAgentToolNoResultsPrompt,\n ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n protected useNativeToolCalling = true;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: GraniteReActAgentSystemPrompt,\n assistant: GraniteReActAgentAssistantPrompt,\n user: GraniteReActAgentUserPrompt,\n schemaError: GraniteReActAgentSchemaErrorPrompt,\n toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n toolError: GraniteReActAgentToolErrorPrompt,\n toolInputError: GraniteReActAgentToolInputErrorPrompt,\n // Note: These are from ReAct\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n constructor(\n input: ReActAgentInput,\n options: ReActAgentRunOptions,\n run: GetRunContext<ReActAgent>,\n ) {\n super(input, options, run);\n\n run.emitter.on(\n \"update\",\n async ({ update, meta, memory, data }) => {\n if (update.key === \"tool_output\") {\n await memory.add(\n new ToolMessage(\n {\n type: \"tool-result\",\n result: update.value!,\n toolName: data.tool_name!,\n isError: !meta.success,\n toolCallId: \"DUMMY_ID\",\n },\n { success: meta.success },\n ),\n );\n }\n },\n {\n isBlocking: true,\n },\n );\n }\n\n protected createParser(tools: AnyTool[]) {\n const { parser } = super.createParser(tools);\n\n return {\n parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n options,\n nodes: {\n ...nodes,\n thought: { ...nodes.thought, prefix: \"Thought:\" },\n tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n },\n })),\n };\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","output","success","value","toolName","tool_name","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA0BO,MAAMA,sBAAsBC,wBAAAA,CAAAA;AAAAA,EAAAA;;;EACvBC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,2CAAAA;MACRC,SAAAA,EAAWC,8CAAAA;MACXC,IAAAA,EAAMC,yCAAAA;MACNC,WAAAA,EAAaC,gDAAAA;MACbC,iBAAAA,EAAmBC,iDAAAA;MACnBC,SAAAA,EAAWC,8CAAAA;MACXC,cAAAA,EAAgBC,mDAAAA;;MAEhBC,SAAAA,EAAWC,qCAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,uBAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;UACNC,MAAAA,EAAQ;YAAED,IAAAA,EAAMN,IAAAA,CAAKQ,UAAU,MAAA,GAAS,YAAA;AAAcC,YAAAA,KAAAA,EAAOV,MAAAA,CAAOU;AAAM,WAAA;AAC1EC,UAAAA,QAAAA,EAAUR,IAAAA,CAAKS,SAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAEJ,UAAAA,OAAAA,EAASR,IAAAA,CAAKQ;AAAQ,SAAA,CAAA,CAAA;AAG9B;KACF,EACA;MACEK,UAAAA,EAAY;KACd,CAAA;AAEJ;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOvB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAuB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDT,SAAAA,EAAW;AAAE,YAAA,GAAGO,KAAAA,CAAMP,SAAAA;YAAWS,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF;AACF;;;IAlEWK,UAAAA,EAAY","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n GraniteReActAgentAssistantPrompt,\n GraniteReActAgentSchemaErrorPrompt,\n GraniteReActAgentSystemPrompt,\n GraniteReActAgentToolErrorPrompt,\n GraniteReActAgentToolInputErrorPrompt,\n GraniteReActAgentToolNotFoundPrompt,\n GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n ReActAgentToolNoResultsPrompt,\n ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n protected useNativeToolCalling = true;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: GraniteReActAgentSystemPrompt,\n assistant: GraniteReActAgentAssistantPrompt,\n user: GraniteReActAgentUserPrompt,\n schemaError: GraniteReActAgentSchemaErrorPrompt,\n toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n toolError: GraniteReActAgentToolErrorPrompt,\n toolInputError: GraniteReActAgentToolInputErrorPrompt,\n // Note: These are from ReAct\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n constructor(\n input: ReActAgentInput,\n options: ReActAgentRunOptions,\n run: GetRunContext<ReActAgent>,\n ) {\n super(input, options, run);\n\n run.emitter.on(\n \"update\",\n async ({ update, meta, memory, data }) => {\n if (update.key === \"tool_output\") {\n await memory.add(\n new ToolMessage(\n {\n type: \"tool-result\",\n output: { type: meta.success ? \"text\" : \"error-text\", value: update.value },\n toolName: data.tool_name!,\n toolCallId: \"DUMMY_ID\",\n },\n { success: meta.success },\n ),\n );\n }\n },\n {\n isBlocking: true,\n },\n );\n }\n\n protected createParser(tools: AnyTool[]) {\n const { parser } = super.createParser(tools);\n\n return {\n parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n options,\n nodes: {\n ...nodes,\n thought: { ...nodes.thought, prefix: \"Thought:\" },\n tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n },\n })),\n };\n }\n}\n"]}
@@ -4,9 +4,10 @@ import * as zod from 'zod';
4
4
  import { AnyTool } from '../../../../tools/base.cjs';
5
5
  import { DefaultRunner } from '../default/runner.cjs';
6
6
  import { ReActAgentRunOptions, ReActAgentParserInput } from '../../types.cjs';
7
- import { R as ReActAgentInput, a as ReActAgent } from '../../../../agent-B6pOfx0K.cjs';
7
+ import { b as ReActAgentInput, c as ReActAgent } from '../../../../agent-DvvVGvLr.cjs';
8
8
  import { GetRunContext } from '../../../../context.cjs';
9
- import '../../../../emitter-pJzHC_AM.cjs';
9
+ import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
10
+ import '../../../../emitter-DpqUYjXH.cjs';
10
11
  import '../../../../internals/types.cjs';
11
12
  import '../../../../internals/helpers/guards.cjs';
12
13
  import '../../../../internals/serializable.cjs';
@@ -24,8 +25,8 @@ import '../../../../internals/helpers/promise.cjs';
24
25
  import '../../../../backend/message.cjs';
25
26
  import 'ai';
26
27
  import '../../../../memory/base.cjs';
27
- import '../../../../base-C1hO5EJe.cjs';
28
- import '../../../../chat-BZ55YQab.cjs';
28
+ import '../../../../base-CwcxwybB.cjs';
29
+ import '../../../../chat-CRb3vUVg.cjs';
29
30
  import '../../../../backend/constants.cjs';
30
31
  import '../../../../logger/logger.cjs';
31
32
  import 'pino';
@@ -52,12 +53,12 @@ declare class GraniteRunner extends DefaultRunner {
52
53
  }, zod.ZodTypeAny, "passthrough">>, "many">;
53
54
  createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
54
55
  }, "strip", zod.ZodTypeAny, {
56
+ instructions: string;
55
57
  tools: zod.objectOutputType<{
56
58
  name: zod.ZodString;
57
59
  description: zod.ZodString;
58
60
  schema: zod.ZodString;
59
61
  }, zod.ZodTypeAny, "passthrough">[];
60
- instructions: string;
61
62
  createdAt?: string | null | undefined;
62
63
  }, {
63
64
  tools: zod.objectInputType<{
@@ -4,9 +4,10 @@ import * as zod from 'zod';
4
4
  import { AnyTool } from '../../../../tools/base.js';
5
5
  import { DefaultRunner } from '../default/runner.js';
6
6
  import { ReActAgentRunOptions, ReActAgentParserInput } from '../../types.js';
7
- import { R as ReActAgentInput, a as ReActAgent } from '../../../../agent-7NzfPC6d.js';
7
+ import { b as ReActAgentInput, c as ReActAgent } from '../../../../agent-CHebzsQB.js';
8
8
  import { GetRunContext } from '../../../../context.js';
9
- import '../../../../emitter-BqpLJQVb.js';
9
+ import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
10
+ import '../../../../emitter-CZFbzlUi.js';
10
11
  import '../../../../internals/types.js';
11
12
  import '../../../../internals/helpers/guards.js';
12
13
  import '../../../../internals/serializable.js';
@@ -24,8 +25,8 @@ import '../../../../internals/helpers/promise.js';
24
25
  import '../../../../backend/message.js';
25
26
  import 'ai';
26
27
  import '../../../../memory/base.js';
27
- import '../../../../base-Bguef5Dg.js';
28
- import '../../../../chat-BBoOSvzm.js';
28
+ import '../../../../base-BQgDlcGa.js';
29
+ import '../../../../chat-C0s-o6ll.js';
29
30
  import '../../../../backend/constants.js';
30
31
  import '../../../../logger/logger.js';
31
32
  import 'pino';
@@ -52,12 +53,12 @@ declare class GraniteRunner extends DefaultRunner {
52
53
  }, zod.ZodTypeAny, "passthrough">>, "many">;
53
54
  createdAt: zod.ZodOptional<zod.ZodNullable<zod.ZodString>>;
54
55
  }, "strip", zod.ZodTypeAny, {
56
+ instructions: string;
55
57
  tools: zod.objectOutputType<{
56
58
  name: zod.ZodString;
57
59
  description: zod.ZodString;
58
60
  schema: zod.ZodString;
59
61
  }, zod.ZodTypeAny, "passthrough">[];
60
- instructions: string;
61
62
  createdAt?: string | null | undefined;
62
63
  }, {
63
64
  tools: zod.objectInputType<{
@@ -45,9 +45,11 @@ class GraniteRunner extends DefaultRunner {
45
45
  if (update.key === "tool_output") {
46
46
  await memory.add(new ToolMessage({
47
47
  type: "tool-result",
48
- result: update.value,
48
+ output: {
49
+ type: meta.success ? "text" : "error-text",
50
+ value: update.value
51
+ },
49
52
  toolName: data.tool_name,
50
- isError: !meta.success,
51
53
  toolCallId: "DUMMY_ID"
52
54
  }, {
53
55
  success: meta.success
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","result","value","toolName","tool_name","isError","success","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;AAGC,SAAA,YAAA,CAAA,UAAA,EAAA,MAAA,EAAA,GAAA,EAAA,IAAA,EAAA;;;;;;AAAA,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;;;;;AAuBM,MAAMA,sBAAsBC,aAAAA,CAAAA;EA1BnC;;;EA2BYC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,6BAAAA;MACRC,SAAAA,EAAWC,gCAAAA;MACXC,IAAAA,EAAMC,2BAAAA;MACNC,WAAAA,EAAaC,kCAAAA;MACbC,iBAAAA,EAAmBC,mCAAAA;MACnBC,SAAAA,EAAWC,gCAAAA;MACXC,cAAAA,EAAgBC,qCAAAA;;MAEhBC,SAAAA,EAAWC,yBAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,WAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;AACNC,UAAAA,MAAAA,EAAQR,MAAAA,CAAOS,KAAAA;AACfC,UAAAA,QAAAA,EAAUP,IAAAA,CAAKQ,SAAAA;AACfC,UAAAA,OAAAA,EAAS,CAACX,IAAAA,CAAKY,OAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAED,UAAAA,OAAAA,EAASZ,IAAAA,CAAKY;AAAQ,SAAA,CAAA,CAAA;AAG9B;KACF,EACA;MACEE,UAAAA,EAAY;KACd,CAAA;AAEJ;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOxB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAwB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDX,SAAAA,EAAW;AAAE,YAAA,GAAGS,KAAAA,CAAMT,SAAAA;YAAWW,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF;AACF;;;IAnEWK,UAAAA,EAAY","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n GraniteReActAgentAssistantPrompt,\n GraniteReActAgentSchemaErrorPrompt,\n GraniteReActAgentSystemPrompt,\n GraniteReActAgentToolErrorPrompt,\n GraniteReActAgentToolInputErrorPrompt,\n GraniteReActAgentToolNotFoundPrompt,\n GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n ReActAgentToolNoResultsPrompt,\n ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n protected useNativeToolCalling = true;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: GraniteReActAgentSystemPrompt,\n assistant: GraniteReActAgentAssistantPrompt,\n user: GraniteReActAgentUserPrompt,\n schemaError: GraniteReActAgentSchemaErrorPrompt,\n toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n toolError: GraniteReActAgentToolErrorPrompt,\n toolInputError: GraniteReActAgentToolInputErrorPrompt,\n // Note: These are from ReAct\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n constructor(\n input: ReActAgentInput,\n options: ReActAgentRunOptions,\n run: GetRunContext<ReActAgent>,\n ) {\n super(input, options, run);\n\n run.emitter.on(\n \"update\",\n async ({ update, meta, memory, data }) => {\n if (update.key === \"tool_output\") {\n await memory.add(\n new ToolMessage(\n {\n type: \"tool-result\",\n result: update.value!,\n toolName: data.tool_name!,\n isError: !meta.success,\n toolCallId: \"DUMMY_ID\",\n },\n { success: meta.success },\n ),\n );\n }\n },\n {\n isBlocking: true,\n },\n );\n }\n\n protected createParser(tools: AnyTool[]) {\n const { parser } = super.createParser(tools);\n\n return {\n parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n options,\n nodes: {\n ...nodes,\n thought: { ...nodes.thought, prefix: \"Thought:\" },\n tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n },\n })),\n };\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","output","success","value","toolName","tool_name","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;;;;;;;;;;;;AA0BO,MAAMA,sBAAsBC,aAAAA,CAAAA;AAAAA,EAAAA;;;EACvBC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,6BAAAA;MACRC,SAAAA,EAAWC,gCAAAA;MACXC,IAAAA,EAAMC,2BAAAA;MACNC,WAAAA,EAAaC,kCAAAA;MACbC,iBAAAA,EAAmBC,mCAAAA;MACnBC,SAAAA,EAAWC,gCAAAA;MACXC,cAAAA,EAAgBC,qCAAAA;;MAEhBC,SAAAA,EAAWC,yBAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,WAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;UACNC,MAAAA,EAAQ;YAAED,IAAAA,EAAMN,IAAAA,CAAKQ,UAAU,MAAA,GAAS,YAAA;AAAcC,YAAAA,KAAAA,EAAOV,MAAAA,CAAOU;AAAM,WAAA;AAC1EC,UAAAA,QAAAA,EAAUR,IAAAA,CAAKS,SAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAEJ,UAAAA,OAAAA,EAASR,IAAAA,CAAKQ;AAAQ,SAAA,CAAA,CAAA;AAG9B;KACF,EACA;MACEK,UAAAA,EAAY;KACd,CAAA;AAEJ;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOvB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAuB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDT,SAAAA,EAAW;AAAE,YAAA,GAAGO,KAAAA,CAAMP,SAAAA;YAAWS,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF;AACF;;;IAlEWK,UAAAA,EAAY","file":"runner.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n GraniteReActAgentAssistantPrompt,\n GraniteReActAgentSchemaErrorPrompt,\n GraniteReActAgentSystemPrompt,\n GraniteReActAgentToolErrorPrompt,\n GraniteReActAgentToolInputErrorPrompt,\n GraniteReActAgentToolNotFoundPrompt,\n GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n ReActAgentToolNoResultsPrompt,\n ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n protected useNativeToolCalling = true;\n\n @Cache({ enumerable: false })\n public get defaultTemplates() {\n return {\n system: GraniteReActAgentSystemPrompt,\n assistant: GraniteReActAgentAssistantPrompt,\n user: GraniteReActAgentUserPrompt,\n schemaError: GraniteReActAgentSchemaErrorPrompt,\n toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n toolError: GraniteReActAgentToolErrorPrompt,\n toolInputError: GraniteReActAgentToolInputErrorPrompt,\n // Note: These are from ReAct\n userEmpty: ReActAgentUserEmptyPrompt,\n toolNoResultError: ReActAgentToolNoResultsPrompt,\n };\n }\n\n static {\n this.register();\n }\n\n constructor(\n input: ReActAgentInput,\n options: ReActAgentRunOptions,\n run: GetRunContext<ReActAgent>,\n ) {\n super(input, options, run);\n\n run.emitter.on(\n \"update\",\n async ({ update, meta, memory, data }) => {\n if (update.key === \"tool_output\") {\n await memory.add(\n new ToolMessage(\n {\n type: \"tool-result\",\n output: { type: meta.success ? \"text\" : \"error-text\", value: update.value },\n toolName: data.tool_name!,\n toolCallId: \"DUMMY_ID\",\n },\n { success: meta.success },\n ),\n );\n }\n },\n {\n isBlocking: true,\n },\n );\n }\n\n protected createParser(tools: AnyTool[]) {\n const { parser } = super.createParser(tools);\n\n return {\n parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n options,\n nodes: {\n ...nodes,\n thought: { ...nodes.thought, prefix: \"Thought:\" },\n tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n },\n })),\n };\n }\n}\n"]}
@@ -1,12 +1,12 @@
1
1
  import { BaseMemory } from '../../memory/base.cjs';
2
2
  import { Message } from '../../backend/message.cjs';
3
- import { C as Callback } from '../../emitter-pJzHC_AM.cjs';
3
+ import { C as Callback } from '../../emitter-DpqUYjXH.cjs';
4
4
  import { AnyTool, BaseToolRunOptions, ToolOutput, ToolError } from '../../tools/base.cjs';
5
5
  import { ReActAgentSystemPrompt, ReActAgentAssistantPrompt, ReActAgentUserPrompt, ReActAgentUserEmptyPrompt, ReActAgentToolErrorPrompt, ReActAgentToolInputErrorPrompt, ReActAgentToolNoResultsPrompt, ReActAgentToolNotFoundPrompt, ReActAgentSchemaErrorPrompt } from './prompts.cjs';
6
6
  import { LinePrefixParser } from '../../parsers/linePrefix.cjs';
7
7
  import { ZodParserField, JSONParserField } from '../../parsers/field.cjs';
8
8
  import { NonUndefined } from '../../internals/types.cjs';
9
- import { n as ChatModelOutput } from '../../chat-BZ55YQab.cjs';
9
+ import { n as ChatModelOutput } from '../../chat-CRb3vUVg.cjs';
10
10
  import '../../errors.cjs';
11
11
  import '../../internals/helpers/guards.cjs';
12
12
  import '../../internals/serializable.cjs';
@@ -20,6 +20,7 @@ import '../../internals/helpers/schema.cjs';
20
20
  import 'zod';
21
21
  import 'zod-to-json-schema';
22
22
  import '../../template.cjs';
23
+ import 'node_modules/remeda/dist/ToString-DKW-jYvM.js';
23
24
  import '../../parsers/errors.cjs';
24
25
  import '@streamparser/json';
25
26
  import 'jsonrepair/stream';