@agntk/core 0.3.5 → 1.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 (480) hide show
  1. package/README.md +39 -38
  2. package/dist/advanced/index.d.ts +13 -22
  3. package/dist/advanced/index.d.ts.map +1 -1
  4. package/dist/advanced/index.js +10 -55
  5. package/dist/advanced/index.js.map +1 -1
  6. package/dist/agent-v2.d.ts +48 -0
  7. package/dist/agent-v2.d.ts.map +1 -0
  8. package/dist/agent-v2.js +365 -0
  9. package/dist/agent-v2.js.map +1 -0
  10. package/dist/agent.d.ts +0 -40
  11. package/dist/agent.d.ts.map +1 -1
  12. package/dist/agent.js +103 -99
  13. package/dist/agent.js.map +1 -1
  14. package/dist/config/defaults.d.ts +1 -5
  15. package/dist/config/defaults.d.ts.map +1 -1
  16. package/dist/config/defaults.js +1 -11
  17. package/dist/config/defaults.js.map +1 -1
  18. package/dist/config/index.d.ts +5 -1
  19. package/dist/config/index.d.ts.map +1 -1
  20. package/dist/config/index.js +7 -7
  21. package/dist/config/index.js.map +1 -1
  22. package/dist/config/loader.d.ts +0 -40
  23. package/dist/config/loader.d.ts.map +1 -1
  24. package/dist/config/loader.js +3 -80
  25. package/dist/config/loader.js.map +1 -1
  26. package/dist/config/schema.d.ts +117 -788
  27. package/dist/config/schema.d.ts.map +1 -1
  28. package/dist/config/schema.js +52 -63
  29. package/dist/config/schema.js.map +1 -1
  30. package/dist/constants.d.ts +0 -11
  31. package/dist/constants.d.ts.map +1 -1
  32. package/dist/constants.js +0 -17
  33. package/dist/constants.js.map +1 -1
  34. package/dist/evals/assertions.d.ts +0 -35
  35. package/dist/evals/assertions.d.ts.map +1 -1
  36. package/dist/evals/assertions.js +0 -51
  37. package/dist/evals/assertions.js.map +1 -1
  38. package/dist/evals/index.d.ts +0 -5
  39. package/dist/evals/index.d.ts.map +1 -1
  40. package/dist/evals/index.js +0 -5
  41. package/dist/evals/index.js.map +1 -1
  42. package/dist/evals/runner.d.ts +0 -27
  43. package/dist/evals/runner.d.ts.map +1 -1
  44. package/dist/evals/runner.js +3 -45
  45. package/dist/evals/runner.js.map +1 -1
  46. package/dist/evals/types.d.ts +0 -14
  47. package/dist/evals/types.d.ts.map +1 -1
  48. package/dist/evals/types.js +0 -3
  49. package/dist/evals/types.js.map +1 -1
  50. package/dist/guardrails/built-ins.d.ts +0 -28
  51. package/dist/guardrails/built-ins.d.ts.map +1 -1
  52. package/dist/guardrails/built-ins.js +21 -47
  53. package/dist/guardrails/built-ins.js.map +1 -1
  54. package/dist/guardrails/index.d.ts +1 -4
  55. package/dist/guardrails/index.d.ts.map +1 -1
  56. package/dist/guardrails/index.js +1 -4
  57. package/dist/guardrails/index.js.map +1 -1
  58. package/dist/guardrails/runner.d.ts +0 -30
  59. package/dist/guardrails/runner.d.ts.map +1 -1
  60. package/dist/guardrails/runner.js +1 -46
  61. package/dist/guardrails/runner.js.map +1 -1
  62. package/dist/guardrails/types.d.ts +0 -35
  63. package/dist/guardrails/types.d.ts.map +1 -1
  64. package/dist/guardrails/types.js +4 -7
  65. package/dist/guardrails/types.js.map +1 -1
  66. package/dist/index.d.ts +3 -7
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +1 -27
  69. package/dist/index.js.map +1 -1
  70. package/dist/memory/engine.d.ts +130 -0
  71. package/dist/memory/engine.d.ts.map +1 -0
  72. package/dist/memory/engine.js +227 -0
  73. package/dist/memory/engine.js.map +1 -0
  74. package/dist/memory/loader.d.ts +0 -17
  75. package/dist/memory/loader.d.ts.map +1 -1
  76. package/dist/memory/loader.js +5 -27
  77. package/dist/memory/loader.js.map +1 -1
  78. package/dist/memory/store.d.ts +8 -16
  79. package/dist/memory/store.d.ts.map +1 -1
  80. package/dist/memory/store.js +101 -32
  81. package/dist/memory/store.js.map +1 -1
  82. package/dist/memory/types.d.ts +10 -30
  83. package/dist/memory/types.d.ts.map +1 -1
  84. package/dist/memory/types.js +0 -6
  85. package/dist/memory/types.js.map +1 -1
  86. package/dist/memory/vectra-store.d.ts +31 -0
  87. package/dist/memory/vectra-store.d.ts.map +1 -0
  88. package/dist/memory/vectra-store.js +122 -0
  89. package/dist/memory/vectra-store.js.map +1 -0
  90. package/dist/models.d.ts +9 -32
  91. package/dist/models.d.ts.map +1 -1
  92. package/dist/models.js +25 -68
  93. package/dist/models.js.map +1 -1
  94. package/dist/observability/index.d.ts +0 -3
  95. package/dist/observability/index.d.ts.map +1 -1
  96. package/dist/observability/index.js +0 -3
  97. package/dist/observability/index.js.map +1 -1
  98. package/dist/observability/langfuse.d.ts +0 -38
  99. package/dist/observability/langfuse.d.ts.map +1 -1
  100. package/dist/observability/langfuse.js +6 -55
  101. package/dist/observability/langfuse.js.map +1 -1
  102. package/dist/observability/types.d.ts +0 -21
  103. package/dist/observability/types.d.ts.map +1 -1
  104. package/dist/observability/types.js +0 -3
  105. package/dist/observability/types.js.map +1 -1
  106. package/dist/pool/index.d.ts +7 -0
  107. package/dist/pool/index.d.ts.map +1 -0
  108. package/dist/pool/index.js +6 -0
  109. package/dist/pool/index.js.map +1 -0
  110. package/dist/pool/specialist-pool.d.ts +59 -0
  111. package/dist/pool/specialist-pool.d.ts.map +1 -0
  112. package/dist/pool/specialist-pool.js +224 -0
  113. package/dist/pool/specialist-pool.js.map +1 -0
  114. package/dist/pool/tools.d.ts +63 -0
  115. package/dist/pool/tools.d.ts.map +1 -0
  116. package/dist/pool/tools.js +83 -0
  117. package/dist/pool/tools.js.map +1 -0
  118. package/dist/pool/types.d.ts +79 -0
  119. package/dist/pool/types.d.ts.map +1 -0
  120. package/dist/pool/types.js +5 -0
  121. package/dist/pool/types.js.map +1 -0
  122. package/dist/presets/index.d.ts +5 -0
  123. package/dist/presets/index.d.ts.map +1 -0
  124. package/dist/presets/index.js +5 -0
  125. package/dist/presets/index.js.map +1 -0
  126. package/dist/presets/role-registry.d.ts +41 -0
  127. package/dist/presets/role-registry.d.ts.map +1 -0
  128. package/dist/presets/role-registry.js +213 -0
  129. package/dist/presets/role-registry.js.map +1 -0
  130. package/dist/presets/roles.d.ts +105 -0
  131. package/dist/presets/roles.d.ts.map +1 -0
  132. package/dist/presets/roles.js +207 -0
  133. package/dist/presets/roles.js.map +1 -0
  134. package/dist/presets/tool-preset-registry.d.ts +0 -21
  135. package/dist/presets/tool-preset-registry.d.ts.map +1 -1
  136. package/dist/presets/tool-preset-registry.js +15 -34
  137. package/dist/presets/tool-preset-registry.js.map +1 -1
  138. package/dist/presets/tools.d.ts +44 -42
  139. package/dist/presets/tools.d.ts.map +1 -1
  140. package/dist/presets/tools.js +46 -40
  141. package/dist/presets/tools.js.map +1 -1
  142. package/dist/prompts/context.d.ts +0 -4
  143. package/dist/prompts/context.d.ts.map +1 -1
  144. package/dist/prompts/context.js +21 -33
  145. package/dist/prompts/context.js.map +1 -1
  146. package/dist/prompts/template.d.ts +0 -11
  147. package/dist/prompts/template.d.ts.map +1 -1
  148. package/dist/prompts/template.js +4 -14
  149. package/dist/prompts/template.js.map +1 -1
  150. package/dist/prompts/templates.d.ts +11 -0
  151. package/dist/prompts/templates.d.ts.map +1 -0
  152. package/dist/prompts/templates.js +115 -0
  153. package/dist/prompts/templates.js.map +1 -0
  154. package/dist/provider-resolver.d.ts +0 -29
  155. package/dist/provider-resolver.d.ts.map +1 -1
  156. package/dist/provider-resolver.js +17 -61
  157. package/dist/provider-resolver.js.map +1 -1
  158. package/dist/reflection.d.ts +0 -34
  159. package/dist/reflection.d.ts.map +1 -1
  160. package/dist/reflection.js +0 -40
  161. package/dist/reflection.js.map +1 -1
  162. package/dist/skills/index.d.ts +0 -3
  163. package/dist/skills/index.d.ts.map +1 -1
  164. package/dist/skills/index.js +0 -3
  165. package/dist/skills/index.js.map +1 -1
  166. package/dist/skills/loader.d.ts +0 -69
  167. package/dist/skills/loader.d.ts.map +1 -1
  168. package/dist/skills/loader.js +38 -130
  169. package/dist/skills/loader.js.map +1 -1
  170. package/dist/skills/types.d.ts +0 -36
  171. package/dist/skills/types.d.ts.map +1 -1
  172. package/dist/skills/types.js +0 -4
  173. package/dist/skills/types.js.map +1 -1
  174. package/dist/streaming/data-parts.d.ts +163 -0
  175. package/dist/streaming/data-parts.d.ts.map +1 -0
  176. package/dist/streaming/data-parts.js +14 -0
  177. package/dist/streaming/data-parts.js.map +1 -0
  178. package/dist/streaming/index.d.ts +8 -0
  179. package/dist/streaming/index.d.ts.map +1 -0
  180. package/dist/streaming/index.js +10 -0
  181. package/dist/streaming/index.js.map +1 -0
  182. package/dist/streaming/transient.d.ts +136 -0
  183. package/dist/streaming/transient.d.ts.map +1 -0
  184. package/dist/streaming/transient.js +201 -0
  185. package/dist/streaming/transient.js.map +1 -0
  186. package/dist/system-detect.d.ts +0 -57
  187. package/dist/system-detect.d.ts.map +1 -1
  188. package/dist/system-detect.js +9 -114
  189. package/dist/system-detect.js.map +1 -1
  190. package/dist/tools/approval.d.ts +0 -47
  191. package/dist/tools/approval.d.ts.map +1 -1
  192. package/dist/tools/approval.js +0 -46
  193. package/dist/tools/approval.js.map +1 -1
  194. package/dist/tools/ast-grep/cli.d.ts.map +1 -1
  195. package/dist/tools/ast-grep/cli.js +10 -4
  196. package/dist/tools/ast-grep/cli.js.map +1 -1
  197. package/dist/tools/ast-grep/constants.d.ts.map +1 -1
  198. package/dist/tools/ast-grep/constants.js +7 -14
  199. package/dist/tools/ast-grep/constants.js.map +1 -1
  200. package/dist/tools/ast-grep/downloader.d.ts.map +1 -1
  201. package/dist/tools/ast-grep/downloader.js +1 -4
  202. package/dist/tools/ast-grep/downloader.js.map +1 -1
  203. package/dist/tools/ast-grep/index.d.ts +2 -2
  204. package/dist/tools/ast-grep/index.d.ts.map +1 -1
  205. package/dist/tools/ast-grep/index.js +1 -1
  206. package/dist/tools/ast-grep/index.js.map +1 -1
  207. package/dist/tools/ast-grep/tools.d.ts +4 -4
  208. package/dist/tools/ast-grep/tools.d.ts.map +1 -1
  209. package/dist/tools/ast-grep/tools.js +2 -8
  210. package/dist/tools/ast-grep/tools.js.map +1 -1
  211. package/dist/tools/browser/index.d.ts +4 -4
  212. package/dist/tools/browser/index.d.ts.map +1 -1
  213. package/dist/tools/browser/index.js +2 -3
  214. package/dist/tools/browser/index.js.map +1 -1
  215. package/dist/tools/browser/stream.d.ts +0 -32
  216. package/dist/tools/browser/stream.d.ts.map +1 -1
  217. package/dist/tools/browser/stream.js +0 -53
  218. package/dist/tools/browser/stream.js.map +1 -1
  219. package/dist/tools/browser/tool.d.ts +10 -15
  220. package/dist/tools/browser/tool.d.ts.map +1 -1
  221. package/dist/tools/browser/tool.js +2 -26
  222. package/dist/tools/browser/tool.js.map +1 -1
  223. package/dist/tools/browser/types.d.ts +31 -156
  224. package/dist/tools/browser/types.d.ts.map +1 -1
  225. package/dist/tools/browser/types.js +22 -17
  226. package/dist/tools/browser/types.js.map +1 -1
  227. package/dist/tools/deep-reasoning/constants.d.ts +0 -6
  228. package/dist/tools/deep-reasoning/constants.d.ts.map +1 -1
  229. package/dist/tools/deep-reasoning/constants.js +0 -6
  230. package/dist/tools/deep-reasoning/constants.js.map +1 -1
  231. package/dist/tools/deep-reasoning/engine.d.ts.map +1 -1
  232. package/dist/tools/deep-reasoning/engine.js +0 -1
  233. package/dist/tools/deep-reasoning/engine.js.map +1 -1
  234. package/dist/tools/deep-reasoning/index.d.ts +4 -0
  235. package/dist/tools/deep-reasoning/index.d.ts.map +1 -1
  236. package/dist/tools/deep-reasoning/index.js +4 -3
  237. package/dist/tools/deep-reasoning/index.js.map +1 -1
  238. package/dist/tools/deep-reasoning/tools.d.ts.map +1 -1
  239. package/dist/tools/deep-reasoning/tools.js +8 -1
  240. package/dist/tools/deep-reasoning/tools.js.map +1 -1
  241. package/dist/tools/deep-reasoning/types.d.ts +5 -30
  242. package/dist/tools/deep-reasoning/types.d.ts.map +1 -1
  243. package/dist/tools/deep-reasoning/types.js +10 -1
  244. package/dist/tools/deep-reasoning/types.js.map +1 -1
  245. package/dist/tools/factory.d.ts +109 -0
  246. package/dist/tools/factory.d.ts.map +1 -0
  247. package/dist/tools/factory.js +166 -0
  248. package/dist/tools/factory.js.map +1 -0
  249. package/dist/tools/file/index.d.ts +3 -5
  250. package/dist/tools/file/index.d.ts.map +1 -1
  251. package/dist/tools/file/index.js +2 -4
  252. package/dist/tools/file/index.js.map +1 -1
  253. package/dist/tools/file/tools.d.ts +8 -11
  254. package/dist/tools/file/tools.d.ts.map +1 -1
  255. package/dist/tools/file/tools.js +45 -59
  256. package/dist/tools/file/tools.js.map +1 -1
  257. package/dist/tools/glob/cli.d.ts.map +1 -1
  258. package/dist/tools/glob/cli.js +8 -6
  259. package/dist/tools/glob/cli.js.map +1 -1
  260. package/dist/tools/glob/tools.d.ts.map +1 -1
  261. package/dist/tools/glob/tools.js +7 -10
  262. package/dist/tools/glob/tools.js.map +1 -1
  263. package/dist/tools/grep/cli.d.ts.map +1 -1
  264. package/dist/tools/grep/cli.js +0 -2
  265. package/dist/tools/grep/cli.js.map +1 -1
  266. package/dist/tools/grep/constants.d.ts.map +1 -1
  267. package/dist/tools/grep/constants.js +3 -5
  268. package/dist/tools/grep/constants.js.map +1 -1
  269. package/dist/tools/grep/downloader.d.ts.map +1 -1
  270. package/dist/tools/grep/downloader.js +3 -3
  271. package/dist/tools/grep/downloader.js.map +1 -1
  272. package/dist/tools/grep/tools.d.ts +2 -2
  273. package/dist/tools/grep/tools.d.ts.map +1 -1
  274. package/dist/tools/grep/tools.js +8 -14
  275. package/dist/tools/grep/tools.js.map +1 -1
  276. package/dist/tools/index.d.ts +10 -11
  277. package/dist/tools/index.d.ts.map +1 -1
  278. package/dist/tools/index.js +9 -22
  279. package/dist/tools/index.js.map +1 -1
  280. package/dist/tools/model-retry.d.ts +0 -40
  281. package/dist/tools/model-retry.d.ts.map +1 -1
  282. package/dist/tools/model-retry.js +1 -49
  283. package/dist/tools/model-retry.js.map +1 -1
  284. package/dist/tools/plan/constants.d.ts +0 -6
  285. package/dist/tools/plan/constants.d.ts.map +1 -1
  286. package/dist/tools/plan/constants.js +9 -6
  287. package/dist/tools/plan/constants.js.map +1 -1
  288. package/dist/tools/plan/index.d.ts +1 -1
  289. package/dist/tools/plan/index.d.ts.map +1 -1
  290. package/dist/tools/plan/index.js +1 -4
  291. package/dist/tools/plan/index.js.map +1 -1
  292. package/dist/tools/plan/tools.d.ts +2 -2
  293. package/dist/tools/plan/tools.d.ts.map +1 -1
  294. package/dist/tools/plan/tools.js +10 -11
  295. package/dist/tools/plan/tools.js.map +1 -1
  296. package/dist/tools/plan/types.d.ts +22 -32
  297. package/dist/tools/plan/types.d.ts.map +1 -1
  298. package/dist/tools/plan/types.js +11 -3
  299. package/dist/tools/plan/types.js.map +1 -1
  300. package/dist/tools/progress/index.d.ts +4 -23
  301. package/dist/tools/progress/index.d.ts.map +1 -1
  302. package/dist/tools/progress/index.js +19 -34
  303. package/dist/tools/progress/index.js.map +1 -1
  304. package/dist/tools/provider.d.ts +97 -0
  305. package/dist/tools/provider.d.ts.map +1 -0
  306. package/dist/tools/provider.js +178 -0
  307. package/dist/tools/provider.js.map +1 -0
  308. package/dist/tools/search-skills.d.ts +0 -23
  309. package/dist/tools/search-skills.d.ts.map +1 -1
  310. package/dist/tools/search-skills.js +3 -32
  311. package/dist/tools/search-skills.js.map +1 -1
  312. package/dist/tools/shell/background.d.ts +3 -19
  313. package/dist/tools/shell/background.d.ts.map +1 -1
  314. package/dist/tools/shell/background.js +45 -48
  315. package/dist/tools/shell/background.js.map +1 -1
  316. package/dist/tools/shell/constants.d.ts +0 -3
  317. package/dist/tools/shell/constants.d.ts.map +1 -1
  318. package/dist/tools/shell/constants.js +16 -6
  319. package/dist/tools/shell/constants.js.map +1 -1
  320. package/dist/tools/shell/index.d.ts +1 -1
  321. package/dist/tools/shell/index.d.ts.map +1 -1
  322. package/dist/tools/shell/index.js +1 -1
  323. package/dist/tools/shell/index.js.map +1 -1
  324. package/dist/tools/shell/tools.d.ts +3 -3
  325. package/dist/tools/shell/tools.d.ts.map +1 -1
  326. package/dist/tools/shell/tools.js +0 -2
  327. package/dist/tools/shell/tools.js.map +1 -1
  328. package/dist/tools/shell/types.d.ts +5 -13
  329. package/dist/tools/shell/types.d.ts.map +1 -1
  330. package/dist/tools/shell/types.js +10 -1
  331. package/dist/tools/shell/types.js.map +1 -1
  332. package/dist/tools/spawn-agent/check-agent.d.ts +45 -0
  333. package/dist/tools/spawn-agent/check-agent.d.ts.map +1 -0
  334. package/dist/tools/spawn-agent/check-agent.js +84 -0
  335. package/dist/tools/spawn-agent/check-agent.js.map +1 -0
  336. package/dist/tools/spawn-agent/index.d.ts +52 -53
  337. package/dist/tools/spawn-agent/index.d.ts.map +1 -1
  338. package/dist/tools/spawn-agent/index.js +199 -86
  339. package/dist/tools/spawn-agent/index.js.map +1 -1
  340. package/dist/tools/spawn-agent/registry.d.ts +36 -0
  341. package/dist/tools/spawn-agent/registry.d.ts.map +1 -0
  342. package/dist/tools/spawn-agent/registry.js +88 -0
  343. package/dist/tools/spawn-agent/registry.js.map +1 -0
  344. package/dist/tools/utils/errors.d.ts +2 -1
  345. package/dist/tools/utils/errors.d.ts.map +1 -1
  346. package/dist/tools/utils/errors.js +2 -1
  347. package/dist/tools/utils/errors.js.map +1 -1
  348. package/dist/tools/utils/shell.d.ts +0 -11
  349. package/dist/tools/utils/shell.d.ts.map +1 -1
  350. package/dist/tools/utils/shell.js +10 -78
  351. package/dist/tools/utils/shell.js.map +1 -1
  352. package/dist/tools/utils/tool-result.d.ts +0 -3
  353. package/dist/tools/utils/tool-result.d.ts.map +1 -1
  354. package/dist/tools/utils/tool-result.js +4 -4
  355. package/dist/tools/utils/tool-result.js.map +1 -1
  356. package/dist/tools/web-search/index.d.ts +4 -0
  357. package/dist/tools/web-search/index.d.ts.map +1 -0
  358. package/dist/tools/web-search/index.js +3 -0
  359. package/dist/tools/web-search/index.js.map +1 -0
  360. package/dist/tools/web-search/tools.d.ts +17 -0
  361. package/dist/tools/web-search/tools.d.ts.map +1 -0
  362. package/dist/tools/web-search/tools.js +81 -0
  363. package/dist/tools/web-search/tools.js.map +1 -0
  364. package/dist/tools/web-search/types.d.ts +16 -0
  365. package/dist/tools/web-search/types.d.ts.map +1 -0
  366. package/dist/tools/web-search/types.js +29 -0
  367. package/dist/tools/web-search/types.js.map +1 -0
  368. package/dist/tools/workspace-middleware.d.ts +14 -0
  369. package/dist/tools/workspace-middleware.d.ts.map +1 -0
  370. package/dist/tools/workspace-middleware.js +97 -0
  371. package/dist/tools/workspace-middleware.js.map +1 -0
  372. package/dist/types/agent-v2.d.ts +83 -0
  373. package/dist/types/agent-v2.d.ts.map +1 -0
  374. package/dist/types/agent-v2.js +8 -0
  375. package/dist/types/agent-v2.js.map +1 -0
  376. package/dist/types/agent.d.ts +3 -66
  377. package/dist/types/agent.d.ts.map +1 -1
  378. package/dist/types/agent.js +0 -6
  379. package/dist/types/agent.js.map +1 -1
  380. package/dist/types/index.d.ts +4 -3
  381. package/dist/types/index.d.ts.map +1 -1
  382. package/dist/types/index.js +3 -3
  383. package/dist/types/index.js.map +1 -1
  384. package/dist/types/lifecycle.d.ts +0 -141
  385. package/dist/types/lifecycle.d.ts.map +1 -1
  386. package/dist/types/lifecycle.js +4 -54
  387. package/dist/types/lifecycle.js.map +1 -1
  388. package/dist/types/streaming.d.ts +0 -4
  389. package/dist/types/streaming.d.ts.map +1 -1
  390. package/dist/types/streaming.js +0 -4
  391. package/dist/types/streaming.js.map +1 -1
  392. package/dist/usage-limits.d.ts +0 -37
  393. package/dist/usage-limits.d.ts.map +1 -1
  394. package/dist/usage-limits.js +1 -40
  395. package/dist/usage-limits.js.map +1 -1
  396. package/dist/utils/logger.d.ts +35 -0
  397. package/dist/utils/logger.d.ts.map +1 -0
  398. package/dist/utils/logger.js +149 -0
  399. package/dist/utils/logger.js.map +1 -0
  400. package/dist/workflow/builders/adapt.d.ts +20 -0
  401. package/dist/workflow/builders/adapt.d.ts.map +1 -0
  402. package/dist/workflow/builders/adapt.js +33 -0
  403. package/dist/workflow/builders/adapt.js.map +1 -0
  404. package/dist/workflow/builders/index.d.ts +8 -0
  405. package/dist/workflow/builders/index.d.ts.map +1 -0
  406. package/dist/workflow/builders/index.js +7 -0
  407. package/dist/workflow/builders/index.js.map +1 -0
  408. package/dist/workflow/builders/parallel.d.ts +25 -0
  409. package/dist/workflow/builders/parallel.d.ts.map +1 -0
  410. package/dist/workflow/builders/parallel.js +60 -0
  411. package/dist/workflow/builders/parallel.js.map +1 -0
  412. package/dist/workflow/builders/pipeline.d.ts +22 -0
  413. package/dist/workflow/builders/pipeline.d.ts.map +1 -0
  414. package/dist/workflow/builders/pipeline.js +48 -0
  415. package/dist/workflow/builders/pipeline.js.map +1 -0
  416. package/dist/workflow/builders/types.d.ts +54 -0
  417. package/dist/workflow/builders/types.d.ts.map +1 -0
  418. package/dist/workflow/builders/types.js +5 -0
  419. package/dist/workflow/builders/types.js.map +1 -0
  420. package/dist/workflow/durable-agent.d.ts +128 -0
  421. package/dist/workflow/durable-agent.d.ts.map +1 -0
  422. package/dist/workflow/durable-agent.js +323 -0
  423. package/dist/workflow/durable-agent.js.map +1 -0
  424. package/dist/workflow/durable-tool.d.ts +0 -84
  425. package/dist/workflow/durable-tool.d.ts.map +1 -1
  426. package/dist/workflow/durable-tool.js +2 -104
  427. package/dist/workflow/durable-tool.js.map +1 -1
  428. package/dist/workflow/hooks.d.ts +0 -215
  429. package/dist/workflow/hooks.d.ts.map +1 -1
  430. package/dist/workflow/hooks.js +15 -221
  431. package/dist/workflow/hooks.js.map +1 -1
  432. package/dist/workflow/index.d.ts +0 -9
  433. package/dist/workflow/index.d.ts.map +1 -1
  434. package/dist/workflow/index.js +0 -12
  435. package/dist/workflow/index.js.map +1 -1
  436. package/dist/workflow/schedulers.d.ts +231 -0
  437. package/dist/workflow/schedulers.d.ts.map +1 -0
  438. package/dist/workflow/schedulers.js +250 -0
  439. package/dist/workflow/schedulers.js.map +1 -0
  440. package/dist/workflow/team/create-team.d.ts +34 -0
  441. package/dist/workflow/team/create-team.d.ts.map +1 -0
  442. package/dist/workflow/team/create-team.js +242 -0
  443. package/dist/workflow/team/create-team.js.map +1 -0
  444. package/dist/workflow/team/index.d.ts +9 -0
  445. package/dist/workflow/team/index.d.ts.map +1 -0
  446. package/dist/workflow/team/index.js +8 -0
  447. package/dist/workflow/team/index.js.map +1 -0
  448. package/dist/workflow/team/machines.d.ts +152 -0
  449. package/dist/workflow/team/machines.d.ts.map +1 -0
  450. package/dist/workflow/team/machines.js +197 -0
  451. package/dist/workflow/team/machines.js.map +1 -0
  452. package/dist/workflow/team/task-board.d.ts +47 -0
  453. package/dist/workflow/team/task-board.d.ts.map +1 -0
  454. package/dist/workflow/team/task-board.js +111 -0
  455. package/dist/workflow/team/task-board.js.map +1 -0
  456. package/dist/workflow/team/tools.d.ts +66 -0
  457. package/dist/workflow/team/tools.d.ts.map +1 -0
  458. package/dist/workflow/team/tools.js +100 -0
  459. package/dist/workflow/team/tools.js.map +1 -0
  460. package/dist/workflow/team/types.d.ts +109 -0
  461. package/dist/workflow/team/types.d.ts.map +1 -0
  462. package/dist/workflow/team/types.js +5 -0
  463. package/dist/workflow/team/types.js.map +1 -0
  464. package/dist/workflow/templates.d.ts +71 -0
  465. package/dist/workflow/templates.d.ts.map +1 -0
  466. package/dist/workflow/templates.js +132 -0
  467. package/dist/workflow/templates.js.map +1 -0
  468. package/dist/workflow/utils.d.ts +0 -24
  469. package/dist/workflow/utils.d.ts.map +1 -1
  470. package/dist/workflow/utils.js +1 -32
  471. package/dist/workflow/utils.js.map +1 -1
  472. package/dist/wrappers/best-of-n.d.ts +0 -35
  473. package/dist/wrappers/best-of-n.d.ts.map +1 -1
  474. package/dist/wrappers/best-of-n.js +4 -53
  475. package/dist/wrappers/best-of-n.js.map +1 -1
  476. package/dist/wrappers/refine-loop.d.ts +36 -0
  477. package/dist/wrappers/refine-loop.d.ts.map +1 -0
  478. package/dist/wrappers/refine-loop.js +135 -0
  479. package/dist/wrappers/refine-loop.js.map +1 -0
  480. package/package.json +13 -7
