@bitseek/claw 1.3.9 → 1.3.10-beta.2

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 (390) hide show
  1. package/dist/{accounts-UZBaDk40.js → accounts-CAdzApsy.js} +7 -7
  2. package/dist/{accounts-C9SoQRlD.js → accounts-CuCtdH3C.js} +1 -1
  3. package/dist/{accounts-MEuVJDoB.js → accounts-Cz3RQNdH.js} +1 -1
  4. package/dist/{acp-cli-BW0Dvkhh.js → acp-cli-BKsxHhdT.js} +2 -2
  5. package/dist/{acp-cli-Bt83My-G.js → acp-cli-Cpn_hxPA.js} +8 -8
  6. package/dist/{agent-scope-YUWhK3d-.js → agent-scope-BSkZamWK.js} +1 -1
  7. package/dist/{agents-DyoF_f3J.js → agents-CTTYn76G.js} +15 -15
  8. package/dist/{agents.config-DlsoquZH.js → agents.config-Dzz_a9Mp.js} +1 -1
  9. package/dist/{agents.config-D-pjQl0a.js → agents.config-P4PAeT4_.js} +2 -2
  10. package/dist/{api-key-rotation-D7ptHGeX.js → api-key-rotation-KLYtCoCN.js} +1 -1
  11. package/dist/{audio-preflight-Be5qvEQA.js → audio-preflight-B1d3Otlb.js} +36 -36
  12. package/dist/{audio-preflight-CRllHcyv.js → audio-preflight-COA5tnZv.js} +3 -3
  13. package/dist/{audio-preflight-BxZJpmRQ.js → audio-preflight-CoLgRr1u.js} +3 -3
  14. package/dist/{audio-preflight-UJQ0M6Hl.js → audio-preflight-q7ZFguqv.js} +3 -3
  15. package/dist/{audio-transcription-runner-Dnkt3gmf.js → audio-transcription-runner-BEtb5Jme.js} +22 -22
  16. package/dist/{audio-transcription-runner-_HLf10kW.js → audio-transcription-runner-BLpgvFWB.js} +1 -1
  17. package/dist/{audio-transcription-runner-DVI-SHAn.js → audio-transcription-runner-CrM5-5xi.js} +1 -1
  18. package/dist/{audio-transcription-runner-WwCG9VCF.js → audio-transcription-runner-s4TXhBuF.js} +1 -1
  19. package/dist/{audit-Ct605ugr.js → audit-D013ewlH.js} +3 -3
  20. package/dist/{audit-D-QnHZqm.js → audit-DG0miQ3A.js} +29 -29
  21. package/dist/{auth-DeS7F6Hd.js → auth-CVxYkRFJ.js} +1 -1
  22. package/dist/{auth-choice-BnlfU4y1.js → auth-choice-BRVQOSOG.js} +2 -2
  23. package/dist/{auth-choice-BtNLcXFy.js → auth-choice-CV8rLyb8.js} +12 -12
  24. package/dist/{auth-choice-jr1JhZAd.js → auth-choice-Cmq6GQD8.js} +14 -14
  25. package/dist/{auth-choice.apply-helpers-Cjj-3bz6.js → auth-choice.apply-helpers-CDB_05Fx.js} +1 -1
  26. package/dist/{auth-profiles-Dgxwr8Sa.js → auth-profiles-DNfjfFON.js} +16 -16
  27. package/dist/{auth-token-BYBDbosA.js → auth-token-CBowgXcm.js} +1 -1
  28. package/dist/{banner-Dl-V7Ptt.js → banner-CzgAzM1q.js} +2 -2
  29. package/dist/{bindings-BDScuSfd.js → bindings-B8U0BrYk.js} +1 -1
  30. package/dist/{bonjour-discovery-Cr9ghR-L.js → bonjour-discovery-CvAov_o2.js} +1 -1
  31. package/dist/{browser-cli-DGLAbUwi.js → browser-cli-CBBjI2Mu.js} +12 -12
  32. package/dist/{browser-cli-D2wMcHia.js → browser-cli-VBhMcj3d.js} +3 -3
  33. package/dist/build-info.json +3 -3
  34. package/dist/bundled/boot-md/handler.js +5 -5
  35. package/dist/bundled/session-memory/handler.js +5 -5
  36. package/dist/{call-BdLuBL48.js → call-DU_f0KMj.js} +1 -1
  37. package/dist/{call-Dx2aHVrt.js → call-Da49LtVk.js} +10 -10
  38. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  39. package/dist/{channel-account-context-D__SZrX3.js → channel-account-context-8QkfoueX.js} +5 -5
  40. package/dist/{channel-options-BYE1VHBo.js → channel-options-CiMiQ1Q5.js} +3 -3
  41. package/dist/{channel-options-DbFmOvel.js → channel-options-CwgtYRMM.js} +1 -1
  42. package/dist/{channel-selection-ZJlD8RW_.js → channel-selection-BuY5iEbg.js} +1 -1
  43. package/dist/{channel-web-COoUoCJ1.js → channel-web-DNpAAGVd.js} +18 -18
  44. package/dist/{channel-web-DI8CzqrG.js → channel-web-DekWEF-x.js} +2 -2
  45. package/dist/{channels-cli-a630SQK6.js → channels-cli-DxMc7DH5.js} +95 -95
  46. package/dist/{channels-cli-CnwFvDuq.js → channels-cli-d0TsshWJ.js} +13 -13
  47. package/dist/{channels-status-issues-Ccr7cxgt.js → channels-status-issues-C3zPqi31.js} +1 -1
  48. package/dist/{chrome-F8yPeLCk.js → chrome-BosxOvwr.js} +4 -4
  49. package/dist/{clawbot-cli-CFFhJyHO.js → clawbot-cli-Cq5MLCVY.js} +5 -5
  50. package/dist/cli/daemon-cli.js +1 -1
  51. package/dist/{cli-Dyjp2Eb9.js → cli-BN9QyJ2t.js} +76 -76
  52. package/dist/{cli-CSvBbD4L.js → cli-H2qqzBh-.js} +8 -8
  53. package/dist/{client-DVME2dNA.js → client-CbO7FTeL.js} +3 -2
  54. package/dist/{client-CluJsNRo.js → client-zj7haqMb.js} +1 -0
  55. package/dist/{command-registry-CiiKLf7K.js → command-registry-CZeXdavX.js} +13 -13
  56. package/dist/{commands-NkZDaV9a.js → commands-pIMTT07J.js} +1 -1
  57. package/dist/{commands-registry-BEOnewEO.js → commands-registry-DsvOsTTF.js} +3 -3
  58. package/dist/{completion-cli-A-7_BOG8.js → completion-cli-CtFPrLVk.js} +13 -13
  59. package/dist/{completion-cli-Cf-BVW55.js → completion-cli-CtlUQOU1.js} +1 -1
  60. package/dist/{config-cli-B8b1tCQT.js → config-cli-7YppRhHT.js} +1 -1
  61. package/dist/{config-cli-DKp1_Q2a.js → config-cli-CFOqOvdY.js} +7 -7
  62. package/dist/{config-guard-B9fTWjXL.js → config-guard-_F29cfDV.js} +3 -3
  63. package/dist/{config-validation-CA4J--dN.js → config-validation-DJiuTGa9.js} +3 -3
  64. package/dist/{configure-BFAj-ANy.js → configure-CyZK-h8l.js} +6 -6
  65. package/dist/{configure-C0LdxD84.js → configure-u6SJdWUT.js} +17 -17
  66. package/dist/control-ui/assets/{index-ixU5putu.js → index-BX-BH831.js} +408 -362
  67. package/dist/control-ui/assets/index-BX-BH831.js.map +1 -0
  68. package/dist/control-ui/assets/{index-EvU5ZebS.css → index-CG7TGGhP.css} +1 -1
  69. package/dist/control-ui/index.html +2 -2
  70. package/dist/{control-ui-assets-hAbiBedq.js → control-ui-assets-CWYG-y7n.js} +1 -1
  71. package/dist/{cron-cli-GqIWWgiC.js → cron-cli-9N0CgRKB.js} +12 -12
  72. package/dist/{cron-cli-CDE1OFDG.js → cron-cli-CF5BP-n7.js} +3 -3
  73. package/dist/{daemon-cli-D73VJA_5.js → daemon-cli-0g2nkiie.js} +2 -2
  74. package/dist/{daemon-cli-CEmNv817.js → daemon-cli-BMq2D7sp.js} +15 -15
  75. package/dist/daemon-cli.js +1 -0
  76. package/dist/{daemon-install-BmfoXdXy.js → daemon-install-C570xWh0.js} +4 -4
  77. package/dist/{daemon-install-helpers-BsUgG6nU.js → daemon-install-helpers-BHTLKVCH.js} +11 -11
  78. package/dist/{dashboard-DTlNIb75.js → dashboard-ChRtpalJ.js} +2 -2
  79. package/dist/{dashboard-DvN1mA5u.js → dashboard-EG5nMcy-.js} +1 -1
  80. package/dist/{deliver-CeItj33i.js → deliver-BCX2HRzP.js} +7 -7
  81. package/dist/{deliver-UlKfF5ki.js → deliver-CjCvs92K.js} +1 -1
  82. package/dist/{deliver-BR94HzGu.js → deliver-DvxmGKU7.js} +1 -1
  83. package/dist/{deliver-Ed6oj5Hr.js → deliver-nnwtUHe4.js} +1 -1
  84. package/dist/{devices-cli-BE_t6kEW.js → devices-cli-BRo35VQ8.js} +8 -8
  85. package/dist/{devices-cli-DolMfE77.js → devices-cli-DhkpGf9W.js} +2 -2
  86. package/dist/{diagnostic-BS_rmYNQ.js → diagnostic-CgNDbdut.js} +1 -1
  87. package/dist/{diagnostics-DCUyr8cM.js → diagnostics-DFZTmuFB.js} +5 -5
  88. package/dist/{directory-cli-CRSmIysH.js → directory-cli-BKfV5rcs.js} +8 -8
  89. package/dist/{dns-cli-CSAjz7bt.js → dns-cli--O5ugFD3.js} +5 -5
  90. package/dist/{dock-CslXtXH_.js → dock-Cki7hMDN.js} +4 -4
  91. package/dist/{docs-cli-BRb3xAC4.js → docs-cli-o8TMQTn6.js} +4 -4
  92. package/dist/{doctor-completion-DDa8Rj_C.js → doctor-completion-D1YQPRLZ.js} +1 -1
  93. package/dist/{doctor-completion-CqdGtWOU.js → doctor-completion-DdOKH1q8.js} +2 -2
  94. package/dist/{doctor-config-flow-BEveSr6U.js → doctor-config-flow-C2SyrY1V.js} +15 -15
  95. package/dist/{enable-rsx0VIgO.js → enable-mI_Pnmyk.js} +1 -1
  96. package/dist/entry.js +2 -2
  97. package/dist/{exec-approvals-allowlist-Dgb12MXc.js → exec-approvals-allowlist-Bdtmhwgj.js} +1 -1
  98. package/dist/{exec-approvals-cli-qbLlzazr.js → exec-approvals-cli-Cfh3OhWq.js} +4 -4
  99. package/dist/{exec-approvals-cli-xVv5uofa.js → exec-approvals-cli-U6R3GXsh.js} +16 -16
  100. package/dist/{exec-safe-bin-runtime-policy-BfybDm-q.js → exec-safe-bin-runtime-policy-DfgvmbZG.js} +2 -2
  101. package/dist/extensionAPI.js +5 -5
  102. package/dist/{fetch-BZWXCGP2.js → fetch-Dp9uG2qN.js} +3 -3
  103. package/dist/{fetch-guard-BplMfPrm.js → fetch-guard-ClzGpvFK.js} +1 -1
  104. package/dist/{fs-safe-nXGqHBF8.js → fs-safe-BtSQvuQn.js} +24 -24
  105. package/dist/{gateway-cli-CKOUY2y1.js → gateway-cli-D6K1V3Bk.js} +175 -167
  106. package/dist/{gateway-cli-D7OOfzP7.js → gateway-cli-RrWvU33e.js} +33 -25
  107. package/dist/{gateway-rpc-CEueWk1E.js → gateway-rpc-ByQgck-k.js} +1 -1
  108. package/dist/{gateway-rpc-yBoALaWH.js → gateway-rpc-DiWvH8Pq.js} +1 -1
  109. package/dist/{health-D7FO50c6.js → health-BEGEjMAH.js} +3 -3
  110. package/dist/{health-Dyd4RpCM.js → health-CgHjmUFQ.js} +14 -14
  111. package/dist/{hooks-cli-C0ESoNa0.js → hooks-cli-BqCZdnvb.js} +84 -84
  112. package/dist/{hooks-cli-DufRHJ0v.js → hooks-cli-Cigd_Wfj.js} +9 -9
  113. package/dist/{hooks-status-DC5Ls265.js → hooks-status-DLAFiQoD.js} +1 -1
  114. package/dist/{image-XqGcCt9q.js → image-5kjT0Ifv.js} +1 -1
  115. package/dist/{image-BKHeF2sO.js → image-Cboo5_y3.js} +1 -1
  116. package/dist/{image-DcfdUryQ.js → image-Cj831azd.js} +1 -1
  117. package/dist/{image-HyFl8MrD.js → image-CrLgaJde.js} +5 -5
  118. package/dist/{image-ops-_2-6WZ4r.js → image-ops-Cv4BHtyC.js} +10 -10
  119. package/dist/index.js +13 -13
  120. package/dist/{inspect-DRNo1VIP.js → inspect-BB0gFSLo.js} +4 -4
  121. package/dist/{install-safe-path-DBJEsbCp.js → install-safe-path-CSglDbi-.js} +25 -25
  122. package/dist/{installs-B2Z4DyUY.js → installs-D6ND4ZY7.js} +9 -9
  123. package/dist/{ipv4-BMbKD3zl.js → ipv4-Dw9v4ItT.js} +1 -1
  124. package/dist/{ir-DaZ8ITYK.js → ir-Bov3hbIf.js} +6 -6
  125. package/dist/{issue-format-BK98Hpx-.js → issue-format-Bnj64obT.js} +1 -1
  126. package/dist/{json-files-DrZ4qfxw.js → json-files-1hhV5hS6.js} +8 -8
  127. package/dist/{lifecycle-core-BrIHPmUB.js → lifecycle-core-_8xJF_9z.js} +5 -5
  128. package/dist/llm-slug-generator.js +5 -5
  129. package/dist/{login--V3ibRWJ.js → login-D-Js3AvX.js} +3 -3
  130. package/dist/{login-qr-TavUzvgE.js → login-qr-DzUhzJq4.js} +6 -6
  131. package/dist/{logs-cli-p5kAh0qi.js → logs-cli-Clchi69N.js} +3 -3
  132. package/dist/{logs-cli-Dv8TRwyI.js → logs-cli-DVtjPLN7.js} +9 -9
  133. package/dist/{manager-B74jUC6O.js → manager-ZjJ9M2x6.js} +14 -14
  134. package/dist/{manifest-registry-D1Y5hoq2.js → manifest-registry-InPIGvqe.js} +1 -1
  135. package/dist/{markdown-tables-BDe192Ai.js → markdown-tables-DoeNp6Yw.js} +1 -1
  136. package/dist/{memory-cli-BMul3CV1.js → memory-cli-C0hNuh-t.js} +12 -12
  137. package/dist/{model-BUgU1YvD.js → model-Cun06SAF.js} +2 -2
  138. package/dist/{model-catalog-D4hoiCav.js → model-catalog-BoIN1v0Q.js} +3 -3
  139. package/dist/{model-picker-C52jOYls.js → model-picker-HEDcBXIB.js} +4 -4
  140. package/dist/{models-Cdge-yuv.js → models-Xv17f3vZ.js} +18 -18
  141. package/dist/{models-cli-B3Xw4zlc.js → models-cli-BXyi6SWU.js} +81 -81
  142. package/dist/{models-cli-BfSKbP6r.js → models-cli-DUzbk_7x.js} +9 -9
  143. package/dist/{models-config-BUq1pLs3.js → models-config-BjTFyv9Z.js} +6 -6
  144. package/dist/{net-B1yWST2Q.js → net-Dsab06Rf.js} +2 -2
  145. package/dist/{node-cli-BabqC8Zy.js → node-cli-B15fr-qS.js} +33 -33
  146. package/dist/{node-cli-Do62XUPs.js → node-cli-Bw3p8-Sf.js} +1 -1
  147. package/dist/{node-command-policy-CcKer6vK.js → node-command-policy-B6a4rlIk.js} +1 -1
  148. package/dist/{node-command-policy-Dk_UuHKt.js → node-command-policy-CtLbfZ7S.js} +1 -1
  149. package/dist/{node-service-BNRDY7GU.js → node-service-Dc_k2bXh.js} +1 -1
  150. package/dist/{nodes-cli-pFODdHtG.js → nodes-cli-Cd4bT0G_.js} +3 -3
  151. package/dist/{nodes-cli-Dpzu3xiW.js → nodes-cli-DxNXbAjA.js} +16 -16
  152. package/dist/{nodes-screen-9RT6NG41.js → nodes-screen-BfHQppAv.js} +7 -7
  153. package/dist/{npm-pack-install-dRUKCY1x.js → npm-pack-install-BAwUbntz.js} +18 -18
  154. package/dist/{npm-resolution-CIbDK6N6.js → npm-resolution-B-kbVjrb.js} +1 -1
  155. package/dist/{npm-resolution-CEMLdRCK.js → npm-resolution-BAviHHRA.js} +5 -5
  156. package/dist/{onboard-D7KozrLf.js → onboard-Cu0G7EAR.js} +3 -3
  157. package/dist/{onboard-CMEmzKLW.js → onboard-RamoqBQh.js} +6 -6
  158. package/dist/{onboard-channels-BfnzcJrR.js → onboard-channels-DHx-uZCo.js} +2 -2
  159. package/dist/{onboard-channels-Bw9YbUzP.js → onboard-channels-xMJXbWfp.js} +20 -20
  160. package/dist/{onboard-custom-CtmSA7Ih.js → onboard-custom-Bdm0AEOf.js} +3 -3
  161. package/dist/{onboard-custom.shared-DGA1AopE.js → onboard-custom.shared-BJ1NdBPQ.js} +2 -2
  162. package/dist/{onboard-helpers-DLQ_XMs1.js → onboard-helpers-BS_bPZKe.js} +11 -11
  163. package/dist/{onboard-helpers-Oi4C_OMX.js → onboard-helpers-DEzzN6tA.js} +1 -1
  164. package/dist/{onboard-hooks-kJZEQTda.js → onboard-hooks-BKIWvalG.js} +4 -4
  165. package/dist/{onboard-remote-XXaOoJYC.js → onboard-remote-C_jBXm-z.js} +1 -1
  166. package/dist/{onboard-remote-C1-vrrIn.js → onboard-remote-St2_FGbe.js} +3 -3
  167. package/dist/{onboard-skills-C8Mue7Px.js → onboard-skills-D7ZRTLs3.js} +1 -1
  168. package/dist/{onboard-skills-BxC5udud.js → onboard-skills-m9oH0mp4.js} +4 -4
  169. package/dist/{onboarding-BLcdYzEJ.js → onboarding-I5wAbpKA.js} +13 -13
  170. package/dist/{onboarding-C1mU33hA.js → onboarding-VPTSOvzr.js} +7 -7
  171. package/dist/{onboarding.finalize-2exVy-pf.js → onboarding.finalize-DfoOvZxa.js} +13 -13
  172. package/dist/{onboarding.finalize-BP0DKBAn.js → onboarding.finalize-Dvd8Uqat.js} +89 -89
  173. package/dist/{onboarding.gateway-config-CsSayEFl.js → onboarding.gateway-config-BZkfmBr7.js} +18 -18
  174. package/dist/{onboarding.gateway-config-DImrb8_4.js → onboarding.gateway-config-DYozawla.js} +4 -4
  175. package/dist/{openai-model-default-DYxdi5ZX.js → openai-model-default-Dbn33YX3.js} +2 -2
  176. package/dist/{outbound-DhEQ9Uxy.js → outbound-SGcz-hQs.js} +4 -4
  177. package/dist/{outbound-attachment-Dhx3-Gcn.js → outbound-attachment-BLl9Vid0.js} +2 -2
  178. package/dist/{pairing-cli-CvCRXsUM.js → pairing-cli-6-9woWGC.js} +9 -9
  179. package/dist/{pairing-labels-BUGAt7vg.js → pairing-labels-RbKVJQq5.js} +1 -1
  180. package/dist/{pairing-store-B27cuhBQ.js → pairing-store-BBxShFYa.js} +3 -3
  181. package/dist/{path-alias-guards-BQRm9WIp.js → path-alias-guards-DCVgvjo3.js} +3 -3
  182. package/dist/{path-safety-DDHmx5YW.js → path-safety-DmE3pKqe.js} +1 -1
  183. package/dist/{paths-B0fezTQW.js → paths-ufuDrRZO.js} +9 -9
  184. package/dist/{pi-embedded-Dr2npoTx.js → pi-embedded-CLpkFzke.js} +58 -17
  185. package/dist/{pi-embedded-DzJti3AT.js → pi-embedded-JvXxFqT7.js} +58 -17
  186. package/dist/{pi-embedded-helpers-J2caGJww.js → pi-embedded-helpers-CKEoEHoe.js} +13 -1
  187. package/dist/{pi-embedded-helpers-DeshJQRZ.js → pi-embedded-helpers-CYvB-mUe.js} +13 -1
  188. package/dist/{pi-embedded-helpers-BvHlsuFU.js → pi-embedded-helpers-DQudcPte.js} +13 -1
  189. package/dist/{pi-embedded-helpers-C6qtvkzL.js → pi-embedded-helpers-YXFiUfat.js} +19 -7
  190. package/dist/{pi-model-discovery-P149vq2k.js → pi-model-discovery-BnW942uP.js} +1 -1
  191. package/dist/{pi-tools.policy-DwPGGCBG.js → pi-tools.policy-ClPMGEq4.js} +5 -5
  192. package/dist/{plugin-auto-enable-C4EhTu_y.js → plugin-auto-enable-MtcFdE6T.js} +3 -3
  193. package/dist/{plugin-registry-htTOE5ts.js → plugin-registry-BlrQgW0D.js} +3 -3
  194. package/dist/{plugin-registry-C6E8urZI.js → plugin-registry-gZUfqcq8.js} +1 -1
  195. package/dist/plugin-sdk/{accounts-CK8a9UID.js → accounts-B0MGFQ0N.js} +1 -1
  196. package/dist/plugin-sdk/{accounts-lwmUYGUE.js → accounts-C6gCLKxD.js} +3 -3
  197. package/dist/plugin-sdk/{accounts-CS3X-w75.js → accounts-CtdUkArQ.js} +1 -1
  198. package/dist/plugin-sdk/{active-listener-BWmkk9uJ.js → active-listener-B4jWKHgp.js} +1 -1
  199. package/dist/plugin-sdk/{agent-scope-hbikmG29.js → agent-scope-C86F9PtR.js} +3 -3
  200. package/dist/plugin-sdk/agents/pi-embedded-helpers/errors.d.ts +6 -0
  201. package/dist/plugin-sdk/agents/pi-embedded-helpers.d.ts +1 -1
  202. package/dist/plugin-sdk/agents/pi-embedded-subscribe.handlers.messages.d.ts +8 -0
  203. package/dist/plugin-sdk/{api-key-rotation-CRkGVkaE.js → api-key-rotation-Ckeuk7ma.js} +2 -2
  204. package/dist/plugin-sdk/{audio-preflight-CnShZx3d.js → audio-preflight-bn_-lI6T.js} +33 -33
  205. package/dist/plugin-sdk/{audio-transcription-runner-02Kf0QEw.js → audio-transcription-runner-B7Y82C4Z.js} +10 -10
  206. package/dist/plugin-sdk/{bindings-nNuMY2YM.js → bindings-ChmACL7A.js} +2 -2
  207. package/dist/plugin-sdk/{channel-activity-Bqbt4eXH.js → channel-activity-BmpQZg2e.js} +3 -3
  208. package/dist/plugin-sdk/{channel-web-g5RnVnVc.js → channel-web-DWi8zvvE.js} +23 -23
  209. package/dist/plugin-sdk/{chrome-2cewsnu1.js → chrome-DuBOBfOM.js} +7 -7
  210. package/dist/plugin-sdk/{chunk-BYCmTLPZ.js → chunk-C0X4iaGn.js} +1 -1
  211. package/dist/plugin-sdk/{command-format-BlehDg53.js → command-format-CElfSn4A.js} +1 -1
  212. package/dist/plugin-sdk/{commands-registry-BOYYhfZ3.js → commands-registry-B1R1u0Ef.js} +5 -5
  213. package/dist/plugin-sdk/{config-QlwvRinO.js → config-BIceFM4q.js} +10 -10
  214. package/dist/plugin-sdk/{deliver-TLuU1nrG.js → deliver-B8tQybg3.js} +11 -11
  215. package/dist/plugin-sdk/{diagnostic-Qi8YtEBS.js → diagnostic-BbwhaVH5.js} +2 -2
  216. package/dist/plugin-sdk/{dock-kzzjqc23.js → dock-ofKZIPvX.js} +6 -6
  217. package/dist/plugin-sdk/{errors-DVIIAWgf.js → errors-D1n_xg5Q.js} +1 -1
  218. package/dist/plugin-sdk/{fetch-guard-DBpNRDsE.js → fetch-guard-JfIUTAXW.js} +2 -2
  219. package/dist/plugin-sdk/{fs-safe-m9IoJqSI.js → fs-safe-C32W4lb9.js} +3 -3
  220. package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +1 -0
  221. package/dist/plugin-sdk/gateway/protocol/schema/protocol-schemas.d.ts +1 -0
  222. package/dist/plugin-sdk/{image-DthA-2Bt.js → image-C6HhIJq-.js} +6 -6
  223. package/dist/plugin-sdk/{image-ops-DZf5e0hi.js → image-ops-DgyVTXxr.js} +1 -1
  224. package/dist/plugin-sdk/index.js +64 -64
  225. package/dist/plugin-sdk/{ir-DqRMrArF.js → ir-CUJX2XmF.js} +6 -6
  226. package/dist/plugin-sdk/{local-roots-D45XofHa.js → local-roots-PQBdjF5V.js} +4 -4
  227. package/dist/plugin-sdk/{logger-DfvFauG1.js → logger-BnDVA5Pn.js} +1 -1
  228. package/dist/plugin-sdk/{login-jCR1wiz5.js → login-fF45LyM7.js} +6 -6
  229. package/dist/plugin-sdk/{login-qr-yj8Ns7nC.js → login-qr-IMrHS0CU.js} +9 -9
  230. package/dist/plugin-sdk/{manager-Cm_A6m9L.js → manager-B0SAEWzU.js} +10 -10
  231. package/dist/plugin-sdk/{markdown-tables-CBEW0AEz.js → markdown-tables-BTRy5g54.js} +1 -1
  232. package/dist/plugin-sdk/{message-channel-CettmQxR.js → message-channel-BBGSgNfZ.js} +1 -1
  233. package/dist/plugin-sdk/{outbound-Bciu0j21.js → outbound-CsQhMb1t.js} +7 -7
  234. package/dist/plugin-sdk/{outbound-attachment-JlTOABiQ.js → outbound-attachment-PV4MNgO7.js} +2 -2
  235. package/dist/plugin-sdk/{path-alias-guards-DJzjOH6k.js → path-alias-guards-CtvHdXkF.js} +1 -1
  236. package/dist/plugin-sdk/{pi-embedded-helpers-5SLsxaPD.js → pi-embedded-helpers-BHnEYKw0.js} +30 -18
  237. package/dist/plugin-sdk/{pi-model-discovery-D69omnZ4.js → pi-model-discovery-CeMr9qlX.js} +1 -1
  238. package/dist/plugin-sdk/{plugins-PXEjTi0a.js → plugins-DoosFTlv.js} +6 -6
  239. package/dist/plugin-sdk/{proxy-BJHqiC33.js → proxy-BC7TfAei.js} +1 -1
  240. package/dist/plugin-sdk/{proxy-fetch-nIK8JZcG.js → proxy-fetch-D7xNZwMz.js} +1 -1
  241. package/dist/plugin-sdk/{pw-ai-BYRY2b8b.js → pw-ai-COCVSS3S.js} +13 -13
  242. package/dist/plugin-sdk/{qmd-manager-BDZK_TQ2.js → qmd-manager-Dy2i7Yk2.js} +8 -8
  243. package/dist/plugin-sdk/{query-expansion-BbG3wPsu.js → query-expansion-Ce600EN-.js} +2 -2
  244. package/dist/plugin-sdk/{redact-CJpp3pJZ.js → redact-DR57Khnb.js} +1 -1
  245. package/dist/plugin-sdk/{registry-DZtlIW2B.js → registry-CoOCMLwt.js} +2 -2
  246. package/dist/plugin-sdk/{replies-EKccD3Vq.js → replies-DrAmBEev.js} +3 -3
  247. package/dist/plugin-sdk/{reply-Bn7G66m2.js → reply-UD3RANYz.js} +139 -98
  248. package/dist/plugin-sdk/{reply-prefix-DSjz9ex2.js → reply-prefix-S61xcDq5.js} +1 -1
  249. package/dist/plugin-sdk/{resolve-outbound-target-BWnhQoZm.js → resolve-outbound-target-CHbuy5MW.js} +2 -2
  250. package/dist/plugin-sdk/{resolve-route-f4hKLSdv.js → resolve-route-D17tpQod.js} +4 -4
  251. package/dist/plugin-sdk/{retry-WkwmuOq5.js → retry-BCP_IcXF.js} +1 -1
  252. package/dist/plugin-sdk/{send-By6LXMdT.js → send-4oPoqu-k.js} +8 -8
  253. package/dist/plugin-sdk/{send-D6q7DSEd.js → send-B-OjHj4t.js} +7 -7
  254. package/dist/plugin-sdk/{send-wah5ag3x.js → send-BnUKf8wg.js} +10 -10
  255. package/dist/plugin-sdk/{send-CLmu_bs1.js → send-DXz49rIh.js} +6 -6
  256. package/dist/plugin-sdk/{send-DVH_jqoJ.js → send-DfA6vCVP.js} +15 -15
  257. package/dist/plugin-sdk/{session-BfaJDj55.js → session-B_TxDBeW.js} +5 -5
  258. package/dist/plugin-sdk/{session-meta-CtcszwHp.js → session-meta-Cs9Hy3rA.js} +1 -1
  259. package/dist/plugin-sdk/{sessions-CCrnhL0f.js → sessions-D0O4NXJE.js} +6 -6
  260. package/dist/plugin-sdk/{skill-commands-BbZ5VC2j.js → skill-commands-Cq3lRmFA.js} +5 -5
  261. package/dist/plugin-sdk/{skills-DhjFSX9k.js → skills-CKk6dkB7.js} +8 -8
  262. package/dist/plugin-sdk/{ssrf-yJVFBwP_.js → ssrf-DWKS2l1Z.js} +1 -1
  263. package/dist/plugin-sdk/{store-B49PVNHw.js → store-D-KJbO1K.js} +2 -2
  264. package/dist/plugin-sdk/{subsystem-BSS_Lti_.js → subsystem-BOTkxxI1.js} +2 -2
  265. package/dist/plugin-sdk/{tables-B2ndgibI.js → tables-iAM0v6UL.js} +1 -1
  266. package/dist/plugin-sdk/{target-errors-3PJA_VbO.js → target-errors-Di5oh5b0.js} +2 -2
  267. package/dist/plugin-sdk/{tokens-CYf5ZhLm.js → tokens-DUELMaP-.js} +1 -1
  268. package/dist/plugin-sdk/{tool-images-DzNHghBZ.js → tool-images-4TDsVJHN.js} +2 -2
  269. package/dist/plugin-sdk/{tool-loop-detection-paUegJmP.js → tool-loop-detection-BooG-g5v.js} +2 -2
  270. package/dist/plugin-sdk/{utils-DaD2HGTy.js → utils-B7zMI7Td.js} +1 -1
  271. package/dist/plugin-sdk/web-UMF3rhRY.js +72 -0
  272. package/dist/plugin-sdk/{whatsapp-actions-fOVsMKWU.js → whatsapp-actions-CntfyIDF.js} +25 -25
  273. package/dist/{plugins-DPspmGax.js → plugins-B9LVNfXo.js} +2 -2
  274. package/dist/{plugins-cli-Bh8rE7t6.js → plugins-cli-BT_YdHlo.js} +9 -9
  275. package/dist/{plugins-cli-NTdICagm.js → plugins-cli-Dowiu6KT.js} +86 -86
  276. package/dist/{ports-Do_Plo8C.js → ports-BKC_uvax.js} +2 -2
  277. package/dist/{ports-BNwHSlzK.js → ports-TfIbPY8z.js} +1 -1
  278. package/dist/{program-BzrloeUd.js → program-BA-5175y.js} +84 -84
  279. package/dist/{program-context-Dj2_qoie.js → program-context-DFXBN0ZY.js} +31 -31
  280. package/dist/{prompt-select-styled-CRUyZ8Zn.js → prompt-select-styled-BcZ8H5DI.js} +39 -39
  281. package/dist/{prompt-select-styled-CRpJTxEn.js → prompt-select-styled-D6W6ZbLn.js} +6 -6
  282. package/dist/{provider-auth-helpers-CTHHzB9d.js → provider-auth-helpers-BEYTbEO-.js} +1 -1
  283. package/dist/{provider-auth-helpers-CGlrXlEv.js → provider-auth-helpers-Bu2aZSnq.js} +5 -5
  284. package/dist/{proxy-env-B9lqcBfU.js → proxy-env-DQluNeAy.js} +1 -1
  285. package/dist/{push-apns-CfIOYv6I.js → push-apns-8_4x3QDX.js} +5 -5
  286. package/dist/{push-apns-D6P4wyMo.js → push-apns-Cr1-03ZS.js} +1 -1
  287. package/dist/{pw-ai-B4CY-RXZ.js → pw-ai-CgRxvnyo.js} +15 -15
  288. package/dist/{qmd-manager-CoaYK3NS.js → qmd-manager-ZEPpjdm5.js} +20 -20
  289. package/dist/{qr-cli-tns16Dij.js → qr-cli-UOH4AqoB.js} +1 -1
  290. package/dist/{query-expansion-BOhTMSRT.js → query-expansion-DmsmrMjB.js} +12 -12
  291. package/dist/{redact-snapshot-Cx6qYiIY.js → redact-snapshot-BGusjTY9.js} +1 -1
  292. package/dist/{register.agent-CbbtPCTG.js → register.agent-CHE7Qalv.js} +97 -97
  293. package/dist/{register.agent-tUHan7i6.js → register.agent-FsyQ2Nm4.js} +13 -13
  294. package/dist/register.configure-CXDvAw-s.js +175 -0
  295. package/dist/{register.configure-H6uG1A19.js → register.configure-DS8ihv8X.js} +16 -16
  296. package/dist/{register.init-B2cwbe39.js → register.init-DY3iSz8Y.js} +16 -16
  297. package/dist/{register.maintenance-B4zbpuqh.js → register.maintenance-Dnr1w5A1.js} +15 -15
  298. package/dist/{register.maintenance-C4vUOdVb.js → register.maintenance-yrpKG5iB.js} +99 -99
  299. package/dist/{register.message-BNLwGPS-.js → register.message-DH4rUSVi.js} +77 -77
  300. package/dist/{register.message-BmweIh8D.js → register.message-p-nIqAYY.js} +9 -9
  301. package/dist/{register.onboard-B_CVsLWL.js → register.onboard-CC50fpnA.js} +5 -5
  302. package/dist/{register.onboard-DElUgwoa.js → register.onboard-maBvm3Rf.js} +18 -18
  303. package/dist/{register.setup-BF5BjQQE.js → register.setup-CwMkpOf-.js} +5 -5
  304. package/dist/{register.setup-DWIO5nY-.js → register.setup-igARJvnk.js} +21 -21
  305. package/dist/{register.start-BKHJP2Is.js → register.start-K1LpFGp0.js} +4 -4
  306. package/dist/{register.start-csWISzdo.js → register.start-nNZtIOVx.js} +17 -17
  307. package/dist/{register.status-health-sessions-CGnHeuq9.js → register.status-health-sessions-C3RoepIh.js} +12 -12
  308. package/dist/{register.status-health-sessions-DVQycJyO.js → register.status-health-sessions-TaLuKSkg.js} +91 -91
  309. package/dist/{register.subclis-CXCp9MIN.js → register.subclis-DscBnK86.js} +31 -31
  310. package/dist/{replies-9B0e_W0H.js → replies-Cnwwqegi.js} +1 -1
  311. package/dist/{reply-Cmqwu6vZ.js → reply-Cm66z0-z.js} +61 -21
  312. package/dist/{reply-prefix-CqTNlEbX.js → reply-prefix-BwXX5Jk8.js} +1 -1
  313. package/dist/{resolve-route-rhGDrrKc.js → resolve-route-BAFZr0AD.js} +2 -2
  314. package/dist/{rpc-Ca9dlA9v.js → rpc-CeTMYkun.js} +1 -1
  315. package/dist/{rpc-CI7SPdeS.js → rpc-rTqBtgDp.js} +1 -1
  316. package/dist/{run-main-LIh93d7b.js → run-main-w6C2SiYG.js} +95 -95
  317. package/dist/{runtime-vnX4kz3-.js → runtime-uZw9qW6d.js} +2 -2
  318. package/dist/{sandbox-ClasEjRW.js → sandbox-GZ80o0rN.js} +18 -18
  319. package/dist/{sandbox-cli-BxLxr8Ov.js → sandbox-cli-BdzWh2X7.js} +26 -26
  320. package/dist/{secrets-cli-DEGkMLrT.js → secrets-cli-DroWvA-9.js} +10 -10
  321. package/dist/{secrets-cli-DVRKrzox.js → secrets-cli-i2YWj3kH.js} +3 -3
  322. package/dist/{security-cli-D4O7OC12.js → security-cli-B-t3jhRM.js} +4 -4
  323. package/dist/{security-cli-608Hrkk0.js → security-cli-VJf80mpc.js} +43 -43
  324. package/dist/{send-BUqXYyi5.js → send-B3N6ed5I.js} +11 -11
  325. package/dist/{send-BLyXZjPe.js → send-CUhKEB1L.js} +8 -8
  326. package/dist/{send-DLfPZ3_F.js → send-D52tAxa7.js} +6 -6
  327. package/dist/{send-CwHSY0pB.js → send-DyQvZx-9.js} +6 -6
  328. package/dist/{send-BLv3U-2N.js → send-ofq5TYCm.js} +5 -5
  329. package/dist/{server-context-3YhieMNo.js → server-context-BIKTw3k8.js} +12 -12
  330. package/dist/{server-lifecycle-DE7bHlKs.js → server-lifecycle-N5bU8mjm.js} +2 -2
  331. package/dist/{server-middleware-hZnQvs4T.js → server-middleware-Q0-cjKBA.js} +1 -1
  332. package/dist/{server-node-events-DhzgyreJ.js → server-node-events-DIZCYbQS.js} +9 -9
  333. package/dist/{server-node-events-SLHkUEcI.js → server-node-events-DgNEG1Jq.js} +77 -77
  334. package/dist/{server-BAuP980-.js → server-si15CkOB.js} +19 -19
  335. package/dist/{service-DdLDWk4F.js → service-Bdwg8-MP.js} +15 -15
  336. package/dist/{session-D8FUKdiW.js → session-Cjlyc-CV.js} +1 -1
  337. package/dist/{session-meta-Cyjw6vgH.js → session-meta-Dofh28uR.js} +1 -1
  338. package/dist/{session-utils-BSsFceEN.js → session-utils-dcEiC-U5.js} +6 -6
  339. package/dist/{sessions-DugDYFTs.js → sessions-BUvaIZVg.js} +15 -15
  340. package/dist/{sessions-D0PiwO3b.js → sessions-DupNmVK4.js} +4 -4
  341. package/dist/{shared-fKlvovu7.js → shared-CDevUk3t.js} +1 -1
  342. package/dist/{shared-D96SvIQZ.js → shared-haEHGkpf.js} +3 -3
  343. package/dist/{skill-commands-KfP9rDJM.js → skill-commands-Do5yZvPn.js} +5 -5
  344. package/dist/{skill-scanner-D7WuF5Sb.js → skill-scanner-DiC9yuOY.js} +6 -6
  345. package/dist/{skills-CDZAo2Sd.js → skills-cQZqFYZM.js} +3 -3
  346. package/dist/{skills-cli-DaSd8Xc2.js → skills-cli-BXNcPNTR.js} +5 -5
  347. package/dist/{skills-install-Ba_1ws_H.js → skills-install-BASrKfvX.js} +6 -6
  348. package/dist/{skills-status-CV1r9Fs_.js → skills-status-DLQ7pr9r.js} +1 -1
  349. package/dist/{status-06d3zhTb.js → status-DeOsbp6k.js} +5 -5
  350. package/dist/{status-B8I9eCIt.js → status-EvQ73B8e.js} +26 -26
  351. package/dist/{status.update-CbAiJIbB.js → status.update-DUDM6iUC.js} +2 -2
  352. package/dist/{store-GKlw8Qa-.js → store-D1eSPAL7.js} +5 -5
  353. package/dist/{subagent-registry-CU894Q5r.js → subagent-registry-DxueEkqw.js} +203 -163
  354. package/dist/{system-cli-CFkPJfOG.js → system-cli-BXGiTYVZ.js} +9 -9
  355. package/dist/{system-cli-C0Ed85zv.js → system-cli-im47tHnN.js} +3 -3
  356. package/dist/{system-run-command-Pd55ipfO.js → system-run-command-BkdvGhnZ.js} +1 -1
  357. package/dist/{systemd-DVgFh5bF.js → systemd-CTamqs8u.js} +9 -9
  358. package/dist/{systemd-hints-BC7wmmDb.js → systemd-hints-D4VSR4gB.js} +6 -6
  359. package/dist/{systemd-linger-C0GrW0si.js → systemd-linger-BbxFU05t.js} +1 -1
  360. package/dist/{tables-B6wgQqYN.js → tables-CTFvIcTQ.js} +1 -1
  361. package/dist/{tailnet-D67wyPIH.js → tailnet-CQxQNgt6.js} +1 -1
  362. package/dist/{target-errors-AeE93vdq.js → target-errors-8-urss_s.js} +4 -4
  363. package/dist/{tool-images-rmLnTSxP.js → tool-images-hL7SizLq.js} +1 -1
  364. package/dist/{tui-B7dzJD1I.js → tui-DExFltkR.js} +6 -6
  365. package/dist/{tui-BRtGtxGi.js → tui-DhEGvFT0.js} +3 -3
  366. package/dist/{tui-cli-CjdbITUY.js → tui-cli-Bjx0DKT6.js} +4 -4
  367. package/dist/{tui-cli-q5z-00Hw.js → tui-cli-oM2kNbdj.js} +33 -33
  368. package/dist/{update-BPBo5wB4.js → update-Bifl3Vpi.js} +3 -3
  369. package/dist/{update-cli-Bq0E6UWE.js → update-cli-By-XQR0X.js} +107 -107
  370. package/dist/{update-cli-CL5aaHct.js → update-cli-CGZx-QNj.js} +15 -15
  371. package/dist/{update-runner-CDmAZF8g.js → update-runner-D3Dqz9wz.js} +16 -16
  372. package/dist/{update-runner-jAwo79K3.js → update-runner-meF3Yj68.js} +1 -1
  373. package/dist/{web-_WxgxGh7.js → web-C8qeseGa.js} +5 -5
  374. package/dist/{web-CadeCgho.js → web-CUoANEo6.js} +5 -5
  375. package/dist/{web-CGIjjBC-.js → web-pvjSSXiL.js} +9 -9
  376. package/dist/web-yRXxasJ5.js +127 -0
  377. package/dist/{webhooks-cli-Dov_rqUg.js → webhooks-cli-BsZ0IIku.js} +6 -6
  378. package/dist/{whatsapp-actions-COrqjCys.js → whatsapp-actions-DZxeDPhI.js} +19 -19
  379. package/dist/{with-timeout-DUosdGNq.js → with-timeout-CojHmZpl.js} +3 -3
  380. package/dist/{workspace-CoIrgiMR.js → workspace-BxNxoapu.js} +1 -1
  381. package/dist/{workspace-D3Bd1Wd-.js → workspace-CZCYGcgM.js} +23 -23
  382. package/dist/{workspace-dirs-x94RXrLL.js → workspace-dirs-CksYiwHf.js} +1 -1
  383. package/dist/{wsl-KDz114y6.js → wsl-CiVud8tt.js} +2 -2
  384. package/docs/install/installer.md +1 -0
  385. package/docs/plans/2026-03-27-bitseek-topup-modal-design.md +52 -0
  386. package/package.json +1 -1
  387. package/dist/control-ui/assets/index-ixU5putu.js.map +0 -1
  388. package/dist/plugin-sdk/web-BapRq5np.js +0 -72
  389. package/dist/register.configure-CurF_EBC.js +0 -175
  390. package/dist/web-B8lEM5aa.js +0 -127
