@pixelzx/genesis 2026.6.29 → 2026.7.8

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 (1769) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/.buildstamp +1 -1
  3. package/dist/abort-cutoff.runtime-Cfv6I4gf.js +20 -0
  4. package/dist/abort-cutoff.runtime.js +1 -1
  5. package/dist/abort-xF_zj8_u.js +201 -0
  6. package/dist/abort.runtime-JUukGuW3.js +2 -0
  7. package/dist/abort.runtime.js +1 -1
  8. package/dist/accounts-C0jW92It.js +104 -0
  9. package/dist/accounts-C2ZexWg6.js +107 -0
  10. package/dist/accounts-tEPx6Fnd.js +2 -0
  11. package/dist/acp-cli-De2oyz3e.js +2217 -0
  12. package/dist/acp-spawn-7VB8ie8I.js +1042 -0
  13. package/dist/acp-spawn-C6VfLE4o.js +2 -0
  14. package/dist/acp-stateful-target-driver-ctUymwnI.js +89 -0
  15. package/dist/action-agents-Dy45TQ9X.js +67 -0
  16. package/dist/action-focus-hzygEAz5.js +132 -0
  17. package/dist/action-help-D1h2Czko.js +7 -0
  18. package/dist/action-info-EDBi7fre.js +101 -0
  19. package/dist/action-kill-CBNgmCsz.js +33 -0
  20. package/dist/action-list-C6KC8Ulv.js +21 -0
  21. package/dist/action-log-C0R9AwnB.js +30 -0
  22. package/dist/action-send-DZw27QoS.js +39 -0
  23. package/dist/action-spawn-BXEOYBEH.js +47 -0
  24. package/dist/action-unfocus-DWFUpr-g.js +29 -0
  25. package/dist/actions.runtime-1HHNbwPa.js +5 -0
  26. package/dist/actions.runtime-GFSX3jST.js +18 -0
  27. package/dist/actions.runtime.js +1 -1
  28. package/dist/agent-CU42dfye.js +2 -0
  29. package/dist/agent-command-Baehh2jJ.js +874 -0
  30. package/dist/agent-harness-runtime-Bmln4mlS.js +144 -0
  31. package/dist/agent-runner-utils-xPwHxFwc.js +239 -0
  32. package/dist/agent-runner.runtime-BBx0eqAs.js +3443 -0
  33. package/dist/agent-runner.runtime.js +1 -1
  34. package/dist/agent-runtime-mKUGZmYk.js +18 -0
  35. package/dist/agents-C_kp6PcN.js +954 -0
  36. package/dist/agents-D7-4l9xG.js +5 -0
  37. package/dist/agents.command-shared-j4Ht1HMt.js +40 -0
  38. package/dist/aliases-BR-85AbT.js +96 -0
  39. package/dist/aliases-DH4MEghL.js +2 -0
  40. package/dist/api-7axT1c4t.js +4 -0
  41. package/dist/api-8dcgPyEO.js +139 -0
  42. package/dist/api-BWV-Ja5Y.js +48 -0
  43. package/dist/api-C6Dl-nsC.js +3 -0
  44. package/dist/api-CeoOTFsR.js +5 -0
  45. package/dist/apply-DFpc3-ic.js +508 -0
  46. package/dist/apply.runtime-BpuwcltB.js +166 -0
  47. package/dist/apply.runtime-CyFkfilC.js +2 -0
  48. package/dist/apply.runtime.js +1 -1
  49. package/dist/approval-gateway-resolver-B5iZVyl3.js +29 -0
  50. package/dist/approval-gateway-runtime-DJMhFL8_.js +2 -0
  51. package/dist/approval-handler-runtime-CvlNyTSd.js +439 -0
  52. package/dist/approval-native-runtime-DIP1UVwF.js +729 -0
  53. package/dist/attempt-execution.runtime-Dnj7Dunz.js +509 -0
  54. package/dist/attempt-execution.runtime.js +1 -1
  55. package/dist/attempt-execution.shared-CJLlmxzq.js +22 -0
  56. package/dist/attempt.prompt-helpers-yXlkhGj_.js +206 -0
  57. package/dist/attempt.tool-run-context-DplnP36r.js +933 -0
  58. package/dist/audit-CP153cHC.js +939 -0
  59. package/dist/audit-channel.collect.runtime.js +1 -1
  60. package/dist/audit-extra.async-B52PswlQ.js +971 -0
  61. package/dist/audit-tool-policy-CMwmd8Xs.js +3 -0
  62. package/dist/audit.deep.runtime-BC4XWNSr.js +2 -0
  63. package/dist/audit.deep.runtime.js +1 -1
  64. package/dist/audit.nondeep.runtime-Dvng3qfA.js +880 -0
  65. package/dist/audit.nondeep.runtime.js +1 -1
  66. package/dist/audit.runtime-BPEAdYYt.js +7 -0
  67. package/dist/audit.runtime.js +1 -1
  68. package/dist/auth-CGB_0fnH.js +550 -0
  69. package/dist/auth-DXk-SISv.js +56 -0
  70. package/dist/auth-_41Zyvnc.js +2 -0
  71. package/dist/auth-bH95QjyV.js +177 -0
  72. package/dist/auth-choice-Bn-ygZZg.js +3 -0
  73. package/dist/auth-choice-CmUhzrUA.js +85 -0
  74. package/dist/auth-order-Cnl7fD4m.js +2 -0
  75. package/dist/auth-order-DTEvHo9G.js +139 -0
  76. package/dist/bash-tools-E5RKIMX4.js +2853 -0
  77. package/dist/bash-tools-n2uf-L6x.js +3 -0
  78. package/dist/bash-tools.exec-runtime-BSErqAOv.js +823 -0
  79. package/dist/binding-routing-MxZZJi7B.js +85 -0
  80. package/dist/binding-targets-DOjf91v9.js +121 -0
  81. package/dist/bridge-server-C9sdVkxe.js +113 -0
  82. package/dist/browser-control-auth-Ds_CXo7-.js +2 -0
  83. package/dist/browser-node-runtime-CrrZhgmT.js +12 -0
  84. package/dist/browser-profiles-DSq_VuWU.js +2 -0
  85. package/dist/browser-runtime-D3bUe2ki.js +387 -0
  86. package/dist/browser-setup-tools-BzBeI9sr.js +13 -0
  87. package/dist/build-BQ7uMjfi.js +550 -0
  88. package/dist/build-info.json +3 -3
  89. package/dist/bundled/boot-md/handler.js +3 -3
  90. package/dist/bundled/session-memory/handler.js +1 -1
  91. package/dist/call-C5EHc2Ve.js +3 -0
  92. package/dist/call-DgFhP0IB.js +330 -0
  93. package/dist/call.runtime-CBWpY5ek.js +2 -0
  94. package/dist/call.runtime.js +1 -1
  95. package/dist/capability-cli-CF-5WxGW.js +1401 -0
  96. package/dist/catalog-provider-BefDFS32.js +40 -0
  97. package/dist/catchup-DEgTzUZf.js +300 -0
  98. package/dist/channel-B9Z1yOBL.js +1100 -0
  99. package/dist/channel-BQalh8q5.js +1320 -0
  100. package/dist/channel-B_D0qB8f.js +297 -0
  101. package/dist/channel-CveiiHEq.js +226 -0
  102. package/dist/channel-DPRWC_X5.js +1802 -0
  103. package/dist/channel-DTNwXKB7.js +350 -0
  104. package/dist/channel-DsWHOdeO.js +840 -0
  105. package/dist/channel-IYn5sG7l.js +453 -0
  106. package/dist/channel-MwEUOERy.js +1174 -0
  107. package/dist/channel-add-wizard-De4DNba-.js +125 -0
  108. package/dist/channel-add-wizard-v9JYw-20.js +2 -0
  109. package/dist/channel-core-C3RFVpjy.js +5 -0
  110. package/dist/channel-geAqqK_e.js +491 -0
  111. package/dist/channel-inbound-BRCAVWH1.js +31 -0
  112. package/dist/channel-plugin-resolution-BYpxL2mS.js +2 -0
  113. package/dist/channel-plugin-resolution-Jy5eA_cD.js +153 -0
  114. package/dist/channel-plugin-runtime-B7guFbbq.js +771 -0
  115. package/dist/channel-runtime-B2HmUto-.js +425 -0
  116. package/dist/channel-selection.runtime.js +1 -1
  117. package/dist/channel-setup-DmnWuvUU.js +1297 -0
  118. package/dist/channel-zfFLswBu.js +595 -0
  119. package/dist/channel.runtime-60XStiek.js +2364 -0
  120. package/dist/channel.runtime-BK8atBx7.js +430 -0
  121. package/dist/channel.runtime-CjfgGDJR.js +576 -0
  122. package/dist/channel.runtime-Cuc72hD3.js +89 -0
  123. package/dist/channel.runtime-D4i6q9PJ.js +4 -0
  124. package/dist/channel.runtime-mLdKu3mE.js +42398 -0
  125. package/dist/channel.runtime.js +1 -1
  126. package/dist/channel.setup-BxdBjfQG.js +10 -0
  127. package/dist/channel2.runtime-DhBM75gc.js +109 -0
  128. package/dist/channel2.runtime.js +1 -1
  129. package/dist/channels-YP0r9T7z.js +733 -0
  130. package/dist/channels-cli-BA8x-0ie.js +268 -0
  131. package/dist/chat-C-K_PnVS.js +2830 -0
  132. package/dist/clawbot-cli-CcTWZznd.js +9 -0
  133. package/dist/clawhub-Dg91MiOl.js +400 -0
  134. package/dist/cli/daemon-cli.js +3 -3
  135. package/dist/cli-B9pz-wec.js +2 -0
  136. package/dist/cli-BDqmMCNa.js +219 -0
  137. package/dist/cli-BnjgRW4w.js +154 -0
  138. package/dist/cli-C6O2LqdN.js +683 -0
  139. package/dist/cli-CFANcv9h.js +2 -0
  140. package/dist/cli-D9yBNX96.js +3726 -0
  141. package/dist/cli-e4V7ix51.js +2 -0
  142. package/dist/cli-oSszUBF4.js +72 -0
  143. package/dist/cli-runner-ziqCSXFY.js +286 -0
  144. package/dist/cli-runner.runtime-B-P8SxLi.js +4 -0
  145. package/dist/cli-runner.runtime-BmqwbMTX.js +3 -0
  146. package/dist/cli-runner.runtime.js +1 -1
  147. package/dist/cli-startup-metadata.json +2 -2
  148. package/dist/cli.runtime-4isBQRbc.js +1261 -0
  149. package/dist/cli.runtime.js +1 -1
  150. package/dist/client-CcimlPth.js +138 -0
  151. package/dist/client-DQsu_IXu.js +723 -0
  152. package/dist/command-auth-BWQO7kca.js +76 -0
  153. package/dist/command-config-resolution-ClTknI2S.js +2 -0
  154. package/dist/command-config-resolution-CrkcVij4.js +23 -0
  155. package/dist/command-config-resolution.runtime-D6B4s-Uv.js +2 -0
  156. package/dist/command-config-resolution.runtime.js +1 -1
  157. package/dist/command-execution-startup-CQcKEDhz.js +324 -0
  158. package/dist/command-registry-B_U-oRjT.js +4 -0
  159. package/dist/command-registry-CJ8y08cJ.js +9 -0
  160. package/dist/command-registry-core-CjYDA5Hb.js +106 -0
  161. package/dist/command-secret-gateway-BN5JN_4V.js +528 -0
  162. package/dist/command-status.runtime-BwGSaGwK.js +87 -0
  163. package/dist/command-status.runtime.js +1 -1
  164. package/dist/commands-acp-Di5EZJSo.js +77 -0
  165. package/dist/commands-compact.runtime-Dm1rBnbf.js +10 -0
  166. package/dist/commands-compact.runtime.js +1 -1
  167. package/dist/commands-core.runtime-DjL6pkWU.js +2 -0
  168. package/dist/commands-core.runtime.js +1 -1
  169. package/dist/commands-handlers.runtime-C8uzW3Za.js +4599 -0
  170. package/dist/commands-handlers.runtime.js +1 -1
  171. package/dist/commands-reset-hooks-7h-poKws.js +135 -0
  172. package/dist/commands-status-D_wsDlQe.js +16 -0
  173. package/dist/commands-status.runtime-BYT0Y8Xk.js +3 -0
  174. package/dist/commands-status.runtime.js +1 -1
  175. package/dist/commands-subagents-control.runtime-BozyiWar.js +3 -0
  176. package/dist/commands-subagents-control.runtime-DDCzt8Ub.js +2 -0
  177. package/dist/commands-subagents-control.runtime.js +1 -1
  178. package/dist/commands-system-prompt-ClkTGvNr.js +157 -0
  179. package/dist/commands-system-prompt-qRoqhQKL.js +2 -0
  180. package/dist/commands.runtime-DdZErCma.js +167 -0
  181. package/dist/commands.runtime.js +1 -1
  182. package/dist/compact-BCs9ORLb.js +1096 -0
  183. package/dist/compact.runtime-DvG7GWYV.js +12 -0
  184. package/dist/compact.runtime.js +1 -1
  185. package/dist/completion-cli-C4J7V5YR.js +328 -0
  186. package/dist/config-B0uPLzV0.js +252 -0
  187. package/dist/config-cli-Bt8euI41.js +1078 -0
  188. package/dist/config-guard-DUDovz1_.js +96 -0
  189. package/dist/config-runtime-BnYU3hOw.js +32 -0
  190. package/dist/configure-BIB6QKXD.js +2 -0
  191. package/dist/configure-DuXRvaw-.js +1252 -0
  192. package/dist/connect-options-DdLRs3mC.js +699 -0
  193. package/dist/control-auth-BboB6-Q9.js +125 -0
  194. package/dist/control-service-zISWiuJ_.js +156 -0
  195. package/dist/control-ui/assets/agents-JC5PtqrV.js +1125 -0
  196. package/dist/control-ui/assets/canvas-BOLwH2XE.js +274 -0
  197. package/dist/control-ui/assets/channel-config-extras-DndsWi2n.js +2 -0
  198. package/dist/control-ui/assets/channels-DehEkmqb.js +198 -0
  199. package/dist/control-ui/assets/contacts-CuFuG0IF.js +49 -0
  200. package/dist/control-ui/assets/cron-DOmGA0e5.js +250 -0
  201. package/dist/control-ui/assets/de-CJg8xmlK.js +2 -0
  202. package/dist/control-ui/assets/debug-BmuUKCSJ.js +94 -0
  203. package/dist/control-ui/assets/es-C4Q-2wY3.js +2 -0
  204. package/dist/control-ui/assets/fr-C8HMIYz8.js +2 -0
  205. package/dist/control-ui/assets/i18n-Cc8tlfvD.js +3 -0
  206. package/dist/control-ui/assets/id-Cfarvm3I.js +2 -0
  207. package/dist/control-ui/assets/index-rW3Q6M8T.js +5981 -0
  208. package/dist/control-ui/assets/instances-Cx7hEWzW.js +57 -0
  209. package/dist/control-ui/assets/ja-JP-F9ReJBkI.js +2 -0
  210. package/dist/control-ui/assets/ko-COLp1JKa.js +2 -0
  211. package/dist/control-ui/assets/logs-DB-Z5vcW.js +74 -0
  212. package/dist/control-ui/assets/mcp-Cpcduudl.js +417 -0
  213. package/dist/control-ui/assets/memory-DnzEGr6j.js +50 -0
  214. package/dist/control-ui/assets/memory-graph-DyR9Uhz0.js +30 -0
  215. package/dist/control-ui/assets/models-DiDA_80_.js +86 -0
  216. package/dist/control-ui/assets/nodes-DBKCXfee.js +654 -0
  217. package/dist/control-ui/assets/pl-BYPzLeb4.js +2 -0
  218. package/dist/control-ui/assets/plugins-CwfOfaNX.js +259 -0
  219. package/dist/control-ui/assets/presenter-5bq6-zJE.js +2 -0
  220. package/dist/control-ui/assets/pt-BR-DTBFbuCo.js +2 -0
  221. package/dist/control-ui/assets/sessions-B32pl2IK.js +56 -0
  222. package/dist/control-ui/assets/skills-UF7TyQK4.js +294 -0
  223. package/dist/control-ui/assets/skills-shared-B74z1P-E.js +11 -0
  224. package/dist/control-ui/assets/th-CIjDBcNT.js +2 -0
  225. package/dist/control-ui/assets/tr-NCpkXtTg.js +2 -0
  226. package/dist/control-ui/assets/uk-DvS1vsmH.js +2 -0
  227. package/dist/control-ui/assets/wallet-RKPn2MRs.js +302 -0
  228. package/dist/control-ui/assets/zh-CN-SfnMOQr0.js +2 -0
  229. package/dist/control-ui/assets/zh-TW-CkQgNjXi.js +2 -0
  230. package/dist/control-ui/index.html +2 -2
  231. package/dist/control-ui-CKQ17fcd.js +1043 -0
  232. package/dist/conversation-id-BzYtax7n.js +235 -0
  233. package/dist/conversation-id-HBz3v6j3.js +38 -0
  234. package/dist/conversation-runtime-CkcxSb_S.js +31 -0
  235. package/dist/core-DxVEjt5f.js +275 -0
  236. package/dist/create-B9OOGa90.js +80 -0
  237. package/dist/cron-cli-CAkqablA.js +713 -0
  238. package/dist/daemon-cli-CCC_5IkN.js +12 -0
  239. package/dist/dashboard-Bqpn6xD_.js +81 -0
  240. package/dist/dashboard-Cd6TkhpW.js +2 -0
  241. package/dist/delegate-D7D8iTtT.js +64 -0
  242. package/dist/deliver-I8Ifd1yR.js +3 -0
  243. package/dist/deliver-Zphc65zr.js +747 -0
  244. package/dist/deliver-runtime-DQyfYkCs.js +2 -0
  245. package/dist/delivery-outbound.runtime-Bs9x6LSS.js +6 -0
  246. package/dist/delivery-outbound.runtime.js +1 -1
  247. package/dist/delivery.runtime-Cx3qn7Hc.js +253 -0
  248. package/dist/delivery.runtime.js +1 -1
  249. package/dist/detached-task-runtime-D2jixP5C.js +73 -0
  250. package/dist/devices-cli-CMnaKl01.js +498 -0
  251. package/dist/diagnostics-B8Z9UWlG.js +154 -0
  252. package/dist/direct-dm-c4Qb2Nzg.js +64 -0
  253. package/dist/directive-handling.fast-lane-DuuCgCI2.js +66 -0
  254. package/dist/directive-handling.impl-BiJain1b.js +2 -0
  255. package/dist/directive-handling.impl-CYw76-Ag.js +703 -0
  256. package/dist/directive-handling.model-selection-BNnOIh0D.js +114 -0
  257. package/dist/directive-handling.persist.runtime-DWnMoAjn.js +215 -0
  258. package/dist/directive-handling.persist.runtime.js +1 -1
  259. package/dist/directory-cli-CinbUxv4.js +240 -0
  260. package/dist/dispatch-acp-BL2QahHP.js +981 -0
  261. package/dist/dispatch-acp-manager.runtime-CynWPlJS.js +3 -0
  262. package/dist/dispatch-acp-manager.runtime.js +1 -1
  263. package/dist/dispatch-acp-media.runtime-CrC5nXXy.js +4 -0
  264. package/dist/dispatch-acp-media.runtime.js +1 -1
  265. package/dist/dispatch-acp-session.runtime-C_GFMR0r.js +2 -0
  266. package/dist/dispatch-acp-session.runtime.js +1 -1
  267. package/dist/dispatch-acp.runtime-OwR8G8Qt.js +19 -0
  268. package/dist/dispatch-acp.runtime.js +1 -1
  269. package/dist/dispatch-r6Uv7puk.js +1131 -0
  270. package/dist/doctor-config-flow-BQjLEW5b.js +420 -0
  271. package/dist/doctor-config-preflight-B3VVSleh.js +63 -0
  272. package/dist/doctor-config-preflight-BBOEq7ti.js +2 -0
  273. package/dist/doctor-device-pairing-GsLelCah.js +307 -0
  274. package/dist/doctor-gateway-daemon-flow-Bj6Y5WoB.js +250 -0
  275. package/dist/doctor-gateway-health-D7WY6zgb.js +63 -0
  276. package/dist/doctor-health-C9GRQaPA.js +59 -0
  277. package/dist/doctor-health-contributions-Dk9ho6TO.js +493 -0
  278. package/dist/doctor-prompter-Ct6Jv52M.js +56 -0
  279. package/dist/doctor-sandbox-DAb-mQpy.js +194 -0
  280. package/dist/doctor-state-migrations-36dXc9ct.js +2 -0
  281. package/dist/doctor-workspace-status-CJCfWEI6.js +75 -0
  282. package/dist/dreaming-_hTKF5lN.js +1582 -0
  283. package/dist/dreaming-narrative-D5XTDttN.js +596 -0
  284. package/dist/embedded-gateway-stub.runtime-CEmoodA9.js +9 -0
  285. package/dist/embedded-gateway-stub.runtime.js +1 -1
  286. package/dist/embedding-provider-B9F-kCH3.js +118 -0
  287. package/dist/embeddings-BCVqTyaZ.js +215 -0
  288. package/dist/embeddings-http-CCsd7vWB.js +205 -0
  289. package/dist/entry.js +2 -2
  290. package/dist/exec-approval-forwarder.runtime-CMniJyXX.js +3 -0
  291. package/dist/exec-approval-forwarder.runtime.js +1 -1
  292. package/dist/exec-approvals-cli-ClDMlOmM.js +498 -0
  293. package/dist/exec-defaults-BWb7bhoE.js +2 -0
  294. package/dist/exec-defaults-CE8PArh-.js +67 -0
  295. package/dist/execute.runtime-Bhup95bB.js +1359 -0
  296. package/dist/execute.runtime.js +1 -1
  297. package/dist/extensionAPI.js +3 -3
  298. package/dist/extensions/active-memory/index.js +3 -3
  299. package/dist/extensions/alibaba/index.js +1 -1
  300. package/dist/extensions/alibaba/video-generation-provider.js +1 -1
  301. package/dist/extensions/arcee/index.js +2 -2
  302. package/dist/extensions/bluebubbles/api.js +3 -3
  303. package/dist/extensions/bluebubbles/channel-plugin-api.js +1 -1
  304. package/dist/extensions/browser/browser-bridge.js +1 -1
  305. package/dist/extensions/browser/browser-config.js +4 -4
  306. package/dist/extensions/browser/browser-control-auth.js +2 -2
  307. package/dist/extensions/browser/browser-doctor.js +2 -2
  308. package/dist/extensions/browser/browser-maintenance.js +2 -2
  309. package/dist/extensions/browser/browser-profiles.js +2 -2
  310. package/dist/extensions/browser/browser-runtime-api.js +10 -10
  311. package/dist/extensions/browser/index.js +1 -1
  312. package/dist/extensions/browser/plugin-registration.js +1 -1
  313. package/dist/extensions/browser/register.runtime.js +3 -3
  314. package/dist/extensions/browser/runtime-api.js +11 -11
  315. package/dist/extensions/browser/test-support.js +1 -1
  316. package/dist/extensions/byteplus/index.js +3 -3
  317. package/dist/extensions/byteplus/video-generation-provider.js +1 -1
  318. package/dist/extensions/chutes/index.js +4 -4
  319. package/dist/extensions/cloudflare-ai-gateway/api.js +1 -1
  320. package/dist/extensions/cloudflare-ai-gateway/catalog-provider.js +1 -1
  321. package/dist/extensions/cloudflare-ai-gateway/index.js +2 -2
  322. package/dist/extensions/comfy/image-generation-provider.js +2 -2
  323. package/dist/extensions/comfy/index.js +5 -5
  324. package/dist/extensions/comfy/music-generation-provider.js +1 -1
  325. package/dist/extensions/comfy/video-generation-provider.js +2 -2
  326. package/dist/extensions/comfy/workflow-runtime.js +1 -1
  327. package/dist/extensions/deepseek/index.js +1 -1
  328. package/dist/extensions/device-pair/api.js +2 -2
  329. package/dist/extensions/device-pair/index.js +4 -4
  330. package/dist/extensions/device-pair/notify.js +1 -1
  331. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  332. package/dist/extensions/device-pair/qr-image.js +2 -2
  333. package/dist/extensions/fal/image-generation-provider.js +1 -1
  334. package/dist/extensions/fal/index.js +3 -3
  335. package/dist/extensions/fal/provider-registration.js +1 -1
  336. package/dist/extensions/fal/test-api.js +2 -2
  337. package/dist/extensions/fal/video-generation-provider.js +1 -1
  338. package/dist/extensions/fireworks/index.js +1 -1
  339. package/dist/extensions/github-copilot/api.js +1 -1
  340. package/dist/extensions/github-copilot/auth.js +1 -1
  341. package/dist/extensions/github-copilot/embeddings.js +1 -1
  342. package/dist/extensions/github-copilot/index.js +4 -4
  343. package/dist/extensions/github-copilot/login.js +1 -1
  344. package/dist/extensions/github-copilot/register.runtime.js +2 -2
  345. package/dist/extensions/google-meet/index.js +6 -6
  346. package/dist/extensions/groq/index.js +1 -1
  347. package/dist/extensions/groq/media-understanding-provider.js +1 -1
  348. package/dist/extensions/groq/test-api.js +1 -1
  349. package/dist/extensions/huggingface/index.js +1 -1
  350. package/dist/extensions/image-generation-core/api.js +2 -2
  351. package/dist/extensions/imessage/api.js +4 -4
  352. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  353. package/dist/extensions/imessage/runtime-api.js +5 -5
  354. package/dist/extensions/imessage/test-api.js +1 -1
  355. package/dist/extensions/irc/api.js +2 -2
  356. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  357. package/dist/extensions/kilocode/index.js +1 -1
  358. package/dist/extensions/kimi-coding/index.js +2 -2
  359. package/dist/extensions/line/api.js +2 -2
  360. package/dist/extensions/line/channel-plugin-api.js +1 -1
  361. package/dist/extensions/line/contract-api.js +1 -1
  362. package/dist/extensions/line/runtime-api.js +4 -4
  363. package/dist/extensions/line/setup-api.js +1 -1
  364. package/dist/extensions/litellm/index.js +1 -1
  365. package/dist/extensions/llm-task/index.js +2 -2
  366. package/dist/extensions/lmstudio/api.js +2 -2
  367. package/dist/extensions/lmstudio/index.js +3 -3
  368. package/dist/extensions/lmstudio/memory-embedding-adapter.js +1 -1
  369. package/dist/extensions/lmstudio/runtime-api.js +1 -1
  370. package/dist/extensions/lobster/index.js +3 -3
  371. package/dist/extensions/lobster/runtime-api.js +1 -1
  372. package/dist/extensions/mattermost/api.js +1 -1
  373. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  374. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  375. package/dist/extensions/mattermost/policy-api.js +1 -1
  376. package/dist/extensions/mattermost/runtime-api.js +7 -7
  377. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  378. package/dist/extensions/media-understanding-core/runtime-api.js +2 -2
  379. package/dist/extensions/memory-core/api.js +1 -1
  380. package/dist/extensions/memory-core/cli-metadata.js +2 -2
  381. package/dist/extensions/memory-core/index.js +3 -3
  382. package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
  383. package/dist/extensions/memory-lancedb/index.js +1 -1
  384. package/dist/extensions/memory-wiki/cli-metadata.js +1 -1
  385. package/dist/extensions/memory-wiki/index.js +1 -1
  386. package/dist/extensions/microsoft/index.js +1 -1
  387. package/dist/extensions/microsoft/speech-provider.js +1 -1
  388. package/dist/extensions/microsoft/test-api.js +1 -1
  389. package/dist/extensions/microsoft-foundry/auth.js +1 -1
  390. package/dist/extensions/microsoft-foundry/cli.js +1 -1
  391. package/dist/extensions/microsoft-foundry/index.js +1 -1
  392. package/dist/extensions/microsoft-foundry/onboard.js +2 -2
  393. package/dist/extensions/microsoft-foundry/provider.js +1 -1
  394. package/dist/extensions/microsoft-foundry/runtime.js +1 -1
  395. package/dist/extensions/microsoft-foundry/shared-runtime.js +2 -2
  396. package/dist/extensions/microsoft-foundry/shared.js +1 -1
  397. package/dist/extensions/minimax/image-generation-provider.js +1 -1
  398. package/dist/extensions/minimax/index.js +6 -6
  399. package/dist/extensions/minimax/media-understanding-provider.js +1 -1
  400. package/dist/extensions/minimax/music-generation-provider.js +1 -1
  401. package/dist/extensions/minimax/oauth.js +1 -1
  402. package/dist/extensions/minimax/oauth.runtime.js +1 -1
  403. package/dist/extensions/minimax/provider-registration.js +1 -1
  404. package/dist/extensions/minimax/speech-provider.js +1 -1
  405. package/dist/extensions/minimax/test-api.js +4 -4
  406. package/dist/extensions/minimax/video-generation-provider.js +1 -1
  407. package/dist/extensions/mistral/index.js +2 -2
  408. package/dist/extensions/mistral/media-understanding-provider.js +1 -1
  409. package/dist/extensions/mistral/test-api.js +1 -1
  410. package/dist/extensions/moonshot/index.js +2 -2
  411. package/dist/extensions/moonshot/media-understanding-provider.js +1 -1
  412. package/dist/extensions/moonshot/test-api.js +1 -1
  413. package/dist/extensions/msteams/api.js +1 -1
  414. package/dist/extensions/msteams/channel-plugin-api.js +1 -1
  415. package/dist/extensions/msteams/runtime-api.js +4 -4
  416. package/dist/extensions/msteams/test-api.js +1 -1
  417. package/dist/extensions/nextcloud-talk/api.js +1 -1
  418. package/dist/extensions/nextcloud-talk/channel-plugin-api.js +1 -1
  419. package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
  420. package/dist/extensions/nvidia/index.js +1 -1
  421. package/dist/extensions/ollama/api.js +3 -3
  422. package/dist/extensions/ollama/index.js +9 -9
  423. package/dist/extensions/ollama/runtime-api.js +2 -2
  424. package/dist/extensions/ollama/web-search-provider.js +1 -1
  425. package/dist/extensions/openai/api.js +2 -2
  426. package/dist/extensions/openai/image-generation-provider.js +1 -1
  427. package/dist/extensions/openai/index.js +6 -6
  428. package/dist/extensions/openai/media-understanding-provider.js +1 -1
  429. package/dist/extensions/openai/openai-codex-provider.js +1 -1
  430. package/dist/extensions/openai/openai-provider.js +1 -1
  431. package/dist/extensions/openai/register.runtime.js +4 -4
  432. package/dist/extensions/openai/test-api.js +3 -3
  433. package/dist/extensions/openai/video-generation-provider.js +1 -1
  434. package/dist/extensions/opencode/index.js +2 -2
  435. package/dist/extensions/opencode/media-understanding-provider.js +1 -1
  436. package/dist/extensions/opencode-go/index.js +2 -2
  437. package/dist/extensions/opencode-go/media-understanding-provider.js +1 -1
  438. package/dist/extensions/openrouter/api.js +1 -1
  439. package/dist/extensions/openrouter/image-generation-provider.js +1 -1
  440. package/dist/extensions/openrouter/index.js +4 -4
  441. package/dist/extensions/openrouter/media-understanding-provider.js +1 -1
  442. package/dist/extensions/openrouter/register.runtime.js +3 -3
  443. package/dist/extensions/openrouter/test-api.js +2 -2
  444. package/dist/extensions/openshell/index.js +3 -3
  445. package/dist/extensions/qianfan/index.js +1 -1
  446. package/dist/extensions/qwen/index.js +3 -3
  447. package/dist/extensions/qwen/media-understanding-provider.js +1 -1
  448. package/dist/extensions/qwen/test-api.js +2 -2
  449. package/dist/extensions/qwen/video-generation-provider.js +1 -1
  450. package/dist/extensions/runway/index.js +1 -1
  451. package/dist/extensions/runway/video-generation-provider.js +1 -1
  452. package/dist/extensions/signal/api.js +6 -6
  453. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  454. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  455. package/dist/extensions/signal/runtime-api.js +9 -9
  456. package/dist/extensions/skill-workshop/api.js +1 -1
  457. package/dist/extensions/skill-workshop/index.js +2 -2
  458. package/dist/extensions/speech-core/runtime-api.js +1 -1
  459. package/dist/extensions/stepfun/index.js +2 -2
  460. package/dist/extensions/synology-chat/api.js +1 -1
  461. package/dist/extensions/synology-chat/channel-plugin-api.js +1 -1
  462. package/dist/extensions/synthetic/index.js +1 -1
  463. package/dist/extensions/talk-voice/index.js +1 -1
  464. package/dist/extensions/tencent/index.js +2 -2
  465. package/dist/extensions/thread-ownership/index.js +1 -1
  466. package/dist/extensions/tlon/api.js +2 -2
  467. package/dist/extensions/tlon/channel-plugin-api.js +1 -1
  468. package/dist/extensions/tlon/runtime-api.js +1 -1
  469. package/dist/extensions/tlon/test-api.js +1 -1
  470. package/dist/extensions/together/index.js +2 -2
  471. package/dist/extensions/together/video-generation-provider.js +1 -1
  472. package/dist/extensions/twitch/api.js +1 -1
  473. package/dist/extensions/twitch/channel-plugin-api.js +1 -1
  474. package/dist/extensions/twitch/setup-plugin-api.js +1 -1
  475. package/dist/extensions/venice/index.js +1 -1
  476. package/dist/extensions/vercel-ai-gateway/index.js +1 -1
  477. package/dist/extensions/voice-call/index.js +1 -1
  478. package/dist/extensions/voice-call/runtime-entry.js +1 -1
  479. package/dist/extensions/volcengine/index.js +2 -2
  480. package/dist/extensions/vydra/image-generation-provider.js +1 -1
  481. package/dist/extensions/vydra/index.js +4 -4
  482. package/dist/extensions/vydra/video-generation-provider.js +1 -1
  483. package/dist/extensions/xai/api.js +2 -2
  484. package/dist/extensions/xai/code-execution.js +2 -2
  485. package/dist/extensions/xai/image-generation-provider.js +1 -1
  486. package/dist/extensions/xai/index.js +6 -6
  487. package/dist/extensions/xai/speech-provider.js +1 -1
  488. package/dist/extensions/xai/tts.js +1 -1
  489. package/dist/extensions/xai/video-generation-provider.js +1 -1
  490. package/dist/extensions/xai/x-search.js +2 -2
  491. package/dist/extensions/xiaomi/index.js +1 -1
  492. package/dist/extensions/zai/index.js +2 -2
  493. package/dist/extensions/zai/media-understanding-provider.js +1 -1
  494. package/dist/extensions/zai/test-api.js +1 -1
  495. package/dist/extensions/zalo/api.js +3 -3
  496. package/dist/extensions/zalo/channel-plugin-api.js +1 -1
  497. package/dist/extensions/zalo/runtime-api.js +2 -2
  498. package/dist/extensions/zalo/setup-api.js +2 -2
  499. package/dist/extensions/zalouser/api.js +3 -3
  500. package/dist/extensions/zalouser/channel-plugin-api.js +1 -1
  501. package/dist/extensions/zalouser/runtime-api.js +7 -7
  502. package/dist/extensions/zalouser/setup-plugin-api.js +1 -1
  503. package/dist/extensions/zalouser/test-api.js +1 -1
  504. package/dist/fallbacks-7zSQjTV3.js +31 -0
  505. package/dist/fallbacks-CZiqVR5O.js +2 -0
  506. package/dist/fallbacks-shared-ChkX-wC9.js +111 -0
  507. package/dist/gateway-CHyZ16Py.js +115 -0
  508. package/dist/gateway-cli-Ddf-bjxV.js +1283 -0
  509. package/dist/gateway-rpc-DksPpMA7.js +14 -0
  510. package/dist/gateway-rpc.runtime-BKaQsdOu.js +23 -0
  511. package/dist/gateway-rpc.runtime.js +1 -1
  512. package/dist/gateway-runtime-Ca4l5F_e.js +15 -0
  513. package/dist/gateway-status-CTPWttLS.js +584 -0
  514. package/dist/genesis-tools-Bkxp7zlI.js +9435 -0
  515. package/dist/genesis-tools.runtime-BCkQJQBx.js +2 -0
  516. package/dist/genesis-tools.runtime.js +1 -1
  517. package/dist/get-reply-HzKdsGO7.js +3946 -0
  518. package/dist/get-reply-from-config.runtime-C5ISSvQ1.js +2 -0
  519. package/dist/get-reply-from-config.runtime.js +1 -1
  520. package/dist/gmail-watcher-lifecycle-BYRHDXCT.js +2 -0
  521. package/dist/graph-users-BVVUU02O.js +1337 -0
  522. package/dist/health-3Ot3RyLe.js +420 -0
  523. package/dist/health-B1Ww7M60.js +3 -0
  524. package/dist/health-route--L24U5vY.js +2 -0
  525. package/dist/health-route-DQ3RbNHQ.js +41 -0
  526. package/dist/hooks-cli-CsJbTM0O.js +433 -0
  527. package/dist/http-endpoint-helpers-D5HkMFwp.js +41 -0
  528. package/dist/http-utils-LFOvdepz.js +924 -0
  529. package/dist/image-fallbacks--ElXneWp.js +31 -0
  530. package/dist/image-fallbacks-D3vJILOu.js +2 -0
  531. package/dist/image-generation-core-DasXukAP.js +18 -0
  532. package/dist/image-generation-core.auth.runtime.js +1 -1
  533. package/dist/image-generation-provider-BUYDznhO.js +157 -0
  534. package/dist/image-generation-provider-CZsEm9qP.js +137 -0
  535. package/dist/image-generation-provider-DfAtOfEj.js +95 -0
  536. package/dist/image-generation-provider-Dksuo9OZ.js +529 -0
  537. package/dist/image-generation-provider-TlVk_XqK.js +63 -0
  538. package/dist/image-generation-provider-YwugArNw.js +274 -0
  539. package/dist/image-generation-provider-bWlq5yUE.js +228 -0
  540. package/dist/image-runtime-CswgJNvs.js +9 -0
  541. package/dist/inbound-reply-dispatch-B7wRXjgc.js +73 -0
  542. package/dist/inbound.runtime-Bw0JSbxR.js +4 -0
  543. package/dist/inbound.runtime-DjvZZHXI.js +3 -0
  544. package/dist/inbound.runtime.js +1 -1
  545. package/dist/index.js +2 -2
  546. package/dist/infra-runtime-CBfd1WMP.js +38 -0
  547. package/dist/init-D0hOJH3x.js +59 -0
  548. package/dist/install-CYvCH-s3.js +726 -0
  549. package/dist/install-security-scan-B7ZoC2Vw.js +26 -0
  550. package/dist/install-security-scan.runtime-iZsF-J1u.js +671 -0
  551. package/dist/install-security-scan.runtime.js +1 -1
  552. package/dist/install.runtime-BAqg9YWO.js +27 -0
  553. package/dist/install.runtime-Cc9Bf7A6.js +12 -0
  554. package/dist/install.runtime.js +1 -1
  555. package/dist/jobs-BIi6klWl.js +729 -0
  556. package/dist/library-oLeJ7WB2.js +45 -0
  557. package/dist/lifecycle-CeE5vcbI.js +571 -0
  558. package/dist/lifecycle-CqOQyQkN.js +229 -0
  559. package/dist/lifecycle.runtime-3bkEDR0o.js +2 -0
  560. package/dist/lifecycle.runtime.js +1 -1
  561. package/dist/list-C3cLeCpB.js +2 -0
  562. package/dist/list-CcZ_ONLT.js +2 -0
  563. package/dist/list-DUXsFAZJ.js +1212 -0
  564. package/dist/list-gnrIqPtd.js +131 -0
  565. package/dist/list.probe-BwRgShwM.js +419 -0
  566. package/dist/live-model-switch-CWgg2Ggb.js +336 -0
  567. package/dist/llm-slug-generator-BkDTThCe.js +79 -0
  568. package/dist/llm-slug-generator.js +1 -1
  569. package/dist/load-config-CfZQrUUz.js +35 -0
  570. package/dist/loader-DsEya2Rd.js +222 -0
  571. package/dist/local-dispatch.runtime-CtXGZ70F.js +8 -0
  572. package/dist/local-dispatch.runtime.js +1 -1
  573. package/dist/login-M0JiZwmc.js +108 -0
  574. package/dist/logs-cli-zd_9yCKn.js +265 -0
  575. package/dist/logs-cli.runtime-BWvHh5zg.js +2 -0
  576. package/dist/logs-cli.runtime.js +1 -1
  577. package/dist/main-session-restart-recovery-Bnvjo9E1.js +206 -0
  578. package/dist/managed-image-attachments-Cib67JTY.js +2 -0
  579. package/dist/managed-image-attachments-Pl-_Wh-s.js +635 -0
  580. package/dist/manager-CfFNGdWA.js +2057 -0
  581. package/dist/manager-TXSNaq3B.js +2 -0
  582. package/dist/markdown-to-line-C83mDLjZ.js +790 -0
  583. package/dist/mcp/plugin-tools-serve.js +1 -1
  584. package/dist/mcp-cli-CNy5N1fa.js +725 -0
  585. package/dist/mcp-http-Cp3nlyRC.js +529 -0
  586. package/dist/mcp-oauth-embedded.runtime-Bg_5jTnW.js +111 -0
  587. package/dist/mcp-oauth-embedded.runtime.js +1 -0
  588. package/dist/media-runtime-BetXjDy_.js +329 -0
  589. package/dist/media-understanding-PrCTBqs6.js +85 -0
  590. package/dist/media-understanding-provider-BOJyh6FF.js +85 -0
  591. package/dist/media-understanding-provider-BQqWS6FP.js +18 -0
  592. package/dist/media-understanding-provider-BVI5_wpJ.js +12 -0
  593. package/dist/media-understanding-provider-BvANUUsD.js +37 -0
  594. package/dist/media-understanding-provider-CmJsqky4.js +69 -0
  595. package/dist/media-understanding-provider-D160isav.js +28 -0
  596. package/dist/media-understanding-provider-DLdtS2i0.js +12 -0
  597. package/dist/media-understanding-provider-DbYma1pc.js +21 -0
  598. package/dist/media-understanding-provider-DgKlDcus.js +18 -0
  599. package/dist/media-understanding-provider-Dt4kGn2a.js +13 -0
  600. package/dist/media-understanding-runtime-7Pt0cFob.js +2 -0
  601. package/dist/memory-core-host-runtime-cli-BegfMQ60.js +9 -0
  602. package/dist/memory-embedding-adapter-bqPa42NQ.js +123 -0
  603. package/dist/memory-host-search-595fbsH5.js +12 -0
  604. package/dist/memory-host-search.runtime.js +1 -1
  605. package/dist/message-BEIYueeC.js +232 -0
  606. package/dist/message-action-runner-BMAw7gfU.js +2 -0
  607. package/dist/message-action-runner-DbqkVVXA.js +1407 -0
  608. package/dist/message-actions-CagfUya_.js +143 -0
  609. package/dist/message.config.runtime.js +1 -1
  610. package/dist/message.gateway.runtime-8N00rzUd.js +2 -0
  611. package/dist/message.gateway.runtime.js +1 -1
  612. package/dist/method-scopes-TWVLEUXZ.js +239 -0
  613. package/dist/model-picker-DJQ_lN5J.js +3 -0
  614. package/dist/model-picker-f_kmCGgt.js +559 -0
  615. package/dist/model-picker.runtime-Bua1ZV3T.js +15 -0
  616. package/dist/model-picker.runtime.js +1 -1
  617. package/dist/model-selection-DRe0f5zo.js +212 -0
  618. package/dist/models-auth-status-dUVFT_f1.js +217 -0
  619. package/dist/models-cli-VqeddndJ.js +271 -0
  620. package/dist/models-http-PC5-c2lS.js +92 -0
  621. package/dist/models.fetch-CsIbuvYn.js +518 -0
  622. package/dist/monitor-BgwZHXAs.js +2 -0
  623. package/dist/monitor-BrGXztev.js +1661 -0
  624. package/dist/monitor-DXqHkIkY.js +788 -0
  625. package/dist/monitor-DoS0pnRS.js +671 -0
  626. package/dist/monitor-SUo0OdqH.js +1459 -0
  627. package/dist/monitor-auth-BjLpAGxu.js +207 -0
  628. package/dist/monitor-hVTP1bQv.js +1237 -0
  629. package/dist/monitor-processing-CIokCAUz.js +1974 -0
  630. package/dist/monitor.runtime-BU4RKNXx.js +2 -0
  631. package/dist/monitor.runtime.js +1 -1
  632. package/dist/monitor.webhook-DaTTjWrL.js +180 -0
  633. package/dist/msteams-CmdWCuQl.js +35 -0
  634. package/dist/music-generation-provider-D1C-gv82.js +63 -0
  635. package/dist/music-generation-provider-Da4aNlMi.js +170 -0
  636. package/dist/native-hook-relay-Crk4McKb.js +519 -0
  637. package/dist/nextcloud-talk-D23cNPfx.js +17 -0
  638. package/dist/node-cli-DQ2FAUD5.js +2276 -0
  639. package/dist/nodes-cli-rSfhRw3_.js +1046 -0
  640. package/dist/nodes-utils-DlayGjaD.js +84 -0
  641. package/dist/nodes.helpers-DDUs18Tb.js +34 -0
  642. package/dist/notify-BSOvLWmd.js +315 -0
  643. package/dist/oauth-CMgJwuws.js +2 -0
  644. package/dist/oauth-CkVdnYWF.js +152 -0
  645. package/dist/oauth-DyK5hAZs.js +139 -0
  646. package/dist/oauth-OBOUymgi.js +75 -0
  647. package/dist/oauth.flow-BLoyN3lV.js +3 -0
  648. package/dist/oauth.flow-DH06lWCO.js +45 -0
  649. package/dist/onboard-C-WpjREP.js +316 -0
  650. package/dist/onboard-CpNpQ0N8.js +70 -0
  651. package/dist/onboard-channels-BeLqCc-3.js +2 -0
  652. package/dist/onboard-channels-DvKo0QB_.js +3 -0
  653. package/dist/onboard-custom-BXb7qIWz.js +3 -0
  654. package/dist/onboard-custom-ClkyPqIy.js +271 -0
  655. package/dist/onboard-helpers-BSqq4yEX.js +204 -0
  656. package/dist/onboard-helpers-Cw8cHMwk.js +6 -0
  657. package/dist/onboard-interactive-CIJMPUNi.js +24 -0
  658. package/dist/onboard-non-interactive-CCGFunM1.js +635 -0
  659. package/dist/onboard-remote-BIFjzB0v.js +193 -0
  660. package/dist/onboard-remote-DdfKS44K.js +2 -0
  661. package/dist/onboard-skills-C9Oz7pMM.js +134 -0
  662. package/dist/onboard-skills-DFZIuIBM.js +2 -0
  663. package/dist/onboard-ygfHgwjs.js +2 -0
  664. package/dist/onboarding-plugin-install-CSJX8VZv.js +406 -0
  665. package/dist/openai-codex-provider-ChrCVEw6.js +472 -0
  666. package/dist/openai-http-V8-EZ-Tx.js +500 -0
  667. package/dist/openai-provider-CBFc7f3l.js +313 -0
  668. package/dist/opencode-D8fX4akZ.js +35 -0
  669. package/dist/openresponses-http-B2Z5eD7p.js +1128 -0
  670. package/dist/operator-approvals-client-DcLaJSYz.js +68 -0
  671. package/dist/outbound-runtime-BcayPyTD.js +5 -0
  672. package/dist/outbound.runtime-BioZr0Xk.js +2 -0
  673. package/dist/outbound.runtime.js +1 -1
  674. package/dist/pair-command-approve-CKQ5PFPa.js +44 -0
  675. package/dist/persistent-bindings.lifecycle-Cc3nJyXl.js +2 -0
  676. package/dist/persistent-bindings.lifecycle-DMUm3wFX.js +85 -0
  677. package/dist/pi-bundle-mcp-runtime-BxuXFq8N.js +2 -0
  678. package/dist/pi-bundle-mcp-runtime-ZvnA7GLK.js +854 -0
  679. package/dist/pi-bundle-mcp-tools-Cq0oKMGx.js +108 -0
  680. package/dist/pi-embedded-DLQZrdL6.js +2905 -0
  681. package/dist/pi-embedded-kfFiSGXN.js +4 -0
  682. package/dist/pi-embedded-subscribe.handlers.compaction.runtime-DRkY_7mg.js +23 -0
  683. package/dist/pi-embedded-subscribe.handlers.compaction.runtime.js +1 -1
  684. package/dist/pi-embedded.runtime-DXAilonb.js +4 -0
  685. package/dist/pi-embedded.runtime.js +1 -1
  686. package/dist/pi-tool-definition-adapter-D5M4iVmd.js +229 -0
  687. package/dist/pi-tools-CymfaKhy.js +1118 -0
  688. package/dist/pi-tools.before-tool-call-CBjigYgQ.js +2 -0
  689. package/dist/pi-tools.before-tool-call-CrhLIm2q.js +433 -0
  690. package/dist/plugin-DJ_g-ddv.js +12195 -0
  691. package/dist/plugin-enabled-CqvTLQjg.js +140 -0
  692. package/dist/plugin-install-DwdyYiEf.js +115 -0
  693. package/dist/plugin-install-config-policy-BGQ3WzJO.js +137 -0
  694. package/dist/plugin-install-ldcXmOz8.js +2 -0
  695. package/dist/plugin-install-plan-DXvNElN2.js +50 -0
  696. package/dist/plugin-registration-awDDNZjN.js +23 -0
  697. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  698. package/dist/plugin-sdk/acp-binding-runtime.js +1 -1
  699. package/dist/plugin-sdk/acp-runtime.js +3 -3
  700. package/dist/plugin-sdk/agent-harness-runtime.js +6 -6
  701. package/dist/plugin-sdk/agent-harness.js +7 -7
  702. package/dist/plugin-sdk/agent-runtime.js +2 -2
  703. package/dist/plugin-sdk/approval-gateway-runtime.js +2 -2
  704. package/dist/plugin-sdk/approval-handler-runtime.js +3 -3
  705. package/dist/plugin-sdk/approval-runtime.js +1 -1
  706. package/dist/plugin-sdk/browser-node-runtime.js +4 -4
  707. package/dist/plugin-sdk/browser-setup-tools.js +3 -3
  708. package/dist/plugin-sdk/browser-support.js +7 -7
  709. package/dist/plugin-sdk/channel-core.js +2 -2
  710. package/dist/plugin-sdk/channel-inbound.js +3 -3
  711. package/dist/plugin-sdk/command-auth.js +2 -2
  712. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  713. package/dist/plugin-sdk/compat.js +1 -1
  714. package/dist/plugin-sdk/config-runtime.js +3 -3
  715. package/dist/plugin-sdk/conversation-binding-runtime.js +1 -1
  716. package/dist/plugin-sdk/conversation-runtime.js +4 -4
  717. package/dist/plugin-sdk/core.js +2 -2
  718. package/dist/plugin-sdk/direct-dm.js +1 -1
  719. package/dist/plugin-sdk/gateway-runtime.js +3 -3
  720. package/dist/plugin-sdk/image-generation-core.js +2 -2
  721. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  722. package/dist/plugin-sdk/index.js +1 -1
  723. package/dist/plugin-sdk/infra-runtime.js +2 -2
  724. package/dist/plugin-sdk/irc.js +2 -2
  725. package/dist/plugin-sdk/matrix.js +1 -1
  726. package/dist/plugin-sdk/mattermost.js +2 -2
  727. package/dist/plugin-sdk/media-runtime.js +5 -5
  728. package/dist/plugin-sdk/media-understanding-runtime.js +2 -2
  729. package/dist/plugin-sdk/media-understanding.js +2 -2
  730. package/dist/plugin-sdk/memory-core-host-runtime-cli.js +2 -2
  731. package/dist/plugin-sdk/memory-core.js +2 -2
  732. package/dist/plugin-sdk/memory-host-search.js +1 -1
  733. package/dist/plugin-sdk/msteams.js +3 -3
  734. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  735. package/dist/plugin-sdk/nostr.js +1 -1
  736. package/dist/plugin-sdk/opencode.js +1 -1
  737. package/dist/plugin-sdk/outbound-runtime.js +2 -2
  738. package/dist/plugin-sdk/provider-auth-api-key.js +2 -2
  739. package/dist/plugin-sdk/provider-auth-login.js +1 -1
  740. package/dist/plugin-sdk/provider-auth.js +2 -2
  741. package/dist/plugin-sdk/provider-entry.js +1 -1
  742. package/dist/plugin-sdk/reply-dispatch-runtime.js +1 -1
  743. package/dist/plugin-sdk/reply-runtime.js +4 -4
  744. package/dist/plugin-sdk/runtime-doctor.js +1 -1
  745. package/dist/plugin-sdk/runtime-secret-resolution.js +1 -1
  746. package/dist/plugin-sdk/runtime.js +3 -3
  747. package/dist/plugin-sdk/sandbox.js +1 -1
  748. package/dist/plugin-sdk/session-store-runtime.js +1 -1
  749. package/dist/plugin-sdk/session-visibility.js +1 -1
  750. package/dist/plugin-sdk/skill-commands-runtime.js +1 -1
  751. package/dist/plugin-sdk/src/config/types.mcp.d.ts +13 -0
  752. package/dist/plugin-sdk/src/gateway/protocol/index.d.ts +29 -3
  753. package/dist/plugin-sdk/src/gateway/protocol/schema/mcp.d.ts +52 -0
  754. package/dist/plugin-sdk/src/gateway/protocol/schema/protocol-schemas.d.ts +52 -0
  755. package/dist/plugin-sdk/src/gateway/protocol/schema/types.d.ts +8 -0
  756. package/dist/plugin-sdk/testing.js +4 -4
  757. package/dist/plugin-sdk/tlon.js +1 -1
  758. package/dist/plugin-sdk/zalo.js +1 -1
  759. package/dist/plugin-sdk/zalouser.js +1 -1
  760. package/dist/plugin-service-Bcg-shsL.js +2893 -0
  761. package/dist/plugins/runtime/index.js +1 -1
  762. package/dist/plugins-cli-CUZMkYFB.js +584 -0
  763. package/dist/plugins-command-helpers-BGFL7yp7.js +107 -0
  764. package/dist/plugins-install-persist-Cp8tSsno.js +133 -0
  765. package/dist/plugins-update-command-Ds_N9qES.js +1057 -0
  766. package/dist/policy-DIf26_n6.js +328 -0
  767. package/dist/postinstall-inventory.json +711 -709
  768. package/dist/prepare.runtime-DCLXK1uq.js +807 -0
  769. package/dist/prepare.runtime.js +1 -1
  770. package/dist/probe-0w9S79sF.js +45 -0
  771. package/dist/probe-B1L2nZVS.js +243 -0
  772. package/dist/probe-BQT29JH7.js +74 -0
  773. package/dist/probe-CB6KR9ri.js +240 -0
  774. package/dist/probe-CWtFr2jl.js +2 -0
  775. package/dist/probe-CcBuLmYT.js +2205 -0
  776. package/dist/probe-DYqlJBSk.js +2 -0
  777. package/dist/probe-_IUalbC8.js +1443 -0
  778. package/dist/program-sXJs6Lyj.js +111 -0
  779. package/dist/prompt-select-styled-jucMgA5f.js +20 -0
  780. package/dist/protocol-DgMCJAA_.js +2586 -0
  781. package/dist/provider-BSqWTcoz.js +70 -0
  782. package/dist/provider-api-key-auth-C92t3JTu.js +131 -0
  783. package/dist/provider-api-key-auth.runtime.js +1 -1
  784. package/dist/provider-auth-api-key-zf0PU9U_.js +5 -0
  785. package/dist/provider-auth-choice-palZRKPG.js +228 -0
  786. package/dist/provider-auth-hCEy91hA.js +46 -0
  787. package/dist/provider-auth-login-D4MC4bs_.js +8 -0
  788. package/dist/provider-auth-login.runtime.js +1 -1
  789. package/dist/provider-dispatcher-9z9Dw59_.js +2 -0
  790. package/dist/provider-dispatcher-DyQNST2Z.js +22 -0
  791. package/dist/provider-entry-DZDgzWTU.js +106 -0
  792. package/dist/provider-model-defaults-DC1PMV0H.js +6 -0
  793. package/dist/provider-registration-BSHUosM7.js +218 -0
  794. package/dist/provider-registration-CA9-PRDk.js +37 -0
  795. package/dist/qr-cli-Dwc3sjiV.js +2 -0
  796. package/dist/qr-cli-hTiyQbbK.js +349 -0
  797. package/dist/qr-image-BDoVY1GF.js +2 -0
  798. package/dist/queue-BljsBBtU.js +409 -0
  799. package/dist/reaction-runtime-api-Q9NHKbpw.js +116 -0
  800. package/dist/reactions-DGczAFsd.js +998 -0
  801. package/dist/read-capability-YFf_CDLF.js +412 -0
  802. package/dist/register-service-commands-Dxwl01rR.js +71 -0
  803. package/dist/register.agent-Drovpr_f.js +248 -0
  804. package/dist/register.configure-BzQtmjqp.js +15 -0
  805. package/dist/register.maintenance-PRykY6qq.js +363 -0
  806. package/dist/register.message-Dw6OLnap.js +329 -0
  807. package/dist/register.onboard-CB7aqo8I.js +88 -0
  808. package/dist/register.runtime-5QpZP1PI.js +81 -0
  809. package/dist/register.runtime.js +1 -1
  810. package/dist/register.setup-GLc__3H1.js +150 -0
  811. package/dist/register.status-health-sessions-DuQnS6V7.js +1215 -0
  812. package/dist/register.subclis-Bupq6ckp.js +3 -0
  813. package/dist/register.subclis-Df0YvsXg.js +29 -0
  814. package/dist/register.subclis-core-CK63Nor4.js +249 -0
  815. package/dist/reply-dispatch-runtime-D63ANCTQ.js +13 -0
  816. package/dist/reply-media-paths.runtime-C6-V86g1.js +146 -0
  817. package/dist/reply-media-paths.runtime-Cmms8y5S.js +2 -0
  818. package/dist/reply-media-paths.runtime.js +1 -1
  819. package/dist/reply-runtime-CLq8xugv.js +10 -0
  820. package/dist/reply.runtime-FitoWYiX.js +2 -0
  821. package/dist/reply.runtime.js +1 -1
  822. package/dist/resolve-BHmKuinY.js +259 -0
  823. package/dist/response-generator-BxzbAKHi.js +175 -0
  824. package/dist/restart-health-CNE6ENF8.js +202 -0
  825. package/dist/restart-health-DriNCEEo.js +2 -0
  826. package/dist/root-help-BsG62TUK.js +44 -0
  827. package/dist/route-reply-EPkWewCQ.js +162 -0
  828. package/dist/route-reply.runtime-Rem8ixbJ.js +2 -0
  829. package/dist/route-reply.runtime.js +1 -1
  830. package/dist/routes-B8SmZM_C.js +3341 -0
  831. package/dist/routes-CVtIuQaj.js +2 -0
  832. package/dist/rpc-AJw8-VEF.js +61 -0
  833. package/dist/rpc.runtime-NzXXr3IH.js +21 -0
  834. package/dist/rpc.runtime.js +1 -1
  835. package/dist/run-auth-profile.runtime-DrFMFMa5.js +2 -0
  836. package/dist/run-auth-profile.runtime.js +1 -1
  837. package/dist/run-delivery.runtime-DDc5pTuc.js +530 -0
  838. package/dist/run-delivery.runtime.js +1 -1
  839. package/dist/run-embedded.runtime-BlLE0DKl.js +4 -0
  840. package/dist/run-embedded.runtime.js +1 -1
  841. package/dist/run-execution-cli.runtime-Dx9bn2nL.js +4 -0
  842. package/dist/run-execution-cli.runtime.js +1 -1
  843. package/dist/run-executor.runtime-Bx0-xr66.js +277 -0
  844. package/dist/run-executor.runtime.js +1 -1
  845. package/dist/run-main-Q7WXDun9.js +567 -0
  846. package/dist/run-subagent-registry.runtime-DN441nGA.js +2 -0
  847. package/dist/run-subagent-registry.runtime.js +1 -1
  848. package/dist/run-wait-DOOBZLr5.js +135 -0
  849. package/dist/runner-B8D0Coak.js +966 -0
  850. package/dist/runner.entries-DZUGr24v.js +604 -0
  851. package/dist/runtime-B56xKFjA.js +9 -0
  852. package/dist/runtime-BshnyUPo.js +116 -0
  853. package/dist/runtime-CnTeeNB7.js +72 -0
  854. package/dist/runtime-D--xK0Me.js +961 -0
  855. package/dist/runtime-DFBduVee.js +2 -0
  856. package/dist/runtime-api-BGOAhjcp.js +9 -0
  857. package/dist/runtime-api-CcUMXjjy.js +14 -0
  858. package/dist/runtime-api-L9lB-rDz.js +4 -0
  859. package/dist/runtime-api-ap0gPIKQ.js +9 -0
  860. package/dist/runtime-co7Um4tt.js +263 -0
  861. package/dist/runtime-embedded-pi.runtime-CQ5TsVlh.js +2 -0
  862. package/dist/runtime-embedded-pi.runtime.js +1 -1
  863. package/dist/runtime-entry-g38-J35c.js +2769 -0
  864. package/dist/runtime-internal-DwAoh64o.js +2 -0
  865. package/dist/runtime-manifest.runtime.js +1 -1
  866. package/dist/runtime-options-CtF_gotz.js +275 -0
  867. package/dist/runtime-prepare.runtime-DAaAh4tU.js +80 -0
  868. package/dist/runtime-prepare.runtime.js +1 -1
  869. package/dist/runtime-schema-7aqYdEly.js +28599 -0
  870. package/dist/runtime-web-tools-DpTEm5uJ.js +1477 -0
  871. package/dist/runtime-web-tools-fallback.runtime.js +1 -1
  872. package/dist/runtime-web-tools-manifest.runtime.js +1 -1
  873. package/dist/runtime-web-tools-public-artifacts.runtime.js +1 -1
  874. package/dist/sandbox-DjUUwvID.js +3 -0
  875. package/dist/sandbox-IL2pQunA.js +1156 -0
  876. package/dist/sandbox-cli-C75oWfKU.js +450 -0
  877. package/dist/scan-BmfJ_GUd.js +2 -0
  878. package/dist/scan-BwUXPVa4.js +523 -0
  879. package/dist/secrets-cli-Byrmt5p3.js +2101 -0
  880. package/dist/security-cli-Cb_qzWSU.js +486 -0
  881. package/dist/selection-BaZ-7Sz6.js +2 -0
  882. package/dist/selection-C8rwxPqg.js +7743 -0
  883. package/dist/send-C3Ht9Buu.js +102 -0
  884. package/dist/send-NpRBz3rn.js +156 -0
  885. package/dist/send.runtime-Buvd_P2p.js +2 -0
  886. package/dist/send.runtime.js +1 -1
  887. package/dist/server-B8tim7RO.js +13 -0
  888. package/dist/server-ClAvfJJm.js +77 -0
  889. package/dist/server-context-Dl7OQ56d.js +2 -0
  890. package/dist/server-context-F2Jh0JBO.js +847 -0
  891. package/dist/server-node-events-Db8SbNO0.js +474 -0
  892. package/dist/server-plugin-bootstrap-DxpFA7AU.js +13703 -0
  893. package/dist/server-plugin-bootstrap-t6Z_tN0J.js +2 -0
  894. package/dist/server-restart-sentinel-VLhFJOy5.js +684 -0
  895. package/dist/server.impl-BNDZK6Lv.js +12804 -0
  896. package/dist/session-BThNEh5u.js +48 -0
  897. package/dist/session-archive.runtime.js +1 -1
  898. package/dist/session-envelope-tBfpcRRu.js +18 -0
  899. package/dist/session-key-De2wQZ8k.js +65 -0
  900. package/dist/session-kill-http-C35_XMK_.js +110 -0
  901. package/dist/session-meta-Bpv85XpZ.js +109 -0
  902. package/dist/session-override-dIx8boay.js +106 -0
  903. package/dist/session-reset-model.runtime-BY5KYxcY.js +133 -0
  904. package/dist/session-reset-model.runtime.js +1 -1
  905. package/dist/session-reset-service-Cs7o8vTZ.js +497 -0
  906. package/dist/session-route-DwjrtcvV.js +93 -0
  907. package/dist/session-status.runtime-Cp9hECfs.js +2 -0
  908. package/dist/session-status.runtime.js +1 -1
  909. package/dist/session-store-DT5H5NRv.js +126 -0
  910. package/dist/session-store.runtime-CoRuKMfZ.js +2 -0
  911. package/dist/session-store.runtime.js +1 -1
  912. package/dist/session-subagent-reactivation.runtime-3hC6cwVh.js +2 -0
  913. package/dist/session-subagent-reactivation.runtime.js +1 -1
  914. package/dist/session-tab-registry-BHn1P3lZ.js +581 -0
  915. package/dist/session-updates-CHKrFM9H.js +236 -0
  916. package/dist/session-updates.runtime-CqylTFnb.js +2 -0
  917. package/dist/session-updates.runtime.js +1 -1
  918. package/dist/session-utils-otyfumhD.js +1009 -0
  919. package/dist/session-visibility-C5yhLdDZ.js +147 -0
  920. package/dist/sessions-BjHLgqjt.js +2 -0
  921. package/dist/sessions-C1_80mqv.js +48 -0
  922. package/dist/sessions-DjIcw5uP.js +281 -0
  923. package/dist/sessions-helpers-C_xGZAo7.js +305 -0
  924. package/dist/sessions-history-http-CQ-Ga5H3.js +371 -0
  925. package/dist/sessions-patch-XzBTc4fY.js +309 -0
  926. package/dist/sessions-resolve-CF4QOXiX.js +174 -0
  927. package/dist/sessions-w6UJYMea.js +16 -0
  928. package/dist/sessions.runtime-CEV3VtEH.js +2 -0
  929. package/dist/sessions.runtime.js +1 -1
  930. package/dist/setup-BrkQiUrj.js +421 -0
  931. package/dist/setup-D218KRK6.js +636 -0
  932. package/dist/setup-api-BvHlVezg.js +29 -0
  933. package/dist/setup-core-BjceveVY.js +171 -0
  934. package/dist/setup-core-CxDIk2Qq.js +176 -0
  935. package/dist/setup-surface-6hnrFGJ3.js +286 -0
  936. package/dist/setup-surface-BBDyg26_.js +219 -0
  937. package/dist/setup-surface-HREO9zEo.js +403 -0
  938. package/dist/setup.finalize-CAJxf_Mm.js +547 -0
  939. package/dist/setup.gateway-config-g6JfCjT4.js +250 -0
  940. package/dist/shared-CJ2_38Ar.js +198 -0
  941. package/dist/shared-CecRnN5i.js +76 -0
  942. package/dist/shared-G254rWzJ.js +217 -0
  943. package/dist/shared-Zan1S92i.js +121 -0
  944. package/dist/shared-runtime-CKzUXuwN.js +7 -0
  945. package/dist/skill-commands-DWC_vZ-J.js +83 -0
  946. package/dist/skill-commands.runtime-BMmD4lyW.js +2 -0
  947. package/dist/skill-commands.runtime.js +1 -1
  948. package/dist/skills-install-Bpfq1PgX.js +605 -0
  949. package/dist/skills-snapshot.runtime-uSs9vmlj.js +7 -0
  950. package/dist/skills-snapshot.runtime.js +1 -1
  951. package/dist/slash-state-EXy1B2EX.js +1911 -0
  952. package/dist/speech-provider-CcbYv8ap.js +216 -0
  953. package/dist/speech-provider-Cr1h-_-X.js +170 -0
  954. package/dist/speech-provider-Gif_hcpc.js +209 -0
  955. package/dist/src-Dda8Fvmo.js +3974 -0
  956. package/dist/stage-sandbox-media.runtime-_FkeTCA0.js +232 -0
  957. package/dist/stage-sandbox-media.runtime.js +1 -1
  958. package/dist/startup-context-BLtyYbKu.js +312 -0
  959. package/dist/state-migrations-BXYrr3Hc.js +820 -0
  960. package/dist/status-B1RXiDvc.js +3 -0
  961. package/dist/status-B4tnoXkV.js +2 -0
  962. package/dist/status-BWXZC-dF.js +2 -0
  963. package/dist/status-CUZkKe39.js +62 -0
  964. package/dist/status-DNnTegVL.js +395 -0
  965. package/dist/status-G3Z29Cb_.js +190 -0
  966. package/dist/status-all-pjolmMGB.js +498 -0
  967. package/dist/status-json-BKR5uVlE.js +14 -0
  968. package/dist/status-json-command-DuIQ8dNz.js +82 -0
  969. package/dist/status-message-CZyHmUQr.js +466 -0
  970. package/dist/status-message.runtime-C1I59_ay.js +6 -0
  971. package/dist/status-message.runtime.js +1 -1
  972. package/dist/status-n2SrcSeP.js +209 -0
  973. package/dist/status-queue.runtime-k2kdii3C.js +2 -0
  974. package/dist/status-queue.runtime.js +1 -1
  975. package/dist/status-runtime-shared-9akPh3OB.js +241 -0
  976. package/dist/status-subagents.runtime-C-2-94r7.js +18 -0
  977. package/dist/status-subagents.runtime.js +1 -1
  978. package/dist/status-text-DY-AMW7D.js +237 -0
  979. package/dist/status.gateway-connection.runtime-CGwlyVSQ.js +2 -0
  980. package/dist/status.gateway-connection.runtime.js +1 -1
  981. package/dist/status.gather-C17tVkff.js +2 -0
  982. package/dist/status.gather-CGXwFKnq.js +292 -0
  983. package/dist/status.runtime-DdcRs0mC.js +2 -0
  984. package/dist/status.runtime-L3R8cOql.js +2 -0
  985. package/dist/status.runtime.js +1 -1
  986. package/dist/status.scan-BSIqJF_S.js +65 -0
  987. package/dist/status.scan-overview-CbwLYoIT.js +379 -0
  988. package/dist/status.scan.fast-json-BnpfFSN8.js +2 -0
  989. package/dist/status.scan.fast-json-W54JDFUy.js +132 -0
  990. package/dist/status.summary-CeaTG93y.js +2 -0
  991. package/dist/status.summary-LPaYBiqB.js +200 -0
  992. package/dist/store-BtHVDH2Q.js +910 -0
  993. package/dist/store-Qn6Vf7Ma.js +4 -0
  994. package/dist/store.runtime-Dd3L_GjJ.js +2 -0
  995. package/dist/store.runtime.js +1 -1
  996. package/dist/stream-CImPPcyN.js +664 -0
  997. package/dist/subagent-announce-Dn5xl49E.js +351 -0
  998. package/dist/subagent-announce-delivery-CpVHT0KZ.js +726 -0
  999. package/dist/subagent-announce-output-Ba8GDqQZ.js +364 -0
  1000. package/dist/subagent-capabilities-DN1kjzNE.js +251 -0
  1001. package/dist/subagent-control-Clm3gsra.js +506 -0
  1002. package/dist/subagent-control.runtime-D9vrLexA.js +3 -0
  1003. package/dist/subagent-control.runtime.js +1 -1
  1004. package/dist/subagent-followup.runtime-OlILj5hg.js +68 -0
  1005. package/dist/subagent-followup.runtime.js +1 -1
  1006. package/dist/subagent-orphan-recovery-Dqi7ktSy.js +305 -0
  1007. package/dist/subagent-registry-BfT1dA_H.js +3 -0
  1008. package/dist/subagent-registry-DsOeyo6i.js +1753 -0
  1009. package/dist/subagent-registry.runtime.js +1 -1
  1010. package/dist/subagent-spawn-IMKDJ_Ai.js +1005 -0
  1011. package/dist/supervisor-DgpKTzey.js +704 -0
  1012. package/dist/supervisor-log.runtime.js +1 -1
  1013. package/dist/system-cli-QcbUPgUP.js +43 -0
  1014. package/dist/targets-rJXMe19f.js +67 -0
  1015. package/dist/targets.runtime.js +1 -1
  1016. package/dist/task-executor-CT_QfGPJ.js +360 -0
  1017. package/dist/task-owner-access-Bm14vxJa.js +74 -0
  1018. package/dist/task-registry-D6gK7iIt.js +2357 -0
  1019. package/dist/task-registry-delivery-runtime-CDAeASdU.js +2 -0
  1020. package/dist/task-registry-delivery-runtime-CeWw5kdc.js +3 -0
  1021. package/dist/task-registry.maintenance-B5hpULqB.js +416 -0
  1022. package/dist/task-registry.maintenance-DZFQCCjc.js +2 -0
  1023. package/dist/telegram/token.js +2 -2
  1024. package/dist/testing-B2Y0vJ76.js +575 -0
  1025. package/dist/text-report-0Q8c04if.js +549 -0
  1026. package/dist/tool-auth-shared-Ca0wddYT.js +90 -0
  1027. package/dist/tool-policy-pipeline-BLtvEs31.js +109 -0
  1028. package/dist/tool-resolution-CHcj9HdC.js +90 -0
  1029. package/dist/tools-effective-inventory-Giuks2Dt.js +152 -0
  1030. package/dist/tools-invoke-http-FlaWbmCS.js +206 -0
  1031. package/dist/transcript-resolve.runtime-wnJiuCEb.js +2 -0
  1032. package/dist/transcript-resolve.runtime.js +1 -1
  1033. package/dist/transcript-yKXsllQ2.js +312 -0
  1034. package/dist/transcript.runtime-CmcFZQq0.js +2 -0
  1035. package/dist/transcript.runtime.js +1 -1
  1036. package/dist/trash-BzlpkaUi.js +24 -0
  1037. package/dist/tts-BG_1G2S6.js +64 -0
  1038. package/dist/tui-cli-B9Emgd5Q.js +4585 -0
  1039. package/dist/uninstall-B6U2msaD.js +185 -0
  1040. package/dist/update-BjKPsXUk.js +1282 -0
  1041. package/dist/update-cli-ln47pDmA.js +1759 -0
  1042. package/dist/update-startup-Xs6Edz-d.js +2 -0
  1043. package/dist/upgrade-Ctu4zfU3.js +1226 -0
  1044. package/dist/video-generation-provider-B0W1RcQj.js +264 -0
  1045. package/dist/video-generation-provider-B2XcJK8B.js +221 -0
  1046. package/dist/video-generation-provider-BJt8-Jzh.js +254 -0
  1047. package/dist/video-generation-provider-Bsz88Y8I.js +78 -0
  1048. package/dist/video-generation-provider-CmN0n1aP.js +271 -0
  1049. package/dist/video-generation-provider-DKFpHGWz.js +64 -0
  1050. package/dist/video-generation-provider-LgYMFJAm.js +281 -0
  1051. package/dist/video-generation-provider-j1OQMvjr2.js +77 -0
  1052. package/dist/video-generation-provider-lI_tgIiA.js +287 -0
  1053. package/dist/video-generation-provider-uVzVbp2s.js +118 -0
  1054. package/dist/video-generation-provider-xQ4AZkeK.js +187 -0
  1055. package/dist/video-generation-task-status-AzBxxMK4.js +163 -0
  1056. package/dist/wait-for-idle-before-flush-D4a3dGVX.js +6025 -0
  1057. package/dist/web-search-provider-Bt8NRG25.js +163 -0
  1058. package/dist/wizard-models-DpLispoG.js +334 -0
  1059. package/dist/workflow-runtime-C0jGj382.js +485 -0
  1060. package/package.json +1 -1
  1061. package/dist/abort-CvJN6IMd.js +0 -201
  1062. package/dist/abort-cutoff.runtime-oLWHRfE6.js +0 -20
  1063. package/dist/abort.runtime-DAzGHIa2.js +0 -2
  1064. package/dist/accounts-B3aTKIO4.js +0 -104
  1065. package/dist/accounts-BwigO-9Q.js +0 -2
  1066. package/dist/accounts-CdLNyXHa.js +0 -107
  1067. package/dist/acp-cli-DQz79rl7.js +0 -2217
  1068. package/dist/acp-spawn-Bbs_m3VF.js +0 -2
  1069. package/dist/acp-spawn-CTMewMbn.js +0 -1042
  1070. package/dist/acp-stateful-target-driver-D4VaoZPV.js +0 -89
  1071. package/dist/action-agents-DFmhHVfJ.js +0 -67
  1072. package/dist/action-focus-Dx08tcy-.js +0 -132
  1073. package/dist/action-help-hQl_vyPP.js +0 -7
  1074. package/dist/action-info-JmXoHEPD.js +0 -101
  1075. package/dist/action-kill-BcGm94a1.js +0 -33
  1076. package/dist/action-list-BtDTTljd.js +0 -21
  1077. package/dist/action-log-CzNEUTkF.js +0 -30
  1078. package/dist/action-send-BVjcdCrr.js +0 -39
  1079. package/dist/action-spawn-Cn0JgaO1.js +0 -47
  1080. package/dist/action-unfocus-c1Uu4T8u.js +0 -29
  1081. package/dist/actions.runtime-Cmrr3s-z.js +0 -5
  1082. package/dist/actions.runtime-XCeILsBA.js +0 -18
  1083. package/dist/agent-CS1XdimC.js +0 -2
  1084. package/dist/agent-command-BiLxDWtx.js +0 -874
  1085. package/dist/agent-harness-runtime-bunUaGg7.js +0 -144
  1086. package/dist/agent-runner-utils-BFkEZbb9.js +0 -239
  1087. package/dist/agent-runner.runtime-DUtejeBt.js +0 -3443
  1088. package/dist/agent-runtime-CQG_IBlM.js +0 -18
  1089. package/dist/agents-DArnaFQV.js +0 -954
  1090. package/dist/agents-jSVdSQr5.js +0 -5
  1091. package/dist/agents.command-shared-cZa4UKga.js +0 -40
  1092. package/dist/aliases-BrquU2aa.js +0 -96
  1093. package/dist/aliases-OQzPD6Kz.js +0 -2
  1094. package/dist/api-BXtBpymk.js +0 -5
  1095. package/dist/api-CGMqDBcv.js +0 -3
  1096. package/dist/api-CNr0UyHW.js +0 -139
  1097. package/dist/api-DIKi1Ni8.js +0 -4
  1098. package/dist/api-i4W2Wwd4.js +0 -48
  1099. package/dist/apply-oUSa2Pf0.js +0 -508
  1100. package/dist/apply.runtime-BLCi2Ivv.js +0 -166
  1101. package/dist/apply.runtime-D_hTG_Y0.js +0 -2
  1102. package/dist/approval-gateway-resolver-D2iqmJiq.js +0 -29
  1103. package/dist/approval-gateway-runtime-C1pBe7Fx.js +0 -2
  1104. package/dist/approval-handler-runtime-Zf1fCWk1.js +0 -439
  1105. package/dist/approval-native-runtime-C0zvGwfB.js +0 -729
  1106. package/dist/attempt-execution.runtime-Cu16wO9j.js +0 -509
  1107. package/dist/attempt-execution.shared-BY_ARPh1.js +0 -22
  1108. package/dist/attempt.prompt-helpers-C3qMNvxE.js +0 -206
  1109. package/dist/attempt.tool-run-context-M11pca0b.js +0 -933
  1110. package/dist/audit-DF-0hnr9.js +0 -939
  1111. package/dist/audit-extra.async-BbZcluVr.js +0 -971
  1112. package/dist/audit-tool-policy-C0lIM9Fp.js +0 -3
  1113. package/dist/audit.deep.runtime-CXjulrWI.js +0 -2
  1114. package/dist/audit.nondeep.runtime-nu5XTu7N.js +0 -880
  1115. package/dist/audit.runtime-DYyjmKuk.js +0 -7
  1116. package/dist/auth-CzjcgD0-.js +0 -177
  1117. package/dist/auth-DE-yY2QL.js +0 -550
  1118. package/dist/auth-DLmN64Y_.js +0 -2
  1119. package/dist/auth-DQw5zHDJ.js +0 -56
  1120. package/dist/auth-choice-CXWHXiQK.js +0 -3
  1121. package/dist/auth-choice-DGMF0dBk.js +0 -85
  1122. package/dist/auth-order-CP3BJeex.js +0 -2
  1123. package/dist/auth-order-DQHJAKY8.js +0 -139
  1124. package/dist/bash-tools-DUxUia5q.js +0 -3
  1125. package/dist/bash-tools-_AgECrXf.js +0 -2853
  1126. package/dist/bash-tools.exec-runtime-CVOp5fHn.js +0 -823
  1127. package/dist/binding-routing-D7ruDbx0.js +0 -85
  1128. package/dist/binding-targets-BZWuOcR0.js +0 -121
  1129. package/dist/bridge-server-C4WpUTaE.js +0 -113
  1130. package/dist/browser-control-auth-CmYxtkaH.js +0 -2
  1131. package/dist/browser-node-runtime-BLHYH8YL.js +0 -12
  1132. package/dist/browser-profiles-Cawo818z.js +0 -2
  1133. package/dist/browser-runtime-LzhODwuG.js +0 -387
  1134. package/dist/browser-setup-tools-CTgOb29b.js +0 -13
  1135. package/dist/build-AqzTQK3J.js +0 -550
  1136. package/dist/call-J2wbwzLi.js +0 -330
  1137. package/dist/call-S0AZ899k.js +0 -3
  1138. package/dist/call.runtime-CyP2bdv0.js +0 -2
  1139. package/dist/capability-cli-6jHIuGQe.js +0 -1401
  1140. package/dist/catalog-provider-RQJYkKkq.js +0 -40
  1141. package/dist/catchup-CN5lM9nn.js +0 -300
  1142. package/dist/channel-4jggmldw.js +0 -453
  1143. package/dist/channel-8osltyJD.js +0 -840
  1144. package/dist/channel-B-P45jvy.js +0 -595
  1145. package/dist/channel-BIV8BnjO.js +0 -1802
  1146. package/dist/channel-CXUPhx7m.js +0 -297
  1147. package/dist/channel-ChWfDzLg.js +0 -226
  1148. package/dist/channel-DMCOcmaZ.js +0 -491
  1149. package/dist/channel-DT5I65Xv.js +0 -1174
  1150. package/dist/channel-_mt8OaDA.js +0 -1320
  1151. package/dist/channel-add-wizard-BLjklZ70.js +0 -2
  1152. package/dist/channel-add-wizard-C3BysW2-.js +0 -125
  1153. package/dist/channel-cbqIqIvi.js +0 -1100
  1154. package/dist/channel-core-CcHrOJQl.js +0 -5
  1155. package/dist/channel-inbound-gJZ5fy8s.js +0 -31
  1156. package/dist/channel-plugin-resolution-BNbz8s_s.js +0 -153
  1157. package/dist/channel-plugin-resolution-Bey1o2RL.js +0 -2
  1158. package/dist/channel-plugin-runtime-CFVplMXF.js +0 -771
  1159. package/dist/channel-runtime-D2fhnXNT.js +0 -425
  1160. package/dist/channel-setup-BzbhDDrt.js +0 -1297
  1161. package/dist/channel-twNI9g5j.js +0 -350
  1162. package/dist/channel.runtime-B7RAHQNT.js +0 -430
  1163. package/dist/channel.runtime-BIcoI6bq.js +0 -2364
  1164. package/dist/channel.runtime-Ci_26egi.js +0 -576
  1165. package/dist/channel.runtime-CzTNZfZz.js +0 -89
  1166. package/dist/channel.runtime-D0qkeWVB.js +0 -4
  1167. package/dist/channel.runtime-D_9taoyr.js +0 -42398
  1168. package/dist/channel.setup-Ck6-6alN.js +0 -10
  1169. package/dist/channel2.runtime-CzLs-yVz.js +0 -109
  1170. package/dist/channels-C3tEEndo.js +0 -733
  1171. package/dist/channels-cli-1vvCRqai.js +0 -268
  1172. package/dist/chat-9N_9QPkq.js +0 -2830
  1173. package/dist/clawbot-cli-CySj7xP4.js +0 -9
  1174. package/dist/clawhub-DRNYT4Ih.js +0 -400
  1175. package/dist/cli-2nlB-dHJ.js +0 -154
  1176. package/dist/cli-7dTpJC3M.js +0 -2
  1177. package/dist/cli-BGMFTnb1.js +0 -683
  1178. package/dist/cli-BNYLM-n-.js +0 -219
  1179. package/dist/cli-Bj3CMawx.js +0 -2
  1180. package/dist/cli-C26tWLBw.js +0 -3726
  1181. package/dist/cli-dB2d6i0x.js +0 -72
  1182. package/dist/cli-fZ6nZozk.js +0 -2
  1183. package/dist/cli-runner-DkUWaw3u.js +0 -286
  1184. package/dist/cli-runner.runtime-Bdu8GaIU.js +0 -4
  1185. package/dist/cli-runner.runtime-D35_WwIC.js +0 -3
  1186. package/dist/cli.runtime-D0ZdkRoZ.js +0 -1261
  1187. package/dist/client-BLrVaUap.js +0 -723
  1188. package/dist/client-JSnNx9t8.js +0 -138
  1189. package/dist/command-auth-vH98jyU8.js +0 -76
  1190. package/dist/command-config-resolution-B-U-WZy5.js +0 -23
  1191. package/dist/command-config-resolution-ByjKlaVl.js +0 -2
  1192. package/dist/command-config-resolution.runtime-Wv85AlQo.js +0 -2
  1193. package/dist/command-execution-startup-DtBNBU06.js +0 -324
  1194. package/dist/command-registry-Bu9yJGC5.js +0 -4
  1195. package/dist/command-registry-CuME9hky.js +0 -9
  1196. package/dist/command-registry-core-Bk9WAOxq.js +0 -106
  1197. package/dist/command-secret-gateway-BWnLmfo1.js +0 -528
  1198. package/dist/command-status.runtime-DHRozViO.js +0 -87
  1199. package/dist/commands-acp-CnxVcX4s.js +0 -77
  1200. package/dist/commands-compact.runtime-DKZYaee9.js +0 -10
  1201. package/dist/commands-core.runtime-CXYQlfla.js +0 -2
  1202. package/dist/commands-handlers.runtime-BFqsQ9UV.js +0 -4599
  1203. package/dist/commands-reset-hooks-C-P5vfWa.js +0 -135
  1204. package/dist/commands-status-DBC5I7yG.js +0 -16
  1205. package/dist/commands-status.runtime-BgK6raz4.js +0 -3
  1206. package/dist/commands-subagents-control.runtime-CY4xaq28.js +0 -3
  1207. package/dist/commands-subagents-control.runtime-z9tchzCP.js +0 -2
  1208. package/dist/commands-system-prompt-BNtFvxmr.js +0 -157
  1209. package/dist/commands-system-prompt-CHVjFzQO.js +0 -2
  1210. package/dist/commands.runtime-BAsTu7s5.js +0 -167
  1211. package/dist/compact-Ddu8hZfc.js +0 -1096
  1212. package/dist/compact.runtime-GpkxTJxx.js +0 -12
  1213. package/dist/completion-cli-BNte3Dj6.js +0 -328
  1214. package/dist/config-Cvu5tnrW.js +0 -252
  1215. package/dist/config-cli-BlZB5tV-.js +0 -1078
  1216. package/dist/config-guard-Ca-1hhke.js +0 -96
  1217. package/dist/config-runtime-AtYct3A3.js +0 -32
  1218. package/dist/configure-CiGtXggx.js +0 -2
  1219. package/dist/configure-DDqC8LYD.js +0 -1252
  1220. package/dist/connect-options-BbJfh_Oy.js +0 -699
  1221. package/dist/control-auth-B2Jsq2zv.js +0 -125
  1222. package/dist/control-service-B5OxTjPP.js +0 -156
  1223. package/dist/control-ui/assets/agents-CfLnBH4t.js +0 -1125
  1224. package/dist/control-ui/assets/canvas-pj-aGbeH.js +0 -274
  1225. package/dist/control-ui/assets/channel-config-extras-sj_UXv9J.js +0 -2
  1226. package/dist/control-ui/assets/channels-BelCW9hw.js +0 -198
  1227. package/dist/control-ui/assets/contacts-B-2gb_ua.js +0 -49
  1228. package/dist/control-ui/assets/cron-B6-26cyp.js +0 -250
  1229. package/dist/control-ui/assets/de-DOykxjSu.js +0 -2
  1230. package/dist/control-ui/assets/debug-B5MO5d0M.js +0 -94
  1231. package/dist/control-ui/assets/es-BTwWEPGm.js +0 -2
  1232. package/dist/control-ui/assets/fr-DVRwR98L.js +0 -2
  1233. package/dist/control-ui/assets/i18n-BPOQLrbx.js +0 -3
  1234. package/dist/control-ui/assets/id-BSBAUAzK.js +0 -2
  1235. package/dist/control-ui/assets/index-CmdvEIGH.js +0 -5981
  1236. package/dist/control-ui/assets/instances-uygO1ZKq.js +0 -57
  1237. package/dist/control-ui/assets/ja-JP-BiD5eOfG.js +0 -2
  1238. package/dist/control-ui/assets/ko-BNgLBJdW.js +0 -2
  1239. package/dist/control-ui/assets/logs-GdE34D7D.js +0 -74
  1240. package/dist/control-ui/assets/mcp-472P8M4F.js +0 -380
  1241. package/dist/control-ui/assets/memory-Dvp5YUvN.js +0 -50
  1242. package/dist/control-ui/assets/memory-graph-B27rN_e7.js +0 -30
  1243. package/dist/control-ui/assets/models-C88CYx1F.js +0 -86
  1244. package/dist/control-ui/assets/nodes-CUXTunGj.js +0 -654
  1245. package/dist/control-ui/assets/pl-DrVcqC4t.js +0 -2
  1246. package/dist/control-ui/assets/plugins-D3upvVMU.js +0 -259
  1247. package/dist/control-ui/assets/presenter-DSvbCagf.js +0 -2
  1248. package/dist/control-ui/assets/pt-BR-BXlBG1WX.js +0 -2
  1249. package/dist/control-ui/assets/sessions-BzVDlJpI.js +0 -56
  1250. package/dist/control-ui/assets/skills-DQD9wvlO.js +0 -294
  1251. package/dist/control-ui/assets/skills-shared-B-3kgWg3.js +0 -11
  1252. package/dist/control-ui/assets/th-DjtYmyBR.js +0 -2
  1253. package/dist/control-ui/assets/tr-I0LYx0Ew.js +0 -2
  1254. package/dist/control-ui/assets/uk-xilwRRzQ.js +0 -2
  1255. package/dist/control-ui/assets/wallet-DWa9gqqg.js +0 -302
  1256. package/dist/control-ui/assets/zh-CN-DHz_bYy_.js +0 -2
  1257. package/dist/control-ui/assets/zh-TW-LvBbVYeU.js +0 -2
  1258. package/dist/control-ui-Djt0XDNa.js +0 -1043
  1259. package/dist/conversation-id-BTqKksIo.js +0 -38
  1260. package/dist/conversation-id-DzarUmXD.js +0 -235
  1261. package/dist/conversation-runtime-DbbmwXgr.js +0 -31
  1262. package/dist/core-CYiHLgHk.js +0 -275
  1263. package/dist/create-DN7NWqCZ.js +0 -80
  1264. package/dist/cron-cli-Dyd_7f_N.js +0 -713
  1265. package/dist/daemon-cli-DT5GXTxV.js +0 -12
  1266. package/dist/dashboard-BtYlqUpN.js +0 -2
  1267. package/dist/dashboard-DwroM17M.js +0 -81
  1268. package/dist/delegate-CBLxnP3N.js +0 -64
  1269. package/dist/deliver-BedUVIQP.js +0 -747
  1270. package/dist/deliver-DPvG5Qo8.js +0 -3
  1271. package/dist/deliver-runtime-DZlx42y2.js +0 -2
  1272. package/dist/delivery-outbound.runtime-Dyo6zcqN.js +0 -6
  1273. package/dist/delivery.runtime-CmuJYXg1.js +0 -253
  1274. package/dist/detached-task-runtime-DWSrAiuI.js +0 -73
  1275. package/dist/devices-cli-CrGc8ckS.js +0 -498
  1276. package/dist/diagnostics-CzNM2oo3.js +0 -154
  1277. package/dist/direct-dm-Cy7dY7RF.js +0 -64
  1278. package/dist/directive-handling.fast-lane-Vuy-nG2-.js +0 -66
  1279. package/dist/directive-handling.impl-DrE_GeZR.js +0 -2
  1280. package/dist/directive-handling.impl-KH2zUp6M.js +0 -703
  1281. package/dist/directive-handling.model-selection-BiW8QHW-.js +0 -114
  1282. package/dist/directive-handling.persist.runtime-VLCtMqO5.js +0 -215
  1283. package/dist/directory-cli-DQRcL8xw.js +0 -240
  1284. package/dist/dispatch-Dew5dCZ_.js +0 -1131
  1285. package/dist/dispatch-acp-CvCVNtsu.js +0 -981
  1286. package/dist/dispatch-acp-manager.runtime-DBTAUi2i.js +0 -3
  1287. package/dist/dispatch-acp-media.runtime-Bq9nReBk.js +0 -4
  1288. package/dist/dispatch-acp-session.runtime-CKts6zqY.js +0 -2
  1289. package/dist/dispatch-acp.runtime-Cw1tjQKP.js +0 -19
  1290. package/dist/doctor-config-flow-C1S8B_sg.js +0 -420
  1291. package/dist/doctor-config-preflight-DH_iBFHQ.js +0 -2
  1292. package/dist/doctor-config-preflight-nRntMTIC.js +0 -63
  1293. package/dist/doctor-device-pairing-C9OfTAUh.js +0 -307
  1294. package/dist/doctor-gateway-daemon-flow-CS1gl0S3.js +0 -250
  1295. package/dist/doctor-gateway-health-DzKV435y.js +0 -63
  1296. package/dist/doctor-health-DNiEej9S.js +0 -59
  1297. package/dist/doctor-health-contributions-BxgcjAL5.js +0 -493
  1298. package/dist/doctor-prompter-T7JdMaQG.js +0 -56
  1299. package/dist/doctor-sandbox-C9h2a5Uu.js +0 -194
  1300. package/dist/doctor-state-migrations-BPuF54_Y.js +0 -2
  1301. package/dist/doctor-workspace-status-C3jLUkHt.js +0 -75
  1302. package/dist/dreaming-CiOm27X0.js +0 -1582
  1303. package/dist/dreaming-narrative-C8m64g44.js +0 -596
  1304. package/dist/embedded-gateway-stub.runtime-Di2s5bLl.js +0 -9
  1305. package/dist/embedding-provider-QRMp19Ph.js +0 -118
  1306. package/dist/embeddings-Cwg0dHC_.js +0 -215
  1307. package/dist/embeddings-http-DbBwgwsH.js +0 -205
  1308. package/dist/exec-approval-forwarder.runtime-BNGZQkhU.js +0 -3
  1309. package/dist/exec-approvals-cli-DiBWd6eL.js +0 -498
  1310. package/dist/exec-defaults-B5NE8OtM.js +0 -2
  1311. package/dist/exec-defaults-Dy3ej-Rk.js +0 -67
  1312. package/dist/execute.runtime-cy0XQXc7.js +0 -1359
  1313. package/dist/fallbacks-Bjq0H75u.js +0 -31
  1314. package/dist/fallbacks-C3dys5Ff.js +0 -2
  1315. package/dist/fallbacks-shared-4iQjz5v5.js +0 -111
  1316. package/dist/gateway-BxIfReRV.js +0 -115
  1317. package/dist/gateway-cli-Czx2Ub57.js +0 -1283
  1318. package/dist/gateway-rpc-CdXoDE6_.js +0 -14
  1319. package/dist/gateway-rpc.runtime-DXFVTu-I.js +0 -23
  1320. package/dist/gateway-runtime-DoElJuBU.js +0 -15
  1321. package/dist/gateway-status-DtdmlnK6.js +0 -584
  1322. package/dist/genesis-tools-vU91jnMS.js +0 -9435
  1323. package/dist/genesis-tools.runtime-Dfpi37K0.js +0 -2
  1324. package/dist/get-reply-DTtxw9Xp.js +0 -3946
  1325. package/dist/get-reply-from-config.runtime-CB9EeF1Q.js +0 -2
  1326. package/dist/gmail-watcher-lifecycle-JbKGb-1A.js +0 -2
  1327. package/dist/graph-users-CoF5XRS_.js +0 -1337
  1328. package/dist/health-CLRWQEVB.js +0 -3
  1329. package/dist/health-DvTtpVIw.js +0 -420
  1330. package/dist/health-route-8H3Sy8RI.js +0 -41
  1331. package/dist/health-route-CHLAMCYm.js +0 -2
  1332. package/dist/hooks-cli-D2AeKlrf.js +0 -433
  1333. package/dist/http-endpoint-helpers-CG3AcjuK.js +0 -41
  1334. package/dist/http-utils-L02eBAVo.js +0 -924
  1335. package/dist/image-fallbacks-Cy-kcJR5.js +0 -2
  1336. package/dist/image-fallbacks-DoQoUiR7.js +0 -31
  1337. package/dist/image-generation-core-CEg4KACr.js +0 -18
  1338. package/dist/image-generation-provider-B4tW_Kj3.js +0 -274
  1339. package/dist/image-generation-provider-B72nmoos.js +0 -157
  1340. package/dist/image-generation-provider-D9v0PADz.js +0 -63
  1341. package/dist/image-generation-provider-DLYGDzST.js +0 -228
  1342. package/dist/image-generation-provider-DYu8ZWBs.js +0 -529
  1343. package/dist/image-generation-provider-jp6l2Jls.js +0 -95
  1344. package/dist/image-generation-provider-qr08iqKe.js +0 -137
  1345. package/dist/image-runtime-DRQcRKzy.js +0 -9
  1346. package/dist/inbound-reply-dispatch-jQhsUF0f.js +0 -73
  1347. package/dist/inbound.runtime-CCnJwfdz.js +0 -3
  1348. package/dist/inbound.runtime-DwsGti2x.js +0 -4
  1349. package/dist/infra-runtime-DwRkDuXF.js +0 -38
  1350. package/dist/init-DwpSUAfi.js +0 -59
  1351. package/dist/install-DwDt01Fk.js +0 -726
  1352. package/dist/install-security-scan-Cq0N2AQi.js +0 -26
  1353. package/dist/install-security-scan.runtime-DWlSCQbQ.js +0 -671
  1354. package/dist/install.runtime-CWnOXdy4.js +0 -27
  1355. package/dist/install.runtime-DPA5lA9o.js +0 -12
  1356. package/dist/jobs-D9IyaUDB.js +0 -729
  1357. package/dist/library-mAKEzoAM.js +0 -45
  1358. package/dist/lifecycle-BUTglQLK.js +0 -229
  1359. package/dist/lifecycle-Csd_mbv2.js +0 -571
  1360. package/dist/lifecycle.runtime-1wfzPGwQ.js +0 -2
  1361. package/dist/list-5rTtE3qu.js +0 -2
  1362. package/dist/list-BCYNIOw6.js +0 -2
  1363. package/dist/list-DyQGXU4h.js +0 -1212
  1364. package/dist/list-DzN4dO0z.js +0 -131
  1365. package/dist/list.probe-BQZZbfvC.js +0 -419
  1366. package/dist/live-model-switch-DqJLIA4J.js +0 -336
  1367. package/dist/llm-slug-generator-BWH-YxyP.js +0 -79
  1368. package/dist/load-config-CISXosI1.js +0 -35
  1369. package/dist/loader-DlmWqYuM.js +0 -222
  1370. package/dist/local-dispatch.runtime-BdXedbsx.js +0 -8
  1371. package/dist/login-DX18Qaag.js +0 -108
  1372. package/dist/logs-cli-YcX3NrQk.js +0 -265
  1373. package/dist/logs-cli.runtime-4RNOEP9S.js +0 -2
  1374. package/dist/main-session-restart-recovery-DxOWdFCG.js +0 -206
  1375. package/dist/managed-image-attachments-BjnlRyZi.js +0 -2
  1376. package/dist/managed-image-attachments-CgE1Q1Bu.js +0 -635
  1377. package/dist/manager-CvrwzOap.js +0 -2
  1378. package/dist/manager-DIyzKDRT.js +0 -2057
  1379. package/dist/markdown-to-line-BzCikJ_W.js +0 -790
  1380. package/dist/mcp-cli-HFkNRDTk.js +0 -725
  1381. package/dist/mcp-http-BpymCnig.js +0 -529
  1382. package/dist/media-runtime-awxrKlof.js +0 -329
  1383. package/dist/media-understanding-CYk-TBlo.js +0 -85
  1384. package/dist/media-understanding-provider-BFl9PvK0.js +0 -18
  1385. package/dist/media-understanding-provider-BbHedlHI.js +0 -69
  1386. package/dist/media-understanding-provider-C4hkphxA.js +0 -28
  1387. package/dist/media-understanding-provider-CIJApc3Q.js +0 -85
  1388. package/dist/media-understanding-provider-CMRfrvoW.js +0 -37
  1389. package/dist/media-understanding-provider-D8MwbDYK.js +0 -12
  1390. package/dist/media-understanding-provider-DPZ3M0zL.js +0 -21
  1391. package/dist/media-understanding-provider-DnFHplle.js +0 -13
  1392. package/dist/media-understanding-provider-O3o8RDTO.js +0 -12
  1393. package/dist/media-understanding-provider-WmKhdAeP.js +0 -18
  1394. package/dist/media-understanding-runtime-DiWkY8O9.js +0 -2
  1395. package/dist/memory-core-host-runtime-cli-D1OEhnrF.js +0 -9
  1396. package/dist/memory-embedding-adapter-Ll4TtjDC.js +0 -123
  1397. package/dist/memory-host-search-BzpJFHpD.js +0 -12
  1398. package/dist/message-action-runner-CMY-upve.js +0 -1407
  1399. package/dist/message-action-runner-DySHa6EF.js +0 -2
  1400. package/dist/message-actions-B9LTXVEy.js +0 -143
  1401. package/dist/message-kmB-ZdwF.js +0 -232
  1402. package/dist/message.gateway.runtime-CKp6wO2c.js +0 -2
  1403. package/dist/method-scopes-D_AZ7OsK.js +0 -235
  1404. package/dist/model-picker-D20JpfyM.js +0 -559
  1405. package/dist/model-picker-Dpin9dw4.js +0 -3
  1406. package/dist/model-picker.runtime-B19j-xJa.js +0 -15
  1407. package/dist/model-selection-BDK7dEju.js +0 -212
  1408. package/dist/models-auth-status-CWD5blQY.js +0 -217
  1409. package/dist/models-cli-qKl_DDX9.js +0 -271
  1410. package/dist/models-http-DruY6N81.js +0 -92
  1411. package/dist/models.fetch-2geG13AQ.js +0 -518
  1412. package/dist/monitor-Ba7ejkS8.js +0 -671
  1413. package/dist/monitor-BaVaWrC7.js +0 -2
  1414. package/dist/monitor-C35OWSe9.js +0 -1661
  1415. package/dist/monitor-Cl9di7UV.js +0 -788
  1416. package/dist/monitor-CyNHlr3x.js +0 -1237
  1417. package/dist/monitor-DfSNLX9p.js +0 -1459
  1418. package/dist/monitor-auth-Bar1iwPD.js +0 -207
  1419. package/dist/monitor-processing-DOC1o7D2.js +0 -1974
  1420. package/dist/monitor.runtime-CzFqZGY2.js +0 -2
  1421. package/dist/monitor.webhook-Bim0zewE.js +0 -180
  1422. package/dist/msteams-BqQ_sRgm.js +0 -35
  1423. package/dist/music-generation-provider-Bac-UFIO.js +0 -63
  1424. package/dist/music-generation-provider-fPGrO1gg.js +0 -170
  1425. package/dist/native-hook-relay-CiXmqOtV.js +0 -519
  1426. package/dist/nextcloud-talk-ByistOQj.js +0 -17
  1427. package/dist/node-cli-BWtbe5nd.js +0 -2276
  1428. package/dist/nodes-cli-DuzsL0Gb.js +0 -1046
  1429. package/dist/nodes-utils-oVtp9rVI.js +0 -84
  1430. package/dist/nodes.helpers-DJ1lCjQx.js +0 -34
  1431. package/dist/notify-Xz011HiU.js +0 -315
  1432. package/dist/oauth-B9WR0gWL.js +0 -75
  1433. package/dist/oauth-BpJKd6mz.js +0 -2
  1434. package/dist/oauth-BqiriUcs.js +0 -139
  1435. package/dist/oauth-Dl3zSXWU.js +0 -152
  1436. package/dist/oauth.flow-CIweZ0Wo.js +0 -45
  1437. package/dist/oauth.flow-YT9WcJAP.js +0 -3
  1438. package/dist/onboard-CJcg9WIT.js +0 -2
  1439. package/dist/onboard-DrfmoxpG.js +0 -316
  1440. package/dist/onboard-SSBg2BsM.js +0 -70
  1441. package/dist/onboard-channels-B-jq5k4w.js +0 -2
  1442. package/dist/onboard-channels-Dg4UVNnl.js +0 -3
  1443. package/dist/onboard-custom-DDY7T8Mb.js +0 -3
  1444. package/dist/onboard-custom-buJ3Vz5C.js +0 -271
  1445. package/dist/onboard-helpers-D-z22ggH.js +0 -204
  1446. package/dist/onboard-helpers-DU-hRKeY.js +0 -6
  1447. package/dist/onboard-interactive-C8tFz_EJ.js +0 -24
  1448. package/dist/onboard-non-interactive-ZnR63QNa.js +0 -635
  1449. package/dist/onboard-remote-B6KxBZY_.js +0 -193
  1450. package/dist/onboard-remote-BrblbI6u.js +0 -2
  1451. package/dist/onboard-skills-BaEg-lmj.js +0 -2
  1452. package/dist/onboard-skills-BuFtX13Z.js +0 -134
  1453. package/dist/onboarding-plugin-install-CNIcGqAI.js +0 -406
  1454. package/dist/openai-codex-provider-6aTYk3jp.js +0 -472
  1455. package/dist/openai-http-Wkidi3o4.js +0 -500
  1456. package/dist/openai-provider-w1PV_KGr.js +0 -313
  1457. package/dist/opencode-SEOw9RYv.js +0 -35
  1458. package/dist/openresponses-http-BkPjGHMn.js +0 -1128
  1459. package/dist/operator-approvals-client-xj8FFWPH.js +0 -68
  1460. package/dist/outbound-runtime-D7qdGq1B.js +0 -5
  1461. package/dist/outbound.runtime-riknu3Rg.js +0 -2
  1462. package/dist/pair-command-approve-CRig33Ea.js +0 -44
  1463. package/dist/persistent-bindings.lifecycle-BhVLGVlI.js +0 -2
  1464. package/dist/persistent-bindings.lifecycle-CVWzaSA9.js +0 -85
  1465. package/dist/pi-bundle-mcp-runtime-CEwlOt28.js +0 -2
  1466. package/dist/pi-bundle-mcp-runtime-DS32_bKh.js +0 -829
  1467. package/dist/pi-bundle-mcp-tools-MVePSeQp.js +0 -108
  1468. package/dist/pi-embedded-Dh5naw-j.js +0 -4
  1469. package/dist/pi-embedded-S0ld6lbd.js +0 -2905
  1470. package/dist/pi-embedded-subscribe.handlers.compaction.runtime-61zYwcVi.js +0 -23
  1471. package/dist/pi-embedded.runtime-BeWYEwSt.js +0 -4
  1472. package/dist/pi-tool-definition-adapter-MgnP-0c4.js +0 -229
  1473. package/dist/pi-tools-DyVcSRei.js +0 -1118
  1474. package/dist/pi-tools.before-tool-call-BZ1PLh46.js +0 -433
  1475. package/dist/pi-tools.before-tool-call-DSgr_Sjd.js +0 -2
  1476. package/dist/plugin-DoXrlTHe.js +0 -12195
  1477. package/dist/plugin-enabled-CCAWKL0j.js +0 -140
  1478. package/dist/plugin-install-D9RUigrW.js +0 -2
  1479. package/dist/plugin-install-DRc2KTWx.js +0 -115
  1480. package/dist/plugin-install-config-policy-CtKZaMAw.js +0 -137
  1481. package/dist/plugin-install-plan-BeNfwB5V.js +0 -50
  1482. package/dist/plugin-registration-COZcclAr.js +0 -23
  1483. package/dist/plugin-service-Cu_nlZmO.js +0 -2893
  1484. package/dist/plugins-cli-qkT7VGd9.js +0 -584
  1485. package/dist/plugins-command-helpers-DvRgKfV0.js +0 -107
  1486. package/dist/plugins-install-persist-CZWXaz5s.js +0 -133
  1487. package/dist/plugins-update-command-qKTcfS44.js +0 -1057
  1488. package/dist/policy-CxwHwL56.js +0 -328
  1489. package/dist/prepare.runtime-BhO3ot9P.js +0 -807
  1490. package/dist/probe-4IiQQG_7.js +0 -2
  1491. package/dist/probe-89jd9VHi.js +0 -1443
  1492. package/dist/probe-B2Uw_PN-.js +0 -2205
  1493. package/dist/probe-B4ekJ-Xv.js +0 -74
  1494. package/dist/probe-B9hiEFIU.js +0 -2
  1495. package/dist/probe-CDrkDwhe.js +0 -240
  1496. package/dist/probe-Ct62B_e4.js +0 -45
  1497. package/dist/probe-pLHVFHK6.js +0 -243
  1498. package/dist/program-HFwaDGDa.js +0 -111
  1499. package/dist/prompt-select-styled-BL_pKMTB.js +0 -20
  1500. package/dist/protocol-C9LrRIRp.js +0 -2515
  1501. package/dist/provider-D4RPFEas.js +0 -70
  1502. package/dist/provider-api-key-auth-DxE3Ubaz.js +0 -131
  1503. package/dist/provider-auth-94YJgYBI.js +0 -46
  1504. package/dist/provider-auth-api-key-D9d3vpbu.js +0 -5
  1505. package/dist/provider-auth-choice-C1kxCG8d.js +0 -228
  1506. package/dist/provider-auth-login-DSy_0CmF.js +0 -8
  1507. package/dist/provider-dispatcher-C81eCA-H.js +0 -22
  1508. package/dist/provider-dispatcher-puinwYaq.js +0 -2
  1509. package/dist/provider-entry-CR0Z4V2Y.js +0 -106
  1510. package/dist/provider-model-defaults-CY1F7Q3c.js +0 -6
  1511. package/dist/provider-registration-C3cLloFb.js +0 -37
  1512. package/dist/provider-registration-CU67AJCU.js +0 -218
  1513. package/dist/qr-cli-BdX_FFlu.js +0 -349
  1514. package/dist/qr-cli-C5253ud8.js +0 -2
  1515. package/dist/qr-image-BQnl-2Hz.js +0 -2
  1516. package/dist/queue-IehGWtWc.js +0 -409
  1517. package/dist/reaction-runtime-api-95Ou_vSC.js +0 -116
  1518. package/dist/reactions-DZizt8LI.js +0 -998
  1519. package/dist/read-capability-w1W5sKua.js +0 -412
  1520. package/dist/register-service-commands-DMNQ-id4.js +0 -71
  1521. package/dist/register.agent-CQOBdXob.js +0 -248
  1522. package/dist/register.configure-C8yC_SYa.js +0 -15
  1523. package/dist/register.maintenance-CSIY47OO.js +0 -363
  1524. package/dist/register.message-g5yjxPxU.js +0 -329
  1525. package/dist/register.onboard-U3SrMpHb.js +0 -88
  1526. package/dist/register.runtime-BMuRf7KD.js +0 -81
  1527. package/dist/register.setup-DOBsdUvr.js +0 -150
  1528. package/dist/register.status-health-sessions-p_3FnJtp.js +0 -1215
  1529. package/dist/register.subclis-CNkq2TdW.js +0 -29
  1530. package/dist/register.subclis-P3ru4E6I.js +0 -3
  1531. package/dist/register.subclis-core-D5N5ewgp.js +0 -249
  1532. package/dist/reply-dispatch-runtime-B8TMhGSo.js +0 -13
  1533. package/dist/reply-media-paths.runtime-Bv-VQY1O.js +0 -2
  1534. package/dist/reply-media-paths.runtime-qZYIzFEg.js +0 -146
  1535. package/dist/reply-runtime-Ba_5YKEX.js +0 -10
  1536. package/dist/reply.runtime-CvlE6uYh.js +0 -2
  1537. package/dist/resolve-DxTN302S.js +0 -259
  1538. package/dist/response-generator-Be1_-xjF.js +0 -175
  1539. package/dist/restart-health-CV-Nm1lw.js +0 -202
  1540. package/dist/restart-health-DywY1594.js +0 -2
  1541. package/dist/root-help-oR4nv8N9.js +0 -44
  1542. package/dist/route-reply-Dn9zmIdM.js +0 -162
  1543. package/dist/route-reply.runtime-DkwtG2qY.js +0 -2
  1544. package/dist/routes-ClkLAuU2.js +0 -3341
  1545. package/dist/routes-cv4VrQu1.js +0 -2
  1546. package/dist/rpc-05cw0vNh.js +0 -61
  1547. package/dist/rpc.runtime-DhFlfCMB.js +0 -21
  1548. package/dist/run-auth-profile.runtime-Bflh0AxI.js +0 -2
  1549. package/dist/run-delivery.runtime-B_9TxqQA.js +0 -530
  1550. package/dist/run-embedded.runtime-V68HvJT8.js +0 -4
  1551. package/dist/run-execution-cli.runtime-9NpwQ1uu.js +0 -4
  1552. package/dist/run-executor.runtime-CX2Emb4e.js +0 -277
  1553. package/dist/run-main-xnrI4i-W.js +0 -567
  1554. package/dist/run-subagent-registry.runtime-CEgCR8-w.js +0 -2
  1555. package/dist/run-wait-By6jGhn0.js +0 -135
  1556. package/dist/runner-Vhfg_kYp.js +0 -966
  1557. package/dist/runner.entries-DWptWo_Q.js +0 -604
  1558. package/dist/runtime-COXB-OZq.js +0 -263
  1559. package/dist/runtime-Cfcvlsp1.js +0 -2
  1560. package/dist/runtime-D0MD5Uyv.js +0 -9
  1561. package/dist/runtime-D2DhV36f.js +0 -961
  1562. package/dist/runtime-D9CBb5Na.js +0 -72
  1563. package/dist/runtime-api-C_o5iE1W.js +0 -9
  1564. package/dist/runtime-api-Cws6dHRG.js +0 -14
  1565. package/dist/runtime-api-D8EKRzzw.js +0 -4
  1566. package/dist/runtime-api-DUw04nys.js +0 -9
  1567. package/dist/runtime-embedded-pi.runtime-Ckdld_Ij.js +0 -2
  1568. package/dist/runtime-entry-BaLt5V4d.js +0 -2769
  1569. package/dist/runtime-internal-Dga3dvsC.js +0 -2
  1570. package/dist/runtime-l0B7QFL3.js +0 -116
  1571. package/dist/runtime-options-DwYzxb7U.js +0 -275
  1572. package/dist/runtime-prepare.runtime-D6bMmoTn.js +0 -80
  1573. package/dist/runtime-schema-BDGFtL0_.js +0 -28599
  1574. package/dist/runtime-web-tools-DlattYEh.js +0 -1477
  1575. package/dist/sandbox-B0HW_QP3.js +0 -1156
  1576. package/dist/sandbox-D2w77M7D.js +0 -3
  1577. package/dist/sandbox-cli-DhrLokzO.js +0 -450
  1578. package/dist/scan-BWFQXm24.js +0 -523
  1579. package/dist/scan-CrfOpA-h.js +0 -2
  1580. package/dist/secrets-cli-TxHWzJzS.js +0 -2101
  1581. package/dist/security-cli-DIvsGk3X.js +0 -486
  1582. package/dist/selection-CHTqBz4F.js +0 -2
  1583. package/dist/selection-D_K-9r-x.js +0 -7743
  1584. package/dist/send-DE7hu875.js +0 -156
  1585. package/dist/send-TkldUWcX.js +0 -102
  1586. package/dist/send.runtime-CZI1JWw8.js +0 -2
  1587. package/dist/server-B8xhfNfn.js +0 -77
  1588. package/dist/server-Cz40q0g2.js +0 -13
  1589. package/dist/server-context-B7rWJ2gB.js +0 -847
  1590. package/dist/server-context-yutVechl.js +0 -2
  1591. package/dist/server-node-events-VPwgJoKG.js +0 -474
  1592. package/dist/server-plugin-bootstrap-Dy78XA3J.js +0 -2
  1593. package/dist/server-plugin-bootstrap-N59qJvH4.js +0 -13355
  1594. package/dist/server-restart-sentinel-Zjl16hJh.js +0 -684
  1595. package/dist/server.impl-DpFPnl5_.js +0 -12798
  1596. package/dist/session-DQK4G2N-.js +0 -48
  1597. package/dist/session-envelope-uG-4XV0X.js +0 -18
  1598. package/dist/session-key-CTestOWs.js +0 -65
  1599. package/dist/session-kill-http-o34Xk0D1.js +0 -110
  1600. package/dist/session-meta-B_6JKgd3.js +0 -109
  1601. package/dist/session-override-BJXIc7UA.js +0 -106
  1602. package/dist/session-reset-model.runtime-DFT-FJW1.js +0 -133
  1603. package/dist/session-reset-service-C0ScpWIE.js +0 -497
  1604. package/dist/session-route-UusYWQ_M.js +0 -93
  1605. package/dist/session-status.runtime-DJV2WJZM.js +0 -2
  1606. package/dist/session-store-COzyfYG2.js +0 -126
  1607. package/dist/session-store.runtime-CQHXgM_Z.js +0 -2
  1608. package/dist/session-subagent-reactivation.runtime-yyMT_MgO.js +0 -2
  1609. package/dist/session-tab-registry-Bkd33PY1.js +0 -581
  1610. package/dist/session-updates-Dl4GafMW.js +0 -236
  1611. package/dist/session-updates.runtime-bHYRFXxm.js +0 -2
  1612. package/dist/session-utils-Dkaj_4dZ.js +0 -1009
  1613. package/dist/session-visibility-BOYOn-Gu.js +0 -147
  1614. package/dist/sessions-D3eFfsPH.js +0 -281
  1615. package/dist/sessions-DAup1AeE.js +0 -16
  1616. package/dist/sessions-helpers-DlsDzSXL.js +0 -305
  1617. package/dist/sessions-history-http--8biogY1.js +0 -371
  1618. package/dist/sessions-kO7Dit6B.js +0 -48
  1619. package/dist/sessions-patch-BlUpBepz.js +0 -309
  1620. package/dist/sessions-resolve-DPWviaDr.js +0 -174
  1621. package/dist/sessions-uVaHa5mC.js +0 -2
  1622. package/dist/sessions.runtime-CHJDx6Rg.js +0 -2
  1623. package/dist/setup-COcb42YZ.js +0 -636
  1624. package/dist/setup-DX-d8t6q.js +0 -421
  1625. package/dist/setup-api-Ddfd033_.js +0 -29
  1626. package/dist/setup-core-Bsasst9Y.js +0 -176
  1627. package/dist/setup-core-CWmsLaJv.js +0 -171
  1628. package/dist/setup-surface-CTZ5CnX4.js +0 -219
  1629. package/dist/setup-surface-D2c6jlaM.js +0 -403
  1630. package/dist/setup-surface-Dazv-gzK.js +0 -286
  1631. package/dist/setup.finalize-DSSoTSsd.js +0 -547
  1632. package/dist/setup.gateway-config-bJqXJA3E.js +0 -250
  1633. package/dist/shared-C-DELFhh.js +0 -217
  1634. package/dist/shared-DOOnkgfw.js +0 -198
  1635. package/dist/shared-DfVOpp8r.js +0 -121
  1636. package/dist/shared-nGZZHrFV.js +0 -76
  1637. package/dist/shared-runtime-lVwJld87.js +0 -7
  1638. package/dist/skill-commands-Crg6g_xc.js +0 -83
  1639. package/dist/skill-commands.runtime-Dx9JZPVm.js +0 -2
  1640. package/dist/skills-install-B1RJkjel.js +0 -605
  1641. package/dist/skills-snapshot.runtime-1fnPk6SF.js +0 -7
  1642. package/dist/slash-state-CwgTzmc8.js +0 -1911
  1643. package/dist/speech-provider-BEjGmdRi.js +0 -170
  1644. package/dist/speech-provider-DU0xib0M.js +0 -209
  1645. package/dist/speech-provider-jexKB2Fl.js +0 -216
  1646. package/dist/src-CbfkGwGz.js +0 -3974
  1647. package/dist/stage-sandbox-media.runtime-BzOf-LsJ.js +0 -232
  1648. package/dist/startup-context-acV-bzAJ.js +0 -312
  1649. package/dist/state-migrations-DlUY4b3i.js +0 -820
  1650. package/dist/status-0ozKjOYe.js +0 -190
  1651. package/dist/status-BFMr1TH_.js +0 -395
  1652. package/dist/status-C0tUFjWh.js +0 -2
  1653. package/dist/status-DgyADd4G.js +0 -209
  1654. package/dist/status-Dql1aIFE.js +0 -62
  1655. package/dist/status-L2NtbOry.js +0 -3
  1656. package/dist/status-all-DK98dFQa.js +0 -498
  1657. package/dist/status-json-OEukc0cF.js +0 -14
  1658. package/dist/status-json-command-BWv0zt8E.js +0 -82
  1659. package/dist/status-message-DuKO-hzh.js +0 -466
  1660. package/dist/status-message.runtime-BnLXbVHh.js +0 -6
  1661. package/dist/status-queue.runtime-DXdIwJaQ.js +0 -2
  1662. package/dist/status-runtime-shared-DBMTXWTZ.js +0 -241
  1663. package/dist/status-subagents.runtime-VTEVgOJj.js +0 -18
  1664. package/dist/status-text-Cx0Esdj6.js +0 -237
  1665. package/dist/status-xjF4vxou.js +0 -2
  1666. package/dist/status.gateway-connection.runtime-BT6XfoLV.js +0 -2
  1667. package/dist/status.gather-CF5qlFAG.js +0 -292
  1668. package/dist/status.gather-L0QGMaC4.js +0 -2
  1669. package/dist/status.runtime-BwFzOfxj.js +0 -2
  1670. package/dist/status.runtime-DYi_nOHT.js +0 -2
  1671. package/dist/status.scan-CflamBc9.js +0 -65
  1672. package/dist/status.scan-overview-pGpvYksm.js +0 -379
  1673. package/dist/status.scan.fast-json-BbMvHncK.js +0 -132
  1674. package/dist/status.scan.fast-json-D39u21tI.js +0 -2
  1675. package/dist/status.summary-CKh5Legf.js +0 -2
  1676. package/dist/status.summary-DVdS-4Fj.js +0 -200
  1677. package/dist/store-DgajP9Em.js +0 -4
  1678. package/dist/store-tuisxHpf.js +0 -910
  1679. package/dist/store.runtime-Bw5wLKnD.js +0 -2
  1680. package/dist/stream-CWqBQkS6.js +0 -664
  1681. package/dist/subagent-announce-Df9ABEaq.js +0 -351
  1682. package/dist/subagent-announce-delivery-B5xYlVwu.js +0 -726
  1683. package/dist/subagent-announce-output-JQ-I1Kmk.js +0 -364
  1684. package/dist/subagent-capabilities-DFXCYxt0.js +0 -251
  1685. package/dist/subagent-control-CMaKDVuG.js +0 -506
  1686. package/dist/subagent-control.runtime-CgBRjo3Q.js +0 -3
  1687. package/dist/subagent-followup.runtime-Be2c3jkr.js +0 -68
  1688. package/dist/subagent-orphan-recovery-B4jHKSis.js +0 -305
  1689. package/dist/subagent-registry-CjLI6fcV.js +0 -3
  1690. package/dist/subagent-registry-CruvknDh.js +0 -1753
  1691. package/dist/subagent-spawn-C-9kmYik.js +0 -1005
  1692. package/dist/supervisor-DaRbw4Gw.js +0 -704
  1693. package/dist/system-cli-Cmv7YV3z.js +0 -43
  1694. package/dist/targets-DGdlJYMl.js +0 -67
  1695. package/dist/task-executor-DbusuL0w.js +0 -360
  1696. package/dist/task-owner-access-DNC_BT5l.js +0 -74
  1697. package/dist/task-registry-CKDRlfmp.js +0 -2357
  1698. package/dist/task-registry-delivery-runtime-DX6tjuwQ.js +0 -3
  1699. package/dist/task-registry-delivery-runtime-Ge4fS1Fa.js +0 -2
  1700. package/dist/task-registry.maintenance-DhjCTf6L.js +0 -416
  1701. package/dist/task-registry.maintenance-DyX6m_7s.js +0 -2
  1702. package/dist/testing-BecnXPE0.js +0 -575
  1703. package/dist/text-report-BW3t_i75.js +0 -549
  1704. package/dist/tool-auth-shared-DWrecN7g.js +0 -90
  1705. package/dist/tool-policy-pipeline-CA61tNc_.js +0 -109
  1706. package/dist/tool-resolution-BRHtzc7Q.js +0 -90
  1707. package/dist/tools-effective-inventory-CLJ3nPbB.js +0 -152
  1708. package/dist/tools-invoke-http-DWbJzMo3.js +0 -206
  1709. package/dist/transcript-CEK104A6.js +0 -312
  1710. package/dist/transcript-resolve.runtime-D4I8B--1.js +0 -2
  1711. package/dist/transcript.runtime-ClNMqLSP.js +0 -2
  1712. package/dist/trash-CvOmDpdP.js +0 -24
  1713. package/dist/tts-vEtIfdGN.js +0 -64
  1714. package/dist/tui-cli-BuQzKTYR.js +0 -4585
  1715. package/dist/uninstall-BQ_d8nQ4.js +0 -185
  1716. package/dist/update-D8foEnSw.js +0 -1282
  1717. package/dist/update-cli-DB-VQaie.js +0 -1759
  1718. package/dist/update-startup-D-n1C8A0.js +0 -2
  1719. package/dist/upgrade-DPhvhHXF.js +0 -1226
  1720. package/dist/video-generation-provider-5v5lTL00.js +0 -287
  1721. package/dist/video-generation-provider-BGtbUYJd.js +0 -64
  1722. package/dist/video-generation-provider-BlOdvaLh.js +0 -118
  1723. package/dist/video-generation-provider-CR_fRJ8m.js +0 -187
  1724. package/dist/video-generation-provider-CVUs00hp.js +0 -264
  1725. package/dist/video-generation-provider-CtstiCCO.js +0 -271
  1726. package/dist/video-generation-provider-DDQjPRYO.js +0 -254
  1727. package/dist/video-generation-provider-DLy7AvTJ.js +0 -281
  1728. package/dist/video-generation-provider-DNnNMvS9.js +0 -221
  1729. package/dist/video-generation-provider-vzf0PQXj2.js +0 -77
  1730. package/dist/video-generation-provider-zINiw3aL.js +0 -78
  1731. package/dist/video-generation-task-status-DWUrjc4T.js +0 -163
  1732. package/dist/wait-for-idle-before-flush-BBwcUWtb.js +0 -5985
  1733. package/dist/web-search-provider-BkIzoc2Y.js +0 -163
  1734. package/dist/wizard-models-B5HIywox.js +0 -334
  1735. package/dist/workflow-runtime-tvBeQSK9.js +0 -485
  1736. /package/dist/{audit-channel.collect.runtime-BAKyzn52.js → audit-channel.collect.runtime-CevlIQ6K.js} +0 -0
  1737. /package/dist/{audit-tool-policy-Ftr0W8Wl.js → audit-tool-policy-DTodxIZf.js} +0 -0
  1738. /package/dist/{channel-selection.runtime-CsQ0qN21.js → channel-selection.runtime-DAkF_DgO.js} +0 -0
  1739. /package/dist/{close-reason-DNwBM4qe.js → close-reason-BPuKI4th.js} +0 -0
  1740. /package/dist/{configured-B8XGIYz-.js → configured-C-0r4Pk2.js} +0 -0
  1741. /package/dist/{diagnostic-support-export-CuIJulCK.js → diagnostic-support-export-C8cpJRWi.js} +0 -0
  1742. /package/dist/{gmail-watcher-lifecycle-BoWMgpeT.js → gmail-watcher-lifecycle-DrTbIr0m.js} +0 -0
  1743. /package/dist/{image-BwAofy0f.js → image-LNALiqnF.js} +0 -0
  1744. /package/dist/{image-generation-core.auth.runtime-B6BpHP6V.js → image-generation-core.auth.runtime-hzZbX1YD.js} +0 -0
  1745. /package/dist/{input-allowlist-zDKNs6OG.js → input-allowlist-Bn8hssyM.js} +0 -0
  1746. /package/dist/{install-target-FXMkL80i.js → install-target-C0Dg_4Un.js} +0 -0
  1747. /package/dist/{memory-host-search.runtime-Vfck_NLf.js → memory-host-search.runtime-CAejVWZB.js} +0 -0
  1748. /package/dist/{message.config.runtime-Df8nVSE4.js → message.config.runtime-CAG3eLmF.js} +0 -0
  1749. /package/dist/{paths-BdDCK0XP.js → paths-BrPnd-v6.js} +0 -0
  1750. /package/dist/{provider-api-key-auth.runtime-fT4D2dQt.js → provider-api-key-auth.runtime-YLpiRoM3.js} +0 -0
  1751. /package/dist/{provider-auth-login.runtime-EnfK3WTr.js → provider-auth-login.runtime-BwDEPbY4.js} +0 -0
  1752. /package/dist/{push-apns-DoMbCgqq.js → push-apns-UUwkJMxt.js} +0 -0
  1753. /package/dist/{runtime-manifest.runtime-CuqWbJ5G.js → runtime-manifest.runtime-D8BuqQCR.js} +0 -0
  1754. /package/dist/{runtime-web-channel-plugin-ChmPPl7a.js → runtime-web-channel-plugin-Dx1GGPSD.js} +0 -0
  1755. /package/dist/{runtime-web-tools-fallback.runtime-B3fmu7s0.js → runtime-web-tools-fallback.runtime-_nNCUNAT.js} +0 -0
  1756. /package/dist/{runtime-web-tools-manifest.runtime-CpiYM000.js → runtime-web-tools-manifest.runtime-BaeloEzn.js} +0 -0
  1757. /package/dist/{runtime-web-tools-public-artifacts.runtime-BBNdsUv5.js → runtime-web-tools-public-artifacts.runtime-DOdl6CAd.js} +0 -0
  1758. /package/dist/{server-startup-log-DXJn1EgH.js → server-startup-log-BUk3dEm6.js} +0 -0
  1759. /package/dist/{server-startup-memory-C4d9ImgC.js → server-startup-memory-C3gdaomJ.js} +0 -0
  1760. /package/dist/{server-tailscale-DeNCXYBr.js → server-tailscale-C0DsqL5N.js} +0 -0
  1761. /package/dist/{services-m8_503l9.js → services-CiBabvAX.js} +0 -0
  1762. /package/dist/{session-archive.runtime-DDhx1bOA.js → session-archive.runtime-BIqBKdzI.js} +0 -0
  1763. /package/dist/{setup.node-config-BXET5GZk.js → setup.node-config-BlJDbu4T.js} +0 -0
  1764. /package/dist/{setup.plugin-config-CgBJMtZ8.js → setup.plugin-config-CCP7nrfy.js} +0 -0
  1765. /package/dist/{skill-scanner-cEm04-3B.js → skill-scanner-DnqZE6Fh.js} +0 -0
  1766. /package/dist/{ssh-config-BfxhRhPu.js → ssh-config-wfp8-I37.js} +0 -0
  1767. /package/dist/{supervisor-log.runtime-BdagMpUZ.js → supervisor-log.runtime-DYzbopV7.js} +0 -0
  1768. /package/dist/{targets.runtime-BS4UWyk2.js → targets.runtime-1fn-rTlI.js} +0 -0
  1769. /package/dist/{update-startup-D69inLEd.js → update-startup-DW61ftJW.js} +0 -0
