@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,97 @@
1
+ /**
2
+ * @agntk/core - Tool Provider
3
+ *
4
+ * Central provider for creating and managing tool sets.
5
+ * Adapted from packages/core/src/tools/provider.ts
6
+ */
7
+ import { type ToolSet } from './factory.js';
8
+ /**
9
+ * Names of core tools that are always available.
10
+ */
11
+ export declare const CORE_TOOL_NAMES: readonly ["fs", "shell", "web", "memory", "delegate", "task", "plan", "validate", "reasoning"];
12
+ export type CoreToolName = (typeof CORE_TOOL_NAMES)[number];
13
+ export interface ToolProviderConfig {
14
+ /** Workspace root directory */
15
+ workspaceRoot?: string;
16
+ /** Allowed directories for file operations */
17
+ allowedDirectories?: string[];
18
+ /** Enable tool execution instrumentation/logging */
19
+ enableInstrumentation?: boolean;
20
+ /** Enable dynamic tool activation/deactivation */
21
+ enableActivation?: boolean;
22
+ /** Custom tool dependencies */
23
+ customDependencies?: Record<string, unknown>;
24
+ }
25
+ export interface ToolActivationManager {
26
+ /** Currently active tool names */
27
+ activeTools: Set<string>;
28
+ /** All available tool names */
29
+ availableTools: Set<string>;
30
+ /** Activate a tool */
31
+ activate(name: string): boolean;
32
+ /** Deactivate a tool */
33
+ deactivate(name: string): boolean;
34
+ /** Check if a tool is active */
35
+ isActive(name: string): boolean;
36
+ /** Get all active tools */
37
+ getActiveTools(): string[];
38
+ /** Set available tools */
39
+ setAvailableTools(names: string[]): void;
40
+ }
41
+ /**
42
+ * Create a tool activation manager.
43
+ */
44
+ export declare function createToolActivationManager(): ToolActivationManager;
45
+ export interface ToolRegistryEntry {
46
+ name: string;
47
+ description: string;
48
+ category: string;
49
+ tags: string[];
50
+ }
51
+ export interface ToolRegistry {
52
+ entries: Map<string, ToolRegistryEntry>;
53
+ register(entry: ToolRegistryEntry): void;
54
+ unregister(name: string): boolean;
55
+ get(name: string): ToolRegistryEntry | undefined;
56
+ search(query: string): ToolRegistryEntry[];
57
+ listByCategory(category: string): ToolRegistryEntry[];
58
+ listAll(): ToolRegistryEntry[];
59
+ }
60
+ /**
61
+ * Create a tool registry for metadata and search.
62
+ */
63
+ export declare function createToolRegistry(): ToolRegistry;
64
+ export interface ToolProviderResult {
65
+ /** All created tools */
66
+ tools: ToolSet;
67
+ /** Core tool names */
68
+ coreToolNames: readonly string[];
69
+ /** Activation manager instance */
70
+ activationManager: ToolActivationManager;
71
+ /** Registry instance */
72
+ registry: ToolRegistry;
73
+ /** Cleanup function */
74
+ cleanup: () => Promise<void>;
75
+ }
76
+ /**
77
+ * Wrap tools with instrumentation for logging and metrics.
78
+ */
79
+ export declare function instrumentTools(tools: ToolSet): ToolSet;
80
+ /**
81
+ * Create all tools with the given configuration.
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * const { tools, cleanup } = await createAllTools({
86
+ * workspaceRoot: process.cwd(),
87
+ * enableInstrumentation: true,
88
+ * });
89
+ *
90
+ * // Use tools...
91
+ *
92
+ * await cleanup();
93
+ * ```
94
+ */
95
+ export declare function createAllTools(config?: ToolProviderConfig): Promise<ToolProviderResult>;
96
+ export { ToolFactory, type ToolDependencies, type ToolSet } from './factory.js';
97
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/tools/provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAsC,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAM7E;;GAEG;AACH,eAAO,MAAM,eAAe,gGAUlB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAM5D,MAAM,WAAW,kBAAkB;IACjC,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,oDAAoD;IACpD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,+BAA+B;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C;AAMD,MAAM,WAAW,qBAAqB;IACpC,kCAAkC;IAClC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,+BAA+B;IAC/B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5B,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,wBAAwB;IACxB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,gCAAgC;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,2BAA2B;IAC3B,cAAc,IAAI,MAAM,EAAE,CAAC;IAC3B,0BAA0B;IAC1B,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,qBAAqB,CAqCnE;AAMD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAAC;IACjD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAAC;IAC3C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACtD,OAAO,IAAI,iBAAiB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAsCjD;AAMD,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,sBAAsB;IACtB,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,kCAAkC;IAClC,iBAAiB,EAAE,qBAAqB,CAAC;IACzC,wBAAwB;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,uBAAuB;IACvB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA6BvD;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,cAAc,CAClC,MAAM,GAAE,kBAAuB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CA4C7B;AAMD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,178 @@
1
+ /**
2
+ * @agntk/core - Tool Provider
3
+ *
4
+ * Central provider for creating and managing tool sets.
5
+ * Adapted from packages/core/src/tools/provider.ts
6
+ */
7
+ import { ToolFactory } from './factory.js';
8
+ // ============================================================================
9
+ // Core Tool Names
10
+ // ============================================================================
11
+ /**
12
+ * Names of core tools that are always available.
13
+ */
14
+ export const CORE_TOOL_NAMES = [
15
+ 'fs',
16
+ 'shell',
17
+ 'web',
18
+ 'memory',
19
+ 'delegate',
20
+ 'task',
21
+ 'plan',
22
+ 'validate',
23
+ 'reasoning',
24
+ ];
25
+ /**
26
+ * Create a tool activation manager.
27
+ */
28
+ export function createToolActivationManager() {
29
+ const activeTools = new Set();
30
+ const availableTools = new Set();
31
+ return {
32
+ activeTools,
33
+ availableTools,
34
+ activate(name) {
35
+ if (!availableTools.has(name)) {
36
+ return false;
37
+ }
38
+ activeTools.add(name);
39
+ return true;
40
+ },
41
+ deactivate(name) {
42
+ return activeTools.delete(name);
43
+ },
44
+ isActive(name) {
45
+ return activeTools.has(name);
46
+ },
47
+ getActiveTools() {
48
+ return Array.from(activeTools);
49
+ },
50
+ setAvailableTools(names) {
51
+ availableTools.clear();
52
+ for (const name of names) {
53
+ availableTools.add(name);
54
+ // Activate all by default
55
+ activeTools.add(name);
56
+ }
57
+ },
58
+ };
59
+ }
60
+ /**
61
+ * Create a tool registry for metadata and search.
62
+ */
63
+ export function createToolRegistry() {
64
+ const entries = new Map();
65
+ return {
66
+ entries,
67
+ register(entry) {
68
+ entries.set(entry.name, entry);
69
+ },
70
+ unregister(name) {
71
+ return entries.delete(name);
72
+ },
73
+ get(name) {
74
+ return entries.get(name);
75
+ },
76
+ search(query) {
77
+ const lowerQuery = query.toLowerCase();
78
+ return Array.from(entries.values()).filter((entry) => entry.name.toLowerCase().includes(lowerQuery) ||
79
+ entry.description.toLowerCase().includes(lowerQuery) ||
80
+ entry.tags.some((tag) => tag.toLowerCase().includes(lowerQuery)));
81
+ },
82
+ listByCategory(category) {
83
+ return Array.from(entries.values()).filter((entry) => entry.category === category);
84
+ },
85
+ listAll() {
86
+ return Array.from(entries.values());
87
+ },
88
+ };
89
+ }
90
+ // ============================================================================
91
+ // Tool Instrumentation
92
+ // ============================================================================
93
+ /**
94
+ * Wrap tools with instrumentation for logging and metrics.
95
+ */
96
+ export function instrumentTools(tools) {
97
+ const instrumented = {};
98
+ for (const [name, tool] of Object.entries(tools)) {
99
+ if (!tool.execute) {
100
+ instrumented[name] = tool;
101
+ continue;
102
+ }
103
+ const originalExecute = tool.execute;
104
+ instrumented[name] = {
105
+ ...tool,
106
+ execute: async (input, options) => {
107
+ const startTime = Date.now();
108
+ try {
109
+ const result = await originalExecute(input, options);
110
+ const duration = Date.now() - startTime;
111
+ console.debug(`[tool:${name}] completed in ${duration}ms`);
112
+ return result;
113
+ }
114
+ catch (error) {
115
+ const duration = Date.now() - startTime;
116
+ console.error(`[tool:${name}] failed after ${duration}ms`, error);
117
+ throw error;
118
+ }
119
+ },
120
+ };
121
+ }
122
+ return instrumented;
123
+ }
124
+ // ============================================================================
125
+ // Create All Tools
126
+ // ============================================================================
127
+ /**
128
+ * Create all tools with the given configuration.
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * const { tools, cleanup } = await createAllTools({
133
+ * workspaceRoot: process.cwd(),
134
+ * enableInstrumentation: true,
135
+ * });
136
+ *
137
+ * // Use tools...
138
+ *
139
+ * await cleanup();
140
+ * ```
141
+ */
142
+ export async function createAllTools(config = {}) {
143
+ const { workspaceRoot = process.cwd(), allowedDirectories = [workspaceRoot], enableInstrumentation = true, enableActivation = false, customDependencies = {}, } = config;
144
+ const deps = {
145
+ workspaceRoot,
146
+ allowedDirectories,
147
+ context: customDependencies,
148
+ };
149
+ const activationManager = createToolActivationManager();
150
+ const registry = createToolRegistry();
151
+ const factory = new ToolFactory();
152
+ // Note: Individual tool creators will be registered by the tools themselves
153
+ // when they are imported. For now, return an empty tool set that will be
154
+ // populated when tools are migrated.
155
+ let tools = factory.createAll(deps);
156
+ // Set available tools in activation manager
157
+ activationManager.setAvailableTools(Object.keys(tools));
158
+ // Apply instrumentation if enabled
159
+ if (enableInstrumentation) {
160
+ tools = instrumentTools(tools);
161
+ }
162
+ const cleanup = async () => {
163
+ // Cleanup logic (close connections, release resources, etc.)
164
+ factory.clear();
165
+ };
166
+ return {
167
+ tools,
168
+ coreToolNames: CORE_TOOL_NAMES,
169
+ activationManager,
170
+ registry,
171
+ cleanup,
172
+ };
173
+ }
174
+ // ============================================================================
175
+ // Exports
176
+ // ============================================================================
177
+ export { ToolFactory } from './factory.js';
178
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/tools/provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,WAAW,EAAuC,MAAM,WAAW,CAAC;AAE7E,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI;IACJ,OAAO;IACP,KAAK;IACL,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,UAAU;IACV,WAAW;CACH,CAAC;AA2CX;;GAEG;AACH,MAAM,UAAU,2BAA2B;IACzC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC,OAAO;QACL,WAAW;QACX,cAAc;QAEd,QAAQ,CAAC,IAAY;YACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,UAAU,CAAC,IAAY;YACrB,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,QAAQ,CAAC,IAAY;YACnB,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,cAAc;YACZ,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;QAED,iBAAiB,CAAC,KAAe;YAC/B,cAAc,CAAC,KAAK,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzB,0BAA0B;gBAC1B,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAuBD;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IAErD,OAAO;QACL,OAAO;QAEP,QAAQ,CAAC,KAAwB;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,UAAU,CAAC,IAAY;YACrB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,GAAG,CAAC,IAAY;YACd,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,CAAC,KAAa;YAClB,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC7C,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CACnE,CAAC;QACJ,CAAC;QAED,cAAc,CAAC,QAAgB;YAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CACvC,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC;AAmBD,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,MAAM,YAAY,GAAY,EAAE,CAAC;IAEjC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAC1B,SAAS;QACX,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC;QACrC,YAAY,CAAC,IAAI,CAAC,GAAG;YACnB,GAAG,IAAI;YACP,OAAO,EAAE,KAAK,EAAE,KAAc,EAAE,OAAgB,EAAE,EAAE;gBAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,eAAgB,CAAC,KAAK,EAAE,OAAgB,CAAC,CAAC;oBAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,kBAAkB,QAAQ,IAAI,CAAC,CAAC;oBAC3D,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,kBAAkB,QAAQ,IAAI,EAAE,KAAK,CAAC,CAAC;oBAClE,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;SACM,CAAC;IACZ,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAA6B,EAAE;IAE/B,MAAM,EACJ,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,EAC7B,kBAAkB,GAAG,CAAC,aAAa,CAAC,EACpC,qBAAqB,GAAG,IAAI,EAC5B,gBAAgB,GAAG,KAAK,EACxB,kBAAkB,GAAG,EAAE,GACxB,GAAG,MAAM,CAAC;IAEX,MAAM,IAAI,GAAqB;QAC7B,aAAa;QACb,kBAAkB;QAClB,OAAO,EAAE,kBAAkB;KAC5B,CAAC;IAEF,MAAM,iBAAiB,GAAG,2BAA2B,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAElC,4EAA4E;IAC5E,yEAAyE;IACzE,qCAAqC;IACrC,IAAI,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAEpC,4CAA4C;IAC5C,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAExD,mCAAmC;IACnC,IAAI,qBAAqB,EAAE,CAAC;QAC1B,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,6DAA6D;QAC7D,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO;QACL,KAAK;QACL,aAAa,EAAE,eAAe;QAC9B,iBAAiB;QACjB,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E,OAAO,EAAE,WAAW,EAAuC,MAAM,WAAW,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @agntk/core - Search Skills Tool
3
+ *
4
+ * AI SDK tool that allows agents to dynamically search for skills by keyword.
5
+ * Backed by cached frontmatter metadata with file-change invalidation.
6
+ */
7
+ import type { SkillMeta } from '../skills/types.js';
8
+ interface SkillCache {
9
+ skills: SkillMeta[];
10
+ /** Map of skill path → mtime at load time */
11
+ mtimes: Map<string, number>;
12
+ loadedAt: number;
13
+ }
14
+ /**
15
+ * Clear the skills cache. Useful for testing.
16
+ */
17
+ export declare function clearSkillsCache(): void;
18
+ /**
19
+ * Get the current cache for testing inspection.
20
+ */
21
+ export declare function getSkillsCache(): SkillCache | null;
22
+ export interface SearchSkillsToolConfig {
23
+ /** Directories to scan for skills. */
24
+ directories?: string[];
25
+ /** Base path for resolving relative directories. */
26
+ basePath?: string;
27
+ /** Maximum results to return. Default: 5 */
28
+ maxResults?: number;
29
+ }
30
+ /**
31
+ * Create a search_skills tool for agent skill discovery.
32
+ *
33
+ * The tool searches cached skill metadata by keyword, returning
34
+ * top matches ranked by relevance. Results include name, description,
35
+ * tags, and when_to_use for the supervisor LLM to pick from.
36
+ */
37
+ export declare function createSearchSkillsTool(config?: SearchSkillsToolConfig): {
38
+ search_skills: import("ai").Tool<{
39
+ query: string;
40
+ limit?: number | undefined;
41
+ }, string>;
42
+ };
43
+ export {};
44
+ //# sourceMappingURL=search-skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-skills.d.ts","sourceRoot":"","sources":["../../src/tools/search-skills.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAQjD,UAAU,UAAU;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,6CAA6C;IAC7C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAqDD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,UAAU,GAAG,IAAI,CAElD;AAMD,MAAM,WAAW,sBAAsB;IACrC,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,sBAA2B;;;;;EA8DzE"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * @agntk/core - Search Skills Tool
3
+ *
4
+ * AI SDK tool that allows agents to dynamically search for skills by keyword.
5
+ * Backed by cached frontmatter metadata with file-change invalidation.
6
+ */
7
+ import { tool } from 'ai';
8
+ import { z } from 'zod';
9
+ import * as fs from 'node:fs';
10
+ import { createLogger } from '@agntk/logger';
11
+ import { discoverSkills, searchSkills } from '../skills/loader.js';
12
+ const log = createLogger('@agntk/core:search-skills');
13
+ let cache = null;
14
+ /** Maximum age before a full re-scan (5 minutes). */
15
+ const MAX_CACHE_AGE_MS = 5 * 60 * 1000;
16
+ /**
17
+ * Check if cached skill files have changed on disk.
18
+ */
19
+ function isCacheStale(c) {
20
+ // Time-based expiry
21
+ if (Date.now() - c.loadedAt > MAX_CACHE_AGE_MS)
22
+ return true;
23
+ // Check mtimes of known files
24
+ for (const [filePath, cachedMtime] of c.mtimes) {
25
+ try {
26
+ const stat = fs.statSync(filePath);
27
+ if (stat.mtimeMs !== cachedMtime)
28
+ return true;
29
+ }
30
+ catch (_e) {
31
+ // File deleted → stale
32
+ return true;
33
+ }
34
+ }
35
+ return false;
36
+ }
37
+ /**
38
+ * Get skills from cache or re-scan from disk.
39
+ */
40
+ function getCachedSkills(directories, basePath) {
41
+ if (cache && !isCacheStale(cache)) {
42
+ return cache.skills;
43
+ }
44
+ log.debug('Refreshing skills cache');
45
+ const skills = discoverSkills(directories, basePath);
46
+ const mtimes = new Map();
47
+ for (const skill of skills) {
48
+ try {
49
+ const stat = fs.statSync(skill.path);
50
+ mtimes.set(skill.path, stat.mtimeMs);
51
+ }
52
+ catch (_e) {
53
+ // Skip if stat fails
54
+ }
55
+ }
56
+ cache = { skills, mtimes, loadedAt: Date.now() };
57
+ return skills;
58
+ }
59
+ /**
60
+ * Clear the skills cache. Useful for testing.
61
+ */
62
+ export function clearSkillsCache() {
63
+ cache = null;
64
+ }
65
+ /**
66
+ * Get the current cache for testing inspection.
67
+ */
68
+ export function getSkillsCache() {
69
+ return cache;
70
+ }
71
+ /**
72
+ * Create a search_skills tool for agent skill discovery.
73
+ *
74
+ * The tool searches cached skill metadata by keyword, returning
75
+ * top matches ranked by relevance. Results include name, description,
76
+ * tags, and when_to_use for the supervisor LLM to pick from.
77
+ */
78
+ export function createSearchSkillsTool(config = {}) {
79
+ const { directories, basePath, maxResults = 5 } = config;
80
+ return {
81
+ search_skills: tool({
82
+ description: 'Search for available skills by keyword. Returns ranked matches ' +
83
+ 'with name, description, tags, and when_to_use guidance. ' +
84
+ 'Use this to find the right skill for a subtask.',
85
+ inputSchema: z.object({
86
+ query: z.string().describe('Search keywords (e.g. "deploy docker", "code review")'),
87
+ limit: z
88
+ .number()
89
+ .min(1)
90
+ .max(10)
91
+ .optional()
92
+ .describe('Maximum results to return. Default: 5'),
93
+ }),
94
+ execute: async ({ query, limit }) => {
95
+ const effectiveLimit = limit ?? maxResults;
96
+ try {
97
+ const skills = getCachedSkills(directories, basePath);
98
+ if (skills.length === 0) {
99
+ return JSON.stringify({
100
+ success: true,
101
+ count: 0,
102
+ results: [],
103
+ message: 'No skills found. Add SKILL.md files to your skills directory.',
104
+ });
105
+ }
106
+ const matches = searchSkills(skills, query, effectiveLimit);
107
+ const results = matches.map((m) => ({
108
+ name: m.skill.name,
109
+ description: m.skill.description,
110
+ tags: m.skill.tags ?? [],
111
+ whenToUse: m.skill.whenToUse ?? '',
112
+ model: m.skill.model,
113
+ score: Math.round(m.score * 100) / 100,
114
+ }));
115
+ log.debug('Skills search', { query, found: results.length, total: skills.length });
116
+ return JSON.stringify({
117
+ success: true,
118
+ count: results.length,
119
+ totalSkills: skills.length,
120
+ results,
121
+ });
122
+ }
123
+ catch (error) {
124
+ log.error('Skills search failed', { query, error: String(error) });
125
+ return JSON.stringify({
126
+ success: false,
127
+ error: `Search failed: ${error instanceof Error ? error.message : String(error)}`,
128
+ });
129
+ }
130
+ },
131
+ }),
132
+ };
133
+ }
134
+ //# sourceMappingURL=search-skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-skills.js","sourceRoot":"","sources":["../../src/tools/search-skills.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhE,MAAM,GAAG,GAAG,YAAY,CAAC,2BAA2B,CAAC,CAAC;AAatD,IAAI,KAAK,GAAsB,IAAI,CAAC;AAEpC,qDAAqD;AACrD,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvC;;GAEG;AACH,SAAS,YAAY,CAAC,CAAa;IACjC,oBAAoB;IACpB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,GAAG,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAE5D,8BAA8B;IAC9B,KAAK,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;QAChD,CAAC;QAAC,OAAO,EAAW,EAAE,CAAC;YACrB,uBAAuB;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,WAAsB,EAAE,QAAiB;IAChE,IAAI,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,EAAW,EAAE,CAAC;YACrB,qBAAqB;QACvB,CAAC;IACH,CAAC;IAED,KAAK,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACjD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,KAAK,GAAG,IAAI,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,KAAK,CAAC;AACf,CAAC;AAeD;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiC,EAAE;IACxE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC;IAEzD,OAAO;QACL,aAAa,EAAE,IAAI,CAAC;YAClB,WAAW,EACT,iEAAiE;gBACjE,0DAA0D;gBAC1D,iDAAiD;YACnD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;gBACnF,KAAK,EAAE,CAAC;qBACL,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,GAAG,CAAC,EAAE,CAAC;qBACP,QAAQ,EAAE;qBACV,QAAQ,CAAC,uCAAuC,CAAC;aACrD,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;gBAClC,MAAM,cAAc,GAAG,KAAK,IAAI,UAAU,CAAC;gBAE3C,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAEtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACxB,OAAO,IAAI,CAAC,SAAS,CAAC;4BACpB,OAAO,EAAE,IAAI;4BACb,KAAK,EAAE,CAAC;4BACR,OAAO,EAAE,EAAE;4BACX,OAAO,EAAE,+DAA+D;yBACzE,CAAC,CAAC;oBACL,CAAC;oBAED,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;oBAE5D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAClC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI;wBAClB,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW;wBAChC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE;wBACxB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE;wBAClC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK;wBACpB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG;qBACvC,CAAC,CAAC,CAAC;oBAEJ,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBAEnF,OAAO,IAAI,CAAC,SAAS,CAAC;wBACpB,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,OAAO,CAAC,MAAM;wBACrB,WAAW,EAAE,MAAM,CAAC,MAAM;wBAC1B,OAAO;qBACR,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,GAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACnE,OAAO,IAAI,CAAC,SAAS,CAAC;wBACpB,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBAClF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @agntk/core - Background Process Management Tool
3
+ *
4
+ * Manages long-running background processes with session tracking.
5
+ * Ported from @agntk/brain shell to consolidate shell tools.
6
+ */
7
+ import { type ChildProcess } from 'node:child_process';
8
+ export interface BackgroundSession {
9
+ id: string;
10
+ command: string;
11
+ process: ChildProcess;
12
+ stdout: string;
13
+ stderr: string;
14
+ startedAt: number;
15
+ status: 'running' | 'completed' | 'failed' | 'stopped';
16
+ exitCode?: number;
17
+ cwd?: string;
18
+ }
19
+ /** Get all sessions (for testing). */
20
+ export declare function getBackgroundSessions(): Map<string, BackgroundSession>;
21
+ /** Clear all sessions (for testing). */
22
+ export declare function clearBackgroundSessions(): void;
23
+ /**
24
+ * Create a background process management tool.
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * const tools = { shell: createShellTool('/my/project'), background: createBackgroundTool() };
29
+ * ```
30
+ */
31
+ export declare function createBackgroundTool(): import("ai").Tool<{
32
+ operation: "status" | "output" | "start" | "stop" | "list";
33
+ cwd?: string | undefined;
34
+ env?: Record<string, string> | undefined;
35
+ command?: string | undefined;
36
+ sessionId?: string | undefined;
37
+ }, string>;
38
+ //# sourceMappingURL=background.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../../src/tools/shell/background.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQ9D,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAeD,sCAAsC;AACtC,wBAAgB,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEtE;AAED,wCAAwC;AACxC,wBAAgB,uBAAuB,IAAI,IAAI,CAO9C;AAuED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB;;;;;;WAoInC"}