openclaw-multi-auto 1.5.7 → 1.5.9

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 (237) hide show
  1. package/dist/{accounts-BVgYdU9W.js → accounts-BtEMxtPK.js} +1 -1
  2. package/dist/{accounts-BU-CeDai.js → accounts-CUYZBSKh.js} +1 -1
  3. package/dist/{accounts-DJaYqD2E.js → accounts-khXX75l1.js} +7 -7
  4. package/dist/{acp-cli-oWFHnS7i.js → acp-cli-CA2oCCEA.js} +8 -8
  5. package/dist/{agent-scope-BRElciAf.js → agent-scope-NQ9CtXYN.js} +17 -17
  6. package/dist/{agents-CujsWz9d.js → agents-BWVlofyv.js} +14 -14
  7. package/dist/{agents.config-C42STger.js → agents.config-QVfqc4C-.js} +2 -2
  8. package/dist/{api-key-rotation-BbuLHl0_.js → api-key-rotation-Vix80AUw.js} +1 -1
  9. package/dist/{audio-preflight-Yg1vzPE1.js → audio-preflight-DUtdCXjJ.js} +34 -34
  10. package/dist/{audio-transcription-runner-D1cvrZ6s.js → audio-transcription-runner-DYKvqK54.js} +23 -23
  11. package/dist/{audit-DtlAv66L.js → audit-oC--RZy0.js} +29 -29
  12. package/dist/{auth-Mj21c_GN.js → auth-YB6m93-M.js} +1 -1
  13. package/dist/{auth-choice-CEycltU4.js → auth-choice-CsSQLEkP.js} +13 -13
  14. package/dist/{auth-choice-CGHVedXa.js → auth-choice-gp-h1aBd.js} +11 -11
  15. package/dist/{auth-choice.apply-helpers-D4YQXYfc.js → auth-choice.apply-helpers-CPpuynsT.js} +1 -1
  16. package/dist/{auth-profiles-CdLTlJLc.js → auth-profiles-15pq9j9V.js} +16 -16
  17. package/dist/{auth-token-7kzDLVhb.js → auth-token-Bwn8N6KA.js} +1 -1
  18. package/dist/{banner-CpzKVd4-.js → banner-hcZ0XNXv.js} +2 -2
  19. package/dist/{bonjour-discovery-BuS9wF_p.js → bonjour-discovery-2btw06uD.js} +1 -1
  20. package/dist/{browser-cli-BVtbvQ3Z.js → browser-cli-C4PdLYHy.js} +12 -12
  21. package/dist/build-info.json +3 -3
  22. package/dist/{call-Dp9SDkqK.js → call-CZgRbVYm.js} +10 -10
  23. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  24. package/dist/{channel-account-context-ESLVGdUf.js → channel-account-context-BYiOuxnf.js} +5 -5
  25. package/dist/{channel-activity-LfmEkdDN.js → channel-activity-D9K6yeu8.js} +1 -1
  26. package/dist/{channel-options-CsYaFB_4.js → channel-options-DJkf_8wi.js} +3 -3
  27. package/dist/{channel-selection-DFJsYFPo.js → channel-selection-BpIsCVV5.js} +1 -1
  28. package/dist/{channel-web-DzRsJEE4.js → channel-web-wb1My1Yi.js} +17 -17
  29. package/dist/{channels-cli-CpfeOXtJ.js → channels-cli-DlQONtY9.js} +93 -93
  30. package/dist/{channels-status-issues-6V9ktlZD.js → channels-status-issues-Hj-GOSVm.js} +1 -1
  31. package/dist/{chrome-CyM61Cn2.js → chrome-L_icBVLq.js} +4 -4
  32. package/dist/{clawbot-cli-COtnakIJ.js → clawbot-cli-CyTZUVIJ.js} +11 -11
  33. package/dist/cli/daemon-cli.js +1 -1
  34. package/dist/{cli-jnT1hYPO.js → cli-CNTrB-ni.js} +73 -73
  35. package/dist/{client-C-wA75vx.js → client-g0366Z73.js} +2 -2
  36. package/dist/{command-registry-g5tDqdAU.js → command-registry-VOmumlmD.js} +11 -11
  37. package/dist/{command-secret-targets-u3eWn-W3.js → command-secret-targets-CIMuIdbL.js} +4 -4
  38. package/dist/{commands-C8pWcFs_.js → commands-DU7At3rY.js} +1 -1
  39. package/dist/{commands-registry-J6nVL3BQ.js → commands-registry-B_WUa9KB.js} +3 -3
  40. package/dist/{completion-cli-DQsyli3B.js → completion-cli-pqdmKVTo.js} +13 -13
  41. package/dist/{config-cli-DUycVHoC.js → config-cli-BqznmzlM.js} +7 -7
  42. package/dist/{config-guard--Obk2MGi.js → config-guard-D8jiLjr7.js} +3 -3
  43. package/dist/{config-validation-iOxszdEd.js → config-validation-BngLiGoq.js} +3 -3
  44. package/dist/{configure-Al_pz_5z.js → configure-B--Umf_O.js} +17 -17
  45. package/dist/{control-ui-assets-DpjfNcTC.js → control-ui-assets-C9ewbI8z.js} +1 -1
  46. package/dist/{cron-cli-CQ5EZw_b.js → cron-cli-DCRPpI1m.js} +11 -11
  47. package/dist/{daemon-cli-Bb80Mzv5.js → daemon-cli-DtBzKM_d.js} +15 -15
  48. package/dist/{daemon-install-B09ifLcJ.js → daemon-install-ckPBUAjJ.js} +4 -4
  49. package/dist/{daemon-install-helpers-CYpECiEx.js → daemon-install-helpers-BWf-PrgA.js} +11 -11
  50. package/dist/{deliver-CxF9h9PE.js → deliver-b93aBgie.js} +7 -7
  51. package/dist/deliver-runtime-CdWd-JQI.js +61 -0
  52. package/dist/deps-send-discord.runtime-BltWu9GW.js +36 -0
  53. package/dist/deps-send-imessage.runtime-CdCif3t7.js +35 -0
  54. package/dist/deps-send-signal.runtime-fHqkSmMW.js +34 -0
  55. package/dist/deps-send-slack.runtime-CkyZO7ln.js +32 -0
  56. package/dist/{deps-send-telegram.runtime-B6wp3kx8.js → deps-send-telegram.runtime-C--B69CN.js} +16 -16
  57. package/dist/deps-send-whatsapp.runtime-BkoMLlCM.js +119 -0
  58. package/dist/{devices-cli-C0dUbeL4.js → devices-cli-D6V059Dh.js} +8 -8
  59. package/dist/{diagnostic-BfiudAAN.js → diagnostic-BpP9UBCE.js} +1 -1
  60. package/dist/{diagnostics-DCWM_8Ur.js → diagnostics---0c2_jo.js} +5 -5
  61. package/dist/{directory-cli-Dlws13Di.js → directory-cli-RYC34-EU.js} +7 -7
  62. package/dist/{dns-cli-But7QdAw.js → dns-cli-CElNoV5S.js} +5 -5
  63. package/dist/{dock-BbUkruOF.js → dock-nA2DVPCV.js} +4 -4
  64. package/dist/{docs-cli-Ck2IKAtw.js → docs-cli-Bv7ltPvi.js} +4 -4
  65. package/dist/{doctor-completion-Nat1HXE1.js → doctor-completion-CQIiN7rY.js} +2 -2
  66. package/dist/{doctor-config-flow-WCCoUXeB.js → doctor-config-flow-BOAryh5P.js} +15 -15
  67. package/dist/{enable-C3H8BtN4.js → enable-688HYBNS.js} +1 -1
  68. package/dist/entry.js +2 -2
  69. package/dist/{exec-approvals-allowlist-ySf2Yo5n.js → exec-approvals-allowlist-C0Eya3rT.js} +1 -1
  70. package/dist/{exec-approvals-cli-DhLLOys6.js → exec-approvals-cli-BYYerKp8.js} +16 -16
  71. package/dist/{exec-safe-bin-runtime-policy-DnXViOlF.js → exec-safe-bin-runtime-policy-BmJmfDRo.js} +2 -2
  72. package/dist/{fetch-D-SiVqBm.js → fetch-BhAHVdwx.js} +3 -3
  73. package/dist/{fetch-guard-CKYBfJ66.js → fetch-guard-BbBdhWz_.js} +1 -1
  74. package/dist/{fs-safe-jMDpsYew.js → fs-safe-CFLs-j60.js} +24 -24
  75. package/dist/{gateway-cli--atF6LYo.js → gateway-cli-DOYWSRqa.js} +153 -153
  76. package/dist/{gateway-rpc-DYyQQ1z9.js → gateway-rpc-w6t8Eq_1.js} +1 -1
  77. package/dist/{health-BDJ72U4Z.js → health-C1EstYHd.js} +11 -11
  78. package/dist/{hooks-cli-r0UX8B9a.js → hooks-cli-BFMve5sG.js} +81 -81
  79. package/dist/{hooks-status-CxBdpBry.js → hooks-status-DBnEWOEP.js} +1 -1
  80. package/dist/{image-CyHTO86Q.js → image-Bw71y73Q.js} +5 -5
  81. package/dist/{image-ops-pjs5W0CZ.js → image-ops-AJL9tN3_.js} +10 -10
  82. package/dist/image-runtime-6jhrqcle.js +55 -0
  83. package/dist/{inspect-BeU4yMp2.js → inspect-CUxeDA8c.js} +4 -4
  84. package/dist/{install-safe-path-BiL8OJvK.js → install-safe-path-BX58wFBl.js} +25 -25
  85. package/dist/{installs-BwKmG0Uy.js → installs-B-xr0Fzq.js} +9 -9
  86. package/dist/{ipv4-BoGwfnEw.js → ipv4-C4Yt-xid.js} +1 -1
  87. package/dist/{ir-Da7Ahsqc.js → ir-otKVkb4a.js} +8 -8
  88. package/dist/{issue-format-CJ89_-9v.js → issue-format-DSksfKiV.js} +1 -1
  89. package/dist/{json-files-CuJjdF_0.js → json-files-rR19q30D.js} +8 -8
  90. package/dist/{lifecycle-core-BzuWBBm8.js → lifecycle-core-DVwen0ks.js} +5 -5
  91. package/dist/{login-VkQ9MW3d.js → login-BcRaGQb6.js} +3 -3
  92. package/dist/{login-qr-BVMQ-xQz.js → login-qr-C9D47WEZ.js} +6 -6
  93. package/dist/{logs-cli-DWHhSnWs.js → logs-cli-B3TG2lp8.js} +9 -9
  94. package/dist/{manager-BUBwl6M6.js → manager-iwcRf3Xc.js} +14 -14
  95. package/dist/{manager-runtime-H9iQnw64.js → manager-runtime-D3KqpRT7.js} +9 -9
  96. package/dist/{manifest-registry-DVviqWVY.js → manifest-registry-CJb8odRF.js} +1 -1
  97. package/dist/{memory-cli-DarWCbU6.js → memory-cli-DGsJx7YM.js} +12 -12
  98. package/dist/{model-BLV8y_N-.js → model-B792l3Cn.js} +2 -2
  99. package/dist/{model-catalog-DTcBkUlX.js → model-catalog-DZ6kl2Ko.js} +3 -3
  100. package/dist/{model-picker-D-fTOOzb.js → model-picker-6fHys0wK.js} +4 -4
  101. package/dist/{models-CmjutMmh.js → models-DerrMmwF.js} +17 -17
  102. package/dist/{models-cli-BZFQX22p.js → models-cli-BkTZg_4v.js} +78 -78
  103. package/dist/{models-config-DNcDbV_G.js → models-config-Dabs9Kdv.js} +6 -6
  104. package/dist/{net-D5fSREu4.js → net-BAIqYNz0.js} +2 -2
  105. package/dist/{node-cli-Cnq-PJTp.js → node-cli-DoEq4zeG.js} +33 -33
  106. package/dist/{node-command-policy-B5BMBBJP.js → node-command-policy-DRhSc90G.js} +1 -1
  107. package/dist/{node-service-BpYZAvpl.js → node-service-CcgtNIeT.js} +1 -1
  108. package/dist/{nodes-cli-CkrDOWpv.js → nodes-cli--d9RiCnK.js} +16 -16
  109. package/dist/{nodes-screen-DfsQohWd.js → nodes-screen-BTND5VDq.js} +7 -7
  110. package/dist/{npm-pack-install-E-mkrZ55.js → npm-pack-install-CGUDOSKz.js} +18 -18
  111. package/dist/{npm-resolution-BUUmg5ON.js → npm-resolution-CAoULCWM.js} +4 -4
  112. package/dist/{onboard-DINGSS9R.js → onboard-CMZRkPVc.js} +6 -6
  113. package/dist/{onboard-channels-Di4MjWDY.js → onboard-channels-SlJu6XWJ.js} +21 -21
  114. package/dist/{onboard-custom-DITBQuWQ.js → onboard-custom-EzfL89yz.js} +4 -4
  115. package/dist/{onboard-helpers-DO7u2ZOy.js → onboard-helpers-lGpaVp03.js} +10 -10
  116. package/dist/{onboard-hooks-K02_ZWDq.js → onboard-hooks-B7TMiJoY.js} +4 -4
  117. package/dist/{onboard-remote-5-ugiSN2.js → onboard-remote-nvWS7on7.js} +4 -4
  118. package/dist/{onboard-skills-CSzbC2KZ.js → onboard-skills-hz91W03u.js} +4 -4
  119. package/dist/{onboarding-BM4dvUK6.js → onboarding-CTPuMVQI.js} +14 -14
  120. package/dist/{onboarding.finalize-p_RDh7ET.js → onboarding.finalize-DLzl5ZOg.js} +87 -87
  121. package/dist/{onboarding.gateway-config-DldlRfms.js → onboarding.gateway-config-C4MoTr60.js} +18 -18
  122. package/dist/{onboarding.secret-input-BIRIJiCU.js → onboarding.secret-input-BFD0OW4X.js} +1 -1
  123. package/dist/{openai-model-default-CY2Nk4cn.js → openai-model-default-h4LbSR7f.js} +2 -2
  124. package/dist/{openclaw-root-BFfBQ6FD.js → openclaw-root-BU3lu8pM.js} +8 -8
  125. package/dist/{outbound-attachment-DfWsfe2N.js → outbound-attachment-CAJBGcna.js} +2 -2
  126. package/dist/{outbound-DPdJe7e1.js → outbound-kbHYt1JW.js} +3 -3
  127. package/dist/{pairing-cli-D2VZxWg3.js → pairing-cli-CXbmkz7Z.js} +8 -8
  128. package/dist/{pairing-labels-D4rnJ5pJ.js → pairing-labels-CaPLIhlh.js} +1 -1
  129. package/dist/{pairing-store-BXArq4hn.js → pairing-store-Brs9aNn_.js} +3 -3
  130. package/dist/{path-alias-guards-DbNvNQar.js → path-alias-guards-DhIwq92y.js} +3 -3
  131. package/dist/{path-safety-ClQO4BB6.js → path-safety-BjIM4N4t.js} +1 -1
  132. package/dist/{paths-BB_1ZWOj.js → paths-Cv63xST_.js} +9 -9
  133. package/dist/{pi-embedded-helpers-oXDyXTD8.js → pi-embedded-helpers-DC2OtKrl.js} +6 -6
  134. package/dist/{pi-model-discovery-CECkJMCt.js → pi-model-discovery-DOb5RTev.js} +1 -1
  135. package/dist/{pi-model-discovery-runtime-g7UP-SFR.js → pi-model-discovery-runtime-DShjmiiF.js} +5 -5
  136. package/dist/{pi-tools.before-tool-call.runtime-Df7B-ggW.js → pi-tools.before-tool-call.runtime-B079pVah.js} +5 -5
  137. package/dist/{pi-tools.policy-CydUEzFi.js → pi-tools.policy-DZ-X86Va.js} +5 -5
  138. package/dist/{plugin-auto-enable-BE4ZVjAL.js → plugin-auto-enable-BCMqEDjQ.js} +3 -3
  139. package/dist/{plugin-registry-DXW3eyib.js → plugin-registry-BPlCWMur.js} +3 -3
  140. package/dist/plugin-sdk/mattermost.js +3 -3
  141. package/dist/{plugins-VAZrrfgw.js → plugins-DCxT-37x.js} +2 -2
  142. package/dist/{plugins-cli-BQJOOVMx.js → plugins-cli-D9ILEfyb.js} +83 -83
  143. package/dist/{ports-DMkRSlnH.js → ports-BlCLhwbc.js} +1 -1
  144. package/dist/{ports-DogAV7pa.js → ports-CER5YPnN.js} +2 -2
  145. package/dist/{program-BA11qFx1.js → program-CV56xn7w.js} +81 -81
  146. package/dist/{prompt-select-styled-B0GS28ia.js → prompt-select-styled-BOa5I_PU.js} +40 -40
  147. package/dist/{provider-auth-helpers-CrGL-jik.js → provider-auth-helpers-c6mNCUXO.js} +5 -5
  148. package/dist/{proxy-env-wKO3g8Yv.js → proxy-env-BMrSVckF.js} +1 -1
  149. package/dist/{push-apns-BEwBjZ0a.js → push-apns-FOkPD05E.js} +5 -5
  150. package/dist/{pw-ai-CnbxziFP.js → pw-ai-CxBU3aK5.js} +18 -18
  151. package/dist/{qmd-manager-Dp6PJ8zQ.js → qmd-manager-DEJMqoGd.js} +20 -20
  152. package/dist/{qr-cli-CFz9kS5X.js → qr-cli-BD2jK4fg.js} +2 -2
  153. package/dist/{query-expansion-BrSWVbaE.js → query-expansion-1UTIWjP6.js} +12 -12
  154. package/dist/{redact-snapshot-Bs4goggz.js → redact-snapshot-D_qQD4A-.js} +1 -1
  155. package/dist/{register.agent-D641ju8B.js → register.agent-tbPA5YAy.js} +94 -94
  156. package/dist/register.configure-DuwRrXc2.js +165 -0
  157. package/dist/{register.maintenance-BFkk8MEH.js → register.maintenance-DrqDlV5b.js} +95 -95
  158. package/dist/{register.message-D5uE_Hop.js → register.message-CoKXNaU0.js} +74 -74
  159. package/dist/{register.onboard-zHFvSwFr.js → register.onboard-CSWOSL9O.js} +18 -18
  160. package/dist/{register.setup-uTbv3_P1.js → register.setup-DBx5JX6h.js} +21 -21
  161. package/dist/{register.status-health-sessions-CB7t-JQx.js → register.status-health-sessions-D1bPtfep.js} +88 -88
  162. package/dist/{register.subclis-MEiNmuy5.js → register.subclis-QGJNmjss.js} +31 -31
  163. package/dist/{rpc-DVfuVmy9.js → rpc-DkMrTUww.js} +1 -1
  164. package/dist/{run-main-mrvunzuy.js → run-main-CPftxqTe.js} +92 -92
  165. package/dist/{runtime-C87FQrrv.js → runtime-MAH2Oph4.js} +3 -3
  166. package/dist/{runtime-config-collectors-BQaC477D.js → runtime-config-collectors-BJMV6Mt1.js} +1 -1
  167. package/dist/{runtime-whatsapp-login.runtime-DjdgScUI.js → runtime-whatsapp-login.runtime-CGYWl9eB.js} +7 -7
  168. package/dist/{runtime-whatsapp-outbound.runtime-B74K7opl.js → runtime-whatsapp-outbound.runtime-hZEfYaRM.js} +15 -15
  169. package/dist/{sandbox-Ct-_lzi1.js → sandbox-0TbzPJaS.js} +18 -18
  170. package/dist/{sandbox-cli-C3RoXFRE.js → sandbox-cli-NLaxffXl.js} +25 -25
  171. package/dist/{secrets-cli-B3hqCxvs.js → secrets-cli-KLGbYet6.js} +11 -11
  172. package/dist/{security-cli-DcHIyXr7.js → security-cli-EIEkcYVb.js} +42 -42
  173. package/dist/{send-CnRP4P-G.js → send-BW-ZtYG3.js} +5 -5
  174. package/dist/{send-2zKwf9NW.js → send-BtZAqquW.js} +11 -11
  175. package/dist/{send-DAQAKa9Z.js → send-CxgWxXZc.js} +6 -6
  176. package/dist/{send-5o2p_xjn.js → send-DAMtu9kK.js} +4 -4
  177. package/dist/{send-u1Bo4CSn.js → send-sC6ka831.js} +8 -8
  178. package/dist/{server-context-8pDe2iyd.js → server-context-HJVwPQYn.js} +12 -12
  179. package/dist/{server-Ci4xtuR9.js → server-kUElNhlY.js} +20 -20
  180. package/dist/{server-lifecycle-k5daSrde.js → server-lifecycle-BE32unpZ.js} +2 -2
  181. package/dist/{server-middleware-DMiFT9xU.js → server-middleware-AS2VOYkK.js} +1 -1
  182. package/dist/{server-node-events-BmnPjNXE.js → server-node-events-DkbZzI6P.js} +74 -74
  183. package/dist/{service-BhOFtHSw.js → service-CyStNr3d.js} +15 -15
  184. package/dist/{session-DkOjpX3_.js → session-CaCx4rPH.js} +1 -1
  185. package/dist/{session-utils-DKRmXD2l.js → session-utils-CGqb1oeq.js} +6 -6
  186. package/dist/{sessions-svLGrv0Z.js → sessions-BV6HNW4h.js} +4 -4
  187. package/dist/{sessions-BOWPuhe5.js → sessions-BmVDW-7q.js} +15 -15
  188. package/dist/{shared-CjuadLFV.js → shared-DUQavBtY.js} +3 -3
  189. package/dist/{shared-CbAkLNrg.js → shared-JW74idb0.js} +1 -1
  190. package/dist/{skill-commands-TpUsdjev.js → skill-commands-WtIJG0CI.js} +5 -5
  191. package/dist/{skill-scanner-BZvvItef.js → skill-scanner-DIFsGcqE.js} +6 -6
  192. package/dist/{skills-DR-vacol.js → skills-7T9PwwL6.js} +3 -3
  193. package/dist/{skills-cli-oay0tY8Z.js → skills-cli-DPavvthL.js} +5 -5
  194. package/dist/{skills-install-Vmi7xYfa.js → skills-install-BoLfaoWv.js} +6 -6
  195. package/dist/{skills-status-BmN697ff.js → skills-status-CK5Gnf6i.js} +1 -1
  196. package/dist/{slash-commands.runtime-BfaheruW.js → slash-commands.runtime-CMGx2xHy.js} +11 -11
  197. package/dist/slash-dispatch.runtime-BAeJXa56.js +114 -0
  198. package/dist/{slash-skill-commands.runtime-D34BKAN-.js → slash-skill-commands.runtime-ChU2tck2.js} +15 -15
  199. package/dist/{status-BcQchPaC.js → status-Bp-K1BEf.js} +27 -27
  200. package/dist/{status.update-B20UBTDq.js → status.update-ZYUSggzS.js} +2 -2
  201. package/dist/{store-DDkqo1sO.js → store-DeASfYEV.js} +5 -5
  202. package/dist/{subagent-registry-CPxHbyN5.js → subagent-registry-8qHIVhRq.js} +149 -149
  203. package/dist/subagent-registry-runtime-DVomlbm6.js +114 -0
  204. package/dist/{system-cli-D2yIJoKU.js → system-cli-C2xNfuQM.js} +9 -9
  205. package/dist/{system-run-command-BmhbnLTE.js → system-run-command-BPWZk7KI.js} +1 -1
  206. package/dist/{systemd-DjWVSbAG.js → systemd-Cf-0XKYu.js} +9 -9
  207. package/dist/{systemd-hints-Do-aQ9jw.js → systemd-hints-CYllYKO0.js} +6 -6
  208. package/dist/{systemd-linger-DpmnYgKU.js → systemd-linger-zllO90bD.js} +1 -1
  209. package/dist/{tables-BxyIF0w4.js → tables-CV7Afb0h.js} +1 -1
  210. package/dist/{tailnet-0_FsdHP-.js → tailnet-DJFUq7_R.js} +1 -1
  211. package/dist/{target-errors-KOHiT_JA.js → target-errors-iVxliVqA.js} +4 -4
  212. package/dist/{tool-images-CNPfeCmU.js → tool-images-Bn6dB14u.js} +1 -1
  213. package/dist/{tui-DL6NZZEa.js → tui-DTVy-YhN.js} +6 -6
  214. package/dist/{tui-cli-BNAYhvpu.js → tui-cli-CexRLJ3a.js} +32 -32
  215. package/dist/{update-DlS-d52F.js → update-DijPxK0g.js} +3 -3
  216. package/dist/{update-cli-D8-DqIs2.js → update-cli-9NslG4yR.js} +104 -104
  217. package/dist/{update-runner-CzTQ7BJT.js → update-runner-B6_UqreW.js} +16 -16
  218. package/dist/web-DGoa03ue.js +118 -0
  219. package/dist/{webhooks-cli-QdaQhvbT.js → webhooks-cli-B4ZcXTtw.js} +6 -6
  220. package/dist/{whatsapp-actions-Bp8F0cOF.js → whatsapp-actions-Jm4VW1Ve.js} +17 -17
  221. package/dist/{with-timeout-BMMWHlH3.js → with-timeout-C8-tY12i.js} +3 -3
  222. package/dist/{workspace-v76gFdZu.js → workspace-CIGzK2_w.js} +1 -1
  223. package/dist/{workspace-dirs-Cz_Zgtg2.js → workspace-dirs-D4SMysgC.js} +1 -1
  224. package/dist/{wsl-CvQfS6aU.js → wsl-CsGe5QCP.js} +2 -2
  225. package/package.json +1 -1
  226. package/scripts/create-instance.sh +151 -422
  227. package/dist/deliver-runtime-DixuU_uB.js +0 -61
  228. package/dist/deps-send-discord.runtime-CDcLcDSt.js +0 -36
  229. package/dist/deps-send-imessage.runtime-BGPUVMIE.js +0 -35
  230. package/dist/deps-send-signal.runtime-DQDD44_O.js +0 -34
  231. package/dist/deps-send-slack.runtime-Cpy77gBG.js +0 -32
  232. package/dist/deps-send-whatsapp.runtime-D2sVAclS.js +0 -119
  233. package/dist/image-runtime-B2qh5seQ.js +0 -55
  234. package/dist/register.configure-BrDOSLIq.js +0 -165
  235. package/dist/slash-dispatch.runtime-D0xInkf3.js +0 -114
  236. package/dist/subagent-registry-runtime-SkB2tTaE.js +0 -114
  237. package/dist/web-DWiOofzq.js +0 -118
