@symerian/symi 2.8.3 → 2.8.4

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 (188) hide show
  1. package/dist/{agents-Qr0BDw_h.js → agents-DWuqUDaG.js} +4 -4
  2. package/dist/{agents.config-DIjsIDbS.js → agents.config-B8euVOOW.js} +1 -1
  3. package/dist/{agents.config-D0ih9tP3.js → agents.config-DWsjuONZ.js} +1 -1
  4. package/dist/{audio-preflight-DfALITTK.js → audio-preflight-BQaUmV6k.js} +5 -5
  5. package/dist/{audio-preflight-DJXj9QP9.js → audio-preflight-CKbpf-IL.js} +5 -5
  6. package/dist/{audio-preflight-DIXDvyz5.js → audio-preflight-D0nJ1LEt.js} +4 -4
  7. package/dist/{audio-preflight-lr-WPpc9.js → audio-preflight-D_g9Duqw.js} +4 -4
  8. package/dist/{audit-DgAM_dWL.js → audit-BIeVybsA.js} +2 -2
  9. package/dist/{audit-DVUHZrf4.js → audit-DCOp_J5K.js} +2 -2
  10. package/dist/{auth-choice-PdYn-qiM.js → auth-choice-hKVjPWaU.js} +1 -1
  11. package/dist/{auth-choice-DhI8MW-5.js → auth-choice-kpk3L0TR.js} +1 -1
  12. package/dist/{banner-BQhYK_Ag.js → banner-C1RFNTRm.js} +1 -1
  13. package/dist/build-info.json +3 -3
  14. package/dist/bundled/boot-md/handler.js +6 -6
  15. package/dist/bundled/session-memory/handler.js +6 -6
  16. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  17. package/dist/{channel-options-CFwo8sFR.js → channel-options-Pit7RtN-.js} +1 -1
  18. package/dist/{channel-options-ZHpChVVk.js → channel-options-Vjegw-bn.js} +1 -1
  19. package/dist/{channel-web-UmRhDGhI.js → channel-web-BVm_UWyj.js} +3 -3
  20. package/dist/{channels-cli-CRDgQtex.js → channels-cli-Bh07AMec.js} +11 -11
  21. package/dist/{channels-cli-rzQvsXSw.js → channels-cli-CXws5tG8.js} +12 -12
  22. package/dist/{chrome-B14NNyfm.js → chrome-BUT--ob3.js} +7 -7
  23. package/dist/{chrome-ROtrXlNs.js → chrome-C08Z0XAa.js} +7 -7
  24. package/dist/{cli-CC9jaj6w.js → cli-D5qinxg-.js} +8 -8
  25. package/dist/{cli-DN6fX0Xu.js → cli-TABOKnEJ.js} +9 -9
  26. package/dist/{command-registry-qqb2gJ4P.js → command-registry-DEe4juCf.js} +9 -9
  27. package/dist/{completion-cli-g-Vdnude.js → completion-cli-D0j-46vF.js} +2 -2
  28. package/dist/{completion-cli-BX_yaiom.js → completion-cli-W3fyiL94.js} +1 -1
  29. package/dist/{config-cli-CsCvDCZV.js → config-cli-CajteLy8.js} +1 -1
  30. package/dist/{config-cli-CnFTSv-1.js → config-cli-DLBtnr_W.js} +1 -1
  31. package/dist/{config-guard-DsOhmFl6.js → config-guard-BJE6xSY9.js} +2 -2
  32. package/dist/{config-guard-CJ4iAPK5.js → config-guard-DjlYIjka.js} +1 -1
  33. package/dist/{configure-CAuW3YmR.js → configure-2PdZnKO6.js} +3 -3
  34. package/dist/{configure-BYd07Mo5.js → configure-B79KjBCS.js} +3 -3
  35. package/dist/control-ui/js/app.js +24 -4
  36. package/dist/control-ui/js/render.js +9 -2
  37. package/dist/{deliver-DrC7tG6s.js → deliver-B36OzmeP.js} +1 -1
  38. package/dist/{deliver-BC3liFsT.js → deliver-CLZGlRZt.js} +1 -1
  39. package/dist/{deliver-lG9ITE8w.js → deliver-CXpvGXqJ.js} +2 -2
  40. package/dist/{deliver-BLt_liXS.js → deliver-CiL9mQXH.js} +2 -2
  41. package/dist/{doctor-completion-Cqce5h2X.js → doctor-completion-DOnUbTdS.js} +1 -1
  42. package/dist/{doctor-completion-Dqfl4aR1.js → doctor-completion-mlj3aq0W.js} +1 -1
  43. package/dist/{doctor-config-flow-CN8seKLA.js → doctor-config-flow-BRB_O0jG.js} +1 -1
  44. package/dist/{doctor-config-flow-C81j0-sE.js → doctor-config-flow-DFk-NaP5.js} +1 -1
  45. package/dist/entry.js +1 -1
  46. package/dist/extensionAPI.js +6 -6
  47. package/dist/{gateway-cli-DA1fRZ5w.js → gateway-cli-D7jQypRh.js} +19 -19
  48. package/dist/{gateway-cli-BUqL_Yh6.js → gateway-cli-nHVe7vxD.js} +18 -18
  49. package/dist/{glass-ui-ws-Cm-WtdFI.js → glass-ui-ws-BgVPCNjg.js} +16 -16
  50. package/dist/{glass-ui-ws-BzBtCYP7.js → glass-ui-ws-CMMnvVpl.js} +15 -15
  51. package/dist/{health-Bx8UUqFA.js → health-DKxSHkOQ.js} +3 -3
  52. package/dist/{health-C7HtwYDj.js → health-DvkoG4Dw.js} +3 -3
  53. package/dist/{hooks-cli-5G9JN39f.js → hooks-cli-DV1GeJpO.js} +9 -9
  54. package/dist/{hooks-cli-DtVT3wM_.js → hooks-cli-DsWn_3um.js} +10 -10
  55. package/dist/{image-CKeN0xJL.js → image-BHhzdmbq.js} +1 -1
  56. package/dist/{image-C6v6m8Id.js → image-BnO8X_hj.js} +1 -1
  57. package/dist/{image-D_qN_IxA.js → image-C2IvljWU.js} +1 -1
  58. package/dist/{image-DXco5IYt.js → image-CJ_QZqzR.js} +1 -1
  59. package/dist/index.js +14 -14
  60. package/dist/llm-slug-generator.js +6 -6
  61. package/dist/{models-DQthIpnz.js → models-BohMMqeG.js} +2 -2
  62. package/dist/{models-cli-D8zc0jSg.js → models-cli-CJywE4w7.js} +11 -11
  63. package/dist/{models-cli-UaHeUaJq.js → models-cli-DabormMV.js} +9 -9
  64. package/dist/{onboard-sl1Xputw.js → onboard-CyuUucGA.js} +2 -2
  65. package/dist/{onboard-channels-CUUTFx1F.js → onboard-channels-DU6do-N5.js} +1 -1
  66. package/dist/{onboard-channels-HyGv2y5c.js → onboard-channels-DaY1NwXd.js} +1 -1
  67. package/dist/{onboard-C1GtzpAc.js → onboard-ygIcreY9.js} +2 -2
  68. package/dist/{onboarding-B4qg0ZYp.js → onboarding-BfeyfvK_.js} +4 -4
  69. package/dist/{onboarding-C89rTOOy.js → onboarding-Bqz1NgoR.js} +4 -4
  70. package/dist/{onboarding.finalize-ClJ1HBVt.js → onboarding.finalize-CG0xwhEw.js} +13 -13
  71. package/dist/{onboarding.finalize-CGk4vov2.js → onboarding.finalize-DzTo4LEo.js} +15 -15
  72. package/dist/{onboarding.gateway-config-TM8ERKyn.js → onboarding.gateway-config-7LGxdDrq.js} +1 -1
  73. package/dist/{onboarding.gateway-config-vGTQDqA6.js → onboarding.gateway-config-DJJRuyZ_.js} +1 -1
  74. package/dist/{pi-embedded-BIATvD3R.js → pi-embedded-BaNpG0Aq.js} +16 -16
  75. package/dist/{pi-embedded-helpers-D8YgtMdl.js → pi-embedded-helpers-BET359cH.js} +4 -4
  76. package/dist/{pi-embedded-helpers-BUNbSNWw.js → pi-embedded-helpers-DcN8GHTt.js} +4 -4
  77. package/dist/{pi-embedded-helpers-DpOccVre.js → pi-embedded-helpers-DiXXYmgo.js} +1 -1
  78. package/dist/{pi-embedded-helpers-DSscUmkR.js → pi-embedded-helpers-jo_kKs-Z.js} +1 -1
  79. package/dist/{pi-tools.policy-DOVQ8dDx.js → pi-tools.policy-CGVKAOoE.js} +1 -1
  80. package/dist/{pi-tools.policy-BpN-v9bT.js → pi-tools.policy-p7LLu64F.js} +1 -1
  81. package/dist/{plugin-registry-7MeuYUTG.js → plugin-registry-DG2IOSY3.js} +1 -1
  82. package/dist/{plugin-registry-Dx8MaVaX.js → plugin-registry-DTm-oyEP.js} +1 -1
  83. package/dist/{plugins-cli-oatWFlGr.js → plugins-cli-BJpemLCS.js} +9 -9
  84. package/dist/{plugins-cli-bblxpPhT.js → plugins-cli-BrHhfpbX.js} +10 -10
  85. package/dist/{program-B4MbPh6k.js → program-CYzFuO3w.js} +16 -16
  86. package/dist/{program-context-BfdA1JM9.js → program-context-G2iHoB5D.js} +20 -20
  87. package/dist/{prompt-select-styled-bMJTZkj7.js → prompt-select-styled-P0KS75Rt.js} +7 -7
  88. package/dist/{prompt-select-styled-DNhjvdZL.js → prompt-select-styled-lVyrkSPI.js} +7 -7
  89. package/dist/{provider-auth-helpers-D9BOiQMP.js → provider-auth-helpers-CoYjxsb2.js} +1 -1
  90. package/dist/{provider-auth-helpers-CezJXPrZ.js → provider-auth-helpers-Cygsm5_L.js} +1 -1
  91. package/dist/{push-apns-CL2MBhWP.js → push-apns-BMfcGm-A.js} +1 -1
  92. package/dist/{push-apns-DUWtWoB-.js → push-apns-CHM_4e6x.js} +1 -1
  93. package/dist/{pw-ai-BLrC_W1X.js → pw-ai-B476LzSK.js} +1 -1
  94. package/dist/{pw-ai-DTmHAKPA.js → pw-ai-DE8wmtet.js} +1 -1
  95. package/dist/{register.agent-B-v1ixge.js → register.agent-BTmY2MoW.js} +14 -14
  96. package/dist/{register.agent-Dms0oymW.js → register.agent-efba5ajU.js} +12 -12
  97. package/dist/{register.configure-CVct6y53.js → register.configure-DHSfWAqs.js} +14 -14
  98. package/dist/{register.configure-MY0P8ucP.js → register.configure-EQOE0vHS.js} +13 -13
  99. package/dist/{register.maintenance-DpSSW9tp.js → register.maintenance-CsczzIEq.js} +17 -17
  100. package/dist/{register.maintenance-Ciblsa6H.js → register.maintenance-CzcgKkH3.js} +15 -15
  101. package/dist/{register.message-FsBEsQeD.js → register.message-Bc3A_dfj.js} +9 -9
  102. package/dist/{register.message-Csn-WBH0.js → register.message-u6gwfQPX.js} +10 -10
  103. package/dist/{register.onboard-BQ-ciW9l.js → register.onboard-CtKNq5I_.js} +12 -12
  104. package/dist/{register.onboard-MIhaldvp.js → register.onboard-yDsskHey.js} +11 -11
  105. package/dist/{register.setup-M0O0Tp-n.js → register.setup-BJqk3N2q.js} +12 -12
  106. package/dist/{register.setup-DCTamI7u.js → register.setup-BPeB8JTw.js} +11 -11
  107. package/dist/{register.status-health-sessions-DzKtjfA-.js → register.status-health-sessions-CU6Uv3iO.js} +13 -13
  108. package/dist/{register.status-health-sessions-Drc5WQGq.js → register.status-health-sessions-KzzMJ0H1.js} +11 -11
  109. package/dist/{register.subclis-Btg8-Nnf.js → register.subclis-C_464foT.js} +12 -12
  110. package/dist/{reply-B0azB7WR.js → reply-kWKTXRkY.js} +14 -14
  111. package/dist/{run-main-DfxDXt2d.js → run-main-I-kj1_yf.js} +25 -25
  112. package/dist/{runner-COpebDew.js → runner-BVgCl6yZ.js} +1 -1
  113. package/dist/{runner-CSdQSvE8.js → runner-BopCEjwB.js} +1 -1
  114. package/dist/{runner-QX0Z6K1w.js → runner-D5nFF9E6.js} +1 -1
  115. package/dist/{runner-C_BlQ2fG.js → runner-eBF6SlQ6.js} +1 -1
  116. package/dist/{sandbox-CDxHBl3I.js → sandbox-Cl2r-bXv.js} +1 -1
  117. package/dist/{sandbox-cli-BpfYaZBG.js → sandbox-cli-BH45SMwC.js} +2 -2
  118. package/dist/{sandbox-cli-0eu7BCa8.js → sandbox-cli-CZSrSTkk.js} +2 -2
  119. package/dist/{sandbox-BOVopTqv.js → sandbox-ooxzsj2D.js} +1 -1
  120. package/dist/{security-cli-CzWHkrqD.js → security-cli-Bz-Sv5-H.js} +4 -4
  121. package/dist/{security-cli-B5s73Le2.js → security-cli-CEI0zQJs.js} +4 -4
  122. package/dist/{server-methods-OJbQNjOJ.js → server-methods-DQHU-PVR.js} +11 -11
  123. package/dist/{server-methods-BcBroG6v.js → server-methods-DuXvSLX-.js} +10 -10
  124. package/dist/{server-node-events-AVxH5dXs.js → server-node-events-CwAM91fd.js} +9 -9
  125. package/dist/{server-node-events-Ba9K9DB9.js → server-node-events-ecaGjg5E.js} +10 -10
  126. package/dist/{session-utils-BPXkhuNM.js → session-utils-Dwt6eGX6.js} +1 -1
  127. package/dist/{sessions-NTd36-CO.js → sessions-DQxygr94.js} +2 -2
  128. package/dist/{sessions-BPD85pWA.js → sessions-Do060W3W.js} +3 -2
  129. package/dist/{sessions-BeYHj0gr.js → sessions-vYQs1OzE.js} +3 -2
  130. package/dist/{status-CpWkGj5h.js → status-CW9LMA2M.js} +1 -1
  131. package/dist/{status-DNxAYvxM.js → status-DNVKHGLC.js} +1 -1
  132. package/dist/{status-Ut-dfDT0.js → status-DsFAg-bK.js} +5 -5
  133. package/dist/{status-RlJA2XzQ.js → status-v8DOdpX6.js} +4 -4
  134. package/dist/{subagent-registry-CsYeP8wc.js → subagent-registry-C8UsZ8F0.js} +15 -15
  135. package/dist/{tui-DfPeXwah.js → tui-B61kHmM2.js} +2 -2
  136. package/dist/{tui-LZPdrFmK.js → tui-CiGfEtDa.js} +2 -2
  137. package/dist/{tui-cli-Bm3TJgXf.js → tui-cli-CwNXfDnk.js} +4 -4
  138. package/dist/{tui-cli-DFXZ7r1F.js → tui-cli-DHKMCeGp.js} +4 -4
  139. package/dist/{unified-runner-CUXcv08a.js → unified-runner-BojeuKIk.js} +16 -16
  140. package/dist/{update-cli-Cm4ftHhu.js → update-cli-BwX8SW9m.js} +17 -17
  141. package/dist/{update-cli-Cb12PjyN.js → update-cli-DQOw6sqy.js} +15 -15
  142. package/dist/{update-runner-Cv6hDgKV.js → update-runner-BhXkq5Gw.js} +1 -1
  143. package/dist/{update-runner-BE6kDMsw.js → update-runner-C56OyqSE.js} +1 -1
  144. package/dist/{web-CYf5I3aU.js → web-CGicnDRL.js} +9 -9
  145. package/dist/{web-DgoKLcMP.js → web-Dxkxcp7P.js} +6 -6
  146. package/dist/{web-BOv3xM7W.js → web-NSGlkQEO.js} +9 -9
  147. package/dist/{web-Ifwqx6Dt.js → web-f1xT-H2y.js} +6 -6
  148. package/extensions/bluebubbles/package.json +1 -1
  149. package/extensions/copilot-proxy/package.json +1 -1
  150. package/extensions/diagnostics-otel/package.json +1 -1
  151. package/extensions/discord/package.json +1 -1
  152. package/extensions/feishu/package.json +1 -1
  153. package/extensions/google-antigravity-auth/package.json +1 -1
  154. package/extensions/google-gemini-cli-auth/package.json +1 -1
  155. package/extensions/googlechat/package.json +1 -1
  156. package/extensions/imessage/package.json +1 -1
  157. package/extensions/irc/package.json +1 -1
  158. package/extensions/learning-loop/package.json +1 -1
  159. package/extensions/line/package.json +1 -1
  160. package/extensions/llm-task/package.json +1 -1
  161. package/extensions/matrix/CHANGELOG.md +6 -0
  162. package/extensions/matrix/package.json +1 -1
  163. package/extensions/mattermost/package.json +1 -1
  164. package/extensions/memory-core/package.json +1 -1
  165. package/extensions/memory-lancedb/package.json +1 -1
  166. package/extensions/minimax-portal-auth/package.json +1 -1
  167. package/extensions/msteams/CHANGELOG.md +6 -0
  168. package/extensions/msteams/package.json +1 -1
  169. package/extensions/nextcloud-talk/package.json +1 -1
  170. package/extensions/nostr/CHANGELOG.md +6 -0
  171. package/extensions/nostr/package.json +1 -1
  172. package/extensions/open-prose/package.json +1 -1
  173. package/extensions/outlook/package.json +1 -1
  174. package/extensions/pipeline/package.json +1 -1
  175. package/extensions/signal/package.json +1 -1
  176. package/extensions/slack/package.json +1 -1
  177. package/extensions/telegram/package.json +1 -1
  178. package/extensions/tlon/package.json +1 -1
  179. package/extensions/twitch/CHANGELOG.md +6 -0
  180. package/extensions/twitch/package.json +1 -1
  181. package/extensions/voice-call/CHANGELOG.md +6 -0
  182. package/extensions/voice-call/package.json +1 -1
  183. package/extensions/whatsapp/package.json +1 -1
  184. package/extensions/zalo/CHANGELOG.md +6 -0
  185. package/extensions/zalo/package.json +1 -1
  186. package/extensions/zalouser/CHANGELOG.md +6 -0
  187. package/extensions/zalouser/package.json +1 -1
  188. package/package.json +1 -1