@@ -0,0 +1,132 @@
1
+ /**
2
+ * @agntk/core - Standalone Workflow Templates
3
+ *
4
+ * Composable workflow templates (withApproval, withSchedule) that work
5
+ * with any Agent instance. No special DurableAgent required.
6
+ */
7
+ import { createLogger } from '@agntk/logger';
8
+ import { checkWorkflowAvailability, parseDuration } from './utils.js';
9
+ const log = createLogger('@agntk/core:workflow:templates');
10
+ // ============================================================================
11
+ // withApproval
12
+ // ============================================================================
13
+ /**
14
+ * Run an agent with a human-in-the-loop approval workflow.
15
+ *
16
+ * 1. Agent generates a draft response
17
+ * 2. Execution pauses waiting for webhook approval (zero compute)
18
+ * 3. If approved, finalizes; if rejected, throws with feedback
19
+ *
20
+ * Requires the workflow package when running under the Workflow runtime.
21
+ * Falls back to auto-approve when the runtime is not available.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const result = await withApproval(agent, 'Draft a press release', {
26
+ * webhookPath: '/api/approve',
27
+ * });
28
+ * ```
29
+ */
30
+ export async function withApproval(agent, prompt, options) {
31
+ log.info('withApproval started', { prompt: prompt.slice(0, 100), webhookPath: options.webhookPath });
32
+ // Step 1: Generate draft
33
+ const draftResult = await agent.generate({ prompt });
34
+ const draftText = draftResult.text ?? '';
35
+ // Step 2: Wait for approval
36
+ log.info('Waiting for approval webhook');
37
+ let approval;
38
+ const isWorkflowAvailable = await checkWorkflowAvailability();
39
+ if (isWorkflowAvailable) {
40
+ // Under the workflow runtime, this step would suspend and resume on webhook
41
+ // For now, the workflow runtime handles the suspension mechanism
42
+ approval = { approved: true };
43
+ }
44
+ else {
45
+ // Without workflow runtime, auto-approve (useful for development)
46
+ log.debug('No workflow runtime — auto-approving');
47
+ approval = { approved: true };
48
+ }
49
+ if (!approval.approved) {
50
+ log.warn('Approval rejected', { feedback: approval.feedback });
51
+ throw new Error(`Approval rejected: ${approval.feedback || 'No reason provided'}`);
52
+ }
53
+ // Step 3: Finalize
54
+ const finalPrompt = approval.modifiedContent
55
+ ? `Finalize with modifications: ${approval.modifiedContent}. Original: ${draftText}`
56
+ : prompt;
57
+ const finalResult = await agent.generate({ prompt: finalPrompt });
58
+ const finalText = finalResult.text ?? '';
59
+ const usage = finalResult.totalUsage
60
+ ? {
61
+ promptTokens: (finalResult.totalUsage.inputTokens ?? 0) + (draftResult.totalUsage?.inputTokens ?? 0),
62
+ completionTokens: (finalResult.totalUsage.outputTokens ?? 0) + (draftResult.totalUsage?.outputTokens ?? 0),
63
+ totalTokens: (finalResult.totalUsage.totalTokens ?? 0) + (draftResult.totalUsage?.totalTokens ?? 0),
64
+ }
65
+ : undefined;
66
+ return {
67
+ text: finalText,
68
+ steps: [
69
+ { name: 'llm-draft', status: 'completed' },
70
+ { name: 'webhook-approval', status: 'completed' },
71
+ { name: 'llm-finalize', status: 'completed' },
72
+ ],
73
+ usage,
74
+ };
75
+ }
76
+ // ============================================================================
77
+ // withSchedule
78
+ // ============================================================================
79
+ /**
80
+ * Schedule an agent execution after a delay.
81
+ *
82
+ * Under the Workflow runtime, uses durable sleep (zero compute during delay).
83
+ * Without the runtime, falls back to setTimeout.
84
+ *
85
+ * @example
86
+ * ```typescript
87
+ * const result = await withSchedule(agent, 'Send reminder email', {
88
+ * delay: '1h',
89
+ * });
90
+ * ```
91
+ */
92
+ export async function withSchedule(agent, prompt, options) {
93
+ log.info('withSchedule started', { delay: options.delay });
94
+ // Step 1: Sleep
95
+ const isWorkflowAvailable = await checkWorkflowAvailability();
96
+ if (isWorkflowAvailable) {
97
+ try {
98
+ const wf = await import('workflow');
99
+ await wf.sleep(options.delay);
100
+ }
101
+ catch {
102
+ const ms = parseDuration(options.delay);
103
+ log.warn('Workflow sleep failed, using setTimeout fallback', { ms });
104
+ await new Promise((resolve) => setTimeout(resolve, ms));
105
+ }
106
+ }
107
+ else {
108
+ const ms = parseDuration(options.delay);
109
+ log.debug('No workflow runtime — using setTimeout', { ms });
110
+ await new Promise((resolve) => setTimeout(resolve, ms));
111
+ }
112
+ log.info('Sleep completed, executing agent');
113
+ // Step 2: Generate
114
+ const result = await agent.generate({ prompt });
115
+ const text = result.text ?? '';
116
+ const usage = result.totalUsage
117
+ ? {
118
+ promptTokens: result.totalUsage.inputTokens ?? 0,
119
+ completionTokens: result.totalUsage.outputTokens ?? 0,
120
+ totalTokens: result.totalUsage.totalTokens ?? 0,
121
+ }
122
+ : undefined;
123
+ return {
124
+ text,
125
+ steps: [
126
+ { name: 'sleep', status: 'completed' },
127
+ { name: 'llm-generate', status: 'completed' },
128
+ ],
129
+ usage,
130
+ };
131
+ }
132
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/workflow/templates.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,5 @@
1
- /**
2
- * @agntk/core - Workflow Utilities
3
- *
4
- * Shared utilities for workflow durability features:
5
- * - Runtime detection (checkWorkflowAvailability)
6
- * - Duration parsing/formatting
7
- *
8
- * @see https://useworkflow.dev
9
- */
10
- /**
11
- * Check if the Workflow DevKit runtime is available.
12
- * Result is cached after first check.
13
- */
14
1
  export declare function checkWorkflowAvailability(): Promise<boolean>;