@@ -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-BmoaLBy-.js";
4
4
  import "./boolean-DtWR5bt3.js";
5
5
  import { i as logAcceptedEnvOption, r as isTruthyEnvValue } from "./entry.js";
6
- import { At as AVATAR_MAX_BYTES, B as parseConfigJson5, Bn as buildTalkConfigResponse, Dn as applyMergePatch, Dr as resolveDefaultModelForAgent, Er as resolveConfiguredModelRef, Fi as DEFAULT_CONTEXT_TOKENS, G as writeConfigFile, H as readConfigFileSnapshotForWrite, Hn as resolveAgentMaxConcurrent, I as migrateLegacyConfig, Ii as DEFAULT_MODEL, K as validateConfigObjectWithPlugins, Li as DEFAULT_PROVIDER, Lt as looksLikeAvatarPath, Mt as isAvatarHttpUrl, Nr as resolveThinkingDefault, Nt as isAvatarImageDataUrl, On as applyLegacyMigrations, Or as resolveHooksGmailModel, R as createConfigIO, U as resolveConfigSnapshotHash, Un as resolveSubagentMaxConcurrent, V as readConfigFileSnapshot, dr as isPidAlive, fr as buildAllowedModelSet, gr as getModelRefStatus, ji as normalizeSecretInput, jr as resolveSubagentConfiguredModelSelection, kn as ensureControlUiAllowedOriginsForNonLoopbackBind, mt as parseByteSize, pt as parseDurationMs, q as OpenClawSchema, vr as isCliProvider, wr as resolveAllowedModelRef, xr as normalizeModelSelection, z as loadConfig } from "./auth-profiles-CdLTlJLc.js";
6
+ import { At as AVATAR_MAX_BYTES, B as parseConfigJson5, Bn as buildTalkConfigResponse, Dn as applyMergePatch, Dr as resolveDefaultModelForAgent, Er as resolveConfiguredModelRef, Fi as DEFAULT_CONTEXT_TOKENS, G as writeConfigFile, H as readConfigFileSnapshotForWrite, Hn as resolveAgentMaxConcurrent, I as migrateLegacyConfig, Ii as DEFAULT_MODEL, K as validateConfigObjectWithPlugins, Li as DEFAULT_PROVIDER, Lt as looksLikeAvatarPath, Mt as isAvatarHttpUrl, Nr as resolveThinkingDefault, Nt as isAvatarImageDataUrl, On as applyLegacyMigrations, Or as resolveHooksGmailModel, R as createConfigIO, U as resolveConfigSnapshotHash, Un as resolveSubagentMaxConcurrent, V as readConfigFileSnapshot, dr as isPidAlive, fr as buildAllowedModelSet, gr as getModelRefStatus, ji as normalizeSecretInput, jr as resolveSubagentConfiguredModelSelection, kn as ensureControlUiAllowedOriginsForNonLoopbackBind, mt as parseByteSize, pt as parseDurationMs, q as OpenClawSchema, vr as isCliProvider, wr as resolveAllowedModelRef, xr as normalizeModelSelection, z as loadConfig } from "./auth-profiles-15pq9j9V.js";
7
7
  import { t as formatCliCommand } from "./command-format-CLEQe4bk.js";
