orbitx 0.2.5 → 0.2.7

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 (398) hide show
  1. package/dist/core/agent-providers.d.ts +15 -10
  2. package/dist/core/agent-providers.d.ts.map +1 -1
  3. package/dist/core/agent-providers.js +65 -15
  4. package/dist/core/agent-providers.js.map +1 -1
  5. package/dist/core/ai-provider.d.ts +61 -3
  6. package/dist/core/ai-provider.d.ts.map +1 -1
  7. package/dist/core/ai-provider.js.map +1 -1
  8. package/dist/core/anthropic-provider.d.ts +6 -1
  9. package/dist/core/anthropic-provider.d.ts.map +1 -1
  10. package/dist/core/anthropic-provider.js +165 -73
  11. package/dist/core/anthropic-provider.js.map +1 -1
  12. package/dist/core/base-agent.d.ts +21 -41
  13. package/dist/core/base-agent.d.ts.map +1 -1
  14. package/dist/core/base-agent.js +139 -140
  15. package/dist/core/base-agent.js.map +1 -1
  16. package/dist/core/deepseek-provider.d.ts +4 -1
  17. package/dist/core/deepseek-provider.d.ts.map +1 -1
  18. package/dist/core/deepseek-provider.js +103 -57
  19. package/dist/core/deepseek-provider.js.map +1 -1
  20. package/dist/core/mcp-client.d.ts +10 -2
  21. package/dist/core/mcp-client.d.ts.map +1 -1
  22. package/dist/core/mcp-client.js +28 -4
  23. package/dist/core/mcp-client.js.map +1 -1
  24. package/dist/core/mcp-fs-storage.d.ts.map +1 -1
  25. package/dist/core/mcp-fs-storage.js +2 -1
  26. package/dist/core/mcp-fs-storage.js.map +1 -1
  27. package/dist/core/mcp-server.d.ts +5 -1
  28. package/dist/core/mcp-server.d.ts.map +1 -1
  29. package/dist/core/mcp-server.js +31 -1
  30. package/dist/core/mcp-server.js.map +1 -1
  31. package/dist/core/mcp.d.ts +9 -23
  32. package/dist/core/mcp.d.ts.map +1 -1
  33. package/dist/core/mcp.js +1 -24
  34. package/dist/core/mcp.js.map +1 -1
  35. package/dist/core/ollama-provider.d.ts +4 -1
  36. package/dist/core/ollama-provider.d.ts.map +1 -1
  37. package/dist/core/ollama-provider.js +75 -38
  38. package/dist/core/ollama-provider.js.map +1 -1
  39. package/dist/core/openai-provider.d.ts +4 -1
  40. package/dist/core/openai-provider.d.ts.map +1 -1
  41. package/dist/core/openai-provider.js +90 -48
  42. package/dist/core/openai-provider.js.map +1 -1
  43. package/dist/core/retry.d.ts +1 -1
  44. package/dist/core/retry.d.ts.map +1 -1
  45. package/dist/core/retry.js +5 -1
  46. package/dist/core/retry.js.map +1 -1
  47. package/dist/core/skill.d.ts +2 -2
  48. package/dist/core/skill.d.ts.map +1 -1
  49. package/dist/index.d.ts +13 -20
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +9 -10
  52. package/dist/index.js.map +1 -1
  53. package/dist/templates/simple.d.ts +8 -12
  54. package/dist/templates/simple.d.ts.map +1 -1
  55. package/dist/templates/simple.js +6 -10
  56. package/dist/templates/simple.js.map +1 -1
  57. package/dist/tests/core/mcp-computer.test.js +26 -23
  58. package/dist/tests/core/mcp-computer.test.js.map +1 -1
  59. package/dist/tests/core/mcp-connection.test.js +23 -21
  60. package/dist/tests/core/mcp-connection.test.js.map +1 -1
  61. package/dist/tests/core/mcp-ipc-connection.test.js +30 -28
  62. package/dist/tests/core/mcp-ipc-connection.test.js.map +1 -1
  63. package/dist/tests/core/mcp-ws-connection.test.js +31 -30
  64. package/dist/tests/core/mcp-ws-connection.test.js.map +1 -1
  65. package/dist/tests/index.d.ts +27 -0
  66. package/dist/tests/index.d.ts.map +1 -1
  67. package/dist/tests/index.js +27 -0
  68. package/dist/tests/index.js.map +1 -1
  69. package/dist/tests/tools/agent/agent-tools.test.js +152 -147
  70. package/dist/tests/tools/agent/agent-tools.test.js.map +1 -1
  71. package/dist/tests/tools/bash/fixtures.d.ts +16 -0
  72. package/dist/tests/tools/bash/fixtures.d.ts.map +1 -0
  73. package/dist/tests/tools/bash/fixtures.js +22 -0
  74. package/dist/tests/tools/bash/fixtures.js.map +1 -0
  75. package/dist/tests/tools/bash/kill-tree.d.ts +21 -0
  76. package/dist/tests/tools/bash/kill-tree.d.ts.map +1 -0
  77. package/dist/tests/tools/bash/kill-tree.js +47 -0
  78. package/dist/tests/tools/bash/kill-tree.js.map +1 -0
  79. package/dist/tests/tools/bash/list.test.d.ts +2 -0
  80. package/dist/tests/tools/bash/list.test.d.ts.map +1 -0
  81. package/dist/tests/tools/bash/list.test.js +43 -0
  82. package/dist/tests/tools/bash/list.test.js.map +1 -0
  83. package/dist/tests/tools/bash/logs.test.d.ts +2 -0
  84. package/dist/tests/tools/bash/logs.test.d.ts.map +1 -0
  85. package/dist/tests/tools/bash/logs.test.js +48 -0
  86. package/dist/tests/tools/bash/logs.test.js.map +1 -0
  87. package/dist/tests/tools/bash/run.test.d.ts +2 -0
  88. package/dist/tests/tools/bash/run.test.d.ts.map +1 -0
  89. package/dist/tests/tools/bash/run.test.js +53 -0
  90. package/dist/tests/tools/bash/run.test.js.map +1 -0
  91. package/dist/tests/tools/bash/terminate.test.d.ts +2 -0
  92. package/dist/tests/tools/bash/terminate.test.d.ts.map +1 -0
  93. package/dist/tests/tools/bash/terminate.test.js +60 -0
  94. package/dist/tests/tools/bash/terminate.test.js.map +1 -0
  95. package/dist/tests/tools/bash/wait.test.d.ts +2 -0
  96. package/dist/tests/tools/bash/wait.test.d.ts.map +1 -0
  97. package/dist/tests/tools/bash/wait.test.js +45 -0
  98. package/dist/tests/tools/bash/wait.test.js.map +1 -0
  99. package/dist/tests/tools/bash/write-input.test.d.ts +2 -0
  100. package/dist/tests/tools/bash/write-input.test.d.ts.map +1 -0
  101. package/dist/tests/tools/bash/write-input.test.js +65 -0
  102. package/dist/tests/tools/bash/write-input.test.js.map +1 -0
  103. package/dist/tests/tools/browser/browser-tools.test.d.ts +2 -0
  104. package/dist/tests/tools/browser/browser-tools.test.d.ts.map +1 -0
  105. package/dist/tests/tools/browser/browser-tools.test.js +36 -0
  106. package/dist/tests/tools/browser/browser-tools.test.js.map +1 -0
  107. package/dist/tests/tools/fs/create-dir.test.d.ts +2 -0
  108. package/dist/tests/tools/fs/create-dir.test.d.ts.map +1 -0
  109. package/dist/tests/tools/fs/create-dir.test.js +37 -0
  110. package/dist/tests/tools/fs/create-dir.test.js.map +1 -0
  111. package/dist/tests/tools/fs/delete.test.d.ts +2 -0
  112. package/dist/tests/tools/fs/delete.test.d.ts.map +1 -0
  113. package/dist/tests/tools/fs/delete.test.js +69 -0
  114. package/dist/tests/tools/fs/delete.test.js.map +1 -0
  115. package/dist/tests/tools/fs/edit-file.test.d.ts +2 -0
  116. package/dist/tests/tools/fs/edit-file.test.d.ts.map +1 -0
  117. package/dist/tests/tools/fs/edit-file.test.js +103 -0
  118. package/dist/tests/tools/fs/edit-file.test.js.map +1 -0
  119. package/dist/tests/tools/fs/list-dir.test.d.ts +2 -0
  120. package/dist/tests/tools/fs/list-dir.test.d.ts.map +1 -0
  121. package/dist/tests/tools/fs/list-dir.test.js +65 -0
  122. package/dist/tests/tools/fs/list-dir.test.js.map +1 -0
  123. package/dist/tests/tools/fs/move.test.d.ts +2 -0
  124. package/dist/tests/tools/fs/move.test.d.ts.map +1 -0
  125. package/dist/tests/tools/fs/move.test.js +47 -0
  126. package/dist/tests/tools/fs/move.test.js.map +1 -0
  127. package/dist/tests/tools/fs/read-file.test.d.ts +2 -0
  128. package/dist/tests/tools/fs/read-file.test.d.ts.map +1 -0
  129. package/dist/tests/tools/fs/read-file.test.js +52 -0
  130. package/dist/tests/tools/fs/read-file.test.js.map +1 -0
  131. package/dist/tests/tools/fs/stat.test.d.ts +2 -0
  132. package/dist/tests/tools/fs/stat.test.d.ts.map +1 -0
  133. package/dist/tests/tools/fs/stat.test.js +43 -0
  134. package/dist/tests/tools/fs/stat.test.js.map +1 -0
  135. package/dist/tests/tools/fs/write-file.test.d.ts +2 -0
  136. package/dist/tests/tools/fs/write-file.test.d.ts.map +1 -0
  137. package/dist/tests/tools/fs/write-file.test.js +53 -0
  138. package/dist/tests/tools/fs/write-file.test.js.map +1 -0
  139. package/dist/tests/tools/present/add.test.d.ts +2 -0
  140. package/dist/tests/tools/present/add.test.d.ts.map +1 -0
  141. package/dist/tests/tools/present/add.test.js +51 -0
  142. package/dist/tests/tools/present/add.test.js.map +1 -0
  143. package/dist/tests/tools/present/clear.test.d.ts +2 -0
  144. package/dist/tests/tools/present/clear.test.d.ts.map +1 -0
  145. package/dist/tests/tools/present/clear.test.js +44 -0
  146. package/dist/tests/tools/present/clear.test.js.map +1 -0
  147. package/dist/tests/tools/present/get-list.test.d.ts +2 -0
  148. package/dist/tests/tools/present/get-list.test.d.ts.map +1 -0
  149. package/dist/tests/tools/present/get-list.test.js +50 -0
  150. package/dist/tests/tools/present/get-list.test.js.map +1 -0
  151. package/dist/tests/tools/question-answer/question-answer.test.d.ts +2 -0
  152. package/dist/tests/tools/question-answer/question-answer.test.d.ts.map +1 -0
  153. package/dist/tests/tools/question-answer/question-answer.test.js +24 -0
  154. package/dist/tests/tools/question-answer/question-answer.test.js.map +1 -0
  155. package/dist/tests/tools/todo/check-task.test.d.ts +2 -0
  156. package/dist/tests/tools/todo/check-task.test.d.ts.map +1 -0
  157. package/dist/tests/tools/todo/check-task.test.js +42 -0
  158. package/dist/tests/tools/todo/check-task.test.js.map +1 -0
  159. package/dist/tests/tools/todo/create-list.test.d.ts +2 -0
  160. package/dist/tests/tools/todo/create-list.test.d.ts.map +1 -0
  161. package/dist/tests/tools/todo/create-list.test.js +32 -0
  162. package/dist/tests/tools/todo/create-list.test.js.map +1 -0
  163. package/dist/tests/tools/todo/create-task.test.d.ts +2 -0
  164. package/dist/tests/tools/todo/create-task.test.d.ts.map +1 -0
  165. package/dist/tests/tools/todo/create-task.test.js +53 -0
  166. package/dist/tests/tools/todo/create-task.test.js.map +1 -0
  167. package/dist/tests/tools/todo/get-list.test.d.ts +2 -0
  168. package/dist/tests/tools/todo/get-list.test.d.ts.map +1 -0
  169. package/dist/tests/tools/todo/get-list.test.js +38 -0
  170. package/dist/tests/tools/todo/get-list.test.js.map +1 -0
  171. package/dist/tests/tools/todo/get-lists.test.d.ts +2 -0
  172. package/dist/tests/tools/todo/get-lists.test.d.ts.map +1 -0
  173. package/dist/tests/tools/todo/get-lists.test.js +29 -0
  174. package/dist/tests/tools/todo/get-lists.test.js.map +1 -0
  175. package/dist/tests/tools/todo/remove-list.test.d.ts +2 -0
  176. package/dist/tests/tools/todo/remove-list.test.d.ts.map +1 -0
  177. package/dist/tests/tools/todo/remove-list.test.js +41 -0
  178. package/dist/tests/tools/todo/remove-list.test.js.map +1 -0
  179. package/dist/tests/tools/todo/remove-task.test.d.ts +2 -0
  180. package/dist/tests/tools/todo/remove-task.test.d.ts.map +1 -0
  181. package/dist/tests/tools/todo/remove-task.test.js +45 -0
  182. package/dist/tests/tools/todo/remove-task.test.js.map +1 -0
  183. package/dist/tests/tools/utils/delay.test.js +26 -24
  184. package/dist/tests/tools/utils/delay.test.js.map +1 -1
  185. package/dist/tests/tools/utils/get-current-time.test.js +43 -41
  186. package/dist/tests/tools/utils/get-current-time.test.js.map +1 -1
  187. package/dist/tests/tools/utils/read-image.test.d.ts +2 -0
  188. package/dist/tests/tools/utils/read-image.test.d.ts.map +1 -0
  189. package/dist/tests/tools/utils/read-image.test.js +66 -0
  190. package/dist/tests/tools/utils/read-image.test.js.map +1 -0
  191. package/dist/tools/agent/hire.d.ts +1 -2
  192. package/dist/tools/agent/hire.d.ts.map +1 -1
  193. package/dist/tools/agent/hire.js +1 -4
  194. package/dist/tools/agent/hire.js.map +1 -1
  195. package/dist/tools/agent/index.d.ts +1 -3
  196. package/dist/tools/agent/index.d.ts.map +1 -1
  197. package/dist/tools/agent/index.js +0 -1
  198. package/dist/tools/agent/index.js.map +1 -1
  199. package/dist/tools/agent/list.d.ts +1 -1
  200. package/dist/tools/agent/list.d.ts.map +1 -1
  201. package/dist/tools/agent/prompt.d.ts +1 -2
  202. package/dist/tools/agent/prompt.d.ts.map +1 -1
  203. package/dist/tools/agent/prompt.js +11 -7
  204. package/dist/tools/agent/prompt.js.map +1 -1
  205. package/dist/tools/agent/report.d.ts +1 -1
  206. package/dist/tools/agent/report.d.ts.map +1 -1
  207. package/dist/tools/bash/index.d.ts +1 -3
  208. package/dist/tools/bash/index.d.ts.map +1 -1
  209. package/dist/tools/bash/index.js +0 -1
  210. package/dist/tools/bash/index.js.map +1 -1
  211. package/dist/tools/bash/list.d.ts +1 -1
  212. package/dist/tools/bash/list.d.ts.map +1 -1
  213. package/dist/tools/bash/list.js +1 -1
  214. package/dist/tools/bash/list.js.map +1 -1
  215. package/dist/tools/bash/logs.d.ts +1 -1
  216. package/dist/tools/bash/logs.d.ts.map +1 -1
  217. package/dist/tools/bash/logs.js +1 -1
  218. package/dist/tools/bash/logs.js.map +1 -1
  219. package/dist/tools/bash/run.d.ts +1 -2
  220. package/dist/tools/bash/run.d.ts.map +1 -1
  221. package/dist/tools/bash/run.js +1 -7
  222. package/dist/tools/bash/run.js.map +1 -1
  223. package/dist/tools/bash/terminate.d.ts +1 -2
  224. package/dist/tools/bash/terminate.d.ts.map +1 -1
  225. package/dist/tools/bash/terminate.js +1 -4
  226. package/dist/tools/bash/terminate.js.map +1 -1
  227. package/dist/tools/bash/wait.d.ts +1 -2
  228. package/dist/tools/bash/wait.d.ts.map +1 -1
  229. package/dist/tools/bash/wait.js +1 -7
  230. package/dist/tools/bash/wait.js.map +1 -1
  231. package/dist/tools/bash/write-input.d.ts +1 -2
  232. package/dist/tools/bash/write-input.d.ts.map +1 -1
  233. package/dist/tools/bash/write-input.js +1 -4
  234. package/dist/tools/bash/write-input.js.map +1 -1
  235. package/dist/tools/browser/click.d.ts +1 -2
  236. package/dist/tools/browser/click.d.ts.map +1 -1
  237. package/dist/tools/browser/click.js +1 -4
  238. package/dist/tools/browser/click.js.map +1 -1
  239. package/dist/tools/browser/console.d.ts +1 -1
  240. package/dist/tools/browser/console.d.ts.map +1 -1
  241. package/dist/tools/browser/create-session.d.ts +1 -2
  242. package/dist/tools/browser/create-session.d.ts.map +1 -1
  243. package/dist/tools/browser/create-session.js +1 -4
  244. package/dist/tools/browser/create-session.js.map +1 -1
  245. package/dist/tools/browser/fill.d.ts +1 -2
  246. package/dist/tools/browser/fill.d.ts.map +1 -1
  247. package/dist/tools/browser/fill.js +1 -4
  248. package/dist/tools/browser/fill.js.map +1 -1
  249. package/dist/tools/browser/get-sessions.d.ts +1 -1
  250. package/dist/tools/browser/get-sessions.d.ts.map +1 -1
  251. package/dist/tools/browser/index.d.ts +1 -3
  252. package/dist/tools/browser/index.d.ts.map +1 -1
  253. package/dist/tools/browser/index.js +0 -1
  254. package/dist/tools/browser/index.js.map +1 -1
  255. package/dist/tools/browser/inject.d.ts +1 -2
  256. package/dist/tools/browser/inject.d.ts.map +1 -1
  257. package/dist/tools/browser/inject.js +1 -4
  258. package/dist/tools/browser/inject.js.map +1 -1
  259. package/dist/tools/browser/navigate.d.ts +1 -2
  260. package/dist/tools/browser/navigate.d.ts.map +1 -1
  261. package/dist/tools/browser/navigate.js +1 -4
  262. package/dist/tools/browser/navigate.js.map +1 -1
  263. package/dist/tools/browser/network-status.d.ts +1 -1
  264. package/dist/tools/browser/network-status.d.ts.map +1 -1
  265. package/dist/tools/browser/network.d.ts +1 -1
  266. package/dist/tools/browser/network.d.ts.map +1 -1
  267. package/dist/tools/browser/read.d.ts +1 -2
  268. package/dist/tools/browser/read.d.ts.map +1 -1
  269. package/dist/tools/browser/read.js +1 -4
  270. package/dist/tools/browser/read.js.map +1 -1
  271. package/dist/tools/browser/remove-session.d.ts +1 -2
  272. package/dist/tools/browser/remove-session.d.ts.map +1 -1
  273. package/dist/tools/browser/remove-session.js +1 -4
  274. package/dist/tools/browser/remove-session.js.map +1 -1
  275. package/dist/tools/browser/screenshot.d.ts +1 -2
  276. package/dist/tools/browser/screenshot.d.ts.map +1 -1
  277. package/dist/tools/browser/screenshot.js +16 -15
  278. package/dist/tools/browser/screenshot.js.map +1 -1
  279. package/dist/tools/browser/scroll-info.d.ts +1 -1
  280. package/dist/tools/browser/scroll-info.d.ts.map +1 -1
  281. package/dist/tools/browser/scroll.d.ts +1 -2
  282. package/dist/tools/browser/scroll.d.ts.map +1 -1
  283. package/dist/tools/browser/scroll.js +1 -4
  284. package/dist/tools/browser/scroll.js.map +1 -1
  285. package/dist/tools/browser/submit-form.d.ts +1 -2
  286. package/dist/tools/browser/submit-form.d.ts.map +1 -1
  287. package/dist/tools/browser/submit-form.js +1 -4
  288. package/dist/tools/browser/submit-form.js.map +1 -1
  289. package/dist/tools/fs/create-dir.d.ts +1 -2
  290. package/dist/tools/fs/create-dir.d.ts.map +1 -1
  291. package/dist/tools/fs/create-dir.js +1 -4
  292. package/dist/tools/fs/create-dir.js.map +1 -1
  293. package/dist/tools/fs/delete.d.ts +1 -2
  294. package/dist/tools/fs/delete.d.ts.map +1 -1
  295. package/dist/tools/fs/delete.js +1 -4
  296. package/dist/tools/fs/delete.js.map +1 -1
  297. package/dist/tools/fs/edit-file.d.ts +1 -2
  298. package/dist/tools/fs/edit-file.d.ts.map +1 -1
  299. package/dist/tools/fs/edit-file.js +1 -4
  300. package/dist/tools/fs/edit-file.js.map +1 -1
  301. package/dist/tools/fs/index.d.ts +1 -3
  302. package/dist/tools/fs/index.d.ts.map +1 -1
  303. package/dist/tools/fs/index.js +0 -1
  304. package/dist/tools/fs/index.js.map +1 -1
  305. package/dist/tools/fs/list-dir.d.ts +1 -2
  306. package/dist/tools/fs/list-dir.d.ts.map +1 -1
  307. package/dist/tools/fs/list-dir.js +1 -4
  308. package/dist/tools/fs/list-dir.js.map +1 -1
  309. package/dist/tools/fs/move.d.ts +1 -2
  310. package/dist/tools/fs/move.d.ts.map +1 -1
  311. package/dist/tools/fs/move.js +1 -4
  312. package/dist/tools/fs/move.js.map +1 -1
  313. package/dist/tools/fs/read-file.d.ts +1 -2
  314. package/dist/tools/fs/read-file.d.ts.map +1 -1
  315. package/dist/tools/fs/read-file.js +1 -4
  316. package/dist/tools/fs/read-file.js.map +1 -1
  317. package/dist/tools/fs/stat.d.ts +1 -2
  318. package/dist/tools/fs/stat.d.ts.map +1 -1
  319. package/dist/tools/fs/stat.js +1 -4
  320. package/dist/tools/fs/stat.js.map +1 -1
  321. package/dist/tools/fs/write-file.d.ts +1 -2
  322. package/dist/tools/fs/write-file.d.ts.map +1 -1
  323. package/dist/tools/fs/write-file.js +1 -4
  324. package/dist/tools/fs/write-file.js.map +1 -1
  325. package/dist/tools/present/add.d.ts +1 -2
  326. package/dist/tools/present/add.d.ts.map +1 -1
  327. package/dist/tools/present/add.js +1 -4
  328. package/dist/tools/present/add.js.map +1 -1
  329. package/dist/tools/present/clear.d.ts +1 -2
  330. package/dist/tools/present/clear.d.ts.map +1 -1
  331. package/dist/tools/present/clear.js +1 -4
  332. package/dist/tools/present/clear.js.map +1 -1
  333. package/dist/tools/present/get-list.d.ts +1 -2
  334. package/dist/tools/present/get-list.d.ts.map +1 -1
  335. package/dist/tools/present/get-list.js +0 -2
  336. package/dist/tools/present/get-list.js.map +1 -1
  337. package/dist/tools/present/index.d.ts +1 -3
  338. package/dist/tools/present/index.d.ts.map +1 -1
  339. package/dist/tools/present/index.js +0 -1
  340. package/dist/tools/present/index.js.map +1 -1
  341. package/dist/tools/question-answer/index.d.ts +1 -3
  342. package/dist/tools/question-answer/index.d.ts.map +1 -1
  343. package/dist/tools/question-answer/index.js +0 -1
  344. package/dist/tools/question-answer/index.js.map +1 -1
  345. package/dist/tools/question-answer/question-answer.d.ts +1 -2
  346. package/dist/tools/question-answer/question-answer.d.ts.map +1 -1
  347. package/dist/tools/question-answer/question-answer.js +1 -4
  348. package/dist/tools/question-answer/question-answer.js.map +1 -1
  349. package/dist/tools/todo/check-task.d.ts +1 -2
  350. package/dist/tools/todo/check-task.d.ts.map +1 -1
  351. package/dist/tools/todo/check-task.js +1 -4
  352. package/dist/tools/todo/check-task.js.map +1 -1
  353. package/dist/tools/todo/create-list.d.ts +1 -2
  354. package/dist/tools/todo/create-list.d.ts.map +1 -1
  355. package/dist/tools/todo/create-list.js +1 -4
  356. package/dist/tools/todo/create-list.js.map +1 -1
  357. package/dist/tools/todo/create-task.d.ts +1 -2
  358. package/dist/tools/todo/create-task.d.ts.map +1 -1
  359. package/dist/tools/todo/create-task.js +1 -4
  360. package/dist/tools/todo/create-task.js.map +1 -1
  361. package/dist/tools/todo/get-list.d.ts +1 -1
  362. package/dist/tools/todo/get-list.d.ts.map +1 -1
  363. package/dist/tools/todo/get-list.js +1 -1
  364. package/dist/tools/todo/get-list.js.map +1 -1
  365. package/dist/tools/todo/get-lists.d.ts +1 -1
  366. package/dist/tools/todo/get-lists.d.ts.map +1 -1
  367. package/dist/tools/todo/get-lists.js +1 -1
  368. package/dist/tools/todo/get-lists.js.map +1 -1
  369. package/dist/tools/todo/index.d.ts +1 -3
  370. package/dist/tools/todo/index.d.ts.map +1 -1
  371. package/dist/tools/todo/index.js +0 -1
  372. package/dist/tools/todo/index.js.map +1 -1
  373. package/dist/tools/todo/remove-list.d.ts +1 -2
  374. package/dist/tools/todo/remove-list.d.ts.map +1 -1
  375. package/dist/tools/todo/remove-list.js +1 -4
  376. package/dist/tools/todo/remove-list.js.map +1 -1
  377. package/dist/tools/todo/remove-task.d.ts +1 -2
  378. package/dist/tools/todo/remove-task.d.ts.map +1 -1
  379. package/dist/tools/todo/remove-task.js +1 -4
  380. package/dist/tools/todo/remove-task.js.map +1 -1
  381. package/dist/tools/utils/delay.d.ts +1 -1
  382. package/dist/tools/utils/delay.d.ts.map +1 -1
  383. package/dist/tools/utils/get-current-time.d.ts +1 -1
  384. package/dist/tools/utils/get-current-time.d.ts.map +1 -1
  385. package/dist/tools/utils/index.d.ts +1 -1
  386. package/dist/tools/utils/index.d.ts.map +1 -1
  387. package/dist/tools/utils/read-image.d.ts +12 -7
  388. package/dist/tools/utils/read-image.d.ts.map +1 -1
  389. package/dist/tools/utils/read-image.js +27 -17
  390. package/dist/tools/utils/read-image.js.map +1 -1
  391. package/docs/agents.md +57 -26
  392. package/docs/api-reference.md +12 -13
  393. package/docs/getting-started.md +2 -2
  394. package/docs/mcp-architecture.md +15 -3
  395. package/docs/providers.md +119 -16
  396. package/docs/streaming.md +19 -2
  397. package/docs/tools.md +41 -8
  398. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-provider.js","sourceRoot":"","sources":["../../src/core/anthropic-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic-provider.js","sourceRoot":"","sources":["../../src/core/anthropic-provider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Message, StreamCallback } from "./ai-provider.js";
