@agntk/core 0.1.0

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 (502) hide show
  1. package/README.md +227 -0
  2. package/dist/advanced/index.d.ts +35 -0
  3. package/dist/advanced/index.d.ts.map +1 -0
  4. package/dist/advanced/index.js +52 -0
  5. package/dist/advanced/index.js.map +1 -0
  6. package/dist/agent.d.ts +46 -0
  7. package/dist/agent.d.ts.map +1 -0
  8. package/dist/agent.js +381 -0
  9. package/dist/agent.js.map +1 -0
  10. package/dist/config/defaults.d.ts +10 -0
  11. package/dist/config/defaults.d.ts.map +1 -0
  12. package/dist/config/defaults.js +34 -0
  13. package/dist/config/defaults.js.map +1 -0
  14. package/dist/config/index.d.ts +7 -0
  15. package/dist/config/index.d.ts.map +1 -0
  16. package/dist/config/index.js +11 -0
  17. package/dist/config/index.js.map +1 -0
  18. package/dist/config/loader.d.ts +54 -0
  19. package/dist/config/loader.d.ts.map +1 -0
  20. package/dist/config/loader.js +222 -0
  21. package/dist/config/loader.js.map +1 -0
  22. package/dist/config/schema.d.ts +912 -0
  23. package/dist/config/schema.d.ts.map +1 -0
  24. package/dist/config/schema.js +119 -0
  25. package/dist/config/schema.js.map +1 -0
  26. package/dist/constants.d.ts +17 -0
  27. package/dist/constants.d.ts.map +1 -0
  28. package/dist/constants.js +23 -0
  29. package/dist/constants.js.map +1 -0
  30. package/dist/evals/assertions.d.ts +54 -0
  31. package/dist/evals/assertions.d.ts.map +1 -0
  32. package/dist/evals/assertions.js +200 -0
  33. package/dist/evals/assertions.js.map +1 -0
  34. package/dist/evals/index.d.ts +9 -0
  35. package/dist/evals/index.d.ts.map +1 -0
  36. package/dist/evals/index.js +8 -0
  37. package/dist/evals/index.js.map +1 -0
  38. package/dist/evals/runner.d.ts +34 -0
  39. package/dist/evals/runner.d.ts.map +1 -0
  40. package/dist/evals/runner.js +186 -0
  41. package/dist/evals/runner.js.map +1 -0
  42. package/dist/evals/types.d.ts +68 -0
  43. package/dist/evals/types.d.ts.map +1 -0
  44. package/dist/evals/types.js +5 -0
  45. package/dist/evals/types.js.map +1 -0
  46. package/dist/guardrails/built-ins.d.ts +48 -0
  47. package/dist/guardrails/built-ins.d.ts.map +1 -0
  48. package/dist/guardrails/built-ins.js +149 -0
  49. package/dist/guardrails/built-ins.js.map +1 -0
  50. package/dist/guardrails/index.d.ts +8 -0
  51. package/dist/guardrails/index.d.ts.map +1 -0
  52. package/dist/guardrails/index.js +7 -0
  53. package/dist/guardrails/index.js.map +1 -0
  54. package/dist/guardrails/runner.d.ts +49 -0
  55. package/dist/guardrails/runner.d.ts.map +1 -0
  56. package/dist/guardrails/runner.js +148 -0
  57. package/dist/guardrails/runner.js.map +1 -0
  58. package/dist/guardrails/types.d.ts +63 -0
  59. package/dist/guardrails/types.d.ts.map +1 -0
  60. package/dist/guardrails/types.js +22 -0
  61. package/dist/guardrails/types.js.map +1 -0
  62. package/dist/index.d.ts +31 -0
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +35 -0
  65. package/dist/index.js.map +1 -0
  66. package/dist/memory/engine.d.ts +130 -0
  67. package/dist/memory/engine.d.ts.map +1 -0
  68. package/dist/memory/engine.js +227 -0
  69. package/dist/memory/engine.js.map +1 -0
  70. package/dist/memory/extraction.d.ts +24 -0
  71. package/dist/memory/extraction.d.ts.map +1 -0
  72. package/dist/memory/extraction.js +130 -0
  73. package/dist/memory/extraction.js.map +1 -0
  74. package/dist/memory/loader.d.ts +20 -0
  75. package/dist/memory/loader.d.ts.map +1 -0
  76. package/dist/memory/loader.js +73 -0
  77. package/dist/memory/loader.js.map +1 -0
  78. package/dist/memory/store.d.ts +42 -0
  79. package/dist/memory/store.d.ts.map +1 -0
  80. package/dist/memory/store.js +120 -0
  81. package/dist/memory/store.js.map +1 -0
  82. package/dist/memory/tools.d.ts +39 -0
  83. package/dist/memory/tools.d.ts.map +1 -0
  84. package/dist/memory/tools.js +225 -0
  85. package/dist/memory/tools.js.map +1 -0
  86. package/dist/memory/types.d.ts +46 -0
  87. package/dist/memory/types.d.ts.map +1 -0
  88. package/dist/memory/types.js +8 -0
  89. package/dist/memory/types.js.map +1 -0
  90. package/dist/memory/vectra-store.d.ts +31 -0
  91. package/dist/memory/vectra-store.d.ts.map +1 -0
  92. package/dist/memory/vectra-store.js +122 -0
  93. package/dist/memory/vectra-store.js.map +1 -0
  94. package/dist/models.d.ts +37 -0
  95. package/dist/models.d.ts.map +1 -0
  96. package/dist/models.js +131 -0
  97. package/dist/models.js.map +1 -0
  98. package/dist/observability/index.d.ts +6 -0
  99. package/dist/observability/index.d.ts.map +1 -0
  100. package/dist/observability/index.js +5 -0
  101. package/dist/observability/index.js.map +1 -0
  102. package/dist/observability/langfuse.d.ts +47 -0
  103. package/dist/observability/langfuse.d.ts.map +1 -0
  104. package/dist/observability/langfuse.js +112 -0
  105. package/dist/observability/langfuse.js.map +1 -0
  106. package/dist/observability/types.d.ts +37 -0
  107. package/dist/observability/types.d.ts.map +1 -0
  108. package/dist/observability/types.js +5 -0
  109. package/dist/observability/types.js.map +1 -0
  110. package/dist/pool/index.d.ts +7 -0
  111. package/dist/pool/index.d.ts.map +1 -0
  112. package/dist/pool/index.js +6 -0
  113. package/dist/pool/index.js.map +1 -0
  114. package/dist/pool/specialist-pool.d.ts +59 -0
  115. package/dist/pool/specialist-pool.d.ts.map +1 -0
  116. package/dist/pool/specialist-pool.js +224 -0
  117. package/dist/pool/specialist-pool.js.map +1 -0
  118. package/dist/pool/tools.d.ts +63 -0
  119. package/dist/pool/tools.d.ts.map +1 -0
  120. package/dist/pool/tools.js +83 -0
  121. package/dist/pool/tools.js.map +1 -0
  122. package/dist/pool/types.d.ts +79 -0
  123. package/dist/pool/types.d.ts.map +1 -0
  124. package/dist/pool/types.js +5 -0
  125. package/dist/pool/types.js.map +1 -0
  126. package/dist/presets/index.d.ts +5 -0
  127. package/dist/presets/index.d.ts.map +1 -0
  128. package/dist/presets/index.js +5 -0
  129. package/dist/presets/index.js.map +1 -0
  130. package/dist/presets/role-registry.d.ts +41 -0
  131. package/dist/presets/role-registry.d.ts.map +1 -0
  132. package/dist/presets/role-registry.js +213 -0
  133. package/dist/presets/role-registry.js.map +1 -0
  134. package/dist/presets/roles.d.ts +105 -0
  135. package/dist/presets/roles.d.ts.map +1 -0
  136. package/dist/presets/roles.js +207 -0
  137. package/dist/presets/roles.js.map +1 -0
  138. package/dist/presets/sub-agent-configs.d.ts +19 -0
  139. package/dist/presets/sub-agent-configs.d.ts.map +1 -0
  140. package/dist/presets/sub-agent-configs.js +71 -0
  141. package/dist/presets/sub-agent-configs.js.map +1 -0
  142. package/dist/presets/tool-preset-registry.d.ts +34 -0
  143. package/dist/presets/tool-preset-registry.d.ts.map +1 -0
  144. package/dist/presets/tool-preset-registry.js +107 -0
  145. package/dist/presets/tool-preset-registry.js.map +1 -0
  146. package/dist/presets/tools.d.ts +278 -0
  147. package/dist/presets/tools.d.ts.map +1 -0
  148. package/dist/presets/tools.js +108 -0
  149. package/dist/presets/tools.js.map +1 -0
  150. package/dist/prompts/context.d.ts +47 -0
  151. package/dist/prompts/context.d.ts.map +1 -0
  152. package/dist/prompts/context.js +187 -0
  153. package/dist/prompts/context.js.map +1 -0
  154. package/dist/prompts/template.d.ts +17 -0
  155. package/dist/prompts/template.d.ts.map +1 -0
  156. package/dist/prompts/template.js +32 -0
  157. package/dist/prompts/template.js.map +1 -0
  158. package/dist/prompts/templates.d.ts +11 -0
  159. package/dist/prompts/templates.d.ts.map +1 -0
  160. package/dist/prompts/templates.js +115 -0
  161. package/dist/prompts/templates.js.map +1 -0
  162. package/dist/reflection.d.ts +48 -0
  163. package/dist/reflection.d.ts.map +1 -0
  164. package/dist/reflection.js +91 -0
  165. package/dist/reflection.js.map +1 -0
  166. package/dist/skills/index.d.ts +6 -0
  167. package/dist/skills/index.d.ts.map +1 -0
  168. package/dist/skills/index.js +5 -0
  169. package/dist/skills/index.js.map +1 -0
  170. package/dist/skills/loader.d.ts +84 -0
  171. package/dist/skills/loader.d.ts.map +1 -0
  172. package/dist/skills/loader.js +400 -0
  173. package/dist/skills/loader.js.map +1 -0
  174. package/dist/skills/types.d.ts +66 -0
  175. package/dist/skills/types.d.ts.map +1 -0
  176. package/dist/skills/types.js +6 -0
  177. package/dist/skills/types.js.map +1 -0
  178. package/dist/streaming/data-parts.d.ts +163 -0
  179. package/dist/streaming/data-parts.d.ts.map +1 -0
  180. package/dist/streaming/data-parts.js +14 -0
  181. package/dist/streaming/data-parts.js.map +1 -0
  182. package/dist/streaming/index.d.ts +8 -0
  183. package/dist/streaming/index.d.ts.map +1 -0
  184. package/dist/streaming/index.js +10 -0
  185. package/dist/streaming/index.js.map +1 -0
  186. package/dist/streaming/transient.d.ts +136 -0
  187. package/dist/streaming/transient.d.ts.map +1 -0
  188. package/dist/streaming/transient.js +201 -0
  189. package/dist/streaming/transient.js.map +1 -0
  190. package/dist/tools/approval.d.ts +67 -0
  191. package/dist/tools/approval.d.ts.map +1 -0
  192. package/dist/tools/approval.js +113 -0
  193. package/dist/tools/approval.js.map +1 -0
  194. package/dist/tools/ast-grep/cli.d.ts +16 -0
  195. package/dist/tools/ast-grep/cli.d.ts.map +1 -0
  196. package/dist/tools/ast-grep/cli.js +198 -0
  197. package/dist/tools/ast-grep/cli.js.map +1 -0
  198. package/dist/tools/ast-grep/constants.d.ts +24 -0
  199. package/dist/tools/ast-grep/constants.d.ts.map +1 -0
  200. package/dist/tools/ast-grep/constants.js +247 -0
  201. package/dist/tools/ast-grep/constants.js.map +1 -0
  202. package/dist/tools/ast-grep/downloader.d.ts +6 -0
  203. package/dist/tools/ast-grep/downloader.d.ts.map +1 -0
  204. package/dist/tools/ast-grep/downloader.js +137 -0
  205. package/dist/tools/ast-grep/downloader.js.map +1 -0
  206. package/dist/tools/ast-grep/index.d.ts +7 -0
  207. package/dist/tools/ast-grep/index.d.ts.map +1 -0
  208. package/dist/tools/ast-grep/index.js +6 -0
  209. package/dist/tools/ast-grep/index.js.map +1 -0
  210. package/dist/tools/ast-grep/tools.d.ts +33 -0
  211. package/dist/tools/ast-grep/tools.d.ts.map +1 -0
  212. package/dist/tools/ast-grep/tools.js +140 -0
  213. package/dist/tools/ast-grep/tools.js.map +1 -0
  214. package/dist/tools/ast-grep/types.d.ts +68 -0
  215. package/dist/tools/ast-grep/types.d.ts.map +1 -0
  216. package/dist/tools/ast-grep/types.js +2 -0
  217. package/dist/tools/ast-grep/types.js.map +1 -0
  218. package/dist/tools/ast-grep/utils.d.ts +4 -0
  219. package/dist/tools/ast-grep/utils.d.ts.map +1 -0
  220. package/dist/tools/ast-grep/utils.js +55 -0
  221. package/dist/tools/ast-grep/utils.js.map +1 -0
  222. package/dist/tools/browser/index.d.ts +6 -0
  223. package/dist/tools/browser/index.d.ts.map +1 -0
  224. package/dist/tools/browser/index.js +5 -0
  225. package/dist/tools/browser/index.js.map +1 -0
  226. package/dist/tools/browser/stream.d.ts +112 -0
  227. package/dist/tools/browser/stream.d.ts.map +1 -0
  228. package/dist/tools/browser/stream.js +228 -0
  229. package/dist/tools/browser/stream.js.map +1 -0
  230. package/dist/tools/browser/tool.d.ts +144 -0
  231. package/dist/tools/browser/tool.d.ts.map +1 -0
  232. package/dist/tools/browser/tool.js +214 -0
  233. package/dist/tools/browser/tool.js.map +1 -0
  234. package/dist/tools/browser/types.d.ts +216 -0
  235. package/dist/tools/browser/types.d.ts.map +1 -0
  236. package/dist/tools/browser/types.js +146 -0
  237. package/dist/tools/browser/types.js.map +1 -0
  238. package/dist/tools/deep-reasoning/constants.d.ts +11 -0
  239. package/dist/tools/deep-reasoning/constants.d.ts.map +1 -0
  240. package/dist/tools/deep-reasoning/constants.js +35 -0
  241. package/dist/tools/deep-reasoning/constants.js.map +1 -0
  242. package/dist/tools/deep-reasoning/engine.d.ts +20 -0
  243. package/dist/tools/deep-reasoning/engine.d.ts.map +1 -0
  244. package/dist/tools/deep-reasoning/engine.js +77 -0
  245. package/dist/tools/deep-reasoning/engine.js.map +1 -0
  246. package/dist/tools/deep-reasoning/index.d.ts +5 -0
  247. package/dist/tools/deep-reasoning/index.d.ts.map +1 -0
  248. package/dist/tools/deep-reasoning/index.js +7 -0
  249. package/dist/tools/deep-reasoning/index.js.map +1 -0
  250. package/dist/tools/deep-reasoning/tools.d.ts +12 -0
  251. package/dist/tools/deep-reasoning/tools.d.ts.map +1 -0
  252. package/dist/tools/deep-reasoning/tools.js +23 -0
  253. package/dist/tools/deep-reasoning/tools.js.map +1 -0
  254. package/dist/tools/deep-reasoning/types.d.ts +66 -0
  255. package/dist/tools/deep-reasoning/types.d.ts.map +1 -0
  256. package/dist/tools/deep-reasoning/types.js +13 -0
  257. package/dist/tools/deep-reasoning/types.js.map +1 -0
  258. package/dist/tools/factory.d.ts +109 -0
  259. package/dist/tools/factory.d.ts.map +1 -0
  260. package/dist/tools/factory.js +166 -0
  261. package/dist/tools/factory.js.map +1 -0
  262. package/dist/tools/file/index.d.ts +8 -0
  263. package/dist/tools/file/index.d.ts.map +1 -0
  264. package/dist/tools/file/index.js +8 -0
  265. package/dist/tools/file/index.js.map +1 -0
  266. package/dist/tools/file/tools.d.ts +45 -0
  267. package/dist/tools/file/tools.d.ts.map +1 -0
  268. package/dist/tools/file/tools.js +206 -0
  269. package/dist/tools/file/tools.js.map +1 -0
  270. package/dist/tools/glob/cli.d.ts +8 -0
  271. package/dist/tools/glob/cli.d.ts.map +1 -0
  272. package/dist/tools/glob/cli.js +168 -0
  273. package/dist/tools/glob/cli.js.map +1 -0
  274. package/dist/tools/glob/constants.d.ts +7 -0
  275. package/dist/tools/glob/constants.d.ts.map +1 -0
  276. package/dist/tools/glob/constants.js +17 -0
  277. package/dist/tools/glob/constants.js.map +1 -0
  278. package/dist/tools/glob/index.d.ts +6 -0
  279. package/dist/tools/glob/index.d.ts.map +1 -0
  280. package/dist/tools/glob/index.js +5 -0
  281. package/dist/tools/glob/index.js.map +1 -0
  282. package/dist/tools/glob/tools.d.ts +15 -0
  283. package/dist/tools/glob/tools.d.ts.map +1 -0
  284. package/dist/tools/glob/tools.js +74 -0
  285. package/dist/tools/glob/tools.js.map +1 -0
  286. package/dist/tools/glob/types.d.ts +20 -0
  287. package/dist/tools/glob/types.d.ts.map +1 -0
  288. package/dist/tools/glob/types.js +2 -0
  289. package/dist/tools/glob/types.js.map +1 -0
  290. package/dist/tools/glob/utils.d.ts +3 -0
  291. package/dist/tools/glob/utils.d.ts.map +1 -0
  292. package/dist/tools/glob/utils.js +20 -0
  293. package/dist/tools/glob/utils.js.map +1 -0
  294. package/dist/tools/grep/cli.d.ts +4 -0
  295. package/dist/tools/grep/cli.d.ts.map +1 -0
  296. package/dist/tools/grep/cli.js +224 -0
  297. package/dist/tools/grep/cli.js.map +1 -0
  298. package/dist/tools/grep/constants.d.ts +19 -0
  299. package/dist/tools/grep/constants.d.ts.map +1 -0
  300. package/dist/tools/grep/constants.js +115 -0
  301. package/dist/tools/grep/constants.js.map +1 -0
  302. package/dist/tools/grep/downloader.d.ts +3 -0
  303. package/dist/tools/grep/downloader.d.ts.map +1 -0
  304. package/dist/tools/grep/downloader.js +164 -0
  305. package/dist/tools/grep/downloader.js.map +1 -0
  306. package/dist/tools/grep/index.d.ts +7 -0
  307. package/dist/tools/grep/index.d.ts.map +1 -0
  308. package/dist/tools/grep/index.js +6 -0
  309. package/dist/tools/grep/index.js.map +1 -0
  310. package/dist/tools/grep/tools.d.ts +19 -0
  311. package/dist/tools/grep/tools.d.ts.map +1 -0
  312. package/dist/tools/grep/tools.js +82 -0
  313. package/dist/tools/grep/tools.js.map +1 -0
  314. package/dist/tools/grep/types.d.ts +37 -0
  315. package/dist/tools/grep/types.d.ts.map +1 -0
  316. package/dist/tools/grep/types.js +2 -0
  317. package/dist/tools/grep/types.js.map +1 -0
  318. package/dist/tools/grep/utils.d.ts +4 -0
  319. package/dist/tools/grep/utils.d.ts.map +1 -0
  320. package/dist/tools/grep/utils.js +41 -0
  321. package/dist/tools/grep/utils.js.map +1 -0
  322. package/dist/tools/index.d.ts +21 -0
  323. package/dist/tools/index.d.ts.map +1 -0
  324. package/dist/tools/index.js +33 -0
  325. package/dist/tools/index.js.map +1 -0
  326. package/dist/tools/model-retry.d.ts +54 -0
  327. package/dist/tools/model-retry.d.ts.map +1 -0
  328. package/dist/tools/model-retry.js +110 -0
  329. package/dist/tools/model-retry.js.map +1 -0
  330. package/dist/tools/plan/constants.d.ts +18 -0
  331. package/dist/tools/plan/constants.d.ts.map +1 -0
  332. package/dist/tools/plan/constants.js +13 -0
  333. package/dist/tools/plan/constants.js.map +1 -0
  334. package/dist/tools/plan/index.d.ts +5 -0
  335. package/dist/tools/plan/index.d.ts.map +1 -0
  336. package/dist/tools/plan/index.js +7 -0
  337. package/dist/tools/plan/index.js.map +1 -0
  338. package/dist/tools/plan/tools.d.ts +16 -0
  339. package/dist/tools/plan/tools.d.ts.map +1 -0
  340. package/dist/tools/plan/tools.js +217 -0
  341. package/dist/tools/plan/tools.js.map +1 -0
  342. package/dist/tools/plan/types.d.ts +75 -0
  343. package/dist/tools/plan/types.d.ts.map +1 -0
  344. package/dist/tools/plan/types.js +16 -0
  345. package/dist/tools/plan/types.js.map +1 -0
  346. package/dist/tools/plan/utils.d.ts +9 -0
  347. package/dist/tools/plan/utils.d.ts.map +1 -0
  348. package/dist/tools/plan/utils.js +27 -0
  349. package/dist/tools/plan/utils.js.map +1 -0
  350. package/dist/tools/progress/index.d.ts +53 -0
  351. package/dist/tools/progress/index.d.ts.map +1 -0
  352. package/dist/tools/progress/index.js +144 -0
  353. package/dist/tools/progress/index.js.map +1 -0
  354. package/dist/tools/provider.d.ts +97 -0
  355. package/dist/tools/provider.d.ts.map +1 -0
  356. package/dist/tools/provider.js +178 -0
  357. package/dist/tools/provider.js.map +1 -0
  358. package/dist/tools/search-skills.d.ts +44 -0
  359. package/dist/tools/search-skills.d.ts.map +1 -0
  360. package/dist/tools/search-skills.js +134 -0
  361. package/dist/tools/search-skills.js.map +1 -0
  362. package/dist/tools/shell/background.d.ts +38 -0
  363. package/dist/tools/shell/background.d.ts.map +1 -0
  364. package/dist/tools/shell/background.js +229 -0
  365. package/dist/tools/shell/background.js.map +1 -0
  366. package/dist/tools/shell/constants.d.ts +10 -0
  367. package/dist/tools/shell/constants.d.ts.map +1 -0
  368. package/dist/tools/shell/constants.js +55 -0
  369. package/dist/tools/shell/constants.js.map +1 -0
  370. package/dist/tools/shell/index.d.ts +7 -0
  371. package/dist/tools/shell/index.d.ts.map +1 -0
  372. package/dist/tools/shell/index.js +5 -0
  373. package/dist/tools/shell/index.js.map +1 -0
  374. package/dist/tools/shell/tools.d.ts +22 -0
  375. package/dist/tools/shell/tools.d.ts.map +1 -0
  376. package/dist/tools/shell/tools.js +70 -0
  377. package/dist/tools/shell/tools.js.map +1 -0
  378. package/dist/tools/shell/types.d.ts +30 -0
  379. package/dist/tools/shell/types.d.ts.map +1 -0
  380. package/dist/tools/shell/types.js +10 -0
  381. package/dist/tools/shell/types.js.map +1 -0
  382. package/dist/tools/shell/utils.d.ts +7 -0
  383. package/dist/tools/shell/utils.d.ts.map +1 -0
  384. package/dist/tools/shell/utils.js +26 -0
  385. package/dist/tools/shell/utils.js.map +1 -0
  386. package/dist/tools/spawn-agent/index.d.ts +96 -0
  387. package/dist/tools/spawn-agent/index.d.ts.map +1 -0
  388. package/dist/tools/spawn-agent/index.js +168 -0
  389. package/dist/tools/spawn-agent/index.js.map +1 -0
  390. package/dist/tools/utils/errors.d.ts +21 -0
  391. package/dist/tools/utils/errors.d.ts.map +1 -0
  392. package/dist/tools/utils/errors.js +29 -0
  393. package/dist/tools/utils/errors.js.map +1 -0
  394. package/dist/tools/utils/shell.d.ts +23 -0
  395. package/dist/tools/utils/shell.d.ts.map +1 -0
  396. package/dist/tools/utils/shell.js +99 -0
  397. package/dist/tools/utils/shell.js.map +1 -0
  398. package/dist/tools/utils/tool-result.d.ts +6 -0
  399. package/dist/tools/utils/tool-result.d.ts.map +1 -0
  400. package/dist/tools/utils/tool-result.js +22 -0
  401. package/dist/tools/utils/tool-result.js.map +1 -0
  402. package/dist/types/agent.d.ts +218 -0
  403. package/dist/types/agent.d.ts.map +1 -0
  404. package/dist/types/agent.js +6 -0
  405. package/dist/types/agent.js.map +1 -0
  406. package/dist/types/index.d.ts +7 -0
  407. package/dist/types/index.d.ts.map +1 -0
  408. package/dist/types/index.js +6 -0
  409. package/dist/types/index.js.map +1 -0
  410. package/dist/types/lifecycle.d.ts +218 -0
  411. package/dist/types/lifecycle.d.ts.map +1 -0
  412. package/dist/types/lifecycle.js +99 -0
  413. package/dist/types/lifecycle.js.map +1 -0
  414. package/dist/types/streaming.d.ts +120 -0
  415. package/dist/types/streaming.d.ts.map +1 -0
  416. package/dist/types/streaming.js +6 -0
  417. package/dist/types/streaming.js.map +1 -0
  418. package/dist/usage-limits.d.ts +63 -0
  419. package/dist/usage-limits.d.ts.map +1 -0
  420. package/dist/usage-limits.js +88 -0
  421. package/dist/usage-limits.js.map +1 -0
  422. package/dist/utils/logger.d.ts +35 -0
  423. package/dist/utils/logger.d.ts.map +1 -0
  424. package/dist/utils/logger.js +149 -0
  425. package/dist/utils/logger.js.map +1 -0
  426. package/dist/workflow/builders/adapt.d.ts +20 -0
  427. package/dist/workflow/builders/adapt.d.ts.map +1 -0
  428. package/dist/workflow/builders/adapt.js +33 -0
  429. package/dist/workflow/builders/adapt.js.map +1 -0
  430. package/dist/workflow/builders/index.d.ts +8 -0
  431. package/dist/workflow/builders/index.d.ts.map +1 -0
  432. package/dist/workflow/builders/index.js +7 -0
  433. package/dist/workflow/builders/index.js.map +1 -0
  434. package/dist/workflow/builders/parallel.d.ts +25 -0
  435. package/dist/workflow/builders/parallel.d.ts.map +1 -0
  436. package/dist/workflow/builders/parallel.js +60 -0
  437. package/dist/workflow/builders/parallel.js.map +1 -0
  438. package/dist/workflow/builders/pipeline.d.ts +22 -0
  439. package/dist/workflow/builders/pipeline.d.ts.map +1 -0
  440. package/dist/workflow/builders/pipeline.js +48 -0
  441. package/dist/workflow/builders/pipeline.js.map +1 -0
  442. package/dist/workflow/builders/types.d.ts +54 -0
  443. package/dist/workflow/builders/types.d.ts.map +1 -0
  444. package/dist/workflow/builders/types.js +5 -0
  445. package/dist/workflow/builders/types.js.map +1 -0
  446. package/dist/workflow/durable-agent.d.ts +128 -0
  447. package/dist/workflow/durable-agent.d.ts.map +1 -0
  448. package/dist/workflow/durable-agent.js +323 -0
  449. package/dist/workflow/durable-agent.js.map +1 -0
  450. package/dist/workflow/durable-tool.d.ts +103 -0
  451. package/dist/workflow/durable-tool.d.ts.map +1 -0
  452. package/dist/workflow/durable-tool.js +173 -0
  453. package/dist/workflow/durable-tool.js.map +1 -0
  454. package/dist/workflow/hooks.d.ts +318 -0
  455. package/dist/workflow/hooks.d.ts.map +1 -0
  456. package/dist/workflow/hooks.js +629 -0
  457. package/dist/workflow/hooks.js.map +1 -0
  458. package/dist/workflow/index.d.ts +17 -0
  459. package/dist/workflow/index.d.ts.map +1 -0
  460. package/dist/workflow/index.js +24 -0
  461. package/dist/workflow/index.js.map +1 -0
  462. package/dist/workflow/schedulers.d.ts +231 -0
  463. package/dist/workflow/schedulers.d.ts.map +1 -0
  464. package/dist/workflow/schedulers.js +250 -0
  465. package/dist/workflow/schedulers.js.map +1 -0
  466. package/dist/workflow/team/create-team.d.ts +34 -0
  467. package/dist/workflow/team/create-team.d.ts.map +1 -0
  468. package/dist/workflow/team/create-team.js +242 -0
  469. package/dist/workflow/team/create-team.js.map +1 -0
  470. package/dist/workflow/team/index.d.ts +9 -0
  471. package/dist/workflow/team/index.d.ts.map +1 -0
  472. package/dist/workflow/team/index.js +8 -0
  473. package/dist/workflow/team/index.js.map +1 -0
  474. package/dist/workflow/team/machines.d.ts +152 -0
  475. package/dist/workflow/team/machines.d.ts.map +1 -0
  476. package/dist/workflow/team/machines.js +197 -0
  477. package/dist/workflow/team/machines.js.map +1 -0
  478. package/dist/workflow/team/task-board.d.ts +47 -0
  479. package/dist/workflow/team/task-board.d.ts.map +1 -0
  480. package/dist/workflow/team/task-board.js +111 -0
  481. package/dist/workflow/team/task-board.js.map +1 -0
  482. package/dist/workflow/team/tools.d.ts +66 -0
  483. package/dist/workflow/team/tools.d.ts.map +1 -0
  484. package/dist/workflow/team/tools.js +100 -0
  485. package/dist/workflow/team/tools.js.map +1 -0
  486. package/dist/workflow/team/types.d.ts +109 -0
  487. package/dist/workflow/team/types.d.ts.map +1 -0
  488. package/dist/workflow/team/types.js +5 -0
  489. package/dist/workflow/team/types.js.map +1 -0
  490. package/dist/workflow/templates.d.ts +71 -0
  491. package/dist/workflow/templates.d.ts.map +1 -0
  492. package/dist/workflow/templates.js +132 -0
  493. package/dist/workflow/templates.js.map +1 -0
  494. package/dist/workflow/utils.d.ts +29 -0
  495. package/dist/workflow/utils.d.ts.map +1 -0
  496. package/dist/workflow/utils.js +84 -0
  497. package/dist/workflow/utils.js.map +1 -0
  498. package/dist/wrappers/best-of-n.d.ts +69 -0
  499. package/dist/wrappers/best-of-n.d.ts.map +1 -0
  500. package/dist/wrappers/best-of-n.js +242 -0
  501. package/dist/wrappers/best-of-n.js.map +1 -0
  502. package/package.json +101 -0