8
- import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-BRElciAf.js";
8
+ import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-NQ9CtXYN.js";
9
9
  import { C as isCronRunSessionKey, E as parseAgentSessionKey, T as isSubagentSessionKey, _ as normalizeAccountId$1, c as normalizeAgentId, g as DEFAULT_ACCOUNT_ID, h as toAgentStoreSessionKey, l as normalizeMainKey, m as toAgentRequestSessionKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey } from "./session-key-k6urs9r-.js";
10
10
  import { E as isPlainObject, S as sleep, T as truncateUtf16Safe, n as clamp, s as ensureDir, v as resolveUserPath, x as shortenHomePath } from "./utils-6WlODK5w.js";
11
- import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveOpenClawPackageRoot } from "./openclaw-root-BFfBQ6FD.js";
11
+ import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveOpenClawPackageRoot } from "./openclaw-root-BU3lu8pM.js";
12
12
  import { i as logWarn, t as logDebug } from "./logger-9wCpWqHD.js";
13
13
  import { n as runExec, t as runCommandWithTimeout } from "./exec-GR2kPVc1.js";
14
14
  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-C3qkO1RG.js";
@@ -16,105 +16,105 @@ import "./github-copilot-token-Byc_YVYE.js";
16
16
  import "./host-env-security-lcjXF83D.js";