@@ -22,8 +22,8 @@ import "./pairing-token-Byh6drgn.js";
22
22
  import { t as safeEqualSecret } from "./secret-equal-CbntzRkh.js";
23
23
  import { a as isValidIPv4, c as resolveClientIp, d as resolveHostName, f as rawDataToString, i as isTrustedProxyAddress, l as resolveGatewayBindHost, n as isLoopbackHost, o as normalizeHostHeader, t as isLoopbackAddress, u as resolveGatewayListenHosts } from "./net-DZ5Ayk-W.js";
24
24
  import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-Cmumpn76.js";
25
- import { $ as getCliSessionId, $t as setPreRestartDeferralCheck, An as DEFAULT_INPUT_TIMEOUT_MS, At as normalizeOptionalSessionKey, Bt as buildSafeExternalPrompt, Cn as enqueueSystemEvent, Cr as onAgentEvent, Dn as DEFAULT_INPUT_IMAGE_MAX_BYTES, E as createDefaultDeps, F as buildHistoryContextFromEntries, Ft as buildDeliveryFromLegacyPayload, H as getTotalPendingReplies, Ht as getHookType, In as resolveAgentTimeoutMs, It as hasLegacyDeliveryHints, J as runAgentTurn, Jt as emitGatewayRestart, Kt as consumeGatewaySigusr1RestartAuthorization, Lt as stripLegacyDeliveryFields, Mn as extractImageContentFromSource, Mt as normalizePayloadToSystemText, Nn as normalizeMimeList, Nt as normalizeRequiredName, O as resolveAgentAvatar, On as DEFAULT_INPUT_IMAGE_MIMES, Ot as inferLegacyName, Pn as resolveInputFileLimits, Pt as migrateLegacyCronPayload, Q as resolveModelProfile, Qt as setGatewaySigusr1RestartPolicy, Sr as getAgentRunContext, St as summarizeRestartSentinel, T as createOutboundSendDeps, Tt as normalizeHttpWebhookUrl, Ut as isExternalHookSession, Vt as detectSuspiciousPatterns, X as getActiveEmbeddedRunCount, Xt as markGatewaySigusr1RestartHandled, Yt as isGatewaySigusr1RestartExternallyAllowed, _ as readJsonBodyWithLimit, at as resolveAnnounceTargetFromKey, b as sleepWithAbort, br as clearAgentRunContext, bt as formatRestartSentinelMessage, cr as getActiveTaskCount, ct as resolveOutboundSessionRoute, dn as requestHeartbeatNow, dr as resetAllLanes, dt as resolveOutboundTarget, et as setCliSessionId, f as getPluginToolMeta, fr as setCommandLaneConcurrency, ft as resolveSessionDeliveryTarget, g as handleSlackHttpRequest, gt as runWithModelFallback, hr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, i as listDescendantRunsForRequester, it as readLatestAssistantReply, jn as extractFileContentFromSource, jt as normalizeOptionalText, kn as DEFAULT_INPUT_MAX_REDIRECTS, kt as normalizeOptionalAgentId, l as applyToolPolicyPipeline, m as loadSymiPlugins, mr as CommandLane, mt as resetDirectoryCache, n as countActiveRunsForSession, pr as waitForActiveTasks, q as resolveCronStyleNow, qt as deferGatewayRestartUntilIdle, r as initSubagentRegistry, rt as createSymiTools, s as runSubagentAnnounceFlow, t as countActiveDescendantRuns, tt as runCliAgent, u as buildDefaultToolPolicyPipelineSteps, ur as getTotalQueueSize, v as requestBodyErrorToText, vt as consumeRestartSentinel, wr as registerAgentRunContext, x as agentCommand, xr as emitAgentEvent, y as computeBackoff, yr as stripHeartbeatToken } from "./subagent-registry-CsYeP8wc.js";
26
- import { D as resolveSessionResetPolicy, F as resolveMainSessionKey, H as cleanStaleLockFiles, I as resolveMainSessionKeyFromConfig, K as mergeDeliveryContext, M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, T as evaluateSessionFreshness, W as deliveryContextFromSession, d as updateSessionStore, n as parseSessionThreadInfo, o as loadSessionStore } from "./sessions-BPD85pWA.js";
25
+ import { $ as getCliSessionId, $t as setPreRestartDeferralCheck, An as DEFAULT_INPUT_TIMEOUT_MS, At as normalizeOptionalSessionKey, Bt as buildSafeExternalPrompt, Cn as enqueueSystemEvent, Cr as onAgentEvent, Dn as DEFAULT_INPUT_IMAGE_MAX_BYTES, E as createDefaultDeps, F as buildHistoryContextFromEntries, Ft as buildDeliveryFromLegacyPayload, H as getTotalPendingReplies, Ht as getHookType, In as resolveAgentTimeoutMs, It as hasLegacyDeliveryHints, J as runAgentTurn, Jt as emitGatewayRestart, Kt as consumeGatewaySigusr1RestartAuthorization, Lt as stripLegacyDeliveryFields, Mn as extractImageContentFromSource, Mt as normalizePayloadToSystemText, Nn as normalizeMimeList, Nt as normalizeRequiredName, O as resolveAgentAvatar, On as DEFAULT_INPUT_IMAGE_MIMES, Ot as inferLegacyName, Pn as resolveInputFileLimits, Pt as migrateLegacyCronPayload, Q as resolveModelProfile, Qt as setGatewaySigusr1RestartPolicy, Sr as getAgentRunContext, St as summarizeRestartSentinel, T as createOutboundSendDeps, Tt as normalizeHttpWebhookUrl, Ut as isExternalHookSession, Vt as detectSuspiciousPatterns, X as getActiveEmbeddedRunCount, Xt as markGatewaySigusr1RestartHandled, Yt as isGatewaySigusr1RestartExternallyAllowed, _ as readJsonBodyWithLimit, at as resolveAnnounceTargetFromKey, b as sleepWithAbort, br as clearAgentRunContext, bt as formatRestartSentinelMessage, cr as getActiveTaskCount, ct as resolveOutboundSessionRoute, dn as requestHeartbeatNow, dr as resetAllLanes, dt as resolveOutboundTarget, et as setCliSessionId, f as getPluginToolMeta, fr as setCommandLaneConcurrency, ft as resolveSessionDeliveryTarget, g as handleSlackHttpRequest, gt as runWithModelFallback, hr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, i as listDescendantRunsForRequester, it as readLatestAssistantReply, jn as extractFileContentFromSource, jt as normalizeOptionalText, kn as DEFAULT_INPUT_MAX_REDIRECTS, kt as normalizeOptionalAgentId, l as applyToolPolicyPipeline, m as loadSymiPlugins, mr as CommandLane, mt as resetDirectoryCache, n as countActiveRunsForSession, pr as waitForActiveTasks, q as resolveCronStyleNow, qt as deferGatewayRestartUntilIdle, r as initSubagentRegistry, rt as createSymiTools, s as runSubagentAnnounceFlow, t as countActiveDescendantRuns, tt as runCliAgent, u as buildDefaultToolPolicyPipelineSteps, ur as getTotalQueueSize, v as requestBodyErrorToText, vt as consumeRestartSentinel, wr as registerAgentRunContext, x as agentCommand, xr as emitAgentEvent, y as computeBackoff, yr as stripHeartbeatToken } from "./subagent-registry-C8UsZ8F0.js";
26
+ import { D as resolveSessionResetPolicy, F as resolveMainSessionKey, H as cleanStaleLockFiles, I as resolveMainSessionKeyFromConfig, K as mergeDeliveryContext, M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, T as evaluateSessionFreshness, W as deliveryContextFromSession, d as updateSessionStore, n as parseSessionThreadInfo, o as loadSessionStore } from "./sessions-Do060W3W.js";
27
27
  import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-Csntmwwn.js";