15
- /**
16
- * Reset workflow availability cache (for testing).
17
- * @internal
18
- */
19
2
  export declare function _resetWorkflowCache(): void;
20
- /**
21
- * Parse a duration string into milliseconds.
22
- * Supports: 30s, 5m, 1h, 1d
23
- */
24
3
  export declare function parseDuration(duration: string): number;
25
- /**
26
- * Format milliseconds as a human-readable duration.
27
- */
28
4
  export declare function formatDuration(ms: number): string;
29
5
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/workflow/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH;;;GAGG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAalE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAMD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqBtD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMjD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/workflow/utils.ts"],"names":[],"mappings":"AAMA,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAalE;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAuBtD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMjD"}
@@ -1,23 +1,6 @@
1
- /**
2
- * @agntk/core - Workflow Utilities
3
- *
4
- * Shared utilities for workflow durability features:
5
- * - Runtime detection (checkWorkflowAvailability)
6
- * - Duration parsing/formatting
7
- *
8
- * @see https://useworkflow.dev
9
- */
10
1
  import { createLogger } from '@agntk/logger';
11
2
  const log = createLogger('@agntk/core:workflow:utils');
12
- // ============================================================================
13
- // Workflow Runtime Detection
14
- // ============================================================================
15
- /** Cached availability result */
16
3
  let _workflowAvailable = null;
