@symerian/symi 3.4.3 → 3.4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/dist/{agent-CKmM2vyY.js → agent-BaSGoKPq.js} +8 -8
  2. package/dist/{agent--IK5M1T9.js → agent-C8IIjDyn.js} +8 -8
  3. package/dist/{agents-CyR_QeUn.js → agents-D6Ygz9ED.js} +5 -5
  4. package/dist/{audit-o0s717ob.js → audit-BI8Rbs5q.js} +6 -6
  5. package/dist/{audit-DQpLuCNP.js → audit-nqP-JeOr.js} +6 -6
  6. package/dist/{auth-choice-WduOdkq8.js → auth-choice-BBrEzoy2.js} +4 -4
  7. package/dist/{auth-choice-CUs4WmYv.js → auth-choice-Bx4Duu6u.js} +4 -4
  8. package/dist/{banner-CJWij079.js → banner-l9GjW5Rm.js} +1 -1
  9. package/dist/{browser-cli-BdYqssco.js → browser-cli-BAxOL41p.js} +4 -4
  10. package/dist/{browser-cli-C6G2Ql9l.js → browser-cli-Bk8DxxeA.js} +4 -4
  11. package/dist/build-info.json +3 -3
  12. package/dist/bundled/boot-md/handler.js +8 -8
  13. package/dist/bundled/session-memory/handler.js +7 -7
  14. package/dist/{call-Dy_T6f6d.js → call-5IE9ycvm.js} +2 -4
  15. package/dist/{call-CbF18cyd.js → call-BPJn2_th.js} +2 -4
  16. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  17. package/dist/{channel-options-CDA0OfJ3.js → channel-options-COanIUoQ.js} +1 -1
  18. package/dist/{channel-options-CZEn3Cel.js → channel-options-DGUqfnbP.js} +1 -1
  19. package/dist/{channels-cli-C84jkCS9.js → channels-cli-B1zmnm5a.js} +26 -26
  20. package/dist/{channels-cli-veDmkOnJ.js → channels-cli-CZ3M3yE1.js} +27 -27
  21. package/dist/{chrome-BxWRyWC_.js → chrome-B0wRtBRB.js} +1 -1
  22. package/dist/{chrome-C0vnHDyY.js → chrome-B4P7ycw5.js} +1 -1
  23. package/dist/{chrome-BWQSyLHT.js → chrome-CQn8fDIy.js} +8 -8
  24. package/dist/{chrome-D5UEEo4y.js → chrome-VbDUdW0_.js} +1 -1
  25. package/dist/{cli-BBd1ZRun.js → cli-C7I5uEFC.js} +22 -22
  26. package/dist/{cli-SeEQuQkN.js → cli-CC5GrdTI.js} +23 -23
  27. package/dist/{client-CAz5aPpp.js → client-Dp8LUTmF.js} +2 -5
  28. package/dist/{client-ZZqt0H0-.js → client-qjXXRKCO.js} +2 -5
  29. package/dist/{command-registry-CVsOBck9.js → command-registry-D8fj6th4.js} +11 -11
  30. package/dist/{completion-cli-B5bq51hT.js → completion-cli-BxspmuYm.js} +2 -2
  31. package/dist/{completion-cli-BoD_MZfu.js → completion-cli-C-85b5b8.js} +1 -1
  32. package/dist/{config-MU0QT0xu.js → config-DqMsGcSQ.js} +0 -2
  33. package/dist/{config-cli-Bbb6yrgS.js → config-cli-BqzjDmIH.js} +2 -2
  34. package/dist/{config-cli--_Qaef5L.js → config-cli-DSDGwckX.js} +2 -2
  35. package/dist/{config-guard-BFH1qNlf.js → config-guard-CJcSKMuP.js} +3 -3
  36. package/dist/{config-guard-DQgHcGdp.js → config-guard-Cu-dwAgi.js} +2 -2
  37. package/dist/{config-Cw7uo7Dh.js → config-igdtSRrZ.js} +0 -2
  38. package/dist/{config-validation-BkJh21Ko.js → config-validation-Bp2wJ610.js} +1 -1
  39. package/dist/{config-validation-MUkEKwbD.js → config-validation-Bs1Gp2oG.js} +1 -1
  40. package/dist/{configure-C-39fnS7.js → configure-BazJdwKU.js} +10 -10
  41. package/dist/{configure-B64O-IVQ.js → configure-Dl1f1Den.js} +10 -10
  42. package/dist/{control-service-BTydj9Kk.js → control-service-DO8FjrS6.js} +4 -4
  43. package/dist/{control-service-D1aZqS0Q.js → control-service-Fn3d9AlH.js} +4 -4
  44. package/dist/control-ui/js/metrics.js +0 -10
  45. package/dist/{cron-cli-5souN2YC.js → cron-cli-DXgI5Lid.js} +7 -10
  46. package/dist/{cron-cli-Ch8MwxYs.js → cron-cli-DZyH2BfZ.js} +7 -10
  47. package/dist/{daemon-cli-DbwmIQAj.js → daemon-cli-C6FSROt1.js} +6 -6
  48. package/dist/{daemon-cli-AVJLjFd5.js → daemon-cli-DmMYx5Uf.js} +6 -6
  49. package/dist/daemon-cli.js +2 -9
  50. package/dist/{daemon-runtime-CkBw3gG5.js → daemon-runtime-2Y9RfgcP.js} +1 -1
  51. package/dist/{daemon-runtime-DDwhgI7i.js → daemon-runtime-BpfA4d6Q.js} +1 -1
  52. package/dist/{deliver-BwcK0QD6.js → deliver-BkCYBlzi.js} +5 -5
  53. package/dist/{deliver-BBoTRer2.js → deliver-DvW5xHHr.js} +5 -5
  54. package/dist/{deliver-BX3IOm7k.js → deliver-RwovDEDy.js} +1 -1
  55. package/dist/{deliver-Cl2fWxx4.js → deliver-izdrXPr4.js} +1 -1
  56. package/dist/{deps-BCywDAi0.js → deps-bCHNuszw.js} +1 -1
  57. package/dist/{devices-cli-ZiU2HGbP.js → devices-cli-D6xXc9Ym.js} +3 -3
  58. package/dist/{devices-cli-BXaodSI7.js → devices-cli-IMv-0zor.js} +3 -3
  59. package/dist/{directory-cli-cK6CHm4W.js → directory-cli-3wlYB9In.js} +1 -1
  60. package/dist/{directory-cli-DJnKldBM.js → directory-cli-ClbYhd6z.js} +1 -1
  61. package/dist/{dns-cli-LhrwMgGE.js → dns-cli-CY2voLuR.js} +1 -1
  62. package/dist/{dns-cli-D6uc55C9.js → dns-cli-CoVIqRWx.js} +1 -1
  63. package/dist/{doctor-completion-BmJ6Xtlu.js → doctor-completion-BwHbIZjF.js} +1 -1
  64. package/dist/{doctor-completion-CUC2jl4R.js → doctor-completion-CX7LjkOD.js} +1 -1
  65. package/dist/{doctor-config-flow-DJrfwr2x.js → doctor-config-flow-CYDx1U0Z.js} +2 -2
  66. package/dist/{doctor-config-flow-BXjmJyRY.js → doctor-config-flow-wvoEFNeZ.js} +2 -2
  67. package/dist/entry.js +1 -1
  68. package/dist/{exec-approvals-cli-DqWFmApk.js → exec-approvals-cli-B_P-1zVp.js} +5 -5
  69. package/dist/{exec-approvals-cli-BI9yAGI5.js → exec-approvals-cli-Dy1jvh2M.js} +5 -5
  70. package/dist/extensionAPI.js +6 -6
  71. package/dist/{gateway-cli-DtWLXC5j.js → gateway-cli-CTcK1Az2.js} +47 -72
  72. package/dist/{gateway-cli-D3MIV11i.js → gateway-cli-CW-Z71cE.js} +48 -73
  73. package/dist/{gateway-rpc-B5_ZCiHW.js → gateway-rpc-C1xjWlxu.js} +1 -1
  74. package/dist/{gateway-rpc-RZAJMB1i.js → gateway-rpc-DD_aXogj.js} +1 -1
  75. package/dist/{glass-ui-ws-BzGjkdgV.js → glass-ui-ws-BNJkhJrL.js} +32 -32
  76. package/dist/{glass-ui-ws-C4tW88dG.js → glass-ui-ws-BZvH4MBO.js} +33 -33
  77. package/dist/{health-DnOYGIFp.js → health-D8cKia4i.js} +4 -60
  78. package/dist/{health-D2CsIdFz.js → health-DdzNc1yA.js} +4 -60
  79. package/dist/{hooks-cli-XjhtoSGz.js → hooks-cli-DkP3Y4ou.js} +23 -23
  80. package/dist/{hooks-cli-PSE_YjYr.js → hooks-cli-qO421UdO.js} +24 -24
  81. package/dist/index.js +28 -28
  82. package/dist/{lifecycle-core-B9_prcP5.js → lifecycle-core-BEmljRfh.js} +2 -2
  83. package/dist/{lifecycle-core-Dark4HHr.js → lifecycle-core-uN2bsrZs.js} +2 -2
  84. package/dist/llm-slug-generator.js +7 -7
  85. package/dist/{logs-cli-CVBGriNc.js → logs-cli-BB0Mq8D1.js} +4 -4
  86. package/dist/{logs-cli-Dqq-1RM5.js → logs-cli-Dbmzz8m_.js} +4 -4
  87. package/dist/{manager-WHZtXzz0.js → manager-BD_cpL9b.js} +1 -1
  88. package/dist/{manager-z92Qfa3m.js → manager-BQaZlWzK.js} +1 -1
  89. package/dist/{manager-GRHfrG3p.js → manager-D0NIHMuQ.js} +1 -1
  90. package/dist/{manager-BFOp2VHW.js → manager-DOiW-Koo.js} +1 -1
  91. package/dist/{memory-CUt9fSz8.js → memory-Cl4I_45k.js} +3 -3
  92. package/dist/{memory-cli-BlBxrZF2.js → memory-cli-CszP57Ee.js} +3 -3
  93. package/dist/{memory-cli-DXmGAhFX.js → memory-cli-DkD_OD70.js} +3 -3
  94. package/dist/{memory-cQbfKDAe.js → memory-kIYeV9aO.js} +3 -3
  95. package/dist/{model-catalog-Ba4R_zVe.js → model-catalog-C2rNhRI4.js} +2 -2
  96. package/dist/{model-catalog-De1c8o1y.js → model-catalog-CaGfL-2g.js} +2 -2
  97. package/dist/{model-picker-BQrdlRCb.js → model-picker-4NUXHy8M.js} +2 -2
  98. package/dist/{model-picker-C4xfgSwe.js → model-picker-CV56GE8A.js} +2 -2
  99. package/dist/{models-CBuTLoD4.js → models-BYi0Fo1a.js} +9 -9
  100. package/dist/{models-cli-DLc8lwUF.js → models-cli-Bn9M1TgO.js} +26 -26
  101. package/dist/{models-cli-D0reLJxf.js → models-cli-EdjvkvFO.js} +27 -27
  102. package/dist/{models-config-C-VjjDXg.js → models-config-Unnduxgs.js} +1 -1
  103. package/dist/{models-config-C2OLw8vc.js → models-config-yKxNCn4V.js} +1 -1
  104. package/dist/{node-cli-C4uJ1LcV.js → node-cli-39H0MZ8q.js} +10 -10
  105. package/dist/{node-cli-MO_9MCpD.js → node-cli-C8FYMIjN.js} +10 -10
  106. package/dist/{nodes-cli-C52eXJSX.js → nodes-cli-C-03nIJ0.js} +4 -4
  107. package/dist/{nodes-cli-C70ejrs0.js → nodes-cli-CqxQexTU.js} +4 -4
  108. package/dist/{onboard-RyyCiCgk.js → onboard-C8IQnigm.js} +7 -7
  109. package/dist/{onboard-Dky6Vgqw.js → onboard-CAIujkV7.js} +7 -7
  110. package/dist/{onboard-channels-jAqPucaS.js → onboard-channels-B2l6OoMg.js} +1 -1
  111. package/dist/{onboard-channels-B7nvfziF.js → onboard-channels-D_uUQbem.js} +1 -1
  112. package/dist/{onboard-custom-CEBV-OCa.js → onboard-custom-B2fJvyxt.js} +2 -2
  113. package/dist/{onboard-custom-CMle6THh.js → onboard-custom-DcZ2SEUv.js} +2 -2
  114. package/dist/{onboard-helpers-C5YryU1N.js → onboard-helpers-Bm-oyLWy.js} +2 -2
  115. package/dist/{onboard-helpers-DpIB1xVU.js → onboard-helpers-CHfdRdZR.js} +2 -2
  116. package/dist/{onboard-remote-BDvWSzRz.js → onboard-remote-ecyetiyL.js} +1 -1
  117. package/dist/{onboard-remote-DZa5gKRe.js → onboard-remote-z8XLK4M0.js} +1 -1
  118. package/dist/{onboard-skills-5Ty3AuY6.js → onboard-skills-BLvL0KPR.js} +1 -1
  119. package/dist/{onboard-skills-Bv4-MQ7C.js → onboard-skills-C53RGq_5.js} +1 -1
  120. package/dist/{onboarding-BxybJPim.js → onboarding-4v9LJueP.js} +10 -10
  121. package/dist/{onboarding-B7vTX33U.js → onboarding-BIq5BxG0.js} +10 -10
  122. package/dist/{onboarding.finalize-Cjck4WX4.js → onboarding.finalize-Bkcwe5RS.js} +16 -16
  123. package/dist/{onboarding.finalize-Cm8jc2yf.js → onboarding.finalize-CXAQzVXM.js} +17 -17
  124. package/dist/{onboarding.gateway-config-BDJ4tufO.js → onboarding.gateway-config-3JMN1xRf.js} +5 -5
  125. package/dist/{onboarding.gateway-config-DP9rTU6-.js → onboarding.gateway-config-Ft3f6Jba.js} +5 -5
  126. package/dist/{outbound-send-deps-CBRh4LsL.js → outbound-send-deps-Dmc3B-LK.js} +1 -1
  127. package/dist/{pairing-cli-mM4XdTk0.js → pairing-cli-B_icqS8Y.js} +1 -1
  128. package/dist/{pairing-cli-WOgnEerl.js → pairing-cli-CJGA4j6G.js} +1 -1
  129. package/dist/{pi-embedded-BvMMjrvj.js → pi-embedded-CGebiST2.js} +20 -41
  130. package/dist/{pi-embedded-helpers-BbBfO9m_.js → pi-embedded-helpers-BwBjqJM5.js} +1 -1
  131. package/dist/{pi-embedded-helpers-D4cxQiPr.js → pi-embedded-helpers-CAdI9wJ5.js} +1 -1
  132. package/dist/{pi-tools.policy--USPnaLr.js → pi-tools.policy-BaRznBvu.js} +2 -2
  133. package/dist/{pi-tools.policy-NmG0EGEY.js → pi-tools.policy-Dyx3nBmp.js} +2 -2
  134. package/dist/{plugin-registry-D9f4FfDL.js → plugin-registry-D7ACpV2Y.js} +2 -2
  135. package/dist/{plugin-registry-DOQyKvh2.js → plugin-registry-d4hMhLLZ.js} +2 -2
  136. package/dist/plugin-sdk/agents/system-prompt.d.ts +1 -1
  137. package/dist/plugin-sdk/agents/unified-runner.d.ts +5 -5
  138. package/dist/plugin-sdk/auto-reply/reply/turn-middleware.d.ts +2 -2
  139. package/dist/plugin-sdk/channels/plugins/types.adapters.d.ts +1 -21
  140. package/dist/plugin-sdk/channels/plugins/types.core.d.ts +1 -5
  141. package/dist/plugin-sdk/channels/plugins/types.d.ts +2 -2
  142. package/dist/plugin-sdk/channels/plugins/types.plugin.d.ts +1 -2
  143. package/dist/plugin-sdk/commands/health.d.ts +0 -12
  144. package/dist/plugin-sdk/config/types.base.d.ts +0 -1
  145. package/dist/plugin-sdk/config/types.hooks.d.ts +0 -1
  146. package/dist/plugin-sdk/config/types.tools.d.ts +1 -1
  147. package/dist/plugin-sdk/config/zod-schema.d.ts +0 -2
  148. package/dist/plugin-sdk/config/zod-schema.hooks.d.ts +0 -1
  149. package/dist/plugin-sdk/cron/service/ops.d.ts +0 -1
  150. package/dist/plugin-sdk/cron/service/state.d.ts +1 -1
  151. package/dist/plugin-sdk/cron/service/timer.d.ts +0 -1
  152. package/dist/plugin-sdk/cron/service.d.ts +0 -1
  153. package/dist/plugin-sdk/cron/types.d.ts +1 -1
  154. package/dist/plugin-sdk/gateway/protocol/index.d.ts +1 -2
  155. package/dist/plugin-sdk/gateway/protocol/schema/agent.d.ts +0 -1
  156. package/dist/plugin-sdk/gateway/protocol/schema/cron.d.ts +3 -3
  157. package/dist/plugin-sdk/index.js +0 -2
  158. package/dist/plugin-sdk/plugin-sdk/index.d.ts +1 -1
  159. package/dist/{plugins-cli-R-ZE64Cv.js → plugins-cli-CPf1hMaZ.js} +23 -23
  160. package/dist/{plugins-cli-Biq9COww.js → plugins-cli-D1gd8p9T.js} +24 -24
  161. package/dist/{program-Cg53oQfq.js → program-C19G7o-Q.js} +30 -30
  162. package/dist/{program-context-CLtVUsa6.js → program-context-BSUkEz3n.js} +38 -38
  163. package/dist/{prompt-select-styled-CGS3IQAy.js → prompt-select-styled-B5wlPYN5.js} +15 -15
  164. package/dist/{prompt-select-styled-2-MTlOry.js → prompt-select-styled-CnYM7W0j.js} +15 -15
  165. package/dist/{provider-auth-helpers-DTc5TSWH.js → provider-auth-helpers-BUC4xGK9.js} +2 -2
  166. package/dist/{provider-auth-helpers-BHqejuN7.js → provider-auth-helpers-DpRoNr_8.js} +2 -2
  167. package/dist/{push-apns-9QCL6OFW.js → push-apns-Bm39oOO9.js} +1 -1
  168. package/dist/{push-apns-DFKohq1V.js → push-apns-DqmFEcqh.js} +1 -1
  169. package/dist/{pw-ai-DuPDo_Ia.js → pw-ai-B0-pgbYu.js} +2 -2
  170. package/dist/{pw-ai-CyCnG_Kj.js → pw-ai-B2NuWIL7.js} +2 -2
  171. package/dist/{pw-ai-CNOE7SUx.js → pw-ai-BB1pJj9_.js} +2 -2
  172. package/dist/{pw-ai-Bc5uzn_J.js → pw-ai-BsEf8C15.js} +2 -2
  173. package/dist/{qr-cli-D5Gl0wH3.js → qr-cli-Cx7DYTSk.js} +1 -1
  174. package/dist/{qr-cli-BXf1ID0g.js → qr-cli-hPIeUYAT.js} +1 -1
  175. package/dist/{redact-identifier-QYENCXvy.js → redact-identifier-Cm1VfV7E.js} +1 -1
  176. package/dist/{register.agent-Bf-zNnpf.js → register.agent-CCKcgAXs.js} +31 -31
  177. package/dist/{register.agent-CUEmf_fe.js → register.agent-DZuxoC0a.js} +33 -33
  178. package/dist/{register.configure-CbUszoWU.js → register.configure-CJErdFO_.js} +34 -34
  179. package/dist/{register.configure-BX1pnvZN.js → register.configure-JT8T7HO5.js} +35 -35
  180. package/dist/{register.maintenance-ck4eLkWr.js → register.maintenance-CKsv0lok.js} +34 -34
  181. package/dist/{register.maintenance-B6Hf-dFR.js → register.maintenance-DDzKUGYJ.js} +32 -32
  182. package/dist/{register.message-B6A5GxKa.js → register.message-CpOXi1rz.js} +24 -24
  183. package/dist/{register.message-DUtzKXxY.js → register.message-_bfhetTg.js} +25 -25
  184. package/dist/{register.onboard-ppi11I2H.js → register.onboard-BHtTh0b_.js} +14 -14
  185. package/dist/{register.onboard-Lt0JI36k.js → register.onboard-CkIM3hU7.js} +14 -14
  186. package/dist/{register.setup-p3Bv9cvy.js → register.setup-CLhdFQHW.js} +14 -14
  187. package/dist/{register.setup-D--UK_mz.js → register.setup-CYtYDKMU.js} +14 -14
  188. package/dist/{register.status-health-sessions-s4im2lAy.js → register.status-health-sessions-DZnebsxZ.js} +18 -18
  189. package/dist/{register.status-health-sessions-DEGk6Zeg.js → register.status-health-sessions-DmX0DLAt.js} +20 -20
  190. package/dist/{register.subclis-Bhsc6TUP.js → register.subclis-CnDo2jzv.js} +28 -28
  191. package/dist/{replies-t5bPemnD.js → replies-B2O2eRh6.js} +1 -1
  192. package/dist/{replies-CH1VlYZQ.js → replies-Bnh0owwH.js} +1 -1
  193. package/dist/{replies-DIWartyA.js → replies-DIHkSwoW.js} +1 -1
  194. package/dist/{replies-CjSfYK97.js → replies-DU-fXkSk.js} +1 -1
  195. package/dist/{routes-CTOYLhQ1.js → routes-BMShi_eY.js} +3 -3
  196. package/dist/{routes-CWYyvbxi.js → routes-Cio8is5Y.js} +3 -3
  197. package/dist/{rpc-DLfjbTSu.js → rpc-CEhoSTGo.js} +1 -1
  198. package/dist/{rpc-BLUOZg0H.js → rpc-D0Ldc6Hv.js} +1 -1
  199. package/dist/{run-main-BbCFxhFG.js → run-main-BIRbWKyA.js} +41 -41
  200. package/dist/{sandbox-B6P9-J8g.js → sandbox-B4RfQ7k1.js} +5 -5
  201. package/dist/{sandbox-CpZmnHRC.js → sandbox-C-UeHmuJ.js} +5 -5
  202. package/dist/{sandbox-cli-kmVLo1NO.js → sandbox-cli-B43FqqPT.js} +6 -6
  203. package/dist/{sandbox-cli-DGcyrD_y.js → sandbox-cli-CNAPNXJ4.js} +6 -6
  204. package/dist/{security-cli-DwBo5cRE.js → security-cli-BSd8_Gsq.js} +10 -10
  205. package/dist/{security-cli-ub7VEaGq.js → security-cli-DDM0Z6IW.js} +10 -10
  206. package/dist/{send-6IYv-yRp.js → send-CGXxBSKh.js} +1 -1
  207. package/dist/{send-zbkImdk9.js → send-DSK6O8SC.js} +1 -1
  208. package/dist/{send-C3ZXgOXw.js → send-EluKytgO.js} +1 -1
  209. package/dist/{server-context-Vd9sEFb9.js → server-context-CDTuNR-O.js} +5 -5
  210. package/dist/{server-context-Dytgl6ZD.js → server-context-DFO6o83F.js} +5 -5
  211. package/dist/{server-methods-CZIqJLhS.js → server-methods-Dz6NGEg3.js} +24 -42
  212. package/dist/{server-methods-B_5RRPVi.js → server-methods-vp5zi6v5.js} +23 -41
  213. package/dist/{server-node-events-lQu3U-Wr.js → server-node-events-4ufB_olv.js} +26 -26
  214. package/dist/{server-node-events-CIsCdDxa.js → server-node-events-B7UtUhkC.js} +25 -25
  215. package/dist/{session-utils-NOQiGgMD.js → session-utils-CgGDr4eh.js} +5 -5
  216. package/dist/{session-utils-CJfEkQQQ.js → session-utils-D1VcHni_.js} +5 -5
  217. package/dist/{sessions-BHrlpR92.js → sessions-BNEDanZO.js} +1 -1
  218. package/dist/{sessions-B7Of0Rqm.js → sessions-Dh88Kqd6.js} +1 -1
  219. package/dist/{sessions-1BZvXUIa.js → sessions-iLfSd6VD.js} +3 -3
  220. package/dist/{shared-ByldVglV.js → shared-CIeW3aWF.js} +1 -1
  221. package/dist/{shared-Bvjz11ts.js → shared-_wwqvx84.js} +1 -1
  222. package/dist/{skills-cli-CFMRYyuc.js → skills-cli-BJDvUT_e.js} +1 -1
  223. package/dist/{skills-cli-BypZ_n-i.js → skills-cli-Byp9MfZh.js} +1 -1
  224. package/dist/{ssrf-CJor4ewC.js → ssrf-CBajKNWO.js} +0 -2
  225. package/dist/{ssrf-BzPY2FrA.js → ssrf-CeQ2Aub-.js} +0 -2
  226. package/dist/{status-BhH4w6Rh.js → status-B0HecH1s.js} +2 -2
  227. package/dist/{status-Dz-fz0Sg.js → status-BD8gFYKH.js} +12 -43
  228. package/dist/{status-BJpznKU1.js → status-DEXnB1sw.js} +11 -42
  229. package/dist/{status-DjbQ_4aI.js → status-MMLxoRgQ.js} +2 -2
  230. package/dist/{status.update-BoxoMaxX.js → status.update-Be8PuHCh.js} +1 -1
  231. package/dist/{status.update-C45HhTTL.js → status.update-CB9e3eWW.js} +1 -1
  232. package/dist/{subagent-registry-DexfLiQ_.js → subagent-registry-C57PFGHU.js} +30 -46
  233. package/dist/{synthesis-DcGTICel.js → synthesis-CQdzrLFL.js} +6 -6
  234. package/dist/{synthesis-BKdyZilP.js → synthesis-CjsIBd8X.js} +22 -22
  235. package/dist/{synthesis-B4G0BnU5.js → synthesis-DSdF0vsi.js} +7 -7
  236. package/dist/{synthesis-B_uoS8jb.js → synthesis-j_kjlFo1.js} +23 -23
  237. package/dist/system-cli-BM8KbtUc.js +48 -0
  238. package/dist/system-cli-CQFH_HwX.js +43 -0
  239. package/dist/{systemd-hints-RoqMZFFM.js → systemd-hints-A1W3AdVo.js} +1 -1
  240. package/dist/{systemd-hints-DQKA3tTS.js → systemd-hints-BejQ6J2Y.js} +1 -1
  241. package/dist/{tui-BrE4FemN.js → tui-D0j61PXx.js} +6 -16
  242. package/dist/{tui-CckiZT5A.js → tui-DFuScHlA.js} +6 -16
  243. package/dist/{tui-cli-SrnAqI8U.js → tui-cli-25xTveHh.js} +10 -10
  244. package/dist/{tui-cli-e0WhCXvw.js → tui-cli-C3dXNtPo.js} +10 -10
  245. package/dist/{unified-runner-BSdnT6eM.js → unified-runner-BNt7TQKM.js} +18 -39
  246. package/dist/{unified-runner-IQkrAem7.js → unified-runner-DCiPB--z.js} +29 -45
  247. package/dist/{update-cli-jbW8hE0j.js → update-cli-CWufRpkr.js} +35 -35
  248. package/dist/{update-cli-BiRyfmPL.js → update-cli-Dl_QbjXc.js} +37 -37
  249. package/dist/{update-runner-Dbiosgid.js → update-runner-Dq5UYQbo.js} +1 -1
  250. package/dist/{update-runner-CXpAiQuF.js → update-runner-ENJw0Mco.js} +1 -1
  251. package/dist/{webhooks-cli-DqJnNdFt.js → webhooks-cli-Clx8DGfA.js} +1 -1
  252. package/dist/{webhooks-cli-DofAY6FK.js → webhooks-cli-UfO_WffC.js} +1 -1
  253. package/dist/{with-timeout-COajnkmj.js → with-timeout-BE7lxhxW.js} +1 -1
  254. package/dist/{with-timeout-BhDKgIeU.js → with-timeout-BcL6qAbd.js} +1 -1
  255. package/docs/reference/templates/AGENTS.dev.md +0 -4
  256. package/docs/reference/templates/AGENTS.md +7 -68
  257. package/docs/reference/templates/CONFIG-SCHEMA.md +0 -7
  258. package/extensions/shared/resolve-target-test-helpers.ts +1 -1
  259. package/package.json +1 -1
  260. package/skills/coding-agent/SKILL.md +2 -2
  261. package/dist/system-cli-BdG41gcY.js +0 -80
  262. package/dist/system-cli-BdITqp7I.js +0 -85
  263. package/docs/reference/templates/SYMIPULSE.md +0 -103
