@zhin.js/agent 0.1.29 → 0.1.31

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 (428) hide show
  1. package/README.md +48 -23
  2. package/lib/agent-prompt/resolver.d.ts.map +1 -1
  3. package/lib/agent-prompt/resolver.js +0 -1
  4. package/lib/agent-prompt/resolver.js.map +1 -1
  5. package/lib/assistant/config.d.ts +67 -0
  6. package/lib/assistant/config.d.ts.map +1 -0
  7. package/lib/assistant/config.js +47 -0
  8. package/lib/assistant/config.js.map +1 -0
  9. package/lib/assistant/domains/home-assistant.d.ts +37 -0
  10. package/lib/assistant/domains/home-assistant.d.ts.map +1 -0
  11. package/lib/assistant/domains/home-assistant.js +113 -0
  12. package/lib/assistant/domains/home-assistant.js.map +1 -0
  13. package/lib/assistant/event-ingress.d.ts +28 -0
  14. package/lib/assistant/event-ingress.d.ts.map +1 -0
  15. package/lib/assistant/event-ingress.js +132 -0
  16. package/lib/assistant/event-ingress.js.map +1 -0
  17. package/lib/assistant/event-types.d.ts +28 -0
  18. package/lib/assistant/event-types.d.ts.map +1 -0
  19. package/lib/assistant/event-types.js +2 -0
  20. package/lib/assistant/event-types.js.map +1 -0
  21. package/lib/assistant/home-config.d.ts +36 -0
  22. package/lib/assistant/home-config.d.ts.map +1 -0
  23. package/lib/assistant/home-config.js +21 -0
  24. package/lib/assistant/home-config.js.map +1 -0
  25. package/lib/assistant/home-mcp-bridge.d.ts +12 -0
  26. package/lib/assistant/home-mcp-bridge.d.ts.map +1 -0
  27. package/lib/assistant/home-mcp-bridge.js +26 -0
  28. package/lib/assistant/home-mcp-bridge.js.map +1 -0
  29. package/lib/assistant/home-policy.d.ts +16 -0
  30. package/lib/assistant/home-policy.d.ts.map +1 -0
  31. package/lib/assistant/home-policy.js +46 -0
  32. package/lib/assistant/home-policy.js.map +1 -0
  33. package/lib/assistant/home-tools.d.ts +15 -0
  34. package/lib/assistant/home-tools.d.ts.map +1 -0
  35. package/lib/assistant/home-tools.js +141 -0
  36. package/lib/assistant/home-tools.js.map +1 -0
  37. package/lib/assistant/index.d.ts +31 -0
  38. package/lib/assistant/index.d.ts.map +1 -0
  39. package/lib/assistant/index.js +18 -0
  40. package/lib/assistant/index.js.map +1 -0
  41. package/lib/assistant/job-engine.d.ts +40 -0
  42. package/lib/assistant/job-engine.d.ts.map +1 -0
  43. package/lib/assistant/job-engine.js +155 -0
  44. package/lib/assistant/job-engine.js.map +1 -0
  45. package/lib/assistant/job-scheduler.d.ts +6 -0
  46. package/lib/assistant/job-scheduler.d.ts.map +1 -0
  47. package/lib/assistant/job-scheduler.js +59 -0
  48. package/lib/assistant/job-scheduler.js.map +1 -0
  49. package/lib/assistant/job-store.d.ts +55 -0
  50. package/lib/assistant/job-store.d.ts.map +1 -0
  51. package/lib/assistant/job-store.js +280 -0
  52. package/lib/assistant/job-store.js.map +1 -0
  53. package/lib/assistant/job-worker.d.ts +20 -0
  54. package/lib/assistant/job-worker.d.ts.map +1 -0
  55. package/lib/assistant/job-worker.js +73 -0
  56. package/lib/assistant/job-worker.js.map +1 -0
  57. package/lib/assistant/legacy-convert.d.ts +48 -0
  58. package/lib/assistant/legacy-convert.d.ts.map +1 -0
  59. package/lib/assistant/legacy-convert.js +108 -0
  60. package/lib/assistant/legacy-convert.js.map +1 -0
  61. package/lib/assistant/notification-router.d.ts +34 -0
  62. package/lib/assistant/notification-router.d.ts.map +1 -0
  63. package/lib/assistant/notification-router.js +96 -0
  64. package/lib/assistant/notification-router.js.map +1 -0
  65. package/lib/assistant/profile-loader.d.ts +29 -0
  66. package/lib/assistant/profile-loader.d.ts.map +1 -0
  67. package/lib/assistant/profile-loader.js +168 -0
  68. package/lib/assistant/profile-loader.js.map +1 -0
  69. package/lib/assistant/profile-types.d.ts +56 -0
  70. package/lib/assistant/profile-types.d.ts.map +1 -0
  71. package/lib/assistant/profile-types.js +9 -0
  72. package/lib/assistant/profile-types.js.map +1 -0
  73. package/lib/assistant/runtime-registry.d.ts +20 -0
  74. package/lib/assistant/runtime-registry.d.ts.map +1 -0
  75. package/lib/assistant/runtime-registry.js +19 -0
  76. package/lib/assistant/runtime-registry.js.map +1 -0
  77. package/lib/assistant/types.d.ts +75 -0
  78. package/lib/assistant/types.d.ts.map +1 -0
  79. package/lib/assistant/types.js +6 -0
  80. package/lib/assistant/types.js.map +1 -0
  81. package/lib/bootstrap.d.ts +1 -5
  82. package/lib/bootstrap.d.ts.map +1 -1
  83. package/lib/bootstrap.js +1 -34
  84. package/lib/bootstrap.js.map +1 -1
  85. package/lib/builtin/analyze-media-tool.d.ts +13 -0
  86. package/lib/builtin/analyze-media-tool.d.ts.map +1 -0
  87. package/lib/builtin/analyze-media-tool.js +100 -0
  88. package/lib/builtin/analyze-media-tool.js.map +1 -0
  89. package/lib/builtin/ask-user-tool.d.ts +1 -1
  90. package/lib/builtin/ask-user-tool.d.ts.map +1 -1
  91. package/lib/builtin/ask-user-tool.js +1 -1
  92. package/lib/builtin/ask-user-tool.js.map +1 -1
  93. package/lib/builtin/edit-file-tool.d.ts.map +1 -1
  94. package/lib/builtin/edit-file-tool.js +5 -1
  95. package/lib/builtin/edit-file-tool.js.map +1 -1
  96. package/lib/builtin/generate-image-tool.d.ts +21 -0
  97. package/lib/builtin/generate-image-tool.d.ts.map +1 -0
  98. package/lib/builtin/generate-image-tool.js +138 -0
  99. package/lib/builtin/generate-image-tool.js.map +1 -0
  100. package/lib/builtin/read-file-tool.d.ts +1 -1
  101. package/lib/builtin/read-file-tool.d.ts.map +1 -1
  102. package/lib/builtin/read-file-tool.js +2 -7
  103. package/lib/builtin/read-file-tool.js.map +1 -1
  104. package/lib/builtin/run-deferred-task-tool.d.ts +1 -1
  105. package/lib/builtin/run-deferred-task-tool.d.ts.map +1 -1
  106. package/lib/builtin/run-deferred-task-tool.js +1 -1
  107. package/lib/builtin/run-deferred-task-tool.js.map +1 -1
  108. package/lib/builtin/spawn-task-tool.d.ts +1 -1
  109. package/lib/builtin/spawn-task-tool.d.ts.map +1 -1
  110. package/lib/builtin/spawn-task-tool.js +25 -4
  111. package/lib/builtin/spawn-task-tool.js.map +1 -1
  112. package/lib/builtin/write-file-tool.d.ts.map +1 -1
  113. package/lib/builtin/write-file-tool.js +6 -1
  114. package/lib/builtin/write-file-tool.js.map +1 -1
  115. package/lib/builtin-tools.d.ts.map +1 -1
  116. package/lib/builtin-tools.js +2 -0
  117. package/lib/builtin-tools.js.map +1 -1
  118. package/lib/config/agent-binding-registry.d.ts +14 -0
  119. package/lib/config/agent-binding-registry.d.ts.map +1 -0
  120. package/lib/config/agent-binding-registry.js +30 -0
  121. package/lib/config/agent-binding-registry.js.map +1 -0
  122. package/lib/config/agent-bindings.d.ts +4 -0
  123. package/lib/config/agent-bindings.d.ts.map +1 -0
  124. package/lib/config/agent-bindings.js +16 -0
  125. package/lib/config/agent-bindings.js.map +1 -0
  126. package/lib/config/normalize-ai-config.d.ts +15 -0
  127. package/lib/config/normalize-ai-config.d.ts.map +1 -0
  128. package/lib/config/normalize-ai-config.js +72 -0
  129. package/lib/config/normalize-ai-config.js.map +1 -0
  130. package/lib/config/provider-instance.d.ts +5 -0
  131. package/lib/config/provider-instance.d.ts.map +1 -0
  132. package/lib/config/provider-instance.js +65 -0
  133. package/lib/config/provider-instance.js.map +1 -0
  134. package/lib/config/types.d.ts +36 -0
  135. package/lib/config/types.d.ts.map +1 -0
  136. package/lib/config/types.js +2 -0
  137. package/lib/config/types.js.map +1 -0
  138. package/lib/config/validate-ai-config.d.ts +3 -0
  139. package/lib/config/validate-ai-config.d.ts.map +1 -0
  140. package/lib/config/validate-ai-config.js +40 -0
  141. package/lib/config/validate-ai-config.js.map +1 -0
  142. package/lib/cron-engine.d.ts +20 -18
  143. package/lib/cron-engine.d.ts.map +1 -1
  144. package/lib/cron-engine.js +42 -18
  145. package/lib/cron-engine.js.map +1 -1
  146. package/lib/deferred-worker-runner.d.ts +2 -0
  147. package/lib/deferred-worker-runner.d.ts.map +1 -1
  148. package/lib/deferred-worker-runner.js +17 -35
  149. package/lib/deferred-worker-runner.js.map +1 -1
  150. package/lib/discovery/agents.d.ts +2 -0
  151. package/lib/discovery/agents.d.ts.map +1 -1
  152. package/lib/discovery/agents.js +5 -0
  153. package/lib/discovery/agents.js.map +1 -1
  154. package/lib/hooks.d.ts +0 -1
  155. package/lib/hooks.d.ts.map +1 -1
  156. package/lib/hooks.js.map +1 -1
  157. package/lib/index.d.ts +14 -5
  158. package/lib/index.d.ts.map +1 -1
  159. package/lib/index.js +8 -3
  160. package/lib/index.js.map +1 -1
  161. package/lib/init/activate-ai-database-storage.d.ts +1 -1
  162. package/lib/init/activate-ai-database-storage.d.ts.map +1 -1
  163. package/lib/init/activate-ai-database-storage.js +16 -13
  164. package/lib/init/activate-ai-database-storage.js.map +1 -1
  165. package/lib/init/create-zhin-agent.d.ts.map +1 -1
  166. package/lib/init/create-zhin-agent.js +180 -69
  167. package/lib/init/create-zhin-agent.js.map +1 -1
  168. package/lib/init/introspection-commands-format.d.ts +40 -0
  169. package/lib/init/introspection-commands-format.d.ts.map +1 -0
  170. package/lib/init/introspection-commands-format.js +93 -0
  171. package/lib/init/introspection-commands-format.js.map +1 -0
  172. package/lib/init/message-media.d.ts.map +1 -1
  173. package/lib/init/message-media.js +12 -0
  174. package/lib/init/message-media.js.map +1 -1
  175. package/lib/init/output-renderer.d.ts +4 -0
  176. package/lib/init/output-renderer.d.ts.map +1 -1
  177. package/lib/init/output-renderer.js +6 -0
  178. package/lib/init/output-renderer.js.map +1 -1
  179. package/lib/init/register-ai-trigger.d.ts.map +1 -1
  180. package/lib/init/register-ai-trigger.js +155 -8
  181. package/lib/init/register-ai-trigger.js.map +1 -1
  182. package/lib/init/register-builtin-tools.d.ts.map +1 -1
  183. package/lib/init/register-builtin-tools.js +13 -3
  184. package/lib/init/register-builtin-tools.js.map +1 -1
  185. package/lib/init/register-db-models.d.ts.map +1 -1
  186. package/lib/init/register-db-models.js +7 -8
  187. package/lib/init/register-db-models.js.map +1 -1
  188. package/lib/init/register-db-upgrade.d.ts +1 -1
  189. package/lib/init/register-db-upgrade.js +2 -2
  190. package/lib/init/register-db-upgrade.js.map +1 -1
  191. package/lib/init/register-home-tools.d.ts +2 -0
  192. package/lib/init/register-home-tools.d.ts.map +1 -0
  193. package/lib/init/register-home-tools.js +51 -0
  194. package/lib/init/register-home-tools.js.map +1 -0
  195. package/lib/init/register-introspection-commands.d.ts +3 -0
  196. package/lib/init/register-introspection-commands.d.ts.map +1 -0
  197. package/lib/init/register-introspection-commands.js +97 -0
  198. package/lib/init/register-introspection-commands.js.map +1 -0
  199. package/lib/init/register-management-tools.d.ts +1 -1
  200. package/lib/init/register-management-tools.js +3 -3
  201. package/lib/init/register-management-tools.js.map +1 -1
  202. package/lib/init/register-mcp-memory-default.d.ts.map +1 -1
  203. package/lib/init/register-mcp-memory-default.js +1 -0
  204. package/lib/init/register-mcp-memory-default.js.map +1 -1
  205. package/lib/init/register-owner-approve-commands.d.ts.map +1 -1
  206. package/lib/init/register-owner-approve-commands.js +103 -111
  207. package/lib/init/register-owner-approve-commands.js.map +1 -1
  208. package/lib/init/register-typing-indicator.d.ts.map +1 -1
  209. package/lib/init/register-typing-indicator.js +111 -115
  210. package/lib/init/register-typing-indicator.js.map +1 -1
  211. package/lib/init.d.ts.map +1 -1
  212. package/lib/init.js +4 -0
  213. package/lib/init.js.map +1 -1
  214. package/lib/media/constants.d.ts +3 -0
  215. package/lib/media/constants.d.ts.map +1 -0
  216. package/lib/media/constants.js +3 -0
  217. package/lib/media/constants.js.map +1 -0
  218. package/lib/media/deliver-subagent-result.d.ts +15 -0
  219. package/lib/media/deliver-subagent-result.d.ts.map +1 -0
  220. package/lib/media/deliver-subagent-result.js +35 -0
  221. package/lib/media/deliver-subagent-result.js.map +1 -0
  222. package/lib/media/index.d.ts +14 -0
  223. package/lib/media/index.d.ts.map +1 -0
  224. package/lib/media/index.js +14 -0
  225. package/lib/media/index.js.map +1 -0
  226. package/lib/media/media-capabilities.d.ts +3 -0
  227. package/lib/media/media-capabilities.d.ts.map +1 -0
  228. package/lib/media/media-capabilities.js +15 -0
  229. package/lib/media/media-capabilities.js.map +1 -0
  230. package/lib/media/media-normalize.d.ts +10 -0
  231. package/lib/media/media-normalize.d.ts.map +1 -0
  232. package/lib/media/media-normalize.js +108 -0
  233. package/lib/media/media-normalize.js.map +1 -0
  234. package/lib/media/media-publisher.d.ts +8 -0
  235. package/lib/media/media-publisher.d.ts.map +1 -0
  236. package/lib/media/media-publisher.js +254 -0
  237. package/lib/media/media-publisher.js.map +1 -0
  238. package/lib/media/media-router.d.ts +7 -0
  239. package/lib/media/media-router.d.ts.map +1 -0
  240. package/lib/media/media-router.js +59 -0
  241. package/lib/media/media-router.js.map +1 -0
  242. package/lib/media/media-spool.d.ts +3 -0
  243. package/lib/media/media-spool.d.ts.map +1 -0
  244. package/lib/media/media-spool.js +25 -0
  245. package/lib/media/media-spool.js.map +1 -0
  246. package/lib/media/media-tool-bridge.d.ts +9 -0
  247. package/lib/media/media-tool-bridge.d.ts.map +1 -0
  248. package/lib/media/media-tool-bridge.js +61 -0
  249. package/lib/media/media-tool-bridge.js.map +1 -0
  250. package/lib/media/media-types.d.ts +50 -0
  251. package/lib/media/media-types.d.ts.map +1 -0
  252. package/lib/media/media-types.js +18 -0
  253. package/lib/media/media-types.js.map +1 -0
  254. package/lib/media/resolve-config.d.ts +3 -0
  255. package/lib/media/resolve-config.d.ts.map +1 -0
  256. package/lib/media/resolve-config.js +32 -0
  257. package/lib/media/resolve-config.js.map +1 -0
  258. package/lib/media/subagent-inbound.d.ts +20 -0
  259. package/lib/media/subagent-inbound.d.ts.map +1 -0
  260. package/lib/media/subagent-inbound.js +88 -0
  261. package/lib/media/subagent-inbound.js.map +1 -0
  262. package/lib/media/subagent-user-delivery.d.ts +16 -0
  263. package/lib/media/subagent-user-delivery.d.ts.map +1 -0
  264. package/lib/media/subagent-user-delivery.js +62 -0
  265. package/lib/media/subagent-user-delivery.js.map +1 -0
  266. package/lib/media/vision-capability.d.ts +5 -0
  267. package/lib/media/vision-capability.d.ts.map +1 -0
  268. package/lib/media/vision-capability.js +19 -0
  269. package/lib/media/vision-capability.js.map +1 -0
  270. package/lib/memory-layers.d.ts +57 -0
  271. package/lib/memory-layers.d.ts.map +1 -0
  272. package/lib/memory-layers.js +327 -0
  273. package/lib/memory-layers.js.map +1 -0
  274. package/lib/orchestrator/agent-dispatcher.d.ts.map +1 -1
  275. package/lib/orchestrator/agent-dispatcher.js +2 -0
  276. package/lib/orchestrator/agent-dispatcher.js.map +1 -1
  277. package/lib/orchestrator/mcp-lifecycle.d.ts +3 -0
  278. package/lib/orchestrator/mcp-lifecycle.d.ts.map +1 -1
  279. package/lib/orchestrator/mcp-lifecycle.js +34 -0
  280. package/lib/orchestrator/mcp-lifecycle.js.map +1 -1
  281. package/lib/orchestrator/resolve-subagent-tools.d.ts +20 -0
  282. package/lib/orchestrator/resolve-subagent-tools.d.ts.map +1 -0
  283. package/lib/orchestrator/resolve-subagent-tools.js +52 -0
  284. package/lib/orchestrator/resolve-subagent-tools.js.map +1 -0
  285. package/lib/orchestrator/task-queue.d.ts +4 -0
  286. package/lib/orchestrator/task-queue.d.ts.map +1 -1
  287. package/lib/orchestrator/task-queue.js +24 -0
  288. package/lib/orchestrator/task-queue.js.map +1 -1
  289. package/lib/orchestrator/tool-selection.d.ts +1 -1
  290. package/lib/orchestrator/tool-selection.d.ts.map +1 -1
  291. package/lib/orchestrator/tool-selection.js +2 -0
  292. package/lib/orchestrator/tool-selection.js.map +1 -1
  293. package/lib/routing/route-matcher.d.ts +12 -0
  294. package/lib/routing/route-matcher.d.ts.map +1 -0
  295. package/lib/routing/route-matcher.js +72 -0
  296. package/lib/routing/route-matcher.js.map +1 -0
  297. package/lib/routing/runtime-binding.d.ts +10 -0
  298. package/lib/routing/runtime-binding.d.ts.map +1 -0
  299. package/lib/routing/runtime-binding.js +6 -0
  300. package/lib/routing/runtime-binding.js.map +1 -0
  301. package/lib/routing/subagent-summarize.d.ts +6 -0
  302. package/lib/routing/subagent-summarize.d.ts.map +1 -0
  303. package/lib/routing/subagent-summarize.js +23 -0
  304. package/lib/routing/subagent-summarize.js.map +1 -0
  305. package/lib/security/file-policy.d.ts +7 -1
  306. package/lib/security/file-policy.d.ts.map +1 -1
  307. package/lib/security/file-policy.js +34 -1
  308. package/lib/security/file-policy.js.map +1 -1
  309. package/lib/service.d.ts +44 -25
  310. package/lib/service.d.ts.map +1 -1
  311. package/lib/service.js +93 -56
  312. package/lib/service.js.map +1 -1
  313. package/lib/subagent-ai-events.d.ts +30 -0
  314. package/lib/subagent-ai-events.d.ts.map +1 -0
  315. package/lib/subagent-ai-events.js +110 -0
  316. package/lib/subagent-ai-events.js.map +1 -0
  317. package/lib/subagent-goal-notify.d.ts +27 -6
  318. package/lib/subagent-goal-notify.d.ts.map +1 -1
  319. package/lib/subagent-goal-notify.js +46 -12
  320. package/lib/subagent-goal-notify.js.map +1 -1
  321. package/lib/subagent.d.ts +43 -3
  322. package/lib/subagent.d.ts.map +1 -1
  323. package/lib/subagent.js +191 -88
  324. package/lib/subagent.js.map +1 -1
  325. package/lib/task-executor.d.ts +10 -18
  326. package/lib/task-executor.d.ts.map +1 -1
  327. package/lib/task-executor.js +11 -34
  328. package/lib/task-executor.js.map +1 -1
  329. package/lib/typing-indicator/adapter-integration.d.ts.map +1 -1
  330. package/lib/typing-indicator/adapter-integration.js +2 -1
  331. package/lib/typing-indicator/adapter-integration.js.map +1 -1
  332. package/lib/typing-indicator/index.d.ts.map +1 -1
  333. package/lib/typing-indicator/index.js +18 -5
  334. package/lib/typing-indicator/index.js.map +1 -1
  335. package/lib/zhin-agent/agent-loop-standalone.d.ts +32 -0
  336. package/lib/zhin-agent/agent-loop-standalone.d.ts.map +1 -0
  337. package/lib/zhin-agent/agent-loop-standalone.js +144 -0
  338. package/lib/zhin-agent/agent-loop-standalone.js.map +1 -0
  339. package/lib/zhin-agent/agent-loop-turn.d.ts +51 -0
  340. package/lib/zhin-agent/agent-loop-turn.d.ts.map +1 -0
  341. package/lib/zhin-agent/agent-loop-turn.js +287 -0
  342. package/lib/zhin-agent/agent-loop-turn.js.map +1 -0
  343. package/lib/zhin-agent/builtin-tools.d.ts +3 -2
  344. package/lib/zhin-agent/builtin-tools.d.ts.map +1 -1
  345. package/lib/zhin-agent/builtin-tools.js +15 -16
  346. package/lib/zhin-agent/builtin-tools.js.map +1 -1
  347. package/lib/zhin-agent/config.d.ts +20 -14
  348. package/lib/zhin-agent/config.d.ts.map +1 -1
  349. package/lib/zhin-agent/config.js +19 -13
  350. package/lib/zhin-agent/config.js.map +1 -1
  351. package/lib/zhin-agent/deferred-delivery.d.ts +5 -0
  352. package/lib/zhin-agent/deferred-delivery.d.ts.map +1 -0
  353. package/lib/zhin-agent/deferred-delivery.js +29 -0
  354. package/lib/zhin-agent/deferred-delivery.js.map +1 -0
  355. package/lib/zhin-agent/event-emitter.d.ts.map +1 -1
  356. package/lib/zhin-agent/event-emitter.js +3 -2
  357. package/lib/zhin-agent/event-emitter.js.map +1 -1
  358. package/lib/zhin-agent/index.d.ts +50 -8
  359. package/lib/zhin-agent/index.d.ts.map +1 -1
  360. package/lib/zhin-agent/index.js +204 -17
  361. package/lib/zhin-agent/index.js.map +1 -1
  362. package/lib/zhin-agent/model-resolver.d.ts +0 -1
  363. package/lib/zhin-agent/model-resolver.d.ts.map +1 -1
  364. package/lib/zhin-agent/model-resolver.js.map +1 -1
  365. package/lib/zhin-agent/multimodal-message.d.ts +9 -0
  366. package/lib/zhin-agent/multimodal-message.d.ts.map +1 -0
  367. package/lib/zhin-agent/multimodal-message.js +69 -0
  368. package/lib/zhin-agent/multimodal-message.js.map +1 -0
  369. package/lib/zhin-agent/prompt-access.d.ts +4 -0
  370. package/lib/zhin-agent/prompt-access.d.ts.map +1 -0
  371. package/lib/zhin-agent/prompt-access.js +7 -0
  372. package/lib/zhin-agent/prompt-access.js.map +1 -0
  373. package/lib/zhin-agent/prompt-assembly.d.ts.map +1 -1
  374. package/lib/zhin-agent/prompt-assembly.js +0 -2
  375. package/lib/zhin-agent/prompt-assembly.js.map +1 -1
  376. package/lib/zhin-agent/prompt-controller.d.ts +53 -0
  377. package/lib/zhin-agent/prompt-controller.d.ts.map +1 -0
  378. package/lib/zhin-agent/prompt-controller.js +165 -0
  379. package/lib/zhin-agent/prompt-controller.js.map +1 -0
  380. package/lib/zhin-agent/prompt-input.d.ts +3 -0
  381. package/lib/zhin-agent/prompt-input.d.ts.map +1 -0
  382. package/lib/zhin-agent/prompt-input.js +8 -0
  383. package/lib/zhin-agent/prompt-input.js.map +1 -0
  384. package/lib/zhin-agent/prompt.d.ts.map +1 -1
  385. package/lib/zhin-agent/prompt.js +49 -16
  386. package/lib/zhin-agent/prompt.js.map +1 -1
  387. package/lib/zhin-agent/session-io.d.ts +12 -7
  388. package/lib/zhin-agent/session-io.d.ts.map +1 -1
  389. package/lib/zhin-agent/session-io.js +18 -15
  390. package/lib/zhin-agent/session-io.js.map +1 -1
  391. package/lib/zhin-agent/session-message-queue.d.ts +20 -0
  392. package/lib/zhin-agent/session-message-queue.d.ts.map +1 -0
  393. package/lib/zhin-agent/session-message-queue.js +52 -0
  394. package/lib/zhin-agent/session-message-queue.js.map +1 -0
  395. package/lib/zhin-agent/tool-calls-user-format.d.ts.map +1 -1
  396. package/lib/zhin-agent/tool-calls-user-format.js +8 -1
  397. package/lib/zhin-agent/tool-calls-user-format.js.map +1 -1
  398. package/lib/zhin-agent/tool-orchestration.d.ts.map +1 -1
  399. package/lib/zhin-agent/tool-orchestration.js +43 -10
  400. package/lib/zhin-agent/tool-orchestration.js.map +1 -1
  401. package/lib/zhin-agent/tool-runtime.d.ts +2 -4
  402. package/lib/zhin-agent/tool-runtime.d.ts.map +1 -1
  403. package/lib/zhin-agent/tool-runtime.js +4 -7
  404. package/lib/zhin-agent/tool-runtime.js.map +1 -1
  405. package/lib/zhin-agent/tool-search-orchestrator.d.ts +3 -0
  406. package/lib/zhin-agent/tool-search-orchestrator.d.ts.map +1 -1
  407. package/lib/zhin-agent/tool-search-orchestrator.js +8 -3
  408. package/lib/zhin-agent/tool-search-orchestrator.js.map +1 -1
  409. package/lib/zhin-agent/turn-context.d.ts +9 -0
  410. package/lib/zhin-agent/turn-context.d.ts.map +1 -0
  411. package/lib/zhin-agent/turn-context.js +12 -0
  412. package/lib/zhin-agent/turn-context.js.map +1 -0
  413. package/lib/zhin-agent/turn-pipeline.d.ts +5 -1
  414. package/lib/zhin-agent/turn-pipeline.d.ts.map +1 -1
  415. package/lib/zhin-agent/turn-pipeline.js +128 -401
  416. package/lib/zhin-agent/turn-pipeline.js.map +1 -1
  417. package/lib/zhin-agent/turn-tracker.d.ts +2 -0
  418. package/lib/zhin-agent/turn-tracker.d.ts.map +1 -1
  419. package/lib/zhin-agent/turn-tracker.js +11 -6
  420. package/lib/zhin-agent/turn-tracker.js.map +1 -1
  421. package/lib/zhin-agent/zhin-agent-private.d.ts +18 -5
  422. package/lib/zhin-agent/zhin-agent-private.d.ts.map +1 -1
  423. package/lib/zhin-agent/zhin-agent-private.js.map +1 -1
  424. package/package.json +3 -3
  425. package/lib/zhin-agent/llm-runner.d.ts +0 -16
  426. package/lib/zhin-agent/llm-runner.d.ts.map +0 -1
  427. package/lib/zhin-agent/llm-runner.js +0 -85
  428. package/lib/zhin-agent/llm-runner.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize-ai-config.js","sourceRoot":"","sources":["../../src/config/normalize-ai-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAM/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY;CACnG,CAAC,CAAC;AAEH,SAAS,oBAAoB,CAC3B,SAAgC;IAEhC,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1F,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAA+D,CAAC;IACxG,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,OAAO,KAAK,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,CAAC;AAC7C,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,sBAAsB,CACpC,KAAa,EACb,GAAiD;IAEjD,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IACzG,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IACzC,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAA0C;IAE1C,MAAM,GAAG,GAA2C,EAAE,CAAC;IACvD,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,SAAS;QAClE,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,GAAG,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC,GAAG,EAAE,EAAE,GAAI,GAAsB,EAAE,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACrG,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,2BAA2B,CAClC,MAA0C,EAC1C,MAAwC;IAExC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,MAAM,CAAC,IAAI,CAAC,GAAG;YACb,GAAG,QAAQ;YACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;YAC7C,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;SACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAOD;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAwB;IAC/D,IAAI,SAAiD,CAAC;IAEtD,IAAI,oBAAoB,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC;QACxC,SAAS,GAAG,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAG,CAAC,SAAyE,CAAC,EAAE,CAAC;YACzH,SAAS,CAAC,KAAK,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,SAAS,GAAG,wBAAwB,CAAC,EAAE,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,GAAG,CAAE,EAAiE,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;IACzG,MAAM,YAAY,GAAI,EAA+D,EAAE,MAAM,IAAI,EAAE,CAAC;IACpG,2BAA2B,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAElD,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAK,EAAoD,EAAE,KAAK,EAAE,CAAC;QACrG,MAAM,MAAM,GAAG,EAA6E,CAAC;QAC7F,MAAM,aAAa,GAAG,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;QACtF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;QAC5C,MAAM,CAAC,uBAAuB,CAAC,GAAG;YAChC,QAAQ,EAAE,aAAa;YACvB,KAAK;SACN,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { AIProvider } from '@zhin.js/core';