28
28
  import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-CwSlLxM8.js";
29
29
  import { n as resolveWhatsAppAccount } from "./accounts-D9ITgITj.js";
@@ -32,14 +32,14 @@ import "./logging-CFvkxgcX.js";
32
32
  import "./send-BcvVKfh2.js";
33
33
  import "./send-DnsTDCll.js";
34
34
  import { r as getMachineDisplayName } from "./with-timeout-BIXdW2Bg.js";
35
- import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, t as deliverOutboundPayloads } from "./deliver-BLt_liXS.js";
35
+ import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, t as deliverOutboundPayloads } from "./deliver-CiL9mQXH.js";
36
36
  import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-Ci8Xsc_Y.js";
37
37
  import "./diagnostic-session-state-CIjIGxEE.js";
38
38
  import "./accounts-D1eLj5t8.js";
39
39
  import "./send-CaUqpyyp.js";
40
40
  import { c as detectMime } from "./image-ops-CUkaZz2F.js";
41
- import "./pi-embedded-helpers-DSscUmkR.js";
42
- import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-CDxHBl3I.js";
41
+ import "./pi-embedded-helpers-jo_kKs-Z.js";
42
+ import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-Cl2r-bXv.js";
43
43
  import "./chrome-D2ohnA09.js";
44
44
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-CbbvYNVw.js";
45
45
  import { a as resolveGatewayAuth, c as createAuthRateLimiter, i as isLocalDirectRequest, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, t as assertGatewayAuthConfigured } from "./auth-BfDMhFAj.js";