17
17
  import { n as resolveRuntimeServiceVersion, t as VERSION } from "./version-DdJhsIqk.js";
18
18
  import "./env-vars-mSSOl7Rv.js";
19
- import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-DVviqWVY.js";
20
- import "./dock-BbUkruOF.js";
21
- import "./model-BLV8y_N-.js";
22
- import "./pi-model-discovery-CECkJMCt.js";
23
- import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-BfiudAAN.js";
19
+ import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-CJb8odRF.js";
20
+ import "./dock-nA2DVPCV.js";
21
+ import "./model-B792l3Cn.js";
22
+ import "./pi-model-discovery-DOb5RTev.js";
23
+ import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-BpP9UBCE.js";
24
24
  import { d as hasBinary } from "./frontmatter-D2o8_Jfu.js";
25
- import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-DR-vacol.js";
26
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-DbNvNQar.js";
27
- import { t as buildWorkspaceSkillStatus } from "./skills-status-BmN697ff.js";
25
+ import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-7T9PwwL6.js";
26
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-DhIwq92y.js";
27
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-CK5Gnf6i.js";
28
28
  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-CIqYyQ36.js";
29
- 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-BOWPuhe5.js";
30
- import { m as buildChannelAccountBindings, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, w as normalizeWhatsAppTarget } from "./plugins-VAZrrfgw.js";
31
- import { i as resolveWhatsAppAccount } from "./accounts-DJaYqD2E.js";
32
- import "./accounts-BU-CeDai.js";
29
+ 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-BmVDW-7q.js";
30
+ import { m as buildChannelAccountBindings, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, w as normalizeWhatsAppTarget } from "./plugins-DCxT-37x.js";
31
+ import { i as resolveWhatsAppAccount } from "./accounts-khXX75l1.js";
32
+ import "./accounts-CUYZBSKh.js";
33
33
  import "./logging-CcxUDNcI.js";
