@lawpath-tech/openclaw 2026.2.21-31 → 2026.2.21-32

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 (317) hide show
  1. package/dist/{accounts-CGBT0wQ4.js → accounts-D8ryuxvJ.js} +7 -7
  2. package/dist/{accounts-CAR30ERb.js → accounts-Dl14M6E6.js} +1 -1
  3. package/dist/{accounts-BQX482gP.js → accounts-E1DMCEDO.js} +1 -1
  4. package/dist/{acp-cli-DZV917OP.js → acp-cli-hedESiET.js} +6 -6
  5. package/dist/{agent-scope-BGlpyppa.js → agent-scope-B6jLdNuI.js} +18 -18
  6. package/dist/{agents-BP8GDc9z.js → agents-DWpMpnrU.js} +4 -4
  7. package/dist/{agents.config-Bz7K-hIv.js → agents.config-DfN81iaS.js} +2 -2
  8. package/dist/{agents.config-BelTNn6K.js → agents.config-bQuerf1-.js} +1 -1
  9. package/dist/{api-key-rotation-CMe3cUAn.js → api-key-rotation-ddrC-1k5.js} +1 -1
  10. package/dist/{audio-preflight-Djsieqbl.js → audio-preflight-DRE31Ab_.js} +28 -28
  11. package/dist/{audio-preflight-DP74Yvkp.js → audio-preflight-Dp9KYMCX.js} +4 -4
  12. package/dist/{audit-W6GUNtGq.js → audit-DqzfLnre.js} +23 -23
  13. package/dist/{auth-choice-D1nW1tnt.js → auth-choice-BWs44j21.js} +8 -8
  14. package/dist/{auth-choice-CBUsciQJ.js → auth-choice-CNEPjZq2.js} +1 -1
  15. package/dist/{auth-token-3sJLQq8Y.js → auth-token-Il_1hz__.js} +1 -1
  16. package/dist/{banner-C18cJKYR.js → banner-CxaRxgic.js} +1 -1
  17. package/dist/{bindings-D_OoALBE.js → bindings-D_90DJ1-.js} +1 -1
  18. package/dist/{browser-cli-pa0mgoQY.js → browser-cli-DRksx_yW.js} +9 -9
  19. package/dist/build-info.json +3 -3
  20. package/dist/bundled/boot-md/handler.js +8 -8
  21. package/dist/bundled/session-memory/handler.js +8 -8
  22. package/dist/{call-BVSmc2vl.js → call-CYa4YbMh.js} +9 -9
  23. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  24. package/dist/{channel-options-Dh4UX17R.js → channel-options-731cZrV3.js} +2 -2
  25. package/dist/{channel-options-DUJnpe5D.js → channel-options-DOP9meV_.js} +1 -1
  26. package/dist/{channel-selection-B3CpzNsC.js → channel-selection-NCqPAi5U.js} +1 -1
  27. package/dist/{channel-web-wLJAIBDS.js → channel-web-BGJ5ln5L.js} +17 -17
  28. package/dist/{channels-cli-B3GeraPZ.js → channels-cli-BSR5Ss_g.js} +75 -75
  29. package/dist/{channels-cli-7lL-U0bT.js → channels-cli-D3RDDRf1.js} +6 -6
  30. package/dist/{channels-status-issues-C4_sbL0E.js → channels-status-issues-CNE14g1e.js} +1 -1
  31. package/dist/{chrome-C9MCXK8d.js → chrome-BlXdvPOB.js} +2 -2
  32. package/dist/{chrome-BukFhWVN.js → chrome-DAmaIuXa.js} +7 -7
  33. package/dist/{clawbot-cli-B2jNAgQu.js → clawbot-cli-__trjQJ4.js} +4 -4
  34. package/dist/cli/daemon-cli.js +1 -1
  35. package/dist/{cli-C9y6JSoj.js → cli-C7e7H1JP.js} +3 -3
  36. package/dist/{cli-BdmFE8Ie.js → cli-DnIh8_UI.js} +62 -62
  37. package/dist/{client-DkL-GDcp.js → client-BW8Wuj5N.js} +1 -1
  38. package/dist/{command-registry-D-PJPg1t.js → command-registry-Q4A7-DBA.js} +9 -9
  39. package/dist/{commands-DHoTLUfu.js → commands-KvUzKZ-E.js} +1 -1
  40. package/dist/{commands-registry-C6MwKIm9.js → commands-registry-DVVMuhaG.js} +3 -3
  41. package/dist/{completion-cli-CA5pvA6W.js → completion-cli-JhFn-BzZ.js} +12 -12
  42. package/dist/{completion-cli-zfVgI7-n.js → completion-cli-dC9YBc-k.js} +2 -2
  43. package/dist/{config-CkqfHk27.js → config-JupjCURB.js} +2 -2
  44. package/dist/{config-cli-CgMtqspq.js → config-cli-DMLSe-zW.js} +1 -1
  45. package/dist/{config-cli-BPrhK0hV.js → config-cli-DOvNIX0v.js} +4 -4
  46. package/dist/{config-guard-C5fqJ2Ra.js → config-guard-5XdCrtj_.js} +12 -12
  47. package/dist/{config-validation-cyW76mmN.js → config-validation-B1WJ3f4s.js} +1 -1
  48. package/dist/{configure-yDD4TKIJ.js → configure-Bvsehc2l.js} +15 -15
  49. package/dist/{configure-P0T5xCKn.js → configure-DjTsdvi-.js} +3 -3
  50. package/dist/{control-service-CPT8eogY.js → control-service-C7XguOvd.js} +4 -4
  51. package/dist/{control-ui-assets-BcSek9LQ.js → control-ui-assets-BLVZXE2I.js} +1 -1
  52. package/dist/{cron-cli-B8A_gdlC.js → cron-cli-DJY2332p.js} +10 -10
  53. package/dist/{daemon-cli-BY4RqUnr.js → daemon-cli-BWUQX0oT.js} +11 -11
  54. package/dist/{daemon-runtime-b5AIw6-c.js → daemon-runtime-DWX-qIBl.js} +10 -10
  55. package/dist/{deliver-BLmoUvp-.js → deliver-BP564y6d.js} +1 -1
  56. package/dist/{deliver-DPIPJHQH.js → deliver-DKhy3kV4.js} +7 -7
  57. package/dist/{devices-cli-lm3S1JQu.js → devices-cli-D4oN5nE1.js} +6 -6
  58. package/dist/{diagnostics-BTTjVvNB.js → diagnostics-DqqmUDc7.js} +5 -5
  59. package/dist/{directory-cli-BV3bixZh.js → directory-cli-Cn5w5bQ0.js} +7 -7
  60. package/dist/{dm-policy-shared-CrbkZ-FV.js → dm-policy-shared-CysWxa2H.js} +2 -2
  61. package/dist/{dns-cli-D7X1eTm3.js → dns-cli-CYB5gA5O.js} +3 -3
  62. package/dist/{dock-B1xpMkYP.js → dock-CX_o0bdi.js} +4 -4
  63. package/dist/{docs-cli-C_3NO2uV.js → docs-cli-Dsn3U8-1.js} +1 -1
  64. package/dist/{doctor-completion-wNJ24zG1.js → doctor-completion-ZNTlXnGL.js} +1 -1
  65. package/dist/{doctor-completion-QnB3fOSm.js → doctor-completion-zUNacbyu.js} +2 -2
  66. package/dist/{doctor-config-flow-BB3nWQcZ.js → doctor-config-flow-C9h7ENJ-.js} +10 -10
  67. package/dist/entry.js +1 -1
  68. package/dist/{exec-approvals-cli-TT3Gh9kR.js → exec-approvals-cli-BXXdOl4u.js} +13 -13
  69. package/dist/extensionAPI.js +3 -3
  70. package/dist/{fs-safe-CUjO1ca2.js → fs-safe-CTDvb1DF.js} +6 -6
  71. package/dist/{gateway-cli-jzI2iY9a.js → gateway-cli-B8-2FWEZ.js} +10 -10
  72. package/dist/{gateway-cli-abohiHMm.js → gateway-cli-BXP02v7b.js} +132 -132
  73. package/dist/{gateway-rpc-BGGmDgbQ.js → gateway-rpc-CqPT9Cep.js} +1 -1
  74. package/dist/{health-ChDsDryb.js → health-BFLhZBCV.js} +13 -13
  75. package/dist/{health-BJ6SHHDr.js → health-Bm_bIcyw.js} +1 -1
  76. package/dist/{hooks-cli-DuRDIltL.js → hooks-cli-BVjpIkaS.js} +76 -76
  77. package/dist/{hooks-cli-BmuxgZBH.js → hooks-cli-DyN1Bq_w.js} +4 -4
  78. package/dist/{image-hH4ugSJI.js → image-DL65NdIM.js} +1 -1
  79. package/dist/{image-DC9YnAwO.js → image-DtVdv4CQ.js} +3 -3
  80. package/dist/{image-ops-B4PbaJHR.js → image-ops-Uvt51OHH.js} +10 -10
  81. package/dist/index.js +72 -72
  82. package/dist/{inspect-gLKB4R6Z.js → inspect-VKHaN3HT.js} +4 -4
  83. package/dist/{install-safe-path-tCLiMpmO.js → install-safe-path-Qqr_t_tH.js} +11 -11
  84. package/dist/{installs-Bbb02byQ.js → installs-BamQ1KDR.js} +10 -10
  85. package/dist/{ir-D72mYI93.js → ir-1SG-TkUZ.js} +6 -6
  86. package/dist/{lifecycle-core-DNgy-uKO.js → lifecycle-core-DZJF3omV.js} +5 -5
  87. package/dist/llm-slug-generator.js +8 -8
  88. package/dist/{local-roots-B6Q8Hrfc.js → local-roots-25wkka6O.js} +2 -2
  89. package/dist/{login-Bz2k49Y4.js → login-BThY9qqp.js} +3 -3
  90. package/dist/{login-qr-L9yhuI9H.js → login-qr-BOOn03RH.js} +5 -5
  91. package/dist/{logs-cli-B2PPoAkv.js → logs-cli-DoDfF8hD.js} +7 -7
  92. package/dist/{manager-CDo24VZE.js → manager-BVtzk7_v.js} +13 -13
  93. package/dist/{markdown-tables-CXWxrKp3.js → markdown-tables-MNYCbYg1.js} +1 -1
  94. package/dist/{memory-cli-8SCKR9xc.js → memory-cli-CS7LI30B.js} +12 -12
  95. package/dist/{model-BKG0edkX.js → model-MOoXNngW.js} +1 -1
  96. package/dist/{model-catalog-CjwzHKkB.js → model-catalog-CzLbr1ZD.js} +4 -4
  97. package/dist/{model-picker-NGiZaAei.js → model-picker-bpc3jJ5m.js} +3 -3
  98. package/dist/{model-selection-0qDmOMXI.js → model-selection-C1pdWy7b.js} +9 -9
  99. package/dist/{models-BpqbY6s6.js → models-Bd3CLEWM.js} +2 -2
  100. package/dist/{models-cli-COanmcGm.js → models-cli-4QX1LFRs.js} +72 -72
  101. package/dist/{models-cli-DqWWTCao.js → models-cli-D__CoxU_.js} +5 -5
  102. package/dist/{models-config-CTi1zIkq.js → models-config-BVp1ZtTh.js} +7 -7
  103. package/dist/{node-cli-Cqkqlb01.js → node-cli-D-N_WPoP.js} +28 -28
  104. package/dist/{node-service-YmmWwF_4.js → node-service-BESGjvfV.js} +1 -1
  105. package/dist/{nodes-cli-xRiWzu3G.js → nodes-cli-Cn4uY_Gx.js} +10 -10
  106. package/dist/{nodes-screen-C-rbZoYt.js → nodes-screen-kFzB7013.js} +4 -4
  107. package/dist/{npm-registry-spec-Dw7Zv5pY.js → npm-registry-spec-pqZV9KaL.js} +9 -9
  108. package/dist/{onboard-UEtBiCoJ.js → onboard-DDzVmEvx.js} +2 -2
  109. package/dist/{onboard-wCY6TSre.js → onboard-DJUKlsWz.js} +13 -13
  110. package/dist/{onboard-channels-BJ-tZka8.js → onboard-channels-BqW3maPJ.js} +5 -5
  111. package/dist/{onboard-channels-CPma01ab.js → onboard-channels-CrfL2B6W.js} +1 -1
  112. package/dist/{onboard-custom-KUI3ky6Y.js → onboard-custom-D7KcpLUZ.js} +3 -3
  113. package/dist/{onboard-helpers-CuawFqeV.js → onboard-helpers-C2-IAGyl.js} +8 -8
  114. package/dist/{onboard-hooks-Cjnt0UN3.js → onboard-hooks-Cf_rZ0y2.js} +1 -1
  115. package/dist/{onboard-remote-ClWpZWND.js → onboard-remote-DujGEJSZ.js} +1 -1
  116. package/dist/{onboard-skills-wCr1UcGc.js → onboard-skills-BCOMycP2.js} +4 -4
  117. package/dist/{onboarding-Di4SkJUj.js → onboarding-0IAGtYhr.js} +3 -3
  118. package/dist/{onboarding-Dp6k5p-a.js → onboarding-w8peVpJ9.js} +13 -13
  119. package/dist/{onboarding.finalize-G-q87JA2.js → onboarding.finalize-CwtvbQBP.js} +74 -74
  120. package/dist/{onboarding.finalize-DshqLGqp.js → onboarding.finalize-De4it5U3.js} +8 -8
  121. package/dist/{onboarding.gateway-config-7sVZcOhj.js → onboarding.gateway-config-BJ0SMGbj.js} +14 -14
  122. package/dist/{openai-model-default-CZOgt9C7.js → openai-model-default-DagaQbb0.js} +2 -2
  123. package/dist/{openclaw-root-CQJwyH9q.js → openclaw-root-CbWxAStx.js} +2 -2
  124. package/dist/{outbound-BiC9-qyo.js → outbound-DPGxP4j6.js} +4 -4
  125. package/dist/{plugin-sdk/outbound-attachment-1oBost2D.js → outbound-attachment-D07lPNUZ.js} +2 -2
  126. package/dist/{pairing-cli-B5reDhJF.js → pairing-cli-BZwhRsWv.js} +8 -8
  127. package/dist/{pairing-labels-UbwdcASX.js → pairing-labels-Cf9ie2Yo.js} +1 -1
  128. package/dist/{pairing-store-IkE0_gB1.js → pairing-store-BzMeXbOB.js} +2 -2
  129. package/dist/{pairing-token-DGufCZxz.js → pairing-token-DAVfcYo5.js} +7 -7
  130. package/dist/{paths-CIvEoL0m.js → paths-BsnfCNkx.js} +1 -1
  131. package/dist/{pi-auth-json-C5hwfgoJ.js → pi-auth-json-BBbOI_P4.js} +3 -3
  132. package/dist/{pi-embedded-C7TfFIPO.js → pi-embedded-CIsGkiaB.js} +200 -43
  133. package/dist/{pi-embedded-helpers-BDEpQxcD.js → pi-embedded-helpers-B9uwWqnh.js} +6 -6
  134. package/dist/{pi-embedded-helpers-DR_3fJko.js → pi-embedded-helpers-HnqhrewN.js} +4 -4
  135. package/dist/{pi-embedded-BAqpVR_m.js → pi-embedded-lJXJAe8z.js} +214 -57
  136. package/dist/{pi-tools.policy-CrKxTriv.js → pi-tools.policy-BU3gaxu3.js} +4 -4
  137. package/dist/{plugin-auto-enable-CU5zcL-D.js → plugin-auto-enable-Dkg7tNsW.js} +2 -2
  138. package/dist/{plugin-registry-BdQI8-bG.js → plugin-registry-BNUYtj9H.js} +3 -3
  139. package/dist/{plugin-registry-CFiYBSX2.js → plugin-registry-DjJ5pV-y.js} +1 -1
  140. package/dist/plugin-sdk/{accounts-cFYVb3Ir.js → accounts-BdyAJ80w.js} +1 -1
  141. package/dist/plugin-sdk/{accounts-owMdcC84.js → accounts-CDDBR5Pk.js} +1 -1
  142. package/dist/plugin-sdk/{accounts-CIV6d4kn.js → accounts-CNg4Pivg.js} +3 -3
  143. package/dist/plugin-sdk/{active-listener-n6hyqnXA.js → active-listener-C2nnC9Ax.js} +1 -1
  144. package/dist/plugin-sdk/{agent-scope-DNY1MYCy.js → agent-scope-CtPfsirh.js} +2 -2
  145. package/dist/plugin-sdk/{api-key-rotation-nmjAMTZA.js → api-key-rotation-R4AkTIjD.js} +1 -1
  146. package/dist/plugin-sdk/{audio-preflight-BkbKy5kx.js → audio-preflight-BAMNt6M5.js} +24 -24
  147. package/dist/plugin-sdk/{bindings-CopQpHHX.js → bindings-BoFVi5SB.js} +2 -2
  148. package/dist/plugin-sdk/{channel-activity-CrDvXjCQ.js → channel-activity-t_OI1MQf.js} +1 -1
  149. package/dist/plugin-sdk/{channel-web-DtyyUoWA.js → channel-web-hWtosBa_.js} +22 -22
  150. package/dist/plugin-sdk/{chrome-CrOYUXQ2.js → chrome-D0tUj9ji.js} +3 -3
  151. package/dist/plugin-sdk/{chunk-D4rztYS_.js → chunk-CoyesYaI.js} +1 -1
  152. package/dist/plugin-sdk/{command-format-A8fPp85k.js → command-format-BZHLj2Pv.js} +1 -1
  153. package/dist/plugin-sdk/{commands-registry-BgL5BgCb.js → commands-registry-DhpIXuI8.js} +4 -4
  154. package/dist/plugin-sdk/{config-CpE4TWH0.js → config-C-kB5yPz.js} +9 -9
  155. package/dist/plugin-sdk/{deliver-DTKyGKVr.js → deliver-BHg_hqJG.js} +10 -10
  156. package/dist/plugin-sdk/{diagnostic-AkXUmNj3.js → diagnostic-Bkobf9sL.js} +1 -1
  157. package/dist/plugin-sdk/{image-D-2tr3lg.js → image-DJgspIhI.js} +4 -4
  158. package/dist/plugin-sdk/{image-ops-D4rLqyFG.js → image-ops-BeZ1nzVS.js} +1 -1
  159. package/dist/plugin-sdk/index.js +53 -53
  160. package/dist/plugin-sdk/{ir-hakANnEW.js → ir-CRPo3dMY.js} +4 -4
  161. package/dist/plugin-sdk/{local-roots-CnaI2qJk.js → local-roots-C5Ju-AZh.js} +3 -3
  162. package/dist/plugin-sdk/{login-CcPkuK_e.js → login-ZAWRtiUn.js} +7 -7
  163. package/dist/plugin-sdk/{login-qr-C6rEbZ_4.js → login-qr-Vep4Qyfk.js} +9 -9
  164. package/dist/plugin-sdk/{manager-D0UeotCy.js → manager-BiSIuKTu.js} +8 -8
  165. package/dist/plugin-sdk/{manifest-registry-COeXOYi0.js → manifest-registry-DJWLGnsy.js} +1 -1
  166. package/dist/plugin-sdk/{markdown-tables-Bf31F9r6.js → markdown-tables-D3ber0Yy.js} +1 -1
  167. package/dist/plugin-sdk/{message-channel-CMtCA18K.js → message-channel-BvbVXKrt.js} +1 -1
  168. package/dist/plugin-sdk/{model-selection-CneSW_JC.js → model-selection-QOKxGwpD.js} +4 -4
  169. package/dist/{outbound-attachment-91Q9pKkZ.js → plugin-sdk/outbound-attachment-Dukb2BCs.js} +2 -2
  170. package/dist/plugin-sdk/{outbound-ChKX7wv_.js → outbound-simNZ392.js} +7 -7
  171. package/dist/plugin-sdk/{pi-auth-json-DfDP_Pzq.js → pi-auth-json-DjRxrq8j.js} +5 -5
  172. package/dist/plugin-sdk/{pi-embedded-helpers-idRp2oNz.js → pi-embedded-helpers-onFghmXi.js} +17 -17
  173. package/dist/plugin-sdk/{plugins-CCHKO6PS.js → plugins-Cmzpj_lq.js} +4 -4
  174. package/dist/plugin-sdk/{pw-ai-DC87yDnd.js → pw-ai-MetkkJzy.js} +8 -8
  175. package/dist/plugin-sdk/{qmd-manager-CnTnX_JH.js → qmd-manager-CD1M3q9a.js} +4 -4
  176. package/dist/plugin-sdk/{registry-BlMOtcPL.js → registry-BX2vORAB.js} +2 -2
  177. package/dist/plugin-sdk/{replies-OoosoUz9.js → replies-_91oZTzt.js} +7 -6
  178. package/dist/plugin-sdk/{reply-C_4ajFUt.js → reply-CKIG0ycG.js} +272 -115
  179. package/dist/plugin-sdk/{reply-prefix-G9ruZ2EI.js → reply-prefix-DuegEkbr.js} +1 -1
  180. package/dist/plugin-sdk/{resolve-outbound-target-D9fgJ-GG.js → resolve-outbound-target-CeT5UKn8.js} +2 -2
  181. package/dist/plugin-sdk/{resolve-route-yBLQIeuf.js → resolve-route-DxmOOAQ3.js} +3 -3
  182. package/dist/plugin-sdk/{retry-BG4opKt7.js → retry-DOt8b7_o.js} +1 -1
  183. package/dist/plugin-sdk/{runner-BkVA5r9t.js → runner-DycIbJjS.js} +9 -9
  184. package/dist/plugin-sdk/{send-C40m59QO.js → send-5KyVAcYY.js} +10 -10
  185. package/dist/plugin-sdk/{send-C9Q83PfF.js → send-BUW2Leik.js} +26 -7
  186. package/dist/plugin-sdk/{send-CgLOABgR.js → send-DWnqhh6N.js} +10 -10
  187. package/dist/plugin-sdk/{send-CiTMY1uN.js → send-Du8i1Fom.js} +7 -7
  188. package/dist/plugin-sdk/{send-b1mZbvoC.js → send-Fch4vj7_.js} +6 -6
  189. package/dist/plugin-sdk/{session-DBbj6znF.js → session-PaIae3bL.js} +4 -4
  190. package/dist/plugin-sdk/{skill-commands-Cu6XAfOe.js → skill-commands-CNFldYrK.js} +5 -5
  191. package/dist/plugin-sdk/{skills-BTu_-5jA.js → skills-CJCz6K_W.js} +7 -7
  192. package/dist/plugin-sdk/slack/monitor/events/channels.d.ts +1 -0
  193. package/dist/plugin-sdk/slack/monitor/events/members.d.ts +1 -0
  194. package/dist/plugin-sdk/slack/monitor/events/pins.d.ts +1 -0
  195. package/dist/plugin-sdk/slack/monitor/events/reactions.d.ts +1 -0
  196. package/dist/plugin-sdk/slack/monitor/events.d.ts +2 -0
  197. package/dist/plugin-sdk/slack/monitor/message-handler.d.ts +2 -0
  198. package/dist/plugin-sdk/slack/monitor/provider.d.ts +6 -0
  199. package/dist/plugin-sdk/slack/monitor/replies.d.ts +2 -0
  200. package/dist/plugin-sdk/slack/monitor/types.d.ts +4 -0
  201. package/dist/plugin-sdk/slack/threading.d.ts +9 -0
  202. package/dist/plugin-sdk/{sqlite-CH3lxc5D.js → sqlite-Bmy459sE.js} +1 -1
  203. package/dist/plugin-sdk/{store-DDOdV26p.js → store-B_h0hmNL.js} +2 -2
  204. package/dist/plugin-sdk/{subsystem-DoAZkah-.js → subsystem-DJYuxViY.js} +1 -1
  205. package/dist/plugin-sdk/{tables-DAJbUPhT.js → tables-DCBJv1Oa.js} +1 -1
  206. package/dist/plugin-sdk/{target-errors-CeKndUCY.js → target-errors-gEAboF7P.js} +2 -2
  207. package/dist/plugin-sdk/{thinking-lC2HmTea.js → thinking-D8Se3YVf.js} +5 -5
  208. package/dist/plugin-sdk/{tokens-Dag82kdi.js → tokens-Cx0xANZO.js} +1 -1
  209. package/dist/plugin-sdk/{tool-images-D_St2NkT.js → tool-images-CIoUqeS9.js} +2 -2
  210. package/dist/plugin-sdk/{tool-loop-detection-BAz1GNFQ.js → tool-loop-detection-B_Opna2S.js} +2 -2
  211. package/dist/plugin-sdk/web-HBE7hmNI.js +65 -0
  212. package/dist/plugin-sdk/{whatsapp-actions-CicFq_6w.js → whatsapp-actions-DqfQYPke.js} +21 -21
  213. package/dist/{plugins-DufH79A4.js → plugins-BYw4LpqC.js} +2 -2
  214. package/dist/{plugins-cli-CmrER-zr.js → plugins-cli-CKU99tGc.js} +71 -71
  215. package/dist/{plugins-cli-B03aSLgf.js → plugins-cli-DBrRLw_b.js} +4 -4
  216. package/dist/{ports-tyVdO5z0.js → ports-CJyNmOL8.js} +2 -2
  217. package/dist/{ports-B6fsVJW2.js → ports-CbYVfAGi.js} +1 -1
  218. package/dist/{program-Djk08-l7.js → program-CuRfrHul.js} +9 -9
  219. package/dist/{program-context-DlRS1tcr.js → program-context-Ct_MVt2A.js} +40 -40
  220. package/dist/{prompt-select-styled-CMszn2hx.js → prompt-select-styled-BhdDmaM8.js} +4 -4
  221. package/dist/{prompt-select-styled-JkMJPt68.js → prompt-select-styled-Cb9hZTTU.js} +37 -37
  222. package/dist/{provider-auth-helpers-ZV7-WRyR.js → provider-auth-helpers-B7bEwRrS.js} +5 -5
  223. package/dist/{provider-auth-helpers-36LOZ6SL.js → provider-auth-helpers-CPkc9hAj.js} +1 -1
  224. package/dist/{push-apns-Cm-ZTdUp.js → push-apns-BqDXb4kj.js} +4 -4
  225. package/dist/{push-apns-TUUEPpx1.js → push-apns-Cor1JBvm.js} +1 -1
  226. package/dist/{pw-ai-Dp9c5KD_.js → pw-ai-BLLeU82T.js} +1 -1
  227. package/dist/{pw-ai-fTf_Sq93.js → pw-ai-CWMnNfVs.js} +7 -7
  228. package/dist/{qmd-manager-CNVBA7OI.js → qmd-manager-D72OxpMn.js} +18 -18
  229. package/dist/{qr-cli-BQpNL00w.js → qr-cli-jnAlWxJ1.js} +1 -1
  230. package/dist/{register.agent-7Pku8mId.js → register.agent-BY4qQIyM.js} +81 -81
  231. package/dist/{register.agent-DsFrb0R7.js → register.agent-CPhQWbIL.js} +8 -8
  232. package/dist/register.configure-CtqFfgvY.js +147 -0
  233. package/dist/{register.configure-BMfcA9Sh.js → register.configure-d_7CE6cU.js} +8 -8
  234. package/dist/{register.maintenance-DfoSO5fo.js → register.maintenance-BiQeKBPQ.js} +84 -84
  235. package/dist/{register.maintenance-BFSQHBgH.js → register.maintenance-CQVF8TPW.js} +10 -10
  236. package/dist/{register.message-C-5P7V4g.js → register.message-5XIQHlJd.js} +4 -4
  237. package/dist/{register.message-BTCpZ8RW.js → register.message-CprmJPCV.js} +63 -63
  238. package/dist/{register.onboard-CVXaGmEF.js → register.onboard-D4hhxM8J.js} +6 -6
  239. package/dist/{register.onboard-CTO-qkWZ.js → register.onboard-DpvOjkyQ.js} +74 -74
  240. package/dist/{register.setup-BzaCK19n.js → register.setup-D3PpeeN2.js} +6 -6
  241. package/dist/{register.setup-Dg1Ud7ox.js → register.setup-MPlYCmF_.js} +77 -77
  242. package/dist/{register.status-health-sessions-DjwY1WQe.js → register.status-health-sessions-BE5frGYt.js} +5 -5
  243. package/dist/{register.status-health-sessions-IymXWaoK.js → register.status-health-sessions-BUzgM9fv.js} +75 -75
  244. package/dist/{register.subclis-Bw1N3fIn.js → register.subclis-BVUvjO4p.js} +9 -9
  245. package/dist/{replies-MVPArv-r.js → replies-9ipbTXMP.js} +5 -4
  246. package/dist/{replies-DtFxhHfI.js → replies-BCd0AxfK.js} +5 -4
  247. package/dist/{replies-DKKNtkun.js → replies-BVBgaEtE.js} +5 -4
  248. package/dist/{replies-DhmTgroV.js → replies-CSjH2EQ6.js} +5 -4
  249. package/dist/{reply-pTxrsMtG.js → reply-C7XZ5Kp3.js} +325 -168
  250. package/dist/{reply-prefix-CbuTBmdm.js → reply-prefix-CJc9NzGX.js} +1 -1
  251. package/dist/{resolve-route-DuqgZ7wS.js → resolve-route-C5pUt_LC.js} +2 -2
  252. package/dist/{routes-Bh-1i4ub.js → routes-BgjaVwmu.js} +8 -8
  253. package/dist/{rpc-RAW16k0Y.js → rpc-DrpAw2Te.js} +1 -1
  254. package/dist/{run-main-DnYUey0K.js → run-main-CmSuw5Re.js} +16 -16
  255. package/dist/{runner-CLY-9j7g.js → runner-CcRtHLpd.js} +1 -1
  256. package/dist/{runner-CXGYviGa.js → runner-fLI-fZ-v.js} +20 -20
  257. package/dist/{sandbox-Dbz4ladn.js → sandbox-B1lVufmT.js} +18 -18
  258. package/dist/{sandbox-cli-Dx1942n8.js → sandbox-cli--odc2cPK.js} +20 -20
  259. package/dist/{security-cli-Ci7ujUBk.js → security-cli-s6yE26pJ.js} +36 -36
  260. package/dist/{send-CTGeWUSD.js → send-B3u53ZAu.js} +20 -1
  261. package/dist/{send-i695V0Ow.js → send-BilxFvrd.js} +13 -13
  262. package/dist/{send-Cr8R-bMi.js → send-CAuzoyQe.js} +20 -1
  263. package/dist/{send-D_FU_HIa.js → send-D6r6s6Nf.js} +20 -1
  264. package/dist/{send-H5TFGeHl.js → send-DAb8zkAc.js} +6 -6
  265. package/dist/{send-ElgbtTa_.js → send-UJWeL6fz.js} +6 -6
  266. package/dist/{send-BGmblGeb.js → send-YdmCYGSj.js} +6 -6
  267. package/dist/{send-CKGUBMnM.js → send-_y-b5SXH.js} +24 -5
  268. package/dist/{server-context-BN_KGt0e.js → server-context-DFBpyKBE.js} +5 -5
  269. package/dist/{server-node-events-Dhbdspn_.js → server-node-events-DeVBy3RG.js} +4 -4
  270. package/dist/{server-node-events-DQYNf8b_.js → server-node-events-E7ENYs3y.js} +63 -63
  271. package/dist/{service-x8sNoic1.js → service-Bs5m4_g0.js} +15 -15
  272. package/dist/{session-SFd4vyTd.js → session-Gi1pc_jn.js} +2 -2
  273. package/dist/{session-dirs-DoK1aPxY.js → session-dirs-DMMeC5kT.js} +1 -1
  274. package/dist/{session-dirs-CFHymbM9.js → session-dirs-Dz06Isny.js} +16 -16
  275. package/dist/{sessions-CwvGRwvW.js → sessions-fj33u4f-.js} +13 -13
  276. package/dist/{shared-BlqeHl3I.js → shared-BYm87AKE.js} +1 -1
  277. package/dist/{shared-D-u4KNkt.js → shared-Btbxw_J6.js} +3 -3
  278. package/dist/{skill-commands-VCmL7mMC.js → skill-commands-27Clp6Hw.js} +5 -5
  279. package/dist/{skill-scanner-CMBwwxis.js → skill-scanner-BRf3FyA6.js} +5 -5
  280. package/dist/{skills-DhT6my9R.js → skills-DO1RiQMB.js} +4 -4
  281. package/dist/{skills-cli-AXXW1-ib.js → skills-cli-D8Z6O8tz.js} +7 -7
  282. package/dist/{skills-install-CHhkAUEW.js → skills-install-D2uuaBF9.js} +3 -3
  283. package/dist/{skills-status-B90dNffv.js → skills-status-C9NLYboA.js} +1 -1
  284. package/dist/{sqlite-CzeIEe5A.js → sqlite-DCO2j-0b.js} +12 -12
  285. package/dist/{status-KRRAxPjg.js → status-DQmoPN3T.js} +25 -25
  286. package/dist/{status-D32_SxwC.js → status-DUJLCUGg.js} +2 -2
  287. package/dist/{status-C-PQHlxh.js → status-Di2Pqiji.js} +1 -1
  288. package/dist/{status-CFnZ8E56.js → status-DppGMZ2s.js} +3 -3
  289. package/dist/{status.update-BdxnLoXT.js → status.update-CkYiGnzE.js} +3 -3
  290. package/dist/{store-YBnR7qvG.js → store-CLuh0zX0.js} +5 -5
  291. package/dist/{subagent-registry-DkjybHrK.js → subagent-registry-D3Pj0bnZ.js} +200 -43
  292. package/dist/{system-cli-CNufxt6H.js → system-cli-DQpLuBbA.js} +11 -11
  293. package/dist/{systemd-_79iBiaB.js → systemd-Blg-bgkO.js} +5 -5
  294. package/dist/{systemd-hints--ykZ9med.js → systemd-hints-pRBdkBPI.js} +6 -6
  295. package/dist/{systemd-linger--ZF5kAeJ.js → systemd-linger-DqOrhpC-.js} +1 -1
  296. package/dist/{tables-LYKSFoqx.js → tables-DhRyfXvl.js} +1 -1
  297. package/dist/{target-errors-BrrPOPT5.js → target-errors-DKUMw1tA.js} +4 -4
  298. package/dist/{tool-images-BCkPMulQ.js → tool-images-Cdj7iZ0t.js} +1 -1
  299. package/dist/{tui-BfllwI0b.js → tui-DbvXHepE.js} +7 -7
  300. package/dist/{tui-cli-DM4ahQxS.js → tui-cli-CIqa9qRn.js} +28 -28
  301. package/dist/{update-BNGNVRaT.js → update-CqhqeDij.js} +3 -3
  302. package/dist/{update-check-CEFJiPeh.js → update-check-DOy5cGkD.js} +5 -5
  303. package/dist/{update-cli-DXd4fNuS.js → update-cli-CsicqPiK.js} +10 -10
  304. package/dist/{update-cli-DMrRvy-m.js → update-cli-DJIsdQeJ.js} +94 -94
  305. package/dist/{web-Dsgry4ji.js → web-DRLO5z6-.js} +3 -3
  306. package/dist/{web-IfDcZx01.js → web-DShT68Ix.js} +3 -3
  307. package/dist/{web-DCNwbuhj.js → web-EGziWSH9.js} +8 -8
  308. package/dist/web-lXypZuaq.js +109 -0
  309. package/dist/{webhooks-cli-Ay0jR658.js → webhooks-cli-BJ1WiH3W.js} +4 -4
  310. package/dist/{whatsapp-actions-Dsvkb9dr.js → whatsapp-actions-lSqVUZ_h.js} +15 -15
  311. package/dist/{with-timeout-n3bwhefQ.js → with-timeout-OwJVCBFG.js} +1 -1
  312. package/dist/{workspace-dirs-DbX5fBAC.js → workspace-dirs-CuYuE5F1.js} +1 -1
  313. package/dist/{wsl-C4424szg.js → wsl-BbXxnokd.js} +2 -2
  314. package/package.json +1 -1
  315. package/dist/plugin-sdk/web-BlY2wNrk.js +0 -65
  316. package/dist/register.configure-CJ6IYgGS.js +0 -147
  317. package/dist/web-CCqlC0N_.js +0 -109