@@ -74,11 +74,11 @@ import "./ir-D-flMHhr.js";
74
74
  import "./render-e7fENCYH.js";
75
75
  import { r as isRestartEnabled } from "./commands-CkrIpKCc.js";
76
76
  import "./commands-registry-CccyRhnX.js";
77
- import "./image-DXco5IYt.js";
77
+ import "./image-CJ_QZqzR.js";
78
78
  import "./tool-display-CXwOC-qw.js";
79
- import { d as registerUnhandledRejectionHandler } from "./runner-CSdQSvE8.js";
79
+ import { d as registerUnhandledRejectionHandler } from "./runner-BopCEjwB.js";
80
80
  import { n as loadModelCatalog } from "./model-catalog-DKGSg6jF.js";
81
- import { a as loadCombinedSessionStoreForGateway, i as listSessionsFromStore, o as loadSessionEntry, u as lookupContextTokens } from "./session-utils-BPXkhuNM.js";
81
+ import { a as loadCombinedSessionStoreForGateway, i as listSessionsFromStore, o as loadSessionEntry, u as lookupContextTokens } from "./session-utils-Dwt6eGX6.js";
82
82
  import { S as registerSkillsChangeListener, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, l as refreshRemoteBinsForConnectedNodes, o as getRemoteSkillEligibility, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion } from "./skill-commands-BSJONVkt.js";
83
83
  import "./workspace-dirs-CPNL2Acu.js";
84
84
  import { a as readChannelAllowFromStoreSync } from "./pairing-store-NgA78L2g.js";
@@ -106,7 +106,7 @@ import "./replies-CsUBFXf6.js";
106
106
  import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-7H_XiJt-.js";
107
107
  import "./prompt-style-DwCXob2h.js";
108
108
  import "./pairing-labels-DwceB1dG.js";
