@bitseek/claw 1.3.8 → 1.3.9-beta.1

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 (356) hide show
  1. package/dist/{accounts-DtaSiAum.js → accounts-CQrvvU8V.js} +1 -1
  2. package/dist/{accounts-CTKra7aS.js → accounts-CzfKkJDx.js} +7 -7
  3. package/dist/{accounts-B4wV9IFm.js → accounts-YtMo-RPC.js} +1 -1
  4. package/dist/{acp-cli-CSRDFixR.js → acp-cli-C0Oz6RFa.js} +8 -8
  5. package/dist/{agent-scope-BrbgAMci.js → agent-scope-qYbUVCHn.js} +1 -1
  6. package/dist/{agents-B3roVbYI.js → agents-BM-ZKSEg.js} +15 -15
  7. package/dist/{agents.config-DKv0epKg.js → agents.config-BEcfoo1-.js} +1 -1
  8. package/dist/{agents.config-BLKDc8io.js → agents.config-ClQFzaOQ.js} +2 -2
  9. package/dist/{api-key-rotation-BdoPDM3X.js → api-key-rotation-XTdz_cvI.js} +1 -1
  10. package/dist/{audio-preflight-Pdv9uiw6.js → audio-preflight-B6Jw9LUM.js} +36 -36
  11. package/dist/{audio-preflight-WTpRy-aJ.js → audio-preflight-NS22yhPn.js} +4 -4
  12. package/dist/{audio-transcription-runner-DBPatTZv.js → audio-transcription-runner-CF3DjqKy.js} +22 -22
  13. package/dist/{audio-transcription-runner-Dr-10P1O.js → audio-transcription-runner-CzMSMQMZ.js} +1 -1
  14. package/dist/{audit-p4lBCTPz.js → audit-pIY_GfjC.js} +29 -29
  15. package/dist/{auth-DuCrQ5K9.js → auth-DhaM6Od5.js} +1 -1
  16. package/dist/{auth-choice-BogBxPQ0.js → auth-choice-BrLJAJGb.js} +16 -16
  17. package/dist/{auth-choice-CWhbVAmr.js → auth-choice-C3dhoMS4.js} +13 -13
  18. package/dist/{auth-choice-BQK5dp_R.js → auth-choice-DGXGJoXu.js} +4 -4
  19. package/dist/{auth-choice-hbnbmdPS.js → auth-choice-_Wo8GXjs.js} +6 -6
  20. package/dist/{auth-choice.apply-helpers-CtAelPdF.js → auth-choice.apply-helpers-DI1qnxc_.js} +1 -1
  21. package/dist/{auth-profiles-k09E8RLJ.js → auth-profiles-CDN1QqUB.js} +16 -16
  22. package/dist/{auth-token-CWb4NQTJ.js → auth-token-CIvRoAe-.js} +2 -2
  23. package/dist/{auth-token-CI-GllDN.js → auth-token-CRAgPghb.js} +1 -1
  24. package/dist/{banner-DyZFjt3Q.js → banner-B9UvF4z4.js} +2 -2
  25. package/dist/{bindings-C9vpkXej.js → bindings-D9ZiGe2K.js} +1 -1
  26. package/dist/{bonjour-discovery-DyLRXLw1.js → bonjour-discovery-CBcz-0Ts.js} +1 -1
  27. package/dist/{browser-cli-CDsv9Dvw.js → browser-cli-CTcWXrJp.js} +12 -12
  28. package/dist/build-info.json +2 -2
  29. package/dist/bundled/boot-md/handler.js +1 -1
  30. package/dist/bundled/session-memory/handler.js +1 -1
  31. package/dist/{call-CBH5yDff.js → call-BSBuLNiX.js} +10 -10
  32. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  33. package/dist/{channel-account-context-C3TU0o4T.js → channel-account-context-Cc-TbAKt.js} +5 -5
  34. package/dist/{channel-options-CGVF-HMA.js → channel-options-BRRdrC9x.js} +1 -1
  35. package/dist/{channel-options-9r0jhaF7.js → channel-options-CZEJHqmF.js} +3 -3
  36. package/dist/{channel-selection-DZrPYytY.js → channel-selection-BKyzCX35.js} +1 -1
  37. package/dist/{channel-web-Df9c4iPg.js → channel-web-BYVOTPmg.js} +18 -18
  38. package/dist/{channel-web-BdhYBnK6.js → channel-web-ByefSgLT.js} +1 -1
  39. package/dist/{channels-cli-Bi5IcGws.js → channels-cli-1K3Yksx3.js} +97 -97
  40. package/dist/{channels-cli-Ddkqw9Mr.js → channels-cli-FTPLPjn_.js} +8 -8
  41. package/dist/{channels-status-issues-Bb3ugkRr.js → channels-status-issues-Cn340Vbe.js} +1 -1
  42. package/dist/{chrome-YNj1BDzJ.js → chrome-CXHFx_t_.js} +8 -8
  43. package/dist/{chrome-BVlYi4nu.js → chrome-zP7qr3zd.js} +4 -4
  44. package/dist/{clawbot-cli-CkZGXd20.js → clawbot-cli-Nk_oXaxe.js} +5 -5
  45. package/dist/{cli-SRX-F7x2.js → cli-B0LS_4ca.js} +3 -3
  46. package/dist/{cli-2CbkQG_y.js → cli-vh3rYuO3.js} +78 -78
  47. package/dist/{client-CIji7FpE.js → client-Swf30UOh.js} +2 -2
  48. package/dist/{command-registry-C96NPlx4.js → command-registry-DizyPDOx.js} +13 -13
  49. package/dist/{commands-B7V-vN3N.js → commands-B8w5Izi1.js} +1 -1
  50. package/dist/{commands-registry-B6LbRm3U.js → commands-registry-Ctux_Nq3.js} +3 -3
  51. package/dist/{completion-cli-DujZccrD.js → completion-cli-Bbv9l5N1.js} +13 -13
  52. package/dist/{completion-cli-Die9PKu8.js → completion-cli-D07jjhoZ.js} +1 -1
  53. package/dist/{config-cli-DgKjaGSi.js → config-cli-D2xpDDZk.js} +7 -7
  54. package/dist/{config-cli-HVxj89-L.js → config-cli-vYwGYJCs.js} +1 -1
  55. package/dist/{config-guard-D5XZLbXA.js → config-guard-CSxpqsBG.js} +3 -3
  56. package/dist/{config-validation-DT8qQYoa.js → config-validation-Tf6YL4jH.js} +3 -3
  57. package/dist/{configure-D51Hau9O.js → configure-CgVQBDSn.js} +17 -17
  58. package/dist/{configure-B5vrrqHX.js → configure-DRlSxG-S.js} +4 -4
  59. package/dist/{constants-BJMtcGm_.js → constants-BLoDkl98.js} +1 -1
  60. package/dist/{constants-D1Q8yQ1_.js → constants-By6nxsIT.js} +1 -1
  61. package/dist/{context-window-guard-DfLcl4Sl.js → context-window-guard-aKoSfdAy.js} +1 -1
  62. package/dist/{context-window-guard-BqrKjiIm.js → context-window-guard-cHOCxHiA.js} +1 -1
  63. package/dist/control-ui/assets/{index-CZbqZLPL.js → index-CRehj7ln.js} +2 -2
  64. package/dist/control-ui/assets/{index-CZbqZLPL.js.map → index-CRehj7ln.js.map} +1 -1
  65. package/dist/control-ui/index.html +1 -1
  66. package/dist/{control-ui-assets-Bn4e_1By.js → control-ui-assets-BxJ3OmP_.js} +1 -1
  67. package/dist/{cron-cli-D6OHJFdO.js → cron-cli-BrpTLnwT.js} +12 -12
  68. package/dist/{daemon-cli-BxFuWNM-.js → daemon-cli-S2o4Kcwu.js} +15 -15
  69. package/dist/{daemon-install-BjgH7Ld5.js → daemon-install-C0YHpEQQ.js} +4 -4
  70. package/dist/{daemon-install-helpers-Crntu4pF.js → daemon-install-helpers-DLIsWH31.js} +11 -11
  71. package/dist/{dashboard-B0FYUw0G.js → dashboard-B_7Hjxc6.js} +2 -2
  72. package/dist/{deliver-Bm4UojU1.js → deliver-CQmmhMaR.js} +7 -7
  73. package/dist/{deliver-Bm--5hb3.js → deliver-D8BB6x5x.js} +1 -1
  74. package/dist/{devices-cli-D2qzgS6n.js → devices-cli-CXtMoEZv.js} +8 -8
  75. package/dist/{diagnostic-DOls91uN.js → diagnostic-C5Por-ID.js} +1 -1
  76. package/dist/{diagnostics-D4xhje-h.js → diagnostics-0PFoNolS.js} +5 -5
  77. package/dist/{directory-cli-BDxc1M2a.js → directory-cli-NpBfkxfT.js} +8 -8
  78. package/dist/{dns-cli-DImurxu6.js → dns-cli-CNYoy9mq.js} +5 -5
  79. package/dist/{dock-CcEfMX5D.js → dock-CHDx-TGb.js} +4 -4
  80. package/dist/{docs-cli-Cp25W8Hv.js → docs-cli-CLZqiB15.js} +4 -4
  81. package/dist/{doctor-completion-DvD6Gxce.js → doctor-completion-BNi7ptNw.js} +2 -2
  82. package/dist/{doctor-completion-lIcN0oMj.js → doctor-completion-UZdGnqnu.js} +1 -1
  83. package/dist/{doctor-config-flow-DtaIUiEk.js → doctor-config-flow-m-m_m5Ot.js} +15 -15
  84. package/dist/{enable-Dfmg2SV3.js → enable-yaF2vNOj.js} +1 -1
  85. package/dist/entry.js +2 -2
  86. package/dist/{exec-approvals-allowlist-IOB4HV3z.js → exec-approvals-allowlist-Cw4xMxbI.js} +1 -1
  87. package/dist/{exec-approvals-cli-B6X8jOx7.js → exec-approvals-cli-BffaLELS.js} +16 -16
  88. package/dist/{exec-safe-bin-runtime-policy-CEdwujzY.js → exec-safe-bin-runtime-policy-Bu0TwxE1.js} +2 -2
  89. package/dist/extensionAPI.js +6 -6
  90. package/dist/{fetch-guard-oYuVfv1t.js → fetch-guard-CQZ5FOwI.js} +1 -1
  91. package/dist/{fetch-BAv7yBBS.js → fetch-lTdl-0IY.js} +3 -3
  92. package/dist/{fs-safe--YXsniNZ.js → fs-safe-BQS_SZ0h.js} +24 -24
  93. package/dist/{gateway-cli-DY5myR89.js → gateway-cli-C6GyBLpi.js} +163 -163
  94. package/dist/{gateway-cli-DdxZ9xQz.js → gateway-cli-Dw1idMZc.js} +11 -11
  95. package/dist/{gateway-rpc-C6F7QPVq.js → gateway-rpc-qWYRLZ-Z.js} +1 -1
  96. package/dist/{health-DOIxOlnm.js → health-DNfTeO7M.js} +14 -14
  97. package/dist/{health-C_kdAhpo.js → health-ocUZcPl0.js} +1 -1
  98. package/dist/{hooks-cli-B3VUhq72.js → hooks-cli-BN1FA7w2.js} +86 -86
  99. package/dist/{hooks-cli-BA7lw_VT.js → hooks-cli-DPYujpRe.js} +4 -4
  100. package/dist/{hooks-status-qBCorl-z.js → hooks-status-BE0dSQIW.js} +1 -1
  101. package/dist/{image-Dq4M8xkz.js → image-9Zoi2bjp.js} +1 -1
  102. package/dist/{image-BOSsTjNj.js → image-BgCM5v5-.js} +5 -5
  103. package/dist/{plugin-sdk/image-ops-CfQjZch5.js → image-ops-HxQLrFqd.js} +11 -11
  104. package/dist/index.js +8 -8
  105. package/dist/{inspect-DkrsY9Gy.js → inspect-DY_qpyux.js} +4 -4
  106. package/dist/{install-safe-path-DXP_88Em.js → install-safe-path-K9dhxxcy.js} +25 -25
  107. package/dist/{installs-DgI58LlC.js → installs-BYz0q4kc.js} +9 -9
  108. package/dist/{ipv4-BuO7nxQZ.js → ipv4-Bj71-jpu.js} +1 -1
  109. package/dist/{ir-BCl0dA3G.js → ir-C_-vG6Lv.js} +6 -6
  110. package/dist/{issue-format-Cat2txpr.js → issue-format-1i6b6tFd.js} +1 -1
  111. package/dist/{json-files-DrZ4qfxw.js → json-files-1hhV5hS6.js} +8 -8
  112. package/dist/{lifecycle-core-CliTbXyj.js → lifecycle-core-BZVbJEGI.js} +5 -5
  113. package/dist/llm-slug-generator.js +1 -1
  114. package/dist/{login-_s-srXtA.js → login-KG5TFHFb.js} +3 -3
  115. package/dist/{login-qr-BNBXsYor.js → login-qr-D4L1NDeu.js} +6 -6
  116. package/dist/{logs-cli-B4Nwp099.js → logs-cli-D2lMkM4P.js} +9 -9
  117. package/dist/{manager-rK3J4Po3.js → manager-C0nx9SKi.js} +14 -14
  118. package/dist/{manifest-registry-hRB5Jb3F.js → manifest-registry-Co__Fy6F.js} +1 -1
  119. package/dist/{markdown-tables-Mk_tnsfY.js → markdown-tables-D47ZANhY.js} +1 -1
  120. package/dist/{memory-cli-BbEwsmor.js → memory-cli-BwxTb296.js} +12 -12
  121. package/dist/{model-Cd4C4aY1.js → model-C30BtXEI.js} +2 -2
  122. package/dist/{model-catalog-Chb7lzRo.js → model-catalog-C0pv85X0.js} +3 -3
  123. package/dist/{model-picker-CdgwJ2MU.js → model-picker-Dediiqpo.js} +4 -4
  124. package/dist/{models-CL1jaXSC.js → models-Ce7-hWMS.js} +18 -18
  125. package/dist/{models-cli-BUx2kqz5.js → models-cli-DFbGnftf.js} +5 -5
  126. package/dist/{models-cli-BeARCGBj.js → models-cli-Dwoe-FI7.js} +83 -83
  127. package/dist/{models-config-CkOKPbk9.js → models-config-NbV2Gu7N.js} +6 -6
  128. package/dist/{net-Bxr80JTs.js → net-DrfP4uzJ.js} +2 -2
  129. package/dist/{node-cli-DelBH0Tb.js → node-cli-CnKN38mM.js} +33 -33
  130. package/dist/{node-command-policy-DKPye8Fx.js → node-command-policy-xyqdwsT9.js} +1 -1
  131. package/dist/{node-service-Cei5AkFg.js → node-service-DEfPXKwF.js} +1 -1
  132. package/dist/{nodes-cli-CLNRURvx.js → nodes-cli-CFaqvZCM.js} +16 -16
  133. package/dist/{nodes-screen-NjyoMja_.js → nodes-screen-DNzr75bx.js} +7 -7
  134. package/dist/{npm-pack-install-B5tn-EtA.js → npm-pack-install-U_Bbmdqc.js} +18 -18
  135. package/dist/{npm-resolution-Brdkv6mO.js → npm-resolution-NU87E585.js} +5 -5
  136. package/dist/{npm-resolution-BeSDvlKA.js → npm-resolution-UrxewxGl.js} +1 -1
  137. package/dist/{onboard-Bh-I_8wZ.js → onboard-DQJBMWJS.js} +6 -6
  138. package/dist/{onboard-HvQow36S.js → onboard-LZ6tipk6.js} +3 -3
  139. package/dist/{onboard-channels-BaxiM8OU.js → onboard-channels-DfwMG2Iz.js} +1 -1
  140. package/dist/{onboard-channels-gTeBkpnk.js → onboard-channels-QqxIfBtd.js} +20 -20
  141. package/dist/{onboard-custom-DhEI_A-m.js → onboard-custom-9NaQoCKF.js} +3 -3
  142. package/dist/{onboard-custom-CAZn5F-O.js → onboard-custom-DMbBGzSj.js} +1 -1
  143. package/dist/{onboard-custom.shared-iqEaG2E4.js → onboard-custom.shared-BQL_jJyK.js} +1 -1
  144. package/dist/{onboard-custom.shared-DoXUpHZV.js → onboard-custom.shared-tQHd1XwJ.js} +3 -3
  145. package/dist/{onboard-helpers-ngPRx_6_.js → onboard-helpers-DX8Hw_zc.js} +11 -11
  146. package/dist/{onboard-hooks-CJvqjkid.js → onboard-hooks-DCPdhrCK.js} +4 -4
  147. package/dist/{onboard-remote-DRt29Vs4.js → onboard-remote-aF3GW6mE.js} +3 -3
  148. package/dist/{onboard-skills-CoWAaHHg.js → onboard-skills-CzFxXcom.js} +4 -4
  149. package/dist/{onboarding-COYDqpHi.js → onboarding-B_rDL9Ys.js} +4 -4
  150. package/dist/{onboarding-DeqWu7mq.js → onboarding-DW6uIEzO.js} +13 -13
  151. package/dist/{onboarding.finalize-BAWi9byG.js → onboarding.finalize-CGr5_H5z.js} +7 -7
  152. package/dist/{onboarding.finalize-DsXoykZY.js → onboarding.finalize-s5gEMxIF.js} +91 -91
  153. package/dist/{onboarding.gateway-config-B1orRdI7.js → onboarding.gateway-config-B5jnM62F.js} +18 -18
  154. package/dist/{openai-model-default-DRYz3m4d.js → openai-model-default-B3H7klS8.js} +2 -2
  155. package/dist/{openai-model-default-bZOrINL4.js → openai-model-default-uDQ6_Ui_.js} +1 -1
  156. package/dist/{outbound-BGJh4s6Y.js → outbound-CF1Hd23W.js} +4 -4
  157. package/dist/{outbound-attachment-Baso-yal.js → outbound-attachment-BMlPpVOn.js} +2 -2
  158. package/dist/{pairing-cli-DgUIYETM.js → pairing-cli-DkVLCjGa.js} +9 -9
  159. package/dist/{pairing-labels-BPTURWrI.js → pairing-labels-CesrJlbr.js} +1 -1
  160. package/dist/{pairing-store-WGGwqFJB.js → pairing-store-BcJH8WDh.js} +3 -3
  161. package/dist/{path-alias-guards-DdR4BKPM.js → path-alias-guards-C_j0uB0Y.js} +3 -3
  162. package/dist/{path-safety-DiJhMaUA.js → path-safety-BHBxNYfO.js} +1 -1
  163. package/dist/{paths-BPXmr3Zn.js → paths-Bj8pNglF.js} +9 -9
  164. package/dist/{pi-embedded-Cdh8_a82.js → pi-embedded-Bj3xuwXx.js} +23 -23
  165. package/dist/{pi-embedded-BJ2D2U7f.js → pi-embedded-DTg-Ul9w.js} +3 -3
  166. package/dist/{pi-embedded-helpers-CILyFDv-.js → pi-embedded-helpers-CYWOTCLT.js} +3 -3
  167. package/dist/{pi-embedded-helpers-ET1kDdN1.js → pi-embedded-helpers-Cc4tC0fE.js} +6 -6
  168. package/dist/{pi-model-discovery-COnY_kTM.js → pi-model-discovery-ItDCP5Ab.js} +1 -1
  169. package/dist/{pi-tools.policy-Cp3wptYh.js → pi-tools.policy-BbLCMNCc.js} +5 -5
  170. package/dist/{plugin-auto-enable-Bm8hMcPA.js → plugin-auto-enable-BxiIEIvc.js} +3 -3
  171. package/dist/{plugin-registry-DWd-znRA.js → plugin-registry-CHsntQZd.js} +3 -3
  172. package/dist/{plugin-registry-BaDFrxdr.js → plugin-registry-DwuteAi0.js} +1 -1
  173. package/dist/plugin-sdk/{accounts-CqgyHS8h.js → accounts-BME088co.js} +1 -1
  174. package/dist/plugin-sdk/{accounts-kIersDAH.js → accounts-CxgIc7BC.js} +1 -1
  175. package/dist/plugin-sdk/{accounts-B_Sil4df.js → accounts-DFIfXHdI.js} +3 -3
  176. package/dist/plugin-sdk/{active-listener-B1c6rQRy.js → active-listener-Dx4YdW0B.js} +1 -1
  177. package/dist/plugin-sdk/{agent-scope-DS0HILk_.js → agent-scope-BL5NPpGJ.js} +3 -3
  178. package/dist/plugin-sdk/{api-key-rotation-C2Z5xB6w.js → api-key-rotation-DZ1mvKN0.js} +2 -2
  179. package/dist/plugin-sdk/{audio-preflight-Byc0yvPV.js → audio-preflight-B8r8qUhZ.js} +33 -33
  180. package/dist/plugin-sdk/{audio-transcription-runner-DHcTy4Wb.js → audio-transcription-runner-B8gQ16hV.js} +10 -10
  181. package/dist/plugin-sdk/{bindings-D8UvbNti.js → bindings-YKerL1Tc.js} +2 -2
  182. package/dist/plugin-sdk/bitseek/constants.d.ts +1 -1
  183. package/dist/plugin-sdk/{channel-activity-CMtaqeTg.js → channel-activity-Dzyx86FD.js} +3 -3
  184. package/dist/plugin-sdk/{channel-web-D3N-Ttls.js → channel-web-B74yPv7p.js} +23 -23
  185. package/dist/plugin-sdk/{chrome-DoDlUT7F.js → chrome-Hte84S6l.js} +7 -7
  186. package/dist/plugin-sdk/{chunk-BuHZrtLn.js → chunk-4pLJcTE-.js} +1 -1
  187. package/dist/plugin-sdk/{command-format-9ttCUvaP.js → command-format-TmcJI6nP.js} +1 -1
  188. package/dist/plugin-sdk/{commands-registry-ydkoxruZ.js → commands-registry-D1UwEKAH.js} +5 -5
  189. package/dist/plugin-sdk/{config-BkeO1N4t.js → config-kqUrcUGI.js} +10 -10
  190. package/dist/plugin-sdk/{deliver-BcAT1l6Y.js → deliver-DymnzypV.js} +11 -11
  191. package/dist/plugin-sdk/{diagnostic-BefhWusS.js → diagnostic-1MgpiorV.js} +2 -2
  192. package/dist/plugin-sdk/{dock-yYEdNzbx.js → dock-Csf-65jq.js} +6 -6
  193. package/dist/plugin-sdk/{errors-D2KyTKs6.js → errors-BRahpZsP.js} +1 -1
  194. package/dist/plugin-sdk/{fetch-guard-BC92RxgN.js → fetch-guard-cD2GBmNp.js} +2 -2
  195. package/dist/plugin-sdk/{fs-safe-CC4mG_Hc.js → fs-safe-DgdRzasF.js} +3 -3
  196. package/dist/plugin-sdk/{image-Cjm_y1ht.js → image-m9sEMr_K.js} +6 -6
  197. package/dist/{image-ops-B2K36FLD.js → plugin-sdk/image-ops-DhVTERkS.js} +1 -1
  198. package/dist/plugin-sdk/index.js +64 -64
  199. package/dist/plugin-sdk/{ir-CLKvSg7X.js → ir-DyMWDxUp.js} +6 -6
  200. package/dist/plugin-sdk/{local-roots-DYmtEf6P.js → local-roots-ChmGReXd.js} +4 -4
  201. package/dist/plugin-sdk/{logger-Dqmpx59X.js → logger-BwzMchOl.js} +1 -1
  202. package/dist/plugin-sdk/{login-DYEbRdfH.js → login-DIgrxuIQ.js} +6 -6
  203. package/dist/plugin-sdk/{login-qr-0YUEfC35.js → login-qr-DeAbaqfx.js} +9 -9
  204. package/dist/plugin-sdk/{manager-J_9hr0Yu.js → manager-Bic1h3Nu.js} +10 -10
  205. package/dist/plugin-sdk/{markdown-tables-BA_MdGIq.js → markdown-tables-BEWLluuz.js} +1 -1
  206. package/dist/plugin-sdk/{message-channel-CeYrurhu.js → message-channel-Be6xIObc.js} +1 -1
  207. package/dist/plugin-sdk/{outbound-B386FQiU.js → outbound-D7OdBk5M.js} +7 -7
  208. package/dist/plugin-sdk/{outbound-attachment-DgC7KgEZ.js → outbound-attachment-Y-wO2Csk.js} +2 -2
  209. package/dist/plugin-sdk/{path-alias-guards-KB1li1UU.js → path-alias-guards-CsekuFRi.js} +1 -1
  210. package/dist/plugin-sdk/{pi-embedded-helpers-CbevdnHV.js → pi-embedded-helpers-BWFPgWTA.js} +17 -17
  211. package/dist/plugin-sdk/{pi-model-discovery-Blr1NdM4.js → pi-model-discovery-DRomJojM.js} +1 -1
  212. package/dist/plugin-sdk/{plugins-Dupyelyu.js → plugins-DKZ5hSLA.js} +6 -6
  213. package/dist/plugin-sdk/{proxy-CnPaiSZ0.js → proxy-DIYzaAvh.js} +1 -1
  214. package/dist/plugin-sdk/{proxy-fetch-BY4mmpys.js → proxy-fetch-X6Ja_eZx.js} +1 -1
  215. package/dist/plugin-sdk/{pw-ai-C1rLCgeF.js → pw-ai-MuLgIL01.js} +13 -13
  216. package/dist/plugin-sdk/{qmd-manager-BtfjLkaZ.js → qmd-manager-D3p7PB5n.js} +8 -8
  217. package/dist/plugin-sdk/{query-expansion-DgHoeKXG.js → query-expansion-C90Jc5uo.js} +2 -2
  218. package/dist/plugin-sdk/{redact-Civ2olvH.js → redact-DEfi9F2o.js} +1 -1
  219. package/dist/plugin-sdk/{registry-Cq-TQPU8.js → registry-BfD4IdFK.js} +2 -2
  220. package/dist/plugin-sdk/{replies-a2WeMkU6.js → replies-GRjUBMUL.js} +3 -3
  221. package/dist/plugin-sdk/{reply-C2XVty9G.js → reply-BLgFJt3A.js} +94 -94
  222. package/dist/plugin-sdk/{reply-prefix-BRomwQau.js → reply-prefix-CobEDhG_.js} +1 -1
  223. package/dist/plugin-sdk/{resolve-outbound-target-B_xKgqWe.js → resolve-outbound-target-DkNri48r.js} +2 -2
  224. package/dist/plugin-sdk/{resolve-route-yLtq9xkG.js → resolve-route-fu19EHnm.js} +4 -4
  225. package/dist/plugin-sdk/{retry-D9aKv766.js → retry-Agt7ZiSn.js} +1 -1
  226. package/dist/plugin-sdk/{send-Ct2mLh8U.js → send-BB06ROuk.js} +15 -15
  227. package/dist/plugin-sdk/{send-Bs-YbYdN.js → send-BUpepCol.js} +6 -6
  228. package/dist/plugin-sdk/{send-WwwzoTNW.js → send-C5ymrC3h.js} +7 -7
  229. package/dist/plugin-sdk/{send-kJXSgFcu.js → send-CvC0d45Z.js} +10 -10
  230. package/dist/plugin-sdk/{send-_MTxUi5p.js → send-DwXcBQYC.js} +8 -8
  231. package/dist/plugin-sdk/{session-Bfpm71Tg.js → session-D8BNggg2.js} +5 -5
  232. package/dist/plugin-sdk/{session-meta-CM4K7B00.js → session-meta-DYb6KCvG.js} +1 -1
  233. package/dist/plugin-sdk/{sessions-DFx8MKSO.js → sessions-BtJmhzev.js} +6 -6
  234. package/dist/plugin-sdk/{skill-commands-CakvOluN.js → skill-commands-C3OZ4W61.js} +5 -5
  235. package/dist/plugin-sdk/{skills-CZFBOkwT.js → skills-CIvz2coj.js} +8 -8
  236. package/dist/plugin-sdk/{ssrf-BjVCUeM7.js → ssrf-EGzUkeVq.js} +1 -1
  237. package/dist/plugin-sdk/{store-DALs5PIC.js → store-Dij_2k2X.js} +2 -2
  238. package/dist/plugin-sdk/{subsystem-DQdKZm8Z.js → subsystem-C84uWxqx.js} +2 -2
  239. package/dist/plugin-sdk/{tables-BQwHnOX0.js → tables-CTWsNiUf.js} +1 -1
  240. package/dist/{target-errors-CL097N6P.js → plugin-sdk/target-errors-Bgd_Uo0g.js} +2 -2
  241. package/dist/plugin-sdk/{tokens-C_Ieeb03.js → tokens-B9E-mnf_.js} +1 -1
  242. package/dist/plugin-sdk/{tool-images-RhD8geto.js → tool-images-0gnewwTL.js} +2 -2
  243. package/dist/plugin-sdk/{tool-loop-detection-CKnmaEeR.js → tool-loop-detection-Bsh07kcw.js} +2 -2
  244. package/dist/plugin-sdk/{utils-hxOwZduA.js → utils-BA7Xm0uM.js} +1 -1
  245. package/dist/plugin-sdk/web-DqzB-SV4.js +72 -0
  246. package/dist/plugin-sdk/{whatsapp-actions-CudQXAzF.js → whatsapp-actions-BLoPRR5B.js} +25 -25
  247. package/dist/{plugins-CO6qDFdk.js → plugins--_65-dc5.js} +2 -2
  248. package/dist/{plugins-cli-B90nR_VK.js → plugins-cli-BJonAjTO.js} +88 -88
  249. package/dist/{plugins-cli-B_SrAza2.js → plugins-cli-C-8MoZzf.js} +4 -4
  250. package/dist/{ports-CUjMnvTs.js → ports-Cw4Nwv2D.js} +1 -1
  251. package/dist/{ports-Dczj_PV_.js → ports-DgCQT1oY.js} +2 -2
  252. package/dist/{program-CoUWrOuU.js → program-B1DDCI6U.js} +86 -86
  253. package/dist/{program-context-BW36TXnn.js → program-context-NPXfc1Sa.js} +18 -18
  254. package/dist/{prompt-select-styled-BY0UebAF.js → prompt-select-styled-BGSuv83k.js} +4 -4
  255. package/dist/{prompt-select-styled-CCeKGXxa.js → prompt-select-styled-C0DwQfQk.js} +39 -39
  256. package/dist/{provider-auth-helpers-BL5oDpRO.js → provider-auth-helpers-CkfN1Udt.js} +2 -2
  257. package/dist/{provider-auth-helpers-Btf9aI1h.js → provider-auth-helpers-DpMDtZGw.js} +5 -5
  258. package/dist/{proxy-env-DQGTNk9X.js → proxy-env-DHBs_DSq.js} +1 -1
  259. package/dist/{push-apns-D-Mikscg.js → push-apns-6vguSSaQ.js} +1 -1
  260. package/dist/{push-apns-CzIypSJf.js → push-apns-BM60Vdjq.js} +5 -5
  261. package/dist/{pw-ai-DRY3vRxC.js → pw-ai-CSOK1DjV.js} +1 -1
  262. package/dist/{pw-ai-D1Ry3gcn.js → pw-ai-DYEHR6w8.js} +15 -15
  263. package/dist/{qmd-manager-BNFUTVvk.js → qmd-manager-BHSD3_rI.js} +20 -20
  264. package/dist/{qr-cli-BTrl8Tw4.js → qr-cli-CKOGSVK_.js} +1 -1
  265. package/dist/{query-expansion-CP4BjmxS.js → query-expansion-BkWbp0bs.js} +12 -12
  266. package/dist/{redact-snapshot-QpVJSBBX.js → redact-snapshot-BzZpHz-O.js} +1 -1
  267. package/dist/{register.agent-BksD8xqL.js → register.agent-3NPWicXc.js} +99 -99
  268. package/dist/{register.agent-D32q9uR9.js → register.agent-BDgNG_vU.js} +10 -10
  269. package/dist/{register.configure-DMRRvVx7.js → register.configure-CqJE208_.js} +13 -13
  270. package/dist/register.configure-r8N_Ye2a.js +175 -0
  271. package/dist/{register.init-ChyHcEAX.js → register.init-DmtSU1SM.js} +17 -17
  272. package/dist/{register.init-EOlDrQTS.js → register.init-JoFq4yF_.js} +1 -1
  273. package/dist/{register.maintenance-C0zxZg0K.js → register.maintenance-CDec0C-U.js} +101 -101
  274. package/dist/{register.maintenance-BiWaNm96.js → register.maintenance-CwAvr3jO.js} +9 -9
  275. package/dist/{register.message-DizXp_pp.js → register.message-BYnoyuMR.js} +4 -4
  276. package/dist/{register.message-DW2G2t5n.js → register.message-DKvfL1J5.js} +79 -79
  277. package/dist/{register.onboard-DeZ6BYWf.js → register.onboard-B8pb4tM9.js} +18 -18
  278. package/dist/{register.onboard-CBbSomv2.js → register.onboard-Cgfw0grV.js} +2 -2
  279. package/dist/{register.setup-DWdi6O74.js → register.setup-BuEmY1JS.js} +21 -21
  280. package/dist/{register.setup-DFYvGlPy.js → register.setup-D5Fq2qX4.js} +2 -2
  281. package/dist/{register.start-CbfmMKWY.js → register.start-D0pe3Bgs.js} +17 -17
  282. package/dist/{register.status-health-sessions-DYoPE-bA.js → register.status-health-sessions-Cu317Sb6.js} +5 -5
  283. package/dist/{register.status-health-sessions-CMZuvcON.js → register.status-health-sessions-bff6FfP2.js} +93 -93
  284. package/dist/{register.subclis-CS79-xpm.js → register.subclis-BhOrZYL6.js} +31 -31
  285. package/dist/{replies-Dx5zA8IX.js → replies-uQ56Hw52.js} +1 -1
  286. package/dist/{reply-BuhQ-Yv_.js → reply-CnFMSknJ.js} +4 -4
  287. package/dist/{reply-prefix-CS57j6KU.js → reply-prefix-XmrGZdy_.js} +1 -1
  288. package/dist/{resolve-route-Bxji0kZW.js → resolve-route-Ukn_7wVk.js} +2 -2
  289. package/dist/{rpc-cRmU1tSk.js → rpc-3QEhCMY4.js} +1 -1
  290. package/dist/{run-main-BH5kmZli.js → run-main-XgrqfX2-.js} +97 -97
  291. package/dist/{runtime-COI_IE2j.js → runtime-B4lkRQQD.js} +2 -2
  292. package/dist/{sandbox-BNSLjYyu.js → sandbox-CEIoYXZN.js} +18 -18
  293. package/dist/{sandbox-cli-C1OPjNfD.js → sandbox-cli-BrTy3weD.js} +26 -26
  294. package/dist/{secrets-cli-7Md_QcpC.js → secrets-cli-DeFPoA0b.js} +10 -10
  295. package/dist/{security-cli-D68NIF3V.js → security-cli-CpDjK_Rg.js} +43 -43
  296. package/dist/{send-C8xKNHVm.js → send-6U8MorA7.js} +6 -6
  297. package/dist/{send-DX2I6KZU.js → send-BY8NE-y9.js} +8 -8
  298. package/dist/{send-DikEpk7w.js → send-BdKdRPi6.js} +6 -6
  299. package/dist/{send-CUvJIfFz.js → send-CVDGeH7A.js} +11 -11
  300. package/dist/{send-BpYBrb6S.js → send-CtAy9-2u.js} +5 -5
  301. package/dist/{server-D_wuOlkf.js → server-C9XFPL3c.js} +19 -19
  302. package/dist/{server-context-Dl8XC4vq.js → server-context-DtOlWY9P.js} +12 -12
  303. package/dist/{server-lifecycle-BIuR7Tj0.js → server-lifecycle-CXzU2NM3.js} +2 -2
  304. package/dist/{server-middleware-C_4mR9wU.js → server-middleware-Bp3DeSvQ.js} +1 -1
  305. package/dist/{server-node-events-CIKBnBfy.js → server-node-events-D9JMB4qc.js} +4 -4
  306. package/dist/{server-node-events-B-IAFJfU.js → server-node-events-DU4-v1FY.js} +79 -79
  307. package/dist/{service-BcyKtT1n.js → service-DPP3q6R4.js} +15 -15
  308. package/dist/{session-DyGs2JIG.js → session-6uNAHyWp.js} +1 -1
  309. package/dist/{session-meta-C7WybT5h.js → session-meta-DGKTOhxQ.js} +1 -1
  310. package/dist/{session-utils-CYaFN47T.js → session-utils-hbZzVDyj.js} +6 -6
  311. package/dist/{sessions-Cd7cVPC-.js → sessions-CbWqJtkx.js} +4 -4
  312. package/dist/{sessions-i5lEEEca.js → sessions-DB4MRK6L.js} +15 -15
  313. package/dist/{shared-CL0m0H8G.js → shared-D6mi8wP1.js} +1 -1
  314. package/dist/{shared-BKC5qsuY.js → shared-yo9kxQZW.js} +3 -3
  315. package/dist/{skill-commands-Cl6M7kpE.js → skill-commands-Duha9iIC.js} +5 -5
  316. package/dist/{skill-scanner-WUtERLdW.js → skill-scanner-Di-O2Hg-.js} +6 -6
  317. package/dist/{skills-cli-C0gXv9PH.js → skills-cli-Dkjzn2SU.js} +5 -5
  318. package/dist/{skills-B18XPCNc.js → skills-dNa7QxCF.js} +3 -3
  319. package/dist/{skills-install-DYR6yH15.js → skills-install-ARBA7lP0.js} +6 -6
  320. package/dist/{skills-status-D9Rnj4xI.js → skills-status-B4yuFDEj.js} +1 -1
  321. package/dist/{status-QAYDXJY7.js → status-Bc7enxs_.js} +2 -2
  322. package/dist/{status-Dwe_iuCP.js → status-CZzSBlnp.js} +26 -26
  323. package/dist/{status.update-C0psHodW.js → status.update-aARe-MF6.js} +2 -2
  324. package/dist/{store-D-c26kSk.js → store-BpvlJ70I.js} +5 -5
  325. package/dist/{subagent-registry-eE5PhOhY.js → subagent-registry-Vdjnck5t.js} +159 -159
  326. package/dist/{system-cli-kpN0Gb37.js → system-cli-CYspMbRb.js} +9 -9
  327. package/dist/{system-run-command-DFxer2oq.js → system-run-command-BJQ7Q63p.js} +1 -1
  328. package/dist/{systemd-ebIdQGFn.js → systemd-BtVy3Rbo.js} +9 -9
  329. package/dist/{systemd-hints-tCX_kug7.js → systemd-hints-BetNJuAX.js} +6 -6
  330. package/dist/{systemd-linger-IFrOwkb9.js → systemd-linger-CWPZsER4.js} +1 -1
  331. package/dist/{tables-FZbGazqi.js → tables-Bv2Hq-F0.js} +1 -1
  332. package/dist/{tailnet-BKoOcmOa.js → tailnet-Dynp_Pgs.js} +1 -1
  333. package/dist/{plugin-sdk/target-errors-DqlHqAmV.js → target-errors-Bwi1jTIf.js} +4 -4
  334. package/dist/{tool-images-CXfdtMwT.js → tool-images-D7dXfsZW.js} +1 -1
  335. package/dist/{tui-D3HyXPhF.js → tui-CYj3VX-Y.js} +6 -6
  336. package/dist/{tui-cli-BYXDIVRr.js → tui-cli-g7SERHtf.js} +33 -33
  337. package/dist/{update-D372fHKr.js → update-DbGfT3_u.js} +3 -3
  338. package/dist/{update-cli-DZeEWYpT.js → update-cli-5TQOseRu.js} +109 -109
  339. package/dist/{update-cli-D2hEVao1.js → update-cli-NdFHE4ys.js} +9 -9
  340. package/dist/{update-runner-BINb9QSq.js → update-runner-De50joeS.js} +1 -1
  341. package/dist/{update-runner-j5RoheCK.js → update-runner-FvLlPsze.js} +16 -16
  342. package/dist/{web-aYzDbOgP.js → web-B6scHWeE.js} +4 -4
  343. package/dist/{web-BpIOoTcJ.js → web-CENAFqOm.js} +6 -6
  344. package/dist/web-CsKCU-Xc.js +127 -0
  345. package/dist/{web-DcyT3FlY.js → web-DkzOj528.js} +1 -1
  346. package/dist/{webhooks-cli-DgLGWDer.js → webhooks-cli-CoxuOMZ6.js} +6 -6
  347. package/dist/{whatsapp-actions-BC00XF83.js → whatsapp-actions-0CZKI1og.js} +19 -19
  348. package/dist/{with-timeout-DvPUrPuK.js → with-timeout-cpgy0l-9.js} +3 -3
  349. package/dist/{workspace-Cuq5sS-4.js → workspace-DYiAh9n2.js} +1 -1
  350. package/dist/{workspace-DkRZH7vl.js → workspace-DtFDeYRa.js} +23 -23
  351. package/dist/{workspace-dirs-DBhaJ0y_.js → workspace-dirs-BAyX7JI2.js} +1 -1
  352. package/dist/{wsl-KDz114y6.js → wsl-CiVud8tt.js} +2 -2
  353. package/package.json +1 -1
  354. package/dist/plugin-sdk/web-DLrSMEN4.js +0 -72
  355. package/dist/register.configure-CJVJLDtX.js +0 -175
  356. package/dist/web-Kse4dEsw.js +0 -127