@@ -1,7 +1,7 @@
1
1
  import { c as resolveGatewayLaunchAgentLabel, f as resolveGatewayWindowsTaskName, p as resolveLegacyGatewayLaunchAgentLabels, t as GATEWAY_LAUNCH_AGENT_LABEL, u as resolveGatewayServiceDescription } from "./constants-CEbQvI8z.js";
2
- import { _ as toPosixPath, a as readSystemdServiceRuntime, c as stopSystemdService, f as splitArgsPreservingQuotes, g as formatLine, h as resolveHomeDir, i as readSystemdServiceExecStart, l as uninstallSystemdService, m as resolveGatewayStateDir, n as isSystemdServiceEnabled, p as parseKeyValueOutput, s as restartSystemdService, t as installSystemdService, v as writeFormattedLines, y as execFileUtf8 } from "./systemd-_79iBiaB.js";
2
+ import { _ as toPosixPath, a as readSystemdServiceRuntime, c as stopSystemdService, f as splitArgsPreservingQuotes, g as formatLine, h as resolveHomeDir, i as readSystemdServiceExecStart, l as uninstallSystemdService, m as resolveGatewayStateDir, n as isSystemdServiceEnabled, p as parseKeyValueOutput, s as restartSystemdService, t as installSystemdService, v as writeFormattedLines, y as execFileUtf8 } from "./systemd-Blg-bgkO.js";
3
3
  import path from "node:path";