109
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-DOVQ8dDx.js";
109
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-CGVKAOoE.js";
110
110
  import { i as onHeartbeatEvent, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-B8TDjqpW.js";
111
111
  import { t as ensureSymiCliOnPath } from "./path-env-Bic_wXs9.js";
112
112
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-B8QrxStA.js";
@@ -129,22 +129,22 @@ import "./diagnostics-CS1ov_hH.js";
129
129
  import "./table-D01d2GuY.js";
130
130
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-CsKTEo__.js";
131
131
  import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-BtG9rny3.js";
132
- import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-DgAM_dWL.js";
132
+ import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-BIeVybsA.js";
133
133
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-CA_XIzr_.js";
134
- import { i as pickGatewaySelfPresence } from "./status-Ut-dfDT0.js";
135
- import { a as styleHealthChannelLine, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-C7HtwYDj.js";
134
+ import { i as pickGatewaySelfPresence } from "./status-DsFAg-bK.js";
135
+ import { a as styleHealthChannelLine, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-DvkoG4Dw.js";
136
136
  import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BseSWee1.js";
137
137
  import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-ZdimP1aU.js";
138
- import { t as runOnboardingWizard } from "./onboarding-B4qg0ZYp.js";
139
- import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-OJbQNjOJ.js";
140
- import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-CL2MBhWP.js";
138
+ import { t as runOnboardingWizard } from "./onboarding-BfeyfvK_.js";
139
+ import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-DQHU-PVR.js";
140
+ import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-BMfcGm-A.js";
141
141
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-CzWeiE-Y.js";
142
- import "./agents.config-DIjsIDbS.js";
142
+ import "./agents.config-B8euVOOW.js";
143
143
  import "./dm-policy-shared-DF2uLfXk.js";
144
144
  import "./node-service-fcZExd22.js";
145
145
  import "./status.update-BGSQrlxW.js";
146
146
  import "./skills-install-Por3jP0P.js";
147
- import "./update-runner-BE6kDMsw.js";
147
+ import "./update-runner-C56OyqSE.js";
148
148
  import { t as resolveAgentSessionDirs } from "./session-dirs-DWgIYmAt.js";
149
149
  import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-B51TF6q3.js";
150
150
  import { n as forceFreePortAndWait } from "./ports-Dn122MUd.js";
@@ -11881,7 +11881,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
11881
11881
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
11882
11882
  if (!minimalTestGateway) (async () => {
11883
11883
  const { recoverPendingDeliveries } = await import("./delivery-queue-CzNZXd1M.js").then((n) => n.n);
11884
- const { deliverOutboundPayloads } = await import("./deliver-BLt_liXS.js").then((n) => n.n);
11884
+ const { deliverOutboundPayloads } = await import("./deliver-CiL9mQXH.js").then((n) => n.n);
11885
11885
  await recoverPendingDeliveries({
11886
11886
  deliver: deliverOutboundPayloads,
11887
11887
  log: log.child("delivery-recovery"),
@@ -11954,7 +11954,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
11954
11954
  });
11955
11955
  let glassUiBridgeCleanup = null;
11956
11956
  if (!minimalTestGateway) {
11957
- const { createGlassUiBridge } = await import("./glass-ui-ws-Cm-WtdFI.js");
11957
+ const { createGlassUiBridge } = await import("./glass-ui-ws-BgVPCNjg.js");
11958
11958
  glassUiBridgeCleanup = createGlassUiBridge({
11959
11959
  wss: glassUiWss,
11960
11960
  context: gatewayRequestContext,
@@ -1,7 +1,7 @@
1
1
  import { _ as expandHomePrefix, g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as resolveConfigPath, r as STATE_DIR, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, E as truncateUtf16Safe, H as getLogger, P as setVerbose, R as colorize, S as shortenHomePath, U as getResolvedLoggerSettings, V as getChildLogger, c as ensureDir, t as CONFIG_DIR, y as resolveUserPath, z as isRich } from "./utils-B-0b9bGM.js";
3
3
  import { d as supportsXHighThinking, l as normalizeVerboseLevel, s as normalizeThinkLevel } from "./thinking-EAliFiVK.js";
4
- import { $ as buildDeliveryFromLegacyPayload, A as emitGatewayRestart, An as initSubagentRegistry, Ar as extractImageContentFromSource, B as summarizeRestartSentinel, Bn as registerAgentRunContext, Ct as requestBodyErrorToText, Dr as DEFAULT_INPUT_MAX_REDIRECTS, E as resetDirectoryCache, Er as DEFAULT_INPUT_IMAGE_MIMES, Et as agentCommand, F as setPreRestartDeferralCheck, Fn as readLatestAssistantReply, Gt as getCliSessionId, I as consumeRestartSentinel, In as clearAgentRunContext, J as normalizeOptionalSessionKey, K as inferLegacyName, Kt as setCliSessionId, Ln as emitAgentEvent, Lt as createDefaultDeps, M as markGatewaySigusr1RestartHandled, Mr as resolveInputFileLimits, Mt as resolveOutboundTarget, Nt as resolveSessionDeliveryTarget, O as consumeGatewaySigusr1RestartAuthorization, On as countActiveDescendantRuns, Or as DEFAULT_INPUT_TIMEOUT_MS, P as setGatewaySigusr1RestartPolicy, Pn as runSubagentAnnounceFlow, Pr as resolveAgentTimeoutMs, Pt as createOutboundSendDeps, Q as migrateLegacyCronPayload, R as formatRestartSentinelMessage, Rn as getAgentRunContext, St as readJsonBodyWithLimit, Tr as DEFAULT_INPUT_IMAGE_MAX_BYTES, Tt as sleepWithAbort, U as normalizeHttpWebhookUrl, Ut as resolveModelProfile, Vt as getActiveEmbeddedRunCount, Wt as runWithModelFallback, X as normalizePayloadToSystemText, Xt as resolveAgentAvatar, Y as normalizeOptionalText, Z as normalizeRequiredName, _ as loadCombinedSessionStoreForGateway, ar as setCommandLaneConcurrency, cn as buildHistoryContextFromEntries, cr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, d as createSymiTools, en as buildSafeExternalPrompt, et as hasLegacyDeliveryHints, f as resolveAnnounceTargetFromKey, fr as stripHeartbeatToken, ft as loadSymiPlugins, g as listSessionsFromStore, hn as getTotalPendingReplies, i as resolveCronStyleNow, ir as resetAllLanes, j as isGatewaySigusr1RestartExternallyAllowed, jn as listDescendantRunsForRequester, jr as normalizeMimeList, k as deferGatewayRestartUntilIdle, kn as countActiveRunsForSession, kr as extractFileContentFromSource, l as applyToolPolicyPipeline, nn as getHookType, or as waitForActiveTasks, pr as lookupContextTokens, q as normalizeOptionalAgentId, qt as runCliAgent, rn as isExternalHookSession, rr as getTotalQueueSize, sr as CommandLane, st as requestHeartbeatNow, tn as detectSuspiciousPatterns, tr as getActiveTaskCount, tt as stripLegacyDeliveryFields, u as buildDefaultToolPolicyPipelineSteps, ut as getPluginToolMeta, v as loadSessionEntry, w as resolveOutboundSessionRoute, wt as computeBackoff, xr as enqueueSystemEvent, xt as handleSlackHttpRequest, zn as onAgentEvent, zt as runAgentTurn } from "./reply-B0azB7WR.js";
4
+ import { $ as buildDeliveryFromLegacyPayload, A as emitGatewayRestart, An as initSubagentRegistry, Ar as extractImageContentFromSource, B as summarizeRestartSentinel, Bn as registerAgentRunContext, Ct as requestBodyErrorToText, Dr as DEFAULT_INPUT_MAX_REDIRECTS, E as resetDirectoryCache, Er as DEFAULT_INPUT_IMAGE_MIMES, Et as agentCommand, F as setPreRestartDeferralCheck, Fn as readLatestAssistantReply, Gt as getCliSessionId, I as consumeRestartSentinel, In as clearAgentRunContext, J as normalizeOptionalSessionKey, K as inferLegacyName, Kt as setCliSessionId, Ln as emitAgentEvent, Lt as createDefaultDeps, M as markGatewaySigusr1RestartHandled, Mr as resolveInputFileLimits, Mt as resolveOutboundTarget, Nt as resolveSessionDeliveryTarget, O as consumeGatewaySigusr1RestartAuthorization, On as countActiveDescendantRuns, Or as DEFAULT_INPUT_TIMEOUT_MS, P as setGatewaySigusr1RestartPolicy, Pn as runSubagentAnnounceFlow, Pr as resolveAgentTimeoutMs, Pt as createOutboundSendDeps, Q as migrateLegacyCronPayload, R as formatRestartSentinelMessage, Rn as getAgentRunContext, St as readJsonBodyWithLimit, Tr as DEFAULT_INPUT_IMAGE_MAX_BYTES, Tt as sleepWithAbort, U as normalizeHttpWebhookUrl, Ut as resolveModelProfile, Vt as getActiveEmbeddedRunCount, Wt as runWithModelFallback, X as normalizePayloadToSystemText, Xt as resolveAgentAvatar, Y as normalizeOptionalText, Z as normalizeRequiredName, _ as loadCombinedSessionStoreForGateway, ar as setCommandLaneConcurrency, cn as buildHistoryContextFromEntries, cr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, d as createSymiTools, en as buildSafeExternalPrompt, et as hasLegacyDeliveryHints, f as resolveAnnounceTargetFromKey, fr as stripHeartbeatToken, ft as loadSymiPlugins, g as listSessionsFromStore, hn as getTotalPendingReplies, i as resolveCronStyleNow, ir as resetAllLanes, j as isGatewaySigusr1RestartExternallyAllowed, jn as listDescendantRunsForRequester, jr as normalizeMimeList, k as deferGatewayRestartUntilIdle, kn as countActiveRunsForSession, kr as extractFileContentFromSource, l as applyToolPolicyPipeline, nn as getHookType, or as waitForActiveTasks, pr as lookupContextTokens, q as normalizeOptionalAgentId, qt as runCliAgent, rn as isExternalHookSession, rr as getTotalQueueSize, sr as CommandLane, st as requestHeartbeatNow, tn as detectSuspiciousPatterns, tr as getActiveTaskCount, tt as stripLegacyDeliveryFields, u as buildDefaultToolPolicyPipelineSteps, ut as getPluginToolMeta, v as loadSessionEntry, w as resolveOutboundSessionRoute, wt as computeBackoff, xr as enqueueSystemEvent, xt as handleSlackHttpRequest, zn as onAgentEvent, zt as runAgentTurn } from "./reply-kWKTXRkY.js";
5
5
  import { S as parseAgentSessionKey, c as normalizeMainKey, f as toAgentRequestSessionKey, l as resolveAgentIdFromSessionKey, m as DEFAULT_ACCOUNT_ID, p as toAgentStoreSessionKey, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, x as isSubagentSessionKey, y as isCronRunSessionKey } from "./session-key-DCt45XZa.js";
6
6
  import { r as matchesSkillFilter, t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
7
7
  import { C as createInternalHookEvent, S as clearInternalHooks, T as triggerInternalHook, m as createEmptyPluginRegistry, r as DEFAULT_CHAT_CHANNEL, w as registerInternalHook } from "./registry-Cja8eT7G.js";
@@ -18,12 +18,12 @@ import "./send-BKhluIbb.js";
18
18
  import { B as resolveAgentMaxConcurrent, C as parseDurationMs, H as VERSION, U as resolveRuntimeServiceVersion, V as resolveSubagentMaxConcurrent, i as loadConfig, l as writeConfigFile, n as migrateLegacyConfig, o as readConfigFileSnapshot, r as createConfigIO } from "./config-PXAJCHa5.js";
19
19
  import { l as isTestDefaultMemorySlotDisabled } from "./manifest-registry-BDSRH8nU.js";
20
20
  import { a as isPathInsideWithRealpath } from "./legacy-names-Be3msDZo.js";
21
- import { d as registerUnhandledRejectionHandler } from "./runner-C_BlQ2fG.js";
22
- import "./image-D_qN_IxA.js";
21
+ import { d as registerUnhandledRejectionHandler } from "./runner-eBF6SlQ6.js";
22
+ import "./image-C2IvljWU.js";
23
23
  import "./models-config-B91ShhoT.js";
24
24
  import "./pi-model-discovery-4uUnLc3n.js";
25
- import "./pi-embedded-helpers-DpOccVre.js";
26
- import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-BOVopTqv.js";
25
+ import "./pi-embedded-helpers-DiXXYmgo.js";
26
+ import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-ooxzsj2D.js";
27
27
  import "./chrome-BJvuH-NZ.js";
28
28
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-D5dKabOc.js";
29
29
  import { t as safeEqualSecret } from "./secret-equal-D7A3Bol7.js";
@@ -43,7 +43,7 @@ import { c as detectMime } from "./image-ops-1OJMSAUX.js";
43
43
  import "./store-r1DJSDq-.js";
44
44
  import { a as inspectPortUsage, r as ensurePortAvailable, s as formatPortDiagnostics } from "./ports-BOmtxoTv.js";
45
45
  import "./trash-DcMh1i4B.js";
46
- import { B as resolveAgentMainSessionKey, H as resolveMainSessionKey, M as evaluateSessionFreshness, P as resolveSessionResetPolicy, U as resolveMainSessionKeyFromConfig, Y as cleanStaleLockFiles, _ as mergeDeliveryContext, d as updateSessionStore, h as deliveryContextFromSession, n as parseSessionThreadInfo, o as loadSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-BeYHj0gr.js";
46
+ import { B as resolveAgentMainSessionKey, H as resolveMainSessionKey, M as evaluateSessionFreshness, P as resolveSessionResetPolicy, U as resolveMainSessionKeyFromConfig, Y as cleanStaleLockFiles, _ as mergeDeliveryContext, d as updateSessionStore, h as deliveryContextFromSession, n as parseSessionThreadInfo, o as loadSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-vYQs1OzE.js";
47
47
  import "./dock-BhS32F6E.js";
48
48
  import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DKDeQZF0.js";
49
49
  import { n as resolveWhatsAppAccount } from "./accounts-DDuIpcln.js";
@@ -62,7 +62,7 @@ import "./sqlite-Dx3J_aSE.js";
62
62
  import { n as loadModelCatalog } from "./model-catalog-Dex2EDUJ.js";
63
63
  import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-BuceUQDl.js";
64
64
  import { r as getMachineDisplayName } from "./with-timeout-emS7y-kf.js";
65
- import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, t as deliverOutboundPayloads } from "./deliver-lG9ITE8w.js";
65
+ import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, t as deliverOutboundPayloads } from "./deliver-CXpvGXqJ.js";
66
66
  import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-CH0skkp6.js";
67
67
  import "./diagnostic-session-state-CUslJyKP.js";
68
68
  import "./send-DFftzTHo.js";
@@ -106,7 +106,7 @@ import "./pairing-labels-BScqzHEx.js";
106
106
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-BgUx3Bm4.js";
107
107
  import { t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-DXM2pQYL.js";
108
108
  import "./nodes-screen-8Bq7DiSa.js";
109
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-BpN-v9bT.js";
109
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-p7LLu64F.js";
110
110
  import "./control-service-D0IdaeI8.js";
111
111
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-CvFURHzt.js";
112
112
  import { n as resolveMessageChannelSelection } from "./channel-selection-V2xDgw16.js";
@@ -134,22 +134,22 @@ import "./diagnostics-BRwihzJG.js";
134
134
  import "./table-BKlH0YlA.js";
135
135
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-CyVOLgNE.js";
136
136
  import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-DnmJ0ABB.js";
137
- import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-DVUHZrf4.js";
137
+ import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-DCOp_J5K.js";
138
138
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-DUQ6tE92.js";
139
- import { r as pickGatewaySelfPresence } from "./status-RlJA2XzQ.js";
140
- import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-Bx8UUqFA.js";
139
+ import { r as pickGatewaySelfPresence } from "./status-v8DOdpX6.js";
140
+ import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-DKxSHkOQ.js";
141
141
  import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B7moDVHX.js";
142
142
  import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-7EzEjSzb.js";
143
- import { t as runOnboardingWizard } from "./onboarding-C89rTOOy.js";
144
- import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-BcBroG6v.js";
145
- import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-DUWtWoB-.js";
143
+ import { t as runOnboardingWizard } from "./onboarding-Bqz1NgoR.js";
144
+ import { C as startGatewayConfigReloader, S as resolveCronRunLogPath, _ as MAX_PAYLOAD_BYTES, a as loadFavoritesSet, b as abortChatRunById, c as resolveAssistantIdentity, d as formatError, f as loadVoiceWakeConfig, g as MAX_BUFFERED_BYTES, h as HEALTH_REFRESH_INTERVAL_MS, i as safeParseJson, l as listSystemPresence, m as DEDUPE_TTL_MS, n as handleGatewayRequest, o as reconcileFavorites, p as DEDUPE_MAX, r as broadcastPresenceSnapshot, s as DEFAULT_ASSISTANT_IDENTITY, t as coreGatewayHandlers, u as upsertPresence, v as TICK_INTERVAL_MS, x as appendCronRunLog, y as getHandshakeTimeoutMs } from "./server-methods-DuXvSLX-.js";
145
+ import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-CHM_4e6x.js";
146
146
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-Dq6vwkWW.js";
147
- import "./agents.config-D0ih9tP3.js";
147
+ import "./agents.config-DWsjuONZ.js";
148
148
  import "./dm-policy-shared-DwFEXR-I.js";
149
149
  import "./node-service-CD47Qpf1.js";
150
150
  import "./status.update-C1I_7XIo.js";
151
151
  import "./skills-install-D8JjjETa.js";
152
- import "./update-runner-Cv6hDgKV.js";
152
+ import "./update-runner-BhXkq5Gw.js";
153
153
  import { t as resolveAgentSessionDirs } from "./session-dirs-Dgz7kkUM.js";
154
154
  import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-B4H-2N8y.js";
155
155
  import { fileURLToPath, pathToFileURL } from "node:url";
@@ -11885,7 +11885,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
11885
11885
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
11886
11886
  if (!minimalTestGateway) (async () => {
11887
11887
  const { recoverPendingDeliveries } = await import("./delivery-queue-CAxX6nGq.js").then((n) => n.n);
11888
- const { deliverOutboundPayloads } = await import("./deliver-lG9ITE8w.js").then((n) => n.n);
11888
+ const { deliverOutboundPayloads } = await import("./deliver-CXpvGXqJ.js").then((n) => n.n);
11889
11889
  await recoverPendingDeliveries({
11890
11890
  deliver: deliverOutboundPayloads,
11891
11891
  log: log.child("delivery-recovery"),
@@ -11958,7 +11958,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
11958
11958
  });
11959
11959
  let glassUiBridgeCleanup = null;
11960
11960
  if (!minimalTestGateway) {
11961
- const { createGlassUiBridge } = await import("./glass-ui-ws-BzBtCYP7.js");
11961
+ const { createGlassUiBridge } = await import("./glass-ui-ws-CMMnvVpl.js");
11962
11962
  glassUiBridgeCleanup = createGlassUiBridge({
11963
11963
  wss: glassUiWss,
11964
11964
  context: gatewayRequestContext,
@@ -14,8 +14,8 @@ import "./client-qUlxXXVJ.js";
14
14
  import "./call-BrRWr7Lj.js";
15
15
  import "./message-channel-C9dERklz.js";
16
16
  import "./pairing-token-Byh6drgn.js";
17
- import { Q as resolveModelProfile } from "./subagent-registry-CsYeP8wc.js";
18
- import "./sessions-BPD85pWA.js";
17
+ import { Q as resolveModelProfile } from "./subagent-registry-C8UsZ8F0.js";
18
+ import "./sessions-Do060W3W.js";
19
19
  import "./tokens-Csntmwwn.js";
20
20
  import "./plugins-CwSlLxM8.js";
21
21
  import "./accounts-D9ITgITj.js";
@@ -24,14 +24,14 @@ import "./logging-CFvkxgcX.js";
24
24
  import "./send-BcvVKfh2.js";
25
25
  import "./send-DnsTDCll.js";
26
26
  import "./with-timeout-BIXdW2Bg.js";
27
- import "./deliver-BLt_liXS.js";
27
+ import "./deliver-CiL9mQXH.js";
28
28
  import "./diagnostic-Ci8Xsc_Y.js";
29
29
  import "./diagnostic-session-state-CIjIGxEE.js";
30
30
  import "./accounts-D1eLj5t8.js";
31
31
  import "./send-CaUqpyyp.js";
32
32
  import "./image-ops-CUkaZz2F.js";
33
- import "./pi-embedded-helpers-DSscUmkR.js";
34
- import "./sandbox-CDxHBl3I.js";
33
+ import "./pi-embedded-helpers-jo_kKs-Z.js";
34
+ import "./sandbox-Cl2r-bXv.js";
35
35
  import "./chrome-D2ohnA09.js";
36
36
  import "./tailscale-CbbvYNVw.js";
37
37
  import "./auth-BfDMhFAj.js";
@@ -66,11 +66,11 @@ import "./ir-D-flMHhr.js";
66
66
  import "./render-e7fENCYH.js";
67
67
  import "./commands-CkrIpKCc.js";
68
68
  import "./commands-registry-CccyRhnX.js";
69
- import "./image-DXco5IYt.js";
69
+ import "./image-CJ_QZqzR.js";
70
70
  import "./tool-display-CXwOC-qw.js";
71
- import "./runner-CSdQSvE8.js";
71
+ import "./runner-BopCEjwB.js";
72
72
  import "./model-catalog-DKGSg6jF.js";
73
- import "./session-utils-BPXkhuNM.js";
73
+ import "./session-utils-Dwt6eGX6.js";
74
74
  import "./skill-commands-BSJONVkt.js";
75
75
  import "./workspace-dirs-CPNL2Acu.js";
76
76
  import "./pairing-store-NgA78L2g.js";
@@ -97,7 +97,7 @@ import "./replies-CsUBFXf6.js";
97
97
  import "./onboard-helpers-7H_XiJt-.js";
98
98
  import "./prompt-style-DwCXob2h.js";
99
99
  import "./pairing-labels-DwceB1dG.js";
100
- import "./pi-tools.policy-DOVQ8dDx.js";
100
+ import "./pi-tools.policy-CGVKAOoE.js";
101
101
  import "./dangerous-tools-B8QrxStA.js";
102
102
  import "./catalog-buoA8ik4.js";
103
103
  import "./install-safe-path-BK8js28D.js";
@@ -108,19 +108,19 @@ import "./systemd-DlMdyFDY.js";
108
108
  import "./service-Cm9j9WzQ.js";
109
109
  import "./diagnostics-CS1ov_hH.js";
110
110
  import "./table-D01d2GuY.js";
111
- import "./audit-DgAM_dWL.js";
112
- import "./status-Ut-dfDT0.js";
113
- import "./health-C7HtwYDj.js";
111
+ import "./audit-BIeVybsA.js";
112
+ import "./status-DsFAg-bK.js";
113
+ import "./health-DvkoG4Dw.js";
114
114
  import "./control-ui-assets-BseSWee1.js";
115
115
  import "./update-check-ZdimP1aU.js";
116
- import { n as handleGatewayRequest } from "./server-methods-OJbQNjOJ.js";
117
- import "./push-apns-CL2MBhWP.js";
118
- import "./agents.config-DIjsIDbS.js";
116
+ import { n as handleGatewayRequest } from "./server-methods-DQHU-PVR.js";
117
+ import "./push-apns-BMfcGm-A.js";
118
+ import "./agents.config-B8euVOOW.js";
119
119
  import "./dm-policy-shared-DF2uLfXk.js";
120
120
  import "./node-service-fcZExd22.js";
121
121
  import "./status.update-BGSQrlxW.js";
122
122
  import "./skills-install-Por3jP0P.js";
123
- import "./update-runner-BE6kDMsw.js";
123
+ import "./update-runner-C56OyqSE.js";
124
124
 
125
125
  //#region src/gateway/glass-ui-ws.ts
126
126
  const SESSION_KEY = "agent:main:main";
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { Ut as resolveModelProfile } from "./reply-B0azB7WR.js";
4
+ import { Ut as resolveModelProfile } from "./reply-kWKTXRkY.js";
5
5
  import "./registry-Cja8eT7G.js";
6
6
  import "./subsystem-D9vIQve0.js";
7
7
  import "./exec-CWkblSrI.js";
@@ -14,12 +14,12 @@ import "./message-channel-aT-I_DTX.js";
14
14
  import "./send-BKhluIbb.js";
15
15
  import { i as loadConfig } from "./config-PXAJCHa5.js";
16
16
  import "./manifest-registry-BDSRH8nU.js";
17
- import "./runner-C_BlQ2fG.js";
18
- import "./image-D_qN_IxA.js";
17
+ import "./runner-eBF6SlQ6.js";
18
+ import "./image-C2IvljWU.js";
19
19
  import "./models-config-B91ShhoT.js";
20
20
  import "./pi-model-discovery-4uUnLc3n.js";
21
- import "./pi-embedded-helpers-DpOccVre.js";
22
- import "./sandbox-BOVopTqv.js";
21
+ import "./pi-embedded-helpers-DiXXYmgo.js";
22
+ import "./sandbox-ooxzsj2D.js";
23
23
  import "./chrome-BJvuH-NZ.js";
24
24
  import "./tailscale-D5dKabOc.js";
25
25
  import "./auth-B741uFtk.js";
@@ -36,7 +36,7 @@ import "./image-ops-1OJMSAUX.js";
36
36
  import "./store-r1DJSDq-.js";
37
37
  import "./ports-BOmtxoTv.js";
38
38
  import "./trash-DcMh1i4B.js";
39
- import "./sessions-BeYHj0gr.js";
39
+ import "./sessions-vYQs1OzE.js";
40
40
  import "./dock-BhS32F6E.js";
41
41
  import "./plugins-DKDeQZF0.js";
42
42
  import "./accounts-DDuIpcln.js";
@@ -55,7 +55,7 @@ import "./sqlite-Dx3J_aSE.js";
55
55
  import "./model-catalog-Dex2EDUJ.js";
56
56
  import "./tokens-BuceUQDl.js";
57
57
  import "./with-timeout-emS7y-kf.js";
58
- import "./deliver-lG9ITE8w.js";
58
+ import "./deliver-CXpvGXqJ.js";
59
59
  import "./diagnostic-CH0skkp6.js";
60
60
  import "./diagnostic-session-state-CUslJyKP.js";
61
61
  import "./send-DFftzTHo.js";
@@ -98,7 +98,7 @@ import "./prompt-style-CnkMpSXt.js";
98
98
  import "./pairing-labels-BScqzHEx.js";
99
99
  import "./exec-approvals-DXM2pQYL.js";
100
100
  import "./nodes-screen-8Bq7DiSa.js";
101
- import "./pi-tools.policy-BpN-v9bT.js";
101
+ import "./pi-tools.policy-p7LLu64F.js";
102
102
  import "./control-service-D0IdaeI8.js";
103
103
  import "./stagger-CvFURHzt.js";
104
104
  import "./channel-selection-V2xDgw16.js";
@@ -113,19 +113,19 @@ import "./systemd-DT6SbCim.js";
113
113
  import "./service-osK70kTZ.js";
114
114
  import "./diagnostics-BRwihzJG.js";
115
115
  import "./table-BKlH0YlA.js";
116
- import "./audit-DVUHZrf4.js";
117
- import "./status-RlJA2XzQ.js";
118
- import "./health-Bx8UUqFA.js";
116
+ import "./audit-DCOp_J5K.js";
117
+ import "./status-v8DOdpX6.js";
118
+ import "./health-DKxSHkOQ.js";
119
119
  import "./control-ui-assets-B7moDVHX.js";
120
120
  import "./update-check-7EzEjSzb.js";
121
- import { n as handleGatewayRequest } from "./server-methods-BcBroG6v.js";
122
- import "./push-apns-DUWtWoB-.js";
123
- import "./agents.config-D0ih9tP3.js";
121
+ import { n as handleGatewayRequest } from "./server-methods-DuXvSLX-.js";
122
+ import "./push-apns-CHM_4e6x.js";
123
+ import "./agents.config-DWsjuONZ.js";
124
124
  import "./dm-policy-shared-DwFEXR-I.js";
125
125
  import "./node-service-CD47Qpf1.js";
126
126
  import "./status.update-C1I_7XIo.js";
127
127
  import "./skills-install-D8JjjETa.js";
128
- import "./update-runner-Cv6hDgKV.js";
128
+ import "./update-runner-BhXkq5Gw.js";
129
129
 
130
130
  //#region src/gateway/glass-ui-ws.ts
131
131
  const SESSION_KEY = "agent:main:main";
@@ -1,17 +1,17 @@
1
1
  import { B as theme, k as info, l as escapeRegExp, z as isRich } from "./utils-B-0b9bGM.js";
2
- import { At as resolveHeartbeatDeliveryTarget, Cr as peekSystemEventEntries, Vn as resolveUserTimezone, cr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, ct as setHeartbeatWakeHandler, dr as resolveHeartbeatPrompt$1, fr as stripHeartbeatToken, jt as resolveHeartbeatSenderContext, lr as DEFAULT_HEARTBEAT_EVERY, lt as resolveHeartbeatReasonKind, nr as getQueueSize, r as appendCronStyleCurrentTimeLine, sr as CommandLane, st as requestHeartbeatNow, t as getReplyFromConfig, ur as isHeartbeatContentEffectivelyEmpty } from "./reply-B0azB7WR.js";
2
+ import { At as resolveHeartbeatDeliveryTarget, Cr as peekSystemEventEntries, Vn as resolveUserTimezone, cr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, ct as setHeartbeatWakeHandler, dr as resolveHeartbeatPrompt$1, fr as stripHeartbeatToken, jt as resolveHeartbeatSenderContext, lr as DEFAULT_HEARTBEAT_EVERY, lt as resolveHeartbeatReasonKind, nr as getQueueSize, r as appendCronStyleCurrentTimeLine, sr as CommandLane, st as requestHeartbeatNow, t as getReplyFromConfig, ur as isHeartbeatContentEffectivelyEmpty } from "./reply-kWKTXRkY.js";
3
3
  import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as normalizeAgentId } from "./session-key-DCt45XZa.js";
4
4
  import { f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
5
5
  import { b as DEFAULT_SYMIPULSE_FILENAME, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-CgUHAtCo.js";
6
6
  import { t as isTruthyEnvValue } from "./env-DPCHYPeH.js";
7
7
  import { C as parseDurationMs, i as loadConfig } from "./config-PXAJCHa5.js";
8
8
  import { i as hasErrnoCode, n as formatErrorMessage } from "./errors-BF3TeRH2.js";
9
- import { B as resolveAgentMainSessionKey, d as updateSessionStore, l as saveSessionStore, o as loadSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-BeYHj0gr.js";
9
+ import { B as resolveAgentMainSessionKey, d as updateSessionStore, l as saveSessionStore, o as loadSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-vYQs1OzE.js";
10
10
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-DKDeQZF0.js";
11
11
  import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-DFaVVCsf.js";
12
12
  import { c as resolveStorePath, n as resolveSessionFilePath } from "./paths-CyhzMxFA.js";
13
13
  import { r as SYMIPULSE_TOKEN } from "./tokens-BuceUQDl.js";
14
- import { t as deliverOutboundPayloads } from "./deliver-lG9ITE8w.js";
14
+ import { t as deliverOutboundPayloads } from "./deliver-CXpvGXqJ.js";
15
15
  import { o as resolveEffectiveMessagesConfig } from "./reply-prefix-CE2YmmsD.js";
16
16
  import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-CVqBgwrx.js";
17
17
  import { n as withProgress } from "./progress-jIePzvGA.js";
@@ -4,12 +4,12 @@ import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as no
4
4
  import { b as DEFAULT_SYMIPULSE_FILENAME, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-D-jRCY0d.js";
5
5
  import { C as parseDurationMs, i as loadConfig } from "./config-DXt3pc08.js";
6
6
  import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BrRWr7Lj.js";
7
- import { Jn as resolveUserTimezone, K as appendCronStyleCurrentTimeLine, Tn as peekSystemEventEntries, W as getReplyFromConfig, _r as isHeartbeatContentEffectivelyEmpty, dn as requestHeartbeatNow, fn as setHeartbeatWakeHandler, gr as DEFAULT_HEARTBEAT_EVERY, hr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, lr as getQueueSize, lt as resolveHeartbeatDeliveryTarget, mr as CommandLane, pn as resolveHeartbeatReasonKind, ut as resolveHeartbeatSenderContext, vr as resolveHeartbeatPrompt$1, yr as stripHeartbeatToken } from "./subagent-registry-CsYeP8wc.js";
8
- import { M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, d as updateSessionStore, l as saveSessionStore, o as loadSessionStore } from "./sessions-BPD85pWA.js";
7
+ import { Jn as resolveUserTimezone, K as appendCronStyleCurrentTimeLine, Tn as peekSystemEventEntries, W as getReplyFromConfig, _r as isHeartbeatContentEffectivelyEmpty, dn as requestHeartbeatNow, fn as setHeartbeatWakeHandler, gr as DEFAULT_HEARTBEAT_EVERY, hr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, lr as getQueueSize, lt as resolveHeartbeatDeliveryTarget, mr as CommandLane, pn as resolveHeartbeatReasonKind, ut as resolveHeartbeatSenderContext, vr as resolveHeartbeatPrompt$1, yr as stripHeartbeatToken } from "./subagent-registry-C8UsZ8F0.js";
8
+ import { M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, d as updateSessionStore, l as saveSessionStore, o as loadSessionStore } from "./sessions-Do060W3W.js";
9
9
  import { r as SYMIPULSE_TOKEN } from "./tokens-Csntmwwn.js";
10
10
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-CwSlLxM8.js";
11
11
  import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-DlWb_Kaq.js";
12
- import { t as deliverOutboundPayloads } from "./deliver-BLt_liXS.js";
12
+ import { t as deliverOutboundPayloads } from "./deliver-CiL9mQXH.js";
13
13
  import { i as hasErrnoCode, n as formatErrorMessage } from "./errors-Ba_ROWsq.js";
14
14
  import { c as resolveStorePath, n as resolveSessionFilePath } from "./paths-DNdWAq7b.js";
15
15
  import { o as resolveEffectiveMessagesConfig } from "./reply-prefix-BUN71nd5.js";
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, S as shortenHomePath, t as CONFIG_DIR, y as resolveUserPath } from "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import "./reply-B0azB7WR.js";
4
+ import "./reply-kWKTXRkY.js";
5
5
  import "./registry-Cja8eT7G.js";
6
6
  import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
7
7
  import "./exec-CWkblSrI.js";
@@ -16,12 +16,12 @@ import "./send-BKhluIbb.js";
16
16
  import { i as loadConfig, l as writeConfigFile } from "./config-PXAJCHa5.js";
17
17
  import "./manifest-registry-BDSRH8nU.js";
18
18
  import { a as isPathInsideWithRealpath, i as isPathInside, n as MANIFEST_KEY } from "./legacy-names-Be3msDZo.js";
19
- import "./runner-C_BlQ2fG.js";
20
- import "./image-D_qN_IxA.js";
19
+ import "./runner-eBF6SlQ6.js";
20
+ import "./image-C2IvljWU.js";
21
21
  import "./models-config-B91ShhoT.js";
22
22
  import "./pi-model-discovery-4uUnLc3n.js";
23
- import "./pi-embedded-helpers-DpOccVre.js";
24
- import "./sandbox-BOVopTqv.js";
23
+ import "./pi-embedded-helpers-DiXXYmgo.js";
24
+ import "./sandbox-ooxzsj2D.js";
25
25
  import "./chrome-BJvuH-NZ.js";
26
26
  import { u as promptYesNo } from "./tailscale-D5dKabOc.js";
27
27
  import "./auth-B741uFtk.js";
@@ -38,7 +38,7 @@ import "./image-ops-1OJMSAUX.js";
38
38
  import "./store-r1DJSDq-.js";
39
39
  import "./ports-BOmtxoTv.js";
40
40
  import "./trash-DcMh1i4B.js";
41
- import "./sessions-BeYHj0gr.js";
41
+ import "./sessions-vYQs1OzE.js";
42
42
  import "./dock-BhS32F6E.js";
43
43
  import "./plugins-DKDeQZF0.js";
44
44
  import "./accounts-DDuIpcln.js";
@@ -57,7 +57,7 @@ import "./sqlite-Dx3J_aSE.js";
57
57
  import "./model-catalog-Dex2EDUJ.js";
58
58
  import "./tokens-BuceUQDl.js";
59
59
  import "./with-timeout-emS7y-kf.js";
60
- import "./deliver-lG9ITE8w.js";
60
+ import "./deliver-CXpvGXqJ.js";
61
61
  import "./diagnostic-CH0skkp6.js";
62
62
  import "./diagnostic-session-state-CUslJyKP.js";
63
63
  import "./send-DFftzTHo.js";
@@ -100,7 +100,7 @@ import "./prompt-style-CnkMpSXt.js";
100
100
  import "./pairing-labels-BScqzHEx.js";
101
101
  import "./exec-approvals-DXM2pQYL.js";
102
102
  import "./nodes-screen-8Bq7DiSa.js";
103
- import "./pi-tools.policy-BpN-v9bT.js";
103
+ import "./pi-tools.policy-p7LLu64F.js";
104
104
  import "./control-service-D0IdaeI8.js";
105
105
  import "./stagger-CvFURHzt.js";
106
106
  import "./channel-selection-V2xDgw16.js";
@@ -109,7 +109,7 @@ import { a as installPackageDir, i as withTempDir, n as installFromNpmSpecArchiv
109
109
  import { t as renderTable } from "./table-BKlH0YlA.js";
110
110
  import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-B4H-2N8y.js";
111
111
  import { t as buildWorkspaceHookStatus } from "./hooks-status-oUebZVnL.js";
112
- import { t as buildPluginStatusReport } from "./status-CpWkGj5h.js";
112
+ import { t as buildPluginStatusReport } from "./status-CW9LMA2M.js";
113
113
  import fs from "node:fs";
114
114
  import path from "node:path";
115
115
  import fs$1 from "node:fs/promises";
@@ -16,8 +16,8 @@ import "./client-qUlxXXVJ.js";
16
16
  import "./call-BrRWr7Lj.js";
17
17
  import "./message-channel-C9dERklz.js";
18
18
  import "./pairing-token-Byh6drgn.js";
19
- import "./subagent-registry-CsYeP8wc.js";
20
- import "./sessions-BPD85pWA.js";
19
+ import "./subagent-registry-C8UsZ8F0.js";
20
+ import "./sessions-Do060W3W.js";
21
21
  import "./tokens-Csntmwwn.js";
22
22
  import "./plugins-CwSlLxM8.js";
23
23
  import "./accounts-D9ITgITj.js";
@@ -26,14 +26,14 @@ import "./logging-CFvkxgcX.js";
26
26
  import "./send-BcvVKfh2.js";
27
27
  import "./send-DnsTDCll.js";
28
28
  import "./with-timeout-BIXdW2Bg.js";
29
- import "./deliver-BLt_liXS.js";
29
+ import "./deliver-CiL9mQXH.js";
30
30
  import "./diagnostic-Ci8Xsc_Y.js";
31
31
  import "./diagnostic-session-state-CIjIGxEE.js";
32
32
  import "./accounts-D1eLj5t8.js";
33
33
  import "./send-CaUqpyyp.js";
34
34
  import "./image-ops-CUkaZz2F.js";
35
- import "./pi-embedded-helpers-DSscUmkR.js";
36
- import "./sandbox-CDxHBl3I.js";
35
+ import "./pi-embedded-helpers-jo_kKs-Z.js";
36
+ import "./sandbox-Cl2r-bXv.js";
37
37
  import "./chrome-D2ohnA09.js";
38
38
  import { l as promptYesNo } from "./tailscale-CbbvYNVw.js";
39
39
  import "./auth-BfDMhFAj.js";
@@ -68,11 +68,11 @@ import "./ir-D-flMHhr.js";
68
68
  import "./render-e7fENCYH.js";
69
69
  import "./commands-CkrIpKCc.js";
70
70
  import "./commands-registry-CccyRhnX.js";
71
- import "./image-DXco5IYt.js";
71
+ import "./image-CJ_QZqzR.js";
72
72
  import "./tool-display-CXwOC-qw.js";
73
- import "./runner-CSdQSvE8.js";
73
+ import "./runner-BopCEjwB.js";
74
74
  import "./model-catalog-DKGSg6jF.js";
75
- import "./session-utils-BPXkhuNM.js";
75
+ import "./session-utils-Dwt6eGX6.js";
76
76
  import "./skill-commands-BSJONVkt.js";
77
77
  import "./workspace-dirs-CPNL2Acu.js";
78
78
  import "./pairing-store-NgA78L2g.js";
@@ -99,13 +99,13 @@ import "./replies-CsUBFXf6.js";
99
99
  import "./onboard-helpers-7H_XiJt-.js";
100
100
  import "./prompt-style-DwCXob2h.js";
101
101
  import "./pairing-labels-DwceB1dG.js";
102
- import "./pi-tools.policy-DOVQ8dDx.js";
102
+ import "./pi-tools.policy-CGVKAOoE.js";
103
103
  import { a as extractArchive, c as resolveArchiveKind, i as unscopedPackageName, l as resolvePackedRootDir, o as fileExists, s as readJsonFile, t as resolveSafeInstallDir } from "./install-safe-path-BK8js28D.js";
104
104
  import { a as installPackageDir, i as withTempDir, n as installFromNpmSpecArchive, r as resolveArchiveSourcePath, t as validateRegistryNpmSpec } from "./npm-registry-spec-DkaZNHAW.js";
105
105
  import { t as renderTable } from "./table-D01d2GuY.js";
106
106
  import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-B51TF6q3.js";
107
107
  import { t as buildWorkspaceHookStatus } from "./hooks-status-CEoLdlyb.js";
108
- import { t as buildPluginStatusReport } from "./status-DNxAYvxM.js";
108
+ import { t as buildPluginStatusReport } from "./status-DNVKHGLC.js";
109
109
  import path from "node:path";
110
110
  import fs from "node:fs";
111
111
  import fs$1 from "node:fs/promises";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { D as isRecord, I as shortenHomeInString } from "./registry-BhoUuugi.js";
3
3
  import { G as resolveSymiAgentDir, S as getApiKeyForModel, X as normalizeSecretInput, _ as resolveImplicitBedrockProvider, g as normalizeProviders, v as resolveImplicitCopilotProvider, w as requireApiKey, y as resolveImplicitProviders } from "./model-selection-vHAQ4r1b.js";
4
4
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-j5tVLINv.js";
5
- import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-D8YgtMdl.js";
5
+ import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-BET359cH.js";
6
6
  import { n as loadConfig } from "./config-BAVNLbja.js";
7
7
  import { n as redactToolDetail } from "./redact-1NGYV_8p.js";
8
8
  import path from "node:path";
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { R as shortenHomeInString, k as isRecord } from "./registry-DYq1AYOv.js";
3
3
  import { L as getApiKeyForModel, M as resolveImplicitBedrockProvider, N as resolveImplicitCopilotProvider, P as resolveImplicitProviders, W as normalizeSecretInput, et as resolveSymiAgentDir, j as normalizeProviders, z as requireApiKey } from "./auth-profiles-C2vj6htZ.js";
4
- import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-BUNbSNWw.js";
4
+ import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-DcN8GHTt.js";
5
5
  import { n as loadConfig } from "./config-BkZ9HOKT.js";
6
6
  import { n as redactToolDetail } from "./redact-BDMXB06K.js";
7
7
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-CuZX_Q4t.js";
@@ -3,7 +3,7 @@ import { d as isRecord } from "./utils-B-0b9bGM.js";
3
3
  import { Bt as normalizeSecretInput, K as requireApiKey, W as getApiKeyForModel } from "./model-selection-C-eIBa0H.js";
4
4
  import { t as ensureSymiModelsJson } from "./models-config-B91ShhoT.js";
5
5
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-4uUnLc3n.js";
6
- import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-DpOccVre.js";
6
+ import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-DiXXYmgo.js";
7
7
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-D8N3rsYt.js";
8
8
  import { complete } from "@mariozechner/pi-ai";
9
9
 
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Q as isRecord } from "./entry.js";
3
3
  import { Et as normalizeSecretInput, bt as requireApiKey, vt as getApiKeyForModel } from "./auth-profiles-BBniPGeS.js";
4
4
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Do3xMEtM.js";
5
- import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-DSscUmkR.js";
5
+ import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-jo_kKs-Z.js";
6
6
  import { t as ensureSymiModelsJson } from "./models-config-J1x_DaPn.js";
7
7
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-CXwOC-qw.js";
8
8
  import { complete } from "@mariozechner/pi-ai";