@aigne/core 1.72.0 → 1.74.0-beta

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 (827) hide show
  1. package/README.md +11 -11
  2. package/dist/_virtual/rolldown_runtime.cjs +29 -0
  3. package/dist/agents/agent.cjs +874 -0
  4. package/dist/agents/agent.d.cts +967 -0
  5. package/dist/agents/agent.d.cts.map +1 -0
  6. package/dist/agents/agent.d.mts +967 -0
  7. package/dist/agents/agent.d.mts.map +1 -0
  8. package/dist/agents/agent.mjs +863 -0
  9. package/dist/agents/agent.mjs.map +1 -0
  10. package/dist/agents/ai-agent.cjs +524 -0
  11. package/dist/agents/ai-agent.d.cts +401 -0
  12. package/dist/agents/ai-agent.d.cts.map +1 -0
  13. package/dist/agents/ai-agent.d.mts +401 -0
  14. package/dist/agents/ai-agent.d.mts.map +1 -0
  15. package/dist/agents/ai-agent.mjs +519 -0
  16. package/dist/agents/ai-agent.mjs.map +1 -0
  17. package/dist/agents/chat-model.cjs +397 -0
  18. package/dist/agents/chat-model.d.cts +674 -0
  19. package/dist/agents/chat-model.d.cts.map +1 -0
  20. package/dist/agents/chat-model.d.mts +674 -0
  21. package/dist/agents/chat-model.d.mts.map +1 -0
  22. package/dist/agents/chat-model.mjs +391 -0
  23. package/dist/agents/chat-model.mjs.map +1 -0
  24. package/dist/agents/guide-rail-agent.cjs +17 -0
  25. package/dist/agents/guide-rail-agent.d.cts +67 -0
  26. package/dist/agents/guide-rail-agent.d.cts.map +1 -0
  27. package/dist/agents/guide-rail-agent.d.mts +67 -0
  28. package/dist/agents/guide-rail-agent.d.mts.map +1 -0
  29. package/dist/agents/guide-rail-agent.mjs +17 -0
  30. package/dist/agents/guide-rail-agent.mjs.map +1 -0
  31. package/dist/agents/image-agent.cjs +74 -0
  32. package/dist/agents/image-agent.d.cts +44 -0
  33. package/dist/agents/image-agent.d.cts.map +1 -0
  34. package/dist/agents/image-agent.d.mts +44 -0
  35. package/dist/agents/image-agent.d.mts.map +1 -0
  36. package/dist/agents/image-agent.mjs +72 -0
  37. package/dist/agents/image-agent.mjs.map +1 -0
  38. package/dist/agents/image-model.cjs +83 -0
  39. package/dist/agents/image-model.d.cts +276 -0
  40. package/dist/agents/image-model.d.cts.map +1 -0
  41. package/dist/agents/image-model.d.mts +276 -0
  42. package/dist/agents/image-model.d.mts.map +1 -0
  43. package/dist/agents/image-model.mjs +81 -0
  44. package/dist/agents/image-model.mjs.map +1 -0
  45. package/dist/agents/mcp-agent.cjs +307 -0
  46. package/dist/agents/mcp-agent.d.cts +235 -0
  47. package/dist/agents/mcp-agent.d.cts.map +1 -0
  48. package/dist/agents/mcp-agent.d.mts +235 -0
  49. package/dist/agents/mcp-agent.d.mts.map +1 -0
  50. package/dist/agents/mcp-agent.mjs +303 -0
  51. package/dist/agents/mcp-agent.mjs.map +1 -0
  52. package/dist/agents/model.cjs +143 -0
  53. package/dist/agents/model.d.cts +257 -0
  54. package/dist/agents/model.d.cts.map +1 -0
  55. package/dist/agents/model.d.mts +257 -0
  56. package/dist/agents/model.d.mts.map +1 -0
  57. package/dist/agents/model.mjs +136 -0
  58. package/dist/agents/model.mjs.map +1 -0
  59. package/dist/agents/team-agent.cjs +342 -0
  60. package/dist/agents/team-agent.d.cts +390 -0
  61. package/dist/agents/team-agent.d.cts.map +1 -0
  62. package/dist/agents/team-agent.d.mts +390 -0
  63. package/dist/agents/team-agent.d.mts.map +1 -0
  64. package/dist/agents/team-agent.mjs +339 -0
  65. package/dist/agents/team-agent.mjs.map +1 -0
  66. package/dist/agents/transform-agent.cjs +77 -0
  67. package/dist/agents/transform-agent.d.cts +99 -0
  68. package/dist/agents/transform-agent.d.cts.map +1 -0
  69. package/dist/agents/transform-agent.d.mts +99 -0
  70. package/dist/agents/transform-agent.d.mts.map +1 -0
  71. package/dist/agents/transform-agent.mjs +76 -0
  72. package/dist/agents/transform-agent.mjs.map +1 -0
  73. package/dist/agents/types.cjs +30 -0
  74. package/dist/agents/types.d.cts +34 -0
  75. package/dist/agents/types.d.cts.map +1 -0
  76. package/dist/agents/types.d.mts +34 -0
  77. package/dist/agents/types.d.mts.map +1 -0
  78. package/dist/agents/types.mjs +25 -0
  79. package/dist/agents/types.mjs.map +1 -0
  80. package/dist/agents/user-agent.cjs +87 -0
  81. package/dist/agents/user-agent.d.cts +32 -0
  82. package/dist/agents/user-agent.d.cts.map +1 -0
  83. package/dist/agents/user-agent.d.mts +32 -0
  84. package/dist/agents/user-agent.d.mts.map +1 -0
  85. package/dist/agents/user-agent.mjs +88 -0
  86. package/dist/agents/user-agent.mjs.map +1 -0
  87. package/dist/agents/video-model.cjs +66 -0
  88. package/dist/agents/video-model.d.cts +286 -0
  89. package/dist/agents/video-model.d.cts.map +1 -0
  90. package/dist/agents/video-model.d.mts +286 -0
  91. package/dist/agents/video-model.d.mts.map +1 -0
  92. package/dist/agents/video-model.mjs +64 -0
  93. package/dist/agents/video-model.mjs.map +1 -0
  94. package/dist/aigne/aigne.cjs +235 -0
  95. package/dist/aigne/aigne.d.cts +340 -0
  96. package/dist/aigne/aigne.d.cts.map +1 -0
  97. package/dist/aigne/aigne.d.mts +340 -0
  98. package/dist/aigne/aigne.d.mts.map +1 -0
  99. package/dist/aigne/aigne.mjs +235 -0
  100. package/dist/aigne/aigne.mjs.map +1 -0
  101. package/dist/aigne/context.cjs +377 -0
  102. package/dist/aigne/context.d.cts +226 -0
  103. package/dist/aigne/context.d.cts.map +1 -0
  104. package/dist/aigne/context.d.mts +226 -0
  105. package/dist/aigne/context.d.mts.map +1 -0
  106. package/dist/aigne/context.mjs +376 -0
  107. package/dist/aigne/context.mjs.map +1 -0
  108. package/dist/aigne/index.cjs +4 -0
  109. package/dist/aigne/index.d.mts +5 -0
  110. package/dist/aigne/index.mjs +6 -0
  111. package/dist/aigne/message-queue.cjs +102 -0
  112. package/dist/aigne/message-queue.d.cts +52 -0
  113. package/dist/aigne/message-queue.d.cts.map +1 -0
  114. package/dist/aigne/message-queue.d.mts +52 -0
  115. package/dist/aigne/message-queue.d.mts.map +1 -0
  116. package/dist/aigne/message-queue.mjs +99 -0
  117. package/dist/aigne/message-queue.mjs.map +1 -0
  118. package/dist/aigne/type.d.cts +32 -0
  119. package/dist/aigne/type.d.cts.map +1 -0
  120. package/dist/aigne/type.d.mts +32 -0
  121. package/dist/aigne/type.d.mts.map +1 -0
  122. package/dist/aigne/usage.cjs +29 -0
  123. package/dist/aigne/usage.d.cts +32 -0
  124. package/dist/aigne/usage.d.cts.map +1 -0
  125. package/dist/aigne/usage.d.mts +32 -0
  126. package/dist/aigne/usage.d.mts.map +1 -0
  127. package/dist/aigne/usage.mjs +28 -0
  128. package/dist/aigne/usage.mjs.map +1 -0
  129. package/dist/index.cjs +142 -0
  130. package/dist/index.d.cts +29 -0
  131. package/dist/index.d.mts +31 -0
  132. package/dist/index.mjs +31 -0
  133. package/dist/loader/agent-js.cjs +23 -0
  134. package/dist/loader/agent-js.d.cts +9 -0
  135. package/dist/loader/agent-js.d.cts.map +1 -0
  136. package/dist/loader/agent-js.d.mts +10 -0
  137. package/dist/loader/agent-js.d.mts.map +1 -0
  138. package/dist/loader/agent-js.mjs +23 -0
  139. package/dist/loader/agent-js.mjs.map +1 -0
  140. package/dist/loader/agent-yaml.cjs +109 -0
  141. package/dist/loader/agent-yaml.d.cts +87 -0
  142. package/dist/loader/agent-yaml.d.cts.map +1 -0
  143. package/dist/loader/agent-yaml.d.mts +87 -0
  144. package/dist/loader/agent-yaml.d.mts.map +1 -0
  145. package/dist/loader/agent-yaml.mjs +106 -0
  146. package/dist/loader/agent-yaml.mjs.map +1 -0
  147. package/dist/loader/agents.cjs +19 -0
  148. package/dist/loader/agents.d.cts +9 -0
  149. package/dist/loader/agents.d.cts.map +1 -0
  150. package/dist/loader/agents.d.mts +9 -0
  151. package/dist/loader/agents.d.mts.map +1 -0
  152. package/dist/loader/agents.mjs +20 -0
  153. package/dist/loader/agents.mjs.map +1 -0
  154. package/dist/loader/error.cjs +6 -0
  155. package/dist/loader/error.d.cts +5 -0
  156. package/dist/loader/error.d.cts.map +1 -0
  157. package/dist/loader/error.d.mts +5 -0
  158. package/dist/loader/error.d.mts.map +1 -0
  159. package/dist/loader/error.mjs +6 -0
  160. package/dist/loader/error.mjs.map +1 -0
  161. package/dist/loader/function-agent.cjs +9 -0
  162. package/dist/loader/function-agent.d.cts +7 -0
  163. package/dist/loader/function-agent.d.cts.map +1 -0
  164. package/dist/loader/function-agent.d.mts +7 -0
  165. package/dist/loader/function-agent.d.mts.map +1 -0
  166. package/dist/loader/function-agent.mjs +9 -0
  167. package/dist/loader/function-agent.mjs.map +1 -0
  168. package/dist/loader/index.cjs +233 -0
  169. package/dist/loader/index.d.cts +255 -0
  170. package/dist/loader/index.d.cts.map +1 -0
  171. package/dist/loader/index.d.mts +255 -0
  172. package/dist/loader/index.d.mts.map +1 -0
  173. package/dist/loader/index.mjs +228 -0
  174. package/dist/loader/index.mjs.map +1 -0
  175. package/dist/loader/schema.cjs +135 -0
  176. package/dist/loader/schema.d.cts +177 -0
  177. package/dist/loader/schema.d.cts.map +1 -0
  178. package/dist/loader/schema.d.mts +177 -0
  179. package/dist/loader/schema.d.mts.map +1 -0
  180. package/dist/loader/schema.mjs +127 -0
  181. package/dist/loader/schema.mjs.map +1 -0
  182. package/dist/memory/index.cjs +3 -0
  183. package/dist/memory/index.d.mts +3 -0
  184. package/dist/memory/index.mjs +5 -0
  185. package/dist/memory/memory.cjs +134 -0
  186. package/dist/memory/memory.d.cts +103 -0
  187. package/dist/memory/memory.d.cts.map +1 -0
  188. package/dist/memory/memory.d.mts +103 -0
  189. package/dist/memory/memory.d.mts.map +1 -0
  190. package/dist/memory/memory.mjs +133 -0
  191. package/dist/memory/memory.mjs.map +1 -0
  192. package/dist/memory/recorder.cjs +61 -0
  193. package/dist/memory/recorder.d.cts +98 -0
  194. package/dist/memory/recorder.d.cts.map +1 -0
  195. package/dist/memory/recorder.d.mts +98 -0
  196. package/dist/memory/recorder.d.mts.map +1 -0
  197. package/dist/memory/recorder.mjs +59 -0
  198. package/dist/memory/recorder.mjs.map +1 -0
  199. package/dist/memory/retriever.cjs +60 -0
  200. package/dist/memory/retriever.d.cts +111 -0
  201. package/dist/memory/retriever.d.cts.map +1 -0
  202. package/dist/memory/retriever.d.mts +111 -0
  203. package/dist/memory/retriever.d.mts.map +1 -0
  204. package/dist/memory/retriever.mjs +58 -0
  205. package/dist/memory/retriever.mjs.map +1 -0
  206. package/dist/prompt/agent-session.cjs +700 -0
  207. package/dist/prompt/agent-session.d.cts +167 -0
  208. package/dist/prompt/agent-session.d.cts.map +1 -0
  209. package/dist/prompt/agent-session.d.mts +167 -0
  210. package/dist/prompt/agent-session.d.mts.map +1 -0
  211. package/dist/prompt/agent-session.mjs +700 -0
  212. package/dist/prompt/agent-session.mjs.map +1 -0
  213. package/dist/prompt/compact/compactor.cjs +50 -0
  214. package/dist/prompt/compact/compactor.mjs +50 -0
  215. package/dist/prompt/compact/compactor.mjs.map +1 -0
  216. package/dist/prompt/compact/session-memory-extractor.cjs +137 -0
  217. package/dist/prompt/compact/session-memory-extractor.mjs +137 -0
  218. package/dist/prompt/compact/session-memory-extractor.mjs.map +1 -0
  219. package/dist/prompt/compact/types.cjs +59 -0
  220. package/dist/prompt/compact/types.d.cts +341 -0
  221. package/dist/prompt/compact/types.d.cts.map +1 -0
  222. package/dist/prompt/compact/types.d.mts +341 -0
  223. package/dist/prompt/compact/types.d.mts.map +1 -0
  224. package/dist/prompt/compact/types.mjs +49 -0
  225. package/dist/prompt/compact/types.mjs.map +1 -0
  226. package/dist/prompt/compact/user-memory-extractor.cjs +118 -0
  227. package/dist/prompt/compact/user-memory-extractor.mjs +118 -0
  228. package/dist/prompt/compact/user-memory-extractor.mjs.map +1 -0
  229. package/dist/prompt/context/afs/history.cjs +30 -0
  230. package/dist/prompt/context/afs/history.mjs +30 -0
  231. package/dist/prompt/context/afs/history.mjs.map +1 -0
  232. package/dist/prompt/context/afs/index.cjs +60 -0
  233. package/dist/prompt/context/afs/index.mjs +61 -0
  234. package/dist/prompt/context/afs/index.mjs.map +1 -0
  235. package/dist/prompt/context/index.cjs +18 -0
  236. package/dist/prompt/context/index.mjs +19 -0
  237. package/dist/prompt/context/index.mjs.map +1 -0
  238. package/dist/prompt/filters/index.cjs +22 -0
  239. package/dist/prompt/filters/index.mjs +21 -0
  240. package/dist/prompt/filters/index.mjs.map +1 -0
  241. package/dist/prompt/prompt-builder.cjs +291 -0
  242. package/dist/prompt/prompt-builder.d.cts +57 -0
  243. package/dist/prompt/prompt-builder.d.cts.map +1 -0
  244. package/dist/prompt/prompt-builder.d.mts +57 -0
  245. package/dist/prompt/prompt-builder.d.mts.map +1 -0
  246. package/dist/prompt/prompt-builder.mjs +291 -0
  247. package/dist/prompt/prompt-builder.mjs.map +1 -0
  248. package/dist/prompt/prompts/afs-builtin-prompt.cjs +12 -0
  249. package/dist/prompt/prompts/afs-builtin-prompt.mjs +13 -0
  250. package/dist/prompt/prompts/afs-builtin-prompt.mjs.map +1 -0
  251. package/dist/prompt/prompts/memory-message-template.cjs +10 -0
  252. package/dist/prompt/prompts/memory-message-template.mjs +10 -0
  253. package/dist/prompt/prompts/memory-message-template.mjs.map +1 -0
  254. package/dist/prompt/prompts/structured-stream-instructions.cjs +30 -0
  255. package/dist/prompt/prompts/structured-stream-instructions.mjs +30 -0
  256. package/dist/prompt/prompts/structured-stream-instructions.mjs.map +1 -0
  257. package/dist/prompt/skills/afs/agent-skill/agent-skill.cjs +66 -0
  258. package/dist/prompt/skills/afs/agent-skill/agent-skill.mjs +66 -0
  259. package/dist/prompt/skills/afs/agent-skill/agent-skill.mjs.map +1 -0
  260. package/dist/prompt/skills/afs/agent-skill/skill-loader.cjs +42 -0
  261. package/dist/prompt/skills/afs/agent-skill/skill-loader.mjs +41 -0
  262. package/dist/prompt/skills/afs/agent-skill/skill-loader.mjs.map +1 -0
  263. package/dist/prompt/skills/afs/base.cjs +9 -0
  264. package/dist/prompt/skills/afs/base.mjs +10 -0
  265. package/dist/prompt/skills/afs/base.mjs.map +1 -0
  266. package/dist/prompt/skills/afs/delete.cjs +50 -0
  267. package/dist/prompt/skills/afs/delete.mjs +50 -0
  268. package/dist/prompt/skills/afs/delete.mjs.map +1 -0
  269. package/dist/prompt/skills/afs/edit.cjs +92 -0
  270. package/dist/prompt/skills/afs/edit.mjs +92 -0
  271. package/dist/prompt/skills/afs/edit.mjs.map +1 -0
  272. package/dist/prompt/skills/afs/exec.cjs +36 -0
  273. package/dist/prompt/skills/afs/exec.mjs +36 -0
  274. package/dist/prompt/skills/afs/exec.mjs.map +1 -0
  275. package/dist/prompt/skills/afs/index.cjs +28 -0
  276. package/dist/prompt/skills/afs/index.mjs +29 -0
  277. package/dist/prompt/skills/afs/index.mjs.map +1 -0
  278. package/dist/prompt/skills/afs/list.cjs +69 -0
  279. package/dist/prompt/skills/afs/list.mjs +69 -0
  280. package/dist/prompt/skills/afs/list.mjs.map +1 -0
  281. package/dist/prompt/skills/afs/read.cjs +86 -0
  282. package/dist/prompt/skills/afs/read.mjs +86 -0
  283. package/dist/prompt/skills/afs/read.mjs.map +1 -0
  284. package/dist/prompt/skills/afs/rename.cjs +53 -0
  285. package/dist/prompt/skills/afs/rename.mjs +53 -0
  286. package/dist/prompt/skills/afs/rename.mjs.map +1 -0
  287. package/dist/prompt/skills/afs/search.cjs +63 -0
  288. package/dist/prompt/skills/afs/search.mjs +63 -0
  289. package/dist/prompt/skills/afs/search.mjs.map +1 -0
  290. package/dist/prompt/skills/afs/write.cjs +51 -0
  291. package/dist/prompt/skills/afs/write.mjs +51 -0
  292. package/dist/prompt/skills/afs/write.mjs.map +1 -0
  293. package/dist/prompt/template.cjs +229 -0
  294. package/dist/prompt/template.d.cts +247 -0
  295. package/dist/prompt/template.d.cts.map +1 -0
  296. package/dist/prompt/template.d.mts +247 -0
  297. package/dist/prompt/template.d.mts.map +1 -0
  298. package/dist/prompt/template.mjs +219 -0
  299. package/dist/prompt/template.mjs.map +1 -0
  300. package/dist/utils/agent-utils.cjs +49 -0
  301. package/dist/utils/agent-utils.d.cts +22 -0
  302. package/dist/utils/agent-utils.d.cts.map +1 -0
  303. package/dist/utils/agent-utils.d.mts +22 -0
  304. package/dist/utils/agent-utils.d.mts.map +1 -0
  305. package/dist/utils/agent-utils.mjs +46 -0
  306. package/dist/utils/agent-utils.mjs.map +1 -0
  307. package/dist/utils/camelize.cjs +34 -0
  308. package/dist/utils/camelize.d.cts +9 -0
  309. package/dist/utils/camelize.d.cts.map +1 -0
  310. package/dist/utils/camelize.d.mts +9 -0
  311. package/dist/utils/camelize.d.mts.map +1 -0
  312. package/dist/utils/camelize.mjs +33 -0
  313. package/dist/utils/camelize.mjs.map +1 -0
  314. package/dist/utils/event-stream.cjs +136 -0
  315. package/dist/utils/event-stream.d.cts +20 -0
  316. package/dist/utils/event-stream.d.cts.map +1 -0
  317. package/dist/utils/event-stream.d.mts +20 -0
  318. package/dist/utils/event-stream.d.mts.map +1 -0
  319. package/dist/utils/event-stream.mjs +133 -0
  320. package/dist/utils/event-stream.mjs.map +1 -0
  321. package/dist/utils/fetch.cjs +32 -0
  322. package/dist/utils/fetch.d.cts +8 -0
  323. package/dist/utils/fetch.d.cts.map +1 -0
  324. package/dist/utils/fetch.d.mts +8 -0
  325. package/dist/utils/fetch.d.mts.map +1 -0
  326. package/dist/utils/fetch.mjs +32 -0
  327. package/dist/utils/fetch.mjs.map +1 -0
  328. package/dist/utils/json-schema.cjs +107 -0
  329. package/dist/utils/json-schema.d.cts +20 -0
  330. package/dist/utils/json-schema.d.cts.map +1 -0
  331. package/dist/utils/json-schema.d.mts +20 -0
  332. package/dist/utils/json-schema.d.mts.map +1 -0
  333. package/dist/utils/json-schema.mjs +102 -0
  334. package/dist/utils/json-schema.mjs.map +1 -0
  335. package/dist/utils/json-utils.cjs +46 -0
  336. package/dist/utils/json-utils.d.cts +28 -0
  337. package/dist/utils/json-utils.d.cts.map +1 -0
  338. package/dist/utils/json-utils.d.mts +28 -0
  339. package/dist/utils/json-utils.d.mts.map +1 -0
  340. package/dist/utils/json-utils.mjs +44 -0
  341. package/dist/utils/json-utils.mjs.map +1 -0
  342. package/dist/utils/logger.cjs +72 -0
  343. package/dist/utils/logger.d.cts +41 -0
  344. package/dist/utils/logger.d.cts.map +1 -0
  345. package/dist/utils/logger.d.mts +41 -0
  346. package/dist/utils/logger.d.mts.map +1 -0
  347. package/dist/utils/logger.mjs +68 -0
  348. package/dist/utils/logger.mjs.map +1 -0
  349. package/dist/utils/mcp-utils.cjs +53 -0
  350. package/dist/utils/mcp-utils.d.cts +10 -0
  351. package/dist/utils/mcp-utils.d.cts.map +1 -0
  352. package/dist/utils/mcp-utils.d.mts +10 -0
  353. package/dist/utils/mcp-utils.d.mts.map +1 -0
  354. package/dist/utils/mcp-utils.mjs +51 -0
  355. package/dist/utils/mcp-utils.mjs.map +1 -0
  356. package/dist/utils/model-utils.cjs +12 -0
  357. package/dist/utils/model-utils.d.cts +8 -0
  358. package/dist/utils/model-utils.d.cts.map +1 -0
  359. package/dist/utils/model-utils.d.mts +8 -0
  360. package/dist/utils/model-utils.d.mts.map +1 -0
  361. package/dist/utils/model-utils.mjs +12 -0
  362. package/dist/utils/model-utils.mjs.map +1 -0
  363. package/dist/utils/promise.cjs +17 -0
  364. package/dist/utils/promise.d.cts +10 -0
  365. package/dist/utils/promise.d.cts.map +1 -0
  366. package/dist/utils/promise.d.mts +10 -0
  367. package/dist/utils/promise.d.mts.map +1 -0
  368. package/dist/utils/promise.mjs +17 -0
  369. package/dist/utils/promise.mjs.map +1 -0
  370. package/dist/utils/prompts.cjs +19 -0
  371. package/dist/utils/prompts.d.cts +6 -0
  372. package/dist/utils/prompts.d.cts.map +1 -0
  373. package/dist/utils/prompts.d.mts +6 -0
  374. package/dist/utils/prompts.d.mts.map +1 -0
  375. package/dist/utils/prompts.mjs +18 -0
  376. package/dist/utils/prompts.mjs.map +1 -0
  377. package/dist/utils/queue.cjs +273 -0
  378. package/dist/utils/queue.d.cts +60 -0
  379. package/dist/utils/queue.d.cts.map +1 -0
  380. package/dist/utils/queue.d.mts +60 -0
  381. package/dist/utils/queue.d.mts.map +1 -0
  382. package/dist/utils/queue.mjs +271 -0
  383. package/dist/utils/queue.mjs.map +1 -0
  384. package/dist/utils/role-utils.cjs +40 -0
  385. package/dist/utils/role-utils.d.cts +32 -0
  386. package/dist/utils/role-utils.d.cts.map +1 -0
  387. package/dist/utils/role-utils.d.mts +32 -0
  388. package/dist/utils/role-utils.d.mts.map +1 -0
  389. package/dist/utils/role-utils.mjs +38 -0
  390. package/dist/utils/role-utils.mjs.map +1 -0
  391. package/dist/utils/stream-polyfill.cjs +37 -0
  392. package/dist/utils/stream-polyfill.d.cts +1 -0
  393. package/dist/utils/stream-polyfill.d.mts +1 -0
  394. package/dist/utils/stream-polyfill.mjs +38 -0
  395. package/dist/utils/stream-polyfill.mjs.map +1 -0
  396. package/dist/utils/stream-utils.cjs +187 -0
  397. package/dist/utils/stream-utils.d.cts +30 -0
  398. package/dist/utils/stream-utils.d.cts.map +1 -0
  399. package/dist/utils/stream-utils.d.mts +30 -0
  400. package/dist/utils/stream-utils.d.mts.map +1 -0
  401. package/dist/utils/stream-utils.mjs +174 -0
  402. package/dist/utils/stream-utils.mjs.map +1 -0
  403. package/dist/utils/structured-stream-extractor.cjs +63 -0
  404. package/dist/utils/structured-stream-extractor.d.cts +23 -0
  405. package/dist/utils/structured-stream-extractor.d.cts.map +1 -0
  406. package/dist/utils/structured-stream-extractor.d.mts +23 -0
  407. package/dist/utils/structured-stream-extractor.d.mts.map +1 -0
  408. package/dist/utils/structured-stream-extractor.mjs +64 -0
  409. package/dist/utils/structured-stream-extractor.mjs.map +1 -0
  410. package/dist/utils/test/agent-response.cjs +16 -0
  411. package/dist/utils/test/agent-response.d.cts +12 -0
  412. package/dist/utils/test/agent-response.d.cts.map +1 -0
  413. package/dist/utils/test/agent-response.d.mts +13 -0
  414. package/dist/utils/test/agent-response.d.mts.map +1 -0
  415. package/dist/utils/test/agent-response.mjs +17 -0
  416. package/dist/utils/test/agent-response.mjs.map +1 -0
  417. package/dist/utils/test/openai-like-utils.cjs +73 -0
  418. package/dist/utils/test/openai-like-utils.d.cts +13 -0
  419. package/dist/utils/test/openai-like-utils.d.cts.map +1 -0
  420. package/dist/utils/test/openai-like-utils.d.mts +14 -0
  421. package/dist/utils/test/openai-like-utils.d.mts.map +1 -0
  422. package/dist/utils/test/openai-like-utils.mjs +68 -0
  423. package/dist/utils/test/openai-like-utils.mjs.map +1 -0
  424. package/dist/utils/token-estimator.cjs +57 -0
  425. package/dist/utils/token-estimator.d.cts +13 -0
  426. package/dist/utils/token-estimator.d.cts.map +1 -0
  427. package/dist/utils/token-estimator.d.mts +13 -0
  428. package/dist/utils/token-estimator.d.mts.map +1 -0
  429. package/dist/utils/token-estimator.mjs +57 -0
  430. package/dist/utils/token-estimator.mjs.map +1 -0
  431. package/dist/utils/type-utils.cjs +159 -0
  432. package/dist/utils/type-utils.d.cts +32 -0
  433. package/dist/utils/type-utils.d.cts.map +1 -0
  434. package/dist/utils/type-utils.d.mts +32 -0
  435. package/dist/utils/type-utils.d.mts.map +1 -0
  436. package/dist/utils/type-utils.mjs +141 -0
  437. package/dist/utils/type-utils.mjs.map +1 -0
  438. package/dist/utils/typed-event-emitter.cjs +0 -0
  439. package/dist/utils/typed-event-emitter.d.cts +13 -0
  440. package/dist/utils/typed-event-emitter.d.cts.map +1 -0
  441. package/dist/utils/typed-event-emitter.d.mts +13 -0
  442. package/dist/utils/typed-event-emitter.d.mts.map +1 -0
  443. package/dist/utils/typed-event-emitter.mjs +1 -0
  444. package/package.json +143 -62
  445. package/CHANGELOG.md +0 -2584
  446. package/lib/cjs/agents/agent.d.ts +0 -961
  447. package/lib/cjs/agents/agent.js +0 -961
  448. package/lib/cjs/agents/ai-agent.d.ts +0 -395
  449. package/lib/cjs/agents/ai-agent.js +0 -572
  450. package/lib/cjs/agents/chat-model.d.ts +0 -672
  451. package/lib/cjs/agents/chat-model.js +0 -457
  452. package/lib/cjs/agents/guide-rail-agent.d.ts +0 -62
  453. package/lib/cjs/agents/guide-rail-agent.js +0 -14
  454. package/lib/cjs/agents/image-agent.d.ts +0 -38
  455. package/lib/cjs/agents/image-agent.js +0 -71
  456. package/lib/cjs/agents/image-model.d.ts +0 -270
  457. package/lib/cjs/agents/image-model.js +0 -91
  458. package/lib/cjs/agents/mcp-agent.d.ts +0 -231
  459. package/lib/cjs/agents/mcp-agent.js +0 -366
  460. package/lib/cjs/agents/model.d.ts +0 -252
  461. package/lib/cjs/agents/model.js +0 -180
  462. package/lib/cjs/agents/team-agent.d.ts +0 -382
  463. package/lib/cjs/agents/team-agent.js +0 -386
  464. package/lib/cjs/agents/transform-agent.d.ts +0 -94
  465. package/lib/cjs/agents/transform-agent.js +0 -80
  466. package/lib/cjs/agents/types.d.ts +0 -31
  467. package/lib/cjs/agents/types.js +0 -40
  468. package/lib/cjs/agents/user-agent.d.ts +0 -27
  469. package/lib/cjs/agents/user-agent.js +0 -90
  470. package/lib/cjs/agents/video-model.d.ts +0 -280
  471. package/lib/cjs/agents/video-model.js +0 -67
  472. package/lib/cjs/aigne/aigne.d.ts +0 -335
  473. package/lib/cjs/aigne/aigne.js +0 -248
  474. package/lib/cjs/aigne/context.d.ts +0 -220
  475. package/lib/cjs/aigne/context.js +0 -423
  476. package/lib/cjs/aigne/index.d.ts +0 -4
  477. package/lib/cjs/aigne/index.js +0 -20
  478. package/lib/cjs/aigne/message-queue.d.ts +0 -48
  479. package/lib/cjs/aigne/message-queue.js +0 -109
  480. package/lib/cjs/aigne/type.d.ts +0 -26
  481. package/lib/cjs/aigne/type.js +0 -2
  482. package/lib/cjs/aigne/usage.d.ts +0 -28
  483. package/lib/cjs/aigne/usage.js +0 -34
  484. package/lib/cjs/index.d.ts +0 -21
  485. package/lib/cjs/index.js +0 -37
  486. package/lib/cjs/loader/agent-js.d.ts +0 -2
  487. package/lib/cjs/loader/agent-js.js +0 -21
  488. package/lib/cjs/loader/agent-yaml.d.ts +0 -78
  489. package/lib/cjs/loader/agent-yaml.js +0 -120
  490. package/lib/cjs/loader/agents.d.ts +0 -4
  491. package/lib/cjs/loader/agents.js +0 -17
  492. package/lib/cjs/loader/error.d.ts +0 -2
  493. package/lib/cjs/loader/error.js +0 -6
  494. package/lib/cjs/loader/function-agent.d.ts +0 -2
  495. package/lib/cjs/loader/function-agent.js +0 -7
  496. package/lib/cjs/loader/index.d.ts +0 -247
  497. package/lib/cjs/loader/index.js +0 -266
  498. package/lib/cjs/loader/schema.d.ts +0 -167
  499. package/lib/cjs/loader/schema.js +0 -162
  500. package/lib/cjs/memory/index.d.ts +0 -3
  501. package/lib/cjs/memory/index.js +0 -19
  502. package/lib/cjs/memory/memory.d.ts +0 -93
  503. package/lib/cjs/memory/memory.js +0 -147
  504. package/lib/cjs/memory/recorder.d.ts +0 -93
  505. package/lib/cjs/memory/recorder.js +0 -63
  506. package/lib/cjs/memory/retriever.d.ts +0 -106
  507. package/lib/cjs/memory/retriever.js +0 -60
  508. package/lib/cjs/package.json +0 -3
  509. package/lib/cjs/prompt/agent-session.d.ts +0 -163
  510. package/lib/cjs/prompt/agent-session.js +0 -1008
  511. package/lib/cjs/prompt/compact/compactor.d.ts +0 -7
  512. package/lib/cjs/prompt/compact/compactor.js +0 -52
  513. package/lib/cjs/prompt/compact/session-memory-extractor.d.ts +0 -7
  514. package/lib/cjs/prompt/compact/session-memory-extractor.js +0 -143
  515. package/lib/cjs/prompt/compact/types.d.ts +0 -336
  516. package/lib/cjs/prompt/compact/types.js +0 -53
  517. package/lib/cjs/prompt/compact/user-memory-extractor.d.ts +0 -7
  518. package/lib/cjs/prompt/compact/user-memory-extractor.js +0 -124
  519. package/lib/cjs/prompt/context/afs/history.d.ts +0 -9
  520. package/lib/cjs/prompt/context/afs/history.js +0 -33
  521. package/lib/cjs/prompt/context/afs/index.d.ts +0 -20
  522. package/lib/cjs/prompt/context/afs/index.js +0 -54
  523. package/lib/cjs/prompt/context/index.d.ts +0 -31
  524. package/lib/cjs/prompt/context/index.js +0 -18
  525. package/lib/cjs/prompt/filters/index.d.ts +0 -2
  526. package/lib/cjs/prompt/filters/index.js +0 -51
  527. package/lib/cjs/prompt/prompt-builder.d.ts +0 -50
  528. package/lib/cjs/prompt/prompt-builder.js +0 -352
  529. package/lib/cjs/prompt/prompts/afs-builtin-prompt.d.ts +0 -4
  530. package/lib/cjs/prompt/prompts/afs-builtin-prompt.js +0 -36
  531. package/lib/cjs/prompt/prompts/memory-message-template.d.ts +0 -1
  532. package/lib/cjs/prompt/prompts/memory-message-template.js +0 -8
  533. package/lib/cjs/prompt/prompts/structured-stream-instructions.d.ts +0 -7
  534. package/lib/cjs/prompt/prompts/structured-stream-instructions.js +0 -27
  535. package/lib/cjs/prompt/skills/afs/agent-skill/agent-skill.d.ts +0 -19
  536. package/lib/cjs/prompt/skills/afs/agent-skill/agent-skill.js +0 -69
  537. package/lib/cjs/prompt/skills/afs/agent-skill/skill-loader.d.ts +0 -12
  538. package/lib/cjs/prompt/skills/afs/agent-skill/skill-loader.js +0 -50
  539. package/lib/cjs/prompt/skills/afs/base.d.ts +0 -4
  540. package/lib/cjs/prompt/skills/afs/base.js +0 -8
  541. package/lib/cjs/prompt/skills/afs/delete.d.ts +0 -19
  542. package/lib/cjs/prompt/skills/afs/delete.js +0 -54
  543. package/lib/cjs/prompt/skills/afs/edit.d.ts +0 -24
  544. package/lib/cjs/prompt/skills/afs/edit.js +0 -124
  545. package/lib/cjs/prompt/skills/afs/exec.d.ts +0 -16
  546. package/lib/cjs/prompt/skills/afs/exec.js +0 -43
  547. package/lib/cjs/prompt/skills/afs/index.d.ts +0 -3
  548. package/lib/cjs/prompt/skills/afs/index.js +0 -26
  549. package/lib/cjs/prompt/skills/afs/list.d.ts +0 -24
  550. package/lib/cjs/prompt/skills/afs/list.js +0 -81
  551. package/lib/cjs/prompt/skills/afs/read.d.ts +0 -28
  552. package/lib/cjs/prompt/skills/afs/read.js +0 -105
  553. package/lib/cjs/prompt/skills/afs/rename.d.ts +0 -21
  554. package/lib/cjs/prompt/skills/afs/rename.js +0 -59
  555. package/lib/cjs/prompt/skills/afs/search.d.ts +0 -24
  556. package/lib/cjs/prompt/skills/afs/search.js +0 -71
  557. package/lib/cjs/prompt/skills/afs/write.d.ts +0 -20
  558. package/lib/cjs/prompt/skills/afs/write.js +0 -59
  559. package/lib/cjs/prompt/template.d.ts +0 -243
  560. package/lib/cjs/prompt/template.js +0 -265
  561. package/lib/cjs/utils/agent-utils.d.ts +0 -13
  562. package/lib/cjs/utils/agent-utils.js +0 -60
  563. package/lib/cjs/utils/camelize.d.ts +0 -7
  564. package/lib/cjs/utils/camelize.js +0 -38
  565. package/lib/cjs/utils/event-stream.d.ts +0 -15
  566. package/lib/cjs/utils/event-stream.js +0 -158
  567. package/lib/cjs/utils/fetch.d.ts +0 -4
  568. package/lib/cjs/utils/fetch.js +0 -36
  569. package/lib/cjs/utils/json-schema.d.ts +0 -15
  570. package/lib/cjs/utils/json-schema.js +0 -123
  571. package/lib/cjs/utils/json-utils.d.ts +0 -24
  572. package/lib/cjs/utils/json-utils.js +0 -48
  573. package/lib/cjs/utils/logger.d.ts +0 -39
  574. package/lib/cjs/utils/logger.js +0 -81
  575. package/lib/cjs/utils/mcp-utils.d.ts +0 -5
  576. package/lib/cjs/utils/mcp-utils.js +0 -52
  577. package/lib/cjs/utils/model-utils.d.ts +0 -3
  578. package/lib/cjs/utils/model-utils.js +0 -10
  579. package/lib/cjs/utils/promise.d.ts +0 -6
  580. package/lib/cjs/utils/promise.js +0 -12
  581. package/lib/cjs/utils/prompts.d.ts +0 -2
  582. package/lib/cjs/utils/prompts.js +0 -22
  583. package/lib/cjs/utils/queue.d.ts +0 -57
  584. package/lib/cjs/utils/queue.js +0 -318
  585. package/lib/cjs/utils/role-utils.d.ts +0 -31
  586. package/lib/cjs/utils/role-utils.js +0 -37
  587. package/lib/cjs/utils/stream-polyfill.d.ts +0 -1
  588. package/lib/cjs/utils/stream-polyfill.js +0 -38
  589. package/lib/cjs/utils/stream-utils.d.ts +0 -26
  590. package/lib/cjs/utils/stream-utils.js +0 -235
  591. package/lib/cjs/utils/structured-stream-extractor.d.ts +0 -14
  592. package/lib/cjs/utils/structured-stream-extractor.js +0 -68
  593. package/lib/cjs/utils/token-estimator.d.ts +0 -9
  594. package/lib/cjs/utils/token-estimator.js +0 -66
  595. package/lib/cjs/utils/type-utils.d.ts +0 -31
  596. package/lib/cjs/utils/type-utils.js +0 -202
  597. package/lib/cjs/utils/typed-event-emitter.d.ts +0 -10
  598. package/lib/cjs/utils/typed-event-emitter.js +0 -2
  599. package/lib/dts/agents/agent.d.ts +0 -961
  600. package/lib/dts/agents/ai-agent.d.ts +0 -395
  601. package/lib/dts/agents/chat-model.d.ts +0 -672
  602. package/lib/dts/agents/guide-rail-agent.d.ts +0 -62
  603. package/lib/dts/agents/image-agent.d.ts +0 -38
  604. package/lib/dts/agents/image-model.d.ts +0 -270
  605. package/lib/dts/agents/mcp-agent.d.ts +0 -231
  606. package/lib/dts/agents/model.d.ts +0 -252
  607. package/lib/dts/agents/team-agent.d.ts +0 -382
  608. package/lib/dts/agents/transform-agent.d.ts +0 -94
  609. package/lib/dts/agents/types.d.ts +0 -31
  610. package/lib/dts/agents/user-agent.d.ts +0 -27
  611. package/lib/dts/agents/video-model.d.ts +0 -280
  612. package/lib/dts/aigne/aigne.d.ts +0 -335
  613. package/lib/dts/aigne/context.d.ts +0 -220
  614. package/lib/dts/aigne/index.d.ts +0 -4
  615. package/lib/dts/aigne/message-queue.d.ts +0 -48
  616. package/lib/dts/aigne/type.d.ts +0 -26
  617. package/lib/dts/aigne/usage.d.ts +0 -28
  618. package/lib/dts/index.d.ts +0 -21
  619. package/lib/dts/loader/agent-js.d.ts +0 -2
  620. package/lib/dts/loader/agent-yaml.d.ts +0 -78
  621. package/lib/dts/loader/agents.d.ts +0 -4
  622. package/lib/dts/loader/error.d.ts +0 -2
  623. package/lib/dts/loader/function-agent.d.ts +0 -2
  624. package/lib/dts/loader/index.d.ts +0 -247
  625. package/lib/dts/loader/schema.d.ts +0 -167
  626. package/lib/dts/memory/index.d.ts +0 -3
  627. package/lib/dts/memory/memory.d.ts +0 -93
  628. package/lib/dts/memory/recorder.d.ts +0 -93
  629. package/lib/dts/memory/retriever.d.ts +0 -106
  630. package/lib/dts/prompt/agent-session.d.ts +0 -163
  631. package/lib/dts/prompt/compact/compactor.d.ts +0 -7
  632. package/lib/dts/prompt/compact/session-memory-extractor.d.ts +0 -7
  633. package/lib/dts/prompt/compact/types.d.ts +0 -336
  634. package/lib/dts/prompt/compact/user-memory-extractor.d.ts +0 -7
  635. package/lib/dts/prompt/context/afs/history.d.ts +0 -9
  636. package/lib/dts/prompt/context/afs/index.d.ts +0 -20
  637. package/lib/dts/prompt/context/index.d.ts +0 -31
  638. package/lib/dts/prompt/filters/index.d.ts +0 -2
  639. package/lib/dts/prompt/prompt-builder.d.ts +0 -50
  640. package/lib/dts/prompt/prompts/afs-builtin-prompt.d.ts +0 -4
  641. package/lib/dts/prompt/prompts/memory-message-template.d.ts +0 -1
  642. package/lib/dts/prompt/prompts/structured-stream-instructions.d.ts +0 -7
  643. package/lib/dts/prompt/skills/afs/agent-skill/agent-skill.d.ts +0 -19
  644. package/lib/dts/prompt/skills/afs/agent-skill/skill-loader.d.ts +0 -12
  645. package/lib/dts/prompt/skills/afs/base.d.ts +0 -4
  646. package/lib/dts/prompt/skills/afs/delete.d.ts +0 -19
  647. package/lib/dts/prompt/skills/afs/edit.d.ts +0 -24
  648. package/lib/dts/prompt/skills/afs/exec.d.ts +0 -16
  649. package/lib/dts/prompt/skills/afs/index.d.ts +0 -3
  650. package/lib/dts/prompt/skills/afs/list.d.ts +0 -24
  651. package/lib/dts/prompt/skills/afs/read.d.ts +0 -28
  652. package/lib/dts/prompt/skills/afs/rename.d.ts +0 -21
  653. package/lib/dts/prompt/skills/afs/search.d.ts +0 -24
  654. package/lib/dts/prompt/skills/afs/write.d.ts +0 -20
  655. package/lib/dts/prompt/template.d.ts +0 -243
  656. package/lib/dts/utils/agent-utils.d.ts +0 -13
  657. package/lib/dts/utils/camelize.d.ts +0 -7
  658. package/lib/dts/utils/event-stream.d.ts +0 -15
  659. package/lib/dts/utils/fetch.d.ts +0 -4
  660. package/lib/dts/utils/json-schema.d.ts +0 -15
  661. package/lib/dts/utils/json-utils.d.ts +0 -24
  662. package/lib/dts/utils/logger.d.ts +0 -39
  663. package/lib/dts/utils/mcp-utils.d.ts +0 -5
  664. package/lib/dts/utils/model-utils.d.ts +0 -3
  665. package/lib/dts/utils/promise.d.ts +0 -6
  666. package/lib/dts/utils/prompts.d.ts +0 -2
  667. package/lib/dts/utils/queue.d.ts +0 -57
  668. package/lib/dts/utils/role-utils.d.ts +0 -31
  669. package/lib/dts/utils/stream-polyfill.d.ts +0 -1
  670. package/lib/dts/utils/stream-utils.d.ts +0 -26
  671. package/lib/dts/utils/structured-stream-extractor.d.ts +0 -14
  672. package/lib/dts/utils/token-estimator.d.ts +0 -9
  673. package/lib/dts/utils/type-utils.d.ts +0 -31
  674. package/lib/dts/utils/typed-event-emitter.d.ts +0 -10
  675. package/lib/esm/agents/agent.d.ts +0 -961
  676. package/lib/esm/agents/agent.js +0 -911
  677. package/lib/esm/agents/ai-agent.d.ts +0 -395
  678. package/lib/esm/agents/ai-agent.js +0 -535
  679. package/lib/esm/agents/chat-model.d.ts +0 -672
  680. package/lib/esm/agents/chat-model.js +0 -419
  681. package/lib/esm/agents/guide-rail-agent.d.ts +0 -62
  682. package/lib/esm/agents/guide-rail-agent.js +0 -11
  683. package/lib/esm/agents/image-agent.d.ts +0 -38
  684. package/lib/esm/agents/image-agent.js +0 -64
  685. package/lib/esm/agents/image-model.d.ts +0 -270
  686. package/lib/esm/agents/image-model.js +0 -87
  687. package/lib/esm/agents/mcp-agent.d.ts +0 -231
  688. package/lib/esm/agents/mcp-agent.js +0 -325
  689. package/lib/esm/agents/model.d.ts +0 -252
  690. package/lib/esm/agents/model.js +0 -143
  691. package/lib/esm/agents/team-agent.d.ts +0 -382
  692. package/lib/esm/agents/team-agent.js +0 -346
  693. package/lib/esm/agents/transform-agent.d.ts +0 -94
  694. package/lib/esm/agents/transform-agent.js +0 -73
  695. package/lib/esm/agents/types.d.ts +0 -31
  696. package/lib/esm/agents/types.js +0 -30
  697. package/lib/esm/agents/user-agent.d.ts +0 -27
  698. package/lib/esm/agents/user-agent.js +0 -86
  699. package/lib/esm/agents/video-model.d.ts +0 -280
  700. package/lib/esm/agents/video-model.js +0 -63
  701. package/lib/esm/aigne/aigne.d.ts +0 -335
  702. package/lib/esm/aigne/aigne.js +0 -244
  703. package/lib/esm/aigne/context.d.ts +0 -220
  704. package/lib/esm/aigne/context.js +0 -416
  705. package/lib/esm/aigne/index.d.ts +0 -4
  706. package/lib/esm/aigne/index.js +0 -4
  707. package/lib/esm/aigne/message-queue.d.ts +0 -48
  708. package/lib/esm/aigne/message-queue.js +0 -104
  709. package/lib/esm/aigne/type.d.ts +0 -26
  710. package/lib/esm/aigne/type.js +0 -1
  711. package/lib/esm/aigne/usage.d.ts +0 -28
  712. package/lib/esm/aigne/usage.js +0 -30
  713. package/lib/esm/index.d.ts +0 -21
  714. package/lib/esm/index.js +0 -21
  715. package/lib/esm/loader/agent-js.d.ts +0 -2
  716. package/lib/esm/loader/agent-js.js +0 -18
  717. package/lib/esm/loader/agent-yaml.d.ts +0 -78
  718. package/lib/esm/loader/agent-yaml.js +0 -113
  719. package/lib/esm/loader/agents.d.ts +0 -4
  720. package/lib/esm/loader/agents.js +0 -14
  721. package/lib/esm/loader/error.d.ts +0 -2
  722. package/lib/esm/loader/error.js +0 -2
  723. package/lib/esm/loader/function-agent.d.ts +0 -2
  724. package/lib/esm/loader/function-agent.js +0 -4
  725. package/lib/esm/loader/index.d.ts +0 -247
  726. package/lib/esm/loader/index.js +0 -258
  727. package/lib/esm/loader/schema.d.ts +0 -167
  728. package/lib/esm/loader/schema.js +0 -153
  729. package/lib/esm/memory/index.d.ts +0 -3
  730. package/lib/esm/memory/index.js +0 -3
  731. package/lib/esm/memory/memory.d.ts +0 -93
  732. package/lib/esm/memory/memory.js +0 -142
  733. package/lib/esm/memory/recorder.d.ts +0 -93
  734. package/lib/esm/memory/recorder.js +0 -59
  735. package/lib/esm/memory/retriever.d.ts +0 -106
  736. package/lib/esm/memory/retriever.js +0 -56
  737. package/lib/esm/package.json +0 -3
  738. package/lib/esm/prompt/agent-session.d.ts +0 -163
  739. package/lib/esm/prompt/agent-session.js +0 -968
  740. package/lib/esm/prompt/compact/compactor.d.ts +0 -7
  741. package/lib/esm/prompt/compact/compactor.js +0 -48
  742. package/lib/esm/prompt/compact/session-memory-extractor.d.ts +0 -7
  743. package/lib/esm/prompt/compact/session-memory-extractor.js +0 -139
  744. package/lib/esm/prompt/compact/types.d.ts +0 -336
  745. package/lib/esm/prompt/compact/types.js +0 -50
  746. package/lib/esm/prompt/compact/user-memory-extractor.d.ts +0 -7
  747. package/lib/esm/prompt/compact/user-memory-extractor.js +0 -120
  748. package/lib/esm/prompt/context/afs/history.d.ts +0 -9
  749. package/lib/esm/prompt/context/afs/history.js +0 -30
  750. package/lib/esm/prompt/context/afs/index.d.ts +0 -20
  751. package/lib/esm/prompt/context/afs/index.js +0 -51
  752. package/lib/esm/prompt/context/index.d.ts +0 -31
  753. package/lib/esm/prompt/context/index.js +0 -15
  754. package/lib/esm/prompt/filters/index.d.ts +0 -2
  755. package/lib/esm/prompt/filters/index.js +0 -15
  756. package/lib/esm/prompt/prompt-builder.d.ts +0 -50
  757. package/lib/esm/prompt/prompt-builder.js +0 -348
  758. package/lib/esm/prompt/prompts/afs-builtin-prompt.d.ts +0 -4
  759. package/lib/esm/prompt/prompts/afs-builtin-prompt.js +0 -32
  760. package/lib/esm/prompt/prompts/memory-message-template.d.ts +0 -1
  761. package/lib/esm/prompt/prompts/memory-message-template.js +0 -5
  762. package/lib/esm/prompt/prompts/structured-stream-instructions.d.ts +0 -7
  763. package/lib/esm/prompt/prompts/structured-stream-instructions.js +0 -24
  764. package/lib/esm/prompt/skills/afs/agent-skill/agent-skill.d.ts +0 -19
  765. package/lib/esm/prompt/skills/afs/agent-skill/agent-skill.js +0 -65
  766. package/lib/esm/prompt/skills/afs/agent-skill/skill-loader.d.ts +0 -12
  767. package/lib/esm/prompt/skills/afs/agent-skill/skill-loader.js +0 -43
  768. package/lib/esm/prompt/skills/afs/base.d.ts +0 -4
  769. package/lib/esm/prompt/skills/afs/base.js +0 -4
  770. package/lib/esm/prompt/skills/afs/delete.d.ts +0 -19
  771. package/lib/esm/prompt/skills/afs/delete.js +0 -50
  772. package/lib/esm/prompt/skills/afs/edit.d.ts +0 -24
  773. package/lib/esm/prompt/skills/afs/edit.js +0 -120
  774. package/lib/esm/prompt/skills/afs/exec.d.ts +0 -16
  775. package/lib/esm/prompt/skills/afs/exec.js +0 -39
  776. package/lib/esm/prompt/skills/afs/index.d.ts +0 -3
  777. package/lib/esm/prompt/skills/afs/index.js +0 -23
  778. package/lib/esm/prompt/skills/afs/list.d.ts +0 -24
  779. package/lib/esm/prompt/skills/afs/list.js +0 -77
  780. package/lib/esm/prompt/skills/afs/read.d.ts +0 -28
  781. package/lib/esm/prompt/skills/afs/read.js +0 -101
  782. package/lib/esm/prompt/skills/afs/rename.d.ts +0 -21
  783. package/lib/esm/prompt/skills/afs/rename.js +0 -55
  784. package/lib/esm/prompt/skills/afs/search.d.ts +0 -24
  785. package/lib/esm/prompt/skills/afs/search.js +0 -67
  786. package/lib/esm/prompt/skills/afs/write.d.ts +0 -20
  787. package/lib/esm/prompt/skills/afs/write.js +0 -55
  788. package/lib/esm/prompt/template.d.ts +0 -243
  789. package/lib/esm/prompt/template.js +0 -249
  790. package/lib/esm/utils/agent-utils.d.ts +0 -13
  791. package/lib/esm/utils/agent-utils.js +0 -54
  792. package/lib/esm/utils/camelize.d.ts +0 -7
  793. package/lib/esm/utils/camelize.js +0 -34
  794. package/lib/esm/utils/event-stream.d.ts +0 -15
  795. package/lib/esm/utils/event-stream.js +0 -151
  796. package/lib/esm/utils/fetch.d.ts +0 -4
  797. package/lib/esm/utils/fetch.js +0 -33
  798. package/lib/esm/utils/json-schema.d.ts +0 -15
  799. package/lib/esm/utils/json-schema.js +0 -114
  800. package/lib/esm/utils/json-utils.d.ts +0 -24
  801. package/lib/esm/utils/json-utils.js +0 -41
  802. package/lib/esm/utils/logger.d.ts +0 -39
  803. package/lib/esm/utils/logger.js +0 -73
  804. package/lib/esm/utils/mcp-utils.d.ts +0 -5
  805. package/lib/esm/utils/mcp-utils.js +0 -47
  806. package/lib/esm/utils/model-utils.d.ts +0 -3
  807. package/lib/esm/utils/model-utils.js +0 -7
  808. package/lib/esm/utils/promise.d.ts +0 -6
  809. package/lib/esm/utils/promise.js +0 -9
  810. package/lib/esm/utils/prompts.d.ts +0 -2
  811. package/lib/esm/utils/prompts.js +0 -18
  812. package/lib/esm/utils/queue.d.ts +0 -57
  813. package/lib/esm/utils/queue.js +0 -315
  814. package/lib/esm/utils/role-utils.d.ts +0 -31
  815. package/lib/esm/utils/role-utils.js +0 -33
  816. package/lib/esm/utils/stream-polyfill.d.ts +0 -1
  817. package/lib/esm/utils/stream-polyfill.js +0 -37
  818. package/lib/esm/utils/stream-utils.d.ts +0 -26
  819. package/lib/esm/utils/stream-utils.js +0 -217
  820. package/lib/esm/utils/structured-stream-extractor.d.ts +0 -14
  821. package/lib/esm/utils/structured-stream-extractor.js +0 -64
  822. package/lib/esm/utils/token-estimator.d.ts +0 -9
  823. package/lib/esm/utils/token-estimator.js +0 -63
  824. package/lib/esm/utils/type-utils.d.ts +0 -31
  825. package/lib/esm/utils/type-utils.js +0 -181
  826. package/lib/esm/utils/typed-event-emitter.d.ts +0 -10
  827. package/lib/esm/utils/typed-event-emitter.js +0 -1