@@ -0,0 +1,2057 @@
1
+ import { i as formatErrorMessage } from "./errors-CufR9eHH.js";
2
+ import { a as normalizeLowercaseStringOrEmpty, c as normalizeOptionalString, s as normalizeOptionalLowercaseString } from "./string-coerce-DPP_aYVc.js";
3
+ import { n as resolveGlobalSingleton } from "./global-singleton-DSEXPThW.js";
4
+ import { r as logVerbose } from "./globals-wYf9_gv5.js";
5
+ import { n as isAcpSessionKey, s as parseAgentSessionKey } from "./session-key-utils-DDwuwYKT.js";
6
+ import { c as normalizeAgentId, l as normalizeMainKey } from "./session-key-CI3KvTQC.js";
7
+ import { i as resolveMainSessionKey, t as canonicalizeMainSessionAlias } from "./main-session-DGV-IuVa.js";
8
+ import { i as failTaskRunByRunId, r as createRunningTaskRun, s as startTaskRunByRunId, t as completeTaskRunByRunId } from "./detached-task-runtime-D2jixP5C.js";
9
+ import { t as resolveAgentTimeoutMs } from "./timeout-11LJq59k.js";
10
+ import { t as KeyedAsyncQueue } from "./keyed-async-queue-eMv1R9o5.js";
11
+ import { a as withAcpRuntimeErrorBoundary, i as toAcpRuntimeError, n as AcpRuntimeError, t as ACP_ERROR_CODES } from "./errors-13ortu2x.js";
12
+ import { a as identityHasStableSessionId, c as resolveRuntimeHandleIdentifiersFromIdentity, i as identityEquals, l as resolveRuntimeResumeSessionId, n as createIdentityFromHandleEvent, o as isSessionIdentityPending, r as createIdentityFromStatus, s as mergeSessionIdentity, t as createIdentityFromEnsure, u as resolveSessionIdentityFromMeta } from "./session-identity-DU8bcoep.js";
13
+ import { i as upsertAcpSessionMeta, n as readAcpSessionEntry, t as listAcpSessionEntries } from "./session-meta-Bpv85XpZ.js";
14
+ import { isAbsolute } from "node:path";
15
+ //#region src/acp/control-plane/manager.utils.ts
16
+ function resolveAcpAgentFromSessionKey(sessionKey, fallback = "main") {
17
+ return normalizeAgentId(parseAgentSessionKey(sessionKey)?.agentId ?? fallback);
18
+ }
19
+ function resolveMissingMetaError(sessionKey) {
20
+ return new AcpRuntimeError("ACP_SESSION_INIT_FAILED", `ACP metadata is missing for ${sessionKey}. Recreate this ACP session with /acp spawn and rebind the thread.`);
21
+ }
22
+ function resolveAcpSessionResolutionError(resolution) {
23
+ if (resolution.kind === "ready") return null;
24
+ if (resolution.kind === "stale") return resolution.error;
25
+ return new AcpRuntimeError("ACP_SESSION_INIT_FAILED", `Session is not ACP-enabled: ${resolution.sessionKey}`);
26
+ }
27
+ function requireReadySessionMeta(resolution) {
28
+ if (resolution.kind === "ready") return resolution.meta;
29
+ throw resolveAcpSessionResolutionError(resolution);
30
+ }
31
+ function normalizeSessionKey(sessionKey) {
32
+ return sessionKey.trim();
33
+ }
34
+ function canonicalizeAcpSessionKey(params) {
35
+ const normalized = normalizeSessionKey(params.sessionKey);
36
+ if (!normalized) return "";
37
+ const lowered = normalizeLowercaseStringOrEmpty(normalized);
38
+ if (lowered === "global" || lowered === "unknown") return lowered;
39
+ const parsed = parseAgentSessionKey(lowered);
40
+ if (parsed) return canonicalizeMainSessionAlias({
41
+ cfg: params.cfg,
42
+ agentId: parsed.agentId,
43
+ sessionKey: lowered
44
+ });
45
+ const mainKey = normalizeMainKey(params.cfg.session?.mainKey);
46
+ if (lowered === "main" || lowered === mainKey) return resolveMainSessionKey(params.cfg);
47
+ return lowered;
48
+ }
49
+ function normalizeActorKey(sessionKey) {
50
+ return normalizeLowercaseStringOrEmpty(sessionKey);
51
+ }
52
+ function normalizeAcpErrorCode(code) {
53
+ if (!code) return "ACP_TURN_FAILED";
54
+ const normalized = code.trim().toUpperCase();
55
+ for (const allowed of ACP_ERROR_CODES) if (allowed === normalized) return allowed;
56
+ return "ACP_TURN_FAILED";
57
+ }
58
+ function createUnsupportedControlError(params) {
59
+ return new AcpRuntimeError("ACP_BACKEND_UNSUPPORTED_CONTROL", `ACP backend "${params.backend}" does not support ${params.control}.`);
60
+ }
61
+ function resolveRuntimeIdleTtlMs(cfg) {
62
+ const ttlMinutes = cfg.acp?.runtime?.ttlMinutes;
63
+ if (typeof ttlMinutes !== "number" || !Number.isFinite(ttlMinutes) || ttlMinutes <= 0) return 0;
64
+ return Math.round(ttlMinutes * 60 * 1e3);
65
+ }
66
+ function hasLegacyAcpIdentityProjection(meta) {
67
+ const raw = meta;
68
+ return Object.hasOwn(raw, "backendSessionId") || Object.hasOwn(raw, "agentSessionId") || Object.hasOwn(raw, "sessionIdsProvisional");
69
+ }
70
+ //#endregion
71
+ //#region src/acp/control-plane/manager.identity-reconcile.ts
72
+ async function reconcileManagerRuntimeSessionIdentifiers(params) {
73
+ let runtimeStatus = params.runtimeStatus;
74
+ if (!runtimeStatus && params.runtime.getStatus) try {
75
+ runtimeStatus = await withAcpRuntimeErrorBoundary({
76
+ run: async () => await params.runtime.getStatus({ handle: params.handle }),
77
+ fallbackCode: "ACP_TURN_FAILED",
78
+ fallbackMessage: "Could not read ACP runtime status."
79
+ });
80
+ } catch (error) {
81
+ if (params.failOnStatusError) throw error;
82
+ logVerbose(`acp-manager: failed to refresh ACP runtime status for ${params.sessionKey}: ${String(error)}`);
83
+ return {
84
+ handle: params.handle,
85
+ meta: params.meta,
86
+ runtimeStatus
87
+ };
88
+ }
89
+ const now = Date.now();
90
+ const currentIdentity = resolveSessionIdentityFromMeta(params.meta);
91
+ const identityAfterEvent = mergeSessionIdentity({
92
+ current: currentIdentity,
93
+ incoming: createIdentityFromHandleEvent({
94
+ handle: params.handle,
95
+ now
96
+ }),
97
+ now
98
+ }) ?? currentIdentity;
99
+ const nextIdentity = mergeSessionIdentity({
100
+ current: identityAfterEvent,
101
+ incoming: createIdentityFromStatus({
102
+ status: runtimeStatus,
103
+ now
104
+ }),
105
+ now
106
+ }) ?? identityAfterEvent;
107
+ const handleIdentifiers = resolveRuntimeHandleIdentifiersFromIdentity(nextIdentity);
108
+ const handleChanged = handleIdentifiers.backendSessionId !== params.handle.backendSessionId || handleIdentifiers.agentSessionId !== params.handle.agentSessionId;
109
+ const nextHandle = handleChanged ? {
110
+ ...params.handle,
111
+ ...handleIdentifiers.backendSessionId ? { backendSessionId: handleIdentifiers.backendSessionId } : {},
112
+ ...handleIdentifiers.agentSessionId ? { agentSessionId: handleIdentifiers.agentSessionId } : {}
113
+ } : params.handle;
114
+ if (handleChanged) params.setCachedHandle(params.sessionKey, nextHandle);
115
+ if (!(!identityEquals(currentIdentity, nextIdentity) || hasLegacyAcpIdentityProjection(params.meta))) return {
116
+ handle: nextHandle,
117
+ meta: params.meta,
118
+ runtimeStatus
119
+ };
120
+ const nextMeta = {
121
+ backend: params.meta.backend,
122
+ agent: params.meta.agent,
123
+ runtimeSessionName: params.meta.runtimeSessionName,
124
+ ...nextIdentity ? { identity: nextIdentity } : {},
125
+ mode: params.meta.mode,
126
+ ...params.meta.runtimeOptions ? { runtimeOptions: params.meta.runtimeOptions } : {},
127
+ ...params.meta.cwd ? { cwd: params.meta.cwd } : {},
128
+ lastActivityAt: now,
129
+ state: params.meta.state,
130
+ ...params.meta.lastError ? { lastError: params.meta.lastError } : {}
131
+ };
132
+ if (!identityEquals(currentIdentity, nextIdentity)) {
133
+ const currentAgentSessionId = currentIdentity?.agentSessionId ?? "<none>";
134
+ const nextAgentSessionId = nextIdentity?.agentSessionId ?? "<none>";
135
+ const currentAcpxSessionId = currentIdentity?.acpxSessionId ?? "<none>";
136
+ const nextAcpxSessionId = nextIdentity?.acpxSessionId ?? "<none>";
137
+ const currentAcpxRecordId = currentIdentity?.acpxRecordId ?? "<none>";
138
+ const nextAcpxRecordId = nextIdentity?.acpxRecordId ?? "<none>";
139
+ logVerbose(`acp-manager: session identity updated for ${params.sessionKey} (agentSessionId ${currentAgentSessionId} -> ${nextAgentSessionId}, acpxSessionId ${currentAcpxSessionId} -> ${nextAcpxSessionId}, acpxRecordId ${currentAcpxRecordId} -> ${nextAcpxRecordId})`);
140
+ }
141
+ await params.writeSessionMeta({
142
+ cfg: params.cfg,
143
+ sessionKey: params.sessionKey,
144
+ mutate: (current, entry) => {
145
+ if (!entry) return null;
146
+ const base = current ?? entry.acp;
147
+ if (!base) return null;
148
+ return {
149
+ backend: base.backend,
150
+ agent: base.agent,
151
+ runtimeSessionName: base.runtimeSessionName,
152
+ ...nextIdentity ? { identity: nextIdentity } : {},
153
+ mode: base.mode,
154
+ ...base.runtimeOptions ? { runtimeOptions: base.runtimeOptions } : {},
155
+ ...base.cwd ? { cwd: base.cwd } : {},
156
+ state: base.state,
157
+ lastActivityAt: now,
158
+ ...base.lastError ? { lastError: base.lastError } : {}
159
+ };
160
+ }
161
+ });
162
+ return {
163
+ handle: nextHandle,
164
+ meta: nextMeta,
165
+ runtimeStatus
166
+ };
167
+ }
168
+ //#endregion
169
+ //#region src/acp/control-plane/runtime-options.ts
170
+ const MAX_RUNTIME_MODE_LENGTH = 64;
171
+ const MAX_MODEL_LENGTH = 200;
172
+ const MAX_PERMISSION_PROFILE_LENGTH = 80;
173
+ const MAX_CWD_LENGTH = 4096;
174
+ const MIN_TIMEOUT_SECONDS = 1;
175
+ const MAX_TIMEOUT_SECONDS = 1440 * 60;
176
+ const MAX_BACKEND_OPTION_KEY_LENGTH = 64;
177
+ const MAX_BACKEND_OPTION_VALUE_LENGTH = 512;
178
+ const MAX_BACKEND_EXTRAS = 32;
179
+ const SAFE_OPTION_KEY_RE = /^[a-z0-9][a-z0-9._:-]*$/i;
180
+ function failInvalidOption(message) {
181
+ throw new AcpRuntimeError("ACP_INVALID_RUNTIME_OPTION", message);
182
+ }
183
+ function validateNoControlChars(value, field) {
184
+ for (let i = 0; i < value.length; i += 1) {
185
+ const code = value.charCodeAt(i);
186
+ if (code < 32 || code === 127) failInvalidOption(`${field} must not include control characters.`);
187
+ }
188
+ return value;
189
+ }
190
+ function validateBoundedText(params) {
191
+ const normalized = normalizeOptionalString(params.value);
192
+ if (!normalized) failInvalidOption(`${params.field} must not be empty.`);
193
+ if (normalized.length > params.maxLength) failInvalidOption(`${params.field} must be at most ${params.maxLength} characters.`);
194
+ return validateNoControlChars(normalized, params.field);
195
+ }
196
+ function validateBackendOptionKey(rawKey) {
197
+ const key = validateBoundedText({
198
+ value: rawKey,
199
+ field: "ACP config key",
200
+ maxLength: MAX_BACKEND_OPTION_KEY_LENGTH
201
+ });
202
+ if (!SAFE_OPTION_KEY_RE.test(key)) failInvalidOption("ACP config key must use letters, numbers, dots, colons, underscores, or dashes.");
203
+ return key;
204
+ }
205
+ function validateBackendOptionValue(rawValue) {
206
+ return validateBoundedText({
207
+ value: rawValue,
208
+ field: "ACP config value",
209
+ maxLength: MAX_BACKEND_OPTION_VALUE_LENGTH
210
+ });
211
+ }
212
+ function validateRuntimeModeInput(rawMode) {
213
+ return validateBoundedText({
214
+ value: rawMode,
215
+ field: "Runtime mode",
216
+ maxLength: MAX_RUNTIME_MODE_LENGTH
217
+ });
218
+ }
219
+ function validateRuntimeModelInput(rawModel) {
220
+ return validateBoundedText({
221
+ value: rawModel,
222
+ field: "Model id",
223
+ maxLength: MAX_MODEL_LENGTH
224
+ });
225
+ }
226
+ function validateRuntimePermissionProfileInput(rawProfile) {
227
+ return validateBoundedText({
228
+ value: rawProfile,
229
+ field: "Permission profile",
230
+ maxLength: MAX_PERMISSION_PROFILE_LENGTH
231
+ });
232
+ }
233
+ function validateRuntimeCwdInput(rawCwd) {
234
+ const cwd = validateBoundedText({
235
+ value: rawCwd,
236
+ field: "Working directory",
237
+ maxLength: MAX_CWD_LENGTH
238
+ });
239
+ if (!isAbsolute(cwd)) failInvalidOption(`Working directory must be an absolute path. Received "${cwd}".`);
240
+ return cwd;
241
+ }
242
+ function validateRuntimeTimeoutSecondsInput(rawTimeout) {
243
+ if (typeof rawTimeout !== "number" || !Number.isFinite(rawTimeout)) failInvalidOption("Timeout must be a positive integer in seconds.");
244
+ const timeout = Math.round(rawTimeout);
245
+ if (timeout < MIN_TIMEOUT_SECONDS || timeout > MAX_TIMEOUT_SECONDS) failInvalidOption(`Timeout must be between ${MIN_TIMEOUT_SECONDS} and ${MAX_TIMEOUT_SECONDS} seconds.`);
246
+ return timeout;
247
+ }
248
+ function parseRuntimeTimeoutSecondsInput(rawTimeout) {
249
+ const normalized = normalizeOptionalString(rawTimeout);
250
+ if (!normalized || !/^\d+$/.test(normalized)) failInvalidOption("Timeout must be a positive integer in seconds.");
251
+ return validateRuntimeTimeoutSecondsInput(Number.parseInt(normalized, 10));
252
+ }
253
+ function validateRuntimeConfigOptionInput(rawKey, rawValue) {
254
+ return {
255
+ key: validateBackendOptionKey(rawKey),
256
+ value: validateBackendOptionValue(rawValue)
257
+ };
258
+ }
259
+ function validateRuntimeOptionPatch(patch) {
260
+ if (!patch) return {};
261
+ const rawPatch = patch;
262
+ const allowedKeys = new Set([
263
+ "runtimeMode",
264
+ "model",
265
+ "cwd",
266
+ "permissionProfile",
267
+ "timeoutSeconds",
268
+ "backendExtras"
269
+ ]);
270
+ for (const key of Object.keys(rawPatch)) if (!allowedKeys.has(key)) failInvalidOption(`Unknown runtime option "${key}".`);
271
+ const next = {};
272
+ if (Object.hasOwn(rawPatch, "runtimeMode")) if (rawPatch.runtimeMode === void 0) next.runtimeMode = void 0;
273
+ else next.runtimeMode = validateRuntimeModeInput(rawPatch.runtimeMode);
274
+ if (Object.hasOwn(rawPatch, "model")) if (rawPatch.model === void 0) next.model = void 0;
275
+ else next.model = validateRuntimeModelInput(rawPatch.model);
276
+ if (Object.hasOwn(rawPatch, "cwd")) if (rawPatch.cwd === void 0) next.cwd = void 0;
277
+ else next.cwd = validateRuntimeCwdInput(rawPatch.cwd);
278
+ if (Object.hasOwn(rawPatch, "permissionProfile")) if (rawPatch.permissionProfile === void 0) next.permissionProfile = void 0;
279
+ else next.permissionProfile = validateRuntimePermissionProfileInput(rawPatch.permissionProfile);
280
+ if (Object.hasOwn(rawPatch, "timeoutSeconds")) if (rawPatch.timeoutSeconds === void 0) next.timeoutSeconds = void 0;
281
+ else next.timeoutSeconds = validateRuntimeTimeoutSecondsInput(rawPatch.timeoutSeconds);
282
+ if (Object.hasOwn(rawPatch, "backendExtras")) {
283
+ const rawExtras = rawPatch.backendExtras;
284
+ if (rawExtras === void 0) next.backendExtras = void 0;
285
+ else if (!rawExtras || typeof rawExtras !== "object" || Array.isArray(rawExtras)) failInvalidOption("Backend extras must be a key/value object.");
286
+ else {
287
+ const entries = Object.entries(rawExtras);
288
+ if (entries.length > MAX_BACKEND_EXTRAS) failInvalidOption(`Backend extras must include at most ${MAX_BACKEND_EXTRAS} entries.`);
289
+ const extras = {};
290
+ for (const [entryKey, entryValue] of entries) {
291
+ const { key, value } = validateRuntimeConfigOptionInput(entryKey, entryValue);
292
+ extras[key] = value;
293
+ }
294
+ next.backendExtras = Object.keys(extras).length > 0 ? extras : void 0;
295
+ }
296
+ }
297
+ return next;
298
+ }
299
+ function normalizeRuntimeOptions(options) {
300
+ const runtimeMode = normalizeOptionalString(options?.runtimeMode);
301
+ const model = normalizeOptionalString(options?.model);
302
+ const cwd = normalizeOptionalString(options?.cwd);
303
+ const permissionProfile = normalizeOptionalString(options?.permissionProfile);
304
+ let timeoutSeconds;
305
+ if (typeof options?.timeoutSeconds === "number" && Number.isFinite(options.timeoutSeconds)) {
306
+ const rounded = Math.round(options.timeoutSeconds);
307
+ if (rounded > 0) timeoutSeconds = rounded;
308
+ }
309
+ const backendExtrasEntries = Object.entries(options?.backendExtras ?? {}).map(([key, value]) => [normalizeOptionalString(key), normalizeOptionalString(value)]).filter(([key, value]) => Boolean(key && value));
310
+ const backendExtras = backendExtrasEntries.length > 0 ? Object.fromEntries(backendExtrasEntries) : void 0;
311
+ return {
312
+ ...runtimeMode ? { runtimeMode } : {},
313
+ ...model ? { model } : {},
314
+ ...cwd ? { cwd } : {},
315
+ ...permissionProfile ? { permissionProfile } : {},
316
+ ...typeof timeoutSeconds === "number" ? { timeoutSeconds } : {},
317
+ ...backendExtras ? { backendExtras } : {}
318
+ };
319
+ }
320
+ function mergeRuntimeOptions(params) {
321
+ const current = normalizeRuntimeOptions(params.current);
322
+ const patch = normalizeRuntimeOptions(validateRuntimeOptionPatch(params.patch));
323
+ const mergedExtras = {
324
+ ...current.backendExtras,
325
+ ...patch.backendExtras
326
+ };
327
+ return normalizeRuntimeOptions({
328
+ ...current,
329
+ ...patch,
330
+ ...Object.keys(mergedExtras).length > 0 ? { backendExtras: mergedExtras } : {}
331
+ });
332
+ }
333
+ function resolveRuntimeOptionsFromMeta(meta) {
334
+ const normalized = normalizeRuntimeOptions(meta.runtimeOptions);
335
+ if (normalized.cwd || !meta.cwd) return normalized;
336
+ return normalizeRuntimeOptions({
337
+ ...normalized,
338
+ cwd: meta.cwd
339
+ });
340
+ }
341
+ function runtimeOptionsEqual(a, b) {
342
+ return JSON.stringify(normalizeRuntimeOptions(a)) === JSON.stringify(normalizeRuntimeOptions(b));
343
+ }
344
+ function buildRuntimeControlSignature(options) {
345
+ const normalized = normalizeRuntimeOptions(options);
346
+ const extras = Object.entries(normalized.backendExtras ?? {}).toSorted(([a], [b]) => a.localeCompare(b));
347
+ return JSON.stringify({
348
+ runtimeMode: normalized.runtimeMode ?? null,
349
+ model: normalized.model ?? null,
350
+ permissionProfile: normalized.permissionProfile ?? null,
351
+ timeoutSeconds: normalized.timeoutSeconds ?? null,
352
+ backendExtras: extras
353
+ });
354
+ }
355
+ function buildRuntimeConfigOptionPairs(options) {
356
+ const normalized = normalizeRuntimeOptions(options);
357
+ const pairs = /* @__PURE__ */ new Map();
358
+ if (normalized.model) pairs.set("model", normalized.model);
359
+ if (normalized.permissionProfile) pairs.set("approval_policy", normalized.permissionProfile);
360
+ if (typeof normalized.timeoutSeconds === "number") pairs.set("timeout", String(normalized.timeoutSeconds));
361
+ for (const [key, value] of Object.entries(normalized.backendExtras ?? {})) if (!pairs.has(key)) pairs.set(key, value);
362
+ return [...pairs.entries()];
363
+ }
364
+ function inferRuntimeOptionPatchFromConfigOption(key, value) {
365
+ const validated = validateRuntimeConfigOptionInput(key, value);
366
+ const normalizedKey = normalizeLowercaseStringOrEmpty(validated.key);
367
+ if (normalizedKey === "model") return { model: validateRuntimeModelInput(validated.value) };
368
+ if (normalizedKey === "approval_policy" || normalizedKey === "permission_profile" || normalizedKey === "permissions") return { permissionProfile: validateRuntimePermissionProfileInput(validated.value) };
369
+ if (normalizedKey === "timeout" || normalizedKey === "timeout_seconds") return { timeoutSeconds: parseRuntimeTimeoutSecondsInput(validated.value) };
370
+ if (normalizedKey === "cwd") return { cwd: validateRuntimeCwdInput(validated.value) };
371
+ return { backendExtras: { [validated.key]: validated.value } };
372
+ }
373
+ //#endregion
374
+ //#region src/acp/control-plane/manager.runtime-controls.ts
375
+ async function resolveManagerRuntimeCapabilities(params) {
376
+ let reported;
377
+ if (params.runtime.getCapabilities) reported = await withAcpRuntimeErrorBoundary({
378
+ run: async () => await params.runtime.getCapabilities({ handle: params.handle }),
379
+ fallbackCode: "ACP_TURN_FAILED",
380
+ fallbackMessage: "Could not read ACP runtime capabilities."
381
+ });
382
+ const controls = new Set(reported?.controls ?? []);
383
+ if (params.runtime.setMode) controls.add("session/set_mode");
384
+ if (params.runtime.setConfigOption) controls.add("session/set_config_option");
385
+ if (params.runtime.getStatus) controls.add("session/status");
386
+ const normalizedKeys = (reported?.configOptionKeys ?? []).map((entry) => normalizeOptionalString(entry)).filter(Boolean);
387
+ return {
388
+ controls: [...controls].toSorted(),
389
+ ...normalizedKeys.length > 0 ? { configOptionKeys: normalizedKeys } : {}
390
+ };
391
+ }
392
+ async function applyManagerRuntimeControls(params) {
393
+ const options = resolveRuntimeOptionsFromMeta(params.meta);
394
+ const signature = buildRuntimeControlSignature(options);
395
+ const cached = params.getCachedRuntimeState(params.sessionKey);
396
+ if (cached?.appliedControlSignature === signature) return;
397
+ const capabilities = await resolveManagerRuntimeCapabilities({
398
+ runtime: params.runtime,
399
+ handle: params.handle
400
+ });
401
+ const backend = params.handle.backend || params.meta.backend;
402
+ const runtimeMode = normalizeOptionalString(options.runtimeMode);
403
+ const configOptions = buildRuntimeConfigOptionPairs(options);
404
+ const advertisedKeys = new Set((capabilities.configOptionKeys ?? []).map((entry) => normalizeOptionalString(entry)).filter(Boolean));
405
+ await withAcpRuntimeErrorBoundary({
406
+ run: async () => {
407
+ if (runtimeMode) {
408
+ if (!capabilities.controls.includes("session/set_mode") || !params.runtime.setMode) throw createUnsupportedControlError({
409
+ backend,
410
+ control: "session/set_mode"
411
+ });
412
+ await params.runtime.setMode({
413
+ handle: params.handle,
414
+ mode: runtimeMode
415
+ });
416
+ }
417
+ if (configOptions.length > 0) {
418
+ if (!capabilities.controls.includes("session/set_config_option") || !params.runtime.setConfigOption) throw createUnsupportedControlError({
419
+ backend,
420
+ control: "session/set_config_option"
421
+ });
422
+ for (const [key, value] of configOptions) {
423
+ if (advertisedKeys.size > 0 && !advertisedKeys.has(key)) throw new AcpRuntimeError("ACP_BACKEND_UNSUPPORTED_CONTROL", `ACP backend "${backend}" does not accept config key "${key}".`);
424
+ await params.runtime.setConfigOption({
425
+ handle: params.handle,
426
+ key,
427
+ value
428
+ });
429
+ }
430
+ }
431
+ },
432
+ fallbackCode: "ACP_TURN_FAILED",
433
+ fallbackMessage: "Could not apply ACP runtime options before turn execution."
434
+ });
435
+ if (cached) cached.appliedControlSignature = signature;
436
+ }
437
+ //#endregion
438
+ //#region src/acp/runtime/registry.ts
439
+ const ACP_RUNTIME_REGISTRY_STATE_KEY = Symbol.for("genesis.acpRuntimeRegistryState");
440
+ function resolveAcpRuntimeRegistryGlobalState() {
441
+ const processStore = process;
442
+ const existing = processStore[ACP_RUNTIME_REGISTRY_STATE_KEY];
443
+ if (existing) return existing;
444
+ const created = resolveGlobalSingleton(ACP_RUNTIME_REGISTRY_STATE_KEY, () => ({ backendsById: /* @__PURE__ */ new Map() }));
445
+ processStore[ACP_RUNTIME_REGISTRY_STATE_KEY] = created;
446
+ return created;
447
+ }
448
+ const ACP_BACKENDS_BY_ID = resolveAcpRuntimeRegistryGlobalState().backendsById;
449
+ function isBackendHealthy(backend) {
450
+ if (!backend.healthy) return true;
451
+ try {
452
+ return backend.healthy();
453
+ } catch {
454
+ return false;
455
+ }
456
+ }
457
+ function registerAcpRuntimeBackend(backend) {
458
+ const id = normalizeOptionalLowercaseString(backend.id) || "";
459
+ if (!id) throw new Error("ACP runtime backend id is required");
460
+ if (!backend.runtime) throw new Error(`ACP runtime backend "${id}" is missing runtime implementation`);
461
+ ACP_BACKENDS_BY_ID.set(id, {
462
+ ...backend,
463
+ id
464
+ });
465
+ }
466
+ function unregisterAcpRuntimeBackend(id) {
467
+ const normalized = normalizeOptionalLowercaseString(id) || "";
468
+ if (!normalized) return;
469
+ ACP_BACKENDS_BY_ID.delete(normalized);
470
+ }
471
+ function getAcpRuntimeBackend(id) {
472
+ const normalized = normalizeOptionalLowercaseString(id) || "";
473
+ if (normalized) return ACP_BACKENDS_BY_ID.get(normalized) ?? null;
474
+ if (ACP_BACKENDS_BY_ID.size === 0) return null;
475
+ for (const backend of ACP_BACKENDS_BY_ID.values()) if (isBackendHealthy(backend)) return backend;
476
+ return ACP_BACKENDS_BY_ID.values().next().value ?? null;
477
+ }
478
+ function requireAcpRuntimeBackend(id) {
479
+ const normalized = normalizeOptionalLowercaseString(id) || "";
480
+ const backend = getAcpRuntimeBackend(normalized || void 0);
481
+ if (!backend) throw new AcpRuntimeError("ACP_BACKEND_MISSING", "ACP runtime backend is not configured. Install and enable the acpx runtime plugin.");
482
+ if (!isBackendHealthy(backend)) throw new AcpRuntimeError("ACP_BACKEND_UNAVAILABLE", "ACP runtime backend is currently unavailable. Try again in a moment.");
483
+ if (normalized && backend.id !== normalized) throw new AcpRuntimeError("ACP_BACKEND_MISSING", `ACP runtime backend "${normalized}" is not registered.`);
484
+ return backend;
485
+ }
486
+ const __testing$1 = {
487
+ resetAcpRuntimeBackendsForTests() {
488
+ ACP_BACKENDS_BY_ID.clear();
489
+ },
490
+ getAcpRuntimeRegistryGlobalStateForTests() {
491
+ return resolveAcpRuntimeRegistryGlobalState();
492
+ }
493
+ };
494
+ //#endregion
495
+ //#region src/acp/control-plane/manager.types.ts
496
+ const DEFAULT_DEPS = {
497
+ listAcpSessions: listAcpSessionEntries,
498
+ readSessionEntry: readAcpSessionEntry,
499
+ upsertSessionMeta: upsertAcpSessionMeta,
500
+ getRuntimeBackend: getAcpRuntimeBackend,
501
+ requireRuntimeBackend: requireAcpRuntimeBackend
502
+ };
503
+ //#endregion
504
+ //#region src/acp/control-plane/runtime-cache.ts
505
+ var RuntimeCache = class {
506
+ constructor() {
507
+ this.cache = /* @__PURE__ */ new Map();
508
+ }
509
+ size() {
510
+ return this.cache.size;
511
+ }
512
+ has(actorKey) {
513
+ return this.cache.has(actorKey);
514
+ }
515
+ get(actorKey, params = {}) {
516
+ const entry = this.cache.get(actorKey);
517
+ if (!entry) return null;
518
+ if (params.touch !== false) entry.lastTouchedAt = params.now ?? Date.now();
519
+ return entry.state;
520
+ }
521
+ peek(actorKey) {
522
+ return this.get(actorKey, { touch: false });
523
+ }
524
+ getLastTouchedAt(actorKey) {
525
+ return this.cache.get(actorKey)?.lastTouchedAt ?? null;
526
+ }
527
+ set(actorKey, state, params = {}) {
528
+ this.cache.set(actorKey, {
529
+ state,
530
+ lastTouchedAt: params.now ?? Date.now()
531
+ });
532
+ }
533
+ clear(actorKey) {
534
+ this.cache.delete(actorKey);
535
+ }
536
+ snapshot(params = {}) {
537
+ const now = params.now ?? Date.now();
538
+ const entries = [];
539
+ for (const [actorKey, entry] of this.cache.entries()) entries.push({
540
+ actorKey,
541
+ state: entry.state,
542
+ lastTouchedAt: entry.lastTouchedAt,
543
+ idleMs: Math.max(0, now - entry.lastTouchedAt)
544
+ });
545
+ return entries;
546
+ }
547
+ collectIdleCandidates(params) {
548
+ if (!Number.isFinite(params.maxIdleMs) || params.maxIdleMs <= 0) return [];
549
+ const now = params.now ?? Date.now();
550
+ return this.snapshot({ now }).filter((entry) => entry.idleMs >= params.maxIdleMs);
551
+ }
552
+ };
553
+ //#endregion
554
+ //#region src/acp/control-plane/session-actor-queue.ts
555
+ var SessionActorQueue = class {
556
+ constructor() {
557
+ this.queue = new KeyedAsyncQueue();
558
+ this.pendingBySession = /* @__PURE__ */ new Map();
559
+ }
560
+ getTailMapForTesting() {
561
+ return this.queue.getTailMapForTesting();
562
+ }
563
+ getTotalPendingCount() {
564
+ let total = 0;
565
+ for (const count of this.pendingBySession.values()) total += count;
566
+ return total;
567
+ }
568
+ getPendingCountForSession(actorKey) {
569
+ return this.pendingBySession.get(actorKey) ?? 0;
570
+ }
571
+ async run(actorKey, op) {
572
+ return this.queue.enqueue(actorKey, op, {
573
+ onEnqueue: () => {
574
+ this.pendingBySession.set(actorKey, (this.pendingBySession.get(actorKey) ?? 0) + 1);
575
+ },
576
+ onSettle: () => {
577
+ const pending = (this.pendingBySession.get(actorKey) ?? 1) - 1;
578
+ if (pending <= 0) this.pendingBySession.delete(actorKey);
579
+ else this.pendingBySession.set(actorKey, pending);
580
+ }
581
+ });
582
+ }
583
+ };
584
+ //#endregion
585
+ //#region src/acp/control-plane/manager.core.ts
586
+ const ACP_TURN_TIMEOUT_GRACE_MS = 1e3;
587
+ const ACP_TURN_TIMEOUT_CLEANUP_GRACE_MS = 2e3;
588
+ const ACP_TURN_TIMEOUT_REASON = "turn-timeout";
589
+ const ACP_BACKGROUND_TASK_TEXT_MAX_LENGTH = 160;
590
+ const ACP_BACKGROUND_TASK_PROGRESS_MAX_LENGTH = 240;
591
+ function summarizeBackgroundTaskText(text) {
592
+ const normalized = normalizeOptionalString(text) ?? "ACP background task";
593
+ if (normalized.length <= ACP_BACKGROUND_TASK_TEXT_MAX_LENGTH) return normalized;
594
+ return `${normalized.slice(0, ACP_BACKGROUND_TASK_TEXT_MAX_LENGTH - 1)}…`;
595
+ }
596
+ function appendBackgroundTaskProgressSummary(current, chunk) {
597
+ const normalizedChunk = normalizeOptionalString(chunk)?.replace(/\s+/g, " ");
598
+ if (!normalizedChunk) return current;
599
+ const combined = current ? `${current} ${normalizedChunk}` : normalizedChunk;
600
+ if (combined.length <= ACP_BACKGROUND_TASK_PROGRESS_MAX_LENGTH) return combined;
601
+ return `${combined.slice(0, ACP_BACKGROUND_TASK_PROGRESS_MAX_LENGTH - 1)}…`;
602
+ }
603
+ function resolveBackgroundTaskFailureStatus(error) {
604
+ return /\btimed out\b/i.test(error.message) ? "timed_out" : "failed";
605
+ }
606
+ function resolveBackgroundTaskTerminalResult(progressSummary) {
607
+ const normalized = normalizeOptionalString(progressSummary)?.replace(/\s+/g, " ").trim();
608
+ if (!normalized) return {};
609
+ const permissionDeniedMatch = normalized.match(/\b(?:write failed:\s*)?permission denied(?: for (?<path>\S+))?\.?/i);
610
+ if (permissionDeniedMatch) {
611
+ const path = normalizeOptionalString(permissionDeniedMatch.groups?.path)?.replace(/[.,;:!?]+$/, "");
612
+ return {
613
+ terminalOutcome: "blocked",
614
+ terminalSummary: path ? `Permission denied for ${path}.` : "Permission denied."
615
+ };
616
+ }
617
+ if (/\bneed a writable session\b/i.test(normalized) || /\bfilesystem authorization\b/i.test(normalized) || /`?apply_patch`?/i.test(normalized)) return {
618
+ terminalOutcome: "blocked",
619
+ terminalSummary: "Writable session or apply_patch authorization required."
620
+ };
621
+ return {};
622
+ }
623
+ var AcpSessionManager = class {
624
+ constructor(deps = DEFAULT_DEPS) {
625
+ this.deps = deps;
626
+ this.actorQueue = new SessionActorQueue();
627
+ this.actorTailBySession = this.actorQueue.getTailMapForTesting();
628
+ this.runtimeCache = new RuntimeCache();
629
+ this.activeTurnBySession = /* @__PURE__ */ new Map();
630
+ this.turnLatencyStats = {
631
+ completed: 0,
632
+ failed: 0,
633
+ totalMs: 0,
634
+ maxMs: 0
635
+ };
636
+ this.errorCountsByCode = /* @__PURE__ */ new Map();
637
+ this.evictedRuntimeCount = 0;
638
+ }
639
+ resolveSession(params) {
640
+ const sessionKey = canonicalizeAcpSessionKey(params);
641
+ if (!sessionKey) return {
642
+ kind: "none",
643
+ sessionKey
644
+ };
645
+ const acp = this.deps.readSessionEntry({
646
+ cfg: params.cfg,
647
+ sessionKey
648
+ })?.acp;
649
+ if (acp) return {
650
+ kind: "ready",
651
+ sessionKey,
652
+ meta: acp
653
+ };
654
+ if (isAcpSessionKey(sessionKey)) return {
655
+ kind: "stale",
656
+ sessionKey,
657
+ error: resolveMissingMetaError(sessionKey)
658
+ };
659
+ return {
660
+ kind: "none",
661
+ sessionKey
662
+ };
663
+ }
664
+ getObservabilitySnapshot(cfg) {
665
+ const completedTurns = this.turnLatencyStats.completed + this.turnLatencyStats.failed;
666
+ const averageLatencyMs = completedTurns > 0 ? Math.round(this.turnLatencyStats.totalMs / completedTurns) : 0;
667
+ return {
668
+ runtimeCache: {
669
+ activeSessions: this.runtimeCache.size(),
670
+ idleTtlMs: resolveRuntimeIdleTtlMs(cfg),
671
+ evictedTotal: this.evictedRuntimeCount,
672
+ ...this.lastEvictedAt ? { lastEvictedAt: this.lastEvictedAt } : {}
673
+ },
674
+ turns: {
675
+ active: this.activeTurnBySession.size,
676
+ queueDepth: this.actorQueue.getTotalPendingCount(),
677
+ completed: this.turnLatencyStats.completed,
678
+ failed: this.turnLatencyStats.failed,
679
+ averageLatencyMs,
680
+ maxLatencyMs: this.turnLatencyStats.maxMs
681
+ },
682
+ errorsByCode: Object.fromEntries([...this.errorCountsByCode.entries()].toSorted(([a], [b]) => a.localeCompare(b)))
683
+ };
684
+ }
685
+ async reconcilePendingSessionIdentities(params) {
686
+ let checked = 0;
687
+ let resolved = 0;
688
+ let failed = 0;
689
+ let acpSessions;
690
+ try {
691
+ acpSessions = await this.deps.listAcpSessions({ cfg: params.cfg });
692
+ } catch (error) {
693
+ logVerbose(`acp-manager: startup identity scan failed: ${String(error)}`);
694
+ return {
695
+ checked,
696
+ resolved,
697
+ failed: failed + 1
698
+ };
699
+ }
700
+ for (const session of acpSessions) {
701
+ if (!session.acp || !session.sessionKey) continue;
702
+ const currentIdentity = resolveSessionIdentityFromMeta(session.acp);
703
+ if (!isSessionIdentityPending(currentIdentity) || !identityHasStableSessionId(currentIdentity)) continue;
704
+ checked += 1;
705
+ try {
706
+ if (await this.withSessionActor(session.sessionKey, async () => {
707
+ const resolution = this.resolveSession({
708
+ cfg: params.cfg,
709
+ sessionKey: session.sessionKey
710
+ });
711
+ if (resolution.kind !== "ready") return false;
712
+ const { runtime, handle, meta } = await this.ensureRuntimeHandle({
713
+ cfg: params.cfg,
714
+ sessionKey: session.sessionKey,
715
+ meta: resolution.meta
716
+ });
717
+ return !isSessionIdentityPending(resolveSessionIdentityFromMeta((await this.reconcileRuntimeSessionIdentifiers({
718
+ cfg: params.cfg,
719
+ sessionKey: session.sessionKey,
720
+ runtime,
721
+ handle,
722
+ meta,
723
+ failOnStatusError: false
724
+ })).meta));
725
+ })) resolved += 1;
726
+ } catch (error) {
727
+ failed += 1;
728
+ logVerbose(`acp-manager: startup identity reconcile failed for ${session.sessionKey}: ${String(error)}`);
729
+ }
730
+ }
731
+ return {
732
+ checked,
733
+ resolved,
734
+ failed
735
+ };
736
+ }
737
+ async initializeSession(input) {
738
+ const sessionKey = canonicalizeAcpSessionKey({
739
+ cfg: input.cfg,
740
+ sessionKey: input.sessionKey
741
+ });
742
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
743
+ const agent = normalizeAgentId(input.agent);
744
+ await this.evictIdleRuntimeHandles({ cfg: input.cfg });
745
+ return await this.withSessionActor(sessionKey, async () => {
746
+ const backend = this.deps.requireRuntimeBackend(input.backendId || input.cfg.acp?.backend);
747
+ const runtime = backend.runtime;
748
+ const initialRuntimeOptions = validateRuntimeOptionPatch({
749
+ ...input.runtimeOptions,
750
+ ...input.cwd !== void 0 ? { cwd: input.cwd } : {}
751
+ });
752
+ const requestedCwd = initialRuntimeOptions.cwd;
753
+ this.enforceConcurrentSessionLimit({
754
+ cfg: input.cfg,
755
+ sessionKey
756
+ });
757
+ const handle = await withAcpRuntimeErrorBoundary({
758
+ run: async () => await runtime.ensureSession({
759
+ sessionKey,
760
+ agent,
761
+ mode: input.mode,
762
+ resumeSessionId: input.resumeSessionId,
763
+ cwd: requestedCwd
764
+ }),
765
+ fallbackCode: "ACP_SESSION_INIT_FAILED",
766
+ fallbackMessage: "Could not initialize ACP session runtime."
767
+ });
768
+ const effectiveCwd = normalizeOptionalString(handle.cwd) ?? requestedCwd;
769
+ const effectiveRuntimeOptions = normalizeRuntimeOptions({
770
+ ...initialRuntimeOptions,
771
+ ...effectiveCwd ? { cwd: effectiveCwd } : {}
772
+ });
773
+ const identityNow = Date.now();
774
+ const initializedIdentity = mergeSessionIdentity({
775
+ current: void 0,
776
+ incoming: createIdentityFromEnsure({
777
+ handle,
778
+ now: identityNow
779
+ }),
780
+ now: identityNow
781
+ }) ?? {
782
+ state: "pending",
783
+ source: "ensure",
784
+ lastUpdatedAt: identityNow
785
+ };
786
+ const meta = {
787
+ backend: handle.backend || backend.id,
788
+ agent,
789
+ runtimeSessionName: handle.runtimeSessionName,
790
+ identity: initializedIdentity,
791
+ mode: input.mode,
792
+ ...Object.keys(effectiveRuntimeOptions).length > 0 ? { runtimeOptions: effectiveRuntimeOptions } : {},
793
+ cwd: effectiveCwd,
794
+ state: "idle",
795
+ lastActivityAt: Date.now()
796
+ };
797
+ let persisted = null;
798
+ try {
799
+ persisted = await this.writeSessionMeta({
800
+ cfg: input.cfg,
801
+ sessionKey,
802
+ mutate: () => meta,
803
+ failOnError: true
804
+ });
805
+ } catch (error) {
806
+ await runtime.close({
807
+ handle,
808
+ reason: "init-meta-failed"
809
+ }).catch((closeError) => {
810
+ logVerbose(`acp-manager: cleanup close failed after metadata write error for ${sessionKey}: ${String(closeError)}`);
811
+ });
812
+ throw error;
813
+ }
814
+ if (!persisted?.acp) {
815
+ await runtime.close({
816
+ handle,
817
+ reason: "init-meta-failed"
818
+ }).catch((closeError) => {
819
+ logVerbose(`acp-manager: cleanup close failed after metadata write error for ${sessionKey}: ${String(closeError)}`);
820
+ });
821
+ throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", `Could not persist ACP metadata for ${sessionKey}.`);
822
+ }
823
+ this.setCachedRuntimeState(sessionKey, {
824
+ runtime,
825
+ handle,
826
+ backend: handle.backend || backend.id,
827
+ agent,
828
+ mode: input.mode,
829
+ cwd: effectiveCwd
830
+ });
831
+ return {
832
+ runtime,
833
+ handle,
834
+ meta
835
+ };
836
+ });
837
+ }
838
+ async getSessionStatus(params) {
839
+ const sessionKey = canonicalizeAcpSessionKey(params);
840
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
841
+ this.throwIfAborted(params.signal);
842
+ await this.evictIdleRuntimeHandles({ cfg: params.cfg });
843
+ return await this.withSessionActor(sessionKey, async () => {
844
+ this.throwIfAborted(params.signal);
845
+ const resolvedMeta = requireReadySessionMeta(this.resolveSession({
846
+ cfg: params.cfg,
847
+ sessionKey
848
+ }));
849
+ const { runtime, handle: ensuredHandle, meta: ensuredMeta } = await this.ensureRuntimeHandle({
850
+ cfg: params.cfg,
851
+ sessionKey,
852
+ meta: resolvedMeta
853
+ });
854
+ let handle = ensuredHandle;
855
+ let meta = ensuredMeta;
856
+ const capabilities = await this.resolveRuntimeCapabilities({
857
+ runtime,
858
+ handle
859
+ });
860
+ let runtimeStatus;
861
+ if (runtime.getStatus) runtimeStatus = await withAcpRuntimeErrorBoundary({
862
+ run: async () => {
863
+ this.throwIfAborted(params.signal);
864
+ const status = await runtime.getStatus({
865
+ handle,
866
+ ...params.signal ? { signal: params.signal } : {}
867
+ });
868
+ this.throwIfAborted(params.signal);
869
+ return status;
870
+ },
871
+ fallbackCode: "ACP_TURN_FAILED",
872
+ fallbackMessage: "Could not read ACP runtime status."
873
+ });
874
+ ({handle, meta, runtimeStatus} = await this.reconcileRuntimeSessionIdentifiers({
875
+ cfg: params.cfg,
876
+ sessionKey,
877
+ runtime,
878
+ handle,
879
+ meta,
880
+ runtimeStatus,
881
+ failOnStatusError: true
882
+ }));
883
+ const identity = resolveSessionIdentityFromMeta(meta);
884
+ return {
885
+ sessionKey,
886
+ backend: handle.backend || meta.backend,
887
+ agent: meta.agent,
888
+ ...identity ? { identity } : {},
889
+ state: meta.state,
890
+ mode: meta.mode,
891
+ runtimeOptions: resolveRuntimeOptionsFromMeta(meta),
892
+ capabilities,
893
+ runtimeStatus,
894
+ lastActivityAt: meta.lastActivityAt,
895
+ lastError: meta.lastError
896
+ };
897
+ }, params.signal);
898
+ }
899
+ async setSessionRuntimeMode(params) {
900
+ const sessionKey = canonicalizeAcpSessionKey(params);
901
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
902
+ const runtimeMode = validateRuntimeModeInput(params.runtimeMode);
903
+ await this.evictIdleRuntimeHandles({ cfg: params.cfg });
904
+ return await this.withSessionActor(sessionKey, async () => {
905
+ const resolvedMeta = requireReadySessionMeta(this.resolveSession({
906
+ cfg: params.cfg,
907
+ sessionKey
908
+ }));
909
+ const { runtime, handle, meta } = await this.ensureRuntimeHandle({
910
+ cfg: params.cfg,
911
+ sessionKey,
912
+ meta: resolvedMeta
913
+ });
914
+ if (!(await this.resolveRuntimeCapabilities({
915
+ runtime,
916
+ handle
917
+ })).controls.includes("session/set_mode") || !runtime.setMode) throw createUnsupportedControlError({
918
+ backend: handle.backend || meta.backend,
919
+ control: "session/set_mode"
920
+ });
921
+ await withAcpRuntimeErrorBoundary({
922
+ run: async () => await runtime.setMode({
923
+ handle,
924
+ mode: runtimeMode
925
+ }),
926
+ fallbackCode: "ACP_TURN_FAILED",
927
+ fallbackMessage: "Could not update ACP runtime mode."
928
+ });
929
+ const nextOptions = mergeRuntimeOptions({
930
+ current: resolveRuntimeOptionsFromMeta(meta),
931
+ patch: { runtimeMode }
932
+ });
933
+ await this.persistRuntimeOptions({
934
+ cfg: params.cfg,
935
+ sessionKey,
936
+ options: nextOptions
937
+ });
938
+ return nextOptions;
939
+ });
940
+ }
941
+ async setSessionConfigOption(params) {
942
+ const sessionKey = canonicalizeAcpSessionKey(params);
943
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
944
+ const normalizedOption = validateRuntimeConfigOptionInput(params.key, params.value);
945
+ const key = normalizedOption.key;
946
+ const value = normalizedOption.value;
947
+ await this.evictIdleRuntimeHandles({ cfg: params.cfg });
948
+ return await this.withSessionActor(sessionKey, async () => {
949
+ const resolvedMeta = requireReadySessionMeta(this.resolveSession({
950
+ cfg: params.cfg,
951
+ sessionKey
952
+ }));
953
+ const { runtime, handle, meta } = await this.ensureRuntimeHandle({
954
+ cfg: params.cfg,
955
+ sessionKey,
956
+ meta: resolvedMeta
957
+ });
958
+ const inferredPatch = inferRuntimeOptionPatchFromConfigOption(key, value);
959
+ const capabilities = await this.resolveRuntimeCapabilities({
960
+ runtime,
961
+ handle
962
+ });
963
+ if (!capabilities.controls.includes("session/set_config_option") || !runtime.setConfigOption) throw createUnsupportedControlError({
964
+ backend: handle.backend || meta.backend,
965
+ control: "session/set_config_option"
966
+ });
967
+ const advertisedKeys = new Set((capabilities.configOptionKeys ?? []).map((entry) => normalizeOptionalString(entry)).filter(Boolean));
968
+ if (advertisedKeys.size > 0 && !advertisedKeys.has(key)) throw new AcpRuntimeError("ACP_BACKEND_UNSUPPORTED_CONTROL", `ACP backend "${handle.backend || meta.backend}" does not accept config key "${key}".`);
969
+ await withAcpRuntimeErrorBoundary({
970
+ run: async () => await runtime.setConfigOption({
971
+ handle,
972
+ key,
973
+ value
974
+ }),
975
+ fallbackCode: "ACP_TURN_FAILED",
976
+ fallbackMessage: "Could not update ACP runtime config option."
977
+ });
978
+ const nextOptions = mergeRuntimeOptions({
979
+ current: resolveRuntimeOptionsFromMeta(meta),
980
+ patch: inferredPatch
981
+ });
982
+ await this.persistRuntimeOptions({
983
+ cfg: params.cfg,
984
+ sessionKey,
985
+ options: nextOptions
986
+ });
987
+ return nextOptions;
988
+ });
989
+ }
990
+ async updateSessionRuntimeOptions(params) {
991
+ const sessionKey = canonicalizeAcpSessionKey(params);
992
+ const validatedPatch = validateRuntimeOptionPatch(params.patch);
993
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
994
+ await this.evictIdleRuntimeHandles({ cfg: params.cfg });
995
+ return await this.withSessionActor(sessionKey, async () => {
996
+ const nextOptions = mergeRuntimeOptions({
997
+ current: resolveRuntimeOptionsFromMeta(requireReadySessionMeta(this.resolveSession({
998
+ cfg: params.cfg,
999
+ sessionKey
1000
+ }))),
1001
+ patch: validatedPatch
1002
+ });
1003
+ await this.persistRuntimeOptions({
1004
+ cfg: params.cfg,
1005
+ sessionKey,
1006
+ options: nextOptions
1007
+ });
1008
+ return nextOptions;
1009
+ });
1010
+ }
1011
+ async resetSessionRuntimeOptions(params) {
1012
+ const sessionKey = canonicalizeAcpSessionKey(params);
1013
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
1014
+ await this.evictIdleRuntimeHandles({ cfg: params.cfg });
1015
+ return await this.withSessionActor(sessionKey, async () => {
1016
+ const resolvedMeta = requireReadySessionMeta(this.resolveSession({
1017
+ cfg: params.cfg,
1018
+ sessionKey
1019
+ }));
1020
+ const { runtime, handle } = await this.ensureRuntimeHandle({
1021
+ cfg: params.cfg,
1022
+ sessionKey,
1023
+ meta: resolvedMeta
1024
+ });
1025
+ await withAcpRuntimeErrorBoundary({
1026
+ run: async () => await runtime.close({
1027
+ handle,
1028
+ reason: "reset-runtime-options"
1029
+ }),
1030
+ fallbackCode: "ACP_TURN_FAILED",
1031
+ fallbackMessage: "Could not reset ACP runtime options."
1032
+ });
1033
+ this.clearCachedRuntimeState(sessionKey);
1034
+ await this.persistRuntimeOptions({
1035
+ cfg: params.cfg,
1036
+ sessionKey,
1037
+ options: {}
1038
+ });
1039
+ return {};
1040
+ });
1041
+ }
1042
+ async runTurn(input) {
1043
+ const sessionKey = canonicalizeAcpSessionKey({
1044
+ cfg: input.cfg,
1045
+ sessionKey: input.sessionKey
1046
+ });
1047
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
1048
+ await this.evictIdleRuntimeHandles({ cfg: input.cfg });
1049
+ await this.withSessionActor(sessionKey, async () => {
1050
+ const turnStartedAt = Date.now();
1051
+ const actorKey = normalizeActorKey(sessionKey);
1052
+ const taskContext = input.mode === "prompt" ? this.resolveBackgroundTaskContext({
1053
+ cfg: input.cfg,
1054
+ sessionKey,
1055
+ requestId: input.requestId,
1056
+ text: input.text
1057
+ }) : null;
1058
+ if (taskContext) this.createBackgroundTaskRecord(taskContext, turnStartedAt);
1059
+ let taskProgressSummary = "";
1060
+ for (let attempt = 0; attempt < 2; attempt += 1) {
1061
+ const resolvedMeta = requireReadySessionMeta(this.resolveSession({
1062
+ cfg: input.cfg,
1063
+ sessionKey
1064
+ }));
1065
+ let runtime;
1066
+ let handle;
1067
+ let meta;
1068
+ let activeTurn;
1069
+ let internalAbortController;
1070
+ let onCallerAbort;
1071
+ let activeTurnStarted = false;
1072
+ let sawTurnOutput = false;
1073
+ let retryFreshHandle = false;
1074
+ let skipPostTurnCleanup = false;
1075
+ try {
1076
+ const ensured = await this.ensureRuntimeHandle({
1077
+ cfg: input.cfg,
1078
+ sessionKey,
1079
+ meta: resolvedMeta
1080
+ });
1081
+ runtime = ensured.runtime;
1082
+ handle = ensured.handle;
1083
+ meta = ensured.meta;
1084
+ await this.applyRuntimeControls({
1085
+ sessionKey,
1086
+ runtime,
1087
+ handle,
1088
+ meta
1089
+ });
1090
+ await this.setSessionState({
1091
+ cfg: input.cfg,
1092
+ sessionKey,
1093
+ state: "running",
1094
+ clearLastError: true
1095
+ });
1096
+ internalAbortController = new AbortController();
1097
+ onCallerAbort = () => {
1098
+ internalAbortController?.abort();
1099
+ };
1100
+ if (input.signal?.aborted) internalAbortController.abort();
1101
+ else if (input.signal) input.signal.addEventListener("abort", onCallerAbort, { once: true });
1102
+ activeTurn = {
1103
+ runtime,
1104
+ handle,
1105
+ abortController: internalAbortController
1106
+ };
1107
+ this.activeTurnBySession.set(actorKey, activeTurn);
1108
+ activeTurnStarted = true;
1109
+ let streamError = null;
1110
+ const combinedSignal = input.signal && typeof AbortSignal.any === "function" ? AbortSignal.any([input.signal, internalAbortController.signal]) : internalAbortController.signal;
1111
+ const eventGate = { open: true };
1112
+ const turnPromise = (async () => {
1113
+ for await (const event of runtime.runTurn({
1114
+ handle,
1115
+ text: input.text,
1116
+ attachments: input.attachments,
1117
+ mode: input.mode,
1118
+ requestId: input.requestId,
1119
+ signal: combinedSignal
1120
+ })) {
1121
+ if (!eventGate.open) continue;
1122
+ if (event.type === "error") streamError = new AcpRuntimeError(normalizeAcpErrorCode(event.code), normalizeOptionalString(event.message) || "ACP turn failed before completion.");
1123
+ else if (event.type === "text_delta" || event.type === "tool_call") {
1124
+ sawTurnOutput = true;
1125
+ if (event.type === "text_delta" && event.stream !== "thought" && event.text) taskProgressSummary = appendBackgroundTaskProgressSummary(taskProgressSummary, event.text);
1126
+ if (taskContext) this.markBackgroundTaskRunning(taskContext.runId, {
1127
+ sessionKey,
1128
+ lastEventAt: Date.now(),
1129
+ progressSummary: taskProgressSummary || null
1130
+ });
1131
+ }
1132
+ if (input.onEvent) await input.onEvent(event);
1133
+ }
1134
+ if (eventGate.open && streamError) throw streamError;
1135
+ })();
1136
+ const turnTimeoutMs = this.resolveTurnTimeoutMs({
1137
+ cfg: input.cfg,
1138
+ meta
1139
+ });
1140
+ const sessionMode = meta.mode;
1141
+ await this.awaitTurnWithTimeout({
1142
+ sessionKey,
1143
+ turnPromise,
1144
+ timeoutMs: turnTimeoutMs + ACP_TURN_TIMEOUT_GRACE_MS,
1145
+ timeoutLabelMs: turnTimeoutMs,
1146
+ onTimeout: async () => {
1147
+ eventGate.open = false;
1148
+ skipPostTurnCleanup = true;
1149
+ if (!activeTurn) return;
1150
+ await this.cleanupTimedOutTurn({
1151
+ sessionKey,
1152
+ activeTurn,
1153
+ mode: sessionMode
1154
+ });
1155
+ }
1156
+ });
1157
+ if (streamError) throw streamError;
1158
+ this.recordTurnCompletion({ startedAt: turnStartedAt });
1159
+ if (taskContext) {
1160
+ const terminalResult = resolveBackgroundTaskTerminalResult(taskProgressSummary);
1161
+ this.markBackgroundTaskTerminal(taskContext.runId, {
1162
+ sessionKey,
1163
+ status: "succeeded",
1164
+ endedAt: Date.now(),
1165
+ lastEventAt: Date.now(),
1166
+ error: void 0,
1167
+ progressSummary: taskProgressSummary || null,
1168
+ terminalSummary: terminalResult.terminalSummary ?? null,
1169
+ terminalOutcome: terminalResult.terminalOutcome
1170
+ });
1171
+ }
1172
+ await this.setSessionState({
1173
+ cfg: input.cfg,
1174
+ sessionKey,
1175
+ state: "idle",
1176
+ clearLastError: true
1177
+ });
1178
+ return;
1179
+ } catch (error) {
1180
+ const acpError = toAcpRuntimeError({
1181
+ error,
1182
+ fallbackCode: activeTurnStarted ? "ACP_TURN_FAILED" : "ACP_SESSION_INIT_FAILED",
1183
+ fallbackMessage: activeTurnStarted ? "ACP turn failed before completion." : "Could not initialize ACP session runtime."
1184
+ });
1185
+ retryFreshHandle = await this.prepareFreshHandleRetry({
1186
+ attempt,
1187
+ cfg: input.cfg,
1188
+ sessionKey,
1189
+ error: acpError,
1190
+ sawTurnOutput,
1191
+ runtime,
1192
+ meta
1193
+ });
1194
+ if (retryFreshHandle) continue;
1195
+ this.recordTurnCompletion({
1196
+ startedAt: turnStartedAt,
1197
+ errorCode: acpError.code
1198
+ });
1199
+ if (taskContext) this.markBackgroundTaskTerminal(taskContext.runId, {
1200
+ sessionKey,
1201
+ status: resolveBackgroundTaskFailureStatus(acpError),
1202
+ endedAt: Date.now(),
1203
+ lastEventAt: Date.now(),
1204
+ error: acpError.message,
1205
+ progressSummary: taskProgressSummary || null,
1206
+ terminalSummary: null
1207
+ });
1208
+ await this.setSessionState({
1209
+ cfg: input.cfg,
1210
+ sessionKey,
1211
+ state: "error",
1212
+ lastError: acpError.message
1213
+ });
1214
+ throw acpError;
1215
+ } finally {
1216
+ if (input.signal && onCallerAbort) input.signal.removeEventListener("abort", onCallerAbort);
1217
+ if (activeTurn && this.activeTurnBySession.get(actorKey) === activeTurn) this.activeTurnBySession.delete(actorKey);
1218
+ if (!retryFreshHandle && !skipPostTurnCleanup && runtime && handle && meta && meta.mode !== "oneshot") ({handle} = await this.reconcileRuntimeSessionIdentifiers({
1219
+ cfg: input.cfg,
1220
+ sessionKey,
1221
+ runtime,
1222
+ handle,
1223
+ meta,
1224
+ failOnStatusError: false
1225
+ }));
1226
+ if (!retryFreshHandle && !skipPostTurnCleanup && runtime && handle && meta && meta.mode === "oneshot") try {
1227
+ await runtime.close({
1228
+ handle,
1229
+ reason: "oneshot-complete"
1230
+ });
1231
+ } catch (error) {
1232
+ logVerbose(`acp-manager: ACP oneshot close failed for ${sessionKey}: ${String(error)}`);
1233
+ } finally {
1234
+ this.clearCachedRuntimeState(sessionKey);
1235
+ }
1236
+ }
1237
+ if (retryFreshHandle) continue;
1238
+ }
1239
+ }, input.signal);
1240
+ }
1241
+ resolveTurnTimeoutMs(params) {
1242
+ const runtimeTimeoutSeconds = resolveRuntimeOptionsFromMeta(params.meta).timeoutSeconds;
1243
+ if (typeof runtimeTimeoutSeconds === "number" && Number.isFinite(runtimeTimeoutSeconds) && runtimeTimeoutSeconds > 0) return Math.max(1e3, Math.round(runtimeTimeoutSeconds * 1e3));
1244
+ return resolveAgentTimeoutMs({
1245
+ cfg: params.cfg,
1246
+ minMs: 1e3
1247
+ });
1248
+ }
1249
+ async awaitTurnWithTimeout(params) {
1250
+ const observedTurnPromise = params.turnPromise.then((value) => ({
1251
+ kind: "value",
1252
+ value
1253
+ }), (error) => ({
1254
+ kind: "error",
1255
+ error
1256
+ }));
1257
+ if (params.timeoutMs <= 0) {
1258
+ const outcome = await observedTurnPromise;
1259
+ if (outcome.kind === "error") throw outcome.error;
1260
+ return outcome.value;
1261
+ }
1262
+ const timeoutToken = Symbol("acp-turn-timeout");
1263
+ let timer;
1264
+ const timeoutPromise = new Promise((resolve) => {
1265
+ timer = setTimeout(() => resolve(timeoutToken), params.timeoutMs);
1266
+ timer.unref?.();
1267
+ });
1268
+ try {
1269
+ const outcome = await Promise.race([observedTurnPromise, timeoutPromise]);
1270
+ if (outcome === timeoutToken) {
1271
+ observedTurnPromise.then((lateOutcome) => {
1272
+ if (lateOutcome.kind === "error") logVerbose(`acp-manager: detached late turn error after timeout for ${params.sessionKey}: ${String(lateOutcome.error)}`);
1273
+ });
1274
+ await params.onTimeout();
1275
+ throw new AcpRuntimeError("ACP_TURN_FAILED", `ACP turn timed out after ${Math.max(1, Math.round(params.timeoutLabelMs / 1e3))}s.`);
1276
+ }
1277
+ if (outcome.kind === "error") throw outcome.error;
1278
+ return outcome.value;
1279
+ } finally {
1280
+ if (timer) clearTimeout(timer);
1281
+ }
1282
+ }
1283
+ async cleanupTimedOutTurn(params) {
1284
+ params.activeTurn.abortController.abort();
1285
+ if (!params.activeTurn.cancelPromise) params.activeTurn.cancelPromise = params.activeTurn.runtime.cancel({
1286
+ handle: params.activeTurn.handle,
1287
+ reason: ACP_TURN_TIMEOUT_REASON
1288
+ });
1289
+ const cancelFinished = await this.awaitCleanupWithGrace({
1290
+ sessionKey: params.sessionKey,
1291
+ label: "cancel",
1292
+ promise: params.activeTurn.cancelPromise
1293
+ });
1294
+ if (params.mode !== "oneshot") return;
1295
+ const closePromise = params.activeTurn.runtime.close({
1296
+ handle: params.activeTurn.handle,
1297
+ reason: ACP_TURN_TIMEOUT_REASON
1298
+ });
1299
+ const closeFinished = await this.awaitCleanupWithGrace({
1300
+ sessionKey: params.sessionKey,
1301
+ label: "close",
1302
+ promise: closePromise
1303
+ });
1304
+ if (cancelFinished && closeFinished) {
1305
+ this.clearCachedRuntimeStateIfHandleMatches({
1306
+ sessionKey: params.sessionKey,
1307
+ handle: params.activeTurn.handle
1308
+ });
1309
+ return;
1310
+ }
1311
+ Promise.allSettled([params.activeTurn.cancelPromise, closePromise]).then(() => {
1312
+ this.clearCachedRuntimeStateIfHandleMatches({
1313
+ sessionKey: params.sessionKey,
1314
+ handle: params.activeTurn.handle
1315
+ });
1316
+ });
1317
+ }
1318
+ async awaitCleanupWithGrace(params) {
1319
+ const observedCleanupPromise = params.promise.then(() => ({ kind: "done" }), (error) => ({
1320
+ kind: "error",
1321
+ error
1322
+ }));
1323
+ const timeoutToken = Symbol(`acp-timeout-${params.label}`);
1324
+ let timer;
1325
+ const timeoutPromise = new Promise((resolve) => {
1326
+ timer = setTimeout(() => resolve(timeoutToken), ACP_TURN_TIMEOUT_CLEANUP_GRACE_MS);
1327
+ timer.unref?.();
1328
+ });
1329
+ try {
1330
+ const outcome = await Promise.race([observedCleanupPromise, timeoutPromise]);
1331
+ if (outcome === timeoutToken) {
1332
+ observedCleanupPromise.then((lateOutcome) => {
1333
+ if (lateOutcome.kind === "error") logVerbose(`acp-manager: detached timed-out turn ${params.label} cleanup failed for ${params.sessionKey}: ${String(lateOutcome.error)}`);
1334
+ });
1335
+ logVerbose(`acp-manager: timed-out turn ${params.label} cleanup exceeded ${ACP_TURN_TIMEOUT_CLEANUP_GRACE_MS}ms for ${params.sessionKey}`);
1336
+ return false;
1337
+ }
1338
+ if (outcome.kind === "error") logVerbose(`acp-manager: timed-out turn ${params.label} cleanup failed for ${params.sessionKey}: ${String(outcome.error)}`);
1339
+ return true;
1340
+ } finally {
1341
+ if (timer) clearTimeout(timer);
1342
+ }
1343
+ }
1344
+ async cancelSession(params) {
1345
+ const sessionKey = canonicalizeAcpSessionKey(params);
1346
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
1347
+ await this.evictIdleRuntimeHandles({ cfg: params.cfg });
1348
+ const actorKey = normalizeActorKey(sessionKey);
1349
+ const activeTurn = this.activeTurnBySession.get(actorKey);
1350
+ if (activeTurn) {
1351
+ activeTurn.abortController.abort();
1352
+ if (!activeTurn.cancelPromise) activeTurn.cancelPromise = activeTurn.runtime.cancel({
1353
+ handle: activeTurn.handle,
1354
+ reason: params.reason
1355
+ });
1356
+ await withAcpRuntimeErrorBoundary({
1357
+ run: async () => await activeTurn.cancelPromise,
1358
+ fallbackCode: "ACP_TURN_FAILED",
1359
+ fallbackMessage: "ACP cancel failed before completion."
1360
+ });
1361
+ return;
1362
+ }
1363
+ await this.withSessionActor(sessionKey, async () => {
1364
+ const resolvedMeta = requireReadySessionMeta(this.resolveSession({
1365
+ cfg: params.cfg,
1366
+ sessionKey
1367
+ }));
1368
+ const { runtime, handle } = await this.ensureRuntimeHandle({
1369
+ cfg: params.cfg,
1370
+ sessionKey,
1371
+ meta: resolvedMeta
1372
+ });
1373
+ try {
1374
+ await withAcpRuntimeErrorBoundary({
1375
+ run: async () => await runtime.cancel({
1376
+ handle,
1377
+ reason: params.reason
1378
+ }),
1379
+ fallbackCode: "ACP_TURN_FAILED",
1380
+ fallbackMessage: "ACP cancel failed before completion."
1381
+ });
1382
+ await this.setSessionState({
1383
+ cfg: params.cfg,
1384
+ sessionKey,
1385
+ state: "idle",
1386
+ clearLastError: true
1387
+ });
1388
+ } catch (error) {
1389
+ const acpError = toAcpRuntimeError({
1390
+ error,
1391
+ fallbackCode: "ACP_TURN_FAILED",
1392
+ fallbackMessage: "ACP cancel failed before completion."
1393
+ });
1394
+ await this.setSessionState({
1395
+ cfg: params.cfg,
1396
+ sessionKey,
1397
+ state: "error",
1398
+ lastError: acpError.message
1399
+ });
1400
+ throw acpError;
1401
+ }
1402
+ });
1403
+ }
1404
+ async closeSession(input) {
1405
+ const sessionKey = canonicalizeAcpSessionKey({
1406
+ cfg: input.cfg,
1407
+ sessionKey: input.sessionKey
1408
+ });
1409
+ if (!sessionKey) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", "ACP session key is required.");
1410
+ await this.evictIdleRuntimeHandles({ cfg: input.cfg });
1411
+ return await this.withSessionActor(sessionKey, async () => {
1412
+ const resolution = this.resolveSession({
1413
+ cfg: input.cfg,
1414
+ sessionKey
1415
+ });
1416
+ const resolutionError = resolveAcpSessionResolutionError(resolution);
1417
+ if (resolutionError) {
1418
+ if (input.requireAcpSession ?? true) throw resolutionError;
1419
+ return {
1420
+ runtimeClosed: false,
1421
+ metaCleared: false
1422
+ };
1423
+ }
1424
+ const meta = requireReadySessionMeta(resolution);
1425
+ const currentIdentity = resolveSessionIdentityFromMeta(meta);
1426
+ const shouldSkipRuntimeClose = input.discardPersistentState && currentIdentity != null && !identityHasStableSessionId(currentIdentity);
1427
+ let runtimeClosed = false;
1428
+ let runtimeNotice;
1429
+ if (shouldSkipRuntimeClose) {
1430
+ if (input.discardPersistentState) {
1431
+ const configuredBackend = (meta.backend || input.cfg.acp?.backend || "").trim();
1432
+ try {
1433
+ await this.deps.getRuntimeBackend(configuredBackend || void 0)?.runtime.prepareFreshSession?.({ sessionKey });
1434
+ } catch (error) {
1435
+ logVerbose(`acp close fast-reset: unable to prepare fresh session for ${sessionKey}: ${error instanceof Error ? error.message : String(error)}`);
1436
+ }
1437
+ }
1438
+ this.clearCachedRuntimeState(sessionKey);
1439
+ } else try {
1440
+ const { runtime: ensuredRuntime, handle } = await this.ensureRuntimeHandle({
1441
+ cfg: input.cfg,
1442
+ sessionKey,
1443
+ meta
1444
+ });
1445
+ await withAcpRuntimeErrorBoundary({
1446
+ run: async () => await ensuredRuntime.close({
1447
+ handle,
1448
+ reason: input.reason,
1449
+ discardPersistentState: input.discardPersistentState
1450
+ }),
1451
+ fallbackCode: "ACP_TURN_FAILED",
1452
+ fallbackMessage: "ACP close failed before completion."
1453
+ });
1454
+ runtimeClosed = true;
1455
+ this.clearCachedRuntimeState(sessionKey);
1456
+ } catch (error) {
1457
+ const acpError = toAcpRuntimeError({
1458
+ error,
1459
+ fallbackCode: "ACP_TURN_FAILED",
1460
+ fallbackMessage: "ACP close failed before completion."
1461
+ });
1462
+ if (input.allowBackendUnavailable && (acpError.code === "ACP_BACKEND_MISSING" || acpError.code === "ACP_BACKEND_UNAVAILABLE" || input.discardPersistentState && acpError.code === "ACP_SESSION_INIT_FAILED" || this.isRecoverableAcpxExitError(acpError.message))) {
1463
+ if (input.discardPersistentState) {
1464
+ const configuredBackend = (meta.backend || input.cfg.acp?.backend || "").trim();
1465
+ try {
1466
+ const runtimeBackend = this.deps.getRuntimeBackend(configuredBackend || void 0);
1467
+ if (!runtimeBackend) throw acpError;
1468
+ await runtimeBackend.runtime.prepareFreshSession?.({ sessionKey });
1469
+ } catch (recoveryError) {
1470
+ logVerbose(`acp close recovery: unable to prepare fresh session for ${sessionKey}: ${recoveryError instanceof Error ? recoveryError.message : String(recoveryError)}`);
1471
+ }
1472
+ }
1473
+ this.clearCachedRuntimeState(sessionKey);
1474
+ runtimeNotice = acpError.message;
1475
+ } else throw acpError;
1476
+ }
1477
+ let metaCleared = false;
1478
+ if (input.discardPersistentState && !input.clearMeta) await this.discardPersistedRuntimeState({
1479
+ cfg: input.cfg,
1480
+ sessionKey
1481
+ });
1482
+ if (input.clearMeta) {
1483
+ await this.writeSessionMeta({
1484
+ cfg: input.cfg,
1485
+ sessionKey,
1486
+ mutate: (_current, entry) => {
1487
+ if (!entry) return null;
1488
+ return null;
1489
+ },
1490
+ failOnError: true
1491
+ });
1492
+ metaCleared = true;
1493
+ }
1494
+ return {
1495
+ runtimeClosed,
1496
+ runtimeNotice,
1497
+ metaCleared
1498
+ };
1499
+ });
1500
+ }
1501
+ async ensureRuntimeHandle(params) {
1502
+ const agent = normalizeOptionalString(params.meta.agent) || resolveAcpAgentFromSessionKey(params.sessionKey, "main");
1503
+ const mode = params.meta.mode;
1504
+ const runtimeOptions = resolveRuntimeOptionsFromMeta(params.meta);
1505
+ const cwd = runtimeOptions.cwd ?? normalizeOptionalString(params.meta.cwd);
1506
+ const configuredBackend = (params.meta.backend || params.cfg.acp?.backend || "").trim();
1507
+ const cached = this.getCachedRuntimeState(params.sessionKey);
1508
+ if (cached) {
1509
+ const backendMatches = !configuredBackend || cached.backend === configuredBackend;
1510
+ const agentMatches = cached.agent === agent;
1511
+ const modeMatches = cached.mode === mode;
1512
+ const cwdMatches = (cached.cwd ?? "") === (cwd ?? "");
1513
+ const handleMatchesMeta = this.runtimeHandleMatchesMeta({
1514
+ handle: cached.handle,
1515
+ meta: params.meta
1516
+ });
1517
+ if (backendMatches && agentMatches && modeMatches && cwdMatches && handleMatchesMeta && await this.isCachedRuntimeHandleReusable({
1518
+ sessionKey: params.sessionKey,
1519
+ runtime: cached.runtime,
1520
+ handle: cached.handle
1521
+ })) return {
1522
+ runtime: cached.runtime,
1523
+ handle: cached.handle,
1524
+ meta: params.meta
1525
+ };
1526
+ this.clearCachedRuntimeState(params.sessionKey);
1527
+ }
1528
+ this.enforceConcurrentSessionLimit({
1529
+ cfg: params.cfg,
1530
+ sessionKey: params.sessionKey
1531
+ });
1532
+ const backend = this.deps.requireRuntimeBackend(configuredBackend || void 0);
1533
+ const runtime = backend.runtime;
1534
+ const previousMeta = params.meta;
1535
+ const previousIdentity = resolveSessionIdentityFromMeta(previousMeta);
1536
+ let identityForEnsure = previousIdentity;
1537
+ const persistedResumeSessionId = mode === "persistent" ? resolveRuntimeResumeSessionId(previousIdentity) : void 0;
1538
+ const shouldPrepareFreshPersistentSession = mode === "persistent" && previousIdentity != null && !identityHasStableSessionId(previousIdentity);
1539
+ const ensureSession = async (resumeSessionId) => await withAcpRuntimeErrorBoundary({
1540
+ run: async () => await runtime.ensureSession({
1541
+ sessionKey: params.sessionKey,
1542
+ agent,
1543
+ mode,
1544
+ ...resumeSessionId ? { resumeSessionId } : {},
1545
+ cwd
1546
+ }),
1547
+ fallbackCode: "ACP_SESSION_INIT_FAILED",
1548
+ fallbackMessage: "Could not initialize ACP session runtime."
1549
+ });
1550
+ let ensured;
1551
+ if (shouldPrepareFreshPersistentSession) await runtime.prepareFreshSession?.({ sessionKey: params.sessionKey });
1552
+ if (persistedResumeSessionId) try {
1553
+ ensured = await ensureSession(persistedResumeSessionId);
1554
+ } catch (error) {
1555
+ const acpError = toAcpRuntimeError({
1556
+ error,
1557
+ fallbackCode: "ACP_SESSION_INIT_FAILED",
1558
+ fallbackMessage: "Could not initialize ACP session runtime."
1559
+ });
1560
+ if (acpError.code !== "ACP_SESSION_INIT_FAILED") throw acpError;
1561
+ logVerbose(`acp-manager: resume init failed for ${params.sessionKey}; retrying without persisted ACP session id: ${acpError.message}`);
1562
+ if (identityForEnsure) {
1563
+ const { acpxSessionId: _staleAcpxSessionId, agentSessionId: _staleAgentSessionId, ...retryIdentity } = identityForEnsure;
1564
+ identityForEnsure = {
1565
+ ...retryIdentity,
1566
+ state: "pending"
1567
+ };
1568
+ }
1569
+ ensured = await ensureSession();
1570
+ }
1571
+ else ensured = await ensureSession();
1572
+ const now = Date.now();
1573
+ const effectiveCwd = normalizeOptionalString(ensured.cwd) ?? cwd;
1574
+ const nextRuntimeOptions = normalizeRuntimeOptions({
1575
+ ...runtimeOptions,
1576
+ ...effectiveCwd ? { cwd: effectiveCwd } : {}
1577
+ });
1578
+ const nextIdentity = mergeSessionIdentity({
1579
+ current: identityForEnsure,
1580
+ incoming: createIdentityFromEnsure({
1581
+ handle: ensured,
1582
+ now
1583
+ }),
1584
+ now
1585
+ }) ?? identityForEnsure;
1586
+ const nextHandleIdentifiers = resolveRuntimeHandleIdentifiersFromIdentity(nextIdentity);
1587
+ const nextHandle = {
1588
+ ...ensured,
1589
+ ...nextHandleIdentifiers.backendSessionId ? { backendSessionId: nextHandleIdentifiers.backendSessionId } : {},
1590
+ ...nextHandleIdentifiers.agentSessionId ? { agentSessionId: nextHandleIdentifiers.agentSessionId } : {}
1591
+ };
1592
+ const nextMeta = {
1593
+ backend: ensured.backend || backend.id,
1594
+ agent,
1595
+ runtimeSessionName: ensured.runtimeSessionName,
1596
+ ...nextIdentity ? { identity: nextIdentity } : {},
1597
+ mode: params.meta.mode,
1598
+ ...Object.keys(nextRuntimeOptions).length > 0 ? { runtimeOptions: nextRuntimeOptions } : {},
1599
+ ...effectiveCwd ? { cwd: effectiveCwd } : {},
1600
+ state: previousMeta.state,
1601
+ lastActivityAt: now,
1602
+ ...previousMeta.lastError ? { lastError: previousMeta.lastError } : {}
1603
+ };
1604
+ if (previousMeta.backend !== nextMeta.backend || previousMeta.runtimeSessionName !== nextMeta.runtimeSessionName || !identityEquals(previousIdentity, nextIdentity) || previousMeta.agent !== nextMeta.agent || previousMeta.cwd !== nextMeta.cwd || !runtimeOptionsEqual(previousMeta.runtimeOptions, nextMeta.runtimeOptions) || hasLegacyAcpIdentityProjection(previousMeta)) await this.writeSessionMeta({
1605
+ cfg: params.cfg,
1606
+ sessionKey: params.sessionKey,
1607
+ mutate: (_current, entry) => {
1608
+ if (!entry) return null;
1609
+ return nextMeta;
1610
+ }
1611
+ });
1612
+ this.setCachedRuntimeState(params.sessionKey, {
1613
+ runtime,
1614
+ handle: nextHandle,
1615
+ backend: ensured.backend || backend.id,
1616
+ agent,
1617
+ mode,
1618
+ cwd: effectiveCwd,
1619
+ appliedControlSignature: void 0
1620
+ });
1621
+ return {
1622
+ runtime,
1623
+ handle: nextHandle,
1624
+ meta: nextMeta
1625
+ };
1626
+ }
1627
+ async isCachedRuntimeHandleReusable(params) {
1628
+ if (!params.runtime.getStatus) return true;
1629
+ try {
1630
+ const status = await params.runtime.getStatus({ handle: params.handle });
1631
+ if (this.isRuntimeStatusUnavailable(status)) {
1632
+ this.clearCachedRuntimeState(params.sessionKey);
1633
+ logVerbose(`acp-manager: evicting cached runtime handle for ${params.sessionKey} after unhealthy status probe: ${status.summary ?? "status unavailable"}`);
1634
+ return false;
1635
+ }
1636
+ return true;
1637
+ } catch (error) {
1638
+ this.clearCachedRuntimeState(params.sessionKey);
1639
+ logVerbose(`acp-manager: evicting cached runtime handle for ${params.sessionKey} after status probe failed: ${String(error)}`);
1640
+ return false;
1641
+ }
1642
+ }
1643
+ isRuntimeStatusUnavailable(status) {
1644
+ if (!status) return false;
1645
+ const detailsStatus = normalizeLowercaseStringOrEmpty(status.details?.status);
1646
+ if (detailsStatus === "dead" || detailsStatus === "no-session") return true;
1647
+ const summaryMatch = status.summary?.match(/\bstatus=([^\s]+)/i);
1648
+ const summaryStatus = normalizeLowercaseStringOrEmpty(summaryMatch?.[1]);
1649
+ return summaryStatus === "dead" || summaryStatus === "no-session";
1650
+ }
1651
+ async persistRuntimeOptions(params) {
1652
+ const normalized = normalizeRuntimeOptions(params.options);
1653
+ const hasOptions = Object.keys(normalized).length > 0;
1654
+ await this.writeSessionMeta({
1655
+ cfg: params.cfg,
1656
+ sessionKey: params.sessionKey,
1657
+ mutate: (current, entry) => {
1658
+ if (!entry) return null;
1659
+ const base = current ?? entry.acp;
1660
+ if (!base) return null;
1661
+ return {
1662
+ backend: base.backend,
1663
+ agent: base.agent,
1664
+ runtimeSessionName: base.runtimeSessionName,
1665
+ ...base.identity ? { identity: base.identity } : {},
1666
+ mode: base.mode,
1667
+ runtimeOptions: hasOptions ? normalized : void 0,
1668
+ cwd: normalized.cwd,
1669
+ state: base.state,
1670
+ lastActivityAt: Date.now(),
1671
+ ...base.lastError ? { lastError: base.lastError } : {}
1672
+ };
1673
+ },
1674
+ failOnError: true
1675
+ });
1676
+ const cached = this.getCachedRuntimeState(params.sessionKey);
1677
+ if (!cached) return;
1678
+ if ((cached.cwd ?? "") !== (normalized.cwd ?? "")) {
1679
+ this.clearCachedRuntimeState(params.sessionKey);
1680
+ return;
1681
+ }
1682
+ cached.appliedControlSignature = void 0;
1683
+ }
1684
+ enforceConcurrentSessionLimit(params) {
1685
+ const configuredLimit = params.cfg.acp?.maxConcurrentSessions;
1686
+ if (typeof configuredLimit !== "number" || !Number.isFinite(configuredLimit)) return;
1687
+ const limit = Math.max(1, Math.floor(configuredLimit));
1688
+ const actorKey = normalizeActorKey(params.sessionKey);
1689
+ if (this.runtimeCache.has(actorKey)) return;
1690
+ const activeCount = this.runtimeCache.size();
1691
+ if (activeCount >= limit) throw new AcpRuntimeError("ACP_SESSION_INIT_FAILED", `ACP max concurrent sessions reached (${activeCount}/${limit}).`);
1692
+ }
1693
+ recordTurnCompletion(params) {
1694
+ const durationMs = Math.max(0, Date.now() - params.startedAt);
1695
+ this.turnLatencyStats.totalMs += durationMs;
1696
+ this.turnLatencyStats.maxMs = Math.max(this.turnLatencyStats.maxMs, durationMs);
1697
+ if (params.errorCode) {
1698
+ this.turnLatencyStats.failed += 1;
1699
+ this.recordErrorCode(params.errorCode);
1700
+ return;
1701
+ }
1702
+ this.turnLatencyStats.completed += 1;
1703
+ }
1704
+ recordErrorCode(code) {
1705
+ const normalized = normalizeAcpErrorCode(code);
1706
+ this.errorCountsByCode.set(normalized, (this.errorCountsByCode.get(normalized) ?? 0) + 1);
1707
+ }
1708
+ async prepareFreshHandleRetry(params) {
1709
+ if (params.attempt > 0 || params.sawTurnOutput) return false;
1710
+ if (this.isRecoverableAcpxExitError(params.error.message)) {
1711
+ this.clearCachedRuntimeState(params.sessionKey);
1712
+ logVerbose(`acp-manager: retrying ${params.sessionKey} with a fresh runtime handle after early turn failure: ${params.error.message}`);
1713
+ return true;
1714
+ }
1715
+ if (!params.runtime || !params.meta || params.meta.mode !== "persistent" || !this.isRecoverableMissingPersistentSessionError(params.error.message)) return false;
1716
+ if (!await this.clearPersistedRuntimeResumeState({
1717
+ cfg: params.cfg,
1718
+ sessionKey: params.sessionKey
1719
+ })) return false;
1720
+ if (params.runtime.prepareFreshSession) try {
1721
+ await params.runtime.prepareFreshSession({ sessionKey: params.sessionKey });
1722
+ } catch (error) {
1723
+ logVerbose(`acp-manager: failed preparing a fresh persistent session for ${params.sessionKey}: ${formatErrorMessage(error)}`);
1724
+ return false;
1725
+ }
1726
+ this.clearCachedRuntimeState(params.sessionKey);
1727
+ logVerbose(`acp-manager: retrying ${params.sessionKey} with a fresh persistent session after missing backend resume target: ${params.error.message}`);
1728
+ return true;
1729
+ }
1730
+ isRecoverableAcpxExitError(message) {
1731
+ return /^acpx exited with (code \d+|signal [a-z0-9]+)/i.test(message.trim());
1732
+ }
1733
+ isRecoverableMissingPersistentSessionError(message) {
1734
+ const normalized = message.trim();
1735
+ return /persistent acp session .* could not be resumed/i.test(normalized) && /(resource not found|no matching session)/i.test(normalized);
1736
+ }
1737
+ async clearPersistedRuntimeResumeState(params) {
1738
+ const now = Date.now();
1739
+ if (!await this.writeSessionMeta({
1740
+ cfg: params.cfg,
1741
+ sessionKey: params.sessionKey,
1742
+ mutate: (current, entry) => {
1743
+ if (!entry) return null;
1744
+ const base = current ?? entry.acp;
1745
+ if (!base) return null;
1746
+ const currentIdentity = resolveSessionIdentityFromMeta(base);
1747
+ if (!currentIdentity?.acpxSessionId && !currentIdentity?.agentSessionId) return base;
1748
+ const nextIdentity = {
1749
+ state: "pending",
1750
+ ...currentIdentity.acpxRecordId ? { acpxRecordId: currentIdentity.acpxRecordId } : {},
1751
+ source: currentIdentity.source,
1752
+ lastUpdatedAt: now
1753
+ };
1754
+ return {
1755
+ backend: base.backend,
1756
+ agent: base.agent,
1757
+ runtimeSessionName: base.runtimeSessionName,
1758
+ identity: nextIdentity,
1759
+ mode: base.mode,
1760
+ ...base.runtimeOptions ? { runtimeOptions: base.runtimeOptions } : {},
1761
+ ...base.cwd ? { cwd: base.cwd } : {},
1762
+ state: base.state,
1763
+ lastActivityAt: now,
1764
+ ...base.lastError ? { lastError: base.lastError } : {}
1765
+ };
1766
+ }
1767
+ })) {
1768
+ logVerbose(`acp-manager: unable to clear persisted runtime resume state for ${params.sessionKey}`);
1769
+ return false;
1770
+ }
1771
+ return true;
1772
+ }
1773
+ async discardPersistedRuntimeState(params) {
1774
+ const now = Date.now();
1775
+ await this.writeSessionMeta({
1776
+ cfg: params.cfg,
1777
+ sessionKey: params.sessionKey,
1778
+ mutate: (current, entry) => {
1779
+ if (!entry) return null;
1780
+ const base = current ?? entry.acp;
1781
+ if (!base) return null;
1782
+ const currentIdentity = resolveSessionIdentityFromMeta(base);
1783
+ const nextIdentity = currentIdentity ? {
1784
+ state: "pending",
1785
+ ...currentIdentity.acpxRecordId ? { acpxRecordId: currentIdentity.acpxRecordId } : {},
1786
+ source: currentIdentity.source,
1787
+ lastUpdatedAt: now
1788
+ } : void 0;
1789
+ return {
1790
+ backend: base.backend,
1791
+ agent: base.agent,
1792
+ runtimeSessionName: base.runtimeSessionName,
1793
+ ...nextIdentity ? { identity: nextIdentity } : {},
1794
+ mode: base.mode,
1795
+ ...base.runtimeOptions ? { runtimeOptions: base.runtimeOptions } : {},
1796
+ ...base.cwd ? { cwd: base.cwd } : {},
1797
+ state: "idle",
1798
+ lastActivityAt: now
1799
+ };
1800
+ },
1801
+ failOnError: true
1802
+ });
1803
+ }
1804
+ async evictIdleRuntimeHandles(params) {
1805
+ const idleTtlMs = resolveRuntimeIdleTtlMs(params.cfg);
1806
+ if (idleTtlMs <= 0 || this.runtimeCache.size() === 0) return;
1807
+ const now = Date.now();
1808
+ const candidates = this.runtimeCache.collectIdleCandidates({
1809
+ maxIdleMs: idleTtlMs,
1810
+ now
1811
+ });
1812
+ if (candidates.length === 0) return;
1813
+ for (const candidate of candidates) await this.actorQueue.run(candidate.actorKey, async () => {
1814
+ if (this.activeTurnBySession.has(candidate.actorKey)) return;
1815
+ const lastTouchedAt = this.runtimeCache.getLastTouchedAt(candidate.actorKey);
1816
+ if (lastTouchedAt == null || now - lastTouchedAt < idleTtlMs) return;
1817
+ const cached = this.runtimeCache.peek(candidate.actorKey);
1818
+ if (!cached) return;
1819
+ this.runtimeCache.clear(candidate.actorKey);
1820
+ this.evictedRuntimeCount += 1;
1821
+ this.lastEvictedAt = Date.now();
1822
+ try {
1823
+ await cached.runtime.close({
1824
+ handle: cached.handle,
1825
+ reason: "idle-evicted"
1826
+ });
1827
+ } catch (error) {
1828
+ logVerbose(`acp-manager: idle eviction close failed for ${candidate.state.handle.sessionKey}: ${String(error)}`);
1829
+ }
1830
+ });
1831
+ }
1832
+ async resolveRuntimeCapabilities(params) {
1833
+ return await resolveManagerRuntimeCapabilities(params);
1834
+ }
1835
+ async applyRuntimeControls(params) {
1836
+ await applyManagerRuntimeControls({
1837
+ ...params,
1838
+ getCachedRuntimeState: (sessionKey) => this.getCachedRuntimeState(sessionKey)
1839
+ });
1840
+ }
1841
+ async setSessionState(params) {
1842
+ await this.writeSessionMeta({
1843
+ cfg: params.cfg,
1844
+ sessionKey: params.sessionKey,
1845
+ mutate: (current, entry) => {
1846
+ if (!entry) return null;
1847
+ const base = current ?? entry.acp;
1848
+ if (!base) return null;
1849
+ const next = {
1850
+ backend: base.backend,
1851
+ agent: base.agent,
1852
+ runtimeSessionName: base.runtimeSessionName,
1853
+ ...base.identity ? { identity: base.identity } : {},
1854
+ mode: base.mode,
1855
+ ...base.runtimeOptions ? { runtimeOptions: base.runtimeOptions } : {},
1856
+ ...base.cwd ? { cwd: base.cwd } : {},
1857
+ state: params.state,
1858
+ lastActivityAt: Date.now(),
1859
+ ...base.lastError ? { lastError: base.lastError } : {}
1860
+ };
1861
+ const lastError = normalizeOptionalString(params.lastError);
1862
+ if (lastError) next.lastError = lastError;
1863
+ else if (params.clearLastError) delete next.lastError;
1864
+ return next;
1865
+ }
1866
+ });
1867
+ }
1868
+ async reconcileRuntimeSessionIdentifiers(params) {
1869
+ return await reconcileManagerRuntimeSessionIdentifiers({
1870
+ ...params,
1871
+ setCachedHandle: (sessionKey, handle) => {
1872
+ const cached = this.getCachedRuntimeState(sessionKey);
1873
+ if (cached) cached.handle = handle;
1874
+ },
1875
+ writeSessionMeta: async (writeParams) => await this.writeSessionMeta(writeParams)
1876
+ });
1877
+ }
1878
+ async writeSessionMeta(params) {
1879
+ try {
1880
+ return await this.deps.upsertSessionMeta({
1881
+ cfg: params.cfg,
1882
+ sessionKey: params.sessionKey,
1883
+ mutate: params.mutate
1884
+ });
1885
+ } catch (error) {
1886
+ if (params.failOnError) throw error;
1887
+ logVerbose(`acp-manager: failed persisting ACP metadata for ${params.sessionKey}: ${String(error)}`);
1888
+ return null;
1889
+ }
1890
+ }
1891
+ async withSessionActor(sessionKey, op, signal) {
1892
+ const actorKey = normalizeActorKey(sessionKey);
1893
+ this.throwIfAborted(signal);
1894
+ let actorStarted = false;
1895
+ const queued = this.actorQueue.run(actorKey, async () => {
1896
+ actorStarted = true;
1897
+ this.throwIfAborted(signal);
1898
+ return await op();
1899
+ });
1900
+ if (!signal) return await queued;
1901
+ return await new Promise((resolve, reject) => {
1902
+ let settled = false;
1903
+ const cleanup = () => {
1904
+ signal.removeEventListener("abort", onAbort);
1905
+ };
1906
+ const settleValue = (value) => {
1907
+ if (settled) return;
1908
+ settled = true;
1909
+ cleanup();
1910
+ resolve(value);
1911
+ };
1912
+ const settleError = (error) => {
1913
+ if (settled) return;
1914
+ settled = true;
1915
+ cleanup();
1916
+ reject(error);
1917
+ };
1918
+ const onAbort = () => {
1919
+ if (actorStarted) return;
1920
+ try {
1921
+ this.throwIfAborted(signal);
1922
+ } catch (error) {
1923
+ settleError(error);
1924
+ }
1925
+ };
1926
+ signal.addEventListener("abort", onAbort, { once: true });
1927
+ queued.then(settleValue, settleError);
1928
+ if (signal.aborted) onAbort();
1929
+ });
1930
+ }
1931
+ throwIfAborted(signal) {
1932
+ if (!signal?.aborted) return;
1933
+ throw new AcpRuntimeError("ACP_TURN_FAILED", "ACP operation aborted.");
1934
+ }
1935
+ getCachedRuntimeState(sessionKey) {
1936
+ return this.runtimeCache.get(normalizeActorKey(sessionKey));
1937
+ }
1938
+ setCachedRuntimeState(sessionKey, state) {
1939
+ this.runtimeCache.set(normalizeActorKey(sessionKey), state);
1940
+ }
1941
+ clearCachedRuntimeState(sessionKey) {
1942
+ this.runtimeCache.clear(normalizeActorKey(sessionKey));
1943
+ }
1944
+ clearCachedRuntimeStateIfHandleMatches(params) {
1945
+ const cached = this.getCachedRuntimeState(params.sessionKey);
1946
+ if (!cached || !this.runtimeHandlesMatch(cached.handle, params.handle)) return;
1947
+ this.clearCachedRuntimeState(params.sessionKey);
1948
+ }
1949
+ runtimeHandlesMatch(a, b) {
1950
+ return a.sessionKey === b.sessionKey && a.backend === b.backend && a.runtimeSessionName === b.runtimeSessionName && (a.cwd ?? "") === (b.cwd ?? "") && (a.acpxRecordId ?? "") === (b.acpxRecordId ?? "") && (a.backendSessionId ?? "") === (b.backendSessionId ?? "") && (a.agentSessionId ?? "") === (b.agentSessionId ?? "");
1951
+ }
1952
+ runtimeHandleMatchesMeta(params) {
1953
+ const identity = resolveSessionIdentityFromMeta(params.meta);
1954
+ const expectedHandleIds = resolveRuntimeHandleIdentifiersFromIdentity(identity);
1955
+ if ((params.handle.backendSessionId ?? "") !== (expectedHandleIds.backendSessionId ?? "")) return false;
1956
+ if ((params.handle.agentSessionId ?? "") !== (expectedHandleIds.agentSessionId ?? "")) return false;
1957
+ const expectedAcpxRecordId = identity?.acpxRecordId ?? "";
1958
+ return (normalizeOptionalString(params.handle.acpxRecordId) ?? "") === expectedAcpxRecordId;
1959
+ }
1960
+ resolveBackgroundTaskContext(params) {
1961
+ const childEntry = this.deps.readSessionEntry({
1962
+ cfg: params.cfg,
1963
+ sessionKey: params.sessionKey
1964
+ })?.entry;
1965
+ const requesterSessionKey = normalizeOptionalString(childEntry?.spawnedBy) ?? normalizeOptionalString(childEntry?.parentSessionKey);
1966
+ if (!requesterSessionKey) return null;
1967
+ return {
1968
+ requesterSessionKey,
1969
+ requesterOrigin: (this.deps.readSessionEntry({
1970
+ cfg: params.cfg,
1971
+ sessionKey: requesterSessionKey
1972
+ })?.entry)?.deliveryContext ?? childEntry?.deliveryContext,
1973
+ childSessionKey: params.sessionKey,
1974
+ runId: params.requestId,
1975
+ label: normalizeOptionalString(childEntry?.label),
1976
+ task: summarizeBackgroundTaskText(params.text)
1977
+ };
1978
+ }
1979
+ createBackgroundTaskRecord(context, startedAt) {
1980
+ try {
1981
+ createRunningTaskRun({
1982
+ runtime: "acp",
1983
+ sourceId: context.runId,
1984
+ ownerKey: context.requesterSessionKey,
1985
+ scopeKind: "session",
1986
+ requesterOrigin: context.requesterOrigin,
1987
+ childSessionKey: context.childSessionKey,
1988
+ runId: context.runId,
1989
+ label: context.label,
1990
+ task: context.task,
1991
+ startedAt
1992
+ });
1993
+ } catch (error) {
1994
+ logVerbose(`acp-manager: failed creating background task for ${context.runId}: ${String(error)}`);
1995
+ }
1996
+ }
1997
+ markBackgroundTaskRunning(runId, params) {
1998
+ try {
1999
+ startTaskRunByRunId({
2000
+ runId,
2001
+ runtime: "acp",
2002
+ sessionKey: params.sessionKey,
2003
+ lastEventAt: params.lastEventAt,
2004
+ progressSummary: params.progressSummary
2005
+ });
2006
+ } catch (error) {
2007
+ logVerbose(`acp-manager: failed updating background task for ${runId}: ${String(error)}`);
2008
+ }
2009
+ }
2010
+ markBackgroundTaskTerminal(runId, params) {
2011
+ try {
2012
+ if (params.status === "succeeded") {
2013
+ completeTaskRunByRunId({
2014
+ runId,
2015
+ runtime: "acp",
2016
+ sessionKey: params.sessionKey,
2017
+ endedAt: params.endedAt,
2018
+ lastEventAt: params.lastEventAt,
2019
+ progressSummary: params.progressSummary,
2020
+ terminalSummary: params.terminalSummary,
2021
+ terminalOutcome: params.terminalOutcome
2022
+ });
2023
+ return;
2024
+ }
2025
+ failTaskRunByRunId({
2026
+ runId,
2027
+ runtime: "acp",
2028
+ sessionKey: params.sessionKey,
2029
+ status: params.status,
2030
+ endedAt: params.endedAt,
2031
+ lastEventAt: params.lastEventAt,
2032
+ error: params.error,
2033
+ progressSummary: params.progressSummary,
2034
+ terminalSummary: params.terminalSummary
2035
+ });
2036
+ } catch (error) {
2037
+ logVerbose(`acp-manager: failed updating background task for ${runId}: ${String(error)}`);
2038
+ }
2039
+ }
2040
+ };
2041
+ //#endregion
2042
+ //#region src/acp/control-plane/manager.ts
2043
+ let ACP_SESSION_MANAGER_SINGLETON = null;
2044
+ function getAcpSessionManager() {
2045
+ if (!ACP_SESSION_MANAGER_SINGLETON) ACP_SESSION_MANAGER_SINGLETON = new AcpSessionManager();
2046
+ return ACP_SESSION_MANAGER_SINGLETON;
2047
+ }
2048
+ const __testing = {
2049
+ resetAcpSessionManagerForTests() {
2050
+ ACP_SESSION_MANAGER_SINGLETON = null;
2051
+ },
2052
+ setAcpSessionManagerForTests(manager) {
2053
+ ACP_SESSION_MANAGER_SINGLETON = manager;
2054
+ }
2055
+ };
2056
+ //#endregion
2057
+ export { getAcpRuntimeBackend as a, unregisterAcpRuntimeBackend as c, validateRuntimeCwdInput as d, validateRuntimeModeInput as f, resolveAcpSessionResolutionError as h, __testing$1 as i, parseRuntimeTimeoutSecondsInput as l, validateRuntimePermissionProfileInput as m, getAcpSessionManager as n, registerAcpRuntimeBackend as o, validateRuntimeModelInput as p, AcpSessionManager as r, requireAcpRuntimeBackend as s, __testing as t, validateRuntimeConfigOptionInput as u };