@@ -3,12 +3,12 @@ import { g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as
3
3
  import { a as setConsoleSubsystemFilter, d as defaultRuntime, n as runtimeForLogger, o as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-CD-_2ECk.js";
4
4
  import "./boolean-DtWR5bt3.js";
5
5
  import { i as logAcceptedEnvOption, r as isTruthyEnvValue } from "./entry.js";
6
- import { Ai as DEFAULT_MODEL, B as OpenClawSchema, Er as resolveThinkingDefault, F as readConfigFileSnapshotForWrite, Fn as resolveSubagentMaxConcurrent, I as resolveConfigSnapshotHash, Jn as loadAuthProfileStoreForRuntime, M as loadConfig, Mn as buildTalkConfigResponse, N as parseConfigJson5, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, R as writeConfigFile, Si as normalizeSecretInput, St as AVATAR_MAX_BYTES, Tt as isAvatarImageDataUrl, Un as upsertAuthProfile, _r as resolveAllowedModelRef, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, bn as applyLegacyMigrations, br as resolveDefaultModelForAgent, dr as isCliProvider, ir as isPidAlive, j as createConfigIO, ji as DEFAULT_PROVIDER, k as migrateLegacyConfig, ki as DEFAULT_CONTEXT_TOKENS, kt as looksLikeAvatarPath, l as resolveApiKeyForProfile, lr as getModelRefStatus, mr as normalizeModelSelection, ot as parseByteSize, wr as resolveSubagentConfiguredModelSelection, wt as isAvatarHttpUrl, xi as normalizeOptionalSecretInput, xn as ensureControlUiAllowedOriginsForNonLoopbackBind, xr as resolveHooksGmailModel, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins } from "./auth-profiles-k09E8RLJ.js";
6
+ import { Ai as DEFAULT_MODEL, B as OpenClawSchema, Er as resolveThinkingDefault, F as readConfigFileSnapshotForWrite, Fn as resolveSubagentMaxConcurrent, I as resolveConfigSnapshotHash, Jn as loadAuthProfileStoreForRuntime, M as loadConfig, Mn as buildTalkConfigResponse, N as parseConfigJson5, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, R as writeConfigFile, Si as normalizeSecretInput, St as AVATAR_MAX_BYTES, Tt as isAvatarImageDataUrl, Un as upsertAuthProfile, _r as resolveAllowedModelRef, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, bn as applyLegacyMigrations, br as resolveDefaultModelForAgent, dr as isCliProvider, ir as isPidAlive, j as createConfigIO, ji as DEFAULT_PROVIDER, k as migrateLegacyConfig, ki as DEFAULT_CONTEXT_TOKENS, kt as looksLikeAvatarPath, l as resolveApiKeyForProfile, lr as getModelRefStatus, mr as normalizeModelSelection, ot as parseByteSize, wr as resolveSubagentConfiguredModelSelection, wt as isAvatarHttpUrl, xi as normalizeOptionalSecretInput, xn as ensureControlUiAllowedOriginsForNonLoopbackBind, xr as resolveHooksGmailModel, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins } from "./auth-profiles-CDN1QqUB.js";
7
7
  import { t as formatCliCommand } from "./command-format-DmULG-oQ.js";
8
- import { a as resolveAgentDir, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir } from "./agent-scope-BrbgAMci.js";
8
+ import { a as resolveAgentDir, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir } from "./agent-scope-qYbUVCHn.js";
9
9
  import { S as isCronRunSessionKey, T as parseAgentSessionKey, c as normalizeAgentId, g as normalizeAccountId$1, h as DEFAULT_ACCOUNT_ID, l as normalizeMainKey, m as toAgentStoreSessionKey, o as classifySessionKeyShape, p as toAgentRequestSessionKey, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, w as isSubagentSessionKey } from "./session-key-BLprDJYq.js";
10
10
  import { E as isPlainObject, T as truncateUtf16Safe, n as clamp, s as ensureDir, v as resolveUserPath, x as shortenHomePath } from "./utils-BHAtQ0dM.js";
11
- import { A as isNotFoundPathError, C as openBoundaryFileSync, P as matchesSkillFilter, S as openBoundaryFile, T as sameFileIdentity, a as DEFAULT_IDENTITY_FILENAME, c as DEFAULT_SOUL_FILENAME, d as ensureAgentWorkspace, h as resolveDefaultAgentWorkspaceDir, i as DEFAULT_HEARTBEAT_FILENAME, l as DEFAULT_TOOLS_FILENAME, o as DEFAULT_MEMORY_ALT_FILENAME, p as isWorkspaceOnboardingCompleted, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_MEMORY_FILENAME, t as DEFAULT_AGENTS_FILENAME, u as DEFAULT_USER_FILENAME, v as resolveWorkspaceTemplateDir, w as openVerifiedFileSync, y as resolveOpenClawPackageRoot } from "./workspace-DkRZH7vl.js";
11
+ import { A as isNotFoundPathError, C as openBoundaryFileSync, P as matchesSkillFilter, S as openBoundaryFile, T as sameFileIdentity, a as DEFAULT_IDENTITY_FILENAME, c as DEFAULT_SOUL_FILENAME, d as ensureAgentWorkspace, h as resolveDefaultAgentWorkspaceDir, i as DEFAULT_HEARTBEAT_FILENAME, l as DEFAULT_TOOLS_FILENAME, o as DEFAULT_MEMORY_ALT_FILENAME, p as isWorkspaceOnboardingCompleted, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_MEMORY_FILENAME, t as DEFAULT_AGENTS_FILENAME, u as DEFAULT_USER_FILENAME, v as resolveWorkspaceTemplateDir, w as openVerifiedFileSync, y as resolveOpenClawPackageRoot } from "./workspace-DtFDeYRa.js";
12
12
  import { i as logWarn, t as logDebug } from "./logger-rnlD7CTs.js";
13
13
  import { n as runExec, t as runCommandWithTimeout } from "./exec-lwQ7X6bf.js";
14
14
  import "./github-copilot-token-b8zw2qi2.js";
@@ -16,163 +16,163 @@ import "./host-env-security-CJMD0__Z.js";
16
16
  import { n as resolveRuntimeServiceVersion, t as VERSION } from "./version-CGDNfh5C.js";
17
17
  import "./env-vars-Dw0EwyGP.js";
18
18
  import { C as clearInternalHooks, E as triggerInternalHook, T as registerInternalHook, h as createEmptyPluginRegistry, t as CHANNEL_IDS, u as getActivePluginRegistry, w as createInternalHookEvent } from "./registry-eN0IzwTo.js";
19
- import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-hRB5Jb3F.js";
20
- import "./dock-CcEfMX5D.js";
21
- import "./model-Cd4C4aY1.js";
22
- import "./pi-model-discovery-COnY_kTM.js";
19
+ import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-Co__Fy6F.js";
20
+ import "./dock-CHDx-TGb.js";
21
+ import "./model-C30BtXEI.js";
22
+ import "./pi-model-discovery-ItDCP5Ab.js";
23
23
  import { d as hasBinary } from "./frontmatter-I4t5UjzX.js";
24
- import { c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-B18XPCNc.js";
25
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-DdR4BKPM.js";
26
- import { t as buildWorkspaceSkillStatus } from "./skills-status-D9Rnj4xI.js";
24
+ import { c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-dNa7QxCF.js";
25
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-C_j0uB0Y.js";
26
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-B4yuFDEj.js";
27
27
  import { _ as normalizeGatewayClientMode, f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_IDS, r as isGatewayCliClient, s as isWebchatClient, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-bQJz_2wn.js";
28
- import { $ as resolveAgentMainSessionKey, A as readSessionPreviewItemsFromTranscript, B as cleanStaleLockFiles, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, G as resolveSessionResetPolicy, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as canonicalizeMainSessionAlias, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as evaluateSessionFreshness, Y as mergeSessionEntry, Z as setSessionRuntimeModel, d as updateSessionStore, et as resolveExplicitAgentSessionKey, it as snapshotSessionOrigin, k as readSessionMessages, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKey, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-i5lEEEca.js";
29
- import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as normalizeWhatsAppTarget } from "./plugins-CO6qDFdk.js";
30
- import { i as resolveWhatsAppAccount } from "./accounts-CTKra7aS.js";
31
- import "./accounts-B4wV9IFm.js";
28
+ import { $ as resolveAgentMainSessionKey, A as readSessionPreviewItemsFromTranscript, B as cleanStaleLockFiles, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, G as resolveSessionResetPolicy, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as canonicalizeMainSessionAlias, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as evaluateSessionFreshness, Y as mergeSessionEntry, Z as setSessionRuntimeModel, d as updateSessionStore, et as resolveExplicitAgentSessionKey, it as snapshotSessionOrigin, k as readSessionMessages, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKey, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-DB4MRK6L.js";
29
+ import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as normalizeWhatsAppTarget } from "./plugins--_65-dc5.js";
30
+ import { i as resolveWhatsAppAccount } from "./accounts-CzfKkJDx.js";
31
+ import "./accounts-YtMo-RPC.js";
32
32
  import "./logging-CcxUDNcI.js";
33
- import "./accounts-DtaSiAum.js";
34
- import { t as buildChannelAccountBindings } from "./bindings-C9vpkXej.js";
35
- import "./send-BpYBrb6S.js";
36
- import "./send-CUvJIfFz.js";
37
- import { $n as normalizeSendPolicy, $t as isExternalHookSession, A as agentCommandFromIngress, Ar as waitForActiveTasks, At as formatRestartSentinelMessage, Br as onAgentEvent, Bt as normalizeOptionalSessionKey, C as readJsonBodyWithLimit, Cr as OPENAI_TTS_VOICES, D as sleepWithAbort, Dn as formatZonedTimestamp, Dr as markGatewayDraining, E as computeBackoff, Er as getTotalQueueSize, Et as runWithModelFallback, F as createDefaultDeps, Fn as isSystemEventContextChanged, Ft as normalizeHttpWebhookUrl, Gn as DEFAULT_INPUT_IMAGE_MIMES, Gt as buildDeliveryFromLegacyPayload, Ht as normalizePayloadToSystemText, I as createOutboundSendDeps$1, Ir as stripHeartbeatToken, It as normalizeCronJobCreate, Jn as extractFileContentFromSource, Kn as DEFAULT_INPUT_MAX_REDIRECTS, Kt as hasLegacyDeliveryHints, L as resolveAgentAvatar, Lr as clearAgentRunContext, Lt as normalizeCronJobPatch, M as resolveAgentDeliveryPlan, Mr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, Mt as summarizeRestartSentinel, N as resolveAgentOutboundTarget, Or as resetAllLanes, Ot as consumeRestartSentinel, P as createOutboundSendDeps, Pn as enqueueSystemEvent, Pt as writeRestartSentinel, Qn as resolveAgentTimeoutMs, Qt as getHookType, Rn as requestHeartbeatNow, Rr as emitAgentEvent, Rt as inferLegacyName, S as handleSlackHttpRequest, Sn as loadProviderUsageSummary, Sr as OPENAI_TTS_MODELS, St as resolveOutboundChannelPlugin, Un as ACP_SESSION_IDENTITY_RENDERER_VERSION, Ut as normalizeRequiredName, Vr as registerAgentRunContext, Vt as normalizeOptionalText, W as buildHistoryContextFromEntries, Wn as DEFAULT_INPUT_IMAGE_MAX_BYTES, Wt as migrateLegacyCronPayload, Xn as normalizeMimeList, Xt as buildSafeExternalPrompt, Yn as extractImageContentFromSource, Zn as resolveInputFileLimits, Zt as detectSuspiciousPatterns, _ as loadOpenClawPlugins, _n as setPreRestartDeferralCheck, _r as resolveTtsPrefsPath, _t as resolveOutboundSessionRoute, a as runSubagentAnnounceFlow, b as resolveAgentOutboundIdentity, bn as normalizeGroupActivation, br as setTtsProvider, bt as resolveOutboundTarget, c as abortEmbeddedPiRun, cn as parseVerboseOverride, cr as resolveAgentSessionDirs, ct as resolveCronStyleNow, d as applyToolPolicyPipeline, dn as deferGatewayRestartUntilIdle, dr as getTtsProvider, dt as runCliAgent, en as applyBrowserProxyPaths, er as resolveSendPolicy, f as buildDefaultToolPolicyPipelineSteps, fn as emitGatewayRestart, fr as isTtsEnabled, ft as createOpenClawTools, gn as setGatewaySigusr1RestartPolicy, gr as resolveTtsConfig, gt as ensureOutboundSessionEntry, h as resolvePluginTools, hn as scheduleGatewaySigusr1Restart, hr as resolveTtsAutoMode, ir as stopSubagentsForRequester, jr as CommandLane, kr as setCommandLaneConcurrency, kt as formatDoctorNonInteractiveHint, l as getActiveEmbeddedRunCount, ln as buildOutboundSessionContext, lr as resolveUserTimezone, lt as getCliSessionId, m as getPluginToolMeta, mn as markGatewaySigusr1RestartHandled, mr as resolveTtsApiKey, mt as resolveAnnounceTargetFromKey, n as initSubagentRegistry, nn as resolveSessionAuthProfileOverride, nt as createReplyDispatcher, o as clearSessionQueues, on as applyModelOverrideToSessionEntry, ot as BARE_SESSION_RESET_PROMPT, pn as isGatewaySigusr1RestartExternallyAllowed, pr as isTtsProviderConfigured, pt as readLatestAssistantReply, qn as DEFAULT_INPUT_TIMEOUT_MS, qt as stripLegacyDeliveryFields, r as listDescendantRunsForRequester, rr as isAbortRequestText, rt as getTotalPendingReplies, s as runEmbeddedPiAgent, sn as applyVerboseOverride, sr as getAcpSessionManager, t as countActiveDescendantRuns, tn as persistBrowserProxyFiles, tt as dispatchInboundMessage, u as waitForEmbeddedPiRunEnd, un as consumeGatewaySigusr1RestartAuthorization, ur as clearBootstrapSnapshot, ut as setCliSessionId, v as createPluginRuntime, vn as triggerOpenClawRestart, vr as resolveTtsProviderOrder, w as requestBodyErrorToText, wr as getActiveTaskCount, wt as resetDirectoryCache, xr as textToSpeech, xt as resolveSessionDeliveryTarget, yn as unbindThreadBindingsBySessionKey, yr as setTtsEnabled, zr as getAgentRunContext, zt as normalizeOptionalAgentId } from "./subagent-registry-eE5PhOhY.js";
33
+ import "./accounts-CQrvvU8V.js";
34
+ import { t as buildChannelAccountBindings } from "./bindings-D9ZiGe2K.js";
35
+ import "./send-CtAy9-2u.js";
36
+ import "./send-CVDGeH7A.js";
37
+ import { $n as normalizeSendPolicy, $t as isExternalHookSession, A as agentCommandFromIngress, Ar as waitForActiveTasks, At as formatRestartSentinelMessage, Br as onAgentEvent, Bt as normalizeOptionalSessionKey, C as readJsonBodyWithLimit, Cr as OPENAI_TTS_VOICES, D as sleepWithAbort, Dn as formatZonedTimestamp, Dr as markGatewayDraining, E as computeBackoff, Er as getTotalQueueSize, Et as runWithModelFallback, F as createDefaultDeps, Fn as isSystemEventContextChanged, Ft as normalizeHttpWebhookUrl, Gn as DEFAULT_INPUT_IMAGE_MIMES, Gt as buildDeliveryFromLegacyPayload, Ht as normalizePayloadToSystemText, I as createOutboundSendDeps$1, Ir as stripHeartbeatToken, It as normalizeCronJobCreate, Jn as extractFileContentFromSource, Kn as DEFAULT_INPUT_MAX_REDIRECTS, Kt as hasLegacyDeliveryHints, L as resolveAgentAvatar, Lr as clearAgentRunContext, Lt as normalizeCronJobPatch, M as resolveAgentDeliveryPlan, Mr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, Mt as summarizeRestartSentinel, N as resolveAgentOutboundTarget, Or as resetAllLanes, Ot as consumeRestartSentinel, P as createOutboundSendDeps, Pn as enqueueSystemEvent, Pt as writeRestartSentinel, Qn as resolveAgentTimeoutMs, Qt as getHookType, Rn as requestHeartbeatNow, Rr as emitAgentEvent, Rt as inferLegacyName, S as handleSlackHttpRequest, Sn as loadProviderUsageSummary, Sr as OPENAI_TTS_MODELS, St as resolveOutboundChannelPlugin, Un as ACP_SESSION_IDENTITY_RENDERER_VERSION, Ut as normalizeRequiredName, Vr as registerAgentRunContext, Vt as normalizeOptionalText, W as buildHistoryContextFromEntries, Wn as DEFAULT_INPUT_IMAGE_MAX_BYTES, Wt as migrateLegacyCronPayload, Xn as normalizeMimeList, Xt as buildSafeExternalPrompt, Yn as extractImageContentFromSource, Zn as resolveInputFileLimits, Zt as detectSuspiciousPatterns, _ as loadOpenClawPlugins, _n as setPreRestartDeferralCheck, _r as resolveTtsPrefsPath, _t as resolveOutboundSessionRoute, a as runSubagentAnnounceFlow, b as resolveAgentOutboundIdentity, bn as normalizeGroupActivation, br as setTtsProvider, bt as resolveOutboundTarget, c as abortEmbeddedPiRun, cn as parseVerboseOverride, cr as resolveAgentSessionDirs, ct as resolveCronStyleNow, d as applyToolPolicyPipeline, dn as deferGatewayRestartUntilIdle, dr as getTtsProvider, dt as runCliAgent, en as applyBrowserProxyPaths, er as resolveSendPolicy, f as buildDefaultToolPolicyPipelineSteps, fn as emitGatewayRestart, fr as isTtsEnabled, ft as createOpenClawTools, gn as setGatewaySigusr1RestartPolicy, gr as resolveTtsConfig, gt as ensureOutboundSessionEntry, h as resolvePluginTools, hn as scheduleGatewaySigusr1Restart, hr as resolveTtsAutoMode, ir as stopSubagentsForRequester, jr as CommandLane, kr as setCommandLaneConcurrency, kt as formatDoctorNonInteractiveHint, l as getActiveEmbeddedRunCount, ln as buildOutboundSessionContext, lr as resolveUserTimezone, lt as getCliSessionId, m as getPluginToolMeta, mn as markGatewaySigusr1RestartHandled, mr as resolveTtsApiKey, mt as resolveAnnounceTargetFromKey, n as initSubagentRegistry, nn as resolveSessionAuthProfileOverride, nt as createReplyDispatcher, o as clearSessionQueues, on as applyModelOverrideToSessionEntry, ot as BARE_SESSION_RESET_PROMPT, pn as isGatewaySigusr1RestartExternallyAllowed, pr as isTtsProviderConfigured, pt as readLatestAssistantReply, qn as DEFAULT_INPUT_TIMEOUT_MS, qt as stripLegacyDeliveryFields, r as listDescendantRunsForRequester, rr as isAbortRequestText, rt as getTotalPendingReplies, s as runEmbeddedPiAgent, sn as applyVerboseOverride, sr as getAcpSessionManager, t as countActiveDescendantRuns, tn as persistBrowserProxyFiles, tt as dispatchInboundMessage, u as waitForEmbeddedPiRunEnd, un as consumeGatewaySigusr1RestartAuthorization, ur as clearBootstrapSnapshot, ut as setCliSessionId, v as createPluginRuntime, vn as triggerOpenClawRestart, vr as resolveTtsProviderOrder, w as requestBodyErrorToText, wr as getActiveTaskCount, wt as resetDirectoryCache, xr as textToSpeech, xt as resolveSessionDeliveryTarget, yn as unbindThreadBindingsBySessionKey, yr as setTtsEnabled, zr as getAgentRunContext, zt as normalizeOptionalAgentId } from "./subagent-registry-Vdjnck5t.js";
38
38
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-Be1MArvM.js";
39
39
  import { i as normalizeInputProvenance } from "./input-provenance-BDYpbBeC.js";
40
40
  import "./chat-envelope-AUuZAcrC.js";
41
- import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-DrZ4qfxw.js";
42
- import { $ as validateNodePairApproveParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsAuthSetParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeDescribeParams, Jt as revokeDeviceToken, K as validateModelsListParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodeListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeInvokeParams, Xt as summarizeDeviceTokens, Y as validateNodeEventParams, Yt as rotateDeviceToken, Z as validateNodeInvokeResultParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validatePollParams, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairListParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validateNodeRenameParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodePairRequestParams, o as validateAgentsCreateParams, ot as validatePushTestParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateModelsVerifyParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validateNodePairVerifyParams, s as validateAgentsDeleteParams, st as validateRequestFrame, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairRejectParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-CIji7FpE.js";
43
- import { f as loadGatewayTlsRuntime$1, l as authorizeOperatorScopesForMethod, n as callGateway, s as ADMIN_SCOPE$3, u as isNodeRoleMethod } from "./call-CBH5yDff.js";
41
+ import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-1hhV5hS6.js";
42
+ import { $ as validateNodePairApproveParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsAuthSetParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeDescribeParams, Jt as revokeDeviceToken, K as validateModelsListParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodeListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeInvokeParams, Xt as summarizeDeviceTokens, Y as validateNodeEventParams, Yt as rotateDeviceToken, Z as validateNodeInvokeResultParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validatePollParams, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairListParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validateNodeRenameParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodePairRequestParams, o as validateAgentsCreateParams, ot as validatePushTestParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateModelsVerifyParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validateNodePairVerifyParams, s as validateAgentsDeleteParams, st as validateRequestFrame, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairRejectParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-Swf30UOh.js";
43
+ import { f as loadGatewayTlsRuntime$1, l as authorizeOperatorScopesForMethod, n as callGateway, s as ADMIN_SCOPE$3, u as isNodeRoleMethod } from "./call-BSBuLNiX.js";
44
44
  import "./pairing-token-b8YwYBlW.js";
45
45
  import { t as safeEqualSecret } from "./secret-equal-CzmdvIUc.js";
46
- import { a as isTrustedProxyAddress, c as pickPrimaryLanIPv4, d as resolveGatewayListenHosts, f as rawDataToString, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as isLocalishHost, u as resolveGatewayBindHost } from "./net-Bxr80JTs.js";
47
- import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-BKoOcmOa.js";
46
+ import { a as isTrustedProxyAddress, c as pickPrimaryLanIPv4, d as resolveGatewayListenHosts, f as rawDataToString, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as isLocalishHost, u as resolveGatewayBindHost } from "./net-DrfP4uzJ.js";
47
+ import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-Dynp_Pgs.js";
48
48
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-C5eaMCmn.js";
49
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-DvPUrPuK.js";
50
- import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-Bm4UojU1.js";
51
- import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-DOls91uN.js";
49
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-cpgy0l-9.js";
50
+ import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-CQmmhMaR.js";
51
+ import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-C5Por-ID.js";
52
52
  import "./diagnostic-session-state-B5Z0I32_.js";
53
- import { S as saveCronStore, b as loadCronStore, x as resolveCronStorePath } from "./send-DX2I6KZU.js";
54
- import { c as detectMime } from "./image-ops-B2K36FLD.js";
55
- import "./pi-embedded-helpers-ET1kDdN1.js";
56
- import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-BNSLjYyu.js";
53
+ import { S as saveCronStore, b as loadCronStore, x as resolveCronStorePath } from "./send-BY8NE-y9.js";
54
+ import { c as detectMime } from "./image-ops-HxQLrFqd.js";
55
+ import "./pi-embedded-helpers-Cc4tC0fE.js";
56
+ import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-CEIoYXZN.js";
57
57
  import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-CDe8aNjS.js";
58
- import "./chrome-BVlYi4nu.js";
58
+ import "./chrome-zP7qr3zd.js";
59
59
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-CFR4X5-p.js";
60
- import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-DuCrQ5K9.js";
61
- import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-Dl8XC4vq.js";
62
- import "./paths-BPXmr3Zn.js";
60
+ import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-DhaM6Od5.js";
61
+ import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-DtOlWY9P.js";
62
+ import "./paths-Bj8pNglF.js";
63
63
  import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-BMVmEUXt.js";
64
64
  import { o as isErrno, r as formatErrorMessage } from "./errors-BkARgYnD.js";
65
- import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe--YXsniNZ.js";
66
- import { n as SsrFBlockedError } from "./proxy-env-DQGTNk9X.js";
67
- import "./store-D-c26kSk.js";
68
- import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-Dczj_PV_.js";
65
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-BQS_SZ0h.js";
66
+ import { n as SsrFBlockedError } from "./proxy-env-DHBs_DSq.js";
67
+ import "./store-BpvlJ70I.js";
68
+ import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-DgCQT1oY.js";
69
69
  import { t as movePathToTrash } from "./trash-BgQvmW5g.js";
70
- import "./server-middleware-C_4mR9wU.js";
71
- import "./tool-images-CXfdtMwT.js";
70
+ import "./server-middleware-Bp3DeSvQ.js";
71
+ import "./tool-images-D7dXfsZW.js";
72
72
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-BxCyPtl0.js";
73
- import "./models-config-CkOKPbk9.js";
74
- import "./exec-approvals-allowlist-IOB4HV3z.js";
75
- import "./exec-safe-bin-runtime-policy-CEdwujzY.js";
76
- import { n as loadModelCatalog } from "./model-catalog-Chb7lzRo.js";
77
- import "./fetch-BAv7yBBS.js";
78
- import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-DBPatTZv.js";
79
- import { t as fetchWithSsrFGuard } from "./fetch-guard-oYuVfv1t.js";
80
- import { x as extractTextFromChatContent } from "./image-BOSsTjNj.js";
73
+ import "./models-config-NbV2Gu7N.js";
74
+ import "./exec-approvals-allowlist-Cw4xMxbI.js";
75
+ import "./exec-safe-bin-runtime-policy-Bu0TwxE1.js";
76
+ import { n as loadModelCatalog } from "./model-catalog-C0pv85X0.js";
77
+ import "./fetch-lTdl-0IY.js";
78
+ import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-CF3DjqKy.js";
79
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-CQZ5FOwI.js";
80
+ import { x as extractTextFromChatContent } from "./image-BgCM5v5-.js";
81
81
  import "./tool-display-B8GyZt-E.js";
82
- import "./api-key-rotation-BdoPDM3X.js";
82
+ import "./api-key-rotation-XTdz_cvI.js";
83
83
  import "./proxy-fetch-DNS2eEZm.js";
84
- import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-CS57j6KU.js";
84
+ import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-XmrGZdy_.js";
85
85
  import "./chunk-C0-ifupK.js";
86
- import "./markdown-tables-Mk_tnsfY.js";
87
- import "./ir-BCl0dA3G.js";
86
+ import "./markdown-tables-D47ZANhY.js";
87
+ import "./ir-C_-vG6Lv.js";
88
88
  import "./render-Bwu_WxwA.js";
89
- import { a as ToolInputError } from "./target-errors-CL097N6P.js";
90
- import { r as isRestartEnabled } from "./commands-B7V-vN3N.js";
91
- import "./commands-registry-B6LbRm3U.js";
89
+ import { a as ToolInputError } from "./target-errors-Bwi1jTIf.js";
90
+ import { r as isRestartEnabled } from "./commands-B8w5Izi1.js";
91
+ import "./commands-registry-Ctux_Nq3.js";
92
92
  import "./fetch-BAIuE19S.js";
93
93
  import "./retry-CtBUwwIQ.js";
94
- import { a as readChannelAllowFromStoreSync } from "./pairing-store-WGGwqFJB.js";
94
+ import { a as readChannelAllowFromStoreSync } from "./pairing-store-BcJH8WDh.js";
95
95
  import { a as mergeExecApprovalsSocketDefaults, c as readExecApprovalsSnapshot, p as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals, t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-CUPLFghN.js";
96
- import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-NjyoMja_.js";
97
- import { n as resolveSystemRunCommand } from "./system-run-command-DFxer2oq.js";
98
- import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-CYaFN47T.js";
96
+ import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-DNzr75bx.js";
97
+ import { n as resolveSystemRunCommand } from "./system-run-command-BJQ7Q63p.js";
98
+ import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-hbZzVDyj.js";
99
99
  import { c as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as deriveSessionTotalTokens, t as discoverAllSessions } from "./session-cost-usage-vUeaQKAz.js";
100
100
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-BzVVjHV2.js";
101
- import { S as registerSkillsChangeListener, _ as requestNodePairing, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, g as renamePairedNode, h as rejectNodePairing, l as refreshRemoteBinsForConnectedNodes, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion, y as verifyNodeToken } from "./skill-commands-Cl6M7kpE.js";
102
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-DBhaJ0y_.js";
101
+ import { S as registerSkillsChangeListener, _ as requestNodePairing, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, g as renamePairedNode, h as rejectNodePairing, l as refreshRemoteBinsForConnectedNodes, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion, y as verifyNodeToken } from "./skill-commands-Duha9iIC.js";
102
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-BAyX7JI2.js";
103
103
  import { t as getChannelActivity } from "./channel-activity-EI_tOOrC.js";
104
104
  import { n as normalizePollInput } from "./polls-DXeUmcgz.js";
105
- import "./tables-FZbGazqi.js";
106
- import "./server-lifecycle-BIuR7Tj0.js";
105
+ import "./tables-Bv2Hq-F0.js";
106
+ import "./server-lifecycle-CXzU2NM3.js";
107
107
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-Bi1uV655.js";
108
- import { n as resolveMessageChannelSelection } from "./channel-selection-DZrPYytY.js";
109
- import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-Bm8hMcPA.js";
110
- import "./send-C8xKNHVm.js";
111
- import "./outbound-attachment-Baso-yal.js";
108
+ import { n as resolveMessageChannelSelection } from "./channel-selection-BKyzCX35.js";
109
+ import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-BxiIEIvc.js";
110
+ import "./send-6U8MorA7.js";
111
+ import "./outbound-attachment-BMlPpVOn.js";
112
112
  import "./delivery-queue-p3JO2jjt.js";
113
- import "./send-DikEpk7w.js";
114
- import "./resolve-route-Bxji0kZW.js";
115
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-Cp3wptYh.js";
113
+ import "./send-BdKdRPi6.js";
114
+ import "./resolve-route-Ukn_7wVk.js";
115
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-BbLCMNCc.js";
116
116
  import "./proxy-DUWLUvch.js";
117
- import "./replies-Dx5zA8IX.js";
118
- import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-ngPRx_6_.js";
117
+ import "./replies-uQ56Hw52.js";
118
+ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-DX8Hw_zc.js";
119
119
  import "./prompt-style-C1-jML6O.js";
120
- import "./pairing-labels-BPTURWrI.js";
121
- import "./session-meta-C7WybT5h.js";
122
- import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-BbEwsmor.js";
123
- import { r as resolveMemorySearchConfig } from "./manager-rK3J4Po3.js";
124
- import "./query-expansion-CP4BjmxS.js";
120
+ import "./pairing-labels-CesrJlbr.js";
121
+ import "./session-meta-DGKTOhxQ.js";
122
+ import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-BwxTb296.js";
123
+ import { r as resolveMemorySearchConfig } from "./manager-C0nx9SKi.js";
124
+ import "./query-expansion-BkWbp0bs.js";
125
125
  import { t as formatDocsLink } from "./links-B3vCyexf.js";
126
126
  import { n as runCommandWithRuntime } from "./cli-utils-aSBNHQae.js";
127
127
  import { t as formatHelpExamples } from "./help-format-DXdeaYOY.js";
128
128
  import { n as withProgress } from "./progress-B-CzNZ2g.js";
129
- import "./constants-D1Q8yQ1_.js";
130
- import "./context-window-guard-BqrKjiIm.js";
129
+ import "./constants-By6nxsIT.js";
130
+ import "./context-window-guard-aKoSfdAy.js";
131
131
  import { i as onHeartbeatEvent, r as getLastHeartbeatEvent, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-IKnrpY6x.js";
132
132
  import { t as ensureOpenClawCliOnPath } from "./path-env-S7Od8UBX.js";
133
133
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-lwpZk6nY.js";
134
134
  import { n as inheritOptionFromParent } from "./command-options-DGYxc3D_.js";
135
135
  import { t as WizardCancelledError } from "./prompts-QSI6gA3k.js";
136
136
  import { t as resolveChannelDefaultAccountId } from "./helpers-D6BlzJnx.js";
137
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-BLKDc8io.js";
138
- import { t as isWithinDir } from "./path-safety-DiJhMaUA.js";
139
- import { t as assertCanonicalPathWithinBase } from "./install-safe-path-DXP_88Em.js";
140
- import "./skill-scanner-WUtERLdW.js";
141
- import { n as formatConfigIssueLines } from "./issue-format-Cat2txpr.js";
137
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-ClQFzaOQ.js";
138
+ import { t as isWithinDir } from "./path-safety-BHBxNYfO.js";
139
+ import { t as assertCanonicalPathWithinBase } from "./install-safe-path-K9dhxxcy.js";
140
+ import "./skill-scanner-Di-O2Hg-.js";
141
+ import { n as formatConfigIssueLines } from "./issue-format-1i6b6tFd.js";
142
142
  import { t as buildChannelAccountSnapshot } from "./status-BIupzBh9.js";
143
- import "./channels-status-issues-Bb3ugkRr.js";
144
- import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-QpVJSBBX.js";
145
- import "./daemon-install-helpers-Crntu4pF.js";
143
+ import "./channels-status-issues-Cn340Vbe.js";
144
+ import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-BzZpHz-O.js";
145
+ import "./daemon-install-helpers-DLIsWH31.js";
146
146
  import "./runtime-guard-Cpm1AIhT.js";
147
- import "./systemd-ebIdQGFn.js";
148
- import "./service-BcyKtT1n.js";
149
- import "./lifecycle-core-CliTbXyj.js";
150
- import "./systemd-hints-tCX_kug7.js";
147
+ import "./systemd-BtVy3Rbo.js";
148
+ import "./service-DPP3q6R4.js";
149
+ import "./lifecycle-core-BZVbJEGI.js";
150
+ import "./systemd-hints-BetNJuAX.js";
151
151
  import { t as parsePort$1 } from "./parse-port-Dq63ch6Y.js";
152
- import { n as addGatewayServiceCommands } from "./daemon-cli-BxFuWNM-.js";
153
- import "./diagnostics-D4xhje-h.js";
152
+ import { n as addGatewayServiceCommands } from "./daemon-cli-S2o4Kcwu.js";
153
+ import "./diagnostics-0PFoNolS.js";
154
154
  import "./table-CFrE3ObJ.js";
155
155
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-DW5c74bk.js";
156
- import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-CL0m0H8G.js";
157
- import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-p4lBCTPz.js";
158
- import { t as discoverGatewayBeacons } from "./bonjour-discovery-DyLRXLw1.js";
159
- import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-Dwe_iuCP.js";
160
- import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-DOIxOlnm.js";
161
- import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Bn4e_1By.js";
162
- import { o as isBitseekBuild } from "./status.update-C0psHodW.js";
163
- import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-C3TU0o4T.js";
164
- import { i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-COI_IE2j.js";
165
- import { t as runOnboardingWizard } from "./onboarding-DeqWu7mq.js";
166
- import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-CzIypSJf.js";
156
+ import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-D6mi8wP1.js";
157
+ import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-pIY_GfjC.js";
158
+ import { t as discoverGatewayBeacons } from "./bonjour-discovery-CBcz-0Ts.js";
159
+ import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-CZzSBlnp.js";
160
+ import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-DNfTeO7M.js";
161
+ import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BxJ3OmP_.js";
162
+ import { o as isBitseekBuild } from "./status.update-aARe-MF6.js";
163
+ import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-Cc-TbAKt.js";
164
+ import { i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-B4lkRQQD.js";
165
+ import { t as runOnboardingWizard } from "./onboarding-DW6uIEzO.js";
166
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-BM60Vdjq.js";
167
167
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-DExJ40qn.js";
168
- import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-DKPye8Fx.js";
169
- import "./node-service-Cei5AkFg.js";
170
- import "./shared-BKC5qsuY.js";
171
- import { d as verifyOpenAiCompatibleModel } from "./onboard-custom.shared-DoXUpHZV.js";
172
- import { n as formatInstallFailureMessage, t as installSkill } from "./skills-install-DYR6yH15.js";
173
- import { t as runGatewayUpdate } from "./update-runner-j5RoheCK.js";
174
- import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-Cuq5sS-4.js";
175
- import { n as forceFreePortAndWait } from "./ports-CUjMnvTs.js";
168
+ import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-xyqdwsT9.js";
169
+ import "./node-service-DEfPXKwF.js";
170
+ import "./shared-yo9kxQZW.js";
171
+ import { d as verifyOpenAiCompatibleModel } from "./onboard-custom.shared-tQHd1XwJ.js";
172
+ import { n as formatInstallFailureMessage, t as installSkill } from "./skills-install-ARBA7lP0.js";
173
+ import { t as runGatewayUpdate } from "./update-runner-FvLlPsze.js";
174
+ import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-DYiAh9n2.js";
175
+ import { n as forceFreePortAndWait } from "./ports-Cw4Nwv2D.js";
176
176
  import { spawn, spawnSync } from "node:child_process";
177
177
  import { fileURLToPath, pathToFileURL } from "node:url";
178
178
  import path from "node:path";
@@ -181,7 +181,7 @@ import * as fsSync from "node:fs";
181
181
  import fs from "node:fs";
182
182
  import chalk from "chalk";
183
183
  import { isDeepStrictEqual } from "node:util";
184
- import fs$1 from "node:fs/promises";
184
+ import fsPromises from "node:fs/promises";
185
185
  import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
186
186
  import { z } from "zod";
187
187
  import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
@@ -1251,7 +1251,7 @@ function resolveCheckIntervalMs(cfg) {
1251
1251
  }
1252
1252
  async function readState(statePath) {
1253
1253
  try {
1254
- const raw = await fs$1.readFile(statePath, "utf-8");
1254
+ const raw = await fsPromises.readFile(statePath, "utf-8");
1255
1255
  const parsed = JSON.parse(raw);
1256
1256
  return parsed && typeof parsed === "object" ? parsed : {};
1257
1257
  } catch {
@@ -1332,7 +1332,7 @@ async function runAutoUpdateCommand(params) {
1332
1332
  path.join(params.root, "dist", "index.mjs")
1333
1333
  ];
1334
1334
  for (const candidate of candidates) try {
1335
- await fs$1.access(candidate);
1335
+ await fsPromises.access(candidate);
1336
1336
  argv.push(execPath, candidate, ...baseArgs);
1337
1337
  break;
1338
1338
  } catch {}
@@ -4407,20 +4407,20 @@ async function drainPendingWrite(filePath) {
4407
4407
  if (pending) await pending.catch(() => void 0);
4408
4408
  }
4409
4409
  async function pruneIfNeeded(filePath, opts) {
4410
- const stat = await fs$1.stat(filePath).catch(() => null);
4410
+ const stat = await fsPromises.stat(filePath).catch(() => null);
4411
4411
  if (!stat || stat.size <= opts.maxBytes) return;
4412
- const lines = (await fs$1.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4412
+ const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4413
4413
  const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
4414
4414
  const { randomBytes } = await import("node:crypto");
4415
4415
  const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
4416
- await fs$1.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4417
- await fs$1.rename(tmp, filePath);
4416
+ await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4417
+ await fsPromises.rename(tmp, filePath);
4418
4418
  }
4419
4419
  async function appendCronRunLog(filePath, entry, opts) {
4420
4420
  const resolved = path.resolve(filePath);
4421
4421
  const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
4422
- await fs$1.mkdir(path.dirname(resolved), { recursive: true });
4423
- await fs$1.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4422
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
4423
+ await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4424
4424
  await pruneIfNeeded(resolved, {
4425
4425
  maxBytes: opts?.maxBytes ?? DEFAULT_CRON_RUN_LOG_MAX_BYTES,
4426
4426
  keepLines: opts?.keepLines ?? DEFAULT_CRON_RUN_LOG_KEEP_LINES
@@ -4514,7 +4514,7 @@ function filterRunLogEntries(entries, opts) {
4514
4514
  async function readCronRunLogEntriesPage(filePath, opts) {
4515
4515
  await drainPendingWrite(filePath);
4516
4516
  const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
4517
- const raw = await fs$1.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4517
+ const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4518
4518
  const statuses = normalizeRunStatuses(opts);
4519
4519
  const deliveryStatuses = normalizeDeliveryStatuses(opts);
4520
4520
  const query = opts?.query?.trim().toLowerCase() ?? "";
@@ -4550,7 +4550,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4550
4550
  const query = opts.query?.trim().toLowerCase() ?? "";
4551
4551
  const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
4552
4552
  const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
4553
- const jsonlFiles = (await fs$1.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4553
+ const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4554
4554
  if (jsonlFiles.length === 0) return {
4555
4555
  entries: [],
4556
4556
  total: 0,
@@ -4561,7 +4561,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4561
4561
  };
4562
4562
  await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
4563
4563
  const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
4564
- return parseAllRunLogEntries(await fs$1.readFile(filePath, "utf-8").catch(() => ""));
4564
+ return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
4565
4565
  }))).flat(), {
4566
4566
  statuses,
4567
4567
  deliveryStatuses,
@@ -9769,7 +9769,7 @@ function resolveAgentWorkspaceFileOrRespondError(params, respond) {
9769
9769
  }
9770
9770
  async function resolveWorkspaceRealPath(workspaceDir) {
9771
9771
  try {
9772
- return await fs$1.realpath(workspaceDir);
9772
+ return await fsPromises.realpath(workspaceDir);
9773
9773
  } catch {
9774
9774
  return path.resolve(workspaceDir);
9775
9775
  }
@@ -9793,7 +9793,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9793
9793
  }
9794
9794
  let candidateLstat;
9795
9795
  try {
9796
- candidateLstat = await fs$1.lstat(candidatePath);
9796
+ candidateLstat = await fsPromises.lstat(candidatePath);
9797
9797
  } catch (err) {
9798
9798
  if (isNotFoundPathError(err)) {
9799
9799
  if (params.allowMissing) return {
@@ -9813,7 +9813,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9813
9813
  if (candidateLstat.isSymbolicLink()) {
9814
9814
  let targetReal;
9815
9815
  try {
9816
- targetReal = await fs$1.realpath(candidatePath);
9816
+ targetReal = await fsPromises.realpath(candidatePath);
9817
9817
  } catch (err) {
9818
9818
  if (isNotFoundPathError(err)) {
9819
9819
  if (params.allowMissing) return {
@@ -9832,7 +9832,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9832
9832
  }
9833
9833
  let targetStat;
9834
9834
  try {
9835
- targetStat = await fs$1.stat(targetReal);
9835
+ targetStat = await fsPromises.stat(targetReal);
9836
9836
  } catch (err) {
9837
9837
  if (isNotFoundPathError(err)) {
9838
9838
  if (params.allowMissing) return {
@@ -9879,13 +9879,13 @@ async function resolveAgentWorkspaceFilePath(params) {
9879
9879
  return {
9880
9880
  kind: "ready",
9881
9881
  requestPath,
9882
- ioPath: await fs$1.realpath(candidatePath).catch(() => candidatePath),
9882
+ ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
9883
9883
  workspaceReal
9884
9884
  };
9885
9885
  }
9886
9886
  async function statFileSafely(filePath) {
9887
9887
  try {
9888
- const [stat, lstat] = await Promise.all([fs$1.stat(filePath), fs$1.lstat(filePath)]);
9888
+ const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
9889
9889
  if (lstat.isSymbolicLink() || !stat.isFile()) return null;
9890
9890
  if (stat.nlink > 1) return null;
9891
9891
  if (!sameFileIdentity(stat, lstat)) return null;
@@ -9970,7 +9970,7 @@ function resolveOptionalStringParam(value) {
9970
9970
  async function moveToTrashBestEffort(pathname) {
9971
9971
  if (!pathname) return;
9972
9972
  try {
9973
- await fs$1.access(pathname);
9973
+ await fsPromises.access(pathname);
9974
9974
  } catch {
9975
9975
  return;
9976
9976
  }
@@ -10046,7 +10046,7 @@ const agentsHandlers = {
10046
10046
  dir: workspaceDir,
10047
10047
  ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
10048
10048
  });
10049
- await fs$1.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10049
+ await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10050
10050
  await writeConfigFile(nextConfig);
10051
10051
  const safeName = sanitizeIdentityLine(rawName);
10052
10052
  const emoji = resolveOptionalStringParam(params.emoji);
@@ -10059,7 +10059,7 @@ const agentsHandlers = {
10059
10059
  ...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
10060
10060
  ""
10061
10061
  ];
10062
- await fs$1.appendFile(identityPath, lines.join("\n"), "utf-8");
10062
+ await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
10063
10063
  respond(true, {
10064
10064
  ok: true,
10065
10065
  agentId,
@@ -10094,9 +10094,9 @@ const agentsHandlers = {
10094
10094
  });
10095
10095
  if (avatar) {
10096
10096
  const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
10097
- await fs$1.mkdir(workspace, { recursive: true });
10097
+ await fsPromises.mkdir(workspace, { recursive: true });
10098
10098
  const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
10099
- await fs$1.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10099
+ await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10100
10100
  }
10101
10101
  respond(true, {
10102
10102
  ok: true,
@@ -10220,7 +10220,7 @@ const agentsHandlers = {
10220
10220
  const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
10221
10221
  if (!resolved) return;
10222
10222
  const { agentId, workspaceDir, name } = resolved;
10223
- await fs$1.mkdir(workspaceDir, { recursive: true });
10223
+ await fsPromises.mkdir(workspaceDir, { recursive: true });
10224
10224
  const filePath = path.join(workspaceDir, name);
10225
10225
  const resolvedPath = await resolveWorkspaceFilePathOrRespond({
10226
10226
  respond,
@@ -12513,14 +12513,14 @@ function isRollingLogFile(file) {
12513
12513
  return ROLLING_LOG_RE.test(path.basename(file));
12514
12514
  }
12515
12515
  async function resolveLogFile(file) {
12516
- if (await fs$1.stat(file).catch(() => null)) return file;
12516
+ if (await fsPromises.stat(file).catch(() => null)) return file;
12517
12517
  if (!isRollingLogFile(file)) return file;
12518
12518
  const dir = path.dirname(file);
12519
- const entries = await fs$1.readdir(dir, { withFileTypes: true }).catch(() => null);
12519
+ const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
12520
12520
  if (!entries) return file;
12521
12521
  return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
12522
12522
  const fullPath = path.join(dir, entry.name);
12523
- const fileStat = await fs$1.stat(fullPath).catch(() => null);
12523
+ const fileStat = await fsPromises.stat(fullPath).catch(() => null);
12524
12524
  return fileStat ? {
12525
12525
  path: fullPath,
12526
12526
  mtimeMs: fileStat.mtimeMs
@@ -12528,7 +12528,7 @@ async function resolveLogFile(file) {
12528
12528
  }))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
12529
12529
  }
12530
12530
  async function readLogSlice(params) {
12531
- const stat = await fs$1.stat(params.file).catch(() => null);
12531
+ const stat = await fsPromises.stat(params.file).catch(() => null);
12532
12532
  if (!stat) return {
12533
12533
  cursor: 0,
12534
12534
  size: 0,
@@ -12566,7 +12566,7 @@ async function readLogSlice(params) {
12566
12566
  truncated,
12567
12567
  reset
12568
12568
  };
12569
- const handle = await fs$1.open(params.file, "r");
12569
+ const handle = await fsPromises.open(params.file, "r");
12570
12570
  try {
12571
12571
  let prefix = "";
12572
12572
  if (start > 0) {
@@ -13613,7 +13613,7 @@ const nodeHandlers = {
13613
13613
  const p = params;
13614
13614
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
13615
13615
  await respondUnavailableOnThrow(respond, async () => {
13616
- const { handleNodeEvent } = await import("./server-node-events-B-IAFJfU.js");
13616
+ const { handleNodeEvent } = await import("./server-node-events-DU4-v1FY.js");
13617
13617
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
13618
13618
  await handleNodeEvent({
13619
13619
  deps: context.deps,
@@ -14359,11 +14359,11 @@ async function installLocalMarketSkill(params) {
14359
14359
  candidatePath: sourceDir,
14360
14360
  boundaryLabel: "market templates directory"
14361
14361
  });
14362
- if (!(await fs$1.stat(sourceDir)).isDirectory()) return {
14362
+ if (!(await fsPromises.stat(sourceDir)).isDirectory()) return {
14363
14363
  ok: false,
14364
14364
  message: `Local template "${templateDir}" is not a directory.`
14365
14365
  };
14366
- if (!(await fs$1.stat(sourceSkillPath)).isFile()) return {
14366
+ if (!(await fsPromises.stat(sourceSkillPath)).isFile()) return {
14367
14367
  ok: false,
14368
14368
  message: `Local template "${templateDir}" is missing SKILL.md.`
14369
14369
  };
@@ -14377,13 +14377,13 @@ async function installLocalMarketSkill(params) {
14377
14377
  const workspaceSkillsDir = path.join(workspaceDir, "skills");
14378
14378
  const targetDir = path.join(workspaceSkillsDir, templateDir);
14379
14379
  try {
14380
- await fs$1.mkdir(workspaceSkillsDir, { recursive: true });
14380
+ await fsPromises.mkdir(workspaceSkillsDir, { recursive: true });
14381
14381
  await assertCanonicalPathWithinBase({
14382
14382
  baseDir: workspaceSkillsDir,
14383
14383
  candidatePath: targetDir,
14384
14384
  boundaryLabel: "workspace skills directory"
14385
14385
  });
14386
- await fs$1.cp(sourceDir, targetDir, {
14386
+ await fsPromises.cp(sourceDir, targetDir, {
14387
14387
  recursive: true,
14388
14388
  force: true
14389
14389
  });
@@ -17227,7 +17227,7 @@ function normalizeAgentPayload(payload) {
17227
17227
  async function startBrowserControlServerIfEnabled() {
17228
17228
  if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
17229
17229
  const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
17230
- const mod = override ? await import(override) : await import("./server-D_wuOlkf.js");
17230
+ const mod = override ? await import(override) : await import("./server-C9XFPL3c.js");
17231
17231
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
17232
17232
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
17233
17233
  if (!start) return null;
@@ -17455,7 +17455,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
17455
17455
  if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
17456
17456
  const candidate = path.join(rootReal, rel);
17457
17457
  try {
17458
- const st = await fs$1.lstat(candidate);
17458
+ const st = await fsPromises.lstat(candidate);
17459
17459
  if (st.isSymbolicLink()) return null;
17460
17460
  if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
17461
17461
  } catch {}
@@ -17492,8 +17492,8 @@ async function resolveA2uiRoot() {
17492
17492
  for (const dir of candidates) try {
17493
17493
  const indexPath = path.join(dir, "index.html");
17494
17494
  const bundlePath = path.join(dir, "a2ui.bundle.js");
17495
- await fs$1.stat(indexPath);
17496
- await fs$1.stat(bundlePath);
17495
+ await fsPromises.stat(indexPath);
17496
+ await fsPromises.stat(bundlePath);
17497
17497
  return dir;
17498
17498
  } catch {}
17499
17499
  return null;
@@ -17502,7 +17502,7 @@ async function resolveA2uiRootReal() {
17502
17502
  if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
17503
17503
  if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
17504
17504
  const root = await resolveA2uiRoot();
17505
- cachedA2uiRootReal = root ? await fs$1.realpath(root) : null;
17505
+ cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
17506
17506
  cachedA2uiResolvedAtMs = Date.now();
17507
17507
  resolvingA2uiRoot = null;
17508
17508
  return cachedA2uiRootReal;
@@ -17723,13 +17723,13 @@ function normalizeBasePath(rawPath) {
17723
17723
  }
17724
17724
  async function prepareCanvasRoot(rootDir) {
17725
17725
  await ensureDir(rootDir);
17726
- const rootReal = await fs$1.realpath(rootDir);
17726
+ const rootReal = await fsPromises.realpath(rootDir);
17727
17727
  try {
17728
17728
  const indexPath = path.join(rootReal, "index.html");
17729
- await fs$1.stat(indexPath);
17729
+ await fsPromises.stat(indexPath);
17730
17730
  } catch {
17731
17731
  try {
17732
- await fs$1.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17732
+ await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17733
17733
  } catch {}
17734
17734
  }
17735
17735
  return rootReal;
@@ -20736,7 +20736,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
20736
20736
  }
20737
20737
  async function readLockPayload(lockPath) {
20738
20738
  try {
20739
- const raw = await fs$1.readFile(lockPath, "utf8");
20739
+ const raw = await fsPromises.readFile(lockPath, "utf8");
20740
20740
  const parsed = JSON.parse(raw);
20741
20741
  if (typeof parsed.pid !== "number") return null;
20742
20742
  if (typeof parsed.createdAt !== "string") return null;
@@ -20771,11 +20771,11 @@ async function acquireGatewayLock(opts = {}) {
20771
20771
  const platform = opts.platform ?? process.platform;
20772
20772
  const port = opts.port;
20773
20773
  const { lockPath, configPath } = resolveGatewayLockPath(env);
20774
- await fs$1.mkdir(path.dirname(lockPath), { recursive: true });
20774
+ await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
20775
20775
  const startedAt = Date.now();
20776
20776
  let lastPayload = null;
20777
20777
  while (Date.now() - startedAt < timeoutMs) try {
20778
- const handle = await fs$1.open(lockPath, "wx");
20778
+ const handle = await fsPromises.open(lockPath, "wx");
20779
20779
  const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
20780
20780
  const payload = {
20781
20781
  pid: process.pid,
@@ -20789,7 +20789,7 @@ async function acquireGatewayLock(opts = {}) {
20789
20789
  configPath,
20790
20790
  release: async () => {
20791
20791
  await handle.close().catch(() => void 0);
20792
- await fs$1.rm(lockPath, { force: true });
20792
+ await fsPromises.rm(lockPath, { force: true });
20793
20793
  }
20794
20794
  };
20795
20795
  } catch (err) {
@@ -20798,7 +20798,7 @@ async function acquireGatewayLock(opts = {}) {
20798
20798
  const ownerPid = lastPayload?.pid;
20799
20799
  const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
20800
20800
  if (ownerStatus === "dead" && ownerPid) {
20801
- await fs$1.rm(lockPath, { force: true });
20801
+ await fsPromises.rm(lockPath, { force: true });
20802
20802
  continue;
20803
20803
  }
20804
20804
  if (ownerStatus !== "alive") {
@@ -20808,13 +20808,13 @@ async function acquireGatewayLock(opts = {}) {
20808
20808
  stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
20809
20809
  }
20810
20810
  if (!stale) try {
20811
- const st = await fs$1.stat(lockPath);
20811
+ const st = await fsPromises.stat(lockPath);
20812
20812
  stale = Date.now() - st.mtimeMs > staleMs;
20813
20813
  } catch {
20814
20814
  stale = false;
20815
20815
  }
20816
20816
  if (stale) {
20817
- await fs$1.rm(lockPath, { force: true });
20817
+ await fsPromises.rm(lockPath, { force: true });
20818
20818
  continue;
20819
20819
  }
20820
20820
  }
@@ -23124,7 +23124,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
23124
23124
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
23125
23125
  if (!minimalTestGateway) (async () => {
23126
23126
  const { recoverPendingDeliveries } = await import("./delivery-queue-p3JO2jjt.js").then((n) => n.n);
23127
- const { deliverOutboundPayloads } = await import("./deliver-Bm4UojU1.js").then((n) => n.n);
23127
+ const { deliverOutboundPayloads } = await import("./deliver-CQmmhMaR.js").then((n) => n.n);
23128
23128
  await recoverPendingDeliveries({
23129
23129
  deliver: deliverOutboundPayloads,
23130
23130
  log: log.child("delivery-recovery"),