2
+ import type { ProviderInstanceConfig } from './types.js';
3
+ export declare function createProviderInstance(alias: string, raw: ProviderInstanceConfig): AIProvider | null;
4
+ export declare function registerProviderInstances(providers: Record<string, ProviderInstanceConfig> | undefined): Map<string, AIProvider>;
5
+ //# sourceMappingURL=provider-instance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-instance.d.ts","sourceRoot":"","sources":["../../src/config/provider-instance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,eAAe,CAAC;AAYhE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAwCzD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,sBAAsB,GAC1B,UAAU,GAAG,IAAI,CAqBnB;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,SAAS,GAC5D,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAQzB"}
@@ -0,0 +1,65 @@
1
+ import { AnthropicProvider, CloudflareProvider, DeepSeekProvider, MoonshotProvider, OllamaProvider, OpenAIProvider, ZhipuProvider, GoogleProvider, } from '@zhin.js/core';
2
+ const VENDOR_FACTORIES = {
3
+ openai: { factory: OpenAIProvider, requireApiKey: true },
4
+ anthropic: { factory: AnthropicProvider, requireApiKey: true },
5
+ deepseek: { factory: DeepSeekProvider, requireApiKey: true },
6
+ moonshot: { factory: MoonshotProvider, requireApiKey: true },
7
+ zhipu: { factory: ZhipuProvider, requireApiKey: true },
8
+ google: { factory: GoogleProvider, requireApiKey: true },
9
+ gemini: { factory: GoogleProvider, requireApiKey: true },
10
+ ollama: { factory: OllamaProvider, requireApiKey: false },
11
+ };
12
+ function resolveVendorAlias(alias, api) {
13
+ const lower = alias.trim().toLowerCase();
14
+ if (VENDOR_FACTORIES[lower] || lower === 'cloudflare')
15
+ return lower;
16
+ const head = lower.split(/[-_/]/)[0];
17
+ if (head && (VENDOR_FACTORIES[head] || head === 'cloudflare'))
18
+ return head;
19
+ switch (api) {
20
+ case 'anthropic-messages':
21
+ return 'anthropic';
22
+ case 'google-generative-ai':
23
+ return 'google';
24
+ case 'ollama-chat':
25
+ return 'ollama';
26
+ case 'cloudflare-workers-ai':
27
+ return 'cloudflare';
28
+ case 'openai-completions':
29
+ default:
30
+ return 'openai';
31
+ }
32
+ }
33
+ export function createProviderInstance(alias, raw) {
34
+ const vendor = resolveVendorAlias(alias, raw.api?.trim() || 'openai-completions');
35
+ const { api: _api, ...rest } = raw;
36
+ if (vendor === 'cloudflare') {
37
+ const cfg = rest;
38
+ if (!cfg.apiKey || !cfg.accountId)
39
+ return null;
40
+ const provider = new CloudflareProvider(cfg);
41
+ provider.name = alias;
42
+ return provider;
43
+ }
44
+ const entry = VENDOR_FACTORIES[vendor];
45
+ if (!entry)
46
+ return null;
47
+ const cfg = { ...rest };
48
+ if (entry.requireApiKey && !cfg.apiKey)
49
+ return null;
50
+ const provider = new entry.factory(cfg);
51
+ provider.name = alias;
52
+ return provider;
53
+ }
54
+ export function registerProviderInstances(providers) {
55
+ const map = new Map();
56
+ if (!providers)
57
+ return map;
58
+ for (const [alias, cfg] of Object.entries(providers)) {
59
+ const p = createProviderInstance(alias, cfg);
60
+ if (p)
61
+ map.set(alias, p);
62
+ }
63
+ return map;
64
+ }
65
+ //# sourceMappingURL=provider-instance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-instance.js","sourceRoot":"","sources":["../../src/config/provider-instance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { ProviderConfig } from '@zhin.js/core';
2
+ export type ProviderDriver = 'openai' | 'anthropic' | 'deepseek' | 'moonshot' | 'zhipu' | 'google' | 'gemini' | 'ollama' | 'cloudflare';
3
+ export interface ProviderInstanceConfig extends ProviderConfig {
4
+ /** LLM protocol id (ADR 0009 D1), e.g. openai-completions */
5
+ api: string;
6
+ }
7
+ export interface RouteMatchConfig {
8
+ adapter?: string;
9
+ bot?: string;
10
+ scene?: string;
11
+ /** image | audio | video | text(纯文本无媒体 segment) */
12
+ hasMedia?: string[];
13
+ /** 子串匹配(不区分大小写) */
14
+ contentContains?: string;
15
+ }
16
+ export interface AgentBindingConfig {
17
+ provider: string;
18
+ model: string;
19
+ mcpServers?: string[];
20
+ priority?: number;
21
+ match?: RouteMatchConfig;
22
+ }
23
+ /** @deprecated 仅用于归一化旧版 ai.routes */
24
+ export interface RouteEntryConfig {
25
+ priority: number;
26
+ match: RouteMatchConfig;
27
+ }
28
+ /** 解析后的 agent 绑定(运行时) */
29
+ export interface ResolvedAgentBinding {
30
+ name: string;
31
+ providerAlias: string;
32
+ model: string;
33
+ mcpServers: string[];
34
+ }
35
+ export declare const DEFAULT_ZHIN_AGENT_NAME = "zhin";
36
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,WAAW,GACX,UAAU,GACV,UAAU,GACV,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,YAAY,CAAC;AAEjB,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC5D,6DAA6D;IAC7D,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,mBAAmB;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,yBAAyB;AACzB,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,uBAAuB,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const DEFAULT_ZHIN_AGENT_NAME = 'zhin';
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAmDA,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { NormalizedAiRoutingConfig } from './normalize-ai-config.js';
2
+ export declare function validateAiRoutingConfig(cfg: NormalizedAiRoutingConfig): string[];
3
+ //# sourceMappingURL=validate-ai-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-ai-config.d.ts","sourceRoot":"","sources":["../../src/config/validate-ai-config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAE1E,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,yBAAyB,GAAG,MAAM,EAAE,CA2ChF"}
@@ -0,0 +1,40 @@
1
+ import { DEFAULT_ZHIN_AGENT_NAME } from './types.js';
2
+ export function validateAiRoutingConfig(cfg) {
3
+ const errors = [];
4
+ for (const [alias, prov] of Object.entries(cfg.providers)) {
5
+ if (!prov.api?.trim()) {
6
+ errors.push(`ai.providers.${alias}: api is required`);
7
+ }
8
+ }
9
+ if (!cfg.agents[DEFAULT_ZHIN_AGENT_NAME]) {
10
+ errors.push(`ai.agents.${DEFAULT_ZHIN_AGENT_NAME} is required`);
11
+ }
12
+ for (const [name, binding] of Object.entries(cfg.agents)) {
13
+ if (!cfg.providers[binding.provider]) {
14
+ errors.push(`ai.agents.${name}: unknown provider "${binding.provider}"`);
15
+ }
16
+ if (!binding.model?.trim() && name !== DEFAULT_ZHIN_AGENT_NAME) {
17
+ errors.push(`ai.agents.${name}: model is required`);
18
+ }
19
+ for (const srv of binding.mcpServers ?? []) {
20
+ if (!srv?.trim())
21
+ errors.push(`ai.agents.${name}: empty mcpServers entry`);
22
+ }
23
+ const hasMatch = binding.match != null && Object.keys(binding.match).length > 0;
24
+ const hasPriority = binding.priority != null;
25
+ if (name === DEFAULT_ZHIN_AGENT_NAME) {
26
+ if (hasMatch || hasPriority) {
27
+ errors.push(`ai.agents.${DEFAULT_ZHIN_AGENT_NAME}: must not set priority or match (use implicit fallback)`);
28
+ }
29
+ continue;
30
+ }
31
+ if (hasMatch && typeof binding.priority !== 'number') {
32
+ errors.push(`ai.agents.${name}: priority is required when match is set`);
33
+ }
34
+ if (hasPriority && !hasMatch) {
35
+ errors.push(`ai.agents.${name}: match is required when priority is set`);
36
+ }
37
+ }
38
+ return errors;
39
+ }
40
+ //# sourceMappingURL=validate-ai-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-ai-config.js","sourceRoot":"","sources":["../../src/config/validate-ai-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAGrD,MAAM,UAAU,uBAAuB,CAAC,GAA8B;IACpE,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,gBAAgB,KAAK,mBAAmB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,aAAa,uBAAuB,cAAc,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,uBAAuB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,uBAAuB,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,qBAAqB,CAAC,CAAC;QACtD,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE;gBAAE,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,0BAA0B,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAChF,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QAE7C,IAAI,IAAI,KAAK,uBAAuB,EAAE,CAAC;YACrC,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,aAAa,uBAAuB,0DAA0D,CAAC,CAAC;YAC9G,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,0CAA0C,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,0CAA0C,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -9,20 +9,8 @@
9
9
  * - CLI / AI 工具:可对持久化任务做 list / add / remove / pause / resume(AI 侧立即生效)