@@ -3075,7 +3075,6 @@ const HookMappingSchema = z.object({
3075
3075
  source: z.string().optional()
3076
3076
  }).optional(),
3077
3077
  action: z.union([z.literal("wake"), z.literal("agent")]).optional(),
3078
- wakeMode: z.union([z.literal("now"), z.literal("next-heartbeat")]).optional(),
3079
3078
  name: z.string().optional(),
3080
3079
  agentId: z.string().optional(),
3081
3080
  sessionKey: z.string().optional().register(sensitive),
@@ -3952,7 +3951,6 @@ const SymiSchema = z.object({
3952
3951
  }).strict().optional(),
3953
3952
  web: z.object({
3954
3953
  enabled: z.boolean().optional(),
3955
- heartbeatSeconds: z.number().int().positive().optional(),
3956
3954
  reconnect: z.object({
3957
3955
  initialMs: z.number().positive().optional(),
3958
3956
  maxMs: z.number().positive().optional(),
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-BvAkTjTI.js";
2
- import { o as readConfigFileSnapshot } from "./config-MU0QT0xu.js";
2
+ import { o as readConfigFileSnapshot } from "./config-DqMsGcSQ.js";
3
3
 
4
4
  //#region src/commands/config-validation.ts
5
5
  async function requireValidConfigSnapshot(runtime) {
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-Xm6vX3qJ.js";
2
- import { o as readConfigFileSnapshot } from "./config-Cw7uo7Dh.js";
2
+ import { o as readConfigFileSnapshot } from "./config-igdtSRrZ.js";
3
3
 
4
4
  //#region src/commands/config-validation.ts
5
5
  async function requireValidConfigSnapshot(runtime) {
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Lt as shortenHomePath, Pt as resolveUserPath, _ as defaultRuntime, ft as resolveGatewayPort, rt as CONFIG_PATH } from "./entry.js";
3
3
  import { b as ensureAuthProfileStore } from "./auth-profiles-Bs5D0GUv.js";
4
4
  import { t as formatCliCommand } from "./command-format-Xm6vX3qJ.js";
5
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-Cw7uo7Dh.js";
5
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-igdtSRrZ.js";
6
6
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-Bq-Msc8Z.js";
7
7
  import { a as findTailscaleBinary } from "./tailscale-BsA0YClX.js";
8
8
  import { n as withProgress } from "./progress-C4ck6JXh.js";
@@ -10,22 +10,22 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
10
10
  import { t as note$1 } from "./note-DKRm9hYC.js";
11
11
  import { t as WizardCancelledError } from "./prompts-fhztJPuZ.js";
12
12
  import { t as createClackPrompter } from "./clack-prompter-Cm3OvXXT.js";
13
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-jAqPucaS.js";
14
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CkBw3gG5.js";
15
- import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-C5YryU1N.js";
13
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-B2l6OoMg.js";
14
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-2Y9RfgcP.js";
15
+ import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-Bm-oyLWy.js";
16
16
  import { t as resolveGatewayService } from "./service-BIixwO-v.js";
17
- import { r as healthCommand } from "./health-D2CsIdFz.js";
17
+ import { r as healthCommand } from "./health-DdzNc1yA.js";
18
18
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B5BrwGRs.js";
19
19
  import { n as logConfigUpdated } from "./logging-BeA4q4J_.js";
20
20
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-DBfm0y9l.js";
21
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-CUs4WmYv.js";
22
- import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-BQrdlRCb.js";
21
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-Bx4Duu6u.js";
22
+ import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-4NUXHy8M.js";
23
23
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-BM4qvprK.js";
24
- import { a as promptCustomApiConfig } from "./onboard-custom-CMle6THh.js";
24
+ import { a as promptCustomApiConfig } from "./onboard-custom-DcZ2SEUv.js";
25
25
  import { i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-DK4xoUQ-.js";
26
26
  import { t as formatHealthCheckFailure } from "./health-format-DaP03FBk.js";
27
- import { n as promptRemoteGatewayConfig } from "./onboard-remote-BDvWSzRz.js";
28
- import { n as setupSkills } from "./onboard-skills-Bv4-MQ7C.js";
27
+ import { n as promptRemoteGatewayConfig } from "./onboard-remote-ecyetiyL.js";
28
+ import { n as setupSkills } from "./onboard-skills-C53RGq_5.js";
29
29
  import { confirm, intro, outro, select, text } from "@clack/prompts";
30
30
 
31
31
  //#region src/commands/configure.shared.ts
@@ -4,7 +4,7 @@ import { h as resolveUserPath, v as shortenHomePath } from "./utils-BU8jVQFM.js"
4
4
  import { f as defaultRuntime } from "./subsystem-CtH6J8AV.js";
5
5
  import { b as ensureAuthProfileStore } from "./auth-profiles-BFSVvFKy.js";
6
6
  import { t as formatCliCommand } from "./command-format-BvAkTjTI.js";
7
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-MU0QT0xu.js";
7
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-DqMsGcSQ.js";
8
8
  import { a as findTailscaleBinary } from "./tailscale-D7dC-5EX.js";
9
9
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-DuuHorqi.js";
10
10
  import { n as withProgress } from "./progress-CyPyGCDn.js";
@@ -12,22 +12,22 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
12
12
  import { t as note$1 } from "./note-CHrtEumO.js";
13
13
  import { t as WizardCancelledError } from "./prompts-CPtDKw-j.js";
14
14
  import { t as createClackPrompter } from "./clack-prompter-CWQQn_CK.js";
15
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-B7nvfziF.js";
16
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DDwhgI7i.js";
17
- import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-DpIB1xVU.js";
15
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-D_uUQbem.js";
16
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BpfA4d6Q.js";
17
+ import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-CHfdRdZR.js";
18
18
  import { t as resolveGatewayService } from "./service-AP9pR9R5.js";
19
- import { r as healthCommand } from "./health-DnOYGIFp.js";
19
+ import { r as healthCommand } from "./health-D8cKia4i.js";
20
20
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DUhvOLUL.js";
21
21
  import { n as logConfigUpdated } from "./logging-B96FQvnn.js";
22
22
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-D8GvjOBX.js";
23
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-WduOdkq8.js";
24
- import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-C4xfgSwe.js";
23
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-BBrEzoy2.js";
24
+ import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-CV56GE8A.js";
25
25
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-PqG8iGCt.js";
26
- import { a as promptCustomApiConfig } from "./onboard-custom-CEBV-OCa.js";
26
+ import { a as promptCustomApiConfig } from "./onboard-custom-B2fJvyxt.js";
27
27
  import { i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-CfVqgiTN.js";
28
28
  import { t as formatHealthCheckFailure } from "./health-format-39e76m9p.js";
29
- import { n as promptRemoteGatewayConfig } from "./onboard-remote-DZa5gKRe.js";
30
- import { n as setupSkills } from "./onboard-skills-5Ty3AuY6.js";
29
+ import { n as promptRemoteGatewayConfig } from "./onboard-remote-z8XLK4M0.js";
30
+ import { n as setupSkills } from "./onboard-skills-BLvL0KPR.js";
31
31
  import { confirm, intro, outro, select, text } from "@clack/prompts";
32
32
 
33
33
  //#region src/commands/configure.shared.ts
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { o as createSubsystemLogger } from "./entry.js";
3
- import { i as loadConfig } from "./config-Cw7uo7Dh.js";
4
- import { x as ensureChromeExtensionRelayServer } from "./chrome-BxWRyWC_.js";
5
- import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-Vd9sEFb9.js";
3
+ import { i as loadConfig } from "./config-igdtSRrZ.js";
4
+ import { x as ensureChromeExtensionRelayServer } from "./chrome-B0wRtBRB.js";
5
+ import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-CDTuNR-O.js";
6
6
 
7
7
  //#region src/browser/server-lifecycle.ts
8
8
  async function ensureExtensionRelayForProfiles(params) {
@@ -80,7 +80,7 @@ async function stopBrowserControlService() {
80
80
  });
81
81
  state = null;
82
82
  try {
83
- await (await import("./pw-ai-DuPDo_Ia.js")).closePlaywrightBrowserConnection();
83
+ await (await import("./pw-ai-B0-pgbYu.js")).closePlaywrightBrowserConnection();
84
84
  } catch {}
85
85
  }
86
86
 
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CtH6J8AV.js";
3
- import { i as loadConfig } from "./config-MU0QT0xu.js";
4
- import { x as ensureChromeExtensionRelayServer } from "./chrome-D5UEEo4y.js";
5
- import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-Dytgl6ZD.js";
3
+ import { i as loadConfig } from "./config-DqMsGcSQ.js";
4
+ import { x as ensureChromeExtensionRelayServer } from "./chrome-VbDUdW0_.js";
5
+ import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-DFO6o83F.js";
6
6
 
7
7
  //#region src/browser/server-lifecycle.ts
8
8
  async function ensureExtensionRelayForProfiles(params) {
@@ -80,7 +80,7 @@ async function stopBrowserControlService() {
80
80
  });
81
81
  state = null;
82
82
  try {
83
- await (await import("./pw-ai-CyCnG_Kj.js")).closePlaywrightBrowserConnection();
83
+ await (await import("./pw-ai-B2NuWIL7.js")).closePlaywrightBrowserConnection();
84
84
  } catch {}
85
85
  }
86
86
 
@@ -45,19 +45,9 @@ function updateSubagents() {
45
45
  }
46
46
  }
47
47
 
48
- function updateHeartbeat() {
49
- const el = document.getElementById("last-hb");
50
- if (el) {
51
- const now = new Date();
52
- el.textContent = now.toLocaleTimeString("en-US", { hour: "2-digit", minute: "2-digit" });
53
- }
54
- }
55
-
56
48
  // Initial + interval updates
57
49
  void updateMetrics();
58
50
  updateUptime();
59
51
  updateSubagents();
60
- updateHeartbeat();
61
52
 
62
53
  setInterval(updateMetrics, 2000);
63
- setInterval(updateHeartbeat, 30000);
@@ -5,9 +5,9 @@ import "./exec-B6oWJSJW.js";
5
5
  import "./agent-scope-B6p555mP.js";
6
6
  import "./github-copilot-token-a6a53zx_.js";
7
7
  import "./manifest-registry-DJcKcUQ9.js";
8
- import "./config-Cw7uo7Dh.js";
9
- import "./client-CAz5aPpp.js";
10
- import "./call-Dy_T6f6d.js";
8
+ import "./config-igdtSRrZ.js";
9
+ import "./client-Dp8LUTmF.js";
10
+ import "./call-5IE9ycvm.js";
11
11
  import "./message-channel-CNPAq1Tl.js";
12
12
  import "./pairing-token-Bnr7QjVF.js";
13
13
  import { n as listChannelPlugins } from "./plugins-Bq-Msc8Z.js";
@@ -15,7 +15,7 @@ import { n as formatDurationHuman } from "./format-duration-DbZRICyO.js";
15
15
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs } from "./stagger-C2kEx8j9.js";
16
16
  import { t as formatDocsLink } from "./links-Db3Rw0Tg.js";
17
17
  import "./progress-C4ck6JXh.js";
18
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-B5_ZCiHW.js";
18
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-C1xjWlxu.js";
19
19
  import { n as parsePositiveIntOrUndefined } from "./helpers-DCwtPrez.js";
20
20
 
21
21
  //#region src/cli/cron-cli/shared.ts
@@ -178,7 +178,7 @@ function registerCronListCommand(cron) {
178
178
  }));
179
179
  }