1
+ import type { Message, StreamCallback, ProviderType } from "./ai-provider.js";
2
2
  import type MCPClient from "./mcp-client.js";
3
3
  import type MCPTool from "./mcp.js";
4
4
  import type Skill from "./skill.js";
@@ -17,71 +17,51 @@ export type ExtractedSegment = {
17
17
  };
18
18
  export declare class BaseAgent {
19
19
  #private;
20
- constructor({ instruction, allowedTools, aiProvider, mcpClient, initData, skills, maxMemorizeToken, }: {
20
+ constructor({ safetyPolicies, instruction, allowedTools, aiProvider, mcpClient, initData, skills, maxMemorizeToken, features: { executeProviderFromMCPTool } }: {
21
+ safetyPolicies?: string;
21
22
  instruction: string;
22
- allowedTools: MCPTool<any>[];
23
+ allowedTools: MCPTool[];
23
24
  aiProvider: AgentProvidersInput;
24
25
  mcpClient: MCPClient;
25
26
  skills?: Skill[];
26
27
  /** If omitted, derived from the main provider's reported context window (via getCapabilities()) instead of a hardcoded constant, so the memory-compaction trigger point scales with whatever model is actually in use. */
27
28
  maxMemorizeToken?: number;
28
29
  initData?: {
29
- memory: string;
30
- messagesFull: Message[];
31
- fullInputMissTokens: number;
32
- fullInputHitTokens: number;
33
- fullOutputTokens: number;
30
+ compactMemory: string;
31
+ /** Retired messages only, disjoint from messagesCompact — see the field comment on #retiredMessages. Each Message carries its own `usage`/`timestamp`, which is what token accounting is now derived from (see getCompactTotalTokens()/getFullTotalToken()). */
32
+ retiredMessages: Message[];
33
+ /** The working context currently replayed to the provider every turn. */
34
34
  messagesCompact: Message[];
35
- currentInputMissTokens: number;
36
- currentInputHitTokens: number;
37
- currentOutputTokens: number;
38
- /** Optional so snapshots taken before image-usage tracking existed still load — missing values default to 0. */
39
- imageInputMissTokens?: number;
40
- imageOutputTokens?: number;
35
+ };
36
+ /** Off by default — opt-in flags for capabilities that widen what a tool can trigger through this agent. */
37
+ features?: {
38
+ /** Whether a tool's `execute()` may call `mcp.executeProvider(...)` to reach a registered `AIProvider` directly. Off by default: a tool that can trigger an arbitrary provider call is a bigger trust surface than one that only returns data to the model, so it needs an explicit opt-in. When false, #executeProvider throws instead of dispatching. */
39
+ executeProviderFromMCPTool?: boolean;
41
40
  };
42
41
  });
43
42
  stop(): Promise<void>;
43
+ safeStop(): Promise<void>;
44
+ immediateStop(): void;
44
45
  run(prompt: string, streamCallback?: StreamCallback): Promise<void>;
45
- /** Full recoverable snapshot of agent state — pass this back in as `initData` on a fresh BaseAgent instance (e.g. after a process restart) to resume exactly where this one left off. Persist the return value to disk (or wherever) whenever you want a recovery point. */
46
46
  getCurrentAgentStates(): {
47
- memory: string;
48
- messagesFull: Message[];
49
- fullInputMissTokens: number;
50
- fullInputHitTokens: number;
51
- fullOutputTokens: number;
47
+ compactMemory: string;
48
+ retiredMessages: Message[];
52
49
  messagesCompact: Message[];
53
- currentInputMissTokens: number;
54
- currentInputHitTokens: number;
55
- currentOutputTokens: number;
56
- imageInputMissTokens: number;
57
- imageOutputTokens: number;
58
- };
59
- /** Lifetime total across the main loop (current + all prior compacted segments) AND every ImageDescriber call this agent has made. */
60
- getTotalTokens(): {
61
- total: number;
62
- inputHit: number;
63
- inputMiss: number;
64
- output: number;
65
- };
66
- getCurrentTotalTokens(): {
67
- total: number;
68
- inputHit: number;
69
- inputMiss: number;
70
- output: number;
71
50
  };
72
- /** Usage from ImageDescriber calls only (see #resolveToolOutputForModel) — not included in getCurrentTotalTokens()/getFullTotalTokens() since it isn't part of the main loop's current/full split, but it IS folded into getTotalTokens()'s grand total. Each call is a fresh, standalone chat, so there's no hit/miss split to make — inputHit is always 0, every input token counts as inputMiss. */
73
- getImageTotalTokens(): {
51
+ getCompactTotalTokens(type: ProviderType): {
74
52
  total: number;
75
53
  inputHit: number;
76
54
  inputMiss: number;
77
55
  output: number;
78
56
  };
79
- getFullTotalTokens(): {
57
+ getFullTotalToken(type: ProviderType): {
80
58
  total: number;
81
59
  inputHit: number;
82
60
  inputMiss: number;
83
61
  output: number;
84
62
  };
63
+ getCompactTotalCost(type: ProviderType): number;
64
+ getFullTotalCost(type: ProviderType): number;
85
65
  }
86
66
  export default BaseAgent;
87
67
  //# sourceMappingURL=base-agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-agent.d.ts","sourceRoot":"","sources":["../../src/core/base-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,OAAO,EAAE,cAAc,EAA+B,MAAM,kBAAkB,CAAC;AACzG,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,OAAO,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAGpC,OAAO,EAAyB,KAAK,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEvF,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,CAAC;AA2BhD,qBAAa,SAAS;;gBA0CN,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,QAUC,EACD,MAAW,EACX,gBAAgB,GACnB,EAAE;QACC,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,UAAU,EAAE,mBAAmB,CAAC;QAChC,SAAS,EAAE,SAAS,CAAC;QACrB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,0NAA0N;QAC1N,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,EAAE;YACP,MAAM,EAAE,MAAM,CAAC;YACf,YAAY,EAAE,OAAO,EAAE,CAAC;YACxB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,kBAAkB,EAAE,MAAM,CAAC;YAC3B,gBAAgB,EAAE,MAAM,CAAC;YACzB,eAAe,EAAE,OAAO,EAAE,CAAC;YAC3B,sBAAsB,EAAE,MAAM,CAAC;YAC/B,qBAAqB,EAAE,MAAM,CAAC;YAC9B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,gHAAgH;YAChH,oBAAoB,CAAC,EAAE,MAAM,CAAC;YAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;SAC9B,CAAA;KACJ;IA6IK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBrB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA0HzE,4QAA4Q;IAC5Q,qBAAqB;;;;;;;;;;;;;IAerB,sIAAsI;IACtI,cAAc;;;;;;IASd,qBAAqB;;;;;;IASrB,uYAAuY;IACvY,mBAAmB;;;;;;IASnB,kBAAkB;;;;;;CAQrB;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"base-agent.d.ts","sourceRoot":"","sources":["../../src/core/base-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,OAAO,EAAE,cAAc,EAA2D,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACnJ,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,OAAO,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAyB,KAAK,mBAAmB,EAAyB,MAAM,sBAAsB,CAAC;AAE9G,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,CAAC;AA2BhD,qBAAa,SAAS;;gBAqCN,EACR,cAAmB,EACnB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,QAIC,EACD,MAAW,EACX,gBAAgB,EAChB,QAAQ,EAAE,EACN,0BAAkC,EAGrC,EACJ,EAAE;QACC,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,OAAO,EAAE,CAAC;QACxB,UAAU,EAAE,mBAAmB,CAAC;QAChC,SAAS,EAAE,SAAS,CAAC;QACrB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,0NAA0N;QAC1N,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,EAAE;YACP,aAAa,EAAE,MAAM,CAAC;YACtB,gQAAgQ;YAChQ,eAAe,EAAE,OAAO,EAAE,CAAC;YAC3B,yEAAyE;YACzE,eAAe,EAAE,OAAO,EAAE,CAAC;SAC9B,CAAC;QACF,4GAA4G;QAC5G,QAAQ,CAAC,EAAE;YACP,2VAA2V;YAC3V,0BAA0B,CAAC,EAAE,OAAO,CAAC;SACxC,CAAA;KACJ;IAsIK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB/B,aAAa,IAAI,IAAI;IAKf,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6JzE,qBAAqB;;;;;IAQrB,qBAAqB,CAAC,IAAI,EAAE,YAAY;;;;;;IAKxC,iBAAiB,CAAC,IAAI,EAAE,YAAY;;;;;;IAKpC,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAI/C,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;CAG/C;AAED,eAAe,SAAS,CAAC"}
@@ -1,4 +1,3 @@
1
- import { ImageDescriber } from "./image-describer.js";
2
1
  import { resolveAgentProviders } from "./agent-providers.js";
3
2
  /** Built-in tool, always available alongside whatever MCP tools are allowed — lets the model trigger memory compaction itself instead of only having it happen as a hidden side-effect. */
4
3
  const COMPACT_MEMORY_TOOL_NAME = "compact_memory";
@@ -16,63 +15,48 @@ const COMPACT_MEMORY_TOOL = {
16
15
  };
17
16
  export class BaseAgent {
18
17
  #maxMemorizeToken;
18
+ #safetyPolicies = "";
19
19
  #instruction = "";
20
20
  #allSkills = [];
21
21
  #allowedTools = [];
22
22
  /** Built once, lazily, from all skills/tools — never changes after that, so it's identical (and cache-friendly) across every turn and every iteration of the run loop. */
23
23
  #systemPrompt;
24
- #memory = "";
25
- #messagesFull = [];
24
+ #compactMemory = "";
25
+ /** Retired messages only — whatever a `compact_memory` call has already folded out of #messagesCompact. Disjoint from #messagesCompact, not a superset of it: a message lives in exactly one of the two at any time. The complete history is the concatenation of this and #messagesCompact, not this array alone. */
26
+ #retiredMessages = [];
26
27
  #runningProcess = false;
27
28
  #incomingRun = [];
28
- #fullInputMissTokens = 0;
29
- #fullInputHitTokens = 0;
30
- #fullOutputTokens = 0;
29
+ /** The working context currently replayed to the provider every turn. Everything gets pushed here first; #compact() moves it into #retiredMessages and clears this. */
31
30
  #messagesCompact = [];
32
- #currentInputMissTokens = 0;
33
- #currentInputHitTokens = 0;
34
- #currentLastOutputTokens = 0;
35
- #currentOutputTokens = 0;
36
- // Usage from ImageDescriber calls (see #resolveToolOutputForModel) — tracked
37
- // separately from the main loop's counters above since each call is a fresh,
38
- // standalone chat with no history to replay, unlike the main loop. No hit/miss
39
- // split here (unlike #currentInput*Tokens above) — there's nothing to have been
40
- // cached from a prior turn, so every input token is a miss.
41
- #imageInputMissTokens = 0;
42
- #imageOutputTokens = 0;
43
31
  #stopSignal = false;
32
+ /** Set for the duration of the in-flight `#mainProvider.chat()` call in the run loop below, and cleared right after — lets `immediateStop()` cancel that specific call without needing to know anything about the loop's internal state. */
33
+ #currentAbortController;
44
34
  #mcpClient;
35
+ /** Every provider this agent was given, keyed by role — see agent-providers.ts. Only ever touched from #executeProvider — never handed to a tool or across a transport boundary directly (see MCP#executeProvider in mcp.ts). */
36
+ #providers;
45
37
  #mainProvider;
46
- #imageProvider;
47
- constructor({ instruction, allowedTools, aiProvider, mcpClient, initData = {
48
- memory: "",
49
- messagesFull: [],
50
- fullInputMissTokens: 0,
51
- fullInputHitTokens: 0,
52
- fullOutputTokens: 0,
38
+ #usageByToolCallId = new Map();
39
+ /** See the `features.executeProviderFromMCPTool` constructor option — off by default. */
40
+ #executeProviderFromMCPTool = false;
41
+ constructor({ safetyPolicies = "", instruction, allowedTools, aiProvider, mcpClient, initData = {
42
+ compactMemory: "",
43
+ retiredMessages: [],
53
44
  messagesCompact: [],
54
- currentInputMissTokens: 0,
55
- currentInputHitTokens: 0,
56
- currentOutputTokens: 0,
57
- }, skills = [], maxMemorizeToken, }) {
45
+ }, skills = [], maxMemorizeToken, features: { executeProviderFromMCPTool = false } = {
46
+ executeProviderFromMCPTool: false
47
+ } }) {
48
+ this.#safetyPolicies = safetyPolicies;
58
49
  this.#instruction = instruction;
59
50
  this.#allowedTools = allowedTools;
60
51
  this.#mcpClient = mcpClient;
61
- this.#memory = initData.memory;
62
- this.#messagesFull = initData.messagesFull;
63
- this.#fullInputMissTokens = initData.fullInputMissTokens;
64
- this.#fullInputHitTokens = initData.fullInputHitTokens;
65
- this.#fullOutputTokens = initData.fullOutputTokens;
52
+ this.#compactMemory = initData.compactMemory;
53
+ this.#retiredMessages = initData.retiredMessages;
66
54
  this.#messagesCompact = initData.messagesCompact;
67
- this.#currentInputMissTokens = initData.currentInputMissTokens;
68
- this.#currentInputHitTokens = initData.currentInputHitTokens;
69
- this.#currentOutputTokens = initData.currentOutputTokens;
70
- this.#imageInputMissTokens = initData.imageInputMissTokens ?? 0;
71
- this.#imageOutputTokens = initData.imageOutputTokens ?? 0;
72
55
  this.#allSkills = skills;
73
- const resolved = resolveAgentProviders(aiProvider);
74
- this.#mainProvider = resolved.main;
75
- this.#imageProvider = resolved.image;
56
+ this.#executeProviderFromMCPTool = executeProviderFromMCPTool;
57
+ this.#providers = resolveAgentProviders(aiProvider);
58
+ this.#mainProvider = this.#providers.getMain();
59
+ this.#mcpClient.setExecuteProviderHandler(this.#executeProvider.bind(this));
76
60
  this.#maxMemorizeToken = maxMemorizeToken ?? this.#deriveMaxMemorizeToken();
77
61
  }
78
62
  #deriveMaxMemorizeToken() {
@@ -94,7 +78,7 @@ ${skill.getSkill().instructions}
94
78
  `}
95
79
 
96
80
  MEMORY:
97
- ${this.#memory || "(empty)"}
81
+ ${this.#compactMemory || "(empty)"}
98
82
 
99
83
  INSTRUCTIONS:
100
84
  ${this.#instruction}
@@ -104,7 +88,7 @@ ${this.#instruction}
104
88
  return `You are an assistant with access to tools (provided natively). Think step by step. After each tool result, continue reasoning or call another tool as needed. Never invent tool results.
105
89
  ${this.#buildSkillsAndMemoryBlock(skills)}`;
106
90
  }
107
- /** Built once from the full, fixed set of skills/tools and cached — identical on every turn, so it's also a stable prefix for provider-side prompt caching. */
91
+ /** Built from the fixed set of skills/tools plus the current MEMORY note, and cached until #compact() invalidates it (the cache is only ever a stable prefix for provider-side prompt caching between compactions, not across one). */
108
92
  #getOrBuildSystemPrompt() {
109
93
  if (this.#systemPrompt !== undefined) {
110
94
  return this.#systemPrompt;
@@ -116,65 +100,70 @@ ${this.#buildSkillsAndMemoryBlock(skills)}`;
116
100
  #buildForceCompactPrompt() {
117
101
  return `You're nearing the safe context limit for this conversation. Before doing anything else, call the "${COMPACT_MEMORY_TOOL_NAME}" tool with a "new_memory" summary capturing every important fact, decision, and pending task so far.`;
118
102
  }
119
- /** Rolls the current (working) token counters into the lifetime totals, clears the working context, and stores the new running summary. Shared by voluntary and forced compaction — both go through the same `compact_memory` tool call. */
120
- #compactMemory(newMemory) {
121
- this.#memory = newMemory;
103
+ /** Folds the working context into the retired-message archive and stores the new running summary. Shared by voluntary and forced compaction — both go through the same `compact_memory` tool call. Messages live in exactly one of messagesCompact/retiredMessages at a time (see the class-level note above #retiredMessages) — no lifetime counters to roll over separately, since usage travels with each message itself. */
104
+ #compact(newMemory) {
105
+ this.#compactMemory = newMemory;
106
+ this.#retiredMessages.push(...this.#messagesCompact);
122
107
  this.#messagesCompact = [];
123
- this.#fullInputHitTokens += this.#currentInputHitTokens;
124
- this.#fullInputMissTokens += this.#currentInputMissTokens;
125
- this.#fullOutputTokens += this.#currentOutputTokens;
126
- this.#currentInputHitTokens = 0;
127
- this.#currentInputMissTokens = 0;
128
- this.#currentOutputTokens = 0;
129
- this.#currentLastOutputTokens = 0;
108
+ this.#systemPrompt = undefined;
130
109
  return "Memory compacted. Continue where you left off, using MEMORY above for context.";
131
110
  }
132
- async #resolveToolOutputForModel(toolName, output) {
133
- if (output.type === "text") {
134
- return { text: JSON.stringify(output.output) };
111
+ async #executeProvider(toolCallId, type, input) {
112
+ if (!this.#executeProviderFromMCPTool) {
113
+ throw new Error("BaseAgent#executeProvider: this feature is disabled by agent features (features.executeProviderFromMCPTool is false).");
135
114
  }
136
- // output.type === "image"
137
- const { image, mimeType, focusHint, ...rest } = output.output;
138
- if (!this.#imageProvider) {
139
- return {
140
- text: JSON.stringify({
141
- error: `${toolName} produced an image, but image description is not supported in this session (no provider with image support is configured).`,
142
- ...rest,
143
- }),
144
- };
115
+ const usage = this.#usageByToolCallId.get(toolCallId);
116
+ if (!usage) {
117
+ throw new Error(`BaseAgent#executeProvider: "${toolCallId}" is not a currently active tool call.`);
145
118
  }
146
- if (this.#imageProvider === this.#mainProvider) {
147
- return {
148
- text: JSON.stringify({ message: `${toolName} produced an image, attached.`, ...rest }),
149
- imagePart: { image, mimeType },
150
- };
119
+ const provider = this.#providers.getProvider(type);
120
+ if (!provider) {
121
+ throw new Error(`BaseAgent#executeProvider: no provider available for type "${type}".`);
151
122
  }
152
- const describer = new ImageDescriber(this.#imageProvider);
153
- const result = await describer.describe(image, mimeType, focusHint);
154
- this.#imageInputMissTokens += result.inputTokens;
155
- this.#imageOutputTokens += result.outputTokens;
156
- return { text: JSON.stringify({ description: result.description, ...rest }) };
123
+ const result = await provider.chat([
124
+ // { role: "system", content: this.#safetyPolicies }, // WE NEED IMPLEMENT SAFETY POLICY LATER BUT WE DISABLE THIS FEATURE BY DEFAULT FOR NOW
125
+ { role: "user", ...input },
126
+ ]);
127
+ if (result.cost !== undefined) {
128
+ usage.push({ type, unit: "cost", cost: result.cost });
129
+ }
130
+ else {
131
+ usage.push({
132
+ type,
133
+ unit: "tokens",
134
+ inputMissTokens: (result.inputMissTokens ?? 0) + (result.inputCacheTokens ?? 0),
135
+ inputCacheTokens: 0,
136
+ outputTokens: result.outputTokens ?? 0,
137
+ });
138
+ }
139
+ return { output: { content: result.content } };
157
140
  }
158
141
  async #dispatchTool(id, toolName, inputs) {
159
142
  if (toolName === COMPACT_MEMORY_TOOL_NAME) {
160
143
  if (typeof inputs?.new_memory === "string") {
161
- return { id, name: toolName, resultText: this.#compactMemory(inputs.new_memory) };
144
+ return { id, name: toolName, resultText: this.#compact(inputs.new_memory) };
162
145
  }
163
146
  return { id, name: toolName, resultText: `Error: ${COMPACT_MEMORY_TOOL_NAME} requires new_memory:string, got ${JSON.stringify(inputs)}` };
164
147
  }
165
148
  if (!this.#allowedTools.map(t => t.getOptions().name).includes(toolName)) {
166
149
  return { id, name: toolName, resultText: `Error: tool "${toolName}" not found or not allowed.` };
167
150
  }
151
+ this.#usageByToolCallId.set(id, []);
168
152
  try {
169
- const output = await this.#mcpClient.callTool(toolName, inputs);
170
- const resolved = await this.#resolveToolOutputForModel(toolName, output);
171
- return { id, name: toolName, resultText: resolved.text, imagePart: resolved.imagePart };
153
+ const output = await this.#mcpClient.callTool(toolName, inputs, id);
154
+ return { id, name: toolName, resultText: JSON.stringify(output.output), usage: this.#usageByToolCallId.get(id) };
172
155
  }
173
156
  catch (err) {
174
157
  return { id, name: toolName, resultText: `Error: ${err?.message ?? String(err)}` };
175
158
  }
159
+ finally {
160
+ this.#usageByToolCallId.delete(id);
161
+ }
176
162
  }
177
163
  async stop() {
164
+ return this.safeStop();
165
+ }
166
+ async safeStop() {
178
167
  this.#stopSignal = true;
179
168
  return new Promise((res, rej) => {
180
169
  let timeout = undefined;
@@ -192,6 +181,10 @@ ${this.#buildSkillsAndMemoryBlock(skills)}`;
192
181
  }, 240000);
193
182
  });
194
183
  }
184
+ immediateStop() {
185
+ this.#stopSignal = true;
186
+ this.#currentAbortController?.abort();
187
+ }
195
188
  async run(prompt, streamCallback) {
196
189
  if (this.#runningProcess) {
197
190
  const result = await new Promise((res, rej) => {
@@ -231,28 +224,40 @@ ${this.#buildSkillsAndMemoryBlock(skills)}`;
231
224
  }
232
225
  const systemPrompt = this.#getOrBuildSystemPrompt();
233
226
  if (firstIteration) {
234
- this.#messagesFull.push({ role: "user", content: prompt });
235
- this.#messagesCompact.push({ role: "user", content: prompt });
227
+ const userMessage = { role: "user", content: prompt, timestamp: Date.now() };
228
+ this.#messagesCompact.push(userMessage);
236
229
  await streamCallback?.({ role: "user", content: prompt, done: true });
237
230
  }
238
- const chat = await this.#mainProvider.chat([
239
- { role: "system", content: systemPrompt },
240
- ...this.#messagesCompact
241
- ], streamCallback, allTools);
231
+ const abortController = new AbortController();
232
+ this.#currentAbortController = abortController;
233
+ let chat;
234
+ try {
235
+ chat = await this.#mainProvider.chat([
236
+ { role: "system", content: this.#safetyPolicies },
237
+ { role: "system", content: systemPrompt },
238
+ ...this.#messagesCompact
239
+ ], streamCallback, allTools, abortController.signal);
240
+ }
241
+ catch (err) {
242
+ this.#currentAbortController = undefined;
243
+ if (abortController.signal.aborted) {
244
+ this.#stopSignal = false;
245
+ break;
246
+ }
247
+ throw err;
248
+ }
249
+ this.#currentAbortController = undefined;
242
250
  firstIteration = false;
243
251
  const assistantMessage = {
244
252
  role: "assistant",
245
253
  content: chat.content,
254
+ timestamp: Date.now(),
255
+ usage: [{ type: "main", unit: "tokens", inputMissTokens: chat.inputMissTokens ?? 0, inputCacheTokens: chat.inputCacheTokens ?? 0, outputTokens: chat.outputTokens ?? 0 }],
246
256
  ...(chat.toolCalls?.length ? { toolCalls: chat.toolCalls } : {}),
247
257
  ...(chat.thinking ? { thinking: chat.thinking } : {}),
248
258
  ...(chat.providerThinking ? { providerThinking: chat.providerThinking } : {}),
249
259
  };
250
- this.#messagesFull.push(assistantMessage);
251
260
  this.#messagesCompact.push(assistantMessage);
252
- this.#currentInputHitTokens += this.#currentInputMissTokens;
253
- this.#currentInputMissTokens += chat.inputTokens - this.#currentInputMissTokens;
254
- this.#currentOutputTokens += chat.outputTokens;
255
- this.#currentLastOutputTokens = chat.outputTokens;
256
261
  let calledAnyTool = false;
257
262
  const nativeCalls = chat.toolCalls ?? [];
258
263
  for (const call of nativeCalls) {
@@ -263,18 +268,17 @@ ${this.#buildSkillsAndMemoryBlock(skills)}`;
263
268
  content: result.resultText,
264
269
  toolCallId: result.id,
265
270
  toolName: result.name,
266
- ...(result.imagePart ? { parts: [{ type: "text", text: result.resultText }, { type: "image", ...result.imagePart }] } : {}),
271
+ timestamp: Date.now(),
272
+ usage: result.usage ?? [],
267
273
  };
268
- this.#messagesFull.push(toolMessage);
269
274
  this.#messagesCompact.push(toolMessage);
270
- await streamCallback?.({ role: "tool", content: result.resultText, done: true, toolCallId: result.id, toolName: result.name });
275
+ await streamCallback?.({ role: "tool", content: result.resultText, done: true, toolCallId: result.id, toolName: result.name, usage: { inputMissTokens: 0, inputCacheTokens: 0, outputTokens: 0 } });
271
276
  }
272
- const overMemoryBudget = this.#currentInputMissTokens + this.#currentLastOutputTokens > this.#maxMemorizeToken;
277
+ const overMemoryBudget = this.#sumTokensForType("main", this.#messagesCompact).inputMiss > this.#maxMemorizeToken;
273
278
  if (overMemoryBudget) {
274
- const forcePrompt = { role: "user", content: this.#buildForceCompactPrompt() };
275
- this.#messagesFull.push(forcePrompt);
279
+ const forcePrompt = { role: "user", content: this.#buildForceCompactPrompt(), timestamp: Date.now(), hidden: true };
276
280
  this.#messagesCompact.push(forcePrompt);
277
- await streamCallback?.({ role: "user", content: forcePrompt.content, done: true });
281
+ await streamCallback?.({ role: "user", content: forcePrompt.content, done: true, hidden: true });
278
282
  }
279
283
  const stopAfterToolCall = this.#allowedTools.filter(t => nativeCalls.map(nc => nc.name).includes(t.getOptions().name)).find(t => t.getOptions().stopIterationAfterUsingThisTool);
280
284
  keepGoing = (!stopAfterToolCall && calledAnyTool) || overMemoryBudget;
@@ -282,8 +286,8 @@ ${this.#buildSkillsAndMemoryBlock(skills)}`;
282
286
  if (this.#incomingRun.length > 1) {
283
287
  for (let i = 0; i < this.#incomingRun.length - 1; i++) {
284
288
  const run = this.#incomingRun[i];
285
- this.#messagesFull.push({ role: "user", content: run.prompt });
286
- this.#messagesCompact.push({ role: "user", content: run.prompt });
289
+ const queuedMessage = { role: "user", content: run.prompt, timestamp: Date.now() };
290
+ this.#messagesCompact.push(queuedMessage);
287
291
  await streamCallback?.({ role: "user", content: run.prompt, done: true });
288
292
  clearTimeout(run.timeout);
289
293
  clearInterval(run.interval);
@@ -292,55 +296,50 @@ ${this.#buildSkillsAndMemoryBlock(skills)}`;
292
296
  }
293
297
  this.#runningProcess = false;
294
298
  }
295
- /** Full recoverable snapshot of agent state — pass this back in as `initData` on a fresh BaseAgent instance (e.g. after a process restart) to resume exactly where this one left off. Persist the return value to disk (or wherever) whenever you want a recovery point. */
299
+ #sumTokensForType(type, messages) {
300
+ let inputMiss = 0, inputCache = 0, output = 0;
301
+ for (const m of messages) {
302
+ for (const u of m.usage ?? []) {
303
+ if (u.type === type && u.unit === "tokens") {
304
+ inputMiss += u.inputMissTokens;
305
+ inputCache += u.inputCacheTokens;
306
+ output += u.outputTokens;
307
+ }
308
+ }
309
+ }
310
+ return { inputMiss, inputCache, output };
311
+ }
312
+ #sumCostForType(type, messages) {
313
+ let cost = 0;
314
+ for (const m of messages) {
315
+ for (const u of m.usage ?? []) {
316
+ if (u.type === type && u.unit === "cost") {
317
+ cost += u.cost;
318
+ }
319
+ }
320
+ }
321
+ return cost;
322
+ }
296
323
  getCurrentAgentStates() {
297
324
  return {
298
- memory: this.#memory,
299
- messagesFull: this.#messagesFull,
300
- fullInputMissTokens: this.#fullInputMissTokens,
301
- fullInputHitTokens: this.#fullInputHitTokens,
302
- fullOutputTokens: this.#fullOutputTokens,
325
+ compactMemory: this.#compactMemory,
326
+ retiredMessages: this.#retiredMessages,
303
327
  messagesCompact: this.#messagesCompact,
304
- currentInputMissTokens: this.#currentInputMissTokens,
305
- currentInputHitTokens: this.#currentInputHitTokens,
306
- currentOutputTokens: this.#currentOutputTokens,
307
- imageInputMissTokens: this.#imageInputMissTokens,
308
- imageOutputTokens: this.#imageOutputTokens,
309
328
  };
310
329
  }
311
- /** Lifetime total across the main loop (current + all prior compacted segments) AND every ImageDescriber call this agent has made. */
312
- getTotalTokens() {
313
- return {
314
- total: this.#currentInputHitTokens + this.#currentInputMissTokens + this.#currentOutputTokens + this.#fullInputHitTokens + this.#fullInputMissTokens + this.#fullOutputTokens + this.#imageInputMissTokens + this.#imageOutputTokens,
315
- inputHit: this.#currentInputHitTokens + this.#fullInputHitTokens,
316
- inputMiss: this.#currentInputMissTokens + this.#fullInputMissTokens + this.#imageInputMissTokens,
317
- output: this.#currentOutputTokens + this.#fullOutputTokens + this.#imageOutputTokens
318
- };
330
+ getCompactTotalTokens(type) {
331
+ const t = this.#sumTokensForType(type, this.#messagesCompact);
332
+ return { total: t.inputMiss + t.inputCache + t.output, inputHit: t.inputCache, inputMiss: t.inputMiss, output: t.output };
319
333
  }
320
- getCurrentTotalTokens() {
321
- return {
322
- total: this.#currentInputHitTokens + this.#currentInputMissTokens + this.#currentOutputTokens,
323
- inputHit: this.#currentInputHitTokens,
324
- inputMiss: this.#currentInputMissTokens,
325
- output: this.#currentOutputTokens
326
- };
334
+ getFullTotalToken(type) {
335
+ const t = this.#sumTokensForType(type, [...this.#retiredMessages, ...this.#messagesCompact]);
336
+ return { total: t.inputMiss + t.inputCache + t.output, inputHit: t.inputCache, inputMiss: t.inputMiss, output: t.output };
327
337
  }
328
- /** Usage from ImageDescriber calls only (see #resolveToolOutputForModel) — not included in getCurrentTotalTokens()/getFullTotalTokens() since it isn't part of the main loop's current/full split, but it IS folded into getTotalTokens()'s grand total. Each call is a fresh, standalone chat, so there's no hit/miss split to make — inputHit is always 0, every input token counts as inputMiss. */
329
- getImageTotalTokens() {
330
- return {
331
- total: this.#imageInputMissTokens + this.#imageOutputTokens,
332
- inputHit: 0,
333
- inputMiss: this.#imageInputMissTokens,
334
- output: this.#imageOutputTokens
335
- };
338
+ getCompactTotalCost(type) {
339
+ return this.#sumCostForType(type, this.#messagesCompact);
336
340
  }
337
- getFullTotalTokens() {
338
- return {
339
- total: this.#fullInputHitTokens + this.#fullInputMissTokens + this.#fullOutputTokens,
340
- inputHit: this.#fullInputHitTokens,
341
- inputMiss: this.#fullInputMissTokens,
342
- output: this.#fullOutputTokens
343
- };
341
+ getFullTotalCost(type) {
342
+ return this.#sumCostForType(type, [...this.#retiredMessages, ...this.#messagesCompact]);
344
343
  }
345
344
  }
346
345
  export default BaseAgent;