34
- import "./accounts-BVgYdU9W.js";
35
- import "./send-5o2p_xjn.js";
36
- import "./send-2zKwf9NW.js";
37
- import { $n as DEFAULT_INPUT_IMAGE_MAX_BYTES, $r as emitAgentEvent, $t as stripLegacyDeliveryFields, Ar as resolveTtsAutoMode, At as resetDirectoryCache, B as resolveAgentAvatar, Bt as writeRestartSentinel, Cn as setGatewaySigusr1RestartPolicy, Cr as resolveUserTimezone, D as handleSlackHttpRequest, Dn as normalizeGroupActivation, Dr as isTtsEnabled, Dt as resolveSessionDeliveryTarget, En as unbindThreadBindingsBySessionKey, Er as getTtsProvider, Et as resolveOutboundTarget, F as resolveAgentDeliveryPlan, Fn as resolveBootstrapWarningSignaturesSeen, Fr as setTtsProvider, Ft as formatDoctorNonInteractiveHint, Gr as waitForActiveTasks, Gt as normalizeOptionalAgentId, Hr as markGatewayDraining, Ht as normalizeCronJobCreate, I as resolveAgentOutboundTarget, In as formatZonedTimestamp, Ir as textToSpeech, It as formatRestartSentinelMessage, J as buildHistoryContextFromEntries, Jt as normalizePayloadToSystemText, Kr as CommandLane, Kt as normalizeOptionalSessionKey, L as createOutboundSendDeps, Lr as OPENAI_TTS_MODELS, Mr as resolveTtsPrefsPath, Mt as runWithModelFallback, N as agentCommandFromIngress, Nr as resolveTtsProviderOrder, O as readJsonBodyWithLimit, Or as isTtsProviderConfigured, Ot as resolveOutboundChannelPlugin, Pr as setTtsEnabled, Pt as consumeRestartSentinel, Qn as ACP_SESSION_IDENTITY_RENDERER_VERSION, Qr as clearAgentRunContext, Qt as hasLegacyDeliveryHints, R as createDefaultDeps, Rr as OPENAI_TTS_VOICES, Rt as summarizeRestartSentinel, Sn as scheduleGatewaySigusr1Restart, T as resolveAgentOutboundIdentity, Tn as triggerOpenClawRestart, Tr as clearBootstrapSnapshot, Un as enqueueSystemEvent, Ur as resetAllLanes, Ut as normalizeCronJobPatch, Vr as getTotalQueueSize, Vt as normalizeHttpWebhookUrl, W as createReplyPrefixOptions, Wn as isSystemEventContextChanged, Wr as setCommandLaneConcurrency, Wt as inferLegacyName, Xt as migrateLegacyCronPayload, Yt as normalizeRequiredName, Zr as stripHeartbeatToken, Zt as buildDeliveryFromLegacyPayload, _ as getPluginToolMeta, _n as consumeGatewaySigusr1RestartAuthorization, _r as getAcpSessionManager, _t as readLatestAssistantReply, an as isExternalHookSession, ar as normalizeMimeList, at as dispatchInboundMessage, b as loadOpenClawPlugins, bn as isGatewaySigusr1RestartExternallyAllowed, bt as ensureOutboundSessionEntry, c as runSubagentAnnounceFlow, cn as resolveSessionAuthProfileOverride, cr as resolveAgentTimeoutMs, d as abortEmbeddedPiRun, ei as getAgentRunContext, er as DEFAULT_INPUT_IMAGE_MIMES, f as getActiveEmbeddedRunCount, ft as resolveCronStyleNow, gn as buildOutboundSessionContext, gt as createOpenClawTools, h as buildDefaultToolPolicyPipelineSteps, hn as parseVerboseOverride, ht as runCliAgent, i as initSubagentRegistry, in as getHookType, ir as extractImageContentFromSource, jr as resolveTtsConfig, k as requestBodyErrorToText, kn as loadProviderUsageSummary, kr as resolveTtsApiKey, l as clearSessionQueues, lr as normalizeSendPolicy, m as applyToolPolicyPipeline, mn as applyVerboseOverride, mr as stopSubagentsForRequester, mt as setCliSessionId, ni as registerAgentRunContext, nn as buildSafeExternalPrompt, nr as DEFAULT_INPUT_TIMEOUT_MS, o as listDescendantRunsForRequester, on as applyBrowserProxyPaths, or as resolveInputFileLimits, ot as createReplyDispatcher, p as waitForEmbeddedPiRunEnd, pn as applyModelOverrideToSessionEntry, pr as isAbortRequestText, pt as getCliSessionId, qn as requestHeartbeatNow, qr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, qt as normalizeOptionalText, rn as detectSuspiciousPatterns, rr as extractFileContentFromSource, sn as persistBrowserProxyFiles, st as getTotalPendingReplies, t as countActiveDescendantRuns, ti as onAgentEvent, tr as DEFAULT_INPUT_MAX_REDIRECTS, u as runEmbeddedPiAgent, ur as resolveSendPolicy, ut as buildBareSessionResetPrompt, v as resolvePluginTools, vn as deferGatewayRestartUntilIdle, vr as resolveAgentSessionDirs, vt as resolveAnnounceTargetFromKey, wn as setPreRestartDeferralCheck, x as createPluginRuntime, xn as markGatewaySigusr1RestartHandled, xt as resolveOutboundSessionRoute, yn as emitGatewayRestart, yr as resolveAgentIdentity, z as createOutboundSendDeps$1, zr as getActiveTaskCount } from "./subagent-registry-CPxHbyN5.js";
34
+ import "./accounts-BtEMxtPK.js";
35
+ import "./send-DAMtu9kK.js";
36
+ import "./send-BtZAqquW.js";
37
+ import { $n as DEFAULT_INPUT_IMAGE_MAX_BYTES, $r as emitAgentEvent, $t as stripLegacyDeliveryFields, Ar as resolveTtsAutoMode, At as resetDirectoryCache, B as resolveAgentAvatar, Bt as writeRestartSentinel, Cn as setGatewaySigusr1RestartPolicy, Cr as resolveUserTimezone, D as handleSlackHttpRequest, Dn as normalizeGroupActivation, Dr as isTtsEnabled, Dt as resolveSessionDeliveryTarget, En as unbindThreadBindingsBySessionKey, Er as getTtsProvider, Et as resolveOutboundTarget, F as resolveAgentDeliveryPlan, Fn as resolveBootstrapWarningSignaturesSeen, Fr as setTtsProvider, Ft as formatDoctorNonInteractiveHint, Gr as waitForActiveTasks, Gt as normalizeOptionalAgentId, Hr as markGatewayDraining, Ht as normalizeCronJobCreate, I as resolveAgentOutboundTarget, In as formatZonedTimestamp, Ir as textToSpeech, It as formatRestartSentinelMessage, J as buildHistoryContextFromEntries, Jt as normalizePayloadToSystemText, Kr as CommandLane, Kt as normalizeOptionalSessionKey, L as createOutboundSendDeps, Lr as OPENAI_TTS_MODELS, Mr as resolveTtsPrefsPath, Mt as runWithModelFallback, N as agentCommandFromIngress, Nr as resolveTtsProviderOrder, O as readJsonBodyWithLimit, Or as isTtsProviderConfigured, Ot as resolveOutboundChannelPlugin, Pr as setTtsEnabled, Pt as consumeRestartSentinel, Qn as ACP_SESSION_IDENTITY_RENDERER_VERSION, Qr as clearAgentRunContext, Qt as hasLegacyDeliveryHints, R as createDefaultDeps, Rr as OPENAI_TTS_VOICES, Rt as summarizeRestartSentinel, Sn as scheduleGatewaySigusr1Restart, T as resolveAgentOutboundIdentity, Tn as triggerOpenClawRestart, Tr as clearBootstrapSnapshot, Un as enqueueSystemEvent, Ur as resetAllLanes, Ut as normalizeCronJobPatch, Vr as getTotalQueueSize, Vt as normalizeHttpWebhookUrl, W as createReplyPrefixOptions, Wn as isSystemEventContextChanged, Wr as setCommandLaneConcurrency, Wt as inferLegacyName, Xt as migrateLegacyCronPayload, Yt as normalizeRequiredName, Zr as stripHeartbeatToken, Zt as buildDeliveryFromLegacyPayload, _ as getPluginToolMeta, _n as consumeGatewaySigusr1RestartAuthorization, _r as getAcpSessionManager, _t as readLatestAssistantReply, an as isExternalHookSession, ar as normalizeMimeList, at as dispatchInboundMessage, b as loadOpenClawPlugins, bn as isGatewaySigusr1RestartExternallyAllowed, bt as ensureOutboundSessionEntry, c as runSubagentAnnounceFlow, cn as resolveSessionAuthProfileOverride, cr as resolveAgentTimeoutMs, d as abortEmbeddedPiRun, ei as getAgentRunContext, er as DEFAULT_INPUT_IMAGE_MIMES, f as getActiveEmbeddedRunCount, ft as resolveCronStyleNow, gn as buildOutboundSessionContext, gt as createOpenClawTools, h as buildDefaultToolPolicyPipelineSteps, hn as parseVerboseOverride, ht as runCliAgent, i as initSubagentRegistry, in as getHookType, ir as extractImageContentFromSource, jr as resolveTtsConfig, k as requestBodyErrorToText, kn as loadProviderUsageSummary, kr as resolveTtsApiKey, l as clearSessionQueues, lr as normalizeSendPolicy, m as applyToolPolicyPipeline, mn as applyVerboseOverride, mr as stopSubagentsForRequester, mt as setCliSessionId, ni as registerAgentRunContext, nn as buildSafeExternalPrompt, nr as DEFAULT_INPUT_TIMEOUT_MS, o as listDescendantRunsForRequester, on as applyBrowserProxyPaths, or as resolveInputFileLimits, ot as createReplyDispatcher, p as waitForEmbeddedPiRunEnd, pn as applyModelOverrideToSessionEntry, pr as isAbortRequestText, pt as getCliSessionId, qn as requestHeartbeatNow, qr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, qt as normalizeOptionalText, rn as detectSuspiciousPatterns, rr as extractFileContentFromSource, sn as persistBrowserProxyFiles, st as getTotalPendingReplies, t as countActiveDescendantRuns, ti as onAgentEvent, tr as DEFAULT_INPUT_MAX_REDIRECTS, u as runEmbeddedPiAgent, ur as resolveSendPolicy, ut as buildBareSessionResetPrompt, v as resolvePluginTools, vn as deferGatewayRestartUntilIdle, vr as resolveAgentSessionDirs, vt as resolveAnnounceTargetFromKey, wn as setPreRestartDeferralCheck, x as createPluginRuntime, xn as markGatewaySigusr1RestartHandled, xt as resolveOutboundSessionRoute, yn as emitGatewayRestart, yr as resolveAgentIdentity, z as createOutboundSendDeps$1, zr as getActiveTaskCount } from "./subagent-registry-8qHIVhRq.js";
38
38
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-DvFmz0MB.js";
39
39
  import { i as normalizeInputProvenance } from "./input-provenance-C8z9KgIz.js";
40
40
  import "./chat-envelope-D3RSz140.js";