@@ -0,0 +1,49 @@
1
+ //#region src/prompt/compact/types.ts
2
+ /**
3
+ * Default session mode
4
+ */
5
+ const DEFAULT_SESSION_MODE = "auto";
6
+ /**
7
+ * Default compaction mode
8
+ */
9
+ const DEFAULT_COMPACT_MODE = "auto";
10
+ /**
11
+ * Default maximum tokens before triggering compaction
12
+ */
13
+ const DEFAULT_MAX_TOKENS = 8e4;
14
+ /**
15
+ * Default ratio of maxTokens to reserve for keeping recent messages
16
+ */
17
+ const DEFAULT_KEEP_RECENT_RATIO = .5;
18
+ /**
19
+ * Default async mode for compaction
20
+ */
21
+ const DEFAULT_COMPACT_ASYNC = true;
22
+ /**
23
+ * Default ratio of maxTokens to allocate for user memory
24
+ */
25
+ const DEFAULT_MEMORY_RATIO = .04;
26
+ /**
27
+ * Default query limit for loading memory facts
28
+ */
29
+ const DEFAULT_MEMORY_QUERY_LIMIT = 200;
30
+ /**
31
+ * Default session memory mode
32
+ */
33
+ const DEFAULT_SESSION_MEMORY_MODE = "auto";
34
+ /**
35
+ * Default async mode for session memory extraction
36
+ */
37
+ const DEFAULT_SESSION_MEMORY_ASYNC = true;
38
+ /**
39
+ * Default user memory mode
40
+ */
41
+ const DEFAULT_USER_MEMORY_MODE = "auto";
42
+ /**
43
+ * Default async mode for user memory consolidation
44
+ */
45
+ const DEFAULT_USER_MEMORY_ASYNC = true;
46
+
47
+ //#endregion
48
+ export { DEFAULT_COMPACT_ASYNC, DEFAULT_COMPACT_MODE, DEFAULT_KEEP_RECENT_RATIO, DEFAULT_MAX_TOKENS, DEFAULT_MEMORY_QUERY_LIMIT, DEFAULT_MEMORY_RATIO, DEFAULT_SESSION_MEMORY_ASYNC, DEFAULT_SESSION_MEMORY_MODE, DEFAULT_SESSION_MODE, DEFAULT_USER_MEMORY_ASYNC, DEFAULT_USER_MEMORY_MODE };
49
+ //# sourceMappingURL=types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.mjs","names":[],"sources":["../../../src/prompt/compact/types.ts"],"sourcesContent":["import type { Agent, Message } from \"../../agents/agent.js\";\nimport type { ChatModelInputMessage } from \"../../agents/chat-model.js\";\n\n/**\n * Session mode type\n */\nexport type SessionMode = \"auto\" | \"disabled\";\n\n/**\n * Default session mode\n */\nexport const DEFAULT_SESSION_MODE: SessionMode = \"auto\";\n\n/**\n * Default compaction mode\n */\nexport const DEFAULT_COMPACT_MODE = \"auto\" as const;\n\n/**\n * Default maximum tokens before triggering compaction\n */\nexport const DEFAULT_MAX_TOKENS = 80000;\n\n/**\n * Default ratio of maxTokens to reserve for keeping recent messages\n */\nexport const DEFAULT_KEEP_RECENT_RATIO = 0.5;\n\n/**\n * Default async mode for compaction\n */\nexport const DEFAULT_COMPACT_ASYNC = true;\n\n/**\n * Content structure for history entries\n */\nexport interface EntryContent {\n input?: unknown;\n output?: unknown;\n messages?: ChatModelInputMessage[];\n}\n\n/**\n * Output structure from the compactor agent\n */\nexport interface CompactContent extends Message {\n summary: string;\n /**\n * Last Agent Skill content in the session\n * Preserved across compactions to maintain skill instructions\n */\n lastAgentSkill?: {\n content: string;\n };\n}\n\n/**\n * Input structure for the compactor agent\n */\nexport interface CompactorInput extends Message {\n previousSummary?: string[];\n messages: ChatModelInputMessage[];\n}\n\n/**\n * Type alias for a compactor agent\n */\nexport type Compactor = Agent<CompactorInput, CompactContent>;\n\n/**\n * Configuration for session compaction\n */\nexport interface CompactConfig {\n /**\n * Compaction mode\n * @default DEFAULT_COMPACT_MODE (\"auto\")\n */\n mode?: \"auto\" | \"disabled\";\n\n /**\n * Maximum tokens before triggering compaction\n * @default DEFAULT_MAX_TOKENS (80000)\n */\n maxTokens?: number;\n\n /**\n * Ratio of maxTokens to reserve for keeping recent messages (0-1)\n *\n * Defines what portion of maxTokens budget should be allocated for\n * preserving recent conversation history without compaction.\n *\n * @default 0.5 (50% of maxTokens)\n * @example 0.5 means if maxTokens=80000, keep up to 40000 tokens of recent messages\n */\n keepRecentRatio?: number;\n\n /**\n * Whether to perform compaction asynchronously\n * @default DEFAULT_COMPACT_ASYNC (true)\n */\n async?: boolean;\n\n /**\n * Agent that generates summaries from conversation entries\n * Input: { entries: EntryContent[] }\n * Output: { summary: string }\n */\n compactor?: Compactor;\n}\n\n// ============================================================================\n// User Memory Types\n// ============================================================================\n\n/**\n * Default ratio of maxTokens to allocate for user memory\n */\nexport const DEFAULT_MEMORY_RATIO = 0.04;\n\n/**\n * Default query limit for loading memory facts\n */\nexport const DEFAULT_MEMORY_QUERY_LIMIT = 200;\n\n/**\n * Content structure for a single memory fact\n *\n * Used by both session memory and user memory to store learned facts.\n * Each fact is stored as an individual AFSEntry with metadata at the AFSEntry level.\n *\n * Storage paths:\n * - Session Memory:\n * - List: /by-session/:sessionId/@metadata/memory\n * - Create: /by-session/:sessionId/@metadata/memory/new\n * - Read: /by-session/:sessionId/@metadata/memory/:memoryId\n * - User Memory:\n * - List: /by-user/:userId/@metadata/memory\n * - Create: /by-user/:userId/@metadata/memory/new\n * - Read: /by-user/:userId/@metadata/memory/:memoryId\n *\n * @example\n * AFSEntry<MemoryFact> {\n * id: \"fact-001\", // AFSEntry ID (auto-generated)\n * userId: \"user-001\",\n * agentId: \"assistant\", // which agent learned this fact\n * sessionId: \"session-123\", // which session it was learned from (if applicable)\n * createdAt: Date,\n * content: {\n * label: \"pref-package-manager\", // semantic label for this fact\n * fact: \"User prefers using pnpm\",\n * confidence: 0.9,\n * tags: [\"preference\", \"tooling\"]\n * }\n * }\n */\nexport interface MemoryFact {\n /**\n * Semantic label for this fact (short, human-readable)\n * Used for updates and deletions to uniquely identify facts\n * @example \"pref-package-manager\", \"skill-typescript\", \"proj-main-language\"\n */\n label: string;\n\n /**\n * The fact content (text description)\n */\n fact: string;\n\n /**\n * Confidence score (0-1)\n * Higher values indicate more certain facts\n * @default 1.0\n */\n confidence?: number;\n\n /**\n * Classification tags for the fact\n * @example ['preference', 'technical', 'project-specific']\n */\n tags?: string[];\n}\n\n/**\n * Input structure for the memory extractor agent\n */\nexport interface MemoryExtractorInput extends Message {\n /**\n * User memory facts (long-term, cross-session) to avoid duplication\n */\n existingUserFacts?: MemoryFact[];\n\n /**\n * Existing session memory facts (for context and deduplication)\n */\n existingFacts?: MemoryFact[];\n\n /**\n * Recent conversation messages to extract facts from\n */\n messages: ChatModelInputMessage[];\n}\n\n/**\n * Output structure from the memory extractor agent\n */\nexport interface MemoryExtractorOutput extends Message {\n /**\n * New or updated facts from the conversation\n * Only include facts that need to be added or updated\n * Do not include unchanged facts that already exist\n */\n newFacts: MemoryFact[];\n\n /**\n * Fact labels to remove from existing memory\n * Each string should match a label in existingFacts\n * @example [\"pref-package-manager\", \"skill-old-framework\"]\n */\n removeFacts?: string[];\n}\n\n/**\n * Type alias for a memory extractor agent\n */\nexport type MemoryExtractor = Agent<MemoryExtractorInput, MemoryExtractorOutput>;\n\n/**\n * Default session memory mode\n */\nexport const DEFAULT_SESSION_MEMORY_MODE = \"auto\" as const;\n\n/**\n * Default async mode for session memory extraction\n */\nexport const DEFAULT_SESSION_MEMORY_ASYNC = true;\n\n/**\n * Metadata for tracking session memory extraction progress\n *\n * This metadata is stored in each memory entry's metadata field.\n * When extracting new facts, the latestEntryId is recorded in the metadata\n * to track which history entries have been processed.\n */\nexport interface SessionMemoryMetadata {\n /**\n * ID of the last extracted history entry\n * Used to determine which entries still need processing\n */\n latestEntryId?: string;\n}\n\n// ============================================================================\n// User Memory Types\n// ============================================================================\n\n/**\n * Default user memory mode\n */\nexport const DEFAULT_USER_MEMORY_MODE = \"auto\" as const;\n\n/**\n * Default async mode for user memory consolidation\n */\nexport const DEFAULT_USER_MEMORY_ASYNC = true;\n\n/**\n * Input structure for the user memory extractor agent\n */\nexport interface UserMemoryExtractorInput extends Message {\n /**\n * Session memory facts from multiple sessions to consolidate\n */\n sessionFacts: MemoryFact[];\n\n /**\n * Existing user memory facts (for context and deduplication)\n */\n existingUserFacts?: MemoryFact[];\n}\n\n/**\n * Output structure from the user memory extractor agent\n */\nexport interface UserMemoryExtractorOutput extends Message {\n /**\n * New or updated facts for user memory\n * Only include facts that need to be added or updated\n * Do not include unchanged facts that already exist\n * Each label should be unique - these will replace old facts with same labels\n */\n newFacts: MemoryFact[];\n\n /**\n * Fact labels to remove from user memory\n * Each string should match a label in existingUserFacts\n */\n removeFacts?: string[];\n}\n\n/**\n * Type alias for a user memory extractor agent\n */\nexport type UserMemoryExtractor = Agent<UserMemoryExtractorInput, UserMemoryExtractorOutput>;\n\n/**\n * Configuration for user memory\n * User memory contains long-term facts consolidated from multiple sessions\n */\nexport interface UserMemoryConfig {\n /**\n * User memory mode\n * - \"auto\": Enable memory and auto-consolidate at appropriate times\n * - \"disabled\": Disable user memory completely\n * @default DEFAULT_USER_MEMORY_MODE (\"auto\")\n */\n mode?: \"auto\" | \"disabled\";\n\n /**\n * Ratio of maxTokens to allocate for user memory (0-1)\n *\n * Defines what portion of maxTokens budget should be allocated for\n * injecting user memory facts into the prompt.\n *\n * @default DEFAULT_MEMORY_RATIO (0.04 = 4% of maxTokens)\n * @example 0.04 means if maxTokens=80000, allocate 3200 tokens for memory\n */\n memoryRatio?: number;\n\n /**\n * Maximum number of fact entries to load from storage\n * @default DEFAULT_MEMORY_QUERY_LIMIT (200)\n */\n queryLimit?: number;\n\n /**\n * Whether to perform memory consolidation asynchronously\n * @default DEFAULT_USER_MEMORY_ASYNC (true)\n */\n async?: boolean;\n\n /**\n * Agent that extracts user memory facts from session memory\n * Input: { sessionFacts: MemoryFact[], existingUserFacts?: MemoryFact[] }\n * Output: { newFacts: MemoryFact[], removeFacts?: string[] }\n */\n extractor?: UserMemoryExtractor;\n}\n\n/**\n * Configuration for session memory\n * Session memory contains facts extracted from the current session's conversation\n */\nexport interface SessionMemoryConfig {\n /**\n * Session memory mode\n * - \"auto\": Enable memory and auto-update after each conversation turn\n * - \"disabled\": Disable memory completely\n * @default DEFAULT_SESSION_MEMORY_MODE (\"auto\")\n */\n mode?: \"auto\" | \"disabled\";\n\n /**\n * Ratio of maxTokens to allocate for session memory (0-1)\n *\n * Defines what portion of maxTokens budget should be allocated for\n * injecting session memory facts into the prompt.\n *\n * @default DEFAULT_MEMORY_RATIO (0.04 = 4% of maxTokens)\n * @example 0.04 means if maxTokens=80000, allocate 3200 tokens for memory\n */\n memoryRatio?: number;\n\n /**\n * Maximum number of fact entries to load from storage\n * @default DEFAULT_MEMORY_QUERY_LIMIT (200)\n */\n queryLimit?: number;\n\n /**\n * Whether to perform memory extraction asynchronously\n * @default DEFAULT_SESSION_MEMORY_ASYNC (true)\n */\n async?: boolean;\n\n /**\n * Agent that extracts facts from conversation messages\n * Input: { existingUserFacts?: MemoryFact[], existingFacts?: MemoryFact[], messages: ChatModelInputMessage[] }\n * Output: { newFacts: MemoryFact[], removeFacts?: string[] }\n */\n extractor?: MemoryExtractor;\n}\n"],"mappings":";;;;AAWA,MAAa,uBAAoC;;;;AAKjD,MAAa,uBAAuB;;;;AAKpC,MAAa,qBAAqB;;;;AAKlC,MAAa,4BAA4B;;;;AAKzC,MAAa,wBAAwB;;;;AAsFrC,MAAa,uBAAuB;;;;AAKpC,MAAa,6BAA6B;;;;AA2G1C,MAAa,8BAA8B;;;;AAK3C,MAAa,+BAA+B;;;;AAwB5C,MAAa,2BAA2B;;;;AAKxC,MAAa,4BAA4B"}
@@ -0,0 +1,118 @@
1
+ const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
+ const require_utils_type_utils = require('../../utils/type-utils.cjs');
3
+ const require_ai_agent = require('../../agents/ai-agent.cjs');
4
+ let zod = require("zod");
5
+
6
+ //#region src/prompt/compact/user-memory-extractor.ts
7
+ const EXTRACTOR_INSTRUCTIONS = `\
8
+ You are a user memory extractor. Your task is to extract long-term user memory facts from session memory that represent verified, persistent user characteristics.
9
+
10
+ ## Session Memory Facts (from current session)
11
+
12
+ \`\`\`yaml alt="session-facts"
13
+ {{ sessionFacts | yaml.stringify }}
14
+ \`\`\`
15
+
16
+ ## Existing User Memory Facts
17
+
18
+ \`\`\`yaml alt="existing-user-facts"
19
+ {{ existingUserFacts | yaml.stringify }}
20
+ \`\`\`
21
+
22
+ ## Guidelines
23
+
24
+ 1. **Extract session facts into long-term user memory**:
25
+ - Promote facts that represent lasting user characteristics (preferences, skills, working style)
26
+ - Filter out temporary or session-specific information
27
+ - Aggregate patterns observed across multiple sessions
28
+ - Verify consistency with existing user memory
29
+
30
+ 2. **User memory should focus on USER characteristics**:
31
+ - **Preferences**: Lasting tool/framework/language preferences the user likes to use
32
+ - **Skills**: Confirmed technical expertise and proficiency levels of the user
33
+ - **Working style**: User's communication preferences, workflow patterns, coding standards
34
+ - **Personal context**: Stable personal context (timezone, team structure, role, work hours)
35
+ - **Project basic info**: What projects the user is working on and their role in them
36
+ - Example: "User is building an AI Agent framework called aigne-framework"
37
+ - Example: "User is the tech lead on a React e-commerce project"
38
+ - DO NOT include project technical details, architecture, or implementation specifics
39
+
40
+ 3. **DO NOT include in user memory**:
41
+ - Session-specific tasks or temporary goals
42
+ - Bugs or issues being debugged in a specific session
43
+ - One-time decisions or experimental choices
44
+ - Unverified assumptions or single-instance observations
45
+ - **Project technical details**: architecture decisions, tech stack specifics, implementation details
46
+ - **Project problems**: current bugs, issues, technical debt, or temporary blockers
47
+ - Information about the codebase structure or specific files/modules
48
+
49
+ 4. **Output only changes (CRITICAL)**:
50
+ - Only output facts that need to be added or updated
51
+ - DO NOT output facts that already exist and don't need changes
52
+ - Each label in newFacts must be unique
53
+ - When a label already exists in user memory:
54
+ - Include it in newFacts ONLY if session provides new information to update it
55
+ - Omit it from newFacts if it doesn't need changes
56
+ - Use the same label format as session memory: "pref-*", "skill-*", "proj-*", "ctx-*"
57
+
58
+ 5. **When to output a fact in newFacts**:
59
+ - **New fact**: Extracting a brand new user characteristic not in existing user memory
60
+ - **Updated fact**: Session provides new information that enhances an existing fact
61
+ - **Refined fact**: Multiple sessions show patterns that refine existing facts
62
+ - DO NOT output if: The fact already exists and session doesn't add new information
63
+
64
+ 6. **When to remove facts** (add labels to removeFacts):
65
+ - Facts are proven to be outdated or incorrect
66
+ - User explicitly changed their approach permanently
67
+ - Facts are redundant with newer, better facts
68
+
69
+ 7. **Confidence scoring**:
70
+ - Higher confidence (0.8-1.0): Verified across multiple sessions or explicitly stated
71
+ - Medium confidence (0.5-0.7): Observed patterns but limited data
72
+ - Lower confidence (0.3-0.4): Tentative patterns, may need more verification
73
+ - Below 0.3: Don't extract into user memory yet
74
+
75
+ 8. **Extraction criteria**:
76
+ - Only extract facts that are clearly valuable long-term
77
+ - Prefer quality over quantity - fewer high-confidence facts are better
78
+ - When in doubt, wait for more sessions to verify the pattern
79
+
80
+ Output the extracted user memory facts and any facts to remove.`;
81
+ var AIUserMemoryExtractor = class extends require_ai_agent.AIAgent {
82
+ constructor(options) {
83
+ super({
84
+ name: "UserMemoryExtractor",
85
+ description: "Extracts long-term user memory facts from session memory",
86
+ inputSchema: zod.z.object({
87
+ sessionFacts: zod.z.array(zod.z.object({
88
+ label: zod.z.string(),
89
+ fact: zod.z.string(),
90
+ confidence: (0, zod.optional)(zod.z.number()),
91
+ tags: (0, zod.optional)(zod.z.array(zod.z.string()))
92
+ })).describe("Session memory facts to extract from"),
93
+ existingUserFacts: (0, zod.optional)(zod.z.array(zod.z.object({
94
+ label: zod.z.string(),
95
+ fact: zod.z.string(),
96
+ confidence: (0, zod.optional)(zod.z.number()),
97
+ tags: (0, zod.optional)(zod.z.array(zod.z.string()))
98
+ })).describe("Existing user memory facts for context and deduplication"))
99
+ }),
100
+ outputSchema: zod.z.object({
101
+ newFacts: zod.z.array(zod.z.object({
102
+ label: zod.z.string().describe("Short, semantic label for the fact (must be unique)"),
103
+ fact: zod.z.string().describe("The extracted fact content"),
104
+ confidence: (0, zod.optional)(zod.z.number().min(0).max(1).describe("Confidence score (0-1)")),
105
+ tags: (0, zod.optional)(zod.z.array(zod.z.string()).describe("Classification tags"))
106
+ })).describe("Facts to add or update in user memory. Only include facts that are new or need updates. Do not include unchanged facts."),
107
+ removeFacts: (0, zod.optional)(zod.z.array(zod.z.string()).describe("Labels of facts to remove from user memory"))
108
+ }),
109
+ instructions: EXTRACTOR_INSTRUCTIONS,
110
+ taskRenderMode: "hide",
111
+ ...require_utils_type_utils.omitBy(options ?? {}, (v) => require_utils_type_utils.isNil(v)),
112
+ session: { mode: "disabled" }
113
+ });
114
+ }
115
+ };
116
+
117
+ //#endregion
118
+ exports.AIUserMemoryExtractor = AIUserMemoryExtractor;
@@ -0,0 +1,118 @@
1
+ import { isNil, omitBy } from "../../utils/type-utils.mjs";
2
+ import { AIAgent } from "../../agents/ai-agent.mjs";
3
+ import { optional, z as z$1 } from "zod";
4
+
5
+ //#region src/prompt/compact/user-memory-extractor.ts
6
+ const EXTRACTOR_INSTRUCTIONS = `\
7
+ You are a user memory extractor. Your task is to extract long-term user memory facts from session memory that represent verified, persistent user characteristics.
8
+
9
+ ## Session Memory Facts (from current session)
10
+
11
+ \`\`\`yaml alt="session-facts"
12
+ {{ sessionFacts | yaml.stringify }}
13
+ \`\`\`
14
+
15
+ ## Existing User Memory Facts
16
+
17
+ \`\`\`yaml alt="existing-user-facts"
18
+ {{ existingUserFacts | yaml.stringify }}
19
+ \`\`\`
20
+
21
+ ## Guidelines
22
+
23
+ 1. **Extract session facts into long-term user memory**:
24
+ - Promote facts that represent lasting user characteristics (preferences, skills, working style)
25
+ - Filter out temporary or session-specific information
26
+ - Aggregate patterns observed across multiple sessions
27
+ - Verify consistency with existing user memory
28
+
29
+ 2. **User memory should focus on USER characteristics**:
30
+ - **Preferences**: Lasting tool/framework/language preferences the user likes to use
31
+ - **Skills**: Confirmed technical expertise and proficiency levels of the user
32
+ - **Working style**: User's communication preferences, workflow patterns, coding standards
33
+ - **Personal context**: Stable personal context (timezone, team structure, role, work hours)
34
+ - **Project basic info**: What projects the user is working on and their role in them
35
+ - Example: "User is building an AI Agent framework called aigne-framework"
36
+ - Example: "User is the tech lead on a React e-commerce project"
37
+ - DO NOT include project technical details, architecture, or implementation specifics
38
+
39
+ 3. **DO NOT include in user memory**:
40
+ - Session-specific tasks or temporary goals
41
+ - Bugs or issues being debugged in a specific session
42
+ - One-time decisions or experimental choices
43
+ - Unverified assumptions or single-instance observations
44
+ - **Project technical details**: architecture decisions, tech stack specifics, implementation details
45
+ - **Project problems**: current bugs, issues, technical debt, or temporary blockers
46
+ - Information about the codebase structure or specific files/modules
47
+
48
+ 4. **Output only changes (CRITICAL)**:
49
+ - Only output facts that need to be added or updated
50
+ - DO NOT output facts that already exist and don't need changes
51
+ - Each label in newFacts must be unique
52
+ - When a label already exists in user memory:
53
+ - Include it in newFacts ONLY if session provides new information to update it
54
+ - Omit it from newFacts if it doesn't need changes
55
+ - Use the same label format as session memory: "pref-*", "skill-*", "proj-*", "ctx-*"
56
+
57
+ 5. **When to output a fact in newFacts**:
58
+ - **New fact**: Extracting a brand new user characteristic not in existing user memory
59
+ - **Updated fact**: Session provides new information that enhances an existing fact
60
+ - **Refined fact**: Multiple sessions show patterns that refine existing facts
61
+ - DO NOT output if: The fact already exists and session doesn't add new information
62
+
63
+ 6. **When to remove facts** (add labels to removeFacts):
64
+ - Facts are proven to be outdated or incorrect
65
+ - User explicitly changed their approach permanently
66
+ - Facts are redundant with newer, better facts
67
+
68
+ 7. **Confidence scoring**:
69
+ - Higher confidence (0.8-1.0): Verified across multiple sessions or explicitly stated
70
+ - Medium confidence (0.5-0.7): Observed patterns but limited data
71
+ - Lower confidence (0.3-0.4): Tentative patterns, may need more verification
72
+ - Below 0.3: Don't extract into user memory yet
73
+
74
+ 8. **Extraction criteria**:
75
+ - Only extract facts that are clearly valuable long-term
76
+ - Prefer quality over quantity - fewer high-confidence facts are better
77
+ - When in doubt, wait for more sessions to verify the pattern
78
+
79
+ Output the extracted user memory facts and any facts to remove.`;
80
+ var AIUserMemoryExtractor = class extends AIAgent {
81
+ constructor(options) {
82
+ super({
83
+ name: "UserMemoryExtractor",
84
+ description: "Extracts long-term user memory facts from session memory",
85
+ inputSchema: z$1.object({
86
+ sessionFacts: z$1.array(z$1.object({
87
+ label: z$1.string(),
88
+ fact: z$1.string(),
89
+ confidence: optional(z$1.number()),
90
+ tags: optional(z$1.array(z$1.string()))
91
+ })).describe("Session memory facts to extract from"),
92
+ existingUserFacts: optional(z$1.array(z$1.object({
93
+ label: z$1.string(),
94
+ fact: z$1.string(),
95
+ confidence: optional(z$1.number()),
96
+ tags: optional(z$1.array(z$1.string()))
97
+ })).describe("Existing user memory facts for context and deduplication"))
98
+ }),
99
+ outputSchema: z$1.object({
100
+ newFacts: z$1.array(z$1.object({
101
+ label: z$1.string().describe("Short, semantic label for the fact (must be unique)"),
102
+ fact: z$1.string().describe("The extracted fact content"),
103
+ confidence: optional(z$1.number().min(0).max(1).describe("Confidence score (0-1)")),
104
+ tags: optional(z$1.array(z$1.string()).describe("Classification tags"))
105
+ })).describe("Facts to add or update in user memory. Only include facts that are new or need updates. Do not include unchanged facts."),
106
+ removeFacts: optional(z$1.array(z$1.string()).describe("Labels of facts to remove from user memory"))
107
+ }),
108
+ instructions: EXTRACTOR_INSTRUCTIONS,
109
+ taskRenderMode: "hide",
110
+ ...omitBy(options ?? {}, (v) => isNil(v)),
111
+ session: { mode: "disabled" }
112
+ });
113
+ }
114
+ };
115
+
116
+ //#endregion
117
+ export { AIUserMemoryExtractor };
118
+ //# sourceMappingURL=user-memory-extractor.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-memory-extractor.mjs","names":["z"],"sources":["../../../src/prompt/compact/user-memory-extractor.ts"],"sourcesContent":["import { optional, z } from \"zod\";\nimport { AIAgent, type AIAgentOptions } from \"../../agents/ai-agent.js\";\nimport { isNil, omitBy } from \"../../utils/type-utils.js\";\nimport type { UserMemoryExtractorInput, UserMemoryExtractorOutput } from \"./types.js\";\n\nconst EXTRACTOR_INSTRUCTIONS = `\\\nYou are a user memory extractor. Your task is to extract long-term user memory facts from session memory that represent verified, persistent user characteristics.\n\n## Session Memory Facts (from current session)\n\n${\"```\"}yaml alt=\"session-facts\"\n{{ sessionFacts | yaml.stringify }}\n${\"```\"}\n\n## Existing User Memory Facts\n\n${\"```\"}yaml alt=\"existing-user-facts\"\n{{ existingUserFacts | yaml.stringify }}\n${\"```\"}\n\n## Guidelines\n\n1. **Extract session facts into long-term user memory**:\n - Promote facts that represent lasting user characteristics (preferences, skills, working style)\n - Filter out temporary or session-specific information\n - Aggregate patterns observed across multiple sessions\n - Verify consistency with existing user memory\n\n2. **User memory should focus on USER characteristics**:\n - **Preferences**: Lasting tool/framework/language preferences the user likes to use\n - **Skills**: Confirmed technical expertise and proficiency levels of the user\n - **Working style**: User's communication preferences, workflow patterns, coding standards\n - **Personal context**: Stable personal context (timezone, team structure, role, work hours)\n - **Project basic info**: What projects the user is working on and their role in them\n - Example: \"User is building an AI Agent framework called aigne-framework\"\n - Example: \"User is the tech lead on a React e-commerce project\"\n - DO NOT include project technical details, architecture, or implementation specifics\n\n3. **DO NOT include in user memory**:\n - Session-specific tasks or temporary goals\n - Bugs or issues being debugged in a specific session\n - One-time decisions or experimental choices\n - Unverified assumptions or single-instance observations\n - **Project technical details**: architecture decisions, tech stack specifics, implementation details\n - **Project problems**: current bugs, issues, technical debt, or temporary blockers\n - Information about the codebase structure or specific files/modules\n\n4. **Output only changes (CRITICAL)**:\n - Only output facts that need to be added or updated\n - DO NOT output facts that already exist and don't need changes\n - Each label in newFacts must be unique\n - When a label already exists in user memory:\n - Include it in newFacts ONLY if session provides new information to update it\n - Omit it from newFacts if it doesn't need changes\n - Use the same label format as session memory: \"pref-*\", \"skill-*\", \"proj-*\", \"ctx-*\"\n\n5. **When to output a fact in newFacts**:\n - **New fact**: Extracting a brand new user characteristic not in existing user memory\n - **Updated fact**: Session provides new information that enhances an existing fact\n - **Refined fact**: Multiple sessions show patterns that refine existing facts\n - DO NOT output if: The fact already exists and session doesn't add new information\n\n6. **When to remove facts** (add labels to removeFacts):\n - Facts are proven to be outdated or incorrect\n - User explicitly changed their approach permanently\n - Facts are redundant with newer, better facts\n\n7. **Confidence scoring**:\n - Higher confidence (0.8-1.0): Verified across multiple sessions or explicitly stated\n - Medium confidence (0.5-0.7): Observed patterns but limited data\n - Lower confidence (0.3-0.4): Tentative patterns, may need more verification\n - Below 0.3: Don't extract into user memory yet\n\n8. **Extraction criteria**:\n - Only extract facts that are clearly valuable long-term\n - Prefer quality over quantity - fewer high-confidence facts are better\n - When in doubt, wait for more sessions to verify the pattern\n\nOutput the extracted user memory facts and any facts to remove.`;\n\nexport interface CreateUserMemoryExtractorOptions\n extends AIAgentOptions<UserMemoryExtractorInput, UserMemoryExtractorOutput> {}\n\nexport class AIUserMemoryExtractor extends AIAgent<\n UserMemoryExtractorInput,\n UserMemoryExtractorOutput\n> {\n constructor(options?: CreateUserMemoryExtractorOptions) {\n super({\n name: \"UserMemoryExtractor\",\n description: \"Extracts long-term user memory facts from session memory\",\n inputSchema: z.object({\n sessionFacts: z\n .array(\n z.object({\n label: z.string(),\n fact: z.string(),\n confidence: optional(z.number()),\n tags: optional(z.array(z.string())),\n }),\n )\n .describe(\"Session memory facts to extract from\"),\n existingUserFacts: optional(\n z\n .array(\n z.object({\n label: z.string(),\n fact: z.string(),\n confidence: optional(z.number()),\n tags: optional(z.array(z.string())),\n }),\n )\n .describe(\"Existing user memory facts for context and deduplication\"),\n ),\n }),\n outputSchema: z.object({\n newFacts: z\n .array(\n z.object({\n label: z.string().describe(\"Short, semantic label for the fact (must be unique)\"),\n fact: z.string().describe(\"The extracted fact content\"),\n confidence: optional(z.number().min(0).max(1).describe(\"Confidence score (0-1)\")),\n tags: optional(z.array(z.string()).describe(\"Classification tags\")),\n }),\n )\n .describe(\n \"Facts to add or update in user memory. Only include facts that are new or need updates. Do not include unchanged facts.\",\n ),\n removeFacts: optional(\n z.array(z.string()).describe(\"Labels of facts to remove from user memory\"),\n ),\n }),\n instructions: EXTRACTOR_INSTRUCTIONS,\n taskRenderMode: \"hide\",\n ...omitBy(options ?? {}, (v) => isNil(v)),\n session: {\n mode: \"disabled\",\n },\n });\n }\n}\n"],"mappings":";;;;;AAKA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8E/B,IAAa,wBAAb,cAA2C,QAGzC;CACA,YAAY,SAA4C;AACtD,QAAM;GACJ,MAAM;GACN,aAAa;GACb,aAAaA,IAAE,OAAO;IACpB,cAAcA,IACX,MACCA,IAAE,OAAO;KACP,OAAOA,IAAE,QAAQ;KACjB,MAAMA,IAAE,QAAQ;KAChB,YAAY,SAASA,IAAE,QAAQ,CAAC;KAChC,MAAM,SAASA,IAAE,MAAMA,IAAE,QAAQ,CAAC,CAAC;KACpC,CAAC,CACH,CACA,SAAS,uCAAuC;IACnD,mBAAmB,SACjBA,IACG,MACCA,IAAE,OAAO;KACP,OAAOA,IAAE,QAAQ;KACjB,MAAMA,IAAE,QAAQ;KAChB,YAAY,SAASA,IAAE,QAAQ,CAAC;KAChC,MAAM,SAASA,IAAE,MAAMA,IAAE,QAAQ,CAAC,CAAC;KACpC,CAAC,CACH,CACA,SAAS,2DAA2D,CACxE;IACF,CAAC;GACF,cAAcA,IAAE,OAAO;IACrB,UAAUA,IACP,MACCA,IAAE,OAAO;KACP,OAAOA,IAAE,QAAQ,CAAC,SAAS,sDAAsD;KACjF,MAAMA,IAAE,QAAQ,CAAC,SAAS,6BAA6B;KACvD,YAAY,SAASA,IAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,yBAAyB,CAAC;KACjF,MAAM,SAASA,IAAE,MAAMA,IAAE,QAAQ,CAAC,CAAC,SAAS,sBAAsB,CAAC;KACpE,CAAC,CACH,CACA,SACC,0HACD;IACH,aAAa,SACXA,IAAE,MAAMA,IAAE,QAAQ,CAAC,CAAC,SAAS,6CAA6C,CAC3E;IACF,CAAC;GACF,cAAc;GACd,gBAAgB;GAChB,GAAG,OAAO,WAAW,EAAE,GAAG,MAAM,MAAM,EAAE,CAAC;GACzC,SAAS,EACP,MAAM,YACP;GACF,CAAC"}
@@ -0,0 +1,30 @@
1
+ const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
+ const require_utils_type_utils = require('../../../utils/type-utils.cjs');
3
+ let _aigne_afs_history = require("@aigne/afs-history");
4
+
5
+ //#region src/prompt/context/afs/history.ts
6
+ async function getHistories({ filter, agent }) {
7
+ const afs = agent?.afs;
8
+ if (!afs) return [];
9
+ const historyModule = (await afs.listModules()).find((m) => m.module instanceof _aigne_afs_history.AFSHistory);
10
+ if (!historyModule) return [];
11
+ return (await afs.list(historyModule.path, {
12
+ filter,
13
+ limit: 10,
14
+ orderBy: [["createdAt", "desc"]]
15
+ })).data.reverse().map((i) => {
16
+ if (!i.content) return;
17
+ const { input, output } = i.content;
18
+ if (!input || !output) return;
19
+ return [{
20
+ role: "user",
21
+ content: input
22
+ }, {
23
+ role: "agent",
24
+ content: output
25
+ }];
26
+ }).filter(require_utils_type_utils.isNonNullable).flat();
27
+ }
28
+
29
+ //#endregion
30
+ exports.getHistories = getHistories;
@@ -0,0 +1,30 @@
1
+ import { isNonNullable } from "../../../utils/type-utils.mjs";
2
+ import { AFSHistory } from "@aigne/afs-history";
3
+
4
+ //#region src/prompt/context/afs/history.ts
5
+ async function getHistories({ filter, agent }) {
6
+ const afs = agent?.afs;
7
+ if (!afs) return [];
8
+ const historyModule = (await afs.listModules()).find((m) => m.module instanceof AFSHistory);
9
+ if (!historyModule) return [];
10
+ return (await afs.list(historyModule.path, {
11
+ filter,
12
+ limit: 10,
13
+ orderBy: [["createdAt", "desc"]]
14
+ })).data.reverse().map((i) => {
15
+ if (!i.content) return;
16
+ const { input, output } = i.content;
17
+ if (!input || !output) return;
18
+ return [{
19
+ role: "user",
20
+ content: input
21
+ }, {
22
+ role: "agent",
23
+ content: output
24
+ }];
25
+ }).filter(isNonNullable).flat();
26
+ }
27
+
28
+ //#endregion
29
+ export { getHistories };
30
+ //# sourceMappingURL=history.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.mjs","names":[],"sources":["../../../../src/prompt/context/afs/history.ts"],"sourcesContent":["import type { AFSEntry, AFSListOptions } from \"@aigne/afs\";\nimport { AFSHistory } from \"@aigne/afs-history\";\nimport type { Agent } from \"../../../agents/agent.js\";\nimport { isNonNullable } from \"../../../utils/type-utils.js\";\n\nexport async function getHistories({\n filter,\n agent,\n}: {\n filter: AFSListOptions[\"filter\"];\n agent: Agent;\n}): Promise<{ role: \"user\" | \"agent\"; content: unknown }[]> {\n const afs = agent?.afs;\n if (!afs) return [];\n\n const historyModule = (await afs.listModules()).find((m) => m.module instanceof AFSHistory);\n if (!historyModule) return [];\n\n const history: AFSEntry[] = (\n await afs.list(historyModule.path, {\n filter,\n limit: 10,\n orderBy: [[\"createdAt\", \"desc\"]],\n })\n ).data;\n\n return history\n .reverse()\n .map((i) => {\n if (!i.content) return;\n\n const { input, output } = i.content;\n if (!input || !output) return;\n\n return [\n { role: \"user\" as const, content: input },\n { role: \"agent\" as const, content: output },\n ];\n })\n .filter(isNonNullable)\n .flat();\n}\n"],"mappings":";;;;AAKA,eAAsB,aAAa,EACjC,QACA,SAI0D;CAC1D,MAAM,MAAM,OAAO;AACnB,KAAI,CAAC,IAAK,QAAO,EAAE;CAEnB,MAAM,iBAAiB,MAAM,IAAI,aAAa,EAAE,MAAM,MAAM,EAAE,kBAAkB,WAAW;AAC3F,KAAI,CAAC,cAAe,QAAO,EAAE;AAU7B,SAPE,MAAM,IAAI,KAAK,cAAc,MAAM;EACjC;EACA,OAAO;EACP,SAAS,CAAC,CAAC,aAAa,OAAO,CAAC;EACjC,CAAC,EACF,KAGC,SAAS,CACT,KAAK,MAAM;AACV,MAAI,CAAC,EAAE,QAAS;EAEhB,MAAM,EAAE,OAAO,WAAW,EAAE;AAC5B,MAAI,CAAC,SAAS,CAAC,OAAQ;AAEvB,SAAO,CACL;GAAE,MAAM;GAAiB,SAAS;GAAO,EACzC;GAAE,MAAM;GAAkB,SAAS;GAAQ,CAC5C;GACD,CACD,OAAO,cAAc,CACrB,MAAM"}
@@ -0,0 +1,60 @@
1
+ const require_utils_type_utils = require('../../../utils/type-utils.cjs');
2
+ const require_afs_builtin_prompt = require('../../prompts/afs-builtin-prompt.cjs');
3
+ const require_index = require('../../skills/afs/index.cjs');
4
+ const require_history = require('./history.cjs');
5
+
6
+ //#region src/prompt/context/afs/index.ts
7
+ function createAFSContext(agent, context) {
8
+ const afs = agent?.afs;
9
+ return {
10
+ get enabled() {
11
+ return !!afs;
12
+ },
13
+ description: require_afs_builtin_prompt.AFS_DESCRIPTION_PROMPT_TEMPLATE,
14
+ get modules() {
15
+ return afs?.listModules().then((list) => list.map((i) => require_utils_type_utils.pick(i, [
16
+ "name",
17
+ "path",
18
+ "description"
19
+ ])));
20
+ },
21
+ get histories() {
22
+ if (!agent) return Promise.resolve([]);
23
+ return require_history.getHistories({
24
+ agent,
25
+ filter: {
26
+ agentId: agent.name,
27
+ userId: context?.userContext.userId,
28
+ sessionId: context?.userContext.sessionId
29
+ }
30
+ });
31
+ },
32
+ get skills() {
33
+ const afs$1 = agent?.afs;
34
+ if (!afs$1) return [];
35
+ return require_index.getAFSSkills(afs$1).then((skills) => skills.map((s) => require_utils_type_utils.pick(s, ["name", "description"])));
36
+ },
37
+ async list(path, options) {
38
+ if (!afs) throw new Error("AFS is not configured for this agent.");
39
+ return (await afs.list(path, {
40
+ ...options,
41
+ context,
42
+ format: options?.format || "simple-list"
43
+ })).data;
44
+ },
45
+ async read(path) {
46
+ if (!afs) throw new Error("AFS is not configured for this agent.");
47
+ return (await afs.read(path)).data;
48
+ },
49
+ async search(path, query, options = {}) {
50
+ if (!afs) throw new Error("AFS is not configured for this agent.");
51
+ return (await afs.search(path, query, {
52
+ ...options,
53
+ context
54
+ })).data;
55
+ }
56
+ };
57
+ }
58
+
59
+ //#endregion
60
+ exports.createAFSContext = createAFSContext;
@@ -0,0 +1,61 @@
1
+ import { pick } from "../../../utils/type-utils.mjs";
2
+ import { AFS_DESCRIPTION_PROMPT_TEMPLATE } from "../../prompts/afs-builtin-prompt.mjs";
3
+ import { getAFSSkills } from "../../skills/afs/index.mjs";
4
+ import { getHistories } from "./history.mjs";
5
+
6
+ //#region src/prompt/context/afs/index.ts
7
+ function createAFSContext(agent, context) {
8
+ const afs = agent?.afs;
9
+ return {
10
+ get enabled() {
11
+ return !!afs;
12
+ },
13
+ description: AFS_DESCRIPTION_PROMPT_TEMPLATE,
14
+ get modules() {
15
+ return afs?.listModules().then((list) => list.map((i) => pick(i, [
16
+ "name",
17
+ "path",
18
+ "description"
19
+ ])));
20
+ },
21
+ get histories() {
22
+ if (!agent) return Promise.resolve([]);
23
+ return getHistories({
24
+ agent,
25
+ filter: {
26
+ agentId: agent.name,
27
+ userId: context?.userContext.userId,
28
+ sessionId: context?.userContext.sessionId
29
+ }
30
+ });
31
+ },
32
+ get skills() {
33
+ const afs$1 = agent?.afs;
34
+ if (!afs$1) return [];
35
+ return getAFSSkills(afs$1).then((skills) => skills.map((s) => pick(s, ["name", "description"])));
36
+ },
37
+ async list(path, options) {
38
+ if (!afs) throw new Error("AFS is not configured for this agent.");
39
+ return (await afs.list(path, {
40
+ ...options,
41
+ context,
42
+ format: options?.format || "simple-list"
43
+ })).data;
44
+ },
45
+ async read(path) {
46
+ if (!afs) throw new Error("AFS is not configured for this agent.");
47
+ return (await afs.read(path)).data;
48
+ },
49
+ async search(path, query, options = {}) {
50
+ if (!afs) throw new Error("AFS is not configured for this agent.");
51
+ return (await afs.search(path, query, {
52
+ ...options,
53
+ context
54
+ })).data;
55
+ }
56
+ };
57
+ }
58
+
59
+ //#endregion
60
+ export { createAFSContext };
61
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["afs"],"sources":["../../../../src/prompt/context/afs/index.ts"],"sourcesContent":["import type { AFSRootListOptions, AFSRootSearchOptions } from \"@aigne/afs\";\nimport type { Agent, AgentInvokeOptions } from \"../../../agents/agent.js\";\nimport { pick } from \"../../../utils/type-utils.js\";\nimport { AFS_DESCRIPTION_PROMPT_TEMPLATE } from \"../../prompts/afs-builtin-prompt.js\";\nimport { getAFSSkills } from \"../../skills/afs/index.js\";\nimport { getHistories } from \"./history.js\";\n\nexport function createAFSContext(agent?: Agent<any, any>, context?: AgentInvokeOptions[\"context\"]) {\n const afs = agent?.afs;\n\n return {\n get enabled() {\n return !!afs;\n },\n description: AFS_DESCRIPTION_PROMPT_TEMPLATE,\n get modules() {\n return afs\n ?.listModules()\n .then((list) => list.map((i) => pick(i, [\"name\", \"path\", \"description\"])));\n },\n get histories(): Promise<{ role: \"user\" | \"agent\"; content: unknown }[]> {\n if (!agent) return Promise.resolve([]);\n return getHistories({\n agent,\n filter: {\n agentId: agent.name,\n userId: context?.userContext.userId,\n sessionId: context?.userContext.sessionId,\n },\n });\n },\n get skills() {\n const afs = agent?.afs;\n if (!afs) return [];\n return getAFSSkills(afs).then((skills) =>\n skills.map((s) => pick(s, [\"name\", \"description\"])),\n );\n },\n async list(path: string, options?: AFSRootListOptions) {\n if (!afs) throw new Error(\"AFS is not configured for this agent.\");\n return (\n await afs.list(path, { ...options, context, format: options?.format || \"simple-list\" })\n ).data;\n },\n async read(path: string) {\n if (!afs) throw new Error(\"AFS is not configured for this agent.\");\n return (await afs.read(path)).data;\n },\n async search(path: string, query: string, options: AFSRootSearchOptions = {}) {\n if (!afs) throw new Error(\"AFS is not configured for this agent.\");\n return (await afs.search(path, query, { ...options, context })).data;\n },\n };\n}\n"],"mappings":";;;;;;AAOA,SAAgB,iBAAiB,OAAyB,SAAyC;CACjG,MAAM,MAAM,OAAO;AAEnB,QAAO;EACL,IAAI,UAAU;AACZ,UAAO,CAAC,CAAC;;EAEX,aAAa;EACb,IAAI,UAAU;AACZ,UAAO,KACH,aAAa,CACd,MAAM,SAAS,KAAK,KAAK,MAAM,KAAK,GAAG;IAAC;IAAQ;IAAQ;IAAc,CAAC,CAAC,CAAC;;EAE9E,IAAI,YAAqE;AACvE,OAAI,CAAC,MAAO,QAAO,QAAQ,QAAQ,EAAE,CAAC;AACtC,UAAO,aAAa;IAClB;IACA,QAAQ;KACN,SAAS,MAAM;KACf,QAAQ,SAAS,YAAY;KAC7B,WAAW,SAAS,YAAY;KACjC;IACF,CAAC;;EAEJ,IAAI,SAAS;GACX,MAAMA,QAAM,OAAO;AACnB,OAAI,CAACA,MAAK,QAAO,EAAE;AACnB,UAAO,aAAaA,MAAI,CAAC,MAAM,WAC7B,OAAO,KAAK,MAAM,KAAK,GAAG,CAAC,QAAQ,cAAc,CAAC,CAAC,CACpD;;EAEH,MAAM,KAAK,MAAc,SAA8B;AACrD,OAAI,CAAC,IAAK,OAAM,IAAI,MAAM,wCAAwC;AAClE,WACE,MAAM,IAAI,KAAK,MAAM;IAAE,GAAG;IAAS;IAAS,QAAQ,SAAS,UAAU;IAAe,CAAC,EACvF;;EAEJ,MAAM,KAAK,MAAc;AACvB,OAAI,CAAC,IAAK,OAAM,IAAI,MAAM,wCAAwC;AAClE,WAAQ,MAAM,IAAI,KAAK,KAAK,EAAE;;EAEhC,MAAM,OAAO,MAAc,OAAe,UAAgC,EAAE,EAAE;AAC5E,OAAI,CAAC,IAAK,OAAM,IAAI,MAAM,wCAAwC;AAClE,WAAQ,MAAM,IAAI,OAAO,MAAM,OAAO;IAAE,GAAG;IAAS;IAAS,CAAC,EAAE;;EAEnE"}
@@ -0,0 +1,18 @@
1
+ const require_utils_type_utils = require('../../utils/type-utils.cjs');
2
+ const require_index = require('./afs/index.cjs');
3
+
4
+ //#region src/prompt/context/index.ts
5
+ function createPromptBuilderContext(options) {
6
+ return {
7
+ userContext: options.context?.userContext,
8
+ ...options.context?.userContext,
9
+ ...options.input,
10
+ $afs: require_index.createAFSContext(options.agent, options.context),
11
+ $agent: { get skills() {
12
+ return options.agent?.skills.map((s) => require_utils_type_utils.pick(s, ["name", "description"]));
13
+ } }
14
+ };
15
+ }
16
+
17
+ //#endregion
18
+ exports.createPromptBuilderContext = createPromptBuilderContext;
@@ -0,0 +1,19 @@
1
+ import { pick } from "../../utils/type-utils.mjs";
2
+ import { createAFSContext } from "./afs/index.mjs";
3
+
4
+ //#region src/prompt/context/index.ts
5
+ function createPromptBuilderContext(options) {
6
+ return {
7
+ userContext: options.context?.userContext,
8
+ ...options.context?.userContext,
9
+ ...options.input,
10
+ $afs: createAFSContext(options.agent, options.context),
11
+ $agent: { get skills() {
12
+ return options.agent?.skills.map((s) => pick(s, ["name", "description"]));
13
+ } }
14
+ };
15
+ }
16
+
17
+ //#endregion
18
+ export { createPromptBuilderContext };
19
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/prompt/context/index.ts"],"sourcesContent":["import { pick } from \"../../utils/type-utils.js\";\nimport type { PromptBuildOptions } from \"../prompt-builder.js\";\nimport { createAFSContext } from \"./afs/index.js\";\n\nexport function createPromptBuilderContext(options: PromptBuildOptions) {\n return {\n userContext: options.context?.userContext,\n ...options.context?.userContext,\n ...options.input,\n $afs: createAFSContext(options.agent, options.context),\n $agent: {\n get skills() {\n return options.agent?.skills.map((s) => pick(s, [\"name\", \"description\"]));\n },\n },\n };\n}\n"],"mappings":";;;;AAIA,SAAgB,2BAA2B,SAA6B;AACtE,QAAO;EACL,aAAa,QAAQ,SAAS;EAC9B,GAAG,QAAQ,SAAS;EACpB,GAAG,QAAQ;EACX,MAAM,iBAAiB,QAAQ,OAAO,QAAQ,QAAQ;EACtD,QAAQ,EACN,IAAI,SAAS;AACX,UAAO,QAAQ,OAAO,OAAO,KAAK,MAAM,KAAK,GAAG,CAAC,QAAQ,cAAc,CAAC,CAAC;KAE5E;EACF"}
@@ -0,0 +1,22 @@
1
+ const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
+ let yaml = require("yaml");
3
+ let _zenoaihq_tson = require("@zenoaihq/tson");
4
+ _zenoaihq_tson = require_rolldown_runtime.__toESM(_zenoaihq_tson);
5
+
6
+ //#region src/prompt/filters/index.ts
7
+ function setupFilters(env) {
8
+ env.addFilter("yaml.stringify", async (obj, cb) => {
9
+ cb(null, (0, yaml.stringify)(await obj));
10
+ }, true);
11
+ env.addFilter("json.stringify", async (obj, ...args) => {
12
+ const jsonArgs = args.slice(0, -1);
13
+ const cb = args[args.length - 1];
14
+ cb(null, JSON.stringify(await obj, ...jsonArgs));
15
+ }, true);
16
+ env.addFilter("tson.stringify", async (obj, cb) => {
17
+ cb(null, _zenoaihq_tson.dumps(await obj));
18
+ }, true);
19
+ }
20
+
21
+ //#endregion
22
+ exports.setupFilters = setupFilters;
@@ -0,0 +1,21 @@
1
+ import { stringify } from "yaml";
2
+ import * as tson from "@zenoaihq/tson";
3
+
4
+ //#region src/prompt/filters/index.ts
5
+ function setupFilters(env) {
6
+ env.addFilter("yaml.stringify", async (obj, cb) => {
7
+ cb(null, stringify(await obj));
8
+ }, true);
9
+ env.addFilter("json.stringify", async (obj, ...args) => {
10
+ const jsonArgs = args.slice(0, -1);
11
+ const cb = args[args.length - 1];
12
+ cb(null, JSON.stringify(await obj, ...jsonArgs));
13
+ }, true);
14
+ env.addFilter("tson.stringify", async (obj, cb) => {
15
+ cb(null, tson.dumps(await obj));
16
+ }, true);
17
+ }
18
+
19
+ //#endregion
20
+ export { setupFilters };
21
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/prompt/filters/index.ts"],"sourcesContent":["import * as tson from \"@zenoaihq/tson\";\nimport type { Environment } from \"nunjucks\";\nimport { stringify } from \"yaml\";\n\ntype Callback = (err: Error | null, result: any) => void;\n\nexport function setupFilters(env: Environment) {\n env.addFilter(\n \"yaml.stringify\",\n async (obj: unknown, cb: Callback) => {\n cb(null, stringify(await obj));\n },\n true,\n );\n\n env.addFilter(\n \"json.stringify\",\n async (obj: unknown, ...args: [...any[], Callback]) => {\n const jsonArgs = args.slice(0, -1);\n const cb = args[args.length - 1] as Callback;\n cb(null, JSON.stringify(await obj, ...jsonArgs));\n },\n true,\n );\n\n env.addFilter(\n \"tson.stringify\",\n async (obj: any, cb: Callback) => {\n cb(null, tson.dumps(await obj));\n },\n true,\n );\n}\n"],"mappings":";;;;AAMA,SAAgB,aAAa,KAAkB;AAC7C,KAAI,UACF,kBACA,OAAO,KAAc,OAAiB;AACpC,KAAG,MAAM,UAAU,MAAM,IAAI,CAAC;IAEhC,KACD;AAED,KAAI,UACF,kBACA,OAAO,KAAc,GAAG,SAA+B;EACrD,MAAM,WAAW,KAAK,MAAM,GAAG,GAAG;EAClC,MAAM,KAAK,KAAK,KAAK,SAAS;AAC9B,KAAG,MAAM,KAAK,UAAU,MAAM,KAAK,GAAG,SAAS,CAAC;IAElD,KACD;AAED,KAAI,UACF,kBACA,OAAO,KAAU,OAAiB;AAChC,KAAG,MAAM,KAAK,MAAM,MAAM,IAAI,CAAC;IAEjC,KACD"}