@@ -1,7 +1,7 @@
1
1
  import { t as CONFIG_DIR } from "./utils-Dwy0Sy1G.js";
2
2
  import { t as evaluateEntryRequirementsForCurrentPlatform } from "./entry-status-CfZupbHn.js";
3
3
  import { d as hasBinary } from "./frontmatter-I4t5UjzX.js";
4
- import { n as isConfigPathTruthy, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-CoIrgiMR.js";
4
+ import { n as isConfigPathTruthy, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-BxNxoapu.js";
5
5
  import path from "node:path";
6
6
 
7
7
  //#region src/hooks/hooks-status.ts
@@ -3,7 +3,7 @@ import { G as resolveAgentModelPrimaryValue, W as resolveAgentModelFallbackValue
3
3
  import { _ as shortenHomeInString, c as isRecord } from "./utils-C6Sc-BRX.js";
4
4
  import { An as resolveOpenClawAgentDir, E as getApiKeyForModel, Ln as normalizeSecretInput, O as requireApiKey, V as loadConfig, _ as resolveImplicitBedrockProvider, _n as applyConfigEnvVars, g as normalizeProviders, v as resolveImplicitCopilotProvider, y as resolveImplicitProviders } from "./model-selection-Cki_5T3j.js";
5
5
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DdoTtx72.js";
6
- import { F as sanitizeUserFacingText } from "./pi-embedded-helpers-J2caGJww.js";
6
+ import { I as sanitizeUserFacingText } from "./pi-embedded-helpers-CKEoEHoe.js";
7
7
  import { n as redactToolDetail } from "./redact-BnsvWmDr.js";
8
8
  import path from "node:path";
9
9
  import fs from "node:fs/promises";
@@ -4,7 +4,7 @@ import { _ as resolveAgentModelPrimaryValue, g as resolveAgentModelFallbackValue
4
4
  import { Q as getApiKeyForModel, Ti as normalizeSecretInput, et as requireApiKey } from "./model-selection-Cg3prWqt.js";
5
5
  import { t as ensureOpenClawModelsJson } from "./models-config-Cgw8LKC4.js";
6
6
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DT73YccP.js";
7
- import { F as sanitizeUserFacingText } from "./pi-embedded-helpers-BvHlsuFU.js";
7
+ import { I as sanitizeUserFacingText } from "./pi-embedded-helpers-DQudcPte.js";
8
8
  import { r as resolveToolDisplay, t as formatToolDetail } from "./tool-display-D6Shnu_c.js";
9
9
  import { complete } from "@mariozechner/pi-ai";
10
10
 
@@ -3,7 +3,7 @@ import { h as resolveAgentModelPrimaryValue, m as resolveAgentModelFallbackValue
3
3
  import { _ as shortenHomeInString, c as isRecord } from "./utils-Da9YdxP6.js";
4
4
  import { D as getApiKeyForModel, H as loadConfig, In as normalizeSecretInput, _ as normalizeProviders, b as resolveImplicitProviders, gn as applyConfigEnvVars, k as requireApiKey, kn as resolveOpenClawAgentDir, v as resolveImplicitBedrockProvider, y as resolveImplicitCopilotProvider } from "./model-selection-JmHy03oi.js";
5
5
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-D1nlOTjb.js";
6
- import { F as sanitizeUserFacingText } from "./pi-embedded-helpers-DeshJQRZ.js";
6
+ import { I as sanitizeUserFacingText } from "./pi-embedded-helpers-CYvB-mUe.js";
7
7
  import { n as redactToolDetail } from "./redact-CB2fI7DT.js";
8
8
  import fs from "node:fs/promises";
9
9
  import path from "node:path";
@@ -1,10 +1,10 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { Si as normalizeSecretInput, ii as requireApiKey, ni as getApiKeyForModel } from "./auth-profiles-Dgxwr8Sa.js";
3
- import { _ as resolveAgentModelPrimaryValue, g as resolveAgentModelFallbackValues } from "./agent-scope-YUWhK3d-.js";
2
+ import { Si as normalizeSecretInput, ii as requireApiKey, ni as getApiKeyForModel } from "./auth-profiles-DNfjfFON.js";
3
+ import { _ as resolveAgentModelPrimaryValue, g as resolveAgentModelFallbackValues } from "./agent-scope-BSkZamWK.js";
4
4
  import { u as isRecord } from "./utils-Dwy0Sy1G.js";
5
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-P149vq2k.js";
6
- import { F as sanitizeUserFacingText } from "./pi-embedded-helpers-C6qtvkzL.js";
7
- import { t as ensureOpenClawModelsJson } from "./models-config-BUq1pLs3.js";
5
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BnW942uP.js";
6
+ import { I as sanitizeUserFacingText } from "./pi-embedded-helpers-YXFiUfat.js";
7
+ import { t as ensureOpenClawModelsJson } from "./models-config-BjTFyv9Z.js";
8
8
  import { r as resolveToolDisplay, t as formatToolDetail } from "./tool-display-sVaWRESD.js";
9
9
  import { complete } from "@mariozechner/pi-ai";
10
10
 
@@ -1,7 +1,7 @@
1
1
  import { n as runExec } from "./exec-BxfdQ5hH.js";
2
2
  import path from "node:path";
3
3
  import os from "node:os";
4
- import fs from "node:fs/promises";
4
+ import fsPromises from "node:fs/promises";
5
5
  import { fileTypeFromBuffer } from "file-type";
6
6
 
7
7
  //#region src/media/constants.ts
@@ -235,11 +235,11 @@ function readJpegExifOrientation(buffer) {
235
235
  return null;
236
236
  }
237
237
  async function withTempDir(fn) {
238
- const dir = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-img-"));
238
+ const dir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-img-"));
239
239
  try {
240
240
  return await fn(dir);
241
241
  } finally {
242
- await fs.rm(dir, {
242
+ await fsPromises.rm(dir, {
243
243
  recursive: true,
244
244
  force: true
245
245
  }).catch(() => {});
@@ -248,7 +248,7 @@ async function withTempDir(fn) {
248
248
  async function sipsMetadataFromBuffer(buffer) {
249
249
  return await withTempDir(async (dir) => {
250
250
  const input = path.join(dir, "in.img");
251
- await fs.writeFile(input, buffer);
251
+ await fsPromises.writeFile(input, buffer);
252
252
  const { stdout } = await runExec("/usr/bin/sips", [
253
253
  "-g",
254
254
  "pixelWidth",
@@ -276,7 +276,7 @@ async function sipsResizeToJpeg(params) {
276
276
  return await withTempDir(async (dir) => {
277
277
  const input = path.join(dir, "in.img");
278
278
  const output = path.join(dir, "out.jpg");
279
- await fs.writeFile(input, params.buffer);
279
+ await fsPromises.writeFile(input, params.buffer);
280
280
  await runExec("/usr/bin/sips", [
281
281
  "-Z",
282
282
  String(Math.max(1, Math.round(params.maxSide))),
@@ -293,14 +293,14 @@ async function sipsResizeToJpeg(params) {
293
293
  timeoutMs: 2e4,
294
294
  maxBuffer: 1024 * 1024
295
295
  });
296
- return await fs.readFile(output);
296
+ return await fsPromises.readFile(output);
297
297
  });
298
298
  }
299
299
  async function sipsConvertToJpeg(buffer) {
300
300
  return await withTempDir(async (dir) => {
301
301
  const input = path.join(dir, "in.heic");
302
302
  const output = path.join(dir, "out.jpg");
303
- await fs.writeFile(input, buffer);
303
+ await fsPromises.writeFile(input, buffer);
304
304
  await runExec("/usr/bin/sips", [
305
305
  "-s",
306
306
  "format",
@@ -312,7 +312,7 @@ async function sipsConvertToJpeg(buffer) {
312
312
  timeoutMs: 2e4,
313
313
  maxBuffer: 1024 * 1024
314
314
  });
315
- return await fs.readFile(output);
315
+ return await fsPromises.readFile(output);
316
316
  });
317
317
  }
318
318
  async function getImageMetadata(buffer) {
@@ -363,7 +363,7 @@ async function sipsApplyOrientation(buffer, orientation) {
363
363
  return await withTempDir(async (dir) => {
364
364
  const input = path.join(dir, "in.jpg");
365
365
  const output = path.join(dir, "out.jpg");
366
- await fs.writeFile(input, buffer);
366
+ await fsPromises.writeFile(input, buffer);
367
367
  await runExec("/usr/bin/sips", [
368
368
  ...ops,
369
369
  input,
@@ -373,7 +373,7 @@ async function sipsApplyOrientation(buffer, orientation) {
373
373
  timeoutMs: 2e4,
374
374
  maxBuffer: 1024 * 1024
375
375
  });
376
- return await fs.readFile(output);
376
+ return await fsPromises.readFile(output);
377
377
  });
378
378
  }
379
379
  async function resizeToJpeg(params) {
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ import "./paths-Drdbent8.js";
3
3
  import { D as tryParseLogLevel, F as hasHelpOrVersion, I as hasRootVersionAlias, N as getVerboseFlag, P as hasFlag, f as isRich, j as getCommandPathWithRootOptions, p as theme, s as setVerbose, w as ALLOWED_LOG_LEVELS } from "./globals-voGoTlHc.js";
4
4
  import { T as toWhatsappJid, l as escapeRegExp, m as normalizeE164, n as assertWebChannel } from "./utils-BKvMUpT6.js";
5
5
  import "./thinking-44rmAw5o.js";
6
- import { Rt as createDefaultDeps, bt as resolveCommitHash, t as getReplyFromConfig } from "./reply-Cmqwu6vZ.js";
6
+ import { Rt as createDefaultDeps, bt as resolveCommitHash, t as getReplyFromConfig } from "./reply-Cm66z0-z.js";
7
7
  import "./agent-scope-Bn65aC59.js";
8
8
  import { d as defaultRuntime, l as visibleWidth, r as enableConsoleCapture } from "./subsystem-6SmBCR59.js";
9
9
  import "./workspace-lzz92TZO.js";
@@ -21,11 +21,11 @@ import "./manifest-registry-D4AA5Ihb.js";
21
21
  import "./dock-Bn2QE-9m.js";
22
22
  import "./message-channel-Dm3yaUvY.js";
23
23
  import "./send-Dxxk5u2M.js";
24
- import { l as installUnhandledRejectionHandler, v as applyTemplate } from "./audio-transcription-runner-DVI-SHAn.js";
25
- import "./image-BKHeF2sO.js";
24
+ import { l as installUnhandledRejectionHandler, v as applyTemplate } from "./audio-transcription-runner-CrM5-5xi.js";
25
+ import "./image-Cboo5_y3.js";
26
26
  import "./models-config-Cgw8LKC4.js";
27
27
  import "./pi-model-discovery-DT73YccP.js";
28
- import "./pi-embedded-helpers-BvHlsuFU.js";
28
+ import "./pi-embedded-helpers-DQudcPte.js";
29
29
  import "./sandbox-Chb3LtnP.js";
30
30
  import "./tool-catalog-zFhF8IWN.js";
31
31
  import "./chrome-BWx4KvKw.js";
@@ -65,11 +65,11 @@ import "./local-roots-ReGJM5-I.js";
65
65
  import "./model-catalog-o_5Qvrbx.js";
66
66
  import "./proxy-fetch-DMkkPEUM.js";
67
67
  import "./tokens-BmOFisP4.js";
68
- import "./deliver-UlKfF5ki.js";
68
+ import "./deliver-CjCvs92K.js";
69
69
  import "./commands-YnZ_Eu2G.js";
70
70
  import "./commands-registry-CzIUIRNv.js";
71
- import "./client-CluJsNRo.js";
72
- import "./call-BdLuBL48.js";
71
+ import "./client-zj7haqMb.js";
72
+ import "./call-DU_f0KMj.js";
73
73
  import "./pairing-token-D0ttfvQD.js";
74
74
  import "./fetch-D6Gs0ykq.js";
75
75
  import "./retry-CVTv2PZ0.js";
@@ -105,7 +105,7 @@ import "./replies-S1e_y-Ag.js";
105
105
  import "./skill-commands-6UiGV02g.js";
106
106
  import "./workspace-dirs-DHTCt_iG.js";
107
107
  import "./session-cost-usage-DVsKSBUG.js";
108
- import "./onboard-helpers-Oi4C_OMX.js";
108
+ import "./onboard-helpers-DEzzN6tA.js";
109
109
  import "./prompt-style-BCDsARgg.js";
110
110
  import "./pairing-labels-Bf79TO1N.js";
111
111
  import "./session-meta-B2wZLwyB.js";
@@ -120,7 +120,7 @@ import "./server-lifecycle-B0rQI3vu.js";
120
120
  import "./stagger-BIZMWR_z.js";
121
121
  import "./constants-BLoDkl98.js";
122
122
  import "./context-window-guard-cHOCxHiA.js";
123
- import { r as waitForever, t as monitorWebChannel } from "./channel-web-DI8CzqrG.js";
123
+ import { r as waitForever, t as monitorWebChannel } from "./channel-web-DekWEF-x.js";
124
124
  import "./outbound-bFvl9MXB.js";
125
125
  import "./session-8gkSR_hH.js";
126
126
  import "./login-D-X2kueP.js";
@@ -128,9 +128,9 @@ import { t as isMainModule } from "./is-main-DMW049m8.js";
128
128
  import { t as ensureOpenClawCliOnPath } from "./path-env-CX4ttizU.js";
129
129
  import { t as assertSupportedRuntime } from "./runtime-guard-B3YxeGOO.js";
130
130
  import "./ports-7quBh0W7.js";
131
- import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-Dj2_qoie.js";
132
- import "./plugin-registry-C6E8urZI.js";
133
- import { n as resolveCliChannelOptions } from "./channel-options-DbFmOvel.js";
131
+ import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-DFXBN0ZY.js";
132
+ import "./plugin-registry-gZUfqcq8.js";
133
+ import { n as resolveCliChannelOptions } from "./channel-options-CwgtYRMM.js";
134
134
  import process$1 from "node:process";
135
135
  import { fileURLToPath } from "node:url";
136
136
  import { Command, InvalidArgumentError } from "commander";
@@ -599,7 +599,7 @@ function loadConfigGuardModule() {
599
599
  return configGuardModulePromise;
600
600
  }
601
601
  function loadPluginRegistryModule() {
602
- pluginRegistryModulePromise ??= import("./plugin-registry-C6E8urZI.js").then((n) => n.n);
602
+ pluginRegistryModulePromise ??= import("./plugin-registry-gZUfqcq8.js").then((n) => n.n);
603
603
  return pluginRegistryModulePromise;
604
604
  }
605
605
  function getRootCommand(command) {
@@ -1,7 +1,7 @@
1
1
  import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel, n as GATEWAY_SERVICE_KIND, p as resolveGatewayWindowsTaskName, r as GATEWAY_SERVICE_MARKER } from "./constants-CVdMnAs9.js";
2
- import { n as execSchtasks } from "./service-DdLDWk4F.js";
2
+ import { n as execSchtasks } from "./service-Bdwg8-MP.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/inspect.ts
7
7
  const EXTRA_MARKERS = [
@@ -76,14 +76,14 @@ function isLegacyLabel(label) {
76
76
  }
77
77
  async function readDirEntries(dir) {
78
78
  try {
79
- return await fs.readdir(dir);
79
+ return await fsPromises.readdir(dir);
80
80
  } catch {
81
81
  return [];
82
82
  }
83
83
  }
84
84
  async function readUtf8File(filePath) {
85
85
  try {
86
- return await fs.readFile(filePath, "utf8");
86
+ return await fsPromises.readFile(filePath, "utf8");
87
87
  } catch {
88
88
  return null;
89
89
  }
@@ -1,8 +1,8 @@
1
- import { A as isNotFoundPathError, j as isPathInside } from "./workspace-D3Bd1Wd-.js";
2
- import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-nXGqHBF8.js";
3
- import { n as resolveSafeBaseDir } from "./path-safety-DDHmx5YW.js";
1
+ import { A as isNotFoundPathError, j as isPathInside } from "./workspace-CZCYGcgM.js";
2
+ import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-BtSQvuQn.js";
3
+ import { n as resolveSafeBaseDir } from "./path-safety-DmE3pKqe.js";
4
4
  import path from "node:path";
5
- import fs from "node:fs/promises";
5
+ import fsPromises from "node:fs/promises";
6
6
  import { createHash } from "node:crypto";
7
7
  import { pipeline } from "node:stream/promises";
8
8
  import { Readable, Transform } from "node:stream";
@@ -78,9 +78,9 @@ function resolveArchiveKind(filePath) {
78
78
  async function resolvePackedRootDir(extractDir) {
79
79
  const direct = path.join(extractDir, "package");
80
80
  try {
81
- if ((await fs.stat(direct)).isDirectory()) return direct;
81
+ if ((await fsPromises.stat(direct)).isDirectory()) return direct;
82
82
  } catch {}
83
- const dirs = (await fs.readdir(extractDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name);
83
+ const dirs = (await fsPromises.readdir(extractDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name);
84
84
  if (dirs.length !== 1) throw new Error(`unexpected archive layout (dirs: ${dirs.join(", ")})`);
85
85
  const onlyDir = dirs[0];
86
86
  if (!onlyDir) throw new Error("unexpected archive layout (no package dir found)");
@@ -150,10 +150,10 @@ function symlinkTraversalError(originalPath) {
150
150
  return new ArchiveSecurityError("destination-symlink-traversal", `${ERROR_ARCHIVE_ENTRY_TRAVERSES_SYMLINK}: ${originalPath}`);
151
151
  }
152
152
  async function assertDestinationDirReady(destDir) {
153
- const stat = await fs.lstat(destDir);
153
+ const stat = await fsPromises.lstat(destDir);
154
154
  if (stat.isSymbolicLink()) throw new ArchiveSecurityError("destination-symlink", "archive destination is a symlink");
155
155
  if (!stat.isDirectory()) throw new ArchiveSecurityError("destination-not-directory", "archive destination is not a directory");
156
- return await fs.realpath(destDir);
156
+ return await fsPromises.realpath(destDir);
157
157
  }
158
158
  async function assertNoSymlinkTraversal(params) {
159
159
  const parts = params.relPath.split("/").filter(Boolean);
@@ -162,7 +162,7 @@ async function assertNoSymlinkTraversal(params) {
162
162
  current = path.join(current, part);
163
163
  let stat;
164
164
  try {
165
- stat = await fs.lstat(current);
165
+ stat = await fsPromises.lstat(current);
166
166
  } catch (err) {
167
167
  if (isNotFoundPathError(err)) continue;
168
168
  throw err;
@@ -173,7 +173,7 @@ async function assertNoSymlinkTraversal(params) {
173
173
  async function assertResolvedInsideDestination(params) {
174
174
  let resolved;
175
175
  try {
176
- resolved = await fs.realpath(params.targetPath);
176
+ resolved = await fsPromises.realpath(params.targetPath);
177
177
  } catch (err) {
178
178
  if (isNotFoundPathError(err)) return;
179
179
  throw err;
@@ -196,12 +196,12 @@ async function openZipOutputFile(params) {
196
196
  async function cleanupPartialRegularFile(filePath) {
197
197
  let stat;
198
198
  try {
199
- stat = await fs.lstat(filePath);
199
+ stat = await fsPromises.lstat(filePath);
200
200
  } catch (err) {
201
201
  if (isNotFoundPathError(err)) return;
202
202
  throw err;
203
203
  }
204
- if (stat.isFile()) await fs.unlink(filePath).catch(() => void 0);
204
+ if (stat.isFile()) await fsPromises.unlink(filePath).catch(() => void 0);
205
205
  }
206
206
  async function readZipEntryStream(entry) {
207
207
  if (typeof entry.nodeStream === "function") return entry.nodeStream();
@@ -229,7 +229,7 @@ async function prepareZipOutputPath(params) {
229
229
  originalPath: params.originalPath
230
230
  });
231
231
  if (params.isDirectory) {
232
- await fs.mkdir(params.outPath, { recursive: true });
232
+ await fsPromises.mkdir(params.outPath, { recursive: true });
233
233
  await assertResolvedInsideDestination({
234
234
  destinationRealDir: params.destinationRealDir,
235
235
  targetPath: params.outPath,
@@ -238,7 +238,7 @@ async function prepareZipOutputPath(params) {
238
238
  return;
239
239
  }
240
240
  const parentDir = path.dirname(params.outPath);
241
- await fs.mkdir(parentDir, { recursive: true });
241
+ await fsPromises.mkdir(parentDir, { recursive: true });
242
242
  await assertResolvedInsideDestination({
243
243
  destinationRealDir: params.destinationRealDir,
244
244
  targetPath: parentDir,
@@ -261,7 +261,7 @@ async function writeZipFileEntry(params) {
261
261
  try {
262
262
  await pipeline(readable, createExtractBudgetTransform({ onChunkBytes: params.budget.addBytes }), writable);
263
263
  } catch (err) {
264
- if (opened.createdForWrite) await fs.rm(opened.openedRealPath, { force: true }).catch(() => void 0);
264
+ if (opened.createdForWrite) await fsPromises.rm(opened.openedRealPath, { force: true }).catch(() => void 0);
265
265
  else await cleanupPartialRegularFile(opened.openedRealPath).catch(() => void 0);
266
266
  throw err;
267
267
  } finally {
@@ -269,14 +269,14 @@ async function writeZipFileEntry(params) {
269
269
  }
270
270
  if (typeof params.entry.unixPermissions === "number") {
271
271
  const mode = params.entry.unixPermissions & 511;
272
- if (mode !== 0) await fs.chmod(opened.openedRealPath, mode).catch(() => void 0);
272
+ if (mode !== 0) await fsPromises.chmod(opened.openedRealPath, mode).catch(() => void 0);
273
273
  }
274
274
  }
275
275
  async function extractZip(params) {
276
276
  const limits = resolveExtractLimits(params.limits);
277
277
  const destinationRealDir = await assertDestinationDirReady(params.destDir);
278
- if ((await fs.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
279
- const buffer = await fs.readFile(params.archivePath);
278
+ if ((await fsPromises.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
279
+ const buffer = await fsPromises.readFile(params.archivePath);
280
280
  const zip = await JSZip.loadAsync(buffer);
281
281
  const entries = Object.values(zip.files);
282
282
  const strip = Math.max(0, Math.floor(params.stripComponents ?? 0));
@@ -349,7 +349,7 @@ async function extractArchive(params) {
349
349
  const label = kind === "zip" ? "extract zip" : "extract tar";
350
350
  if (kind === "tar") {
351
351
  const limits = resolveExtractLimits(params.limits);
352
- if ((await fs.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
352
+ if ((await fsPromises.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
353
353
  const checkTarEntrySafety = createTarEntrySafetyChecker({
354
354
  rootDir: params.destDir,
355
355
  stripComponents: params.stripComponents,
@@ -382,14 +382,14 @@ async function extractArchive(params) {
382
382
  }
383
383
  async function fileExists(filePath) {
384
384
  try {
385
- await fs.stat(filePath);
385
+ await fsPromises.stat(filePath);
386
386
  return true;
387
387
  } catch {
388
388
  return false;
389
389
  }
390
390
  }
391
391
  async function readJsonFile(filePath) {
392
- const raw = await fs.readFile(filePath, "utf-8");
392
+ const raw = await fsPromises.readFile(filePath, "utf-8");
393
393
  return JSON.parse(raw);
394
394
  }
395
395
 
@@ -433,13 +433,13 @@ async function assertCanonicalPathWithinBase(params) {
433
433
  const baseDir = path.resolve(params.baseDir);
434
434
  const candidatePath = path.resolve(params.candidatePath);
435
435
  if (!isPathInside(baseDir, candidatePath)) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
436
- const baseLstat = await fs.lstat(baseDir);
436
+ const baseLstat = await fsPromises.lstat(baseDir);
437
437
  if (!baseLstat.isDirectory() || baseLstat.isSymbolicLink()) throw new Error(`Invalid ${params.boundaryLabel}: base directory must be a real directory`);
438
- const baseRealPath = await fs.realpath(baseDir);
438
+ const baseRealPath = await fsPromises.realpath(baseDir);
439
439
  const validateDirectory = async (dirPath) => {
440
- const dirLstat = await fs.lstat(dirPath);
440
+ const dirLstat = await fsPromises.lstat(dirPath);
441
441
  if (!dirLstat.isDirectory() || dirLstat.isSymbolicLink()) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
442
- if (!isPathInside(baseRealPath, await fs.realpath(dirPath))) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
442
+ if (!isPathInside(baseRealPath, await fsPromises.realpath(dirPath))) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
443
443
  };
444
444
  try {
445
445
  await validateDirectory(candidatePath);
@@ -1,13 +1,13 @@
1
1
  import { t as CONFIG_DIR, v as resolveUserPath } from "./utils-Dwy0Sy1G.js";
2
2
  import { i as isPathInside, r as extensionUsesSkippedScannerPath } from "./legacy-names-D3aIn6ij.js";
3
- import { o as loadPluginManifest, s as resolvePackageExtensionEntries } from "./manifest-registry-D1Y5hoq2.js";
4
- import { S as validateRegistryNpmSpec } from "./skills-CDZAo2Sd.js";
5
- import { c as writeFileFromPathWithinRoot } from "./fs-safe-nXGqHBF8.js";
6
- import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-DBJEsbCp.js";
7
- import { a as installPackageDir, c as resolveTimedInstallModeOptions, d as buildNpmResolutionFields, f as resolveArchiveSourcePath, i as resolveCanonicalInstallTarget, l as resolveExistingInstallPath, n as installFromNpmSpecArchiveWithInstaller, r as ensureInstallTargetAvailable, s as resolveInstallModeOptions, t as finalizeNpmSpecArchiveInstall, u as withExtractedArchiveRoot } from "./npm-pack-install-dRUKCY1x.js";
8
- import { t as scanDirectoryWithSummary } from "./skill-scanner-D7WuF5Sb.js";
3
+ import { o as loadPluginManifest, s as resolvePackageExtensionEntries } from "./manifest-registry-InPIGvqe.js";
4
+ import { S as validateRegistryNpmSpec } from "./skills-cQZqFYZM.js";
5
+ import { c as writeFileFromPathWithinRoot } from "./fs-safe-BtSQvuQn.js";
6
+ import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-CSglDbi-.js";
7
+ import { a as installPackageDir, c as resolveTimedInstallModeOptions, d as buildNpmResolutionFields, f as resolveArchiveSourcePath, i as resolveCanonicalInstallTarget, l as resolveExistingInstallPath, n as installFromNpmSpecArchiveWithInstaller, r as ensureInstallTargetAvailable, s as resolveInstallModeOptions, t as finalizeNpmSpecArchiveInstall, u as withExtractedArchiveRoot } from "./npm-pack-install-BAwUbntz.js";
8
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-DiC9yuOY.js";
9
9
  import path from "node:path";
10
- import fs from "node:fs/promises";
10
+ import fsPromises from "node:fs/promises";
11
11
 
12
12
  //#region src/plugins/install.ts
13
13
  const MISSING_EXTENSIONS_ERROR = "package.json missing openclaw.extensions; update the plugin package to include openclaw.extensions (for example [\"./dist/index.js\"]). See https://docs.openclaw.ai/help/troubleshooting#plugin-install-fails-with-missing-openclaw-extensions";
@@ -237,7 +237,7 @@ async function installPluginFromDir(params) {
237
237
  ok: false,
238
238
  error: `directory not found: ${dirPath}`
239
239
  };
240
- if (!(await fs.stat(dirPath)).isDirectory()) return {
240
+ if (!(await fsPromises.stat(dirPath)).isDirectory()) return {
241
241
  ok: false,
242
242
  error: `not a directory: ${dirPath}`
243
243
  };
@@ -254,7 +254,7 @@ async function installPluginFromFile(params) {
254
254
  error: `file not found: ${filePath}`
255
255
  };
256
256
  const extensionsDir = params.extensionsDir ? resolveUserPath(params.extensionsDir) : path.join(CONFIG_DIR, "extensions");
257
- await fs.mkdir(extensionsDir, { recursive: true });
257
+ await fsPromises.mkdir(extensionsDir, { recursive: true });
258
258
  const pluginId = path.basename(filePath, path.extname(filePath)) || "plugin";
259
259
  const pluginIdError = validatePluginId(pluginId);
260
260
  if (pluginIdError) return {
@@ -1,4 +1,4 @@
1
- import { bt as parseCanonicalIpAddress, mt as isIpv6Address, ut as isCanonicalDottedDecimalIPv4 } from "./auth-profiles-Dgxwr8Sa.js";
1
+ import { bt as parseCanonicalIpAddress, mt as isIpv6Address, ut as isCanonicalDottedDecimalIPv4 } from "./auth-profiles-DNfjfFON.js";
2
2
  import { o as getTailnetHostname } from "./tailscale-DwvUI5Bb.js";
3
3
 
4
4
  //#region src/gateway/gateway-config-prompts.shared.ts
@@ -1,12 +1,12 @@
1
1
  import { a as logVerbose, c as shouldLogVerbose } from "./globals-BASCq52M.js";
2
2
  import { v as resolveUserPath } from "./utils-Dwy0Sy1G.js";
3
- import { _ as maxBytesForKind, a as hasAlphaChannel, c as detectMime, l as extensionForMime, m as kindFromMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-_2-6WZ4r.js";
4
- import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-nXGqHBF8.js";
5
- import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-BZWXCGP2.js";
3
+ import { _ as maxBytesForKind, a as hasAlphaChannel, c as detectMime, l as extensionForMime, m as kindFromMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-Cv4BHtyC.js";
4
+ import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-BtSQvuQn.js";
5
+ import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-Dp9uG2qN.js";
6
6
  import { a as chunkText } from "./chunk-BNLlgymK.js";
7
7
  import { fileURLToPath } from "node:url";
8
8
  import path from "node:path";
9
- import fs from "node:fs/promises";
9
+ import fsPromises from "node:fs/promises";
10
10
  import MarkdownIt from "markdown-it";
11
11
 
12
12
  //#region src/web/media.ts
@@ -37,7 +37,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
37
37
  const roots = localRoots ?? getDefaultLocalRoots();
38
38
  let resolved;
39
39
  try {
40
- resolved = await fs.realpath(mediaPath);
40
+ resolved = await fsPromises.realpath(mediaPath);
41
41
  } catch {
42
42
  resolved = path.resolve(mediaPath);
43
43
  }
@@ -54,7 +54,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
54
54
  for (const root of roots) {
55
55
  let resolvedRoot;
56
56
  try {
57
- resolvedRoot = await fs.realpath(root);
57
+ resolvedRoot = await fsPromises.realpath(root);
58
58
  } catch {
59
59
  resolvedRoot = path.resolve(root);
60
60
  }
@@ -1,4 +1,4 @@
1
- import { Mt as sanitizeTerminalText } from "./auth-profiles-Dgxwr8Sa.js";
1
+ import { Mt as sanitizeTerminalText } from "./auth-profiles-DNfjfFON.js";
2
2
 
3
3
  //#region src/config/issue-format.ts
4
4
  function normalizeConfigIssuePath(path) {
@@ -1,11 +1,11 @@
1
1
  import path from "node:path";
2
- import fs from "node:fs/promises";
2
+ import fsPromises from "node:fs/promises";
3
3
  import { randomUUID } from "node:crypto";
4
4
 
5
5
  //#region src/infra/json-files.ts
6
6
  async function readJsonFile(filePath) {
7
7
  try {
8
- const raw = await fs.readFile(filePath, "utf8");
8
+ const raw = await fsPromises.readFile(filePath, "utf8");
9
9
  return JSON.parse(raw);
10
10
  } catch {
11
11
  return null;
@@ -23,19 +23,19 @@ async function writeTextAtomic(filePath, content, options) {
23
23
  const payload = options?.appendTrailingNewline && !content.endsWith("\n") ? `${content}\n` : content;
24
24
  const mkdirOptions = { recursive: true };
25
25
  if (typeof options?.ensureDirMode === "number") mkdirOptions.mode = options.ensureDirMode;
26
- await fs.mkdir(path.dirname(filePath), mkdirOptions);
26
+ await fsPromises.mkdir(path.dirname(filePath), mkdirOptions);
27
27
  const tmp = `${filePath}.${randomUUID()}.tmp`;
28
28
  try {
29
- await fs.writeFile(tmp, payload, "utf8");
29
+ await fsPromises.writeFile(tmp, payload, "utf8");
30
30
  try {
31
- await fs.chmod(tmp, mode);
31
+ await fsPromises.chmod(tmp, mode);
32
32
  } catch {}
33
- await fs.rename(tmp, filePath);
33
+ await fsPromises.rename(tmp, filePath);
34
34
  try {
35
- await fs.chmod(filePath, mode);
35
+ await fsPromises.chmod(filePath, mode);
36
36
  } catch {}
37
37
  } finally {
38
- await fs.rm(tmp, { force: true }).catch(() => void 0);
38
+ await fsPromises.rm(tmp, { force: true }).catch(() => void 0);
39
39
  }
40
40
  }
41
41
  function createAsyncLock() {
@@ -1,14 +1,14 @@
1
1
  import { d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme } from "./globals-BASCq52M.js";
2
2
  import { d as resolveIsNixMode } from "./paths-D4kNqSu9.js";
3
3
  import { d as defaultRuntime } from "./subsystem-BkPzfTiu.js";
4
- import { M as loadConfig } from "./auth-profiles-Dgxwr8Sa.js";
4
+ import { M as loadConfig } from "./auth-profiles-DNfjfFON.js";
5
5
  import { t as formatCliCommand } from "./command-format-Bu77oTl0.js";
6
6
  import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DfK6Oke5.js";
7
7
  import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel, p as resolveGatewayWindowsTaskName } from "./constants-CVdMnAs9.js";
8
- import { t as isWSL } from "./wsl-KDz114y6.js";
9
- import { r as isSystemdUserServiceAvailable } from "./systemd-DVgFh5bF.js";
10
- import { s as resolveGatewayLogPaths } from "./service-DdLDWk4F.js";
11
- import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-BC7wmmDb.js";
8
+ import { t as isWSL } from "./wsl-CiVud8tt.js";
9
+ import { r as isSystemdUserServiceAvailable } from "./systemd-CTamqs8u.js";
10
+ import { s as resolveGatewayLogPaths } from "./service-Bdwg8-MP.js";
11
+ import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-D4VSR4gB.js";
12
12
  import { t as parsePort } from "./parse-port-Dq63ch6Y.js";
13
13
  import { Writable } from "node:stream";
14
14
 
@@ -12,22 +12,22 @@ import "./internal-hooks-CWkUJTSO.js";
12
12
  import "./registry-D6H0WNV8.js";
13
13
  import "./dock-zn9R9u-t.js";
14
14
  import "./tokens-Bra2OFtc.js";
15
- import { t as runEmbeddedPiAgent } from "./pi-embedded-Dr2npoTx.js";
15
+ import { t as runEmbeddedPiAgent } from "./pi-embedded-CLpkFzke.js";
16
16
  import "./plugins-CWe0lrUU.js";
17
17
  import "./accounts-X3fWVugV.js";
18
18
  import "./bindings-O-6Zk868.js";
19
19
  import "./send-CqFbFIiM.js";
20
20
  import "./send-Cv6lP0Si.js";
21
- import "./deliver-Ed6oj5Hr.js";
21
+ import "./deliver-nnwtUHe4.js";
22
22
  import "./diagnostic-C_D18W4d.js";
23
23
  import "./diagnostic-session-state-DBPrVBk3.js";
24
24
  import "./accounts-DyuYc06u.js";
25
25
  import "./send-BmmFVPIu.js";
26
26
  import "./image-ops-HE_T1HTk.js";
27
- import "./audio-transcription-runner-WwCG9VCF.js";
27
+ import "./audio-transcription-runner-s4TXhBuF.js";
28
28
  import "./pi-model-discovery-D1nlOTjb.js";
29
29
  import "./message-channel-BFpK0lDc.js";
30
- import "./pi-embedded-helpers-DeshJQRZ.js";
30
+ import "./pi-embedded-helpers-CYvB-mUe.js";
31
31
  import "./chrome-Rj4dB_5x.js";
32
32
  import "./frontmatter-D6vByAHn.js";
33
33
  import "./skills-B8SYlKe5.js";
@@ -42,7 +42,7 @@ import "./accounts-BsiDnwS8.js";
42
42
  import "./paths-BFfIB7It.js";
43
43
  import "./tool-images-BJ8nEaNP.js";
44
44
  import "./thinking-BcOnJa2q.js";
45
- import "./image-DcfdUryQ.js";
45
+ import "./image-Cj831azd.js";
46
46
  import "./fetch-D7xM1Q4J.js";
47
47
  import "./fetch-guard-D-NNwY-r.js";
48
48
  import "./api-key-rotation-CGwyMhtp.js";
@@ -1,11 +1,11 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { l as success, n as info, t as danger } from "./globals-BASCq52M.js";
3
3
  import { d as defaultRuntime } from "./subsystem-BkPzfTiu.js";
4
- import { M as loadConfig } from "./auth-profiles-Dgxwr8Sa.js";
4
+ import { M as loadConfig } from "./auth-profiles-DNfjfFON.js";
5
5
  import { t as formatCliCommand } from "./command-format-Bu77oTl0.js";
6
6
  import { r as logInfo } from "./logger-JNFFzTLe.js";
7
- import { i as resolveWhatsAppAccount, l as logoutWeb } from "./accounts-UZBaDk40.js";
8
- import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-D8FUKdiW.js";
7
+ import { i as resolveWhatsAppAccount, l as logoutWeb } from "./accounts-CAdzApsy.js";
8
+ import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-Cjlyc-CV.js";
9
9
  import { DisconnectReason } from "@whiskeysockets/baileys";
10
10
 
11
11
  //#region src/web/login.ts
@@ -2,10 +2,10 @@ import { l as success, n as info, t as danger } from "./globals-BASCq52M.js";
2
2
  import "./paths-D4kNqSu9.js";
3
3
  import { d as defaultRuntime } from "./subsystem-BkPzfTiu.js";
4
4
  import "./boolean-DtWR5bt3.js";
5
- import { M as loadConfig } from "./auth-profiles-Dgxwr8Sa.js";
6
- import "./agent-scope-YUWhK3d-.js";
5
+ import { M as loadConfig } from "./auth-profiles-DNfjfFON.js";
6
+ import "./agent-scope-BSkZamWK.js";
7
7
  import "./utils-Dwy0Sy1G.js";
8
- import "./workspace-D3Bd1Wd-.js";
8
+ import "./workspace-CZCYGcgM.js";
9
9
  import { r as logInfo } from "./logger-JNFFzTLe.js";
10
10
  import "./exec-BxfdQ5hH.js";
11
11
  import "./github-copilot-token-BqbY2oVI.js";
@@ -13,10 +13,10 @@ import "./host-env-security-CJMD0__Z.js";
13
13
  import "./version-CGDNfh5C.js";
14
14
  import "./env-vars-Dw0EwyGP.js";
15
15
  import "./registry-C4Fq5HtN.js";
16
- import "./manifest-registry-D1Y5hoq2.js";
17
- import { _ as webAuthExists, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId } from "./accounts-UZBaDk40.js";
16
+ import "./manifest-registry-InPIGvqe.js";
17
+ import { _ as webAuthExists, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId } from "./accounts-CAdzApsy.js";
18
18
  import "./logging-CcxUDNcI.js";
19
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-D8FUKdiW.js";
19
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-Cjlyc-CV.js";
20
20
  import { randomUUID } from "node:crypto";
21
21
  import { DisconnectReason } from "@whiskeysockets/baileys";
22
22
  import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";