180
180
  function registerCronAddCommand(cron) {
181
- addGatewayClientOptions(cron.command("add").alias("create").description("Add a cron job").requiredOption("--name <name>", "Job name").option("--description <text>", "Optional description").option("--disabled", "Create job disabled", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--agent <id>", "Agent id for this job").option("--session <target>", "Session target (main|isolated)").option("--wake <mode>", "Wake mode (now|next-heartbeat)", "now").option("--at <when>", "Run once at time (ISO) or +duration (e.g. 20m)").option("--every <duration>", "Run every duration (e.g. 10m, 1h)").option("--cron <expr>", "Cron expression (5-field or 6-field with seconds)").option("--tz <iana>", "Timezone for cron expressions (IANA)", "").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)", false).option("--system-event <text>", "System event payload (main session)").option("--message <text>", "Agent message payload").option("--thinking <level>", "Thinking level for agent jobs (off|minimal|low|medium|high)").option("--model <model>", "Model override for agent jobs (provider/model or alias)").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)", false).option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery and skip main-session summary").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`, "last").option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail the job if delivery fails", false).option("--json", "Output JSON", false).action(async (opts, cmd) => {
181
+ addGatewayClientOptions(cron.command("add").alias("create").description("Add a cron job").requiredOption("--name <name>", "Job name").option("--description <text>", "Optional description").option("--disabled", "Create job disabled", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--agent <id>", "Agent id for this job").option("--session <target>", "Session target (main|isolated)").option("--at <when>", "Run once at time (ISO) or +duration (e.g. 20m)").option("--every <duration>", "Run every duration (e.g. 10m, 1h)").option("--cron <expr>", "Cron expression (5-field or 6-field with seconds)").option("--tz <iana>", "Timezone for cron expressions (IANA)", "").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)", false).option("--system-event <text>", "System event payload (main session)").option("--message <text>", "Agent message payload").option("--thinking <level>", "Thinking level for agent jobs (off|minimal|low|medium|high)").option("--model <model>", "Model override for agent jobs (provider/model or alias)").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)", false).option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery and skip main-session summary").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`, "last").option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail the job if delivery fails", false).option("--json", "Output JSON", false).action(async (opts, cmd) => {
182
182
  try {
183
183
  const staggerRaw = typeof opts.stagger === "string" ? opts.stagger.trim() : "";
184
184
  const useExact = Boolean(opts.exact);
@@ -223,8 +223,6 @@ function registerCronAddCommand(cron) {
223
223
  staggerMs
224
224
  };
225
225
  })();