4
- import fs from "node:fs/promises";
4
+ import fsPromises from "node:fs/promises";
5
5
 
6
6
  //#region src/daemon/launchd-plist.ts
7
7
  const plistEscape = (value) => value.replaceAll("&", "&amp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replaceAll("\"", "&quot;").replaceAll("'", "&apos;");
@@ -14,7 +14,7 @@ const renderEnvDict = (env) => {
14
14
  };
15
15
  async function readLaunchAgentProgramArgumentsFromFile(plistPath) {
16
16
  try {
17
- const plist = await fs.readFile(plistPath, "utf8");
17
+ const plist = await fsPromises.readFile(plistPath, "utf8");
18
18
  const programMatch = plist.match(/<key>ProgramArguments<\/key>\s*<array>([\s\S]*?)<\/array>/i);
19
19
  if (!programMatch) return null;
20
20
  const args = Array.from(programMatch[1].matchAll(/<string>([\s\S]*?)<\/string>/gi)).map((match) => plistUnescape(match[1] ?? "").trim());
@@ -128,7 +128,7 @@ async function isLaunchAgentListed(args) {
128
128
  async function launchAgentPlistExists(env) {
129
129
  try {
130
130
  const plistPath = resolveLaunchAgentPlistPath(env);
131
- await fs.access(plistPath);
131
+ await fsPromises.access(plistPath);
132
132
  return true;
133
133
  } catch {
134
134
  return false;
@@ -188,7 +188,7 @@ async function uninstallLaunchAgent({ env, stdout }) {
188
188
  ]);
189
189
  await execLaunchctl(["unload", plistPath]);
190
190
  try {
191
- await fs.access(plistPath);
191
+ await fsPromises.access(plistPath);
192
192
  } catch {
193
193
  stdout.write(`LaunchAgent not found at ${plistPath}\n`);
194
194
  return;
@@ -197,8 +197,8 @@ async function uninstallLaunchAgent({ env, stdout }) {
197
197
  const trashDir = path.join(home, ".Trash");
198
198
  const dest = path.join(trashDir, `${label}.plist`);
199
199
  try {
200
- await fs.mkdir(trashDir, { recursive: true });
201
- await fs.rename(plistPath, dest);
200
+ await fsPromises.mkdir(trashDir, { recursive: true });
201
+ await fsPromises.rename(plistPath, dest);
202
202
  stdout.write(`${formatLine("Moved LaunchAgent to Trash", dest)}\n`);
203
203
  } catch {
204
204
  stdout.write(`LaunchAgent remains at ${plistPath} (could not move)\n`);
@@ -221,7 +221,7 @@ async function stopLaunchAgent({ stdout, env }) {
221
221
  }
222
222
  async function installLaunchAgent({ env, stdout, programArguments, workingDirectory, environment, description }) {
223
223
  const { logDir, stdoutPath, stderrPath } = resolveGatewayLogPaths(env);
224
- await fs.mkdir(logDir, { recursive: true });
224
+ await fsPromises.mkdir(logDir, { recursive: true });
225
225
  const domain = resolveGuiDomain();
226
226
  const label = resolveLaunchAgentLabel({ env });
227
227
  for (const legacyLabel of resolveLegacyGatewayLaunchAgentLabels(env.OPENCLAW_PROFILE)) {
@@ -233,11 +233,11 @@ async function installLaunchAgent({ env, stdout, programArguments, workingDirect
233
233
  ]);
234
234
  await execLaunchctl(["unload", legacyPlistPath]);
235
235
  try {
236
- await fs.unlink(legacyPlistPath);
236
+ await fsPromises.unlink(legacyPlistPath);
237
237
  } catch {}
238
238
  }
239
239
  const plistPath = resolveLaunchAgentPlistPathForLabel(env, label);
240
- await fs.mkdir(path.dirname(plistPath), { recursive: true });
240
+ await fsPromises.mkdir(path.dirname(plistPath), { recursive: true });
241
241
  const plist = buildLaunchAgentPlist({
242
242
  label,
243
243
  comment: resolveGatewayServiceDescription({
@@ -251,7 +251,7 @@ async function installLaunchAgent({ env, stdout, programArguments, workingDirect
251
251
  stderrPath,
252
252
  environment
253
253
  });
254
- await fs.writeFile(plistPath, plist, "utf8");
254
+ await fsPromises.writeFile(plistPath, plist, "utf8");
255
255
  await execLaunchctl([
256
256
  "bootout",
257
257
  domain,
@@ -408,7 +408,7 @@ function resolveTaskUser(env) {
408
408
  async function readScheduledTaskCommand(env) {
409
409
  const scriptPath = resolveTaskScriptPath(env);
410
410
  try {
411
- const content = await fs.readFile(scriptPath, "utf8");
411
+ const content = await fsPromises.readFile(scriptPath, "utf8");
412
412
  let workingDirectory = "";
413
413
  let commandLine = "";
414
414
  const environment = {};
@@ -476,7 +476,7 @@ async function assertSchtasksAvailable() {
476
476
  async function installScheduledTask({ env, stdout, programArguments, workingDirectory, environment, description }) {
477
477
  await assertSchtasksAvailable();
478
478
  const scriptPath = resolveTaskScriptPath(env);
479
- await fs.mkdir(path.dirname(scriptPath), { recursive: true });
479
+ await fsPromises.mkdir(path.dirname(scriptPath), { recursive: true });
480
480
  const script = buildTaskScript({
481
481
  description: resolveGatewayServiceDescription({
482
482
  env,
@@ -487,7 +487,7 @@ async function installScheduledTask({ env, stdout, programArguments, workingDire
487
487
  workingDirectory,
488
488
  environment
489
489
  });
490
- await fs.writeFile(scriptPath, script, "utf8");
490
+ await fsPromises.writeFile(scriptPath, script, "utf8");
491
491
  const taskName = resolveTaskName(env);
492
492
  const baseArgs = [
493
493
  "/Create",
@@ -539,7 +539,7 @@ async function uninstallScheduledTask({ env, stdout }) {
539
539
  ]);
540
540
  const scriptPath = resolveTaskScriptPath(env);
541
541
  try {
542
- await fs.unlink(scriptPath);
542
+ await fsPromises.unlink(scriptPath);
543
543
  stdout.write(`${formatLine("Removed task script", scriptPath)}\n`);
544
544
  } catch {
545
545
  stdout.write(`Task script not found at ${scriptPath}\n`);
@@ -1,7 +1,7 @@
1
1
  import { G as toPinoLikeLogger, I as success, O as danger, V as getChildLogger, c as ensureDir, y as resolveUserPath } from "./utils-BlC2Fskb.js";
2
2
  import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
3
- import { H as VERSION } from "./config-CkqfHk27.js";
4
- import { d as resolveDefaultWebAuthDir, f as resolveWebCredsBackupPath, l as readCredsJsonRaw, p as resolveWebCredsPath, s as maybeRestoreCredsFromBackup } from "./accounts-CGBT0wQ4.js";
3
+ import { H as VERSION } from "./config-JupjCURB.js";
4
+ import { d as resolveDefaultWebAuthDir, f as resolveWebCredsBackupPath, l as readCredsJsonRaw, p as resolveWebCredsPath, s as maybeRestoreCredsFromBackup } from "./accounts-D8ryuxvJ.js";
5
5
  import fs from "node:fs";
6
6
  import { randomUUID } from "node:crypto";
7
7
  import { DisconnectReason, fetchLatestBaileysVersion, makeCacheableSignalKeyStore, makeWASocket, useMultiFileAuthState } from "@whiskeysockets/baileys";
@@ -1,6 +1,6 @@
1
1
  import { rt as pathExists } from "./entry.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-X8f1jCG3.js";
3
- import { bt as trimLogTail } from "./subagent-registry-DkjybHrK.js";
3
+ import { bt as trimLogTail } from "./subagent-registry-D3Pj0bnZ.js";
4
4
  import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-B68X-xpb.js";
5
5
  import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-DdZ89jPG.js";
6
6
  import os from "node:os";
@@ -1,16 +1,16 @@
1
1
  import { h as pathExists } from "./utils-BlC2Fskb.js";
2
- import { K as trimLogTail } from "./reply-pTxrsMtG.js";
2
+ import { K as trimLogTail } from "./reply-C7XZ5Kp3.js";
3
3
  import { t as runCommandWithTimeout } from "./exec-DwGfeG8v.js";
4
- import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BcSek9LQ.js";
5
- import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-CEFJiPeh.js";
4
+ import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BLVZXE2I.js";
5
+ import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-DOy5cGkD.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
8
- import fs from "node:fs/promises";
8
+ import fsPromises from "node:fs/promises";
9
9
 
10
10
  //#region src/infra/package-json.ts
11
11
  async function readPackageVersion(root) {
12
12
  try {
13
- const raw = await fs.readFile(path.join(root, "package.json"), "utf-8");
13
+ const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
14
14
  const parsed = JSON.parse(raw);
15
15
  return typeof parsed?.version === "string" ? parsed.version : null;
16
16
  } catch {
@@ -19,7 +19,7 @@ async function readPackageVersion(root) {
19
19
  }
20
20
  async function readPackageName(root) {
21
21
  try {
22
- const raw = await fs.readFile(path.join(root, "package.json"), "utf-8");
22
+ const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
23
23
  const name = JSON.parse(raw)?.name?.trim();
24
24
  return name ? name : null;
25
25
  } catch {
@@ -39,7 +39,7 @@ const NPM_GLOBAL_INSTALL_QUIET_FLAGS = [
39
39
  ];
40
40
  async function tryRealpath(targetPath) {
41
41
  try {
42
- return await fs.realpath(targetPath);
42
+ return await fsPromises.realpath(targetPath);
43
43
  } catch {
44
44
  return path.resolve(targetPath);
45
45
  }
@@ -140,7 +140,7 @@ async function cleanupGlobalRenameDirs(params) {
140
140
  const prefix = `${GLOBAL_RENAME_PREFIX}${name}-`;
141
141
  let entries = [];
142
142
  try {
143
- entries = await fs.readdir(root);
143
+ entries = await fsPromises.readdir(root);
144
144
  } catch {
145
145
  return { removed };
146
146
  }
@@ -148,8 +148,8 @@ async function cleanupGlobalRenameDirs(params) {
148
148
  if (!entry.startsWith(prefix)) continue;
149
149
  const target = path.join(root, entry);
150
150
  try {
151
- if (!(await fs.lstat(target)).isDirectory()) continue;
152
- await fs.rm(target, {
151
+ if (!(await fsPromises.lstat(target)).isDirectory()) continue;
152
+ await fsPromises.rm(target, {
153
153
  recursive: true,
154
154
  force: true
155
155
  });
@@ -261,7 +261,7 @@ async function findPackageRoot(candidates) {
261
261
  for (let i = 0; i < 12; i += 1) {
262
262
  const pkgPath = path.join(current, "package.json");
263
263
  try {
264
- const raw = await fs.readFile(pkgPath, "utf-8");
264
+ const raw = await fsPromises.readFile(pkgPath, "utf-8");
265
265
  const name = JSON.parse(raw)?.name?.trim();
266
266
  if (name && CORE_PACKAGE_NAMES.has(name)) return current;
267
267
  } catch {}
@@ -543,7 +543,7 @@ async function runGatewayUpdate(opts = {}) {
543
543
  durationMs: Date.now() - startedAt
544
544
  };
545
545
  const manager = await detectPackageManager(gitRoot);
546
- const preflightRoot = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-update-preflight-"));
546
+ const preflightRoot = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-update-preflight-"));
547
547
  const worktreeDir = path.join(preflightRoot, "worktree");
548
548
  const worktreeStep = await runStep(step("preflight worktree", [
549
549
  "git",
@@ -557,7 +557,7 @@ async function runGatewayUpdate(opts = {}) {
557
557
  ], gitRoot));
558
558
  steps.push(worktreeStep);
559
559
  if (worktreeStep.exitCode !== 0) {
560
- await fs.rm(preflightRoot, {
560
+ await fsPromises.rm(preflightRoot, {
561
561
  recursive: true,
562
562
  force: true
563
563
  }).catch(() => {});
@@ -621,7 +621,7 @@ async function runGatewayUpdate(opts = {}) {
621
621
  cwd: gitRoot,
622
622
  timeoutMs
623
623
  }).catch(() => null);
624
- await fs.rm(preflightRoot, {
624
+ await fsPromises.rm(preflightRoot, {
625
625
  recursive: true,
626
626
  force: true
627
627
  }).catch(() => {});
@@ -769,7 +769,7 @@ async function runGatewayUpdate(opts = {}) {
769
769
  durationMs: Date.now() - startedAt
770
770
  };
771
771
  const doctorEntry = path.join(gitRoot, "openclaw.mjs");
772
- if (!await fs.stat(doctorEntry).then(() => true).catch(() => false)) {
772
+ if (!await fsPromises.stat(doctorEntry).then(() => true).catch(() => false)) {
773
773
  steps.push({
774
774
  name: "openclaw doctor entry",
775
775
  command: `verify ${doctorEntry}`,
@@ -936,7 +936,7 @@ async function resolveAgentSessionDirs(stateDir) {
936
936
  const agentsDir = path.join(stateDir, "agents");
937
937
  let entries = [];
938
938
  try {
939
- entries = await fs.readdir(agentsDir, { withFileTypes: true });
939
+ entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
940
940
  } catch (err) {
941
941
  if (err.code === "ENOENT") return [];
942
942
  throw err;
@@ -2,13 +2,13 @@ import { y as resolveRequiredHomeDir } from "./paths-B4BZAPZh.js";
2
2
  import { m as normalizeE164 } from "./utils-BlC2Fskb.js";
3
3
  import { c as normalizeMainKey, g as normalizeOptionalAccountId, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-DCt45XZa.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
5
- import { Lt as resolveProcessScopedMap, Rt as isPidAlive } from "./model-selection-0qDmOMXI.js";
5
+ import { Lt as resolveProcessScopedMap, Rt as isPidAlive } from "./model-selection-C1pdWy7b.js";
6
6
  import { c as listDeliverableMessageChannels, l as normalizeMessageChannel } from "./message-channel-DzkrSzpL.js";
7
- import { C as parseDurationMs, f as parseByteSize, i as loadConfig } from "./config-CkqfHk27.js";
7
+ import { C as parseDurationMs, f as parseByteSize, i as loadConfig } from "./config-JupjCURB.js";
8
8
  import { t as normalizeChatType } from "./chat-type-DyovJwCt.js";
9
9
  import { n as resolveConversationLabel } from "./conversation-label-Bn5j3lUT.js";
10
- import { c as normalizeHyphenSlug, t as getChannelDock } from "./dock-B1xpMkYP.js";
11
- import { r as normalizeChannelId } from "./plugins-DufH79A4.js";
10
+ import { c as normalizeHyphenSlug, t as getChannelDock } from "./dock-CX_o0bdi.js";
11
+ import { r as normalizeChannelId } from "./plugins-BYw4LpqC.js";
12
12
  import { a as resolveSessionTranscriptPathInDir, c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, t as resolveDefaultSessionStorePath } from "./paths-C6eomcf_.js";
13
13
  import { r as hasInterSessionUserProvenance } from "./input-provenance-BzbXHcaD.js";
14
14
  import { n as extractToolCallNames, r as hasToolCall } from "./transcript-tools-INJPQ2KD.js";
@@ -16,7 +16,7 @@ import { t as emitSessionTranscriptUpdate } from "./transcript-events-DdnTeoR1.j
16
16
  import fs from "node:fs";
17
17
  import os from "node:os";
18
18
  import path from "node:path";
19
- import fs$1 from "node:fs/promises";
19
+ import fsPromises from "node:fs/promises";
20
20
  import crypto from "node:crypto";
21
21
  import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
22
22
 
@@ -82,7 +82,7 @@ async function releaseHeldLock(normalizedSessionFile, held, opts = {}) {
82
82
  await held.handle.close();
83
83
  } catch {}
84
84
  try {
85
- await fs$1.rm(held.lockPath, { force: true });
85
+ await fsPromises.rm(held.lockPath, { force: true });
86
86
  } catch {}
87
87
  })();
88
88
  try {
@@ -161,7 +161,7 @@ function registerCleanupHandlers() {
161
161
  }
162
162
  async function readLockPayload(lockPath) {
163
163
  try {
164
- const raw = await fs$1.readFile(lockPath, "utf8");
164
+ const raw = await fsPromises.readFile(lockPath, "utf8");
165
165
  const parsed = JSON.parse(raw);
166
166
  const payload = {};
167
167
  if (typeof parsed.pid === "number") payload.pid = parsed.pid;
@@ -198,7 +198,7 @@ async function cleanStaleLockFiles(params) {
198
198
  const nowMs = params.nowMs ?? Date.now();
199
199
  let entries = [];
200
200
  try {
201
- entries = await fs$1.readdir(sessionsDir, { withFileTypes: true });
201
+ entries = await fsPromises.readdir(sessionsDir, { withFileTypes: true });
202
202
  } catch (err) {
203
203
  if (err.code === "ENOENT") return {
204
204
  locks: [],
@@ -217,7 +217,7 @@ async function cleanStaleLockFiles(params) {
217
217
  removed: false
218
218
  };
219
219
  if (lockInfo.stale && removeStale) {
220
- await fs$1.rm(lockPath, { force: true });
220
+ await fsPromises.rm(lockPath, { force: true });
221
221
  lockInfo.removed = true;
222
222
  cleaned.push(lockInfo);
223
223
  params.log?.warn?.(`removed stale session lock: ${lockPath} (${lockInfo.staleReasons.join(", ") || "unknown"})`);
@@ -236,10 +236,10 @@ async function acquireSessionWriteLock(params) {
236
236
  const maxHoldMs = resolvePositiveMs(params.maxHoldMs, DEFAULT_MAX_HOLD_MS);
237
237
  const sessionFile = path.resolve(params.sessionFile);
238
238
  const sessionDir = path.dirname(sessionFile);
239
- await fs$1.mkdir(sessionDir, { recursive: true });
239
+ await fsPromises.mkdir(sessionDir, { recursive: true });
240
240
  let normalizedDir = sessionDir;
241
241
  try {
242
- normalizedDir = await fs$1.realpath(sessionDir);
242
+ normalizedDir = await fsPromises.realpath(sessionDir);
243
243
  } catch {}
244
244
  const normalizedSessionFile = path.join(normalizedDir, path.basename(sessionFile));
245
245
  const lockPath = `${normalizedSessionFile}.lock`;
@@ -256,7 +256,7 @@ async function acquireSessionWriteLock(params) {
256
256
  while (Date.now() - startedAt < timeoutMs) {
257
257
  attempt += 1;
258
258
  try {
259
- const handle = await fs$1.open(lockPath, "wx");
259
+ const handle = await fsPromises.open(lockPath, "wx");
260
260
  const createdAt = (/* @__PURE__ */ new Date()).toISOString();
261
261
  await handle.writeFile(JSON.stringify({
262
262
  pid: process.pid,
@@ -276,7 +276,7 @@ async function acquireSessionWriteLock(params) {
276
276
  } catch (err) {
277
277
  if (err.code !== "EEXIST") throw err;
278
278
  if (inspectLockPayload(await readLockPayload(lockPath), staleMs, Date.now()).stale) {
279
- await fs$1.rm(lockPath, { force: true });
279
+ await fsPromises.rm(lockPath, { force: true });
280
280
  continue;
281
281
  }
282
282
  const delay = Math.min(1e3, 50 * attempt);
@@ -1,7 +1,7 @@
1
1
  import { f as defaultRuntime } from "./subsystem-Cu1fn6xi.js";
2
2
  import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
3
3
  import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName } from "./constants-CEbQvI8z.js";
4
- import { t as resolveGatewayService } from "./service-x8sNoic1.js";
4
+ import { t as resolveGatewayService } from "./service-Bs5m4_g0.js";
5
5
 
6
6
  //#region src/cli/gateway-cli/shared.ts
7
7
  const toOptionString = (value) => {
@@ -1,8 +1,8 @@
1
1
  import { s as normalizeAgentId } from "./session-key-DCt45XZa.js";
2
- import { n as listAgentIds } from "./agent-scope-BGlpyppa.js";
3
- import { Kt as DEFAULT_PROVIDER, g as resolveModelRefFromString, r as buildModelAliasIndex, s as modelKey } from "./model-selection-0qDmOMXI.js";
2
+ import { n as listAgentIds } from "./agent-scope-B6jLdNuI.js";
3
+ import { Kt as DEFAULT_PROVIDER, g as resolveModelRefFromString, r as buildModelAliasIndex, s as modelKey } from "./model-selection-C1pdWy7b.js";
4
4
  import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
5
- import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-CkqfHk27.js";
5
+ import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-JupjCURB.js";
6
6
 
7
7
  //#region src/commands/models/shared.ts
8
8
  const ensureFlagCompatibility = (opts) => {
@@ -1,11 +1,11 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as CONFIG_DIR, y as resolveUserPath } from "./utils-BlC2Fskb.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
4
- import { c as resolveAgentWorkspaceDir, n as listAgentIds } from "./agent-scope-BGlpyppa.js";
5
- import { i as loadWorkspaceSkillEntries, n as buildWorkspaceSkillCommandSpecs, s as resolvePluginSkillDirs } from "./skills-DhT6my9R.js";
6
- import { i as listChatCommands } from "./commands-registry-C6MwKIm9.js";
7
- import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-DGufCZxz.js";
8
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-DbX5fBAC.js";
4
+ import { c as resolveAgentWorkspaceDir, n as listAgentIds } from "./agent-scope-B6jLdNuI.js";
5
+ import { i as loadWorkspaceSkillEntries, n as buildWorkspaceSkillCommandSpecs, s as resolvePluginSkillDirs } from "./skills-DO1RiQMB.js";
6
+ import { i as listChatCommands } from "./commands-registry-DVVMuhaG.js";
7
+ import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-DAVfcYo5.js";
8
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-CuYuE5F1.js";
9
9
  import fs from "node:fs";
10
10
  import os from "node:os";
11
11
  import path from "node:path";
@@ -1,7 +1,7 @@
1
1
  import { i as isPathInside } from "./legacy-names-u6U1_9U0.js";
2
2
  import { i as hasErrnoCode } from "./errors-BF3TeRH2.js";
3
3
  import path from "node:path";
4
- import fs from "node:fs/promises";
4
+ import fsPromises from "node:fs/promises";
5
5
 
6
6
  //#region src/security/skill-scanner.ts
7
7
  const SCANNABLE_EXTENSIONS = new Set([
@@ -154,7 +154,7 @@ async function walkDirWithLimit(dirPath, maxFiles) {
154
154
  while (stack.length > 0 && files.length < maxFiles) {
155
155
  const currentDir = stack.pop();
156
156
  if (!currentDir) break;
157
- const entries = await fs.readdir(currentDir, { withFileTypes: true });
157
+ const entries = await fsPromises.readdir(currentDir, { withFileTypes: true });
158
158
  for (const entry of entries) {
159
159
  if (files.length >= maxFiles) break;
160
160
  if (entry.name.startsWith(".") || entry.name === "node_modules") continue;
@@ -176,7 +176,7 @@ async function resolveForcedFiles(params) {
176
176
  if (seen.has(includePath)) continue;
177
177
  let st = null;
178
178
  try {
179
- st = await fs.stat(includePath);
179
+ st = await fsPromises.stat(includePath);
180
180
  } catch (err) {
181
181
  if (hasErrnoCode(err, "ENOENT")) continue;
182
182
  throw err;
@@ -208,14 +208,14 @@ async function collectScannableFiles(dirPath, opts) {
208
208
  async function readScannableSource(filePath, maxFileBytes) {
209
209
  let st = null;
210
210
  try {
211
- st = await fs.stat(filePath);
211
+ st = await fsPromises.stat(filePath);
212
212
  } catch (err) {
213
213
  if (hasErrnoCode(err, "ENOENT")) return null;
214
214
  throw err;
215
215
  }
216
216
  if (!st?.isFile() || st.size > maxFileBytes) return null;
217
217
  try {
218
- return await fs.readFile(filePath, "utf-8");
218
+ return await fsPromises.readFile(filePath, "utf-8");
219
219
  } catch (err) {
220
220
  if (hasErrnoCode(err, "ENOENT")) return null;
221
221
  throw err;
@@ -1,5 +1,5 @@
1
1
  import { t as CONFIG_DIR, y as resolveUserPath } from "./utils-BlC2Fskb.js";
2
- import { i as normalizeSkillFilter, n as resolveOpenClawPackageRootSync } from "./openclaw-root-CQJwyH9q.js";
2
+ import { i as normalizeSkillFilter, n as resolveOpenClawPackageRootSync } from "./openclaw-root-CbWxAStx.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
4
4
  import { d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, n as loadPluginManifestRegistry, u as normalizePluginsConfig } from "./manifest-registry-YRUqEw3J.js";
5
5
  import { a as resolveOpenClawManifestBlock, c as resolveOpenClawManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseOpenClawManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveOpenClawManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveOpenClawManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-C_R2lwvR.js";
@@ -7,7 +7,7 @@ import { fileURLToPath } from "node:url";
7
7
  import fs from "node:fs";
8
8
  import os from "node:os";
9
9
  import path from "node:path";
10
- import fs$1 from "node:fs/promises";
10
+ import fsPromises from "node:fs/promises";
11
11
  import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
12
12
 
13
13
  //#region src/agents/skills/frontmatter.ts
@@ -393,7 +393,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
393
393
  const isLast = idx === parts.length - 1;
394
394
  current = path.join(current, part);
395
395
  try {
396
- if ((await fs$1.lstat(current)).isSymbolicLink()) {
396
+ if ((await fsPromises.lstat(current)).isSymbolicLink()) {
397
397
  if (options?.allowFinalSymlink && isLast) return;
398
398
  const target = await tryRealpath(current);
399
399
  if (!isPathInside(rootReal, target)) throw new Error(`Symlink escapes sandbox root (${shortPath(rootReal)}): ${shortPath(current)}`);
@@ -407,7 +407,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
407
407
  }
408
408
  async function tryRealpath(value) {
409
409
  try {
410
- return await fs$1.realpath(value);
410
+ return await fsPromises.realpath(value);
411
411
  } catch {
412
412
  return path.resolve(value);
413
413
  }
@@ -3,13 +3,13 @@ import { B as theme, S as shortenHomePath } from "./utils-BlC2Fskb.js";
3
3
  import "./registry-lBbEkQ26.js";
4
4
  import { f as defaultRuntime } from "./subsystem-Cu1fn6xi.js";
5
5
  import "./exec-DwGfeG8v.js";
6
- import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-BGlpyppa.js";
7
- import "./model-selection-0qDmOMXI.js";
6
+ import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-B6jLdNuI.js";
7
+ import "./model-selection-C1pdWy7b.js";
8
8
  import "./github-copilot-token-D2zp6kMZ.js";
9
9
  import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
10
10
  import "./boolean-BsqeuxE6.js";
11
11
  import "./env-C9RBJHeg.js";
12
- import { i as loadConfig } from "./config-CkqfHk27.js";
12
+ import { i as loadConfig } from "./config-JupjCURB.js";
13
13
  import "./manifest-registry-YRUqEw3J.js";
14
14
  import { t as formatDocsLink } from "./links-DHovuBDt.js";
15
15
  import { t as renderTable } from "./table-Csf_WEEY.js";
@@ -236,7 +236,7 @@ function registerSkillsCli(program) {
236
236
  try {
237
237
  const config = loadConfig();
238
238
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
239
- const { buildWorkspaceSkillStatus } = await import("./skills-status-B90dNffv.js").then((n) => n.n);
239
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
240
240
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
241
241
  defaultRuntime.log(formatSkillsList(report, opts));
242
242
  } catch (err) {
@@ -248,7 +248,7 @@ function registerSkillsCli(program) {
248
248
  try {
249
249
  const config = loadConfig();
250
250
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
251
- const { buildWorkspaceSkillStatus } = await import("./skills-status-B90dNffv.js").then((n) => n.n);
251
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
252
252
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
253
253
  defaultRuntime.log(formatSkillInfo(report, name, opts));
254
254
  } catch (err) {
@@ -260,7 +260,7 @@ function registerSkillsCli(program) {
260
260
  try {
261
261
  const config = loadConfig();
262
262
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
263
- const { buildWorkspaceSkillStatus } = await import("./skills-status-B90dNffv.js").then((n) => n.n);
263
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
264
264
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
265
265
  defaultRuntime.log(formatSkillsCheck(report, opts));
266
266
  } catch (err) {
@@ -272,7 +272,7 @@ function registerSkillsCli(program) {
272
272
  try {
273
273
  const config = loadConfig();
274
274
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
275
- const { buildWorkspaceSkillStatus } = await import("./skills-status-B90dNffv.js").then((n) => n.n);
275
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
276
276
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
277
277
  defaultRuntime.log(formatSkillsList(report, {}));
278
278
  } catch (err) {
@@ -1,12 +1,12 @@
1
1
  import { c as ensureDir, g as resolveConfigDir, y as resolveUserPath } from "./utils-BlC2Fskb.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-DwGfeG8v.js";
3
3
  import { d as hasBinary } from "./frontmatter-C_R2lwvR.js";
4
- import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-DhT6my9R.js";
4
+ import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-DO1RiQMB.js";
5
5
  import { t as fetchWithSsrFGuard } from "./fetch-guard-w97sP7Hz.js";
6
6
  import { t as resolveBrewExecutable } from "./brew-DjNEjKAo.js";
7
7
  import { t as isWithinDir } from "./path-safety-BqPJ8DDQ.js";
8
- import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-tCLiMpmO.js";
9
- import { t as scanDirectoryWithSummary } from "./skill-scanner-CMBwwxis.js";
8
+ import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-Qqr_t_tH.js";
9
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-BRf3FyA6.js";
10
10
  import fs from "node:fs";
11
11
  import path from "node:path";
12
12
  import { pipeline } from "node:stream/promises";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as CONFIG_DIR } from "./utils-BlC2Fskb.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
4
4
  import { d as hasBinary } from "./frontmatter-C_R2lwvR.js";
5
- import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-DhT6my9R.js";
5
+ import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-DO1RiQMB.js";
6
6
  import { t as evaluateEntryMetadataRequirementsForCurrentPlatform } from "./entry-status-CAs6m3_l.js";
7
7
  import path from "node:path";
8
8
  import { loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
@@ -4,7 +4,7 @@ import { s as resolveSessionTranscriptsDirForAgent } from "./paths-C6eomcf_.js";
4
4
  import { createRequire } from "node:module";
5
5
  import fs from "node:fs";
6
6
  import path from "node:path";
7
- import fs$1 from "node:fs/promises";
7
+ import fsPromises from "node:fs/promises";
8
8
  import crypto from "node:crypto";
9
9
 
10
10
  //#region src/utils/run-with-concurrency.ts
@@ -55,7 +55,7 @@ function isFileMissingError(err) {
55
55
  async function statRegularFile(absPath) {
56
56
  let stat;
57
57
  try {
58
- stat = await fs$1.lstat(absPath);
58
+ stat = await fsPromises.lstat(absPath);
59
59
  } catch (err) {
60
60
  if (isFileMissingError(err)) return { missing: true };
61
61
  throw err;
@@ -90,7 +90,7 @@ function isMemoryPath(relPath) {
90
90
  return normalized.startsWith("memory/");
91
91
  }
92
92
  async function walkDir(dir, files) {
93
- const entries = await fs$1.readdir(dir, { withFileTypes: true });
93
+ const entries = await fsPromises.readdir(dir, { withFileTypes: true });
94
94
  for (const entry of entries) {
95
95
  const full = path.join(dir, entry.name);
96
96
  if (entry.isSymbolicLink()) continue;
@@ -110,7 +110,7 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
110
110
  const memoryDir = path.join(workspaceDir, "memory");
111
111
  const addMarkdownFile = async (absPath) => {
112
112
  try {
113
- const stat = await fs$1.lstat(absPath);
113
+ const stat = await fsPromises.lstat(absPath);
114
114
  if (stat.isSymbolicLink() || !stat.isFile()) return;
115
115
  if (!absPath.endsWith(".md")) return;
116
116
  result.push(absPath);
@@ -119,12 +119,12 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
119
119
  await addMarkdownFile(memoryFile);
120
120
  await addMarkdownFile(altMemoryFile);
121
121
  try {
122
- const dirStat = await fs$1.lstat(memoryDir);
122
+ const dirStat = await fsPromises.lstat(memoryDir);
123
123
  if (!dirStat.isSymbolicLink() && dirStat.isDirectory()) await walkDir(memoryDir, result);
124
124
  } catch {}
125
125
  const normalizedExtraPaths = normalizeExtraMemoryPaths(workspaceDir, extraPaths);
126
126
  if (normalizedExtraPaths.length > 0) for (const inputPath of normalizedExtraPaths) try {
127
- const stat = await fs$1.lstat(inputPath);
127
+ const stat = await fsPromises.lstat(inputPath);
128
128
  if (stat.isSymbolicLink()) continue;
129
129
  if (stat.isDirectory()) {
130
130
  await walkDir(inputPath, result);
@@ -138,7 +138,7 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
138
138
  for (const entry of result) {
139
139
  let key = entry;
140
140
  try {
141
- key = await fs$1.realpath(entry);
141
+ key = await fsPromises.realpath(entry);
142
142
  } catch {}
143
143
  if (seen.has(key)) continue;
144
144
  seen.add(key);
@@ -152,14 +152,14 @@ function hashText(value) {
152
152
  async function buildFileEntry(absPath, workspaceDir) {
153
153
  let stat;
154
154
  try {
155
- stat = await fs$1.stat(absPath);
155
+ stat = await fsPromises.stat(absPath);
156
156
  } catch (err) {
157
157
  if (isFileMissingError(err)) return null;
158
158
  throw err;
159
159
  }
160
160
  let content;
161
161
  try {
162
- content = await fs$1.readFile(absPath, "utf-8");
162
+ content = await fsPromises.readFile(absPath, "utf-8");
163
163
  } catch (err) {
164
164
  if (isFileMissingError(err)) return null;
165
165
  throw err;
@@ -293,7 +293,7 @@ const log = createSubsystemLogger("memory");
293
293
  async function listSessionFilesForAgent(agentId) {
294
294
  const dir = resolveSessionTranscriptsDirForAgent(agentId);
295
295
  try {
296
- return (await fs$1.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
296
+ return (await fsPromises.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
297
297
  } catch {
298
298
  return [];
299
299
  }
@@ -323,8 +323,8 @@ function extractSessionText(content) {
323
323
  }
324
324
  async function buildSessionEntry(absPath) {
325
325
  try {
326
- const stat = await fs$1.stat(absPath);
327
- const lines = (await fs$1.readFile(absPath, "utf-8")).split("\n");
326
+ const stat = await fsPromises.stat(absPath);
327
+ const lines = (await fsPromises.readFile(absPath, "utf-8")).split("\n");
328
328
  const collected = [];
329
329
  const lineMap = [];
330
330
  for (let jsonlIdx = 0; jsonlIdx < lines.length; jsonlIdx++) {