@pixelzx/genesis 2026.5.3-2 → 2026.5.3-3

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 (1066) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/.buildstamp +1 -1
  3. package/dist/abort-91r4UulC.js +201 -0
  4. package/dist/abort.runtime-B9mJXpA7.js +2 -0
  5. package/dist/abort.runtime.js +1 -1
  6. package/dist/accounts-47VdxmAV.js +2 -0
  7. package/dist/accounts-CuCpc987.js +107 -0
  8. package/dist/accounts-xW4yEmC0.js +104 -0
  9. package/dist/acp-cli-NxFXWO1M.js +2193 -0
  10. package/dist/acp-spawn-DbkpHyE1.js +1093 -0
  11. package/dist/acp-spawn-QASKm_on.js +2 -0
  12. package/dist/acp-stateful-target-driver-BHyMcz1t.js +89 -0
  13. package/dist/action-agents-6PpsUM02.js +67 -0
  14. package/dist/action-focus-B4kHRvRY.js +132 -0
  15. package/dist/action-help-C5lxx1KX.js +7 -0
  16. package/dist/action-info-oy2vw7kF.js +101 -0
  17. package/dist/action-kill-CD139kh2.js +33 -0
  18. package/dist/action-list-DZ9teqOY.js +21 -0
  19. package/dist/action-log-gxlq_2Rp.js +30 -0
  20. package/dist/action-send-BurQ0zyV.js +39 -0
  21. package/dist/action-spawn-DxOHnNm7.js +47 -0
  22. package/dist/action-unfocus-CugM3XlM.js +29 -0
  23. package/dist/actions.runtime--ihN7Wd6.js +5 -0
  24. package/dist/actions.runtime-ib-izjF7.js +18 -0
  25. package/dist/actions.runtime.js +1 -1
  26. package/dist/agent-command-C2ZVqozq.js +874 -0
  27. package/dist/agent-harness-runtime-DgUskfxp.js +144 -0
  28. package/dist/agent-lSBQDJ_c.js +2 -0
  29. package/dist/agent-runner-utils-CQHnUCgQ.js +239 -0
  30. package/dist/agent-runner.runtime-CVwomI1B.js +3455 -0
  31. package/dist/agent-runner.runtime.js +1 -1
  32. package/dist/agent-runtime-DJ7En7GB.js +18 -0
  33. package/dist/agents-CDEITLQb.js +5 -0
  34. package/dist/agents-NqAmW65Y.js +952 -0
  35. package/dist/aliases-8yRNckmx.js +2 -0
  36. package/dist/aliases-DA8MRgQS.js +96 -0
  37. package/dist/api-CJi25G9E.js +139 -0
  38. package/dist/api-Cu958cYM.js +5 -0
  39. package/dist/api-DkzCGtG_.js +3 -0
  40. package/dist/approval-gateway-resolver-DOKXw6ku.js +29 -0
  41. package/dist/approval-gateway-runtime-Bv8CqHQS.js +2 -0
  42. package/dist/approval-handler-runtime-ZtFxOtrw.js +439 -0
  43. package/dist/approval-native-runtime-DAtNdlUh.js +729 -0
  44. package/dist/attempt-execution.runtime-RtO9GkMH.js +509 -0
  45. package/dist/attempt-execution.runtime.js +1 -1
  46. package/dist/attempt.prompt-helpers-CBqQ9_m3.js +218 -0
  47. package/dist/attempt.tool-run-context-DpZtz1o7.js +933 -0
  48. package/dist/audit-C-2uIqda.js +939 -0
  49. package/dist/audit.runtime-CmbX_Mhw.js +7 -0
  50. package/dist/audit.runtime.js +1 -1
  51. package/dist/auth-DQKEcU2i.js +2 -0
  52. package/dist/auth-kVluPSY6.js +383 -0
  53. package/dist/auth-order-BrWB3inY.js +96 -0
  54. package/dist/auth-order-DCT4hb8Z.js +2 -0
  55. package/dist/bash-tools-CfLkHd-r.js +2824 -0
  56. package/dist/bash-tools-xGRQBXVi.js +3 -0
  57. package/dist/binding-routing-DcVihFHn.js +85 -0
  58. package/dist/binding-targets-CM036UnT.js +121 -0
  59. package/dist/bridge-server-IJqt4FlL.js +113 -0
  60. package/dist/browser-control-auth-D_ENihgB.js +2 -0
  61. package/dist/browser-node-runtime-CgC9vaCW.js +12 -0
  62. package/dist/browser-profiles-DXSDH0AX.js +2 -0
  63. package/dist/browser-runtime-DlIrKgom.js +387 -0
  64. package/dist/browser-setup-tools-CzwG2Hi7.js +13 -0
  65. package/dist/build-DyITSIDX.js +550 -0
  66. package/dist/build-info.json +3 -3
  67. package/dist/bundled/boot-md/handler.js +2 -2
  68. package/dist/bundled/session-memory/handler.js +1 -1
  69. package/dist/call-45FewBaL.js +329 -0
  70. package/dist/call-BqBKDI9u.js +3 -0
  71. package/dist/call.runtime-6-vv8hKu.js +2 -0
  72. package/dist/call.runtime.js +1 -1
  73. package/dist/capability-cli-mXxaAg87.js +1401 -0
  74. package/dist/catchup-DZItnQoF.js +300 -0
  75. package/dist/channel-4_07fZor.js +1174 -0
  76. package/dist/channel-BypEOihB.js +226 -0
  77. package/dist/channel-CPaewlgu.js +1802 -0
  78. package/dist/channel-CZ55XiAG.js +1320 -0
  79. package/dist/channel-Ccfv73or.js +595 -0
  80. package/dist/channel-CzsHgYiG.js +350 -0
  81. package/dist/channel-D4vHC37-.js +491 -0
  82. package/dist/channel-DRykWnyQ.js +1100 -0
  83. package/dist/channel-Dv_sqItB.js +840 -0
  84. package/dist/channel-Rka7SmcE.js +453 -0
  85. package/dist/channel-YXjNVZ70.js +297 -0
  86. package/dist/channel-core-BWePKW2T.js +5 -0
  87. package/dist/channel-inbound-B8tlgRz9.js +31 -0
  88. package/dist/channel-plugin-runtime-BSquEWfT.js +771 -0
  89. package/dist/channel-runtime-DyoiUzHM.js +425 -0
  90. package/dist/channel.runtime-BNUQYyCS.js +34702 -0
  91. package/dist/channel.runtime-BSYg7-dS.js +109 -0
  92. package/dist/channel.runtime-C3YAtGah.js +2364 -0
  93. package/dist/channel.runtime-CZggGgop.js +430 -0
  94. package/dist/channel.runtime-ZWHikPHo.js +89 -0
  95. package/dist/channel.runtime-aOaQbZea.js +4 -0
  96. package/dist/channel.runtime-puS1jfmK.js +576 -0
  97. package/dist/channel.runtime.js +1 -1
  98. package/dist/channel.setup-B2_426hq.js +10 -0
  99. package/dist/channels-cli-jNLEPssf.js +267 -0
  100. package/dist/channels-eG2v9IVY.js +827 -0
  101. package/dist/chat-BQEVN8XR.js +2757 -0
  102. package/dist/clawbot-cli-CSsLvJhI.js +9 -0
  103. package/dist/cli/daemon-cli.js +3 -3
  104. package/dist/cli-7D9AzMj2.js +219 -0
  105. package/dist/cli-CfP5iSkW.js +2 -0
  106. package/dist/cli-KSwNK8zo.js +72 -0
  107. package/dist/cli-LF3vrSmQ.js +2 -0
  108. package/dist/cli-runner-C-yyW9Mw.js +286 -0
  109. package/dist/cli-runner.runtime-BPTwiZtI.js +4 -0
  110. package/dist/cli-runner.runtime-CZ7aFUiV.js +3 -0
  111. package/dist/cli-runner.runtime.js +1 -1
  112. package/dist/cli-startup-metadata.json +2 -2
  113. package/dist/cli.runtime-BkxOxJn0.js +1261 -0
  114. package/dist/cli.runtime.js +1 -1
  115. package/dist/client-BeAVbxBQ.js +138 -0
  116. package/dist/client-DWrM2Yms.js +2742 -0
  117. package/dist/command-auth-TXkwHike.js +76 -0
  118. package/dist/command-config-resolution-BQUvy5ZL.js +2 -0
  119. package/dist/command-config-resolution-CiffKnhz.js +23 -0
  120. package/dist/command-config-resolution.runtime-DWe34jdz.js +2 -0
  121. package/dist/command-config-resolution.runtime.js +1 -1
  122. package/dist/command-registry-BI5Ce-0X.js +9 -0
  123. package/dist/command-registry-CZ-Rk9No.js +4 -0
  124. package/dist/command-registry-core-CqSjfb7e.js +104 -0
  125. package/dist/command-secret-gateway-RYlrkM8e.js +528 -0
  126. package/dist/command-status.runtime-9RuTTw7H.js +87 -0
  127. package/dist/command-status.runtime.js +1 -1
  128. package/dist/commands-acp-DNlM5COD.js +77 -0
  129. package/dist/commands-compact.runtime-Dbbx-Ps6.js +10 -0
  130. package/dist/commands-compact.runtime.js +1 -1
  131. package/dist/commands-handlers.runtime-J4HmYPML.js +4596 -0
  132. package/dist/commands-handlers.runtime.js +1 -1
  133. package/dist/commands-status-BpCtSlHL.js +16 -0
  134. package/dist/commands-status.runtime-B5lz9wwA.js +3 -0
  135. package/dist/commands-status.runtime.js +1 -1
  136. package/dist/commands-subagents-control.runtime-BlMDlblZ.js +2 -0
  137. package/dist/commands-subagents-control.runtime-RvrJJSNg.js +3 -0
  138. package/dist/commands-subagents-control.runtime.js +1 -1
  139. package/dist/commands-system-prompt-DuLI1Zhj.js +158 -0
  140. package/dist/commands-system-prompt-aXNuSW_q.js +2 -0
  141. package/dist/commands.runtime-Cvb5f7IP.js +166 -0
  142. package/dist/commands.runtime.js +1 -1
  143. package/dist/compact-CEtFY3x7.js +1118 -0
  144. package/dist/compact.runtime-BEuz-f53.js +12 -0
  145. package/dist/compact.runtime.js +1 -1
  146. package/dist/completion-cli-Du1dkhoP.js +313 -0
  147. package/dist/config-Mu4QhWzJ.js +248 -0
  148. package/dist/config-cli-DUUIMEUP.js +1073 -0
  149. package/dist/configure-DLxdFMCs.js +2 -0
  150. package/dist/configure-DQZRoD0Y.js +1244 -0
  151. package/dist/connect-options-CR5cdO4W.js +699 -0
  152. package/dist/control-auth-DLnHsBZt.js +125 -0
  153. package/dist/control-service-B035Oo8M.js +156 -0
  154. package/dist/control-ui/assets/agents-1LSJ-6PP.js +949 -0
  155. package/dist/control-ui/assets/channel-config-extras-BQz7hQLy.js +2 -0
  156. package/dist/control-ui/assets/channels-Pd3YLhy4.js +353 -0
  157. package/dist/control-ui/assets/cron-DME74GWr.js +933 -0
  158. package/dist/control-ui/assets/de-C0ZR8sDB.js +2 -0
  159. package/dist/control-ui/assets/debug-B4No9QzL.js +94 -0
  160. package/dist/control-ui/assets/es-C6bU_TtU.js +2 -0
  161. package/dist/control-ui/assets/format-CU5rVzG3.js +9 -0
  162. package/dist/control-ui/assets/fr-D5DeTmNv.js +2 -0
  163. package/dist/control-ui/assets/id-D2rVEDjJ.js +2 -0
  164. package/dist/control-ui/assets/index-BL88Y9ha.js +6308 -0
  165. package/dist/control-ui/assets/instances-BrcIASdv.js +57 -0
  166. package/dist/control-ui/assets/ja-JP-Dn3lisLY.js +2 -0
  167. package/dist/control-ui/assets/ko-DxD_1Zk0.js +2 -0
  168. package/dist/control-ui/assets/logs-BCK7QB61.js +74 -0
  169. package/dist/control-ui/assets/nodes-DBgRvAW9.js +436 -0
  170. package/dist/control-ui/assets/pl-DqfELhXe.js +2 -0
  171. package/dist/control-ui/assets/pt-BR-CyYqgZQ0.js +2 -0
  172. package/dist/control-ui/assets/sessions-xAeiynNF.js +306 -0
  173. package/dist/control-ui/assets/skills-DnzXHEWh.js +314 -0
  174. package/dist/control-ui/assets/skills-shared-DUcVMOWy.js +11 -0
  175. package/dist/control-ui/assets/string-coerce-Cdiw640X.js +3 -0
  176. package/dist/control-ui/assets/th-Cdunu1Yf.js +2 -0
  177. package/dist/control-ui/assets/tr-BVk27ysg.js +2 -0
  178. package/dist/control-ui/assets/uk-CI_KWzZt.js +2 -0
  179. package/dist/control-ui/assets/wallet-BDUGnhoA.js +195 -0
  180. package/dist/control-ui/assets/zh-CN-Iit1vnHx.js +2 -0
  181. package/dist/control-ui/assets/zh-TW-hVvjG-ie.js +2 -0
  182. package/dist/control-ui/index.html +3 -3
  183. package/dist/control-ui-BdRLK7I-.js +664 -0
  184. package/dist/conversation-id-BM-V07Pl.js +235 -0
  185. package/dist/conversation-id-BghRIfxG.js +38 -0
  186. package/dist/conversation-runtime-C4gObsh2.js +31 -0
  187. package/dist/core-ChqnJuFH.js +275 -0
  188. package/dist/cron-cli-C5Gndyos.js +713 -0
  189. package/dist/daemon-cli-ZzTGcINw.js +12 -0
  190. package/dist/delegate-BulXNglP.js +64 -0
  191. package/dist/detached-task-runtime-vv5lDMJn.js +73 -0
  192. package/dist/devices-cli-DIvpz4kL.js +496 -0
  193. package/dist/diagnostics-C8iZ-TW3.js +154 -0
  194. package/dist/direct-dm-DtDot5lO.js +64 -0
  195. package/dist/dispatch-CswKkiWZ.js +1131 -0
  196. package/dist/dispatch-acp-B6BY7PnM.js +981 -0
  197. package/dist/dispatch-acp-manager.runtime-9d1-ds6W.js +3 -0
  198. package/dist/dispatch-acp-manager.runtime.js +1 -1
  199. package/dist/dispatch-acp.runtime-B3XBEEra.js +19 -0
  200. package/dist/dispatch-acp.runtime.js +1 -1
  201. package/dist/doctor-device-pairing-B9xoU-b0.js +307 -0
  202. package/dist/doctor-gateway-daemon-flow-CBRay2wn.js +250 -0
  203. package/dist/doctor-gateway-health-Pv5QfyCN.js +60 -0
  204. package/dist/doctor-health-contributions-BQZqHOsI.js +486 -0
  205. package/dist/doctor-health-sIYTca3Z.js +59 -0
  206. package/dist/doctor-prompter-Bl7VEFRB.js +56 -0
  207. package/dist/doctor-workspace-status-COpJU_Sy.js +75 -0
  208. package/dist/dreaming-B-Ij18RW.js +1574 -0
  209. package/dist/dreaming-narrative-Dlq1B1wL.js +595 -0
  210. package/dist/embedded-gateway-stub.runtime-DxH4W_Ct.js +9 -0
  211. package/dist/embedded-gateway-stub.runtime.js +1 -1
  212. package/dist/embeddings-http-Dwm0-7xN.js +205 -0
  213. package/dist/entry.js +2 -2
  214. package/dist/exec-approvals-cli-NfwQ3x1C.js +498 -0
  215. package/dist/extensionAPI.js +1 -1
  216. package/dist/extensions/active-memory/index.js +1 -1
  217. package/dist/extensions/bluebubbles/api.js +3 -3
  218. package/dist/extensions/bluebubbles/channel-plugin-api.js +1 -1
  219. package/dist/extensions/browser/browser-bridge.js +1 -1
  220. package/dist/extensions/browser/browser-config.js +4 -4
  221. package/dist/extensions/browser/browser-control-auth.js +2 -2
  222. package/dist/extensions/browser/browser-doctor.js +2 -2
  223. package/dist/extensions/browser/browser-maintenance.js +2 -2
  224. package/dist/extensions/browser/browser-profiles.js +2 -2
  225. package/dist/extensions/browser/browser-runtime-api.js +10 -10
  226. package/dist/extensions/browser/index.js +1 -1
  227. package/dist/extensions/browser/plugin-registration.js +1 -1
  228. package/dist/extensions/browser/register.runtime.js +3 -3
  229. package/dist/extensions/browser/runtime-api.js +11 -11
  230. package/dist/extensions/browser/test-support.js +1 -1
  231. package/dist/extensions/device-pair/api.js +1 -1
  232. package/dist/extensions/device-pair/index.js +3 -3
  233. package/dist/extensions/device-pair/notify.js +1 -1
  234. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  235. package/dist/extensions/google-meet/index.js +2 -2
  236. package/dist/extensions/imessage/api.js +3 -3
  237. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  238. package/dist/extensions/imessage/runtime-api.js +3 -3
  239. package/dist/extensions/irc/api.js +2 -2
  240. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  241. package/dist/extensions/line/api.js +2 -2
  242. package/dist/extensions/line/channel-plugin-api.js +1 -1
  243. package/dist/extensions/line/contract-api.js +1 -1
  244. package/dist/extensions/line/runtime-api.js +4 -4
  245. package/dist/extensions/line/setup-api.js +1 -1
  246. package/dist/extensions/llm-task/index.js +2 -2
  247. package/dist/extensions/lobster/index.js +3 -3
  248. package/dist/extensions/lobster/runtime-api.js +1 -1
  249. package/dist/extensions/mattermost/api.js +1 -1
  250. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  251. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  252. package/dist/extensions/mattermost/policy-api.js +1 -1
  253. package/dist/extensions/mattermost/runtime-api.js +4 -4
  254. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  255. package/dist/extensions/memory-core/api.js +1 -1
  256. package/dist/extensions/memory-core/cli-metadata.js +2 -2
  257. package/dist/extensions/memory-core/index.js +3 -3
  258. package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
  259. package/dist/extensions/msteams/api.js +1 -1
  260. package/dist/extensions/msteams/channel-plugin-api.js +1 -1
  261. package/dist/extensions/msteams/runtime-api.js +3 -3
  262. package/dist/extensions/msteams/test-api.js +1 -1
  263. package/dist/extensions/nextcloud-talk/api.js +1 -1
  264. package/dist/extensions/nextcloud-talk/channel-plugin-api.js +1 -1
  265. package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
  266. package/dist/extensions/openshell/index.js +2 -2
  267. package/dist/extensions/signal/api.js +6 -6
  268. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  269. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  270. package/dist/extensions/signal/runtime-api.js +7 -7
  271. package/dist/extensions/skill-workshop/api.js +1 -1
  272. package/dist/extensions/skill-workshop/index.js +1 -1
  273. package/dist/extensions/synology-chat/api.js +1 -1
  274. package/dist/extensions/synology-chat/channel-plugin-api.js +1 -1
  275. package/dist/extensions/tlon/api.js +2 -2
  276. package/dist/extensions/tlon/channel-plugin-api.js +1 -1
  277. package/dist/extensions/tlon/runtime-api.js +1 -1
  278. package/dist/extensions/tlon/test-api.js +1 -1
  279. package/dist/extensions/twitch/api.js +1 -1
  280. package/dist/extensions/twitch/channel-plugin-api.js +1 -1
  281. package/dist/extensions/twitch/setup-plugin-api.js +1 -1
  282. package/dist/extensions/zalo/api.js +3 -3
  283. package/dist/extensions/zalo/channel-plugin-api.js +1 -1
  284. package/dist/extensions/zalo/runtime-api.js +2 -2
  285. package/dist/extensions/zalo/setup-api.js +2 -2
  286. package/dist/extensions/zalouser/api.js +3 -3
  287. package/dist/extensions/zalouser/channel-plugin-api.js +1 -1
  288. package/dist/extensions/zalouser/runtime-api.js +6 -6
  289. package/dist/extensions/zalouser/setup-plugin-api.js +1 -1
  290. package/dist/extensions/zalouser/test-api.js +1 -1
  291. package/dist/fallbacks-BFYvKUnY.js +31 -0
  292. package/dist/fallbacks-Dln-Fm7a.js +2 -0
  293. package/dist/fallbacks-shared-BtC9lu5P.js +111 -0
  294. package/dist/gateway-CLjt4Ubu.js +115 -0
  295. package/dist/gateway-cli-jaaJ3fg-.js +1325 -0
  296. package/dist/gateway-rpc-B0bKGYQt.js +14 -0
  297. package/dist/gateway-rpc.runtime-CDyIcCe7.js +23 -0
  298. package/dist/gateway-rpc.runtime.js +1 -1
  299. package/dist/gateway-runtime-BxG-mEQr.js +15 -0
  300. package/dist/gateway-status-v2j9MIsq.js +584 -0
  301. package/dist/genesis-tools-CES2sMWo.js +8998 -0
  302. package/dist/genesis-tools.runtime-BzLXBcui.js +2 -0
  303. package/dist/genesis-tools.runtime.js +1 -1
  304. package/dist/get-reply-7p41dlff.js +3879 -0
  305. package/dist/get-reply-from-config.runtime-u3yCD2PM.js +2 -0
  306. package/dist/get-reply-from-config.runtime.js +1 -1
  307. package/dist/graph-users-IT2wmMx0.js +1337 -0
  308. package/dist/health-BFcoKWr0.js +469 -0
  309. package/dist/health-DRvLyY-r.js +3 -0
  310. package/dist/heartbeat-runner-BHjLQL2M.js +1292 -0
  311. package/dist/heartbeat-runner-DqEJGTLj.js +5 -0
  312. package/dist/heartbeat-runner.runtime-Cmx1SSZn.js +4 -0
  313. package/dist/heartbeat-runner.runtime.js +1 -1
  314. package/dist/hooks-cli-DDT-e8cJ.js +433 -0
  315. package/dist/http-endpoint-helpers-Dj8t0Siy.js +41 -0
  316. package/dist/http-utils-Dwz38Ezf.js +924 -0
  317. package/dist/image-fallbacks-D7OPvToB.js +31 -0
  318. package/dist/image-fallbacks-Dz8AR8dy.js +2 -0
  319. package/dist/inbound-reply-dispatch-DAPsCNCR.js +73 -0
  320. package/dist/index.js +2 -2
  321. package/dist/infra-runtime-DwyCbqnF.js +39 -0
  322. package/dist/init-ff-VGINj.js +59 -0
  323. package/dist/library-DJHGahez.js +45 -0
  324. package/dist/lifecycle-Wn699Yk2.js +229 -0
  325. package/dist/lifecycle-jhG_0376.js +571 -0
  326. package/dist/lifecycle.runtime-DEQnEWhs.js +2 -0
  327. package/dist/lifecycle.runtime.js +1 -1
  328. package/dist/list-BpmdsUg2.js +2 -0
  329. package/dist/list-Bx1ShIyl.js +1201 -0
  330. package/dist/list-CrwKhvg6.js +130 -0
  331. package/dist/list-DMu11V_u.js +2 -0
  332. package/dist/list.probe-uEkIls1j.js +419 -0
  333. package/dist/llm-slug-generator-CLSA0uws.js +79 -0
  334. package/dist/llm-slug-generator.js +1 -1
  335. package/dist/load-config-Dez1SxKa.js +35 -0
  336. package/dist/local-dispatch.runtime-Dxyktykf.js +8 -0
  337. package/dist/local-dispatch.runtime.js +1 -1
  338. package/dist/logs-cli-DrKLI45U.js +265 -0
  339. package/dist/logs-cli.runtime-WU3d8rj3.js +2 -0
  340. package/dist/logs-cli.runtime.js +1 -1
  341. package/dist/main-session-restart-recovery-CDpXwlsb.js +206 -0
  342. package/dist/managed-image-attachments-CTfAUhir.js +2 -0
  343. package/dist/managed-image-attachments-DwCKRLRN.js +635 -0
  344. package/dist/manager-C8C_r6-q.js +2057 -0
  345. package/dist/manager-DNh85N31.js +2 -0
  346. package/dist/markdown-to-line-CeMQCPsl.js +790 -0
  347. package/dist/mcp/plugin-tools-serve.js +1 -1
  348. package/dist/mcp-cli-CilsONVQ.js +724 -0
  349. package/dist/mcp-http-DMgw2M1d.js +529 -0
  350. package/dist/memory-core-host-runtime-cli-C4pnPS3_.js +9 -0
  351. package/dist/message-BodHPIzX.js +231 -0
  352. package/dist/message-action-runner-PKW742hU.js +1406 -0
  353. package/dist/message-action-runner-VdRgHq0O.js +2 -0
  354. package/dist/message-actions-C6yR-dy_.js +143 -0
  355. package/dist/message.gateway.runtime-CXGM9Aaa.js +2 -0
  356. package/dist/message.gateway.runtime.js +1 -1
  357. package/dist/method-scopes-Dut0EB9J.js +209 -0
  358. package/dist/models-cli-CZt8Jsll.js +219 -0
  359. package/dist/models-http-Dcpveulc.js +92 -0
  360. package/dist/monitor--Wv4TIXO.js +671 -0
  361. package/dist/monitor-82G9E74P.js +1237 -0
  362. package/dist/monitor-BbRyKgwH.js +2 -0
  363. package/dist/monitor-CC0s4dOX.js +1459 -0
  364. package/dist/monitor-CQsFb8eQ.js +788 -0
  365. package/dist/monitor-Co1hvULI.js +1661 -0
  366. package/dist/monitor-auth-6Kflwyie.js +207 -0
  367. package/dist/monitor-processing-B7uKpWo4.js +1974 -0
  368. package/dist/monitor.runtime-CSS_UmaS.js +2 -0
  369. package/dist/monitor.runtime.js +1 -1
  370. package/dist/monitor.webhook-DGN7_Sjs.js +180 -0
  371. package/dist/msteams-Cq2ldWey.js +35 -0
  372. package/dist/native-hook-relay-DtU42QnM.js +519 -0
  373. package/dist/nextcloud-talk-CkxtLN3A.js +17 -0
  374. package/dist/node-cli-BlCoOoMf.js +2506 -0
  375. package/dist/nodes-cli-BspoieXR.js +1046 -0
  376. package/dist/nodes-utils-CbFMjmDs.js +84 -0
  377. package/dist/nodes.helpers-K9f4_mBF.js +34 -0
  378. package/dist/notify-CyQE1_Xr.js +315 -0
  379. package/dist/onboard-BvLD3Wm8.js +632 -0
  380. package/dist/onboard-helpers-0XhcwDte.js +204 -0
  381. package/dist/onboard-helpers-B8ISwJON.js +6 -0
  382. package/dist/onboard-remote-BRM4DH6p.js +193 -0
  383. package/dist/onboard-remote-Blun0y8J.js +2 -0
  384. package/dist/onboard-skills-CTHeVmHt.js +2 -0
  385. package/dist/onboard-skills-D_29CQ3l.js +134 -0
  386. package/dist/openai-http-CFWiPGqM.js +500 -0
  387. package/dist/openresponses-http-8gJVvkvj.js +1128 -0
  388. package/dist/operator-approvals-client-CD4Ta4mU.js +68 -0
  389. package/dist/outbound.runtime-djlPw0h_.js +2 -0
  390. package/dist/outbound.runtime.js +1 -1
  391. package/dist/pair-command-approve-CJX4gh1-.js +44 -0
  392. package/dist/persistent-bindings.lifecycle-BW_emuP7.js +85 -0
  393. package/dist/persistent-bindings.lifecycle-C1SX_Q_K.js +2 -0
  394. package/dist/pi-embedded-DD7aPF12.js +2905 -0
  395. package/dist/pi-embedded-PW48UsXW.js +4 -0
  396. package/dist/pi-embedded.runtime-CqhLxSYX.js +4 -0
  397. package/dist/pi-embedded.runtime.js +1 -1
  398. package/dist/pi-tool-definition-adapter-C1Prxd-M.js +217 -0
  399. package/dist/pi-tools-pw6Tseqi.js +1057 -0
  400. package/dist/pi-tools.before-tool-call-BSfbqmdy.js +433 -0
  401. package/dist/pi-tools.before-tool-call-Vdpw6m1Q.js +2 -0
  402. package/dist/plugin-Bkk7yfMh.js +12195 -0
  403. package/dist/plugin-enabled-B7310bjm.js +140 -0
  404. package/dist/plugin-registration-ClydMGPd.js +23 -0
  405. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  406. package/dist/plugin-sdk/acp-binding-runtime.js +1 -1
  407. package/dist/plugin-sdk/acp-runtime.js +2 -2
  408. package/dist/plugin-sdk/agent-harness-runtime.js +5 -5
  409. package/dist/plugin-sdk/agent-harness.js +6 -6
  410. package/dist/plugin-sdk/agent-runtime.js +2 -2
  411. package/dist/plugin-sdk/approval-gateway-runtime.js +2 -2
  412. package/dist/plugin-sdk/approval-handler-runtime.js +3 -3
  413. package/dist/plugin-sdk/approval-runtime.js +1 -1
  414. package/dist/plugin-sdk/browser-node-runtime.js +4 -4
  415. package/dist/plugin-sdk/browser-setup-tools.js +3 -3
  416. package/dist/plugin-sdk/browser-support.js +7 -7
  417. package/dist/plugin-sdk/channel-core.js +2 -2
  418. package/dist/plugin-sdk/channel-inbound.js +2 -2
  419. package/dist/plugin-sdk/command-auth.js +1 -1
  420. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  421. package/dist/plugin-sdk/compat.js +1 -1
  422. package/dist/plugin-sdk/conversation-binding-runtime.js +1 -1
  423. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  424. package/dist/plugin-sdk/core.js +2 -2
  425. package/dist/plugin-sdk/direct-dm.js +1 -1
  426. package/dist/plugin-sdk/gateway-runtime.js +3 -3
  427. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  428. package/dist/plugin-sdk/index.js +1 -1
  429. package/dist/plugin-sdk/infra-runtime.js +2 -2
  430. package/dist/plugin-sdk/irc.js +2 -2
  431. package/dist/plugin-sdk/matrix.js +1 -1
  432. package/dist/plugin-sdk/memory-core-host-runtime-cli.js +2 -2
  433. package/dist/plugin-sdk/memory-core.js +2 -2
  434. package/dist/plugin-sdk/msteams.js +2 -2
  435. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  436. package/dist/plugin-sdk/nostr.js +1 -1
  437. package/dist/plugin-sdk/reply-dispatch-runtime.js +1 -1
  438. package/dist/plugin-sdk/reply-runtime.js +4 -4
  439. package/dist/plugin-sdk/runtime-secret-resolution.js +1 -1
  440. package/dist/plugin-sdk/runtime.js +2 -2
  441. package/dist/plugin-sdk/session-visibility.js +1 -1
  442. package/dist/plugin-sdk/src/gateway/protocol/index.d.ts +43 -3
  443. package/dist/plugin-sdk/src/gateway/protocol/schema/protocol-schemas.d.ts +40 -0
  444. package/dist/plugin-sdk/src/gateway/protocol/schema/wallet.d.ts +44 -0
  445. package/dist/plugin-sdk/testing.js +4 -4
  446. package/dist/plugin-sdk/tlon.js +1 -1
  447. package/dist/plugin-sdk/zalo.js +1 -1
  448. package/dist/plugin-sdk/zalouser.js +1 -1
  449. package/dist/plugin-service-BuKwEFP2.js +2890 -0
  450. package/dist/plugins/runtime/index.js +1 -1
  451. package/dist/policy-B-SG_MoX.js +328 -0
  452. package/dist/postinstall-inventory.json +440 -440
  453. package/dist/prepare.runtime-DCvn4PA9.js +815 -0
  454. package/dist/prepare.runtime.js +1 -1
  455. package/dist/probe-BM2lSGpq.js +1443 -0
  456. package/dist/probe-C-OcrhHU.js +241 -0
  457. package/dist/probe-C-zomfHC.js +74 -0
  458. package/dist/probe-CktNHncO.js +2 -0
  459. package/dist/probe-DvEzC7Yt.js +2 -0
  460. package/dist/probe-UYnzau7s.js +2205 -0
  461. package/dist/probe-VShtyoQP.js +45 -0
  462. package/dist/program-B1Zbl29n.js +111 -0
  463. package/dist/prompt-select-styled-BFiy7KFb.js +20 -0
  464. package/dist/provider-dispatcher-C_R0buEs.js +22 -0
  465. package/dist/provider-dispatcher-DMjvnMg1.js +2 -0
  466. package/dist/qr-cli-CIMpiVqT.js +2 -0
  467. package/dist/qr-cli-Chl8J_dU.js +349 -0
  468. package/dist/reaction-runtime-api-BNJMHeSk.js +116 -0
  469. package/dist/reactions-2lggXKxe.js +998 -0
  470. package/dist/register-service-commands-ayYMhoTG.js +71 -0
  471. package/dist/register.agent-j81xGvIr.js +247 -0
  472. package/dist/register.configure-Ceqf8SV4.js +15 -0
  473. package/dist/register.maintenance-CS92zJrF.js +438 -0
  474. package/dist/register.message-BYxUGLpc.js +329 -0
  475. package/dist/register.onboard-YkI-xo9t.js +81 -0
  476. package/dist/register.runtime-CmvxwCiw.js +81 -0
  477. package/dist/register.runtime.js +1 -1
  478. package/dist/register.setup-CNdTgu3R.js +150 -0
  479. package/dist/register.status-health-sessions-BX2GmWTc.js +1215 -0
  480. package/dist/register.subclis-BeGY5cHF.js +3 -0
  481. package/dist/register.subclis-COA10rio.js +29 -0
  482. package/dist/register.subclis-core-DBrCeLqN.js +243 -0
  483. package/dist/register.wallet-D2TECwG5.js +159 -0
  484. package/dist/reply-dispatch-runtime-CNsrlQxq.js +13 -0
  485. package/dist/reply-runtime-Cqu1YNSD.js +11 -0
  486. package/dist/reply.runtime-DjHQKkER.js +2 -0
  487. package/dist/reply.runtime.js +1 -1
  488. package/dist/restart-health-BvQlMuSR.js +2 -0
  489. package/dist/restart-health-Ddm7Ehby.js +202 -0
  490. package/dist/root-help-3kWD5VLI.js +44 -0
  491. package/dist/routes-BCZzdzw2.js +2 -0
  492. package/dist/routes-CA0DoP7S.js +3340 -0
  493. package/dist/rpc-BzPBQ5ql.js +61 -0
  494. package/dist/rpc.runtime-B8NzeUIK.js +21 -0
  495. package/dist/rpc.runtime.js +1 -1
  496. package/dist/run-delivery.runtime-Cx2tDADi.js +530 -0
  497. package/dist/run-delivery.runtime.js +1 -1
  498. package/dist/run-embedded.runtime-B9SGhBV5.js +4 -0
  499. package/dist/run-embedded.runtime.js +1 -1
  500. package/dist/run-execution-cli.runtime-D3gnOlIV.js +4 -0
  501. package/dist/run-execution-cli.runtime.js +1 -1
  502. package/dist/run-executor.runtime-BwsKj4NN.js +277 -0
  503. package/dist/run-executor.runtime.js +1 -1
  504. package/dist/run-main-CJYy9aeX.js +516 -0
  505. package/dist/run-subagent-registry.runtime-CNCRhpSK.js +2 -0
  506. package/dist/run-subagent-registry.runtime.js +1 -1
  507. package/dist/run-wait-o2Yo35xt.js +135 -0
  508. package/dist/runtime-Co5LW-cY.js +973 -0
  509. package/dist/runtime-D98eGt1z.js +9 -0
  510. package/dist/runtime-api-DLRKboKD.js +4 -0
  511. package/dist/runtime-api-DW1jDnXG.js +9 -0
  512. package/dist/runtime-api-DqL2zvW_.js +14 -0
  513. package/dist/runtime-api-DtRkIQdm.js +9 -0
  514. package/dist/runtime-embedded-pi.runtime-_1BnpUsH.js +2 -0
  515. package/dist/runtime-embedded-pi.runtime.js +1 -1
  516. package/dist/runtime-internal-OmAlLFWl.js +2 -0
  517. package/dist/runtime-options-DXi_dUFt.js +275 -0
  518. package/dist/runtime-schema-Cao36tlZ.js +27748 -0
  519. package/dist/scan-CMs-eSKD.js +523 -0
  520. package/dist/scan-DaCjqwXa.js +2 -0
  521. package/dist/secrets-cli-DsCbOPd8.js +2101 -0
  522. package/dist/security-cli-DWpmdyKz.js +486 -0
  523. package/dist/selection-BY0XwQb0.js +7737 -0
  524. package/dist/selection-UBLsVuoF.js +2 -0
  525. package/dist/send-B7W0wAaA.js +156 -0
  526. package/dist/send-DVXD9_3G.js +102 -0
  527. package/dist/send.runtime-BkSytPZj.js +2 -0
  528. package/dist/send.runtime.js +1 -1
  529. package/dist/server-7ozS-gsn.js +77 -0
  530. package/dist/server-LmKuO2X1.js +13 -0
  531. package/dist/server-context-BdRn7wbe.js +2 -0
  532. package/dist/server-context-CC4pOAPX.js +846 -0
  533. package/dist/server-node-events-B677Q3os.js +481 -0
  534. package/dist/server-plugin-bootstrap-CR8RjVLB.js +2 -0
  535. package/dist/server-plugin-bootstrap-CYpLXOkm.js +11124 -0
  536. package/dist/server-restart-sentinel-Btcc7BTE.js +697 -0
  537. package/dist/server.impl-BkehWe_p.js +12726 -0
  538. package/dist/service-BWLndtz9.js +941 -0
  539. package/dist/session-kill-http-BN9Ql6UD.js +110 -0
  540. package/dist/session-reset-service-hNFKFmB3.js +471 -0
  541. package/dist/session-route-DErqiFgk.js +93 -0
  542. package/dist/session-status.runtime-Cu7JU8_U.js +2 -0
  543. package/dist/session-status.runtime.js +1 -1
  544. package/dist/session-subagent-reactivation.runtime-Bbagi0__.js +2 -0
  545. package/dist/session-subagent-reactivation.runtime.js +1 -1
  546. package/dist/session-tab-registry-D-OCT26z.js +491 -0
  547. package/dist/session-visibility-Ddr5Ae9L.js +147 -0
  548. package/dist/sessions-helpers-D0Kf9Ps4.js +304 -0
  549. package/dist/sessions-history-http-BmKrK99v.js +383 -0
  550. package/dist/sessions-patch-BtQ1tAvw.js +309 -0
  551. package/dist/sessions-resolve-BGLrS6vF.js +174 -0
  552. package/dist/sessions.runtime-CsAKVqcP.js +2 -0
  553. package/dist/sessions.runtime.js +1 -1
  554. package/dist/setup-C7ziOemv.js +495 -0
  555. package/dist/setup-api-CFdE6Bv6.js +29 -0
  556. package/dist/setup-core-DWygxvIO.js +176 -0
  557. package/dist/setup-core-IwixXKp3.js +171 -0
  558. package/dist/setup-surface--KMZi-cs.js +286 -0
  559. package/dist/setup-surface-Bo-J3N7I.js +403 -0
  560. package/dist/setup-surface-C-7l8TcU.js +219 -0
  561. package/dist/setup.finalize-D7dPxVDl.js +539 -0
  562. package/dist/setup.gateway-config-DmLcj4KK.js +250 -0
  563. package/dist/shared-CpqCPySw.js +76 -0
  564. package/dist/shared-D-tbPAY5.js +198 -0
  565. package/dist/shared-Dlx0gCmP.js +121 -0
  566. package/dist/slash-state-Cfz0x49w.js +1911 -0
  567. package/dist/src-BcGXLl_7.js +3974 -0
  568. package/dist/startup-context-oaWUXB8r.js +312 -0
  569. package/dist/status-B6NTLfIA.js +2 -0
  570. package/dist/status-BH2PSbt-.js +3 -0
  571. package/dist/status-BdqF0YGr.js +397 -0
  572. package/dist/status-C8o-eOFh.js +209 -0
  573. package/dist/status-D9GTZEx3.js +190 -0
  574. package/dist/status-all-CYFjOCcB.js +498 -0
  575. package/dist/status-json-command-DRbt8OgF.js +84 -0
  576. package/dist/status-json-wzJiFRSB.js +14 -0
  577. package/dist/status-runtime-shared-CI8_EqUP.js +257 -0
  578. package/dist/status-subagents.runtime-DrQmaLAc.js +18 -0
  579. package/dist/status-subagents.runtime.js +1 -1
  580. package/dist/status-text-DyIs2f8P.js +236 -0
  581. package/dist/status-yhOw1Z3M.js +2 -0
  582. package/dist/status.gateway-connection.runtime-Bjp2AscT.js +2 -0
  583. package/dist/status.gateway-connection.runtime.js +1 -1
  584. package/dist/status.gather-Blc_DKTK.js +2 -0
  585. package/dist/status.gather-CqgbE6TR.js +292 -0
  586. package/dist/status.runtime-DkTncdN7.js +2 -0
  587. package/dist/status.runtime.js +1 -1
  588. package/dist/status.scan-Dc4FTGEf.js +65 -0
  589. package/dist/status.scan-overview-B0rKBZWW.js +379 -0
  590. package/dist/status.scan.fast-json-BhqvblxV.js +2 -0
  591. package/dist/status.scan.fast-json-DI6a0Tv9.js +132 -0
  592. package/dist/status.summary-CoKGnSoy.js +214 -0
  593. package/dist/status.summary-DrWqIllD.js +2 -0
  594. package/dist/subagent-announce-CgnWmHmH.js +351 -0
  595. package/dist/subagent-announce-delivery-DHVVJyea.js +726 -0
  596. package/dist/subagent-announce-output-d58DNnV0.js +364 -0
  597. package/dist/subagent-control-DsUeBdrz.js +506 -0
  598. package/dist/subagent-followup.runtime-BKyKE6nN.js +68 -0
  599. package/dist/subagent-followup.runtime.js +1 -1
  600. package/dist/subagent-orphan-recovery-_O6G65C-.js +305 -0
  601. package/dist/subagent-registry-BYuzIniG.js +1753 -0
  602. package/dist/subagent-registry-D0GzSMp0.js +3 -0
  603. package/dist/subagent-registry.runtime.js +1 -1
  604. package/dist/subagent-spawn-B6iHzxd0.js +1005 -0
  605. package/dist/system-cli-DPiT7dwA.js +59 -0
  606. package/dist/targets-DOHhYtK7.js +67 -0
  607. package/dist/task-executor-Bxg0f08x.js +360 -0
  608. package/dist/task-owner-access-Ymx7tKev.js +74 -0
  609. package/dist/task-registry-CQnnTGmN.js +2366 -0
  610. package/dist/task-registry-delivery-runtime-BSBXpDV6.js +2 -0
  611. package/dist/task-registry-delivery-runtime-D-Za0_P9.js +3 -0
  612. package/dist/task-registry.maintenance-BZpViOdb.js +2 -0
  613. package/dist/task-registry.maintenance-r46lgwwF.js +416 -0
  614. package/dist/telegram/token.js +1 -1
  615. package/dist/testing-2KPIcA5D.js +575 -0
  616. package/dist/text-report-BJwJgnEZ.js +587 -0
  617. package/dist/tool-resolution-CjlqPoX2.js +90 -0
  618. package/dist/tools-effective-inventory-C5X-_cBY.js +152 -0
  619. package/dist/tools-invoke-http-Cza5U0A9.js +206 -0
  620. package/dist/trash-K2na6Iz1.js +24 -0
  621. package/dist/tui-cli-l39_SXF6.js +4573 -0
  622. package/dist/update-cli-Iq8wyl0W.js +1728 -0
  623. package/dist/upgrade-1nwb0oPp.js +1226 -0
  624. package/dist/video-generation-task-status-Du2MUfI2.js +163 -0
  625. package/dist/wait-for-idle-before-flush-hJ-dtR6o.js +5986 -0
  626. package/package.json +1 -1
  627. package/dist/abort-BSgJMMy0.js +0 -201
  628. package/dist/abort.runtime-DSaqOkLi.js +0 -2
  629. package/dist/accounts-BYrE99V8.js +0 -107
  630. package/dist/accounts-Cw3U0GZS.js +0 -104
  631. package/dist/accounts-D3rbUrwm.js +0 -2
  632. package/dist/acp-cli-DeB5Rsjc.js +0 -2193
  633. package/dist/acp-spawn-CB_1HLYK.js +0 -1093
  634. package/dist/acp-spawn-DC-CjxhI.js +0 -2
  635. package/dist/acp-stateful-target-driver-B5hgjDME.js +0 -89
  636. package/dist/action-agents-de8OAj0v.js +0 -67
  637. package/dist/action-focus-CrHvpYTM.js +0 -132
  638. package/dist/action-help-DPabNXHZ.js +0 -7
  639. package/dist/action-info-CWAj-tKU.js +0 -101
  640. package/dist/action-kill-BvKs859S.js +0 -33
  641. package/dist/action-list-fiRrNbSX.js +0 -21
  642. package/dist/action-log-dn5JEtP_.js +0 -30
  643. package/dist/action-send-8A83W-vV.js +0 -39
  644. package/dist/action-spawn-VIuLWipE.js +0 -47
  645. package/dist/action-unfocus-D70HiUtC.js +0 -29
  646. package/dist/actions.runtime-BR7boyHX.js +0 -18
  647. package/dist/actions.runtime-GiNRcV0z.js +0 -5
  648. package/dist/agent-63D0MSuN.js +0 -2
  649. package/dist/agent-command-DpCldQUr.js +0 -874
  650. package/dist/agent-harness-runtime-CuxCjKHu.js +0 -144
  651. package/dist/agent-runner-utils-2KK7Tvwt.js +0 -239
  652. package/dist/agent-runner.runtime-B7-jeAE1.js +0 -3455
  653. package/dist/agent-runtime-B0LeqEC4.js +0 -18
  654. package/dist/agents-BKMfctCm.js +0 -5
  655. package/dist/agents-C_pD02YQ.js +0 -952
  656. package/dist/aliases-COyeblK9.js +0 -2
  657. package/dist/aliases-y-1ktZ4q.js +0 -96
  658. package/dist/api-C4eLLyHi.js +0 -139
  659. package/dist/api-DDQ1U9Y1.js +0 -3
  660. package/dist/api-DE42IEbe.js +0 -5
  661. package/dist/approval-gateway-resolver-B1vyfdsY.js +0 -29
  662. package/dist/approval-gateway-runtime-BspnMTAu.js +0 -2
  663. package/dist/approval-handler-runtime-BrOWxNQ7.js +0 -439
  664. package/dist/approval-native-runtime-amzGMScp.js +0 -729
  665. package/dist/attempt-execution.runtime-Bmw2z2TO.js +0 -509
  666. package/dist/attempt.prompt-helpers-BI35hO5A.js +0 -218
  667. package/dist/attempt.tool-run-context-CdMIupu1.js +0 -933
  668. package/dist/audit-CHoh7JgT.js +0 -939
  669. package/dist/audit.runtime-CZORspf5.js +0 -7
  670. package/dist/auth-9Vcx6Cmf.js +0 -383
  671. package/dist/auth-Dm3T2Azg.js +0 -2
  672. package/dist/auth-order-D4kOyxOC.js +0 -96
  673. package/dist/auth-order-XAV7PznW.js +0 -2
  674. package/dist/bash-tools-DCcnMXV5.js +0 -3
  675. package/dist/bash-tools-RvcvKJ6T.js +0 -2824
  676. package/dist/binding-routing-Bn1RJI3D.js +0 -85
  677. package/dist/binding-targets-DOB7nrnI.js +0 -121
  678. package/dist/bridge-server-CNv6vH_N.js +0 -113
  679. package/dist/browser-control-auth-BW5AsYZM.js +0 -2
  680. package/dist/browser-node-runtime-e_5J-t2m.js +0 -12
  681. package/dist/browser-profiles-V--grSvf.js +0 -2
  682. package/dist/browser-runtime-K7qKfdJO.js +0 -387
  683. package/dist/browser-setup-tools-RQ8B4E_8.js +0 -13
  684. package/dist/build-IWaXKaQo.js +0 -550
  685. package/dist/call-DMoCOQgN.js +0 -329
  686. package/dist/call-DR29cjQ8.js +0 -3
  687. package/dist/call.runtime-CPFzabci.js +0 -2
  688. package/dist/capability-cli-BqaYg27d.js +0 -1401
  689. package/dist/catchup-CkMkjMjm.js +0 -300
  690. package/dist/channel-7-Cy5vdE.js +0 -1320
  691. package/dist/channel-B0LKbN9a.js +0 -1802
  692. package/dist/channel-C5SikvTn.js +0 -1174
  693. package/dist/channel-CGef-OxR.js +0 -1100
  694. package/dist/channel-CqHnAQJn.js +0 -350
  695. package/dist/channel-D3_wWplf.js +0 -595
  696. package/dist/channel-DRek8wwh.js +0 -453
  697. package/dist/channel-DYRwgk_C.js +0 -297
  698. package/dist/channel-DxbCZT0P.js +0 -226
  699. package/dist/channel-core-a5qj8qsH.js +0 -5
  700. package/dist/channel-inbound-CozRn3n-.js +0 -31
  701. package/dist/channel-plugin-runtime-DsiFaHL9.js +0 -771
  702. package/dist/channel-runtime-C8zLNzEP.js +0 -425
  703. package/dist/channel-v0PxXI_J.js +0 -491
  704. package/dist/channel-yHVk-YRx.js +0 -840
  705. package/dist/channel.runtime-C1rseTPL.js +0 -430
  706. package/dist/channel.runtime-Ci6Q1Cuv.js +0 -576
  707. package/dist/channel.runtime-CvOa3gYA.js +0 -109
  708. package/dist/channel.runtime-CwZodUOR.js +0 -34702
  709. package/dist/channel.runtime-DaP1Ann2.js +0 -89
  710. package/dist/channel.runtime-ie3egHX0.js +0 -4
  711. package/dist/channel.runtime-p_ELA91e.js +0 -2364
  712. package/dist/channel.setup-D1_1xjgF.js +0 -10
  713. package/dist/channels-Cx8uAXLx.js +0 -827
  714. package/dist/channels-cli-BCCSvZCu.js +0 -267
  715. package/dist/chat-CjH9IZPG.js +0 -2757
  716. package/dist/clawbot-cli-BW8txesR.js +0 -9
  717. package/dist/cli-BosrhIZ9.js +0 -72
  718. package/dist/cli-CHvS1B5Q.js +0 -2
  719. package/dist/cli-DJz9OCkF.js +0 -219
  720. package/dist/cli-DOiNFMc7.js +0 -2
  721. package/dist/cli-runner-CHk3q2MH.js +0 -286
  722. package/dist/cli-runner.runtime-mvuDOXO3.js +0 -4
  723. package/dist/cli-runner.runtime-rlm7f8Qi.js +0 -3
  724. package/dist/cli.runtime-BbTMs2tV.js +0 -1261
  725. package/dist/client-D1dJTyU7.js +0 -2722
  726. package/dist/client-JBM4I6b2.js +0 -138
  727. package/dist/command-auth-BbFsneAK.js +0 -76
  728. package/dist/command-config-resolution-DXhw734i.js +0 -23
  729. package/dist/command-config-resolution-poOTs26D.js +0 -2
  730. package/dist/command-config-resolution.runtime-BgBhROMr.js +0 -2
  731. package/dist/command-registry-BVFXhcOs.js +0 -4
  732. package/dist/command-registry-ClQXv5Dl.js +0 -9
  733. package/dist/command-registry-core-CAhTYQrv.js +0 -104
  734. package/dist/command-secret-gateway-DFTMkW7_.js +0 -528
  735. package/dist/command-status.runtime-DGPtSexy.js +0 -87
  736. package/dist/commands-acp-_nV8wWKt.js +0 -77
  737. package/dist/commands-compact.runtime-_vHyAiKz.js +0 -10
  738. package/dist/commands-handlers.runtime-CLi0aZTH.js +0 -4596
  739. package/dist/commands-status-HRJORs2e.js +0 -16
  740. package/dist/commands-status.runtime-CM9-gifT.js +0 -3
  741. package/dist/commands-subagents-control.runtime-BKBLELS1.js +0 -3
  742. package/dist/commands-subagents-control.runtime-Bv0x4ibi.js +0 -2
  743. package/dist/commands-system-prompt-B139cQlX.js +0 -2
  744. package/dist/commands-system-prompt-DuaobSBO.js +0 -158
  745. package/dist/commands.runtime-DSCXdZki.js +0 -166
  746. package/dist/compact-LzyN5PMu.js +0 -1118
  747. package/dist/compact.runtime-BJLpfnFS.js +0 -12
  748. package/dist/completion-cli-D8STecUS.js +0 -313
  749. package/dist/config-BrdI5ZyV.js +0 -248
  750. package/dist/config-cli-CdYXdQ9l.js +0 -1073
  751. package/dist/configure-07tFzclw.js +0 -1244
  752. package/dist/configure-CbEEjQYo.js +0 -2
  753. package/dist/connect-options-DqbkNROZ.js +0 -699
  754. package/dist/control-auth-DoDKg0VV.js +0 -125
  755. package/dist/control-service-BGluFHoB.js +0 -156
  756. package/dist/control-ui/assets/agents-DIlUBXrj.js +0 -949
  757. package/dist/control-ui/assets/channel-config-extras-BGlC1vk-.js +0 -2
  758. package/dist/control-ui/assets/channels-DkrHc4ne.js +0 -353
  759. package/dist/control-ui/assets/cron-B-r1qhzN.js +0 -933
  760. package/dist/control-ui/assets/de-4NcQrfyt.js +0 -2
  761. package/dist/control-ui/assets/debug-BNsI96cZ.js +0 -94
  762. package/dist/control-ui/assets/es-CrrRGWtR.js +0 -2
  763. package/dist/control-ui/assets/format-DPX2rt4X.js +0 -9
  764. package/dist/control-ui/assets/fr-D5W-tLOJ.js +0 -2
  765. package/dist/control-ui/assets/id-D553RZfz.js +0 -2
  766. package/dist/control-ui/assets/index-BNEyEtwP.js +0 -6308
  767. package/dist/control-ui/assets/instances-18Qi3xmu.js +0 -57
  768. package/dist/control-ui/assets/ja-JP-BqS1ssGF.js +0 -2
  769. package/dist/control-ui/assets/ko-CaE3K0VZ.js +0 -2
  770. package/dist/control-ui/assets/logs-DLWCXFsv.js +0 -74
  771. package/dist/control-ui/assets/nodes-BYrv5bpJ.js +0 -436
  772. package/dist/control-ui/assets/pl-CvV8uM6B.js +0 -2
  773. package/dist/control-ui/assets/pt-BR-DhkGCPIb.js +0 -2
  774. package/dist/control-ui/assets/sessions-Dzj0Stfl.js +0 -306
  775. package/dist/control-ui/assets/skills-CTsU9T-x.js +0 -314
  776. package/dist/control-ui/assets/skills-shared-DkdwCfRw.js +0 -11
  777. package/dist/control-ui/assets/string-coerce-Dq6kwRii.js +0 -3
  778. package/dist/control-ui/assets/th-BWa0iFp9.js +0 -2
  779. package/dist/control-ui/assets/tr-CIyWcYOQ.js +0 -2
  780. package/dist/control-ui/assets/uk-Dddui7S3.js +0 -2
  781. package/dist/control-ui/assets/wallet-DRK53ouz.js +0 -93
  782. package/dist/control-ui/assets/zh-CN-DrnaMCjT.js +0 -2
  783. package/dist/control-ui/assets/zh-TW-AAoU4b-j.js +0 -2
  784. package/dist/control-ui-e8ifrzMw.js +0 -664
  785. package/dist/conversation-id-D_Z9mqfh.js +0 -235
  786. package/dist/conversation-id-Dp8o7Hf7.js +0 -38
  787. package/dist/conversation-runtime-B1TCRdfm.js +0 -31
  788. package/dist/core-BTxiBxhe.js +0 -275
  789. package/dist/cron-cli-D5WHyG5z.js +0 -713
  790. package/dist/daemon-cli-CbJ5WTkZ.js +0 -12
  791. package/dist/delegate-Bvy2iFqj.js +0 -64
  792. package/dist/detached-task-runtime-CdQlbOaF.js +0 -73
  793. package/dist/devices-cli-CHKYPFQk.js +0 -496
  794. package/dist/diagnostics-DXBnZZDV.js +0 -154
  795. package/dist/direct-dm-DscQrdWj.js +0 -64
  796. package/dist/dispatch-CsJVa2_C.js +0 -1131
  797. package/dist/dispatch-acp-C5r7kMjF.js +0 -981
  798. package/dist/dispatch-acp-manager.runtime-BmaeIQYw.js +0 -3
  799. package/dist/dispatch-acp.runtime-CrPqsjE7.js +0 -19
  800. package/dist/doctor-device-pairing-BIWNe_Jn.js +0 -307
  801. package/dist/doctor-gateway-daemon-flow-B1w_mTCi.js +0 -250
  802. package/dist/doctor-gateway-health-PGrHhbuk.js +0 -60
  803. package/dist/doctor-health-CjIXOYaZ.js +0 -59
  804. package/dist/doctor-health-contributions-Gewam3A0.js +0 -486
  805. package/dist/doctor-prompter-C_nZk0eT.js +0 -56
  806. package/dist/doctor-workspace-status-HNtMY9tr.js +0 -75
  807. package/dist/dreaming-6bEi10m2.js +0 -1574
  808. package/dist/dreaming-narrative-C8-bcUG0.js +0 -595
  809. package/dist/embedded-gateway-stub.runtime-DBFo1O2n.js +0 -9
  810. package/dist/embeddings-http-DI8wVPpp.js +0 -205
  811. package/dist/exec-approvals-cli-CElurcBk.js +0 -498
  812. package/dist/fallbacks-B5Ph7HO-.js +0 -31
  813. package/dist/fallbacks-DVBCWaCR.js +0 -2
  814. package/dist/fallbacks-shared-DJEGkADy.js +0 -111
  815. package/dist/gateway-CjtKuAFO.js +0 -115
  816. package/dist/gateway-cli-UeLtu8Gv.js +0 -1325
  817. package/dist/gateway-rpc-E2ZcD2Pb.js +0 -14
  818. package/dist/gateway-rpc.runtime-D9oxEGVM.js +0 -23
  819. package/dist/gateway-runtime-DUkvmYNT.js +0 -15
  820. package/dist/gateway-status-B2yemMI1.js +0 -584
  821. package/dist/genesis-tools-DkQyKJJH.js +0 -8998
  822. package/dist/genesis-tools.runtime-C--92dxG.js +0 -2
  823. package/dist/get-reply-from-config.runtime-DVW2Z3Xz.js +0 -2
  824. package/dist/get-reply-qcf7h9-q.js +0 -3879
  825. package/dist/graph-users-C-ZMFjxP.js +0 -1337
  826. package/dist/health-CQgtKb-a.js +0 -469
  827. package/dist/health-CVQcF_SU.js +0 -3
  828. package/dist/heartbeat-runner-BMpI76oC.js +0 -1292
  829. package/dist/heartbeat-runner-tlqZ2QRH.js +0 -5
  830. package/dist/heartbeat-runner.runtime-BLaJ1moj.js +0 -4
  831. package/dist/hooks-cli-UJV1DwY_.js +0 -433
  832. package/dist/http-endpoint-helpers-BKYK0lXJ.js +0 -41
  833. package/dist/http-utils-CSMhLOmU.js +0 -924
  834. package/dist/image-fallbacks-B1kkwX5i.js +0 -31
  835. package/dist/image-fallbacks-BLVKYnSI.js +0 -2
  836. package/dist/inbound-reply-dispatch-KxpaEPy-.js +0 -73
  837. package/dist/infra-runtime-B7Bioutr.js +0 -39
  838. package/dist/init-BbDgno6y.js +0 -59
  839. package/dist/library-wOAms75w.js +0 -45
  840. package/dist/lifecycle--fVDSapD.js +0 -229
  841. package/dist/lifecycle-DsoPNmHR.js +0 -571
  842. package/dist/lifecycle.runtime-B6D7-MbQ.js +0 -2
  843. package/dist/list-B99x_eEq.js +0 -2
  844. package/dist/list-Bg9vO-vK.js +0 -1201
  845. package/dist/list-CJFvAL5B.js +0 -130
  846. package/dist/list-CXO2Pv7s.js +0 -2
  847. package/dist/list.probe-DvT83QeD.js +0 -419
  848. package/dist/llm-slug-generator-Dk-2o6wu.js +0 -79
  849. package/dist/load-config-DcSdLvU4.js +0 -35
  850. package/dist/local-dispatch.runtime-CeUL5zUz.js +0 -8
  851. package/dist/logs-cli-CkO4A9e_.js +0 -265
  852. package/dist/logs-cli.runtime-CjZMd8Ps.js +0 -2
  853. package/dist/main-session-restart-recovery-Yaowxz1V.js +0 -206
  854. package/dist/managed-image-attachments-BRkGH8id.js +0 -635
  855. package/dist/managed-image-attachments-CVQmQz19.js +0 -2
  856. package/dist/manager-ClvLmUep.js +0 -2057
  857. package/dist/manager-DLd5DOHM.js +0 -2
  858. package/dist/markdown-to-line-DdcFUlNP.js +0 -790
  859. package/dist/mcp-cli-Bg0n1yvO.js +0 -724
  860. package/dist/mcp-http-DwN4JtLF.js +0 -529
  861. package/dist/memory-core-host-runtime-cli-DokggwF4.js +0 -9
  862. package/dist/message-A6K1Uln8.js +0 -231
  863. package/dist/message-action-runner-By12iwmY.js +0 -1406
  864. package/dist/message-action-runner-DB7vQjDX.js +0 -2
  865. package/dist/message-actions-p0tyiJsp.js +0 -143
  866. package/dist/message.gateway.runtime-x9oPkfCV.js +0 -2
  867. package/dist/method-scopes-C2W7BZE-.js +0 -208
  868. package/dist/models-cli-BLajRwW5.js +0 -219
  869. package/dist/models-http-CbY-2ddw.js +0 -92
  870. package/dist/monitor-2gr47zvz.js +0 -2
  871. package/dist/monitor-CG9Xn5kb.js +0 -1237
  872. package/dist/monitor-CJXWP42d.js +0 -1661
  873. package/dist/monitor-V8PDbadr.js +0 -1459
  874. package/dist/monitor-Yea6MUcs.js +0 -671
  875. package/dist/monitor-_RMYsKC-.js +0 -788
  876. package/dist/monitor-auth-Ds-_E_h_.js +0 -207
  877. package/dist/monitor-processing-C7thbjUR.js +0 -1974
  878. package/dist/monitor.runtime-TBmnIKD-.js +0 -2
  879. package/dist/monitor.webhook-DSkuylzE.js +0 -180
  880. package/dist/msteams-KM-ToWtn.js +0 -35
  881. package/dist/native-hook-relay-BDz0eLdj.js +0 -519
  882. package/dist/nextcloud-talk-Bx1j4jh0.js +0 -17
  883. package/dist/node-cli-aEN8rLyY.js +0 -2506
  884. package/dist/nodes-cli-Dv0SFhFx.js +0 -1046
  885. package/dist/nodes-utils-DQExHgOK.js +0 -84
  886. package/dist/nodes.helpers-BkElz_SG.js +0 -34
  887. package/dist/notify-DH8p0jbK.js +0 -315
  888. package/dist/onboard-DKgQvVgg.js +0 -632
  889. package/dist/onboard-helpers-BLaaRiIQ.js +0 -204
  890. package/dist/onboard-helpers-CxDujxN_.js +0 -6
  891. package/dist/onboard-remote-BHcS99gt.js +0 -193
  892. package/dist/onboard-remote-CxD-xQ89.js +0 -2
  893. package/dist/onboard-skills-D2X91a-l.js +0 -2
  894. package/dist/onboard-skills-Z8VWQOTM.js +0 -134
  895. package/dist/openai-http-D6U8-gsV.js +0 -500
  896. package/dist/openresponses-http-8Gzpx-dY.js +0 -1128
  897. package/dist/operator-approvals-client-CPBdQHpS.js +0 -68
  898. package/dist/outbound.runtime-DyUVsM-o.js +0 -2
  899. package/dist/pair-command-approve-iifXVm-A.js +0 -44
  900. package/dist/persistent-bindings.lifecycle-D0KiOOHL.js +0 -2
  901. package/dist/persistent-bindings.lifecycle-Dg5f2-ZX.js +0 -85
  902. package/dist/pi-embedded-CIvfsFDK.js +0 -2905
  903. package/dist/pi-embedded-DfKObnKr.js +0 -4
  904. package/dist/pi-embedded.runtime-CSRgPcMe.js +0 -4
  905. package/dist/pi-tool-definition-adapter-BK1Jgz8u.js +0 -217
  906. package/dist/pi-tools-xZFkQObl.js +0 -1057
  907. package/dist/pi-tools.before-tool-call-Cvql1Guc.js +0 -433
  908. package/dist/pi-tools.before-tool-call-DM-LeYVv.js +0 -2
  909. package/dist/plugin-BCMcHdm8.js +0 -12195
  910. package/dist/plugin-enabled-CfU6MzpX.js +0 -140
  911. package/dist/plugin-registration-5A3P83yn.js +0 -23
  912. package/dist/plugin-service-C3tJzbuH.js +0 -2890
  913. package/dist/policy-C4Ko4jxG.js +0 -328
  914. package/dist/prepare.runtime-D73JEx7U.js +0 -815
  915. package/dist/probe-3YRw5INl.js +0 -2
  916. package/dist/probe-B1B8f2xn.js +0 -74
  917. package/dist/probe-BOowi-Kq.js +0 -45
  918. package/dist/probe-BTjPGJW1.js +0 -2
  919. package/dist/probe-BcltnB3e.js +0 -2205
  920. package/dist/probe-DIRzDUPK.js +0 -1443
  921. package/dist/probe-r4-jBkoJ.js +0 -241
  922. package/dist/program-Dfu5UhC1.js +0 -111
  923. package/dist/prompt-select-styled-Dbu9qalJ.js +0 -20
  924. package/dist/provider-dispatcher-4wt-ZeZZ.js +0 -2
  925. package/dist/provider-dispatcher-C2UhWO1m.js +0 -22
  926. package/dist/qr-cli-BuDd3ifv.js +0 -2
  927. package/dist/qr-cli-DqP37LYz.js +0 -349
  928. package/dist/reaction-runtime-api-Bvz0Pveq.js +0 -116
  929. package/dist/reactions-DN1UVx3u.js +0 -998
  930. package/dist/register-service-commands-DwSQt0X_.js +0 -71
  931. package/dist/register.agent-clbTKCyG.js +0 -247
  932. package/dist/register.configure-ByRQumwS.js +0 -15
  933. package/dist/register.maintenance-irO_yFnN.js +0 -438
  934. package/dist/register.message-BV2yRYIp.js +0 -329
  935. package/dist/register.onboard-DNcKmHVS.js +0 -81
  936. package/dist/register.runtime-BfeanYPK.js +0 -81
  937. package/dist/register.setup-DtWiNL2V.js +0 -150
  938. package/dist/register.status-health-sessions-D0SdMPNv.js +0 -1215
  939. package/dist/register.subclis-CQQMGIv7.js +0 -3
  940. package/dist/register.subclis-CYMsqdxE.js +0 -29
  941. package/dist/register.subclis-core-DWDlwb58.js +0 -243
  942. package/dist/register.wallet-CR3_wMxj.js +0 -159
  943. package/dist/reply-dispatch-runtime-C3eU1JDN.js +0 -13
  944. package/dist/reply-runtime-CDVJcLIY.js +0 -11
  945. package/dist/reply.runtime-CreZjwrI.js +0 -2
  946. package/dist/restart-health-D6gHXWN7.js +0 -202
  947. package/dist/restart-health-DPEaVmNm.js +0 -2
  948. package/dist/root-help-CtpK6G48.js +0 -44
  949. package/dist/routes-BLmIMxHE.js +0 -2
  950. package/dist/routes-DVK0yoCk.js +0 -3340
  951. package/dist/rpc-B284aspW.js +0 -61
  952. package/dist/rpc.runtime-_Lr6h1P2.js +0 -21
  953. package/dist/run-delivery.runtime-Vl9zviox.js +0 -530
  954. package/dist/run-embedded.runtime-BxfpUMvk.js +0 -4
  955. package/dist/run-execution-cli.runtime-DuoOsLmQ.js +0 -4
  956. package/dist/run-executor.runtime-CnNmatiS.js +0 -277
  957. package/dist/run-main-Bk3B1Ycl.js +0 -516
  958. package/dist/run-subagent-registry.runtime-DYsO0_RA.js +0 -2
  959. package/dist/run-wait-BMbf92lX.js +0 -135
  960. package/dist/runtime-CVfSbgJg.js +0 -973
  961. package/dist/runtime-D83Zw8_L.js +0 -9
  962. package/dist/runtime-api-BjXPh772.js +0 -9
  963. package/dist/runtime-api-BqLJECf1.js +0 -14
  964. package/dist/runtime-api-D0lP9bs_.js +0 -9
  965. package/dist/runtime-api-SC4yZOqC.js +0 -4
  966. package/dist/runtime-embedded-pi.runtime-BqxRowCu.js +0 -2
  967. package/dist/runtime-internal-BoBPttX5.js +0 -2
  968. package/dist/runtime-options-0mbgwVcn.js +0 -275
  969. package/dist/runtime-schema-DnS1dcv9.js +0 -27748
  970. package/dist/scan-0tDfQcbh.js +0 -523
  971. package/dist/scan-kap7E7fQ.js +0 -2
  972. package/dist/secrets-cli-C-MP3qxL.js +0 -2101
  973. package/dist/security-cli-YiMwABOV.js +0 -486
  974. package/dist/selection-B1YFEfhn.js +0 -7737
  975. package/dist/selection-yj1VeFgc.js +0 -2
  976. package/dist/send-ChDswQ8K.js +0 -102
  977. package/dist/send-m-3Wh6Ul.js +0 -156
  978. package/dist/send.runtime-HuAZWRMT.js +0 -2
  979. package/dist/server-1tAvo2uk.js +0 -77
  980. package/dist/server-CgWhiZaZ.js +0 -13
  981. package/dist/server-context-DC7VPNrP.js +0 -846
  982. package/dist/server-context-fbmj6rsw.js +0 -2
  983. package/dist/server-node-events-BMfbJz4h.js +0 -481
  984. package/dist/server-plugin-bootstrap-32-_V8s1.js +0 -11103
  985. package/dist/server-plugin-bootstrap-BOy3f_kr.js +0 -2
  986. package/dist/server-restart-sentinel-JaqT_c7z.js +0 -697
  987. package/dist/server.impl-ozoUfbJY.js +0 -12724
  988. package/dist/service-CHmvDejV.js +0 -926
  989. package/dist/session-kill-http-Bi16FXzX.js +0 -110
  990. package/dist/session-reset-service-0D6xi-ak.js +0 -471
  991. package/dist/session-route-CdIF_-j8.js +0 -93
  992. package/dist/session-status.runtime-BenL5h6z.js +0 -2
  993. package/dist/session-subagent-reactivation.runtime-VrwlEPse.js +0 -2
  994. package/dist/session-tab-registry-Cch43wvs.js +0 -491
  995. package/dist/session-visibility-BUY4AKE8.js +0 -147
  996. package/dist/sessions-helpers-C1ie4VY2.js +0 -304
  997. package/dist/sessions-history-http-DvqOoKZP.js +0 -383
  998. package/dist/sessions-patch-DIqqzD_r.js +0 -309
  999. package/dist/sessions-resolve-BI24rrsW.js +0 -174
  1000. package/dist/sessions.runtime-B8dy_jZO.js +0 -2
  1001. package/dist/setup-CIGRiYma.js +0 -495
  1002. package/dist/setup-api-C2z6aEmf.js +0 -29
  1003. package/dist/setup-core-DwswrxD9.js +0 -171
  1004. package/dist/setup-core-OrNOJ5Dt.js +0 -176
  1005. package/dist/setup-surface-DRkiJObE.js +0 -286
  1006. package/dist/setup-surface-Duar853m.js +0 -403
  1007. package/dist/setup-surface-te0vyu3k.js +0 -219
  1008. package/dist/setup.finalize-C4D2iTZK.js +0 -539
  1009. package/dist/setup.gateway-config-js5kJWDU.js +0 -250
  1010. package/dist/shared-BjQB2kM2.js +0 -76
  1011. package/dist/shared-CJH2czP-.js +0 -121
  1012. package/dist/shared-CcLhf2wk.js +0 -198
  1013. package/dist/slash-state-CKJGZHok.js +0 -1911
  1014. package/dist/src-CZ8XTjkB.js +0 -3974
  1015. package/dist/startup-context-BMpCePC2.js +0 -312
  1016. package/dist/status-BFeYb9-f.js +0 -2
  1017. package/dist/status-BOleDqu5.js +0 -190
  1018. package/dist/status-BgCUJLW2.js +0 -397
  1019. package/dist/status-DJ1sF6YO.js +0 -209
  1020. package/dist/status-DYJ_8ZJ7.js +0 -2
  1021. package/dist/status-all-CtEWqGEX.js +0 -498
  1022. package/dist/status-json-DTxIuLgj.js +0 -14
  1023. package/dist/status-json-command-CcMv7nYt.js +0 -84
  1024. package/dist/status-runtime-shared-DZDRmXg3.js +0 -257
  1025. package/dist/status-subagents.runtime-C-hQle1W.js +0 -18
  1026. package/dist/status-tDmBvO9G.js +0 -3
  1027. package/dist/status-text-BUpcmvrn.js +0 -236
  1028. package/dist/status.gateway-connection.runtime-wLOiGcpu.js +0 -2
  1029. package/dist/status.gather-B6sN0B8c.js +0 -2
  1030. package/dist/status.gather-BuL7jLue.js +0 -292
  1031. package/dist/status.runtime-_vK1iN8J.js +0 -2
  1032. package/dist/status.scan-CzfgmgTG.js +0 -65
  1033. package/dist/status.scan-overview-D_a6XXNl.js +0 -379
  1034. package/dist/status.scan.fast-json-Cyohwc40.js +0 -2
  1035. package/dist/status.scan.fast-json-EjCk_IC5.js +0 -132
  1036. package/dist/status.summary-DOPlWkvO.js +0 -2
  1037. package/dist/status.summary-SF9yDHoG.js +0 -214
  1038. package/dist/subagent-announce-delivery-BETmbzks.js +0 -726
  1039. package/dist/subagent-announce-eXVKLvvC.js +0 -351
  1040. package/dist/subagent-announce-output-DCnvTZwP.js +0 -364
  1041. package/dist/subagent-control-DOW_fAs-.js +0 -506
  1042. package/dist/subagent-followup.runtime-Bfdcsho3.js +0 -68
  1043. package/dist/subagent-orphan-recovery-B-_eOw_g.js +0 -305
  1044. package/dist/subagent-registry-B1giKhqf.js +0 -1753
  1045. package/dist/subagent-registry-C5VQw19R.js +0 -3
  1046. package/dist/subagent-spawn-C9Tn7SaR.js +0 -1005
  1047. package/dist/system-cli-CxNpT3gx.js +0 -59
  1048. package/dist/targets-dj8UJRJ6.js +0 -67
  1049. package/dist/task-executor-ICSmgHPw.js +0 -360
  1050. package/dist/task-owner-access-Do_-kA0r.js +0 -74
  1051. package/dist/task-registry-D5vWx8tX.js +0 -2366
  1052. package/dist/task-registry-delivery-runtime-NVZZb9QU.js +0 -3
  1053. package/dist/task-registry-delivery-runtime-yimT8mwg.js +0 -2
  1054. package/dist/task-registry.maintenance-B-hFV6uU.js +0 -2
  1055. package/dist/task-registry.maintenance-vCNDvYID.js +0 -416
  1056. package/dist/testing-DggItyHP.js +0 -575
  1057. package/dist/text-report-kxNx8vB8.js +0 -587
  1058. package/dist/tool-resolution-CfvU1QKh.js +0 -90
  1059. package/dist/tools-effective-inventory-JUjxx1jC.js +0 -152
  1060. package/dist/tools-invoke-http-B67672Wx.js +0 -206
  1061. package/dist/trash--zyy7_il.js +0 -24
  1062. package/dist/tui-cli-C9l1W8a5.js +0 -4573
  1063. package/dist/update-cli-CWD6kp5u.js +0 -1728
  1064. package/dist/upgrade-CtywVoEi.js +0 -1226
  1065. package/dist/video-generation-task-status-DtZ_rioL.js +0 -163
  1066. package/dist/wait-for-idle-before-flush-s-nJUXPe.js +0 -5986