226
- const wakeMode = (typeof opts.wake === "string" ? opts.wake : "now").trim() || "now";
227
- if (wakeMode !== "now" && wakeMode !== "next-heartbeat") throw new Error("--wake must be now or next-heartbeat");
228
226
  const agentId = typeof opts.agent === "string" && opts.agent.trim() ? sanitizeAgentId(opts.agent.trim()) : void 0;
229
227
  const hasAnnounce = Boolean(opts.announce) || opts.deliver === true;
230
228
  const hasNoDeliver = opts.deliver === false;
@@ -266,7 +264,7 @@ function registerCronAddCommand(cron) {
266
264
  agentId,
267
265
  schedule,
268
266
  sessionTarget,
269
- wakeMode,
267
+ wakeMode: "now",
270
268
  payload,
271
269
  delivery: deliveryMode ? {
272
270
  mode: deliveryMode,
@@ -290,7 +288,7 @@ const assignIf = (target, key, value, shouldAssign) => {
290
288
  if (shouldAssign) target[key] = value;
291
289
  };
292
290
  function registerCronEditCommand(cron) {
293
- addGatewayClientOptions(cron.command("edit").description("Edit a cron job (patch fields)").argument("<id>", "Job id").option("--name <name>", "Set name").option("--description <text>", "Set description").option("--enable", "Enable job", false).option("--disable", "Disable job", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--session <target>", "Session target (main|isolated)").option("--agent <id>", "Set agent id").option("--clear-agent", "Unset agent and use default", false).option("--wake <mode>", "Wake mode (now|next-heartbeat)").option("--at <when>", "Set one-shot time (ISO) or duration like 20m").option("--every <duration>", "Set interval duration like 10m").option("--cron <expr>", "Set cron expression").option("--tz <iana>", "Timezone for cron expressions (IANA)").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)").option("--system-event <text>", "Set systemEvent payload").option("--message <text>", "Set agentTurn payload message").option("--thinking <level>", "Thinking level for agent jobs").option("--model <model>", "Model override for agent jobs").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)").option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`).option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail job if delivery fails").option("--no-best-effort-deliver", "Fail job when delivery fails").action(async (id, opts) => {
291
+ addGatewayClientOptions(cron.command("edit").description("Edit a cron job (patch fields)").argument("<id>", "Job id").option("--name <name>", "Set name").option("--description <text>", "Set description").option("--enable", "Enable job", false).option("--disable", "Disable job", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--session <target>", "Session target (main|isolated)").option("--agent <id>", "Set agent id").option("--clear-agent", "Unset agent and use default", false).option("--at <when>", "Set one-shot time (ISO) or duration like 20m").option("--every <duration>", "Set interval duration like 10m").option("--cron <expr>", "Set cron expression").option("--tz <iana>", "Timezone for cron expressions (IANA)").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)").option("--system-event <text>", "Set systemEvent payload").option("--message <text>", "Set agentTurn payload message").option("--thinking <level>", "Thinking level for agent jobs").option("--model <model>", "Model override for agent jobs").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)").option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`).option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail job if delivery fails").option("--no-best-effort-deliver", "Fail job when delivery fails").action(async (id, opts) => {
294
292
  try {
295
293
  if (opts.session === "main" && opts.message) throw new Error("Main jobs cannot use --message; use --system-event or --session isolated.");
296
294
  if (opts.session === "isolated" && opts.systemEvent) throw new Error("Isolated jobs cannot use --system-event; use --message or --session main.");
@@ -315,7 +313,6 @@ function registerCronEditCommand(cron) {
315
313
  if (opts.deleteAfterRun) patch.deleteAfterRun = true;
316
314
  if (opts.keepAfterRun) patch.deleteAfterRun = false;
317
315
  if (typeof opts.session === "string") patch.sessionTarget = opts.session;
318
- if (typeof opts.wake === "string") patch.wakeMode = opts.wake;
319
316
  if (opts.agent && opts.clearAgent) throw new Error("Use --agent or --clear-agent, not both");
320
317
  if (typeof opts.agent === "string" && opts.agent.trim()) patch.agentId = sanitizeAgentId(opts.agent.trim());
321
318
  if (opts.clearAgent) patch.agentId = null;
@@ -9,19 +9,19 @@ import "./agent-scope-DIjW66iO.js";
9
9
  import "./github-copilot-token-BTNK6Tcd.js";
10
10
  import "./boolean-Wzu0-e0P.js";
11
11
  import "./env-B97Ms861.js";
12
- import "./config-MU0QT0xu.js";
12
+ import "./config-DqMsGcSQ.js";
13
13
  import "./manifest-registry-D_LsBSyt.js";
14
14
  import "./message-channel-C_V8IAYx.js";
15
15
  import { n as listChannelPlugins } from "./plugins-DuuHorqi.js";
16
- import "./client-ZZqt0H0-.js";
17
- import "./call-CbF18cyd.js";
16
+ import "./client-qjXXRKCO.js";
17
+ import "./call-BPJn2_th.js";
18
18
  import "./pairing-token-CURbSHdi.js";
19
19
  import { n as formatDurationHuman } from "./format-duration-DbZRICyO.js";
20
20
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs } from "./stagger-BhvnarfO.js";
21
21
  import { t as formatDocsLink } from "./links-CSaUKNKm.js";
22
22
  import "./progress-CyPyGCDn.js";
23
23
  import { n as parsePositiveIntOrUndefined } from "./helpers-BER76F_2.js";
24
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-RZAJMB1i.js";
24
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DD_aXogj.js";
25
25
 
26
26
  //#region src/cli/cron-cli/shared.ts
27
27
  const getCronChannelOptions = () => ["last", ...listChannelPlugins().map((plugin) => plugin.id)].join("|");
@@ -183,7 +183,7 @@ function registerCronListCommand(cron) {
183
183
  }));
184
184
  }
185
185
  function registerCronAddCommand(cron) {
186
- addGatewayClientOptions(cron.command("add").alias("create").description("Add a cron job").requiredOption("--name <name>", "Job name").option("--description <text>", "Optional description").option("--disabled", "Create job disabled", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--agent <id>", "Agent id for this job").option("--session <target>", "Session target (main|isolated)").option("--wake <mode>", "Wake mode (now|next-heartbeat)", "now").option("--at <when>", "Run once at time (ISO) or +duration (e.g. 20m)").option("--every <duration>", "Run every duration (e.g. 10m, 1h)").option("--cron <expr>", "Cron expression (5-field or 6-field with seconds)").option("--tz <iana>", "Timezone for cron expressions (IANA)", "").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)", false).option("--system-event <text>", "System event payload (main session)").option("--message <text>", "Agent message payload").option("--thinking <level>", "Thinking level for agent jobs (off|minimal|low|medium|high)").option("--model <model>", "Model override for agent jobs (provider/model or alias)").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)", false).option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery and skip main-session summary").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`, "last").option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail the job if delivery fails", false).option("--json", "Output JSON", false).action(async (opts, cmd) => {
186
+ addGatewayClientOptions(cron.command("add").alias("create").description("Add a cron job").requiredOption("--name <name>", "Job name").option("--description <text>", "Optional description").option("--disabled", "Create job disabled", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--agent <id>", "Agent id for this job").option("--session <target>", "Session target (main|isolated)").option("--at <when>", "Run once at time (ISO) or +duration (e.g. 20m)").option("--every <duration>", "Run every duration (e.g. 10m, 1h)").option("--cron <expr>", "Cron expression (5-field or 6-field with seconds)").option("--tz <iana>", "Timezone for cron expressions (IANA)", "").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)", false).option("--system-event <text>", "System event payload (main session)").option("--message <text>", "Agent message payload").option("--thinking <level>", "Thinking level for agent jobs (off|minimal|low|medium|high)").option("--model <model>", "Model override for agent jobs (provider/model or alias)").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)", false).option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery and skip main-session summary").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`, "last").option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail the job if delivery fails", false).option("--json", "Output JSON", false).action(async (opts, cmd) => {
187
187
  try {
188
188
  const staggerRaw = typeof opts.stagger === "string" ? opts.stagger.trim() : "";
189
189
  const useExact = Boolean(opts.exact);
@@ -228,8 +228,6 @@ function registerCronAddCommand(cron) {
228
228
  staggerMs
229
229
  };
230
230
  })();
231
- const wakeMode = (typeof opts.wake === "string" ? opts.wake : "now").trim() || "now";
232
- if (wakeMode !== "now" && wakeMode !== "next-heartbeat") throw new Error("--wake must be now or next-heartbeat");
233
231
  const agentId = typeof opts.agent === "string" && opts.agent.trim() ? sanitizeAgentId(opts.agent.trim()) : void 0;
234
232
  const hasAnnounce = Boolean(opts.announce) || opts.deliver === true;
235
233
  const hasNoDeliver = opts.deliver === false;
@@ -271,7 +269,7 @@ function registerCronAddCommand(cron) {
271
269
  agentId,
272
270
  schedule,
273
271
  sessionTarget,
274
- wakeMode,
272
+ wakeMode: "now",
275
273
  payload,
276
274
  delivery: deliveryMode ? {
277
275
  mode: deliveryMode,
@@ -295,7 +293,7 @@ const assignIf = (target, key, value, shouldAssign) => {
295
293
  if (shouldAssign) target[key] = value;
296
294
  };
297
295
  function registerCronEditCommand(cron) {
298
- addGatewayClientOptions(cron.command("edit").description("Edit a cron job (patch fields)").argument("<id>", "Job id").option("--name <name>", "Set name").option("--description <text>", "Set description").option("--enable", "Enable job", false).option("--disable", "Disable job", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--session <target>", "Session target (main|isolated)").option("--agent <id>", "Set agent id").option("--clear-agent", "Unset agent and use default", false).option("--wake <mode>", "Wake mode (now|next-heartbeat)").option("--at <when>", "Set one-shot time (ISO) or duration like 20m").option("--every <duration>", "Set interval duration like 10m").option("--cron <expr>", "Set cron expression").option("--tz <iana>", "Timezone for cron expressions (IANA)").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)").option("--system-event <text>", "Set systemEvent payload").option("--message <text>", "Set agentTurn payload message").option("--thinking <level>", "Thinking level for agent jobs").option("--model <model>", "Model override for agent jobs").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)").option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`).option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail job if delivery fails").option("--no-best-effort-deliver", "Fail job when delivery fails").action(async (id, opts) => {
296
+ addGatewayClientOptions(cron.command("edit").description("Edit a cron job (patch fields)").argument("<id>", "Job id").option("--name <name>", "Set name").option("--description <text>", "Set description").option("--enable", "Enable job", false).option("--disable", "Disable job", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--session <target>", "Session target (main|isolated)").option("--agent <id>", "Set agent id").option("--clear-agent", "Unset agent and use default", false).option("--at <when>", "Set one-shot time (ISO) or duration like 20m").option("--every <duration>", "Set interval duration like 10m").option("--cron <expr>", "Set cron expression").option("--tz <iana>", "Timezone for cron expressions (IANA)").option("--stagger <duration>", "Cron stagger window (e.g. 30s, 5m)").option("--exact", "Disable cron staggering (set stagger to 0)").option("--system-event <text>", "Set systemEvent payload").option("--message <text>", "Set agentTurn payload message").option("--thinking <level>", "Thinking level for agent jobs").option("--model <model>", "Model override for agent jobs").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)").option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`).option("--to <dest>", "Delivery destination (E.164 phone, Telegram chatId, etc.)").option("--best-effort-deliver", "Do not fail job if delivery fails").option("--no-best-effort-deliver", "Fail job when delivery fails").action(async (id, opts) => {
299
297
  try {
300
298
  if (opts.session === "main" && opts.message) throw new Error("Main jobs cannot use --message; use --system-event or --session isolated.");
301
299
  if (opts.session === "isolated" && opts.systemEvent) throw new Error("Isolated jobs cannot use --system-event; use --message or --session main.");
@@ -320,7 +318,6 @@ function registerCronEditCommand(cron) {
320
318
  if (opts.deleteAfterRun) patch.deleteAfterRun = true;
321
319
  if (opts.keepAfterRun) patch.deleteAfterRun = false;
322
320
  if (typeof opts.session === "string") patch.sessionTarget = opts.session;
323
- if (typeof opts.wake === "string") patch.wakeMode = opts.wake;
324
321
  if (opts.agent && opts.clearAgent) throw new Error("Use --agent or --clear-agent, not both");
325
322
  if (typeof opts.agent === "string" && opts.agent.trim()) patch.agentId = sanitizeAgentId(opts.agent.trim());
326
323
  if (opts.clearAgent) patch.agentId = null;
@@ -4,23 +4,23 @@ import { d as resolveIsNixMode, g as resolveStateDir, o as resolveConfigPath, u
4
4
  import { v as shortenHomePath } from "./utils-BU8jVQFM.js";
5
5
  import { f as defaultRuntime } from "./subsystem-CtH6J8AV.js";
6
6
  import { t as formatCliCommand } from "./command-format-BvAkTjTI.js";
7
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, r as createConfigIO } from "./config-MU0QT0xu.js";
7
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, r as createConfigIO } from "./config-DqMsGcSQ.js";
8
8
  import { n as pickPrimaryTailnetIPv4 } from "./tailnet-LYvn9g3I.js";
9
9
  import { u as resolveGatewayBindHost } from "./ws-CahTJvD6.js";
10
10
  import { a as resolveGatewayAuth } from "./auth-BbwD4lRX.js";
11
11
  import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-DqxP-bXz.js";
12
12
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-C_V8IAYx.js";
13
- import { n as callGateway } from "./call-CbF18cyd.js";
13
+ import { n as callGateway } from "./call-BPJn2_th.js";
14
14
  import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName } from "./constants-DsZw7bas.js";
15
15
  import { t as formatDocsLink } from "./links-CSaUKNKm.js";
16
16
  import { n as withProgress } from "./progress-CyPyGCDn.js";
17
17
  import { n as inheritOptionFromParent } from "./command-options-ChiIn6Na.js";
18
- import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DDwhgI7i.js";
19
- import { g as resolveControlUiLinks, h as randomToken } from "./onboard-helpers-DpIB1xVU.js";
18
+ import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BpfA4d6Q.js";
19
+ import { g as resolveControlUiLinks, h as randomToken } from "./onboard-helpers-CHfdRdZR.js";
20
20
  import { n as isWSLEnv } from "./wsl-ZWGwnnKI.js";
21
21
  import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-AP9pR9R5.js";
22
- import { a as createCliStatusTextStyles, c as parsePortFromArgs, d as renderRuntimeHints, f as resolveRuntimeStatusColor, g as installDaemonServiceAndEmit, h as createDaemonActionContext, i as runServiceUninstall, l as pickProbeHostForBind, m as buildDaemonServiceSnapshot, n as runServiceStart, o as filterDaemonEnv, p as safeDaemonEnv, r as runServiceStop, s as normalizeListenerAddress, t as runServiceRestart, u as renderGatewayServiceStartHints } from "./lifecycle-core-B9_prcP5.js";
23
- import { i as auditGatewayServiceConfig, n as renderSystemdUnavailableHints, s as formatRuntimeStatus, t as isSystemdUnavailableDetail } from "./systemd-hints-RoqMZFFM.js";
22
+ import { a as createCliStatusTextStyles, c as parsePortFromArgs, d as renderRuntimeHints, f as resolveRuntimeStatusColor, g as installDaemonServiceAndEmit, h as createDaemonActionContext, i as runServiceUninstall, l as pickProbeHostForBind, m as buildDaemonServiceSnapshot, n as runServiceStart, o as filterDaemonEnv, p as safeDaemonEnv, r as runServiceStop, s as normalizeListenerAddress, t as runServiceRestart, u as renderGatewayServiceStartHints } from "./lifecycle-core-BEmljRfh.js";
23
+ import { i as auditGatewayServiceConfig, n as renderSystemdUnavailableHints, s as formatRuntimeStatus, t as isSystemdUnavailableDetail } from "./systemd-hints-A1W3AdVo.js";
24
24
  import { t as parsePort } from "./parse-port-CykvIgQu.js";
25
25
  import { t as readLastGatewayErrorLine } from "./diagnostics-DxdqTfpW.js";
26
26
  import { n as renderGatewayServiceCleanupHints, t as findExtraGatewayServices } from "./inspect-BDzd6yBs.js";
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Lt as shortenHomePath, Q as theme, X as colorize, Z as isRich, _ as defaultRuntime, ct as resolveConfigPath, ft as resolveGatewayPort, pt as resolveIsNixMode, tt as getResolvedLoggerSettings, vt as resolveStateDir } from "./entry.js";
3
3
  import { t as formatCliCommand } from "./command-format-Xm6vX3qJ.js";
4
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, r as createConfigIO } from "./config-Cw7uo7Dh.js";
5
- import { n as callGateway } from "./call-Dy_T6f6d.js";
4
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, r as createConfigIO } from "./config-igdtSRrZ.js";
5
+ import { n as callGateway } from "./call-5IE9ycvm.js";
6
6
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CNPAq1Tl.js";
7
7
  import { l as resolveGatewayBindHost } from "./net-DZ5Ayk-W.js";
8
8
  import { n as pickPrimaryTailnetIPv4 } from "./tailnet-Cmumpn76.js";
@@ -12,12 +12,12 @@ import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceN
12
12
  import { t as formatDocsLink } from "./links-Db3Rw0Tg.js";
13
13
  import { n as withProgress } from "./progress-C4ck6JXh.js";
14
14
  import { n as inheritOptionFromParent } from "./command-options-BtJGezJl.js";
15
- import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CkBw3gG5.js";
16
- import { g as resolveControlUiLinks, h as randomToken } from "./onboard-helpers-C5YryU1N.js";
15
+ import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-2Y9RfgcP.js";
16
+ import { g as resolveControlUiLinks, h as randomToken } from "./onboard-helpers-Bm-oyLWy.js";
17
17
  import { n as isWSLEnv } from "./wsl-DehumVkT.js";
18
18
  import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-BIixwO-v.js";
19
- import { a as createCliStatusTextStyles, c as parsePortFromArgs, d as renderRuntimeHints, f as resolveRuntimeStatusColor, g as installDaemonServiceAndEmit, h as createDaemonActionContext, i as runServiceUninstall, l as pickProbeHostForBind, m as buildDaemonServiceSnapshot, n as runServiceStart, o as filterDaemonEnv, p as safeDaemonEnv, r as runServiceStop, s as normalizeListenerAddress, t as runServiceRestart, u as renderGatewayServiceStartHints } from "./lifecycle-core-Dark4HHr.js";
20
- import { i as auditGatewayServiceConfig, n as renderSystemdUnavailableHints, s as formatRuntimeStatus, t as isSystemdUnavailableDetail } from "./systemd-hints-DQKA3tTS.js";
19
+ import { a as createCliStatusTextStyles, c as parsePortFromArgs, d as renderRuntimeHints, f as resolveRuntimeStatusColor, g as installDaemonServiceAndEmit, h as createDaemonActionContext, i as runServiceUninstall, l as pickProbeHostForBind, m as buildDaemonServiceSnapshot, n as runServiceStart, o as filterDaemonEnv, p as safeDaemonEnv, r as runServiceStop, s as normalizeListenerAddress, t as runServiceRestart, u as renderGatewayServiceStartHints } from "./lifecycle-core-uN2bsrZs.js";
20
+ import { i as auditGatewayServiceConfig, n as renderSystemdUnavailableHints, s as formatRuntimeStatus, t as isSystemdUnavailableDetail } from "./systemd-hints-BejQ6J2Y.js";
21
21
  import { t as parsePort } from "./parse-port-DQ6H4gFT.js";
22
22
  import { t as readLastGatewayErrorLine } from "./diagnostics-DELEpbg2.js";
23
23
  import { n as renderGatewayServiceCleanupHints, t as findExtraGatewayServices } from "./inspect-34eBJ_Nm.js";
@@ -5866,7 +5866,6 @@ const HookMappingSchema = z.object({
5866
5866
  source: z.string().optional()
5867
5867
  }).optional(),
5868
5868
  action: z.union([z.literal("wake"), z.literal("agent")]).optional(),
5869
- wakeMode: z.union([z.literal("now"), z.literal("next-heartbeat")]).optional(),
5870
5869
  name: z.string().optional(),
5871
5870
  agentId: z.string().optional(),
5872
5871
  sessionKey: z.string().optional().register(sensitive),
@@ -6743,7 +6742,6 @@ const SymiSchema = z.object({
6743
6742
  }).strict().optional(),
6744
6743
  web: z.object({
6745
6744
  enabled: z.boolean().optional(),
6746
- heartbeatSeconds: z.number().int().positive().optional(),
6747
6745
  reconnect: z.object({
6748
6746
  initialMs: z.number().positive().optional(),
6749
6747
  maxMs: z.number().positive().optional(),
@@ -8811,10 +8809,7 @@ const AgentWaitParamsSchema = Type.Object({
8811
8809
  runId: NonEmptyString,
8812
8810
  timeoutMs: Type.Optional(Type.Integer({ minimum: 0 }))
8813
8811
  }, { additionalProperties: false });
8814
- const WakeParamsSchema = Type.Object({
8815
- mode: Type.Union([Type.Literal("now"), Type.Literal("next-heartbeat")]),
8816
- text: NonEmptyString
8817
- }, { additionalProperties: false });
8812
+ const WakeParamsSchema = Type.Object({ text: NonEmptyString }, { additionalProperties: false });
8818
8813
 
8819
8814
  //#endregion
8820
8815
  //#region src/gateway/protocol/schema/agents-models-skills.ts
@@ -9069,7 +9064,7 @@ function cronAgentTurnPayloadSchema(params) {
9069
9064
  }, { additionalProperties: false });
9070
9065
  }
9071
9066
  const CronSessionTargetSchema = Type.Union([Type.Literal("main"), Type.Literal("isolated")]);
9072
- const CronWakeModeSchema = Type.Union([Type.Literal("next-heartbeat"), Type.Literal("now")]);
9067
+ const CronWakeModeSchema = Type.Literal("now");
9073
9068
  const CronCommonOptionalFields = {
9074
9069
  agentId: Type.Optional(Type.Union([NonEmptyString, Type.Null()])),
9075
9070
  sessionKey: Type.Optional(Type.Union([NonEmptyString, Type.Null()])),
@@ -10290,7 +10285,6 @@ const METHOD_SCOPE_GROUPS = {
10290
10285
  "cron.runs",
10291
10286
  "tasks.list",
10292
10287
  "system-presence",
10293
- "last-heartbeat",
10294
10288
  "node.list",
10295
10289
  "node.describe",
10296
10290
  "chat.history",
@@ -10338,7 +10332,6 @@ const METHOD_SCOPE_GROUPS = {
10338
10332
  "chat.inject",
10339
10333
  "web.login.start",
10340
10334
  "web.login.wait",
10341
- "set-heartbeats",
10342
10335
  "system-event",
10343
10336
  "agents.files.set"
10344
10337
  ]
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-Xm6vX3qJ.js";
2
- import { N as VERSION, k as collectConfigServiceEnvVars } from "./config-Cw7uo7Dh.js";
2
+ import { N as VERSION, k as collectConfigServiceEnvVars } from "./config-igdtSRrZ.js";
3
3
  import { a as NODE_SERVICE_MARKER, c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, g as resolveNodeWindowsTaskName, h as resolveNodeSystemdServiceName, i as NODE_SERVICE_KIND, m as resolveNodeLaunchAgentLabel, n as GATEWAY_SERVICE_KIND, o as NODE_WINDOWS_TASK_SCRIPT_NAME, r as GATEWAY_SERVICE_MARKER } from "./constants-C0e51aio.js";
4
4
  import { n as isSupportedNodeVersion } from "./runtime-guard-p4-FMx0l.js";
5
5
  import { execFile } from "node:child_process";
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-BvAkTjTI.js";
2
- import { N as VERSION, k as collectConfigServiceEnvVars } from "./config-MU0QT0xu.js";
2
+ import { N as VERSION, k as collectConfigServiceEnvVars } from "./config-DqMsGcSQ.js";
3
3
  import { a as NODE_SERVICE_MARKER, c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, g as resolveNodeWindowsTaskName, h as resolveNodeSystemdServiceName, i as NODE_SERVICE_KIND, m as resolveNodeLaunchAgentLabel, n as GATEWAY_SERVICE_KIND, o as NODE_WINDOWS_TASK_SCRIPT_NAME, r as GATEWAY_SERVICE_MARKER } from "./constants-DsZw7bas.js";
4
4
  import { n as isSupportedNodeVersion } from "./runtime-guard-BZ3_1QqS.js";
5
5
  import path from "node:path";
@@ -7,8 +7,8 @@ import { r as defaultRuntime, t as createSubsystemLogger } from "./subsystem-DzR
7
7
  import { _ as runExec, a as DEFAULT_SYMICORE_FILENAME, c as DEFAULT_USER_FILENAME, i as DEFAULT_IDENTITY_FILENAME, l as ensureAgentWorkspace, n as DEFAULT_AGENT_WORKSPACE_DIR, o as DEFAULT_SYMIPULSE_FILENAME, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_TOOLS_FILENAME, t as DEFAULT_AGENTS_FILENAME } from "./workspace-CsaDUuDn.js";
8
8
  import { g as isPidAlive, h as resolveProcessScopedMap, tt as formatCliCommand } from "./auth-profiles-Boy_KMd1.js";
9
9
  import { t as parseBooleanValue } from "./boolean-mcn6kL0s.js";
10
- import { c as loadConfig, d as writeConfigFile, m as parseByteSize, p as parseDurationMs, s as createConfigIO, t as SsrFBlockedError } from "./ssrf-BzPY2FrA.js";
11
- import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-C0vnHDyY.js";
10
+ import { c as loadConfig, d as writeConfigFile, m as parseByteSize, p as parseDurationMs, s as createConfigIO, t as SsrFBlockedError } from "./ssrf-CeQ2Aub-.js";
11
+ import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-B4P7ycw5.js";
12
12
  import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-DaU_5XvP.js";
13
13
  import { n as formatErrorMessage, t as extractErrorCode } from "./errors-BkfLlDKo.js";
14
14
  import { b as SafeOpenError, d as extensionForMime, i as buildImageResizeSideGrid, l as resizeToJpeg, o as getImageMetadata, r as IMAGE_REDUCE_QUALITY_STEPS, t as getAgentScopedMediaLocalRoots, u as detectMime, x as openFileWithinRoot } from "./local-roots-BCTg2O-a.js";
@@ -938,7 +938,7 @@ function isModuleNotFoundError(err) {
938
938
  }
939
939
  async function loadPwAiModule(mode) {
940
940
  try {
941
- return await import("./pw-ai-Bc5uzn_J.js");
941
+ return await import("./pw-ai-BsEf8C15.js");
942
942
  } catch (err) {
943
943
  if (mode === "soft") return null;
944
944
  if (isModuleNotFoundError(err)) return null;
@@ -3535,11 +3535,11 @@ function createProfileContext(opts, profile) {
3535
3535
  const userDataDir = resolveSymiUserDataDir(profile.name);
3536
3536
  const profileState = getProfileState();
3537
3537
  if (await isHttpReachable(300) && !profileState.running) try {
3538
- await (await import("./pw-ai-Bc5uzn_J.js")).closePlaywrightBrowserConnection();
3538
+ await (await import("./pw-ai-BsEf8C15.js")).closePlaywrightBrowserConnection();
3539
3539
  } catch {}
3540
3540
  if (profileState.running) await stopRunningBrowser();
3541
3541
  try {
3542
- await (await import("./pw-ai-Bc5uzn_J.js")).closePlaywrightBrowserConnection();
3542
+ await (await import("./pw-ai-BsEf8C15.js")).closePlaywrightBrowserConnection();
3543
3543
  } catch {}
3544
3544
  if (!fs.existsSync(userDataDir)) return {
3545
3545
  moved: false,
@@ -8,8 +8,8 @@ import { J as resolveProcessScopedMap, N as parseBooleanValue, Q as formatCliCom
8
8
  import { t as normalizeChatType } from "./chat-type-C_KiWNAH.js";
9
9
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Cp39v6b_.js";
10
10
  import { _ as listDeliverableMessageChannels, c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph, v as normalizeMessageChannel } from "./chunk-BjnT3w_x.js";
11
- import { c as loadConfig, d as writeConfigFile, m as parseByteSize, p as parseDurationMs, s as createConfigIO, t as SsrFBlockedError } from "./ssrf-CJor4ewC.js";
12
- import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-BWQSyLHT.js";
11
+ import { c as loadConfig, d as writeConfigFile, m as parseByteSize, p as parseDurationMs, s as createConfigIO, t as SsrFBlockedError } from "./ssrf-CBajKNWO.js";
12
+ import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-CQn8fDIy.js";
13
13
  import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-Bn0f9KTL.js";
14
14
  import { n as formatErrorMessage, t as extractErrorCode } from "./errors-C6sHIFo_.js";
15
15
  import { C as openFileWithinRoot, S as SafeOpenError, a as IMAGE_REDUCE_QUALITY_STEPS, c as getImageMetadata, d as resizeToJpeg, f as detectMime, n as isSilentReplyText, o as buildImageResizeSideGrid, p as extensionForMime, r as getAgentScopedMediaLocalRoots, t as SILENT_REPLY_TOKEN } from "./tokens-Dm_xa-oz.js";
@@ -1329,7 +1329,7 @@ function isModuleNotFoundError(err) {
1329
1329
  }
1330
1330
  async function loadPwAiModule(mode) {
1331
1331
  try {
1332
- return await import("./pw-ai-CNOE7SUx.js");
1332
+ return await import("./pw-ai-BB1pJj9_.js");
1333
1333
  } catch (err) {
1334
1334
  if (mode === "soft") return null;
1335
1335
  if (isModuleNotFoundError(err)) return null;
@@ -3926,11 +3926,11 @@ function createProfileContext(opts, profile) {
3926
3926
  const userDataDir = resolveSymiUserDataDir(profile.name);
3927
3927
  const profileState = getProfileState();
3928
3928
  if (await isHttpReachable(300) && !profileState.running) try {
3929
- await (await import("./pw-ai-CNOE7SUx.js")).closePlaywrightBrowserConnection();
3929
+ await (await import("./pw-ai-BB1pJj9_.js")).closePlaywrightBrowserConnection();
3930
3930
  } catch {}
3931
3931
  if (profileState.running) await stopRunningBrowser();
3932
3932
  try {
3933
- await (await import("./pw-ai-CNOE7SUx.js")).closePlaywrightBrowserConnection();
3933
+ await (await import("./pw-ai-BB1pJj9_.js")).closePlaywrightBrowserConnection();
3934
3934
  } catch {}
3935
3935
  if (!fs.existsSync(userDataDir)) return {
3936
3936
  moved: false,
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { H as createInternalHookEvent, W as triggerInternalHook, d as getActivePluginRegistry } from "./registry-DKJLAPDB.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-CtH6J8AV.js";
4
- import { i as resolveMirroredTranscriptText, r as appendAssistantMessageToSessionTranscript } from "./sessions-B7Of0Rqm.js";
4
+ import { i as resolveMirroredTranscriptText, r as appendAssistantMessageToSessionTranscript } from "./sessions-Dh88Kqd6.js";
5
5
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DuuHorqi.js";
6
6
  import { n as isSilentReplyText, t as SILENT_REPLY_TOKEN } from "./tokens-BKbemuIk.js";
7
7
  import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-DQGU0F8t.js";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Gt as triggerInternalHook, M as getActivePluginRegistry, Ut as createInternalHookEvent, o as createSubsystemLogger } from "./entry.js";
3
- import { i as resolveMirroredTranscriptText, r as appendAssistantMessageToSessionTranscript } from "./sessions-BHrlpR92.js";
3
+ import { i as resolveMirroredTranscriptText, r as appendAssistantMessageToSessionTranscript } from "./sessions-BNEDanZO.js";
4
4
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Bq-Msc8Z.js";
5
5
  import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-BySyfaEr.js";
6
6
  import { t as getAgentScopedMediaLocalRoots } from "./local-roots-Bk3321gv.js";
@@ -1,7 +1,7 @@
1
1
  //#region src/cli/deps.ts
2
2
  function createDefaultDeps() {
3
3
  return { sendMessageSlack: async (...args) => {
4
- const { sendMessageSlack } = await import("./send-zbkImdk9.js").then((n) => n.n);
4
+ const { sendMessageSlack } = await import("./send-DSK6O8SC.js").then((n) => n.n);
5
5
  return await sendMessageSlack(...args);
6
6
  } };
7
7
  }