41
- import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-CuJjdF_0.js";
42
- import { $ as validateNodePairRejectParams, $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 validateModelsListParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeInvokeParams, Jt as revokeDeviceToken, K as validateNodeDescribeParams, 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 validateNodePairListParams, 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 validateNodeListParams, Xt as summarizeDeviceTokens, Y as validateNodeInvokeResultParams, Yt as rotateDeviceToken, Z as validateNodePairApproveParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validateRequestFrame, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairRequestParams, 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 validatePushTestParams, 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 validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSecretsResolveParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateNodeEventParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSecretsResolveResult, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairVerifyParams, 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-C-wA75vx.js";
43
- import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-Dp9SDkqK.js";
41
+ import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-rR19q30D.js";
42
+ import { $ as validateNodePairRejectParams, $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 validateModelsListParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeInvokeParams, Jt as revokeDeviceToken, K as validateNodeDescribeParams, 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 validateNodePairListParams, 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 validateNodeListParams, Xt as summarizeDeviceTokens, Y as validateNodeInvokeResultParams, Yt as rotateDeviceToken, Z as validateNodePairApproveParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validateRequestFrame, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairRequestParams, 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 validatePushTestParams, 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 validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSecretsResolveParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateNodeEventParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSecretsResolveResult, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairVerifyParams, 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-g0366Z73.js";
43
+ import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-CZgRbVYm.js";
44
44
  import "./pairing-token-BXrId5bQ.js";
45
45
  import { t as safeEqualSecret } from "./secret-equal-Gla36CGi.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-D5fSREu4.js";
47
- import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-0_FsdHP-.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-BAIqYNz0.js";
47
+ import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-DJFUq7_R.js";
48
48
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-6laAe_ss.js";
49
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-BMMWHlH3.js";
50
- import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-CxF9h9PE.js";
51
- import { c as detectMime } from "./image-ops-pjs5W0CZ.js";
52
- import { b as resolveCronStorePath, x as saveCronStore, y as loadCronStore } from "./send-u1Bo4CSn.js";
53
- import "./pi-embedded-helpers-oXDyXTD8.js";
54
- import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-Ct-_lzi1.js";
49
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-C8-tY12i.js";
50
+ import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-b93aBgie.js";
51
+ import { c as detectMime } from "./image-ops-AJL9tN3_.js";
52
+ import { b as resolveCronStorePath, x as saveCronStore, y as loadCronStore } from "./send-sC6ka831.js";
53
+ import "./pi-embedded-helpers-DC2OtKrl.js";
54
+ import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-0TbzPJaS.js";
55
55
  import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-C04U7H3F.js";
56
- import "./chrome-CyM61Cn2.js";
56
+ import "./chrome-L_icBVLq.js";
57
57
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-aXobtl7f.js";
58
- 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-Mj21c_GN.js";
59
- import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-8pDe2iyd.js";
60
- import "./paths-BB_1ZWOj.js";
58
+ 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-YB6m93-M.js";
59
+ import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-HJVwPQYn.js";
60
+ import "./paths-Cv63xST_.js";
61
61
  import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-TY4yJzrg.js";
62
62
  import { o as isErrno, r as formatErrorMessage } from "./errors-BbXSsOtF.js";
63
- import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-jMDpsYew.js";
64
- import { n as SsrFBlockedError } from "./proxy-env-wKO3g8Yv.js";
65
- import "./store-DDkqo1sO.js";
66
- import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-DogAV7pa.js";
63
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-CFLs-j60.js";
64
+ import { n as SsrFBlockedError } from "./proxy-env-BMrSVckF.js";
65
+ import "./store-DeASfYEV.js";
66
+ import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-CER5YPnN.js";
67
67
  import { t as movePathToTrash } from "./trash-C6zcuM95.js";
68
- import "./server-middleware-DMiFT9xU.js";
69
- import "./tool-images-CNPfeCmU.js";
68
+ import "./server-middleware-AS2VOYkK.js";
69
+ import "./tool-images-Bn6dB14u.js";
70
70
  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-CrcT589P.js";
71
- import "./models-config-DNcDbV_G.js";
72
- import "./exec-approvals-allowlist-ySf2Yo5n.js";
73
- import "./exec-safe-bin-runtime-policy-DnXViOlF.js";
74
- import { n as loadModelCatalog } from "./model-catalog-DTcBkUlX.js";
75
- import "./fetch-D-SiVqBm.js";
76
- import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-D1cvrZ6s.js";
77
- import { t as fetchWithSsrFGuard } from "./fetch-guard-CKYBfJ66.js";
78
- import { b as extractTextFromChatContent } from "./image-CyHTO86Q.js";
71
+ import "./models-config-Dabs9Kdv.js";
72
+ import "./exec-approvals-allowlist-C0Eya3rT.js";
73
+ import "./exec-safe-bin-runtime-policy-BmJmfDRo.js";
74
+ import { n as loadModelCatalog } from "./model-catalog-DZ6kl2Ko.js";
75
+ import "./fetch-BhAHVdwx.js";
76
+ import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-DYKvqK54.js";
77
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-BbBdhWz_.js";
78
+ import { b as extractTextFromChatContent } from "./image-Bw71y73Q.js";
79
79
  import "./tool-display-CvlNC8XD.js";
80
- import "./api-key-rotation-BbuLHl0_.js";
80
+ import "./api-key-rotation-Vix80AUw.js";
81
81
  import "./proxy-fetch-DezNPSn_.js";
82
- import "./ir-Da7Ahsqc.js";
82
+ import "./ir-otKVkb4a.js";
83
83
  import "./render-CCLsW6Lz.js";
84
- import { a as ToolInputError } from "./target-errors-KOHiT_JA.js";
85
- import { r as isRestartEnabled } from "./commands-C8pWcFs_.js";
86
- import "./commands-registry-J6nVL3BQ.js";
84
+ import { a as ToolInputError } from "./target-errors-iVxliVqA.js";
85
+ import { r as isRestartEnabled } from "./commands-DU7At3rY.js";
86
+ import "./commands-registry-B_WUa9KB.js";
87
87
  import "./fetch-Cep8cXb2.js";
88
- import { a as readChannelAllowFromStoreSync } from "./pairing-store-BXArq4hn.js";
88
+ import { a as readChannelAllowFromStoreSync } from "./pairing-store-Brs9aNn_.js";
89
89
  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-BXpO0clf.js";
90
- import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-DfsQohWd.js";
91
- import { n as resolveSystemRunCommand } from "./system-run-command-BmhbnLTE.js";
92
- import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, f as computeBackoff, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, p as sleepWithAbort, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-DKRmXD2l.js";
90
+ import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-BTND5VDq.js";
91
+ import { n as resolveSystemRunCommand } from "./system-run-command-BPWZk7KI.js";
92
+ import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, f as computeBackoff, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, p as sleepWithAbort, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-CGqb1oeq.js";
93
93
  import { c as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as deriveSessionTotalTokens, t as discoverAllSessions } from "./session-cost-usage-TIBv8Nm4.js";
94
94
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-eNPY7j3q.js";
95
- import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-TpUsdjev.js";
96
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-Cz_Zgtg2.js";
97
- import { t as getChannelActivity } from "./channel-activity-LfmEkdDN.js";
95
+ import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-WtIJG0CI.js";
96
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-D4SMysgC.js";
97
+ import { t as getChannelActivity } from "./channel-activity-D9K6yeu8.js";
98
98
  import { n as normalizePollInput } from "./polls-C67dmFc-.js";
99
- import "./tables-BxyIF0w4.js";
100
- import "./server-lifecycle-k5daSrde.js";
99
+ import "./tables-CV7Afb0h.js";
100
+ import "./server-lifecycle-BE32unpZ.js";
101
101
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-C4U8O7GM.js";
102
- import { n as resolveMessageChannelSelection } from "./channel-selection-DFJsYFPo.js";
103
- import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-BE4ZVjAL.js";
104
- import "./send-CnRP4P-G.js";
105
- import "./outbound-attachment-DfWsfe2N.js";
102
+ import { n as resolveMessageChannelSelection } from "./channel-selection-BpIsCVV5.js";
103
+ import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-BCMqEDjQ.js";
104
+ import "./send-BW-ZtYG3.js";
105
+ import "./outbound-attachment-CAJBGcna.js";
106
106
  import "./delivery-queue-Bl-IGZt-.js";
107
- import "./send-DAQAKa9Z.js";
108
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-CydUEzFi.js";
107
+ import "./send-CxgWxXZc.js";
108
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-DZ-X86Va.js";
109
109
  import "./proxy-Dgwoliym.js";
110
- import { f as isKnownSecretTargetId, n as GATEWAY_AUTH_SURFACE_PATHS, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-BQaC477D.js";
111
- import "./command-secret-targets-u3eWn-W3.js";
112
- import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-DO7u2ZOy.js";
110
+ import { f as isKnownSecretTargetId, n as GATEWAY_AUTH_SURFACE_PATHS, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-BJMV6Mt1.js";
111
+ import "./command-secret-targets-CIMuIdbL.js";
112
+ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-lGpaVp03.js";
113
113
  import "./prompt-style-xJW90oWC.js";
114
- import "./pairing-labels-D4rnJ5pJ.js";
115
- import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-DarWCbU6.js";
116
- import { r as resolveMemorySearchConfig } from "./manager-BUBwl6M6.js";
117
- import "./query-expansion-BrSWVbaE.js";
114
+ import "./pairing-labels-CaPLIhlh.js";
115
+ import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-DGsJx7YM.js";
116
+ import { r as resolveMemorySearchConfig } from "./manager-iwcRf3Xc.js";
117
+ import "./query-expansion-1UTIWjP6.js";
118
118
  import { t as formatDocsLink } from "./links-D_JFKt7M.js";
119
119
  import { n as runCommandWithRuntime } from "./cli-utils-BKqG4ZT-.js";
120
120
  import { t as formatHelpExamples } from "./help-format-D9iBodJ_.js";
@@ -125,44 +125,44 @@ import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-Dpi4An5r.
125
125
  import { n as inheritOptionFromParent } from "./command-options-DVCpMofi.js";
126
126
  import { t as WizardCancelledError } from "./prompts-l_pUOv42.js";
127
127
  import { t as resolveChannelDefaultAccountId } from "./helpers-D7MilaX-.js";
128
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-C42STger.js";
129
- import { t as isWithinDir } from "./path-safety-ClQO4BB6.js";
130
- import "./install-safe-path-BiL8OJvK.js";
131
- import "./skill-scanner-BZvvItef.js";
132
- import { n as formatConfigIssueLines } from "./issue-format-CJ89_-9v.js";
128
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-QVfqc4C-.js";
129
+ import { t as isWithinDir } from "./path-safety-BjIM4N4t.js";
130
+ import "./install-safe-path-BX58wFBl.js";
131
+ import "./skill-scanner-DIFsGcqE.js";
132
+ import { n as formatConfigIssueLines } from "./issue-format-DSksfKiV.js";
133
133
  import { t as buildChannelAccountSnapshot } from "./status-dOhj12u0.js";
134
- import "./channels-status-issues-6V9ktlZD.js";
135
- 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-Bs4goggz.js";
136
- import "./daemon-install-helpers-CYpECiEx.js";
134
+ import "./channels-status-issues-Hj-GOSVm.js";
135
+ 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-D_qQD4A-.js";
136
+ import "./daemon-install-helpers-BWf-PrgA.js";
137
137
  import "./runtime-guard-TFt5GJ_Q.js";
138
- import "./systemd-DjWVSbAG.js";
139
- import "./service-BhOFtHSw.js";
140
- import "./lifecycle-core-BzuWBBm8.js";
141
- import "./systemd-hints-Do-aQ9jw.js";
138
+ import "./systemd-Cf-0XKYu.js";
139
+ import "./service-CyStNr3d.js";
140
+ import "./lifecycle-core-DVwen0ks.js";
141
+ import "./systemd-hints-CYllYKO0.js";
142
142
  import { t as parsePort$1 } from "./parse-port-CboE2EQm.js";
143
- import { n as addGatewayServiceCommands } from "./daemon-cli-Bb80Mzv5.js";
144
- import "./diagnostics-DCWM_8Ur.js";
143
+ import { n as addGatewayServiceCommands } from "./daemon-cli-DtBzKM_d.js";
144
+ import "./diagnostics---0c2_jo.js";
145
145
  import "./table-BGZynnUY.js";
146
146
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-Bpgbz3Ef.js";
147
- import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-CbAkLNrg.js";
148
- import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-DtlAv66L.js";
149
- import { t as discoverGatewayBeacons } from "./bonjour-discovery-BuS9wF_p.js";
150
- import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-BcQchPaC.js";
151
- import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-BDJ72U4Z.js";
152
- import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DpjfNcTC.js";
153
- import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-ESLVGdUf.js";
154
- import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-C87FQrrv.js";
155
- import "./onboarding.secret-input-BIRIJiCU.js";
156
- import { t as runOnboardingWizard } from "./onboarding-BM4dvUK6.js";
157
- 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-BEwBjZ0a.js";
147
+ import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-JW74idb0.js";
148
+ import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-oC--RZy0.js";
149
+ import { t as discoverGatewayBeacons } from "./bonjour-discovery-2btw06uD.js";
150
+ import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-Bp-K1BEf.js";
151
+ import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-C1EstYHd.js";
152
+ import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-C9ewbI8z.js";
153
+ import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-BYiOuxnf.js";
154
+ import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-MAH2Oph4.js";
155
+ import "./onboarding.secret-input-BFD0OW4X.js";
156
+ import { t as runOnboardingWizard } from "./onboarding-CTPuMVQI.js";
157
+ 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-FOkPD05E.js";
158
158
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-CGAPu0UQ.js";
159
- import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-B5BMBBJP.js";
160
- import "./node-service-BpYZAvpl.js";
161
- import "./status.update-B20UBTDq.js";
162
- import { t as installSkill } from "./skills-install-Vmi7xYfa.js";
163
- import { t as runGatewayUpdate } from "./update-runner-CzTQ7BJT.js";
164
- import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-v76gFdZu.js";
165
- import { n as forceFreePortAndWait, r as waitForPortBindable } from "./ports-DMkRSlnH.js";
159
+ import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-DRhSc90G.js";
160
+ import "./node-service-CcgtNIeT.js";
161
+ import "./status.update-ZYUSggzS.js";
162
+ import { t as installSkill } from "./skills-install-BoLfaoWv.js";
163
+ import { t as runGatewayUpdate } from "./update-runner-B6_UqreW.js";
164
+ import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-CIGzK2_w.js";
165
+ import { n as forceFreePortAndWait, r as waitForPortBindable } from "./ports-BlCLhwbc.js";
166
166
  import { spawn, spawnSync } from "node:child_process";
167
167
  import { fileURLToPath, pathToFileURL } from "node:url";
168
168
  import os from "node:os";
@@ -171,7 +171,7 @@ import * as fsSync from "node:fs";
171
171
  import fs from "node:fs";
172
172
  import chalk from "chalk";
173
173
  import { isDeepStrictEqual } from "node:util";
174
- import fs$1 from "node:fs/promises";
174
+ import fsPromises from "node:fs/promises";
175
175
  import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
176
176
  import { z } from "zod";
177
177
  import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
@@ -1241,7 +1241,7 @@ function resolveCheckIntervalMs(cfg) {
1241
1241
  }
1242
1242
  async function readState(statePath) {
1243
1243
  try {
1244
- const raw = await fs$1.readFile(statePath, "utf-8");
1244
+ const raw = await fsPromises.readFile(statePath, "utf-8");
1245
1245
  const parsed = JSON.parse(raw);
1246
1246
  return parsed && typeof parsed === "object" ? parsed : {};
1247
1247
  } catch {
@@ -1322,7 +1322,7 @@ async function runAutoUpdateCommand(params) {
1322
1322
  path.join(params.root, "dist", "index.mjs")
1323
1323
  ];
1324
1324
  for (const candidate of candidates) try {
1325
- await fs$1.access(candidate);
1325
+ await fsPromises.access(candidate);
1326
1326
  argv.push(execPath, candidate, ...baseArgs);
1327
1327
  break;
1328
1328
  } catch {}
@@ -4453,20 +4453,20 @@ async function drainPendingWrite(filePath) {
4453
4453
  if (pending) await pending.catch(() => void 0);
4454
4454
  }
4455
4455
  async function pruneIfNeeded(filePath, opts) {
4456
- const stat = await fs$1.stat(filePath).catch(() => null);
4456
+ const stat = await fsPromises.stat(filePath).catch(() => null);
4457
4457
  if (!stat || stat.size <= opts.maxBytes) return;
4458
- const lines = (await fs$1.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4458
+ const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4459
4459
  const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
4460
4460
  const { randomBytes } = await import("node:crypto");
4461
4461
  const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
4462
- await fs$1.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4463
- await fs$1.rename(tmp, filePath);
4462
+ await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4463
+ await fsPromises.rename(tmp, filePath);
4464
4464
  }
4465
4465
  async function appendCronRunLog(filePath, entry, opts) {
4466
4466
  const resolved = path.resolve(filePath);
4467
4467
  const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
4468
- await fs$1.mkdir(path.dirname(resolved), { recursive: true });
4469
- await fs$1.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4468
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
4469
+ await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4470
4470
  await pruneIfNeeded(resolved, {
4471
4471
  maxBytes: opts?.maxBytes ?? DEFAULT_CRON_RUN_LOG_MAX_BYTES,
4472
4472
  keepLines: opts?.keepLines ?? DEFAULT_CRON_RUN_LOG_KEEP_LINES
@@ -4560,7 +4560,7 @@ function filterRunLogEntries(entries, opts) {
4560
4560
  async function readCronRunLogEntriesPage(filePath, opts) {
4561
4561
  await drainPendingWrite(filePath);
4562
4562
  const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
4563
- const raw = await fs$1.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4563
+ const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4564
4564
  const statuses = normalizeRunStatuses(opts);
4565
4565
  const deliveryStatuses = normalizeDeliveryStatuses(opts);
4566
4566
  const query = opts?.query?.trim().toLowerCase() ?? "";
@@ -4596,7 +4596,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4596
4596
  const query = opts.query?.trim().toLowerCase() ?? "";
4597
4597
  const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
4598
4598
  const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
4599
- 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));
4599
+ const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4600
4600
  if (jsonlFiles.length === 0) return {
4601
4601
  entries: [],
4602
4602
  total: 0,
@@ -4607,7 +4607,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4607
4607
  };
4608
4608
  await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
4609
4609
  const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
4610
- return parseAllRunLogEntries(await fs$1.readFile(filePath, "utf-8").catch(() => ""));
4610
+ return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
4611
4611
  }))).flat(), {
4612
4612
  statuses,
4613
4613
  deliveryStatuses,
@@ -9836,7 +9836,7 @@ function resolveWorkspaceFilePathResultOrThrow(params) {
9836
9836
  }
9837
9837
  async function resolveWorkspaceRealPath(workspaceDir) {
9838
9838
  try {
9839
- return await fs$1.realpath(workspaceDir);
9839
+ return await fsPromises.realpath(workspaceDir);
9840
9840
  } catch {
9841
9841
  return path.resolve(workspaceDir);
9842
9842
  }
@@ -9865,7 +9865,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9865
9865
  };
9866
9866
  let candidateLstat;
9867
9867
  try {
9868
- candidateLstat = await fs$1.lstat(candidatePath);
9868
+ candidateLstat = await fsPromises.lstat(candidatePath);
9869
9869
  } catch (err) {
9870
9870
  return resolveWorkspaceFilePathResultOrThrow({
9871
9871
  error: err,
@@ -9876,7 +9876,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9876
9876
  if (candidateLstat.isSymbolicLink()) {
9877
9877
  let targetReal;
9878
9878
  try {
9879
- targetReal = await fs$1.realpath(candidatePath);
9879
+ targetReal = await fsPromises.realpath(candidatePath);
9880
9880
  } catch (err) {
9881
9881
  return resolveWorkspaceFilePathResultOrThrow({
9882
9882
  error: err,
@@ -9886,7 +9886,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9886
9886
  }
9887
9887
  let targetStat;
9888
9888
  try {
9889
- targetStat = await fs$1.stat(targetReal);
9889
+ targetStat = await fsPromises.stat(targetReal);
9890
9890
  } catch (err) {
9891
9891
  return resolveWorkspaceFilePathResultOrThrow({
9892
9892
  error: err,
@@ -9924,13 +9924,13 @@ async function resolveAgentWorkspaceFilePath(params) {
9924
9924
  return {
9925
9925
  kind: "ready",
9926
9926
  requestPath,
9927
- ioPath: await fs$1.realpath(candidatePath).catch(() => candidatePath),
9927
+ ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
9928
9928
  workspaceReal
9929
9929
  };
9930
9930
  }
9931
9931
  async function statFileSafely(filePath) {
9932
9932
  try {
9933
- const [stat, lstat] = await Promise.all([fs$1.stat(filePath), fs$1.lstat(filePath)]);
9933
+ const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
9934
9934
  if (lstat.isSymbolicLink() || !stat.isFile()) return null;
9935
9935
  if (stat.nlink > 1) return null;
9936
9936
  if (!sameFileIdentity(stat, lstat)) return null;
@@ -10024,7 +10024,7 @@ function respondAgentNotFound(respond, agentId) {
10024
10024
  async function moveToTrashBestEffort(pathname) {
10025
10025
  if (!pathname) return;
10026
10026
  try {
10027
- await fs$1.access(pathname);
10027
+ await fsPromises.access(pathname);
10028
10028
  } catch {
10029
10029
  return;
10030
10030
  }
@@ -10100,7 +10100,7 @@ const agentsHandlers = {
10100
10100
  dir: workspaceDir,
10101
10101
  ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
10102
10102
  });
10103
- await fs$1.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10103
+ await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10104
10104
  await writeConfigFile(nextConfig);
10105
10105
  const safeName = sanitizeIdentityLine(rawName);
10106
10106
  const emoji = resolveOptionalStringParam(params.emoji);
@@ -10113,7 +10113,7 @@ const agentsHandlers = {
10113
10113
  ...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
10114
10114
  ""
10115
10115
  ];
10116
- await fs$1.appendFile(identityPath, lines.join("\n"), "utf-8");
10116
+ await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
10117
10117
  respond(true, {
10118
10118
  ok: true,
10119
10119
  agentId,
@@ -10148,9 +10148,9 @@ const agentsHandlers = {
10148
10148
  });
10149
10149
  if (avatar) {
10150
10150
  const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
10151
- await fs$1.mkdir(workspace, { recursive: true });
10151
+ await fsPromises.mkdir(workspace, { recursive: true });
10152
10152
  const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
10153
- await fs$1.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10153
+ await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10154
10154
  }
10155
10155
  respond(true, {
10156
10156
  ok: true,
@@ -10274,7 +10274,7 @@ const agentsHandlers = {
10274
10274
  const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
10275
10275
  if (!resolved) return;
10276
10276
  const { agentId, workspaceDir, name } = resolved;
10277
- await fs$1.mkdir(workspaceDir, { recursive: true });
10277
+ await fsPromises.mkdir(workspaceDir, { recursive: true });
10278
10278
  const filePath = path.join(workspaceDir, name);
10279
10279
  const resolvedPath = await resolveWorkspaceFilePathOrRespond({
10280
10280
  respond,
@@ -12593,14 +12593,14 @@ function isRollingLogFile(file) {
12593
12593
  return ROLLING_LOG_RE.test(path.basename(file));
12594
12594
  }
12595
12595
  async function resolveLogFile(file) {
12596
- if (await fs$1.stat(file).catch(() => null)) return file;
12596
+ if (await fsPromises.stat(file).catch(() => null)) return file;
12597
12597
  if (!isRollingLogFile(file)) return file;
12598
12598
  const dir = path.dirname(file);
12599
- const entries = await fs$1.readdir(dir, { withFileTypes: true }).catch(() => null);
12599
+ const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
12600
12600
  if (!entries) return file;
12601
12601
  return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
12602
12602
  const fullPath = path.join(dir, entry.name);
12603
- const fileStat = await fs$1.stat(fullPath).catch(() => null);
12603
+ const fileStat = await fsPromises.stat(fullPath).catch(() => null);
12604
12604
  return fileStat ? {
12605
12605
  path: fullPath,
12606
12606
  mtimeMs: fileStat.mtimeMs
@@ -12608,7 +12608,7 @@ async function resolveLogFile(file) {
12608
12608
  }))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
12609
12609
  }
12610
12610
  async function readLogSlice(params) {
12611
- const stat = await fs$1.stat(params.file).catch(() => null);
12611
+ const stat = await fsPromises.stat(params.file).catch(() => null);
12612
12612
  if (!stat) return {
12613
12613
  cursor: 0,
12614
12614
  size: 0,
@@ -12646,7 +12646,7 @@ async function readLogSlice(params) {
12646
12646
  truncated,
12647
12647
  reset
12648
12648
  };
12649
- const handle = await fs$1.open(params.file, "r");
12649
+ const handle = await fsPromises.open(params.file, "r");
12650
12650
  try {
12651
12651
  let prefix = "";
12652
12652
  if (start > 0) {
@@ -13628,7 +13628,7 @@ const nodeHandlers = {
13628
13628
  const p = params;
13629
13629
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
13630
13630
  await respondUnavailableOnThrow(respond, async () => {
13631
- const { handleNodeEvent } = await import("./server-node-events-BmnPjNXE.js");
13631
+ const { handleNodeEvent } = await import("./server-node-events-DkbZzI6P.js");
13632
13632
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
13633
13633
  await handleNodeEvent({
13634
13634
  deps: context.deps,
@@ -16659,7 +16659,7 @@ function normalizeAgentPayload(payload) {
16659
16659
  async function startBrowserControlServerIfEnabled() {
16660
16660
  if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
16661
16661
  const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
16662
- const mod = override ? await import(override) : await import("./server-Ci4xtuR9.js");
16662
+ const mod = override ? await import(override) : await import("./server-kUElNhlY.js");
16663
16663
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
16664
16664
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
16665
16665
  if (!start) return null;
@@ -16887,7 +16887,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
16887
16887
  if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
16888
16888
  const candidate = path.join(rootReal, rel);
16889
16889
  try {
16890
- const st = await fs$1.lstat(candidate);
16890
+ const st = await fsPromises.lstat(candidate);
16891
16891
  if (st.isSymbolicLink()) return null;
16892
16892
  if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
16893
16893
  } catch {}
@@ -16924,8 +16924,8 @@ async function resolveA2uiRoot() {
16924
16924
  for (const dir of candidates) try {
16925
16925
  const indexPath = path.join(dir, "index.html");
16926
16926
  const bundlePath = path.join(dir, "a2ui.bundle.js");
16927
- await fs$1.stat(indexPath);
16928
- await fs$1.stat(bundlePath);
16927
+ await fsPromises.stat(indexPath);
16928
+ await fsPromises.stat(bundlePath);
16929
16929
  return dir;
16930
16930
  } catch {}
16931
16931
  return null;
@@ -16934,7 +16934,7 @@ async function resolveA2uiRootReal() {
16934
16934
  if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
16935
16935
  if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
16936
16936
  const root = await resolveA2uiRoot();
16937
- cachedA2uiRootReal = root ? await fs$1.realpath(root) : null;
16937
+ cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
16938
16938
  cachedA2uiResolvedAtMs = Date.now();
16939
16939
  resolvingA2uiRoot = null;
16940
16940
  return cachedA2uiRootReal;
@@ -17155,13 +17155,13 @@ function normalizeBasePath(rawPath) {
17155
17155
  }
17156
17156
  async function prepareCanvasRoot(rootDir) {
17157
17157
  await ensureDir(rootDir);
17158
- const rootReal = await fs$1.realpath(rootDir);
17158
+ const rootReal = await fsPromises.realpath(rootDir);
17159
17159
  try {
17160
17160
  const indexPath = path.join(rootReal, "index.html");
17161
- await fs$1.stat(indexPath);
17161
+ await fsPromises.stat(indexPath);
17162
17162
  } catch {
17163
17163
  try {
17164
- await fs$1.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17164
+ await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17165
17165
  } catch {}
17166
17166
  }
17167
17167
  return rootReal;
@@ -20206,7 +20206,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
20206
20206
  }
20207
20207
  async function readLockPayload(lockPath) {
20208
20208
  try {
20209
- const raw = await fs$1.readFile(lockPath, "utf8");
20209
+ const raw = await fsPromises.readFile(lockPath, "utf8");
20210
20210
  const parsed = JSON.parse(raw);
20211
20211
  if (typeof parsed.pid !== "number") return null;
20212
20212
  if (typeof parsed.createdAt !== "string") return null;
@@ -20241,11 +20241,11 @@ async function acquireGatewayLock(opts = {}) {
20241
20241
  const platform = opts.platform ?? process.platform;
20242
20242
  const port = opts.port;
20243
20243
  const { lockPath, configPath } = resolveGatewayLockPath(env);
20244
- await fs$1.mkdir(path.dirname(lockPath), { recursive: true });
20244
+ await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
20245
20245
  const startedAt = Date.now();
20246
20246
  let lastPayload = null;
20247
20247
  while (Date.now() - startedAt < timeoutMs) try {
20248
- const handle = await fs$1.open(lockPath, "wx");
20248
+ const handle = await fsPromises.open(lockPath, "wx");
20249
20249
  const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
20250
20250
  const payload = {
20251
20251
  pid: process.pid,
@@ -20259,7 +20259,7 @@ async function acquireGatewayLock(opts = {}) {
20259
20259
  configPath,
20260
20260
  release: async () => {
20261
20261
  await handle.close().catch(() => void 0);
20262
- await fs$1.rm(lockPath, { force: true });
20262
+ await fsPromises.rm(lockPath, { force: true });
20263
20263
  }
20264
20264
  };
20265
20265
  } catch (err) {
@@ -20268,7 +20268,7 @@ async function acquireGatewayLock(opts = {}) {
20268
20268
  const ownerPid = lastPayload?.pid;
20269
20269
  const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
20270
20270
  if (ownerStatus === "dead" && ownerPid) {
20271
- await fs$1.rm(lockPath, { force: true });
20271
+ await fsPromises.rm(lockPath, { force: true });
20272
20272
  continue;
20273
20273
  }
20274
20274
  if (ownerStatus !== "alive") {
@@ -20278,13 +20278,13 @@ async function acquireGatewayLock(opts = {}) {
20278
20278
  stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
20279
20279
  }
20280
20280
  if (!stale) try {
20281
- const st = await fs$1.stat(lockPath);
20281
+ const st = await fsPromises.stat(lockPath);
20282
20282
  stale = Date.now() - st.mtimeMs > staleMs;
20283
20283
  } catch {
20284
20284
  stale = false;
20285
20285
  }
20286
20286
  if (stale) {
20287
- await fs$1.rm(lockPath, { force: true });
20287
+ await fsPromises.rm(lockPath, { force: true });
20288
20288
  continue;
20289
20289
  }
20290
20290
  }
@@ -22636,7 +22636,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
22636
22636
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
22637
22637
  if (!minimalTestGateway) (async () => {
22638
22638
  const { recoverPendingDeliveries } = await import("./delivery-queue-Bl-IGZt-.js").then((n) => n.n);
22639
- const { deliverOutboundPayloads } = await import("./deliver-CxF9h9PE.js").then((n) => n.n);
22639
+ const { deliverOutboundPayloads } = await import("./deliver-b93aBgie.js").then((n) => n.n);
22640
22640
  await recoverPendingDeliveries({
22641
22641
  deliver: deliverOutboundPayloads,
22642
22642
  log: log.child("delivery-recovery"),