@@ -0,0 +1,66 @@
1
+ import { z } from 'zod';
2
+ export interface ThoughtData {
3
+ thought: string;
4
+ thoughtNumber: number;
5
+ totalThoughts: number;
6
+ isRevision?: boolean;
7
+ revisesThought?: number;
8
+ branchFromThought?: number;
9
+ branchId?: string;
10
+ needsMoreThoughts?: boolean;
11
+ nextThoughtNeeded: boolean;
12
+ }
13
+ export interface ReasoningResult {
14
+ thoughtNumber: number;
15
+ totalThoughts: number;
16
+ nextThoughtNeeded: boolean;
17
+ branches: string[];
18
+ thoughtHistoryLength: number;
19
+ }
20
+ export interface DeepReasoningConfig {
21
+ /**
22
+ * When true, enables deep reasoning with no step restrictions
23
+ */
24
+ enabled: boolean;
25
+ /**
26
+ * Maximum thoughts to keep in history (older ones are discarded)
27
+ */
28
+ maxHistorySize?: number;
29
+ /**
30
+ * Maximum thoughts per branch
31
+ */
32
+ maxBranchSize?: number;
33
+ }
34
+ export declare const deepReasoningInputSchema: z.ZodObject<{
35
+ thought: z.ZodString;
36
+ nextThoughtNeeded: z.ZodBoolean;
37
+ thoughtNumber: z.ZodNumber;
38
+ totalThoughts: z.ZodNumber;
39
+ isRevision: z.ZodOptional<z.ZodBoolean>;
40
+ revisesThought: z.ZodOptional<z.ZodNumber>;
41
+ branchFromThought: z.ZodOptional<z.ZodNumber>;
42
+ branchId: z.ZodOptional<z.ZodString>;
43
+ needsMoreThoughts: z.ZodOptional<z.ZodBoolean>;
44
+ }, "strip", z.ZodTypeAny, {
45
+ thought: string;
46
+ nextThoughtNeeded: boolean;
47
+ thoughtNumber: number;
48
+ totalThoughts: number;
49
+ isRevision?: boolean | undefined;
50
+ revisesThought?: number | undefined;
51
+ branchFromThought?: number | undefined;
52
+ branchId?: string | undefined;
53
+ needsMoreThoughts?: boolean | undefined;
54
+ }, {
55
+ thought: string;
56
+ nextThoughtNeeded: boolean;
57
+ thoughtNumber: number;
58
+ totalThoughts: number;
59
+ isRevision?: boolean | undefined;
60
+ revisesThought?: number | undefined;
61
+ branchFromThought?: number | undefined;
62
+ branchId?: string | undefined;
63
+ needsMoreThoughts?: boolean | undefined;
64
+ }>;
65
+ export type DeepReasoningInput = z.infer<typeof deepReasoningInputSchema>;
66
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/deep-reasoning/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+ export const deepReasoningInputSchema = z.object({
3
+ thought: z.string().describe('Your current reasoning step - one clear idea or observation'),
4
+ nextThoughtNeeded: z.boolean().describe('True if you need more reasoning steps, false when done'),
5
+ thoughtNumber: z.number().int().min(1).describe('Current step number (1, 2, 3...)'),
6
+ totalThoughts: z.number().int().min(1).describe('How many steps you expect to need'),
7
+ isRevision: z.boolean().optional().describe('True if reconsidering a previous thought'),
8
+ revisesThought: z.number().int().min(1).optional().describe('Which thought number to revise'),
9
+ branchFromThought: z.number().int().min(1).optional().describe('Split reasoning from this thought'),
10
+ branchId: z.string().optional().describe('Name for this reasoning branch'),
11
+ needsMoreThoughts: z.boolean().optional().describe('True if need to extend thinking'),
12
+ });
13
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/tools/deep-reasoning/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6DAA6D,CAAC;IAC3F,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACjG,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACnF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACpF,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACvF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC7F,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACnG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC1E,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CACtF,CAAC,CAAC"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * @agntk/core - Tool Factory
3
+ *
4
+ * Factory pattern for creating tool sets with dependency injection.
5
+ * Adapted from packages/core/src/tools/factory.ts
6
+ */
7
+ import type { Tool } from 'ai';
8
+ /**
9
+ * Dependencies that can be injected into tool creators.
10
+ */
11
+ export interface ToolDependencies {
12
+ /** Workspace root directory for file operations */
13
+ workspaceRoot?: string;
14
+ /** Directories the agent is allowed to access */
15
+ allowedDirectories?: string[];
16
+ /** Optional UI stream writer for transient data */
17
+ streamWriter?: unknown;
18
+ /** Optional memory store instance */
19
+ memoryStore?: unknown;
20
+ /** Custom context data */
21
+ context?: Record<string, unknown>;
22
+ }
23
+ /**
24
+ * A set of tools keyed by name.
25
+ */
26
+ export type ToolSet = Record<string, Tool>;
27
+ /**
28
+ * Function that creates a set of tools given dependencies.
29
+ */
30
+ export type ToolCreator = (deps: ToolDependencies) => ToolSet;
31
+ /**
32
+ * Factory for registering and creating tools with dependency injection.
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const factory = new ToolFactory();
37
+ *
38
+ * factory.register('search', (deps) => ({
39
+ * glob: createGlobTool({ defaultCwd: deps.workspaceRoot }),
40
+ * grep: createGrepTool({ defaultCwd: deps.workspaceRoot }),
41
+ * }));
42
+ *
43
+ * const tools = factory.createAll({ workspaceRoot: '/my/project' });
44
+ * ```
45
+ */
46
+ export declare class ToolFactory {
47
+ private factories;
48
+ private creationErrors;
49
+ /**
50
+ * Register a tool creator function.
51
+ */
52
+ register(name: string, creator: ToolCreator): void;
53
+ /**
54
+ * Unregister a tool creator.
55
+ */
56
+ unregister(name: string): boolean;
57
+ /**
58
+ * Check if a tool creator is registered.
59
+ */
60
+ has(name: string): boolean;
61
+ /**
62
+ * Get all registered tool creator names.
63
+ */
64
+ getRegisteredNames(): string[];
65
+ /**
66
+ * Create tools from a single registered creator.
67
+ */
68
+ create(name: string, deps: ToolDependencies): ToolSet | null;
69
+ /**
70
+ * Create all registered tools.
71
+ */
72
+ createAll(deps: ToolDependencies): ToolSet;
73
+ /**
74
+ * Create selected tools by name.
75
+ */
76
+ createSelected(names: string[], deps: ToolDependencies): ToolSet;
77
+ /**
78
+ * Get errors from the last creation operation.
79
+ */
80
+ getLastErrors(): Array<{
81
+ name: string;
82
+ error: string;
83
+ }>;
84
+ /**
85
+ * Clear all registered factories.
86
+ */
87
+ clear(): void;
88
+ }
89
+ /**
90
+ * Default tool factory instance for convenience.
91
+ */
92
+ export declare const defaultToolFactory: ToolFactory;
93
+ /**
94
+ * Merge multiple tool sets into one.
95
+ */
96
+ export declare function mergeToolSets(...toolSets: ToolSet[]): ToolSet;
97
+ /**
98
+ * Filter a tool set to only include specified tools.
99
+ */
100
+ export declare function filterTools(tools: ToolSet, include: string[]): ToolSet;
101
+ /**
102
+ * Exclude specified tools from a tool set.
103
+ */
104
+ export declare function excludeTools(tools: ToolSet, exclude: string[]): ToolSet;
105
+ /**
106
+ * Get tool names from a tool set.
107
+ */
108
+ export declare function getToolNames(tools: ToolSet): string[];
109
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/tools/factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAM/B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,mDAAmD;IACnD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC;AAM9D;;;;;;;;;;;;;;GAcG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,cAAc,CAA8C;IAEpE;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI;IAIlD;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,GAAG,IAAI;IAgB5D;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO;IAoB1C;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO;IAuBhE;;OAEG;IACH,aAAa,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAIvD;;OAEG;IACH,KAAK,IAAI,IAAI;CAId;AAMD;;GAEG;AACH,eAAO,MAAM,kBAAkB,aAAoB,CAAC;AAMpD;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAE7D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAKtE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAKvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAErD"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * @agntk/core - Tool Factory
3
+ *
4
+ * Factory pattern for creating tool sets with dependency injection.
5
+ * Adapted from packages/core/src/tools/factory.ts
6
+ */
7
+ // ============================================================================
8
+ // Tool Factory Class
9
+ // ============================================================================
10
+ /**
11
+ * Factory for registering and creating tools with dependency injection.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const factory = new ToolFactory();
16
+ *
17
+ * factory.register('search', (deps) => ({
18
+ * glob: createGlobTool({ defaultCwd: deps.workspaceRoot }),
19
+ * grep: createGrepTool({ defaultCwd: deps.workspaceRoot }),
20
+ * }));
21
+ *
22
+ * const tools = factory.createAll({ workspaceRoot: '/my/project' });
23
+ * ```
24
+ */
25
+ export class ToolFactory {
26
+ factories = new Map();
27
+ creationErrors = [];
28
+ /**
29
+ * Register a tool creator function.
30
+ */
31
+ register(name, creator) {
32
+ this.factories.set(name, creator);
33
+ }
34
+ /**
35
+ * Unregister a tool creator.
36
+ */
37
+ unregister(name) {
38
+ return this.factories.delete(name);
39
+ }
40
+ /**
41
+ * Check if a tool creator is registered.
42
+ */
43
+ has(name) {
44
+ return this.factories.has(name);
45
+ }
46
+ /**
47
+ * Get all registered tool creator names.
48
+ */
49
+ getRegisteredNames() {
50
+ return Array.from(this.factories.keys());
51
+ }
52
+ /**
53
+ * Create tools from a single registered creator.
54
+ */
55
+ create(name, deps) {
56
+ const creator = this.factories.get(name);
57
+ if (!creator) {
58
+ return null;
59
+ }
60
+ try {
61
+ return creator(deps);
62
+ }
63
+ catch (error) {
64
+ this.creationErrors.push({
65
+ name,
66
+ error: String(error),
67
+ });
68
+ return null;
69
+ }
70
+ }
71
+ /**
72
+ * Create all registered tools.
73
+ */
74
+ createAll(deps) {
75
+ const allTools = {};
76
+ this.creationErrors = [];
77
+ for (const [name, creator] of this.factories.entries()) {
78
+ try {
79
+ const tools = creator(deps);
80
+ Object.assign(allTools, tools);
81
+ }
82
+ catch (error) {
83
+ this.creationErrors.push({
84
+ name,
85
+ error: String(error),
86
+ });
87
+ // Continue creating other tools even if one fails
88
+ }
89
+ }
90
+ return allTools;
91
+ }
92
+ /**
93
+ * Create selected tools by name.
94
+ */
95
+ createSelected(names, deps) {
96
+ const allTools = {};
97
+ this.creationErrors = [];
98
+ for (const name of names) {
99
+ const creator = this.factories.get(name);
100
+ if (!creator) {
101
+ continue;
102
+ }
103
+ try {
104
+ const tools = creator(deps);
105
+ Object.assign(allTools, tools);
106
+ }
107
+ catch (error) {
108
+ this.creationErrors.push({
109
+ name,
110
+ error: String(error),
111
+ });
112
+ }
113
+ }
114
+ return allTools;
115
+ }
116
+ /**
117
+ * Get errors from the last creation operation.
118
+ */
119
+ getLastErrors() {
120
+ return [...this.creationErrors];
121
+ }
122
+ /**
123
+ * Clear all registered factories.
124
+ */
125
+ clear() {
126
+ this.factories.clear();
127
+ this.creationErrors = [];
128
+ }
129
+ }
130
+ // ============================================================================
131
+ // Default Factory Instance
132
+ // ============================================================================
133
+ /**
134
+ * Default tool factory instance for convenience.
135
+ */
136
+ export const defaultToolFactory = new ToolFactory();
137
+ // ============================================================================
138
+ // Helper Functions
139
+ // ============================================================================
140
+ /**
141
+ * Merge multiple tool sets into one.
142
+ */
143
+ export function mergeToolSets(...toolSets) {
144
+ return Object.assign({}, ...toolSets);
145
+ }
146
+ /**
147
+ * Filter a tool set to only include specified tools.
148
+ */
149
+ export function filterTools(tools, include) {
150
+ const includeSet = new Set(include);
151
+ return Object.fromEntries(Object.entries(tools).filter(([name]) => includeSet.has(name)));
152
+ }
153
+ /**
154
+ * Exclude specified tools from a tool set.
155
+ */
156
+ export function excludeTools(tools, exclude) {
157
+ const excludeSet = new Set(exclude);
158
+ return Object.fromEntries(Object.entries(tools).filter(([name]) => !excludeSet.has(name)));
159
+ }
160
+ /**
161
+ * Get tool names from a tool set.
162
+ */
163
+ export function getToolNames(tools) {
164
+ return Object.keys(tools);
165
+ }
166
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/tools/factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @agntk/core - File Tools
3
+ *
4
+ * Structured file operations: read, write, edit, create.
5
+ * All operations are scoped to workspaceRoot for safety.
6
+ */
7
+ export { createFileReadTool, createFileWriteTool, createFileEditTool, createFileCreateTool, createFileTools, } from './tools.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/file/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,GAChB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @agntk/core - File Tools
3
+ *
4
+ * Structured file operations: read, write, edit, create.
5
+ * All operations are scoped to workspaceRoot for safety.
6
+ */
7
+ export { createFileReadTool, createFileWriteTool, createFileEditTool, createFileCreateTool, createFileTools, } from './tools.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/file/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,GAChB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @agntk/core - File Tool Implementations
3
+ *
4
+ * Provides file_read, file_write, file_edit, file_create tools.
5
+ * All paths are resolved relative to and scoped within workspaceRoot.
6
+ */
7
+ export declare function createFileReadTool(workspaceRoot?: string): import("ai").Tool<{
8
+ path: string;
9
+ startLine?: number | undefined;
10
+ endLine?: number | undefined;
11
+ }, string>;
12
+ export declare function createFileWriteTool(workspaceRoot?: string): import("ai").Tool<{
13
+ path: string;
14
+ content: string;
15
+ }, string>;
16
+ export declare function createFileEditTool(workspaceRoot?: string): import("ai").Tool<{
17
+ path: string;
18
+ oldText: string;
19
+ newText: string;
20
+ }, string>;
21
+ export declare function createFileCreateTool(workspaceRoot?: string): import("ai").Tool<{
22
+ path: string;
23
+ content: string;
24
+ }, string>;
25
+ export declare function createFileTools(workspaceRoot?: string): {
26
+ file_read: import("ai").Tool<{
27
+ path: string;
28
+ startLine?: number | undefined;
29
+ endLine?: number | undefined;
30
+ }, string>;
31
+ file_write: import("ai").Tool<{
32
+ path: string;
33
+ content: string;
34
+ }, string>;
35
+ file_edit: import("ai").Tool<{
36
+ path: string;
37
+ oldText: string;
38
+ newText: string;
39
+ }, string>;
40
+ file_create: import("ai").Tool<{
41
+ path: string;
42
+ content: string;
43
+ }, string>;
44
+ };
45
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/file/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA2DH,wBAAgB,kBAAkB,CAAC,aAAa,GAAE,MAAsB;;;;WAgCvE;AAcD,wBAAgB,mBAAmB,CAAC,aAAa,GAAE,MAAsB;;;WAsBxE;AAiBD,wBAAgB,kBAAkB,CAAC,aAAa,GAAE,MAAsB;;;;WAsCvE;AAeD,wBAAgB,oBAAoB,CAAC,aAAa,GAAE,MAAsB;;;WA0BzE;AAMD,wBAAgB,eAAe,CAAC,aAAa,GAAE,MAAsB;;;;;;;;;;;;;;;;;;;EAOpE"}
@@ -0,0 +1,206 @@
1
+ /**
2
+ * @agntk/core - File Tool Implementations
3
+ *
4
+ * Provides file_read, file_write, file_edit, file_create tools.
5
+ * All paths are resolved relative to and scoped within workspaceRoot.
6
+ */
7
+ import { tool } from 'ai';
8
+ import { z } from 'zod';
9
+ import * as fs from 'node:fs';
10
+ import * as fsPromises from 'node:fs/promises';
11
+ import * as path from 'node:path';
12
+ import { success, error } from '../utils/tool-result.js';
13
+ // ============================================================================
14
+ // Path Safety
15
+ // ============================================================================
16
+ function resolveAndValidatePath(filePath, workspaceRoot) {
17
+ // Reject null bytes — can truncate paths in C-level APIs
18
+ if (filePath.includes('\0')) {
19
+ throw new Error('Null bytes not allowed in file paths');
20
+ }
21
+ const resolved = path.resolve(workspaceRoot, filePath);
22
+ // Follow symlinks on the workspace root to get canonical path
23
+ // (on macOS, /var -> /private/var would cause false rejections)
24
+ const realWorkspace = fs.realpathSync(path.resolve(workspaceRoot));
25
+ let realResolved;
26
+ try {
27
+ // Follow symlinks to get the ACTUAL filesystem target
28
+ realResolved = fs.realpathSync(resolved);
29
+ }
30
+ catch {
31
+ // File doesn't exist yet (file_create/file_write) — validate parent directory
32
+ const parentReal = fs.realpathSync(path.dirname(resolved));
33
+ if (!parentReal.startsWith(realWorkspace + path.sep) && parentReal !== realWorkspace) {
34
+ throw new Error(`Path "${filePath}" is outside workspace root`);
35
+ }
36
+ return resolved;
37
+ }
38
+ // Trailing path.sep prevents "/workspace-evil" matching "/workspace"
39
+ if (!realResolved.startsWith(realWorkspace + path.sep) && realResolved !== realWorkspace) {
40
+ throw new Error(`Path "${filePath}" is outside workspace root`);
41
+ }
42
+ return resolved;
43
+ }
44
+ // ============================================================================
45
+ // file_read
46
+ // ============================================================================
47
+ const FILE_READ_DESCRIPTION = `Read a file from the workspace.
48
+ Supports optional line range (startLine/endLine) for reading specific sections.
49
+ Returns the file content with line numbers.`;
50
+ const fileReadSchema = z.object({
51
+ path: z.string().describe('File path relative to workspace root'),
52
+ startLine: z.number().optional().describe('Start line (1-indexed, inclusive)'),
53
+ endLine: z.number().optional().describe('End line (1-indexed, inclusive)'),
54
+ });
55
+ export function createFileReadTool(workspaceRoot = process.cwd()) {
56
+ return tool({
57
+ description: FILE_READ_DESCRIPTION,
58
+ inputSchema: fileReadSchema,
59
+ execute: async ({ path: filePath, startLine, endLine }) => {
60
+ try {
61
+ const resolved = resolveAndValidatePath(filePath, workspaceRoot);
62
+ if (!fs.existsSync(resolved)) {
63
+ return error(`File not found: ${filePath}`);
64
+ }
65
+ const content = await fsPromises.readFile(resolved, 'utf-8');
66
+ const lines = content.split('\n');
67
+ const start = Math.max(1, startLine ?? 1);
68
+ const end = Math.min(lines.length, endLine ?? lines.length);
69
+ const selected = lines.slice(start - 1, end);
70
+ const numbered = selected.map((line, i) => `${String(start + i).padStart(4)}│ ${line}`).join('\n');
71
+ return success({
72
+ path: filePath,
73
+ totalLines: lines.length,
74
+ range: { start, end },
75
+ content: numbered,
76
+ });
77
+ }
78
+ catch (err) {
79
+ return error(err instanceof Error ? err : new Error(String(err)));
80
+ }
81
+ },
82
+ });
83
+ }
84
+ // ============================================================================
85
+ // file_write
86
+ // ============================================================================
87
+ const FILE_WRITE_DESCRIPTION = `Write content to a file. Creates parent directories automatically.
88
+ Overwrites the file if it already exists. Use file_create if you want to fail on existing files.`;
89
+ const fileWriteSchema = z.object({
90
+ path: z.string().describe('File path relative to workspace root'),
91
+ content: z.string().describe('Content to write to the file'),
92
+ });
93
+ export function createFileWriteTool(workspaceRoot = process.cwd()) {
94
+ return tool({
95
+ description: FILE_WRITE_DESCRIPTION,
96
+ inputSchema: fileWriteSchema,
97
+ execute: async ({ path: filePath, content }) => {
98
+ try {
99
+ const resolved = resolveAndValidatePath(filePath, workspaceRoot);
100
+ // Create parent directories
101
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
102
+ await fsPromises.writeFile(resolved, content, 'utf-8');
103
+ return success({
104
+ path: filePath,
105
+ bytesWritten: Buffer.byteLength(content, 'utf-8'),
106
+ message: `File written: ${filePath}`,
107
+ });
108
+ }
109
+ catch (err) {
110
+ return error(err instanceof Error ? err : new Error(String(err)));
111
+ }
112
+ },
113
+ });
114
+ }
115
+ // ============================================================================
116
+ // file_edit
117
+ // ============================================================================
118
+ const FILE_EDIT_DESCRIPTION = `Edit a file using context-based search and replace.
119
+ Provide the exact text to find (oldText) and the replacement text (newText).
120
+ Uses surrounding code as anchors — no line numbers needed.
121
+ The oldText must match exactly (including whitespace) for the edit to succeed.`;
122
+ const fileEditSchema = z.object({
123
+ path: z.string().describe('File path relative to workspace root'),
124
+ oldText: z.string().describe('Exact text to find in the file (must be unique)'),
125
+ newText: z.string().describe('Replacement text'),
126
+ });
127
+ export function createFileEditTool(workspaceRoot = process.cwd()) {
128
+ return tool({
129
+ description: FILE_EDIT_DESCRIPTION,
130
+ inputSchema: fileEditSchema,
131
+ execute: async ({ path: filePath, oldText, newText }) => {
132
+ try {
133
+ const resolved = resolveAndValidatePath(filePath, workspaceRoot);
134
+ if (!fs.existsSync(resolved)) {
135
+ return error(`File not found: ${filePath}`);
136
+ }
137
+ const content = await fsPromises.readFile(resolved, 'utf-8');
138
+ // Count occurrences
139
+ const occurrences = content.split(oldText).length - 1;
140
+ if (occurrences === 0) {
141
+ return error(`Text not found in ${filePath}. Ensure oldText matches exactly (including whitespace).`);
142
+ }
143
+ if (occurrences > 1) {
144
+ return error(`Found ${String(occurrences)} matches for oldText in ${filePath}. Provide more surrounding context to make the match unique.`);
145
+ }
146
+ const newContent = content.replace(oldText, newText);
147
+ await fsPromises.writeFile(resolved, newContent, 'utf-8');
148
+ return success({
149
+ path: filePath,
150
+ message: `Edit applied to ${filePath}`,
151
+ linesChanged: newText.split('\n').length - oldText.split('\n').length,
152
+ });
153
+ }
154
+ catch (err) {
155
+ return error(err instanceof Error ? err : new Error(String(err)));
156
+ }
157
+ },
158
+ });
159
+ }
160
+ // ============================================================================
161
+ // file_create
162
+ // ============================================================================
163
+ const FILE_CREATE_DESCRIPTION = `Create a new file. Fails if the file already exists.
164
+ Creates parent directories automatically.
165
+ Use file_write if you want to overwrite existing files.`;
166
+ const fileCreateSchema = z.object({
167
+ path: z.string().describe('File path relative to workspace root'),
168
+ content: z.string().describe('Content for the new file'),
169
+ });
170
+ export function createFileCreateTool(workspaceRoot = process.cwd()) {
171
+ return tool({
172
+ description: FILE_CREATE_DESCRIPTION,
173
+ inputSchema: fileCreateSchema,
174
+ execute: async ({ path: filePath, content }) => {
175
+ try {
176
+ const resolved = resolveAndValidatePath(filePath, workspaceRoot);
177
+ if (fs.existsSync(resolved)) {
178
+ return error(`File already exists: ${filePath}. Use file_write to overwrite, or file_edit to modify.`);
179
+ }
180
+ // Create parent directories
181
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
182
+ await fsPromises.writeFile(resolved, content, 'utf-8');
183
+ return success({
184
+ path: filePath,
185
+ bytesWritten: Buffer.byteLength(content, 'utf-8'),
186
+ message: `File created: ${filePath}`,
187
+ });
188
+ }
189
+ catch (err) {
190
+ return error(err instanceof Error ? err : new Error(String(err)));
191
+ }
192
+ },
193
+ });
194
+ }
195
+ // ============================================================================
196
+ // Convenience: Create all file tools
197
+ // ============================================================================
198
+ export function createFileTools(workspaceRoot = process.cwd()) {
199
+ return {
200
+ file_read: createFileReadTool(workspaceRoot),
201
+ file_write: createFileWriteTool(workspaceRoot),
202
+ file_edit: createFileEditTool(workspaceRoot),
203
+ file_create: createFileCreateTool(workspaceRoot),
204
+ };
205
+ }
206
+ //# sourceMappingURL=tools.js.map