10
10
  */
11
11
  import { Cron, ZhinTool } from '@zhin.js/core';
12
+ import type { JobNotify } from './assistant/types.js';
12
13
  export declare const CRON_JOBS_FILENAME = "cron-jobs.json";
13
- /** 定时任务执行时的上下文信息 */
14
- export interface CronJobContext {
15
- /** 来源平台(adapter name),如 'icqq', 'discord' */
16
- platform?: string;
17
- /** Bot ID */
18
- botId?: string;
19
- /** 发送者 ID(创建者) */
20
- senderId?: string;
21
- /** 场景 ID(群号/频道ID/私聊用户ID) */
22
- sceneId?: string;
23
- /** 场景类型: private | group | channel */
24
- scope?: string;
25
- }
26
14
  export interface CronJobRecord {
27
15
  id: string;
28
16
  /** Cron 表达式,5 字段:分 时 日 月 周 */
@@ -33,8 +21,8 @@ export interface CronJobRecord {
33
21
  label?: string;
34
22
  /** 是否启用(暂停的任务不加载) */
35
23
  enabled: boolean;
36
- /** 执行时的上下文(缺省为 system/cron) */
37
- context?: CronJobContext;
24
+ /** 投递通道(必填;旧版 context 字段不再读取) */
25
+ notify: JobNotify;
38
26
  createdAt: number;
39
27
  /** 上次执行时间戳 */
40
28
  lastExecutedAt?: number;
@@ -46,14 +34,14 @@ export interface CronJobRecord {
46
34
  export declare function getCronJobsFilePath(dataDir: string): string;
47
35
  export declare function readCronJobsFile(dataDir: string): Promise<CronJobRecord[]>;
48
36
  export declare function writeCronJobsFile(dataDir: string, jobs: CronJobRecord[]): Promise<void>;
49
- export type CronRunner = (prompt: string, jobId: string, context?: CronJobContext) => void | Promise<void>;
37
+ export type CronRunner = (prompt: string, jobId: string, notify?: JobNotify) => void | Promise<void>;
50
38
  export type AddCronFn = (cron: Cron) => () => void;
51
39
  export interface PersistentCronEngineOptions {
52
40
  dataDir: string;
53
41
  addCron: AddCronFn;
54
42
  runner: CronRunner;
55
43
  }
56
- export declare class PersistentCronEngine {
44
+ export declare class PersistentCronEngine implements IPersistentJobEngine {
57
45
  private options;
58
46
  /** jobId -> dispose */
59
47
  private disposes;
@@ -99,6 +87,20 @@ export declare class PersistentCronEngine {
99
87
  * 生成唯一 ID(用于 CLI / AI 添加时)
100
88
  */
101
89
  export declare function generateCronJobId(): string;
90
+ /** 持久化任务引擎契约(PersistentCronEngine / AssistantJobEngine) */
91
+ export interface IPersistentJobEngine {
92
+ getDataDir(): string;
93
+ load(): void;
94
+ unload(): void;
95
+ listJobs(): Promise<CronJobRecord[]>;
96
+ addJob(record: Omit<CronJobRecord, 'createdAt'> & {
97
+ createdAt?: number;
98
+ }): Promise<CronJobRecord>;
99
+ removeJob(id: string): Promise<boolean>;
100
+ pauseJob(id: string): Promise<boolean>;
101
+ resumeJob(id: string): Promise<boolean>;
102
+ updateJobStatus(id: string, status: 'ok' | 'error', error?: string): Promise<void>;
103
+ }
102
104
  export interface CronManager {
103
105
  cronFeature: {
104
106
  getStatus(): Array<{
@@ -108,7 +110,7 @@ export interface CronManager {
108
110
  plugin: string;
109
111
  }>;
110
112
  };
111
- engine: PersistentCronEngine | null;
113
+ engine: IPersistentJobEngine | null;
112
114
  }
113
115
  export declare function setCronManager(m: CronManager | null): void;
114
116
  export declare function getCronManager(): CronManager | null;
@@ -1 +1 @@
1
- {"version":3,"file":"cron-engine.d.ts","sourceRoot":"","sources":["../src/cron-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cron-engine.d.ts","sourceRoot":"","sources":["../src/cron-engine.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import * as fs from 'node:fs';
12
12
  import * as path from 'node:path';
13
13
  import { Cron, ZhinTool, Logger } from '@zhin.js/core';
14
14
  import { formatCompact } from '@zhin.js/logger';
15
+ import { toolContextToImNotify } from './assistant/legacy-convert.js';
15
16
  const logger = new Logger(null, 'cron-engine');
16
17
  // ─────────────────────────────────────────────────────────────────────────────
17
18
  // 类型与存储路径
@@ -27,15 +28,33 @@ export async function readCronJobsFile(dataDir) {
27
28
  const data = JSON.parse(raw);
28
29
  if (!Array.isArray(data))
29
30
  return [];
30
- return data;
31
+ return data.map(normalizeCronJobRecord);
31
32
  }
32
33
  catch (e) {
33
- if (e?.code === 'ENOENT')
34
+ const err = e;
35
+ if (err?.code === 'ENOENT')
34
36
  return [];
35
- logger.warn('读取定时任务文件失败: ' + (e?.message || String(e)));
36
- return [];
37
+ throw e;
37
38
  }
38
39
  }
40
+ function normalizeCronJobRecord(raw) {
41
+ const notify = raw.notify;
42
+ if (!notify || typeof notify !== 'object' || !('channel' in notify)) {
43
+ throw new Error(`cron-jobs.json: job "${String(raw.id)}" 缺少 notify 字段(破坏性更新:context 已移除)`);
44
+ }
45
+ return {
46
+ id: String(raw.id),
47
+ cronExpression: String(raw.cronExpression),
48
+ prompt: String(raw.prompt),
49
+ label: raw.label != null ? String(raw.label) : undefined,
50
+ enabled: raw.enabled !== false,
51
+ notify,
52
+ createdAt: Number(raw.createdAt) || Date.now(),
53
+ lastExecutedAt: raw.lastExecutedAt != null ? Number(raw.lastExecutedAt) : undefined,
54
+ lastStatus: raw.lastStatus === 'ok' || raw.lastStatus === 'error' ? raw.lastStatus : undefined,
55
+ lastError: raw.lastError != null ? String(raw.lastError) : undefined,
56
+ };
57
+ }
39
58
  export async function writeCronJobsFile(dataDir, jobs) {
40
59
  const filePath = getCronJobsFilePath(dataDir);
41
60
  await fs.promises.mkdir(path.dirname(filePath), { recursive: true });
@@ -70,10 +89,10 @@ export class PersistentCronEngine {
70
89
  });
71
90
  }
72
91
  registerOne(job, addCron, runner) {
73
- const { prompt, id: jobId, cronExpression, context } = job;
92
+ const { prompt, id: jobId, cronExpression, notify } = job;
74
93
  try {
75
94
  const cron = new Cron(cronExpression, async () => {
76
- await runner(prompt, jobId, context);
95
+ await runner(prompt, jobId, notify);
77
96
  });
78
97
  cron.id = jobId;
79
98
  const dispose = addCron(cron);
@@ -218,7 +237,7 @@ export function createCronTools(options) {
218
237
  prompt: j.prompt,
219
238
  label: j.label,
220
239
  enabled: j.enabled,
221
- context: j.context,
240
+ notify: j.notify,
222
241
  createdAt: j.createdAt,
223
242
  lastExecutedAt: j.lastExecutedAt,
224
243
  lastStatus: j.lastStatus,
@@ -235,6 +254,7 @@ export function createCronTools(options) {
235
254
  .param('delay_minutes', { type: 'number', description: '一次性延迟(分钟),如 30 表示30分钟后执行一次。与 cron_expression 二选一' })
236
255
  .param('prompt', { type: 'string', description: '到点触发时发给 AI 的提示词(如"查询今日金价")。如果只是简单提醒,可写提醒内容' }, true)
237
256
  .param('label', { type: 'string', description: '可选标签,便于识别' })
257
+ .param('notify_channel', { type: 'string', description: '结果投递通道:im(默认,发到当前会话)、silent(仅写 Job 状态)、log(仅日志)。推荐显式指定' })
238
258
  .execute(async (args, toolContext) => {
239
259
  const m = getCronManager();
240
260
  if (!m?.engine) {
@@ -267,23 +287,27 @@ export function createCronTools(options) {
267
287
  logger.warn('Prompt optimization failed, using original: ' + e.message);
268
288
  }
269
289
  }
270
- // 从调用者的 ToolContext 自动捕获上下文
271
- const jobContext = toolContext
272
- ? {
273
- platform: toolContext.platform,
274
- botId: toolContext.botId,
275
- senderId: toolContext.senderId,
276
- sceneId: toolContext.sceneId,
277
- scope: toolContext.scope,
278
- }
279
- : undefined;
290
+ const notifyChannel = String(args.notify_channel || 'im').toLowerCase();
291
+ let notify;
292
+ if (notifyChannel === 'silent') {
293
+ notify = { channel: 'silent' };
294
+ }
295
+ else if (notifyChannel === 'log') {
296
+ notify = { channel: 'log' };
297
+ }
298
+ else if (notifyChannel !== 'im') {
299
+ return { error: `notify_channel 无效: ${notifyChannel},可选 im | silent | log` };
300
+ }
301
+ else {
302
+ notify = toolContext ? toolContextToImNotify(toolContext) : { channel: 'silent' };
303
+ }
280
304
  const job = await m.engine.addJob({
281
305
  id,
282
306
  cronExpression: finalCron,
283
307
  prompt: finalPrompt,
284
308
  label: args.label || (isOneShot ? `一次性提醒 (${delayMin}分钟后)` : undefined),
285
309
  enabled: true,
286
- context: jobContext,
310
+ notify,
287
311
  });
288
312
  if (isOneShot) {
289
313
  const target = new Date(Date.now() + (delayMin ?? 0) * 60 * 1000);
@@ -1 +1 @@
1
- {"version":3,"file":"cron-engine.js","sourceRoot":"","sources":["../src/cron-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cron-engine.js","sourceRoot":"","sources":["../src/cron-engine.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { AIProvider, AgentTool } from '@zhin.js/core';
2
+ import type { ToolCallRecord } from './zhin-agent/tool-calls-user-format.js';
2
3
  import type { ModelRegistry } from '@zhin.js/ai';
3
4
  import type { ZhinAgentConfig, ExecApprovalMode } from './zhin-agent/config.js';
4
5
  import type { ToolContext } from '@zhin.js/core';
@@ -34,6 +35,7 @@ export interface DeferredWorkerResult {
34
35
  loadedToolNames: string[];
35
36
  iterations: number;
36
37
  status: 'ok' | 'partial' | 'error';
38
+ toolCalls?: ToolCallRecord[];
37
39
  }
38
40
  export declare class DeferredWorkerRunner {
39
41
  runSync(options: DeferredWorkerRunOptions): Promise<DeferredWorkerResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"deferred-worker-runner.d.ts","sourceRoot":"","sources":["../src/deferred-worker-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAe3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAOhF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAMjD,0BAA0B;AAC1B,eAAO,MAAM,gCAAgC,OAAO,CAAC;AAErD,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC7C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,QAAQ,EAAE,UAAU,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,4BAA4B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAED,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;CACpC;AAED,qBAAa,oBAAoB;IACzB,OAAO,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CA+MhF"}
1
+ {"version":3,"file":"deferred-worker-runner.d.ts","sourceRoot":"","sources":["../src/deferred-worker-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAQ3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAO7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAGhF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAMjD,0BAA0B;AAC1B,eAAO,MAAM,gCAAgC,OAAO,CAAC;AAErD,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC7C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,QAAQ,EAAE,UAAU,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,4BAA4B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAED,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;CAC9B;AAED,qBAAa,oBAAoB;IACzB,OAAO,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAgMhF"}
@@ -3,17 +3,14 @@
3
3
  */
4
4
  import { Logger } from '@zhin.js/core';
5
5
  import { formatCompact, formatCompactUsage, truncatePreview } from '@zhin.js/logger';
6
- import { createAgent } from '@zhin.js/ai';
7
6
  import { isOmittedToolSummary, sanitizeToolResult, stripHallucinatedToolCalls, } from '@zhin.js/ai';
8
7
  import { stripThinkBlocks } from './zhin-agent/text-sanitize.js';
8
+ import { runAgentLoopStandaloneTurn } from './zhin-agent/agent-loop-standalone.js';
9
9
  import { selectDeferredToolsForWorker } from './deferred-worker-tool-load.js';
10
10
  import { resolveAgentPromptMarkdown, resolveDeferredToolsForPlatform, } from './agent-prompt/index.js';
11
11
  import { resolveWorkerSlowToolTimeout } from './zhin-agent/config.js';
12
- import { applyExecPolicyToTools } from './security/exec-policy.js';
13
- import { RESERVED_TOOL_NAME_PREFIXES } from './reserved-tools.js';
14
- import { resolveContextBudget } from './zhin-agent/context-budget.js';
15
12
  import { createOwnerOrchestratedToolResultTransform } from './orchestrator/owner-confirm-orchestration.js';
16
- import { runWithDirectAgentExecution } from './security/bash-tool-context.js';
13
+ import { applyExecPolicyToTools } from './security/exec-policy.js';
17
14
  import { DEFAULT_TOOL_SEARCH_ORCHESTRATOR_TOOLS } from './zhin-agent/config.js';
18
15
  const logger = new Logger(null, 'DeferredWorker');
19
16
  const ORCHESTRATOR_TOOL_SET = new Set(DEFAULT_TOOL_SEARCH_ORCHESTRATOR_TOOLS);
@@ -26,7 +23,6 @@ export class DeferredWorkerRunner {
26
23
  const promptCtx = {
27
24
  slot: 'deferred_worker',
28
25
  toolContext: origin,
29
- toolSearch: true,
30
26
  deferred: { goal, toolQuery: query },
31
27
  };
32
28
  const loaded = resolveDeferredToolsForPlatform(promptCtx, query, goal, deferredCatalog, maxToolResults, selectDeferredToolsForWorker);
@@ -78,14 +74,6 @@ export class DeferredWorkerRunner {
78
74
  }));
79
75
  }
80
76
  const model = provider.models[0];
81
- const contextBudget = execPolicyConfig
82
- ? resolveContextBudget({
83
- config: execPolicyConfig,
84
- provider,
85
- modelRegistry: modelRegistry ?? null,
86
- model,
87
- })
88
- : null;
89
77
  const platformBody = await resolveAgentPromptMarkdown({
90
78
  ctx: promptCtx,
91
79
  config: execPolicyConfig,
@@ -118,24 +106,20 @@ ${goal}${platformBlock}
118
106
  toolQuery,
119
107
  loadedToolNames,
120
108
  });
121
- const agent = createAgent(provider, {
122
- model,
123
- systemPrompt,
124
- tools,
125
- maxIterations,
126
- turnTimeout: execPolicyConfig?.timeout ?? 60_000,
127
- // Worker 须能注册 bash/read_file 等内置名;仅保留编排类元工具不可被插件覆盖
128
- reservedToolNames: [...ORCHESTRATOR_TOOL_SET],
129
- reservedToolNamePrefixes: RESERVED_TOOL_NAME_PREFIXES,
130
- contextWindow: contextBudget?.contextWindow ?? provider.contextWindow,
131
- forceMicroCompactEachTurn: true,
132
- transformToolResult: createOwnerOrchestratedToolResultTransform({
133
- toolContext: origin,
134
- disableHardOrchestration: true,
135
- }),
136
- });
137
109
  try {
138
- const result = await runWithDirectAgentExecution(origin, () => agent.run(goal));
110
+ const result = await runAgentLoopStandaloneTurn({
111
+ provider,
112
+ model,
113
+ systemPrompt,
114
+ tools,
115
+ userInput: goal,
116
+ maxIterations,
117
+ toolContext: origin,
118
+ transformToolResult: createOwnerOrchestratedToolResultTransform({
119
+ toolContext: origin,
120
+ disableHardOrchestration: true,
121
+ }),
122
+ });
139
123
  const hitMaxIter = result.iterations >= maxIterations;
140
124
  const summary = buildWorkerSummary(result, summaryMaxChars, hitMaxIter);
141
125
  logger.info(formatCompact({
@@ -165,6 +149,7 @@ ${goal}${platformBlock}
165
149
  loadedToolNames,
166
150
  iterations: result.iterations,
167
151
  status: hitMaxIter ? 'partial' : 'ok',
152
+ toolCalls: result.toolCalls,
168
153
  };
169
154
  }
170
155
  catch (error) {
@@ -194,13 +179,10 @@ ${goal}${platformBlock}
194
179
  status: 'error',
195
180
  };
196
181
  }
197
- finally {
198
- agent.dispose();
199
- }
200
182
  }
201
183
  }
202
184
  function buildWorkerSummary(result, maxChars, hitMaxIter) {
203
- const raw = result.content?.trim() || '';
185
+ const raw = result.content.trim() || '';
204
186
  let cleaned = sanitizeToolResult(stripHallucinatedToolCalls(stripThinkBlocks(raw)), { maxChars });
205
187
  if (isOmittedToolSummary(cleaned)) {
206
188
  cleaned = summarizeWorkerToolCalls(result.toolCalls, maxChars);