@@ -0,0 +1,1237 @@
1
+ import { c as normalizeOptionalString } from "./string-coerce-C1IzJjqi.js";
2
+ import { u as normalizeE164 } from "./utils-DaGfogP-.js";
3
+ import { t as createNonExitingRuntime } from "./runtime-CQ7eH0le.js";
4
+ import { a as shouldLogVerbose, r as logVerbose, t as danger } from "./globals-C5IxqXPj.js";
5
+ import { s as normalizeStringEntries } from "./string-normalization-Bvcn03I9.js";
6
+ import { a as loadConfig } from "./io-CRPT2IUI.js";
7
+ import { n as fireAndForgetHook } from "./fire-and-forget-Cfx7eCOR.js";
8
+ import { m as triggerInternalHook, n as createInternalHookEvent } from "./internal-hooks-B2c7dDLy.js";
9
+ import { i as resolveHumanDelayConfig } from "./identity-BPta2fZ3.js";
10
+ import { u as resolveStorePath } from "./paths-CyaKOUSX.js";
11
+ import { n as readSessionUpdatedAt } from "./store-Cxyeks39.js";
12
+ import { n as sleepWithAbort, t as computeBackoff } from "./backoff-BLL15JmM.js";
13
+ import { s as kindFromMime, t as detectMime } from "./mime-Zn7U6BSf.js";
14
+ import { n as estimateBase64DecodedBytes } from "./base64-BbC1Ujs8.js";
15
+ import { i as deliverTextOrMediaReply, m as resolveSendableOutboundReplyParts } from "./reply-payload-COWCxmsk.js";
16
+ import { l as saveMediaBuffer } from "./store-CDIEpzD_.js";
17
+ import { n as resolveChannelGroupRequireMention, t as resolveChannelGroupPolicy } from "./group-policy-DCpbTkC8.js";
18
+ import { c as resolveTextChunkLimit, o as chunkTextWithMode, s as resolveChunkMode } from "./chunk-Db6q3o-B.js";
19
+ import { i as toInternalMessageReceivedContext } from "./message-hook-mappers-BUgMP-vi.js";
20
+ import { i as resolveAgentRoute } from "./resolve-route-Bqqrk8gd.js";
21
+ import { i as enqueueSystemEvent } from "./system-events-k0hT4HhM.js";
22
+ import "./text-runtime-BGtvBT2C.js";
23
+ import "./routing-BXiBA4kv.js";
24
+ import { t as hasControlCommand } from "./command-detection-9CslJTs1.js";
25
+ import { a as createReplyDispatcherWithTyping, t as dispatchInboundMessage } from "./dispatch-CswKkiWZ.js";
26
+ import { t as finalizeInboundContext } from "./inbound-context-CLbSDMst.js";
27
+ import { a as resolveEnvelopeFormatOptions, i as formatInboundFromLabel, r as formatInboundEnvelope } from "./envelope-DDp7QU_Z.js";
28
+ import { n as buildMentionRegexes, r as matchesMentionPatterns } from "./mentions-UVaAO0Q0.js";
29
+ import { n as resolveControlCommandGate } from "./command-gating-iPAl2C9q.js";
30
+ import { n as resolveInboundMentionDecision } from "./mention-gating-B3vlGf1T.js";
31
+ import { t as recordInboundSession } from "./session-SdV45sjw.js";
32
+ import { d as upsertChannelPairingRequest } from "./pairing-store-DtxyQ78F.js";
33
+ import { a as warnMissingProviderGroupPolicyFallbackOnce, n as resolveAllowlistProviderRuntimeGroupPolicy, r as resolveDefaultGroupPolicy } from "./runtime-group-policy-C-ntqoF6.js";
34
+ import { c as resolvePinnedMainDmOwnerFromAllowlist, n as readStoreAllowFromForDmPolicy, o as resolveDmGroupAccessWithLists, t as DM_GROUP_ACCESS_REASON } from "./dm-policy-shared-MGv1_ZoD.js";
35
+ import { a as buildPendingHistoryContextFromMap, s as clearHistoryEntriesIfEnabled, u as recordPendingHistoryEntryIfEnabled } from "./history-D_9QYj-0.js";
36
+ import "./reply-history-CmfdDx_T.js";
37
+ import { n as logInboundDrop, r as logTypingFailure } from "./logging-DPKUJUzD.js";
38
+ import { t as createChannelReplyPipeline } from "./channel-reply-pipeline-DgBTklhL.js";
39
+ import { t as createChannelPairingChallengeIssuer } from "./channel-pairing-D_gf19qX.js";
40
+ import "./runtime-env-DkfIol0T.js";
41
+ import { t as evaluateSupplementalContextVisibility } from "./context-visibility-bWyOZApc.js";
42
+ import { t as resolveChannelContextVisibilityMode } from "./context-visibility-D-_3pWpx.js";
43
+ import "./config-runtime-xvJgSEiT.js";
44
+ import "./reply-runtime-Cqu1YNSD.js";
45
+ import { t as waitForTransportReady } from "./transport-ready-BPWTcw4I.js";
46
+ import "./infra-runtime-DwyCbqnF.js";
47
+ import "./media-runtime-BCIP0MHb.js";
48
+ import "./conversation-runtime-C4gObsh2.js";
49
+ import "./agent-runtime-DJ7En7GB.js";
50
+ import "./security-runtime-BIy1zOpc.js";
51
+ import "./hook-runtime-De78PX9t.js";
52
+ import "./command-auth-TXkwHike.js";
53
+ import "./channel-feedback-DU-jR9DJ.js";
54
+ import { n as shouldDebounceTextInbound, t as createChannelInboundDebouncer } from "./channel-inbound-B8tlgRz9.js";
55
+ import { i as resolveSignalAccount } from "./accounts-B9DSBt2S.js";
56
+ import { a as isSignalSenderAllowed, c as resolveSignalRecipient, f as normalizeSignalMessagingTarget, l as resolveSignalSender, n as formatSignalSenderDisplay, o as normalizeSignalAllowRecipient, r as formatSignalSenderId, s as resolveSignalPeerId, t as formatSignalPairingIdLine } from "./identity-CeUnzqAT.js";
57
+ import { n as signalRpcRequest, r as streamSignalEvents, t as signalCheck } from "./client-BeAVbxBQ.js";
58
+ import { n as sendReadReceiptSignal, r as sendTypingSignal, t as sendMessageSignal } from "./send-B7W0wAaA.js";
59
+ import { spawn } from "node:child_process";
60
+ //#region extensions/signal/src/daemon.ts
61
+ function formatSignalDaemonExit(exit) {
62
+ return `signal daemon exited (source=${exit.source} code=${exit.code ?? "null"} signal=${exit.signal ?? "null"})`;
63
+ }
64
+ function classifySignalCliLogLine(line) {
65
+ const trimmed = line.trim();
66
+ if (!trimmed) return null;
67
+ if (/\b(ERROR|WARN|WARNING)\b/.test(trimmed)) return "error";
68
+ if (/\b(FAILED|SEVERE|EXCEPTION)\b/i.test(trimmed)) return "error";
69
+ return "log";
70
+ }
71
+ function bindSignalCliOutput(params) {
72
+ params.stream?.on("data", (data) => {
73
+ for (const line of data.toString().split(/\r?\n/)) {
74
+ const kind = classifySignalCliLogLine(line);
75
+ if (kind === "log") params.log(`signal-cli: ${line.trim()}`);
76
+ else if (kind === "error") params.error(`signal-cli: ${line.trim()}`);
77
+ }
78
+ });
79
+ }
80
+ function buildDaemonArgs(opts) {
81
+ const args = [];
82
+ if (opts.account) args.push("-a", opts.account);
83
+ args.push("daemon");
84
+ args.push("--http", `${opts.httpHost}:${opts.httpPort}`);
85
+ args.push("--no-receive-stdout");
86
+ if (opts.receiveMode) args.push("--receive-mode", opts.receiveMode);
87
+ if (opts.ignoreAttachments) args.push("--ignore-attachments");
88
+ if (opts.ignoreStories) args.push("--ignore-stories");
89
+ if (opts.sendReadReceipts) args.push("--send-read-receipts");
90
+ return args;
91
+ }
92
+ function spawnSignalDaemon(opts) {
93
+ const args = buildDaemonArgs(opts);
94
+ const child = spawn(opts.cliPath, args, { stdio: [
95
+ "ignore",
96
+ "pipe",
97
+ "pipe"
98
+ ] });
99
+ const log = opts.runtime?.log ?? (() => {});
100
+ const error = opts.runtime?.error ?? (() => {});
101
+ let exited = false;
102
+ let settledExit = false;
103
+ let resolveExit;
104
+ const exitedPromise = new Promise((resolve) => {
105
+ resolveExit = resolve;
106
+ });
107
+ const settleExit = (value) => {
108
+ if (settledExit) return;
109
+ settledExit = true;
110
+ exited = true;
111
+ resolveExit(value);
112
+ };
113
+ bindSignalCliOutput({
114
+ stream: child.stdout,
115
+ log,
116
+ error
117
+ });
118
+ bindSignalCliOutput({
119
+ stream: child.stderr,
120
+ log,
121
+ error
122
+ });
123
+ child.once("exit", (code, signal) => {
124
+ settleExit({
125
+ source: "process",
126
+ code: typeof code === "number" ? code : null,
127
+ signal: signal ?? null
128
+ });
129
+ error(formatSignalDaemonExit({
130
+ source: "process",
131
+ code: code ?? null,
132
+ signal: signal ?? null
133
+ }));
134
+ });
135
+ child.once("close", (code, signal) => {
136
+ settleExit({
137
+ source: "process",
138
+ code: typeof code === "number" ? code : null,
139
+ signal: signal ?? null
140
+ });
141
+ });
142
+ child.on("error", (err) => {
143
+ error(`signal-cli spawn error: ${String(err)}`);
144
+ settleExit({
145
+ source: "spawn-error",
146
+ code: null,
147
+ signal: null
148
+ });
149
+ });
150
+ return {
151
+ pid: child.pid ?? void 0,
152
+ exited: exitedPromise,
153
+ isExited: () => exited,
154
+ stop: () => {
155
+ if (!child.killed && !exited) child.kill("SIGTERM");
156
+ }
157
+ };
158
+ }
159
+ //#endregion
160
+ //#region extensions/signal/src/monitor/access-policy.ts
161
+ async function resolveSignalAccessState(params) {
162
+ const storeAllowFrom = await readStoreAllowFromForDmPolicy({
163
+ provider: "signal",
164
+ accountId: params.accountId,
165
+ dmPolicy: params.dmPolicy
166
+ });
167
+ const resolveAccessDecision = (isGroup) => resolveDmGroupAccessWithLists({
168
+ isGroup,
169
+ dmPolicy: params.dmPolicy,
170
+ groupPolicy: params.groupPolicy,
171
+ allowFrom: params.allowFrom,
172
+ groupAllowFrom: params.groupAllowFrom,
173
+ storeAllowFrom,
174
+ isSenderAllowed: (allowEntries) => isSignalSenderAllowed(params.sender, allowEntries)
175
+ });
176
+ const dmAccess = resolveAccessDecision(false);
177
+ return {
178
+ resolveAccessDecision,
179
+ dmAccess,
180
+ effectiveDmAllow: dmAccess.effectiveAllowFrom,
181
+ effectiveGroupAllow: dmAccess.effectiveGroupAllowFrom
182
+ };
183
+ }
184
+ async function handleSignalDirectMessageAccess(params) {
185
+ if (params.dmAccessDecision === "allow") return true;
186
+ if (params.dmAccessDecision === "block") {
187
+ if (params.dmPolicy !== "disabled") params.log(`Blocked signal sender ${params.senderDisplay} (dmPolicy=${params.dmPolicy})`);
188
+ return false;
189
+ }
190
+ if (params.dmPolicy === "pairing") await createChannelPairingChallengeIssuer({
191
+ channel: "signal",
192
+ upsertPairingRequest: async ({ id, meta }) => await upsertChannelPairingRequest({
193
+ channel: "signal",
194
+ id,
195
+ accountId: params.accountId,
196
+ meta
197
+ })
198
+ })({
199
+ senderId: params.senderId,
200
+ senderIdLine: params.senderIdLine,
201
+ meta: { name: params.senderName },
202
+ sendPairingReply: params.sendPairingReply,
203
+ onCreated: () => {
204
+ params.log(`signal pairing request sender=${params.senderId}`);
205
+ },
206
+ onReplyError: (err) => {
207
+ params.log(`signal pairing reply failed for ${params.senderId}: ${String(err)}`);
208
+ }
209
+ });
210
+ return false;
211
+ }
212
+ //#endregion
213
+ //#region extensions/signal/src/monitor/inbound-context.ts
214
+ function resolveSignalQuoteContext(params) {
215
+ const contextVisibilityMode = resolveChannelContextVisibilityMode({
216
+ cfg: params.cfg,
217
+ channel: "signal",
218
+ accountId: params.accountId
219
+ });
220
+ const quoteText = normalizeOptionalString(params.dataMessage?.quote?.text) ?? "";
221
+ const quoteSender = resolveSignalSender({
222
+ sourceNumber: params.dataMessage?.quote?.author ?? null,
223
+ sourceUuid: params.dataMessage?.quote?.authorUuid ?? null
224
+ });
225
+ const quoteSenderAllowed = !params.isGroup || params.effectiveGroupAllow.length === 0 ? true : quoteSender ? isSignalSenderAllowed(quoteSender, params.effectiveGroupAllow) : false;
226
+ const decision = evaluateSupplementalContextVisibility({
227
+ mode: contextVisibilityMode,
228
+ kind: "quote",
229
+ senderAllowed: quoteSenderAllowed
230
+ });
231
+ return {
232
+ contextVisibilityMode,
233
+ decision,
234
+ quoteSenderAllowed,
235
+ visibleQuoteText: decision.include ? quoteText : "",
236
+ visibleQuoteSender: decision.include && quoteSender ? formatSignalSenderDisplay(quoteSender) : void 0
237
+ };
238
+ }
239
+ //#endregion
240
+ //#region extensions/signal/src/monitor/mentions.ts
241
+ const OBJECT_REPLACEMENT = "";
242
+ function isValidMention(mention) {
243
+ if (!mention) return false;
244
+ if (!(mention.uuid || mention.number)) return false;
245
+ if (typeof mention.start !== "number" || Number.isNaN(mention.start)) return false;
246
+ if (typeof mention.length !== "number" || Number.isNaN(mention.length)) return false;
247
+ return mention.length > 0;
248
+ }
249
+ function clampBounds(start, length, textLength) {
250
+ const safeStart = Math.max(0, Math.trunc(start));
251
+ return {
252
+ start: safeStart,
253
+ end: Math.min(textLength, safeStart + Math.max(0, Math.trunc(length)))
254
+ };
255
+ }
256
+ function renderSignalMentions(message, mentions) {
257
+ if (!message || !mentions?.length) return message;
258
+ let normalized = message;
259
+ const candidates = mentions.filter(isValidMention).toSorted((a, b) => b.start - a.start);
260
+ for (const mention of candidates) {
261
+ const identifier = mention.uuid ?? mention.number;
262
+ if (!identifier) continue;
263
+ const { start, end } = clampBounds(mention.start, mention.length, normalized.length);
264
+ if (start >= end) continue;
265
+ if (!normalized.slice(start, end).includes(OBJECT_REPLACEMENT)) continue;
266
+ normalized = normalized.slice(0, start) + `@${identifier}` + normalized.slice(end);
267
+ }
268
+ return normalized;
269
+ }
270
+ //#endregion
271
+ //#region extensions/signal/src/monitor/event-handler.ts
272
+ function formatAttachmentKindCount(kind, count) {
273
+ if (kind === "attachment") return `${count} file${count > 1 ? "s" : ""}`;
274
+ return `${count} ${kind}${count > 1 ? "s" : ""}`;
275
+ }
276
+ function formatAttachmentSummaryPlaceholder(contentTypes) {
277
+ const kindCounts = /* @__PURE__ */ new Map();
278
+ for (const contentType of contentTypes) {
279
+ const kind = kindFromMime(contentType) ?? "attachment";
280
+ kindCounts.set(kind, (kindCounts.get(kind) ?? 0) + 1);
281
+ }
282
+ return `[${[...kindCounts.entries()].map(([kind, count]) => formatAttachmentKindCount(kind, count)).join(" + ")} attached]`;
283
+ }
284
+ function resolveSignalInboundRoute(params) {
285
+ return resolveAgentRoute({
286
+ cfg: params.cfg,
287
+ channel: "signal",
288
+ accountId: params.accountId,
289
+ peer: {
290
+ kind: params.isGroup ? "group" : "direct",
291
+ id: params.isGroup ? params.groupId ?? "unknown" : params.senderPeerId
292
+ }
293
+ });
294
+ }
295
+ function createSignalEventHandler(deps) {
296
+ async function handleSignalInboundMessage(entry) {
297
+ const fromLabel = formatInboundFromLabel({
298
+ isGroup: entry.isGroup,
299
+ groupLabel: entry.groupName ?? void 0,
300
+ groupId: entry.groupId ?? "unknown",
301
+ groupFallback: "Group",
302
+ directLabel: entry.senderName,
303
+ directId: entry.senderDisplay
304
+ });
305
+ const route = resolveSignalInboundRoute({
306
+ cfg: deps.cfg,
307
+ accountId: deps.accountId,
308
+ isGroup: entry.isGroup,
309
+ groupId: entry.groupId,
310
+ senderPeerId: entry.senderPeerId
311
+ });
312
+ const storePath = resolveStorePath(deps.cfg.session?.store, { agentId: route.agentId });
313
+ const envelopeOptions = resolveEnvelopeFormatOptions(deps.cfg);
314
+ const previousTimestamp = readSessionUpdatedAt({
315
+ storePath,
316
+ sessionKey: route.sessionKey
317
+ });
318
+ const body = formatInboundEnvelope({
319
+ channel: "Signal",
320
+ from: fromLabel,
321
+ timestamp: entry.timestamp ?? void 0,
322
+ body: entry.bodyText,
323
+ chatType: entry.isGroup ? "group" : "direct",
324
+ sender: {
325
+ name: entry.senderName,
326
+ id: entry.senderDisplay
327
+ },
328
+ previousTimestamp,
329
+ envelope: envelopeOptions
330
+ });
331
+ let combinedBody = body;
332
+ const historyKey = entry.isGroup ? entry.groupId ?? "unknown" : void 0;
333
+ if (entry.isGroup && historyKey) combinedBody = buildPendingHistoryContextFromMap({
334
+ historyMap: deps.groupHistories,
335
+ historyKey,
336
+ limit: deps.historyLimit,
337
+ currentMessage: combinedBody,
338
+ formatEntry: (historyEntry) => formatInboundEnvelope({
339
+ channel: "Signal",
340
+ from: fromLabel,
341
+ timestamp: historyEntry.timestamp,
342
+ body: `${historyEntry.body}${historyEntry.messageId ? ` [id:${historyEntry.messageId}]` : ""}`,
343
+ chatType: "group",
344
+ senderLabel: historyEntry.sender,
345
+ envelope: envelopeOptions
346
+ })
347
+ });
348
+ const signalToRaw = entry.isGroup ? `group:${entry.groupId}` : `signal:${entry.senderRecipient}`;
349
+ const signalTo = normalizeSignalMessagingTarget(signalToRaw) ?? signalToRaw;
350
+ const inboundHistory = entry.isGroup && historyKey && deps.historyLimit > 0 ? (deps.groupHistories.get(historyKey) ?? []).map((historyEntry) => ({
351
+ sender: historyEntry.sender,
352
+ body: historyEntry.body,
353
+ timestamp: historyEntry.timestamp
354
+ })) : void 0;
355
+ const ctxPayload = finalizeInboundContext({
356
+ Body: combinedBody,
357
+ BodyForAgent: entry.bodyText,
358
+ InboundHistory: inboundHistory,
359
+ RawBody: entry.bodyText,
360
+ CommandBody: entry.commandBody,
361
+ BodyForCommands: entry.commandBody,
362
+ From: entry.isGroup ? `group:${entry.groupId ?? "unknown"}` : `signal:${entry.senderRecipient}`,
363
+ To: signalTo,
364
+ SessionKey: route.sessionKey,
365
+ AccountId: route.accountId,
366
+ ChatType: entry.isGroup ? "group" : "direct",
367
+ ConversationLabel: fromLabel,
368
+ GroupSubject: entry.isGroup ? entry.groupName ?? void 0 : void 0,
369
+ SenderName: entry.senderName,
370
+ SenderId: entry.senderDisplay,
371
+ Provider: "signal",
372
+ Surface: "signal",
373
+ MessageSid: entry.messageId,
374
+ ReplyToBody: entry.replyToBody,
375
+ ReplyToSender: entry.replyToSender,
376
+ ReplyToIsQuote: entry.replyToIsQuote,
377
+ Timestamp: entry.timestamp ?? void 0,
378
+ MediaPath: entry.mediaPath,
379
+ MediaType: entry.mediaType,
380
+ MediaUrl: entry.mediaPath,
381
+ MediaPaths: entry.mediaPaths,
382
+ MediaUrls: entry.mediaPaths,
383
+ MediaTypes: entry.mediaTypes,
384
+ WasMentioned: entry.isGroup ? entry.wasMentioned === true : void 0,
385
+ CommandAuthorized: entry.commandAuthorized,
386
+ OriginatingChannel: "signal",
387
+ OriginatingTo: signalTo
388
+ });
389
+ await recordInboundSession({
390
+ storePath,
391
+ sessionKey: ctxPayload.SessionKey ?? route.sessionKey,
392
+ ctx: ctxPayload,
393
+ updateLastRoute: !entry.isGroup ? {
394
+ sessionKey: route.mainSessionKey,
395
+ channel: "signal",
396
+ to: entry.senderRecipient,
397
+ accountId: route.accountId,
398
+ mainDmOwnerPin: (() => {
399
+ const pinnedOwner = resolvePinnedMainDmOwnerFromAllowlist({
400
+ dmScope: deps.cfg.session?.dmScope,
401
+ allowFrom: deps.allowFrom,
402
+ normalizeEntry: normalizeSignalAllowRecipient
403
+ });
404
+ if (!pinnedOwner) return;
405
+ return {
406
+ ownerRecipient: pinnedOwner,
407
+ senderRecipient: entry.senderRecipient,
408
+ onSkip: ({ ownerRecipient, senderRecipient }) => {
409
+ logVerbose(`signal: skip main-session last route for ${senderRecipient} (pinned owner ${ownerRecipient})`);
410
+ }
411
+ };
412
+ })()
413
+ } : void 0,
414
+ onRecordError: (err) => {
415
+ logVerbose(`signal: failed updating session meta: ${String(err)}`);
416
+ }
417
+ });
418
+ if (shouldLogVerbose()) {
419
+ const preview = body.slice(0, 200).replace(/\\n/g, "\\\\n");
420
+ logVerbose(`signal inbound: from=${ctxPayload.From} len=${body.length} preview="${preview}"`);
421
+ }
422
+ const { onModelSelected, typingCallbacks, ...replyPipeline } = createChannelReplyPipeline({
423
+ cfg: deps.cfg,
424
+ agentId: route.agentId,
425
+ channel: "signal",
426
+ accountId: route.accountId,
427
+ typing: {
428
+ start: async () => {
429
+ if (!ctxPayload.To) return;
430
+ await sendTypingSignal(ctxPayload.To, {
431
+ cfg: deps.cfg,
432
+ baseUrl: deps.baseUrl,
433
+ account: deps.account,
434
+ accountId: deps.accountId
435
+ });
436
+ },
437
+ onStartError: (err) => {
438
+ logTypingFailure({
439
+ log: logVerbose,
440
+ channel: "signal",
441
+ target: ctxPayload.To ?? void 0,
442
+ error: err
443
+ });
444
+ }
445
+ }
446
+ });
447
+ const { dispatcher, replyOptions, markDispatchIdle } = createReplyDispatcherWithTyping({
448
+ ...replyPipeline,
449
+ humanDelay: resolveHumanDelayConfig(deps.cfg, route.agentId),
450
+ typingCallbacks,
451
+ deliver: async (payload) => {
452
+ await deps.deliverReplies({
453
+ cfg: deps.cfg,
454
+ replies: [payload],
455
+ target: ctxPayload.To,
456
+ baseUrl: deps.baseUrl,
457
+ account: deps.account,
458
+ accountId: deps.accountId,
459
+ runtime: deps.runtime,
460
+ maxBytes: deps.mediaMaxBytes,
461
+ textLimit: deps.textLimit
462
+ });
463
+ },
464
+ onError: (err, info) => {
465
+ deps.runtime.error?.(danger(`signal ${info.kind} reply failed: ${String(err)}`));
466
+ }
467
+ });
468
+ const { queuedFinal } = await dispatchInboundMessage({
469
+ ctx: ctxPayload,
470
+ cfg: deps.cfg,
471
+ dispatcher,
472
+ replyOptions: {
473
+ ...replyOptions,
474
+ disableBlockStreaming: typeof deps.blockStreaming === "boolean" ? !deps.blockStreaming : void 0,
475
+ onModelSelected
476
+ }
477
+ });
478
+ markDispatchIdle();
479
+ if (!queuedFinal) {
480
+ if (entry.isGroup && historyKey) clearHistoryEntriesIfEnabled({
481
+ historyMap: deps.groupHistories,
482
+ historyKey,
483
+ limit: deps.historyLimit
484
+ });
485
+ return;
486
+ }
487
+ if (entry.isGroup && historyKey) clearHistoryEntriesIfEnabled({
488
+ historyMap: deps.groupHistories,
489
+ historyKey,
490
+ limit: deps.historyLimit
491
+ });
492
+ }
493
+ const { debouncer: inboundDebouncer } = createChannelInboundDebouncer({
494
+ cfg: deps.cfg,
495
+ channel: "signal",
496
+ buildKey: (entry) => {
497
+ const conversationId = entry.isGroup ? entry.groupId ?? "unknown" : entry.senderPeerId;
498
+ if (!conversationId || !entry.senderPeerId) return null;
499
+ return `signal:${deps.accountId}:${conversationId}:${entry.senderPeerId}`;
500
+ },
501
+ shouldDebounce: (entry) => {
502
+ return shouldDebounceTextInbound({
503
+ text: entry.bodyText,
504
+ cfg: deps.cfg,
505
+ hasMedia: Boolean(entry.mediaPath || entry.mediaType || entry.mediaPaths?.length)
506
+ });
507
+ },
508
+ onFlush: async (entries) => {
509
+ const last = entries.at(-1);
510
+ if (!last) return;
511
+ if (entries.length === 1) {
512
+ await handleSignalInboundMessage(last);
513
+ return;
514
+ }
515
+ const combinedText = entries.map((entry) => entry.bodyText).filter(Boolean).join("\\n");
516
+ if (!combinedText.trim()) return;
517
+ await handleSignalInboundMessage({
518
+ ...last,
519
+ bodyText: combinedText,
520
+ mediaPath: void 0,
521
+ mediaType: void 0,
522
+ mediaPaths: void 0,
523
+ mediaTypes: void 0
524
+ });
525
+ },
526
+ onError: (err) => {
527
+ deps.runtime.error?.(`signal debounce flush failed: ${String(err)}`);
528
+ }
529
+ });
530
+ function handleReactionOnlyInbound(params) {
531
+ if (params.hasBodyContent) return false;
532
+ if (params.reaction.isRemove) return true;
533
+ const emojiLabel = normalizeOptionalString(params.reaction.emoji) ?? "emoji";
534
+ const senderName = params.envelope.sourceName ?? params.senderDisplay;
535
+ logVerbose(`signal reaction: ${emojiLabel} from ${senderName}`);
536
+ const groupId = params.reaction.groupInfo?.groupId ?? void 0;
537
+ const groupName = params.reaction.groupInfo?.groupName ?? void 0;
538
+ const isGroup = Boolean(groupId);
539
+ const reactionAccess = params.resolveAccessDecision(isGroup);
540
+ if (reactionAccess.decision !== "allow") {
541
+ logVerbose(`Blocked signal reaction sender ${params.senderDisplay} (${reactionAccess.reason})`);
542
+ return true;
543
+ }
544
+ const targets = deps.resolveSignalReactionTargets(params.reaction);
545
+ if (!deps.shouldEmitSignalReactionNotification({
546
+ mode: deps.reactionMode,
547
+ account: deps.account,
548
+ targets,
549
+ sender: params.sender,
550
+ allowlist: deps.reactionAllowlist
551
+ })) return true;
552
+ const senderPeerId = resolveSignalPeerId(params.sender);
553
+ const route = resolveSignalInboundRoute({
554
+ cfg: deps.cfg,
555
+ accountId: deps.accountId,
556
+ isGroup,
557
+ groupId,
558
+ senderPeerId
559
+ });
560
+ const groupLabel = isGroup ? `${groupName ?? "Signal Group"} id:${groupId}` : void 0;
561
+ const messageId = params.reaction.targetSentTimestamp ? String(params.reaction.targetSentTimestamp) : "unknown";
562
+ const text = deps.buildSignalReactionSystemEventText({
563
+ emojiLabel,
564
+ actorLabel: senderName,
565
+ messageId,
566
+ targetLabel: targets[0]?.display,
567
+ groupLabel
568
+ });
569
+ const contextKey = [
570
+ "signal",
571
+ "reaction",
572
+ "added",
573
+ messageId,
574
+ formatSignalSenderId(params.sender),
575
+ emojiLabel,
576
+ groupId ?? ""
577
+ ].filter(Boolean).join(":");
578
+ enqueueSystemEvent(text, {
579
+ sessionKey: route.sessionKey,
580
+ contextKey
581
+ });
582
+ return true;
583
+ }
584
+ return async (event) => {
585
+ if (event.event !== "receive" || !event.data) return;
586
+ let payload = null;
587
+ try {
588
+ payload = JSON.parse(event.data);
589
+ } catch (err) {
590
+ deps.runtime.error?.(`failed to parse event: ${String(err)}`);
591
+ return;
592
+ }
593
+ if (payload?.exception?.message) deps.runtime.error?.(`receive exception: ${payload.exception.message}`);
594
+ const envelope = payload?.envelope;
595
+ if (!envelope) return;
596
+ const sender = resolveSignalSender(envelope);
597
+ if (!sender) return;
598
+ const normalizedAccount = deps.account ? normalizeE164(deps.account) : void 0;
599
+ if (sender.kind === "phone" && normalizedAccount != null && sender.e164 === normalizedAccount || sender.kind === "uuid" && deps.accountUuid != null && sender.raw === deps.accountUuid) return;
600
+ if ("syncMessage" in envelope) return;
601
+ const dataMessage = envelope.dataMessage ?? envelope.editMessage?.dataMessage;
602
+ const reaction = deps.isSignalReactionMessage(envelope.reactionMessage) ? envelope.reactionMessage : deps.isSignalReactionMessage(dataMessage?.reaction) ? dataMessage?.reaction : null;
603
+ const messageText = renderSignalMentions(dataMessage?.message ?? "", dataMessage?.mentions).trim();
604
+ const groupId = dataMessage?.groupInfo?.groupId ?? void 0;
605
+ const isGroup = Boolean(groupId);
606
+ const senderDisplay = formatSignalSenderDisplay(sender);
607
+ const { resolveAccessDecision, dmAccess, effectiveDmAllow, effectiveGroupAllow } = await resolveSignalAccessState({
608
+ accountId: deps.accountId,
609
+ dmPolicy: deps.dmPolicy,
610
+ groupPolicy: deps.groupPolicy,
611
+ allowFrom: deps.allowFrom,
612
+ groupAllowFrom: deps.groupAllowFrom,
613
+ sender
614
+ });
615
+ const quoteText = normalizeOptionalString(dataMessage?.quote?.text) ?? "";
616
+ const { contextVisibilityMode, quoteSenderAllowed, visibleQuoteText, visibleQuoteSender } = resolveSignalQuoteContext({
617
+ cfg: deps.cfg,
618
+ accountId: deps.accountId,
619
+ isGroup,
620
+ dataMessage,
621
+ effectiveGroupAllow
622
+ });
623
+ if (quoteText && !visibleQuoteText && isGroup) logVerbose(`signal: drop quote context (mode=${contextVisibilityMode}, sender_allowed=${quoteSenderAllowed ? "yes" : "no"})`);
624
+ const hasBodyContent = Boolean(messageText || visibleQuoteText) || Boolean(!reaction && dataMessage?.attachments?.length);
625
+ if (reaction && handleReactionOnlyInbound({
626
+ envelope,
627
+ sender,
628
+ senderDisplay,
629
+ reaction,
630
+ hasBodyContent,
631
+ resolveAccessDecision
632
+ })) return;
633
+ if (!dataMessage) return;
634
+ const senderRecipient = resolveSignalRecipient(sender);
635
+ const senderPeerId = resolveSignalPeerId(sender);
636
+ const senderAllowId = formatSignalSenderId(sender);
637
+ if (!senderRecipient) return;
638
+ const senderIdLine = formatSignalPairingIdLine(sender);
639
+ const groupName = dataMessage.groupInfo?.groupName ?? void 0;
640
+ if (!isGroup) {
641
+ if (!await handleSignalDirectMessageAccess({
642
+ dmPolicy: deps.dmPolicy,
643
+ dmAccessDecision: dmAccess.decision,
644
+ senderId: senderAllowId,
645
+ senderIdLine,
646
+ senderDisplay,
647
+ senderName: envelope.sourceName ?? void 0,
648
+ accountId: deps.accountId,
649
+ sendPairingReply: async (text) => {
650
+ await sendMessageSignal(`signal:${senderRecipient}`, text, {
651
+ cfg: deps.cfg,
652
+ baseUrl: deps.baseUrl,
653
+ account: deps.account,
654
+ maxBytes: deps.mediaMaxBytes,
655
+ accountId: deps.accountId
656
+ });
657
+ },
658
+ log: logVerbose
659
+ })) return;
660
+ }
661
+ if (isGroup) {
662
+ const groupAccess = resolveAccessDecision(true);
663
+ if (groupAccess.decision !== "allow") {
664
+ if (groupAccess.reasonCode === DM_GROUP_ACCESS_REASON.GROUP_POLICY_DISABLED) logVerbose("Blocked signal group message (groupPolicy: disabled)");
665
+ else if (groupAccess.reasonCode === DM_GROUP_ACCESS_REASON.GROUP_POLICY_EMPTY_ALLOWLIST) logVerbose("Blocked signal group message (groupPolicy: allowlist, no groupAllowFrom)");
666
+ else logVerbose(`Blocked signal group sender ${senderDisplay} (not in groupAllowFrom)`);
667
+ return;
668
+ }
669
+ }
670
+ const useAccessGroups = deps.cfg.commands?.useAccessGroups !== false;
671
+ const commandDmAllow = isGroup ? deps.allowFrom : effectiveDmAllow;
672
+ const ownerAllowedForCommands = isSignalSenderAllowed(sender, commandDmAllow);
673
+ const groupAllowedForCommands = isSignalSenderAllowed(sender, effectiveGroupAllow);
674
+ const hasControlCommandInMessage = hasControlCommand(messageText, deps.cfg);
675
+ const commandGate = resolveControlCommandGate({
676
+ useAccessGroups,
677
+ authorizers: [{
678
+ configured: commandDmAllow.length > 0,
679
+ allowed: ownerAllowedForCommands
680
+ }, {
681
+ configured: effectiveGroupAllow.length > 0,
682
+ allowed: groupAllowedForCommands
683
+ }],
684
+ allowTextCommands: true,
685
+ hasControlCommand: hasControlCommandInMessage
686
+ });
687
+ const commandAuthorized = commandGate.commandAuthorized;
688
+ if (isGroup && commandGate.shouldBlock) {
689
+ logInboundDrop({
690
+ log: logVerbose,
691
+ channel: "signal",
692
+ reason: "control command (unauthorized)",
693
+ target: senderDisplay
694
+ });
695
+ return;
696
+ }
697
+ const route = resolveSignalInboundRoute({
698
+ cfg: deps.cfg,
699
+ accountId: deps.accountId,
700
+ isGroup,
701
+ groupId,
702
+ senderPeerId
703
+ });
704
+ const mentionRegexes = buildMentionRegexes(deps.cfg, route.agentId);
705
+ const wasMentioned = isGroup && matchesMentionPatterns(messageText, mentionRegexes);
706
+ const requireMention = isGroup && resolveChannelGroupRequireMention({
707
+ cfg: deps.cfg,
708
+ channel: "signal",
709
+ groupId,
710
+ accountId: deps.accountId
711
+ });
712
+ const canDetectMention = mentionRegexes.length > 0;
713
+ const mentionDecision = resolveInboundMentionDecision({
714
+ facts: {
715
+ canDetectMention,
716
+ wasMentioned,
717
+ hasAnyMention: false,
718
+ implicitMentionKinds: []
719
+ },
720
+ policy: {
721
+ isGroup,
722
+ requireMention,
723
+ allowTextCommands: true,
724
+ hasControlCommand: hasControlCommandInMessage,
725
+ commandAuthorized
726
+ }
727
+ });
728
+ const effectiveWasMentioned = mentionDecision.effectiveWasMentioned;
729
+ if (isGroup && requireMention && canDetectMention && mentionDecision.shouldSkip) {
730
+ logInboundDrop({
731
+ log: logVerbose,
732
+ channel: "signal",
733
+ reason: "no mention",
734
+ target: senderDisplay
735
+ });
736
+ const pendingPlaceholder = (() => {
737
+ if (!dataMessage.attachments?.length) return "";
738
+ if (deps.ignoreAttachments) return "<media:attachment>";
739
+ const attachmentTypes = (dataMessage.attachments ?? []).map((attachment) => typeof attachment?.contentType === "string" ? attachment.contentType : void 0);
740
+ if (attachmentTypes.length > 1) return formatAttachmentSummaryPlaceholder(attachmentTypes);
741
+ const firstContentType = dataMessage.attachments?.[0]?.contentType;
742
+ const pendingKind = kindFromMime(firstContentType ?? void 0);
743
+ return pendingKind ? `<media:${pendingKind}>` : "<media:attachment>";
744
+ })();
745
+ const pendingBodyText = messageText || pendingPlaceholder || visibleQuoteText;
746
+ const historyKey = groupId ?? "unknown";
747
+ recordPendingHistoryEntryIfEnabled({
748
+ historyMap: deps.groupHistories,
749
+ historyKey,
750
+ limit: deps.historyLimit,
751
+ entry: {
752
+ sender: envelope.sourceName ?? senderDisplay,
753
+ body: pendingBodyText,
754
+ timestamp: envelope.timestamp ?? void 0,
755
+ messageId: typeof envelope.timestamp === "number" ? String(envelope.timestamp) : void 0
756
+ }
757
+ });
758
+ const signalGroupPolicy = resolveChannelGroupPolicy({
759
+ cfg: deps.cfg,
760
+ channel: "signal",
761
+ groupId,
762
+ accountId: deps.accountId
763
+ });
764
+ if ((signalGroupPolicy.groupConfig?.ingest ?? signalGroupPolicy.defaultConfig?.ingest) === true) {
765
+ const canonicalGroupTarget = normalizeSignalMessagingTarget(`group:${groupId}`) ?? `group:${groupId}`;
766
+ fireAndForgetHook(triggerInternalHook(createInternalHookEvent("message", "received", route.sessionKey, toInternalMessageReceivedContext({
767
+ from: `group:${groupId}`,
768
+ to: canonicalGroupTarget,
769
+ content: pendingBodyText,
770
+ timestamp: envelope.timestamp ?? void 0,
771
+ channelId: "signal",
772
+ accountId: deps.accountId,
773
+ conversationId: canonicalGroupTarget,
774
+ messageId: typeof envelope.timestamp === "number" ? String(envelope.timestamp) : void 0,
775
+ senderId: senderDisplay,
776
+ senderName: envelope.sourceName ?? void 0,
777
+ provider: "signal",
778
+ surface: "signal",
779
+ originatingChannel: "signal",
780
+ originatingTo: canonicalGroupTarget,
781
+ isGroup: true,
782
+ groupId: canonicalGroupTarget
783
+ }))), "signal: mention-skip message hook failed");
784
+ }
785
+ return;
786
+ }
787
+ let mediaPath;
788
+ let mediaType;
789
+ const mediaPaths = [];
790
+ const mediaTypes = [];
791
+ let placeholder = "";
792
+ const attachments = dataMessage.attachments ?? [];
793
+ if (!deps.ignoreAttachments) for (const attachment of attachments) {
794
+ if (!attachment?.id) continue;
795
+ try {
796
+ const fetched = await deps.fetchAttachment({
797
+ baseUrl: deps.baseUrl,
798
+ account: deps.account,
799
+ attachment,
800
+ sender: senderRecipient,
801
+ groupId,
802
+ maxBytes: deps.mediaMaxBytes
803
+ });
804
+ if (fetched) {
805
+ mediaPaths.push(fetched.path);
806
+ mediaTypes.push(fetched.contentType ?? attachment.contentType ?? "application/octet-stream");
807
+ if (!mediaPath) {
808
+ mediaPath = fetched.path;
809
+ mediaType = fetched.contentType ?? attachment.contentType ?? void 0;
810
+ }
811
+ }
812
+ } catch (err) {
813
+ deps.runtime.error?.(danger(`attachment fetch failed: ${String(err)}`));
814
+ }
815
+ }
816
+ if (mediaPaths.length > 1) placeholder = formatAttachmentSummaryPlaceholder(mediaTypes);
817
+ else {
818
+ const kind = kindFromMime(mediaType ?? void 0);
819
+ if (kind) placeholder = `<media:${kind}>`;
820
+ else if (attachments.length) placeholder = "<media:attachment>";
821
+ }
822
+ const bodyText = messageText || placeholder || visibleQuoteText || "";
823
+ if (!bodyText) return;
824
+ const receiptTimestamp = typeof envelope.timestamp === "number" ? envelope.timestamp : typeof dataMessage.timestamp === "number" ? dataMessage.timestamp : void 0;
825
+ if (deps.sendReadReceipts && !deps.readReceiptsViaDaemon && !isGroup && receiptTimestamp) try {
826
+ await sendReadReceiptSignal(`signal:${senderRecipient}`, receiptTimestamp, {
827
+ cfg: deps.cfg,
828
+ baseUrl: deps.baseUrl,
829
+ account: deps.account,
830
+ accountId: deps.accountId
831
+ });
832
+ } catch (err) {
833
+ logVerbose(`signal read receipt failed for ${senderDisplay}: ${String(err)}`);
834
+ }
835
+ else if (deps.sendReadReceipts && !deps.readReceiptsViaDaemon && !isGroup && !receiptTimestamp) logVerbose(`signal read receipt skipped (missing timestamp) for ${senderDisplay}`);
836
+ const senderName = envelope.sourceName ?? senderDisplay;
837
+ const messageId = typeof envelope.timestamp === "number" ? String(envelope.timestamp) : void 0;
838
+ await inboundDebouncer.enqueue({
839
+ senderName,
840
+ senderDisplay,
841
+ senderRecipient,
842
+ senderPeerId,
843
+ groupId,
844
+ groupName,
845
+ isGroup,
846
+ bodyText,
847
+ commandBody: messageText,
848
+ timestamp: envelope.timestamp ?? void 0,
849
+ messageId,
850
+ mediaPath,
851
+ mediaType,
852
+ mediaPaths: mediaPaths.length > 0 ? mediaPaths : void 0,
853
+ mediaTypes: mediaTypes.length > 0 ? mediaTypes : void 0,
854
+ commandAuthorized,
855
+ wasMentioned: effectiveWasMentioned,
856
+ replyToBody: visibleQuoteText || void 0,
857
+ replyToSender: visibleQuoteSender,
858
+ replyToIsQuote: visibleQuoteText ? true : void 0
859
+ });
860
+ };
861
+ }
862
+ //#endregion
863
+ //#region extensions/signal/src/sse-reconnect.ts
864
+ const DEFAULT_RECONNECT_POLICY = {
865
+ initialMs: 1e3,
866
+ maxMs: 1e4,
867
+ factor: 2,
868
+ jitter: .2
869
+ };
870
+ async function runSignalSseLoop({ baseUrl, account, abortSignal, runtime, onEvent, policy }) {
871
+ const reconnectPolicy = {
872
+ ...DEFAULT_RECONNECT_POLICY,
873
+ ...policy
874
+ };
875
+ let reconnectAttempts = 0;
876
+ const logReconnectVerbose = (message) => {
877
+ if (!shouldLogVerbose()) return;
878
+ logVerbose(message);
879
+ };
880
+ for (;;) {
881
+ if (abortSignal?.aborted) break;
882
+ try {
883
+ await streamSignalEvents({
884
+ baseUrl,
885
+ account,
886
+ abortSignal,
887
+ onEvent: (event) => {
888
+ reconnectAttempts = 0;
889
+ onEvent(event);
890
+ }
891
+ });
892
+ if (abortSignal?.aborted) return;
893
+ reconnectAttempts += 1;
894
+ const delayMs = computeBackoff(reconnectPolicy, reconnectAttempts);
895
+ logReconnectVerbose(`Signal SSE stream ended, reconnecting in ${delayMs / 1e3}s...`);
896
+ await sleepWithAbort(delayMs, abortSignal);
897
+ } catch (err) {
898
+ if (abortSignal?.aborted) return;
899
+ runtime.error?.(`Signal SSE stream error: ${String(err)}`);
900
+ reconnectAttempts += 1;
901
+ const delayMs = computeBackoff(reconnectPolicy, reconnectAttempts);
902
+ runtime.log?.(`Signal SSE connection lost, reconnecting in ${delayMs / 1e3}s...`);
903
+ try {
904
+ await sleepWithAbort(delayMs, abortSignal);
905
+ } catch (sleepErr) {
906
+ if (abortSignal?.aborted) return;
907
+ throw sleepErr;
908
+ }
909
+ }
910
+ }
911
+ }
912
+ //#endregion
913
+ //#region extensions/signal/src/monitor.ts
914
+ function resolveRuntime(opts) {
915
+ return opts.runtime ?? createNonExitingRuntime();
916
+ }
917
+ function mergeAbortSignals(a, b) {
918
+ if (!a && !b) return {
919
+ signal: void 0,
920
+ dispose: () => {}
921
+ };
922
+ if (!a) return {
923
+ signal: b,
924
+ dispose: () => {}
925
+ };
926
+ if (!b) return {
927
+ signal: a,
928
+ dispose: () => {}
929
+ };
930
+ const controller = new AbortController();
931
+ const abortFrom = (source) => {
932
+ if (!controller.signal.aborted) controller.abort(source.reason);
933
+ };
934
+ if (a.aborted) {
935
+ abortFrom(a);
936
+ return {
937
+ signal: controller.signal,
938
+ dispose: () => {}
939
+ };
940
+ }
941
+ if (b.aborted) {
942
+ abortFrom(b);
943
+ return {
944
+ signal: controller.signal,
945
+ dispose: () => {}
946
+ };
947
+ }
948
+ const onAbortA = () => abortFrom(a);
949
+ const onAbortB = () => abortFrom(b);
950
+ a.addEventListener("abort", onAbortA, { once: true });
951
+ b.addEventListener("abort", onAbortB, { once: true });
952
+ return {
953
+ signal: controller.signal,
954
+ dispose: () => {
955
+ a.removeEventListener("abort", onAbortA);
956
+ b.removeEventListener("abort", onAbortB);
957
+ }
958
+ };
959
+ }
960
+ function createSignalDaemonLifecycle(params) {
961
+ let daemonHandle = null;
962
+ let daemonStopRequested = false;
963
+ let daemonExitError;
964
+ const daemonAbortController = new AbortController();
965
+ const mergedAbort = mergeAbortSignals(params.abortSignal, daemonAbortController.signal);
966
+ const stop = () => {
967
+ daemonStopRequested = true;
968
+ daemonHandle?.stop();
969
+ };
970
+ const attach = (handle) => {
971
+ daemonHandle = handle;
972
+ handle.exited.then((exit) => {
973
+ if (daemonStopRequested || params.abortSignal?.aborted) return;
974
+ daemonExitError = new Error(formatSignalDaemonExit(exit));
975
+ if (!daemonAbortController.signal.aborted) daemonAbortController.abort(daemonExitError);
976
+ });
977
+ };
978
+ const getExitError = () => daemonExitError;
979
+ return {
980
+ attach,
981
+ stop,
982
+ getExitError,
983
+ abortSignal: mergedAbort.signal,
984
+ dispose: mergedAbort.dispose
985
+ };
986
+ }
987
+ function normalizeAllowList(raw) {
988
+ return normalizeStringEntries(raw);
989
+ }
990
+ function resolveSignalReactionTargets(reaction) {
991
+ const targets = [];
992
+ const uuid = reaction.targetAuthorUuid?.trim();
993
+ if (uuid) targets.push({
994
+ kind: "uuid",
995
+ id: uuid,
996
+ display: `uuid:${uuid}`
997
+ });
998
+ const author = reaction.targetAuthor?.trim();
999
+ if (author) {
1000
+ const normalized = normalizeE164(author);
1001
+ targets.push({
1002
+ kind: "phone",
1003
+ id: normalized,
1004
+ display: normalized
1005
+ });
1006
+ }
1007
+ return targets;
1008
+ }
1009
+ function isSignalReactionMessage(reaction) {
1010
+ if (!reaction) return false;
1011
+ const emoji = reaction.emoji?.trim();
1012
+ const timestamp = reaction.targetSentTimestamp;
1013
+ const hasTarget = Boolean(normalizeOptionalString(reaction.targetAuthor) || normalizeOptionalString(reaction.targetAuthorUuid));
1014
+ return Boolean(emoji && typeof timestamp === "number" && timestamp > 0 && hasTarget);
1015
+ }
1016
+ function shouldEmitSignalReactionNotification(params) {
1017
+ const { mode, account, targets, sender, allowlist } = params;
1018
+ const effectiveMode = mode ?? "own";
1019
+ if (effectiveMode === "off") return false;
1020
+ if (effectiveMode === "own") {
1021
+ const accountId = account?.trim();
1022
+ if (!accountId || !targets || targets.length === 0) return false;
1023
+ const normalizedAccount = normalizeE164(accountId);
1024
+ return targets.some((target) => {
1025
+ if (target.kind === "uuid") return accountId === target.id || accountId === `uuid:${target.id}`;
1026
+ return normalizedAccount === target.id;
1027
+ });
1028
+ }
1029
+ if (effectiveMode === "allowlist") {
1030
+ if (!sender || !allowlist || allowlist.length === 0) return false;
1031
+ return isSignalSenderAllowed(sender, allowlist);
1032
+ }
1033
+ return true;
1034
+ }
1035
+ function buildSignalReactionSystemEventText(params) {
1036
+ const base = `Signal reaction added: ${params.emojiLabel} by ${params.actorLabel} msg ${params.messageId}`;
1037
+ const withTarget = params.targetLabel ? `${base} from ${params.targetLabel}` : base;
1038
+ return params.groupLabel ? `${withTarget} in ${params.groupLabel}` : withTarget;
1039
+ }
1040
+ async function waitForSignalDaemonReady(params) {
1041
+ await (params.waitForTransportReadyFn ?? waitForTransportReady)({
1042
+ label: "signal daemon",
1043
+ timeoutMs: params.timeoutMs,
1044
+ logAfterMs: params.logAfterMs,
1045
+ logIntervalMs: params.logIntervalMs,
1046
+ pollIntervalMs: 150,
1047
+ abortSignal: params.abortSignal,
1048
+ runtime: params.runtime,
1049
+ check: async () => {
1050
+ const res = await signalCheck(params.baseUrl, 1e3);
1051
+ if (res.ok) return { ok: true };
1052
+ return {
1053
+ ok: false,
1054
+ error: res.error ?? (res.status ? `HTTP ${res.status}` : "unreachable")
1055
+ };
1056
+ }
1057
+ });
1058
+ }
1059
+ async function fetchAttachment(params) {
1060
+ const { attachment } = params;
1061
+ if (!attachment?.id) return null;
1062
+ if (typeof attachment.size === "number" && attachment.size > params.maxBytes) throw new Error(`Signal attachment ${attachment.id} exceeds ${(params.maxBytes / (1024 * 1024)).toFixed(0)}MB limit`);
1063
+ const rpcParams = { id: attachment.id };
1064
+ if (params.account) rpcParams.account = params.account;
1065
+ if (params.groupId) rpcParams.groupId = params.groupId;
1066
+ else if (params.sender) rpcParams.recipient = params.sender;
1067
+ else return null;
1068
+ const result = await signalRpcRequest("getAttachment", rpcParams, { baseUrl: params.baseUrl });
1069
+ if (!result?.data) return null;
1070
+ if (estimateBase64DecodedBytes(result.data) > params.maxBytes) throw new Error(`Signal attachment ${attachment.id} exceeds ${(params.maxBytes / (1024 * 1024)).toFixed(0)}MB limit`);
1071
+ const buffer = Buffer.from(result.data, "base64");
1072
+ const originalFilename = normalizeOptionalString(attachment.filename ?? void 0);
1073
+ const saved = await saveMediaBuffer(buffer, normalizeOptionalString(attachment.contentType ?? void 0) ?? await detectMime({
1074
+ buffer,
1075
+ filePath: originalFilename
1076
+ }), "inbound", params.maxBytes, originalFilename);
1077
+ return {
1078
+ path: saved.path,
1079
+ contentType: saved.contentType
1080
+ };
1081
+ }
1082
+ async function deliverReplies(params) {
1083
+ const { replies, target, baseUrl, account, accountId, runtime, maxBytes, textLimit, chunkMode } = params;
1084
+ for (const payload of replies) if (await deliverTextOrMediaReply({
1085
+ payload,
1086
+ text: resolveSendableOutboundReplyParts(payload).text,
1087
+ chunkText: (value) => chunkTextWithMode(value, textLimit, chunkMode),
1088
+ sendText: async (chunk) => {
1089
+ await sendMessageSignal(target, chunk, {
1090
+ cfg: params.cfg,
1091
+ baseUrl,
1092
+ account,
1093
+ maxBytes,
1094
+ accountId
1095
+ });
1096
+ },
1097
+ sendMedia: async ({ mediaUrl, caption }) => {
1098
+ await sendMessageSignal(target, caption ?? "", {
1099
+ cfg: params.cfg,
1100
+ baseUrl,
1101
+ account,
1102
+ mediaUrl,
1103
+ maxBytes,
1104
+ accountId
1105
+ });
1106
+ }
1107
+ }) !== "empty") runtime.log?.(`delivered reply to ${target}`);
1108
+ }
1109
+ async function monitorSignalProvider(opts = {}) {
1110
+ const runtime = resolveRuntime(opts);
1111
+ const cfg = opts.config ?? loadConfig();
1112
+ const accountInfo = resolveSignalAccount({
1113
+ cfg,
1114
+ accountId: opts.accountId
1115
+ });
1116
+ const historyLimit = Math.max(0, accountInfo.config.historyLimit ?? cfg.messages?.groupChat?.historyLimit ?? 50);
1117
+ const groupHistories = /* @__PURE__ */ new Map();
1118
+ const textLimit = resolveTextChunkLimit(cfg, "signal", accountInfo.accountId);
1119
+ const chunkMode = resolveChunkMode(cfg, "signal", accountInfo.accountId);
1120
+ const baseUrl = normalizeOptionalString(opts.baseUrl) ?? accountInfo.baseUrl;
1121
+ const account = normalizeOptionalString(opts.account) ?? normalizeOptionalString(accountInfo.config.account);
1122
+ const dmPolicy = accountInfo.config.dmPolicy ?? "pairing";
1123
+ const allowFrom = normalizeAllowList(opts.allowFrom ?? accountInfo.config.allowFrom);
1124
+ const groupAllowFrom = normalizeAllowList(opts.groupAllowFrom ?? accountInfo.config.groupAllowFrom ?? (accountInfo.config.allowFrom && accountInfo.config.allowFrom.length > 0 ? accountInfo.config.allowFrom : []));
1125
+ const defaultGroupPolicy = resolveDefaultGroupPolicy(cfg);
1126
+ const { groupPolicy, providerMissingFallbackApplied } = resolveAllowlistProviderRuntimeGroupPolicy({
1127
+ providerConfigPresent: cfg.channels?.signal !== void 0,
1128
+ groupPolicy: accountInfo.config.groupPolicy,
1129
+ defaultGroupPolicy
1130
+ });
1131
+ warnMissingProviderGroupPolicyFallbackOnce({
1132
+ providerMissingFallbackApplied,
1133
+ providerKey: "signal",
1134
+ accountId: accountInfo.accountId,
1135
+ log: (message) => runtime.log?.(message)
1136
+ });
1137
+ const reactionMode = accountInfo.config.reactionNotifications ?? "own";
1138
+ const reactionAllowlist = normalizeAllowList(accountInfo.config.reactionAllowlist);
1139
+ const mediaMaxBytes = (opts.mediaMaxMb ?? accountInfo.config.mediaMaxMb ?? 8) * 1024 * 1024;
1140
+ const ignoreAttachments = opts.ignoreAttachments ?? accountInfo.config.ignoreAttachments ?? false;
1141
+ const sendReadReceipts = Boolean(opts.sendReadReceipts ?? accountInfo.config.sendReadReceipts);
1142
+ const waitForTransportReadyFn = opts.waitForTransportReady ?? waitForTransportReady;
1143
+ const autoStart = opts.autoStart ?? accountInfo.config.autoStart ?? !accountInfo.config.httpUrl;
1144
+ const startupTimeoutMs = Math.min(12e4, Math.max(1e3, opts.startupTimeoutMs ?? accountInfo.config.startupTimeoutMs ?? 3e4));
1145
+ const readReceiptsViaDaemon = autoStart && sendReadReceipts;
1146
+ const daemonLifecycle = createSignalDaemonLifecycle({ abortSignal: opts.abortSignal });
1147
+ let daemonHandle = null;
1148
+ if (autoStart) {
1149
+ daemonHandle = spawnSignalDaemon({
1150
+ cliPath: opts.cliPath ?? accountInfo.config.cliPath ?? "signal-cli",
1151
+ account,
1152
+ httpHost: opts.httpHost ?? accountInfo.config.httpHost ?? "127.0.0.1",
1153
+ httpPort: opts.httpPort ?? accountInfo.config.httpPort ?? 8080,
1154
+ receiveMode: opts.receiveMode ?? accountInfo.config.receiveMode,
1155
+ ignoreAttachments: opts.ignoreAttachments ?? accountInfo.config.ignoreAttachments,
1156
+ ignoreStories: opts.ignoreStories ?? accountInfo.config.ignoreStories,
1157
+ sendReadReceipts,
1158
+ runtime
1159
+ });
1160
+ daemonLifecycle.attach(daemonHandle);
1161
+ }
1162
+ const onAbort = () => {
1163
+ daemonLifecycle.stop();
1164
+ };
1165
+ opts.abortSignal?.addEventListener("abort", onAbort, { once: true });
1166
+ try {
1167
+ if (daemonHandle) {
1168
+ await waitForSignalDaemonReady({
1169
+ baseUrl,
1170
+ abortSignal: daemonLifecycle.abortSignal,
1171
+ timeoutMs: startupTimeoutMs,
1172
+ logAfterMs: 1e4,
1173
+ logIntervalMs: 1e4,
1174
+ runtime,
1175
+ waitForTransportReadyFn
1176
+ });
1177
+ const daemonExitError = daemonLifecycle.getExitError();
1178
+ if (daemonExitError) throw daemonExitError;
1179
+ }
1180
+ const handleEvent = createSignalEventHandler({
1181
+ runtime,
1182
+ cfg,
1183
+ baseUrl,
1184
+ account,
1185
+ accountUuid: accountInfo.config.accountUuid,
1186
+ accountId: accountInfo.accountId,
1187
+ blockStreaming: accountInfo.config.blockStreaming,
1188
+ historyLimit,
1189
+ groupHistories,
1190
+ textLimit,
1191
+ dmPolicy,
1192
+ allowFrom,
1193
+ groupAllowFrom,
1194
+ groupPolicy,
1195
+ reactionMode,
1196
+ reactionAllowlist,
1197
+ mediaMaxBytes,
1198
+ ignoreAttachments,
1199
+ sendReadReceipts,
1200
+ readReceiptsViaDaemon,
1201
+ fetchAttachment,
1202
+ deliverReplies: (params) => deliverReplies({
1203
+ ...params,
1204
+ cfg,
1205
+ chunkMode
1206
+ }),
1207
+ resolveSignalReactionTargets,
1208
+ isSignalReactionMessage,
1209
+ shouldEmitSignalReactionNotification,
1210
+ buildSignalReactionSystemEventText
1211
+ });
1212
+ await runSignalSseLoop({
1213
+ baseUrl,
1214
+ account,
1215
+ abortSignal: daemonLifecycle.abortSignal,
1216
+ runtime,
1217
+ policy: opts.reconnectPolicy,
1218
+ onEvent: (event) => {
1219
+ handleEvent(event).catch((err) => {
1220
+ runtime.error?.(`event handler failed: ${String(err)}`);
1221
+ });
1222
+ }
1223
+ });
1224
+ const daemonExitError = daemonLifecycle.getExitError();
1225
+ if (daemonExitError) throw daemonExitError;
1226
+ } catch (err) {
1227
+ const daemonExitError = daemonLifecycle.getExitError();
1228
+ if (opts.abortSignal?.aborted && !daemonExitError) return;
1229
+ throw err;
1230
+ } finally {
1231
+ daemonLifecycle.dispose();
1232
+ opts.abortSignal?.removeEventListener("abort", onAbort);
1233
+ daemonLifecycle.stop();
1234
+ }
1235
+ }
1236
+ //#endregion
1237
+ export { monitorSignalProvider as t };