17
- /**
18
- * Check if the Workflow DevKit runtime is available.
19
- * Result is cached after first check.
20
- */
21
4
  export async function checkWorkflowAvailability() {
22
5
  if (_workflowAvailable !== null)
23
6
  return _workflowAvailable;
@@ -27,26 +10,15 @@ export async function checkWorkflowAvailability() {
27
10
  log.info('Workflow runtime detected');
28
11
  return true;
29
12
  }
30
- catch (_e) {
13
+ catch {
31
14
  _workflowAvailable = false;
32
15
  log.debug('Workflow runtime not available — durable features disabled');
33
16
  return false;
34
17
  }
35
18
  }
36
- /**
37
- * Reset workflow availability cache (for testing).
38
- * @internal
39
- */
40
19
  export function _resetWorkflowCache() {
41
20
  _workflowAvailable = null;
42
21
  }
43
- // ============================================================================
44
- // Duration Helpers
45
- // ============================================================================
46
- /**
47
- * Parse a duration string into milliseconds.
48
- * Supports: 30s, 5m, 1h, 1d
49
- */
50
22
  export function parseDuration(duration) {
51
23
  const match = duration.match(/^(\d+)(s|m|h|d)$/);
52
24
  if (!match) {
@@ -67,9 +39,6 @@ export function parseDuration(duration) {
67
39
  throw new Error(`Unknown duration unit: ${unit}`);
68
40
  }
69
41
  }
70
- /**
71
- * Format milliseconds as a human-readable duration.
72
- */
73
42
  export function formatDuration(ms) {
74
43
  if (ms < 1000)
75
44
  return `${ms}ms`;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/workflow/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,GAAG,GAAG,YAAY,CAAC,4BAA4B,CAAC,CAAC;AAEvD,+EAA+E;AAC/E,6BAA6B;AAC7B,+EAA+E;AAE/E,iCAAiC;AACjC,IAAI,kBAAkB,GAAmB,IAAI,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,IAAI,kBAAkB,KAAK,IAAI;QAAE,OAAO,kBAAkB,CAAC;IAE3D,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QACzB,kBAAkB,GAAG,IAAI,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,EAAW,EAAE,CAAC;QACrB,kBAAkB,GAAG,KAAK,CAAC;QAC3B,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,kBAAkB,GAAG,IAAI,CAAC;AAC5B,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,2CAA2C,CAAC,CAAC;IACnG,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEtB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,IAAI,CAAC;QACtB,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC;QAC3B,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAChC,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrC;YACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,KAAK;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;IACnD,IAAI,EAAE,GAAG,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC;IACtD,IAAI,EAAE,GAAG,QAAQ;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IACzD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/workflow/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,GAAG,GAAG,YAAY,CAAC,4BAA4B,CAAC,CAAC;AAEvD,IAAI,kBAAkB,GAAmB,IAAI,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,IAAI,kBAAkB,KAAK,IAAI;QAAE,OAAO,kBAAkB,CAAC;IAE3D,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QACzB,kBAAkB,GAAG,IAAI,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB,GAAG,KAAK,CAAC;QAC3B,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,kBAAkB,GAAG,IAAI,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,4BAA4B,QAAQ,2CAA2C,CAChF,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEtB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,IAAI,CAAC;QACtB,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC;QAC3B,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAChC,KAAK,GAAG;YACN,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrC;YACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,KAAK;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;IACnD,IAAI,EAAE,GAAG,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC;IACtD,IAAI,EAAE,GAAG,QAAQ;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IACzD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC;AACzC,CAAC"}
@@ -1,35 +1,18 @@
1
- /**
2
- * @agntk/core - Best-of-N Test-Time Scaling
3
- *
4
- * Run an agent N times and pick the best output via LLM judge.
5
- * Supports parallel/sequential execution, list-wise/pair-wise judging,
6
- * and budget caps via UsageLimits.
7
- */
8
1
  import type { LanguageModel } from 'ai';
9
2
  import type { Agent } from '../types/agent.js';
10
3
  import type { UsageLimits } from '../usage-limits.js';
11
4
  export interface BestOfNConfig {
12
- /** Number of times to run the agent. */
13
5
  n: number;
14
- /** Judge model for ranking outputs. */
15
6
  judgeModel: LanguageModel;
16
- /** Judging strategy. 'list-wise' ranks all at once; 'pair-wise' does tournament. Default: 'list-wise'. */
17
7
  strategy?: 'list-wise' | 'pair-wise';
18
- /** Run agent instances in parallel or sequentially. Default: 'parallel'. */
19
8
  execution?: 'parallel' | 'sequential';
20
- /** Criteria for the judge to evaluate outputs against. */
21
9
  criteria: string;
22
- /** Optional budget cap. Stops early if total tokens across all runs exceed this. */
23
10
  budget?: UsageLimits;
24
11
  }
25
12
  export interface BestOfNCandidate {
26
- /** The output text from this run. */
27
13
  text: string;
28
- /** The score assigned by the judge (higher is better). */
29
14
  score: number;
30
- /** Index of this candidate (0-based). */
31
15
  index: number;
32
- /** Token usage for this run. */
33
16
  usage?: {
34
17
  inputTokens: number;
35
18
  outputTokens: number;
@@ -37,33 +20,15 @@ export interface BestOfNCandidate {
37
20
  };
38
21
  }
39
22
  export interface BestOfNResult {
40
- /** The winning candidate. */
41
23
  best: BestOfNCandidate;
42
- /** All candidates with scores. */
43
24
  candidates: BestOfNCandidate[];
44
- /** Total token usage across all agent runs. */
45
25
  totalUsage: {
46
26
  inputTokens: number;
47
27
  outputTokens: number;
48
28
  totalTokens: number;
49
29
  };
50
- /** Whether the run was stopped early due to budget. */
51
30
  budgetExceeded: boolean;
52
- /** Number of candidates actually generated (may be < n if budget exceeded). */
53
31
  runsCompleted: number;
54
32
  }
55
- /**
56
- * Run an agent N times and pick the best output via LLM judge.
57
- *
58
- * @example
59
- * ```typescript
60
- * const result = await withBestOfN(agent, 'Write a haiku about coding', {
61
- * n: 3,
62
- * judgeModel: myModel,
63
- * criteria: 'Quality, creativity, and adherence to haiku format',
64
- * });
65
- * console.log(result.best.text); // Best haiku
66
- * ```
67
- */
68
33
  export declare function withBestOfN(agent: Agent, prompt: string, config: BestOfNConfig): Promise<BestOfNResult>;
69
34
  //# sourceMappingURL=best-of-n.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"best-of-n.d.ts","sourceRoot":"","sources":["../../src/wrappers/best-of-n.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAQnD,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,CAAC,EAAE,MAAM,CAAC;IACV,uCAAuC;IACvC,UAAU,EAAE,aAAa,CAAC;IAC1B,0GAA0G;IAC1G,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IACrC,4EAA4E;IAC5E,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,KAAK,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5E;AAED,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,IAAI,EAAE,gBAAgB,CAAC;IACvB,kCAAkC;IAClC,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,+CAA+C;IAC/C,UAAU,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,uDAAuD;IACvD,cAAc,EAAE,OAAO,CAAC;IACxB,+EAA+E;IAC/E,aAAa,EAAE,MAAM,CAAC;CACvB;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,CA+FxB"}
1
+ {"version":3,"file":"best-of-n.d.ts","sourceRoot":"","sources":["../../src/wrappers/best-of-n.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD,MAAM,WAAW,aAAa;IAC5B,CAAC,EAAE,MAAM,CAAC;IAEV,UAAU,EAAE,aAAa,CAAC;IAE1B,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IAErC,SAAS,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IAEtC,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5E;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,gBAAgB,CAAC;IAEvB,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAE/B,UAAU,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAE/E,cAAc,EAAE,OAAO,CAAC;IAExB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,CA2FxB"}
@@ -1,32 +1,8 @@
1
- /**
2
- * @agntk/core - Best-of-N Test-Time Scaling
3
- *
4
- * Run an agent N times and pick the best output via LLM judge.
5
- * Supports parallel/sequential execution, list-wise/pair-wise judging,
6
- * and budget caps via UsageLimits.
7
- */
8
1
  import { createLogger } from '@agntk/logger';
9
2
  const log = createLogger('@agntk/core:best-of-n');
10
- // ============================================================================
11
- // Core Implementation
12
- // ============================================================================
13
- /**
14
- * Run an agent N times and pick the best output via LLM judge.
15
- *
16
- * @example
17
- * ```typescript
18
- * const result = await withBestOfN(agent, 'Write a haiku about coding', {
19
- * n: 3,
20
- * judgeModel: myModel,
21
- * criteria: 'Quality, creativity, and adherence to haiku format',
22
- * });
23
- * console.log(result.best.text); // Best haiku
24
- * ```
25
- */
26
3
  export async function withBestOfN(agent, prompt, config) {
27
4
  const { n, judgeModel, strategy = 'list-wise', execution = 'parallel', criteria, budget, } = config;
28
5
  log.info('Starting best-of-N', { n, strategy, execution, criteria: criteria.slice(0, 50) });
29
- // Generate candidates
30
6
  const candidates = [];
31
7
  const totalUsage = { inputTokens: 0, outputTokens: 0, totalTokens: 0 };
32
8
  let budgetExceeded = false;
@@ -45,7 +21,6 @@ export async function withBestOfN(agent, prompt, config) {
45
21
  }
46
22
  }
47
23
  else {
48
- // Sequential with budget check
49
24
  for (let i = 0; i < n; i++) {
50
25
  if (budget && isOverBudget(totalUsage, budget)) {
51
26
  budgetExceeded = true;
@@ -76,7 +51,6 @@ export async function withBestOfN(agent, prompt, config) {
76
51
  runsCompleted: candidates.length,
77
52
  };
78
53
  }
79
- // Judge candidates
80
54
  log.info('Judging candidates', { count: candidates.length, strategy });
81
55
  let scoredCandidates;
82
56
  if (strategy === 'pair-wise') {
@@ -85,7 +59,6 @@ export async function withBestOfN(agent, prompt, config) {
85
59
  else {
86
60
  scoredCandidates = await listWiseJudge(candidates, judgeModel, criteria);
87
61
  }
88
- // Sort by score descending
89
62
  scoredCandidates.sort((a, b) => b.score - a.score);
90
63
  const result = {
91
64
  best: scoredCandidates[0],
@@ -101,15 +74,13 @@ export async function withBestOfN(agent, prompt, config) {
101
74
  });
102
75
  return result;
103
76
  }
104
- // ============================================================================
105
- // Candidate Generation
106
- // ============================================================================
107
77
  async function generateCandidate(agent, prompt, index) {
108
78
  try {
109
79
  const result = await agent.stream({ prompt });
110
- // Consume the stream to get the final text
111
80
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
112
- for await (const _chunk of result.fullStream) { /* drain */ }
81
+ for await (const _chunk of result.fullStream) {
82
+ void 0;
83
+ }
113
84
  const text = await result.text;
114
85
  const usage = await result.usage;
115
86
  return {
@@ -130,13 +101,6 @@ async function generateCandidate(agent, prompt, index) {
130
101
  return null;
131
102
  }
132
103
  }
133
- // ============================================================================
134
- // List-Wise Judge
135
- // ============================================================================
136
- /**
137
- * Rank all candidates at once using a single LLM call.
138
- * Returns candidates with scores assigned.
139
- */
140
104
  async function listWiseJudge(candidates, model, criteria) {
141
105
  const { generateText } = await import('ai');
142
106
  const outputList = candidates
@@ -166,7 +130,7 @@ Where SCORE is 1-10 (10 = best). Example for 3 outputs:
166
130
  for (const line of lines) {
167
131
  const match = line.match(/(\d+)\s*:\s*(\d+)/);
168
132
  if (match) {
169
- const outputNum = parseInt(match[1], 10) - 1; // 0-indexed
133
+ const outputNum = parseInt(match[1], 10) - 1;
170
134
  const score = parseInt(match[2], 10);
171
135
  if (outputNum >= 0 && outputNum < scored.length) {
172
136
  scored[outputNum].score = score;
@@ -177,27 +141,18 @@ Where SCORE is 1-10 (10 = best). Example for 3 outputs:
177
141
  }
178
142
  catch (error) {
179
143
  log.error('List-wise judge failed', { error: String(error) });
180
- // Fallback: assign equal scores
181
144
  return candidates.map((c) => ({ ...c, score: 5 }));
182
145
  }
183
146
  }
184
- // ============================================================================
185
- // Pair-Wise Judge
186
- // ============================================================================
187
- /**
188
- * Tournament-style judging: compare pairs and accumulate wins as scores.
189
- */
190
147
  async function pairWiseJudge(candidates, model, criteria) {
191
148
  const { generateText } = await import('ai');
192
149
  const scores = new Array(candidates.length).fill(0);
193
- // Compare all pairs
194
150
  const comparisons = [];
195
151
  for (let i = 0; i < candidates.length; i++) {
196
152
  for (let j = i + 1; j < candidates.length; j++) {
197
153
  comparisons.push([i, j]);
198
154
  }
199
155
  }
200
- // Run comparisons in parallel
201
156
  await Promise.all(comparisons.map(async ([i, j]) => {
202
157
  try {
203
158
  const result = await generateText({
@@ -225,16 +180,12 @@ Which output is better based on the criteria? Respond with EXACTLY one word: "A"
225
180
  }
226
181
  catch (error) {
227
182
  log.error('Pair-wise comparison failed', { i, j, error: String(error) });
228
- // Tie — both get a point
229
183
  scores[i] += 0.5;
230
184
  scores[j] += 0.5;
231
185
  }
232
186
  }));
233
187
  return candidates.map((c, i) => ({ ...c, score: scores[i] }));
234
188
  }
235
- // ============================================================================
236
- // Budget Check
237
- // ============================================================================
238
189
  function isOverBudget(usage, limits) {
239
190
  if (limits.maxTotalTokens && usage.totalTokens >= limits.maxTotalTokens)
240
191
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"best-of-n.js","sourceRoot":"","sources":["../../src/wrappers/best-of-n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"best-of-n.js","sourceRoot":"","sources":["../../src/wrappers/best-of-n.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { LanguageModel } from 'ai';
2
+ import type { Agent } from '../types/agent.js';
3
+ export interface RefineLoopConfig {
4
+ judgeModel?: LanguageModel;
5
+ criteria: string;
6
+ threshold?: number;
7
+ maxIterations?: number;
8
+ evaluator?: (output: string) => Promise<EvaluationResult>;
9
+ }
10
+ export interface EvaluationResult {
11
+ score: number;
12
+ critique: string;
13
+ strengths?: string[];
14
+ weaknesses?: string[];
15
+ }
16
+ export interface RefineLoopAttempt {
17
+ text: string;
18
+ score: number;
19
+ critique: string;
20
+ strengths?: string[];
21
+ weaknesses?: string[];
22
+ }
23
+ export interface RefineLoopResult {
24
+ text: string;
25
+ score: number;
26
+ iterations: number;
27
+ history: RefineLoopAttempt[];
28
+ usage: {
29
+ inputTokens: number;
30
+ outputTokens: number;
31
+ totalTokens: number;
32
+ };
33
+ thresholdMet: boolean;
34
+ }
35
+ export declare function withRefineLoop(agent: Agent, prompt: string, config: RefineLoopConfig): Promise<RefineLoopResult>;
36
+ //# sourceMappingURL=refine-loop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refine-loop.d.ts","sourceRoot":"","sources":["../../src/wrappers/refine-loop.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,IAAI,CAAC;AAC5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAK5C,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,aAAa,CAAC;IAE3B,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3D;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IAEd,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IAEd,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IAEd,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAE7B,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAE1E,YAAY,EAAE,OAAO,CAAC;CACvB;AASD,wBAAsB,cAAc,CAClC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CA+E3B"}