wednesdayai 0.5.1-dev.36 → 0.5.1-dev.38

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 (475) hide show
  1. package/dist/{acp-cli-BCtWMJDr.js → acp-cli-DHAxJufY.js} +11 -11
  2. package/dist/{agent-scope-BXqrHhZ0.js → agent-scope-BZ0wFh-U.js} +21 -21
  3. package/dist/{agent-scope-cTY4-zRz.js → agent-scope-CoIdVzmg.js} +3 -3
  4. package/dist/{agent-turn-enqueue-TStC2eAo.js → agent-turn-enqueue-DZ607FR0.js} +6 -6
  5. package/dist/{agent-turn-execute-B8YL98Ei.js → agent-turn-execute-CGTvDxUE.js} +152 -152
  6. package/dist/{agent-turn-recovery-adapter-DMCiX5id.js → agent-turn-recovery-adapter-bACrcJAQ.js} +3 -3
  7. package/dist/{agent-turn-runner-7LQU6Fut.js → agent-turn-runner-C3LuaN7w.js} +6 -6
  8. package/dist/{agent-turn-runner-JxDS9bU_.js → agent-turn-runner-CiEPY6RO.js} +2 -2
  9. package/dist/{agent-turn-runner-Dqbqrgbg.js → agent-turn-runner-qSzYP-xO.js} +4 -4
  10. package/dist/{agents-DecMea6v.js → agents-C8johSLq.js} +21 -21
  11. package/dist/{agents.config-C9y5L4K8.js → agents.config-BjA0noNV.js} +3 -3
  12. package/dist/{api-key-rotation-BCh_J5f6.js → api-key-rotation-CoKWzuyV.js} +2 -2
  13. package/dist/{api-key-rotation-muerimbF.js → api-key-rotation-D4lnO3Ok.js} +1 -1
  14. package/dist/{audio-preflight-Cxyte-N3.js → audio-preflight-CKFGJslr.js} +3 -3
  15. package/dist/{audio-preflight-C9EHsVrE.js → audio-preflight-Djb8Ia-c.js} +23 -23
  16. package/dist/{audio-preflight-CP5CtdsH.js → audio-preflight-oL1-kPAm.js} +37 -37
  17. package/dist/{audio-transcription-runner-CoyogVcx.js → audio-transcription-runner-B-MEt_yD.js} +1 -1
  18. package/dist/{audio-transcription-runner-Bs4pG29e.js → audio-transcription-runner-BXSN8eBn.js} +27 -27
  19. package/dist/{audio-transcription-runner-DXlkPfwW.js → audio-transcription-runner-DhoPP3LM.js} +25 -25
  20. package/dist/{audit-CEciibi6.js → audit-CKbyr9j7.js} +31 -31
  21. package/dist/{auth-C4aicgu0.js → auth--kj7eWiw.js} +4 -4
  22. package/dist/{auth-choice-CzqQjA2v.js → auth-choice-BOcw0TMX.js} +15 -15
  23. package/dist/{auth-choice-CAZCvJj_.js → auth-choice-RfKE6K30.js} +13 -13
  24. package/dist/{auth-choice.apply-helpers-DWNqsu7M.js → auth-choice.apply-helpers-NHz-APrm.js} +1 -1
  25. package/dist/{auth-token-DEhILWtz.js → auth-token-BdrfJ6LM.js} +2 -2
  26. package/dist/{banner-CI86ZCI2.js → banner-BF4fYjB7.js} +4 -4
  27. package/dist/{bonjour-discovery-24oEkWjB.js → bonjour-discovery-BthO3c3w.js} +3 -3
  28. package/dist/{browser-cli-DhjLTPwH.js → browser-cli-sLIHnZHe.js} +19 -19
  29. package/dist/build-info.json +3 -3
  30. package/dist/bundled/boot-md/handler.js +50 -50
  31. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  32. package/dist/bundled/command-logger/handler.js +2 -2
  33. package/dist/bundled/session-journal/handler.js +50 -50
  34. package/dist/bundled/session-memory/handler.js +50 -50
  35. package/dist/{call-C4ArH9Si.js → call-BY-wbSIJ.js} +12 -12
  36. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  37. package/dist/{channel-account-context-CndjAqFL.js → channel-account-context-DIx7V4k-.js} +7 -7
  38. package/dist/{channel-options-OJHp5c5p.js → channel-options-B10KsMrg.js} +3 -3
  39. package/dist/{channel-selection-JkSKVHJp.js → channel-selection-BxBw-nya.js} +1 -1
  40. package/dist/{channels-cli-Z1jMieGO.js → channels-cli-C4-OqjW1.js} +119 -119
  41. package/dist/{channels-status-issues-KrOAESoD.js → channels-status-issues-DYdDrl6F.js} +1 -1
  42. package/dist/{chat-content-Cafge7N8.js → chat-content-01nUeO9I.js} +3 -3
  43. package/dist/{chat-content-Csm95kDY.js → chat-content-Cp63XvqY.js} +39 -39
  44. package/dist/{chrome-CBtFbbNQ.js → chrome-CMvVElGc.js} +6 -6
  45. package/dist/{plugin-sdk/chrome-DT2r85gp.js → chrome-DW9-DzcL.js} +25 -25
  46. package/dist/{chrome-H5-7mQ4m.js → chrome-kwiyU0Mr.js} +8 -8
  47. package/dist/{chunk-zortZzCP.js → chunk-BRJHaAd6.js} +3 -3
  48. package/dist/{chunk-TNziyyRO.js → chunk-DAmLsltN.js} +3 -3
  49. package/dist/{clack-prompter-BGz_-0Jy.js → clack-prompter-gj894fSZ.js} +5 -5
  50. package/dist/clawbot-cli-Uwda-gwl.js +31 -0
  51. package/dist/cli/daemon-cli.js +1 -1
  52. package/dist/cli-9kY6bXto.js +165 -0
  53. package/dist/{client-x4GnolXm.js → client-DsaKKPz1.js} +4 -4
  54. package/dist/{client-profiles-DeaEz84_.js → client-profiles-HTQt5I_7.js} +4 -4
  55. package/dist/{clipboard-CpnmAh1M.js → clipboard-Dwm1nI9r.js} +1 -1
  56. package/dist/{command-queue-DfL4YmGb.js → command-queue-CRm1AADE.js} +1 -1
  57. package/dist/{command-queue-DqvFUE_T.js → command-queue-D7PleaNJ.js} +1 -1
  58. package/dist/{command-registry-DZhaDT6k.js → command-registry-mp4MxXzC.js} +14 -14
  59. package/dist/{command-secret-targets-CX4FWTx8.js → command-secret-targets-MpNVd6gM.js} +4 -4
  60. package/dist/{commands-DYSm3eNj.js → commands-BSuDoyqC.js} +1 -1
  61. package/dist/{commands-registry-BbHkcgn_.js → commands-registry-CWGturUV.js} +3 -3
  62. package/dist/{commands-registry-Vo5C1XbD.js → commands-registry-D3lOVOa7.js} +2 -2
  63. package/dist/{completion-cli-KeHhpylY.js → completion-cli-D1oQvlFE.js} +16 -16
  64. package/dist/{config-2hPOvE4Z.js → config-D--rwfpd.js} +31 -31
  65. package/dist/{config-cli-D-H6Kr9B.js → config-cli-BXmt8okw.js} +10 -10
  66. package/dist/{config-guard-BvNFubkG.js → config-guard-Cw6VZZIa.js} +4 -4
  67. package/dist/{config-validation-CoY1swln.js → config-validation-ak7uy8sQ.js} +4 -4
  68. package/dist/{configure-DvBl6V3D.js → configure-Jq_Nd0lw.js} +25 -25
  69. package/dist/{control-ui-assets-DvutqvBd.js → control-ui-assets-D7LC9ugV.js} +3 -3
  70. package/dist/{controller-Cph9HEXR.js → controller-C5VfLHxD.js} +1 -1
  71. package/dist/{credentials-DLluMUaA.js → credentials-D2RfV9B5.js} +1 -1
  72. package/dist/{cron-cli-Bx35RD7d.js → cron-cli-BgEowQB-.js} +14 -14
  73. package/dist/{daemon-cli-DlS7PDJU.js → daemon-cli-BVlct7Qh.js} +19 -19
  74. package/dist/{daemon-install-P8cLD1fo.js → daemon-install-BXgUCwNe.js} +10 -10
  75. package/dist/{daemon-install-helpers-YbryCWUm.js → daemon-install-helpers-DN9p53IN.js} +13 -13
  76. package/dist/{delete-agent-sessions-C60hkBQ-.js → delete-agent-sessions-B4HnloYv.js} +1 -1
  77. package/dist/{deliver-x22mTRDq.js → deliver-CgFkiA4Z.js} +1 -1
  78. package/dist/{deliver-BKt_OVTK.js → deliver-CiY0WQtq.js} +28 -28
  79. package/dist/{deliver-gllA2ft3.js → deliver-CjuGs2ZT.js} +12 -12
  80. package/dist/{devices-cli-Dc_tu4bW.js → devices-cli-BCEiHurA.js} +13 -13
  81. package/dist/{diagnostic-8jsvSbYs.js → diagnostic-BSnQ1U_E.js} +3 -3
  82. package/dist/{diagnostic-C2zSaTPq.js → diagnostic-jFNdnXCb.js} +4 -4
  83. package/dist/{diagnostics-CSh5FcKM.js → diagnostics-CbXyRsTN.js} +5 -5
  84. package/dist/{directory-cli-CcMw7ktc.js → directory-cli-CEQEXtQ_.js} +11 -11
  85. package/dist/{dm-policy-shared-DyPD8y1v.js → dm-policy-shared-BHHuPFZr.js} +5 -5
  86. package/dist/{dns-cli-Cxw9US4K.js → dns-cli-CfEIvluV.js} +10 -10
  87. package/dist/{docs-cli-BnnuPnNf.js → docs-cli-BvqOi7vO.js} +9 -9
  88. package/dist/{doctor-completion-B4D14F1Y.js → doctor-completion-Cbb3ZrZO.js} +3 -3
  89. package/dist/{doctor-config-flow-CY4BZ2VP.js → doctor-config-flow-zfYUW8HP.js} +17 -17
  90. package/dist/{enable-PpktglSI.js → enable-B7CD1rL9.js} +2 -2
  91. package/dist/entry.js +4 -4
  92. package/dist/{errors-muW4vMSB.js → errors-CgPgYfWg.js} +1 -1
  93. package/dist/{exec-EGo-G7vR.js → exec-DWOKM6EC.js} +2 -2
  94. package/dist/{exec-approvals-CImDpHtY.js → exec-approvals-CavJfWPl.js} +2 -2
  95. package/dist/{exec-approvals-allowlist-B3_jgDyG.js → exec-approvals-allowlist-CfzuCK0Q.js} +1 -1
  96. package/dist/{exec-approvals-cli-C6AHbPh4.js → exec-approvals-cli-uvLKhEsP.js} +22 -22
  97. package/dist/{exec-safe-bin-runtime-policy-h4hE5cjd.js → exec-safe-bin-runtime-policy-CY75nr5s.js} +2 -2
  98. package/dist/{extension-relay-auth-D49uIEqs.js → extension-relay-auth-CEkGLele.js} +10 -10
  99. package/dist/extensionAPI.js +6 -6
  100. package/dist/{fetch-Ciq99DHJ.js → fetch-BBi5dEoV.js} +8 -8
  101. package/dist/{fetch-B9Tca1cY.js → fetch-BrwJHFZR.js} +1 -1
  102. package/dist/{fetch-BZPOzq9L.js → fetch-CLk1nKmU.js} +5 -5
  103. package/dist/{fetch-guard-DaJwMbcY.js → fetch-guard-BcLYPGi1.js} +2 -2
  104. package/dist/{fetch-guard-laNnWRKl.js → fetch-guard-TJQinE0a.js} +2 -2
  105. package/dist/{frontmatter-BzlMEBkz.js → frontmatter-DQTIIgFI.js} +5 -5
  106. package/dist/{fs-safe-CDfp5e8Q.js → fs-safe-CRbowDkj.js} +26 -26
  107. package/dist/{fs-safe-db4fkk2l.js → fs-safe-sWugzmbo.js} +25 -25
  108. package/dist/{gateway-cli-Y92yCSUC.js → gateway-cli-C4Xm8OKF.js} +197 -197
  109. package/dist/{gateway-rpc-DogQQ77j.js → gateway-rpc-CIkWW5n2.js} +3 -3
  110. package/dist/{globals-BRyHSrWD.js → globals-3lUHnZas.js} +7 -7
  111. package/dist/{gmail-setup-utils-CahF-fra.js → gmail-setup-utils-CBsUX2F0.js} +2 -2
  112. package/dist/{health-CKyXEs4C.js → health-CkjZqvKv.js} +11 -11
  113. package/dist/{health-format-81amZFDs.js → health-format-CCvWwiB3.js} +1 -1
  114. package/dist/{heartbeat-tick-SbqJkBFN.js → heartbeat-tick-BVllHRaT.js} +1 -1
  115. package/dist/{help-format-CUXi0c_1.js → help-format-BQ0UHPHt.js} +1 -1
  116. package/dist/{helpers-CmoGqLct.js → helpers-DpVn76ht.js} +1 -1
  117. package/dist/{hooks-cli-BQlL_eiX.js → hooks-cli-Ced8bfd_.js} +107 -107
  118. package/dist/{hooks-status-BcYtOqKY.js → hooks-status-CxaWMb-v.js} +2 -2
  119. package/dist/{image-ops-BFv9Aw5H.js → image-ops-C0np5f9V.js} +11 -11
  120. package/dist/{inspect-DmQmgYu2.js → inspect-GlutPeaP.js} +4 -4
  121. package/dist/{install-safe-path-BZ4b1O0D.js → install-safe-path-2eEPQsHT.js} +25 -25
  122. package/dist/{installs-D16nEuyM.js → installs-DSwIaqJH.js} +10 -10
  123. package/dist/{ipv4-DV6XbKGD.js → ipv4-BexgmRwg.js} +2 -2
  124. package/dist/{ir-BbGjFYnq.js → ir-BoNkouUO.js} +8 -8
  125. package/dist/{ir-BczXO28b.js → ir-D___VWlp.js} +4 -4
  126. package/dist/{issue-format-OFCh_2sH.js → issue-format-DhAa1_iS.js} +1 -1
  127. package/dist/{jobs-Pj6_tyn5.js → jobs-D8gtzx-n.js} +3 -3
  128. package/dist/{json-files-CNVg1Wi5.js → json-files-CurKd8gy.js} +28 -28
  129. package/dist/{json-files-G3m05NRY.js → json-files-DNNBEygD.js} +7 -7
  130. package/dist/{legacy-names-CRCLZarD.js → legacy-names-D7ywm6_7.js} +1 -1
  131. package/dist/{lifecycle-core-BI6xkw0D.js → lifecycle-core-BP96hEWA.js} +9 -9
  132. package/dist/{links-BRY-h8H0.js → links-CPIBVJ0k.js} +1 -1
  133. package/dist/llm-slug-generator.js +50 -50
  134. package/dist/{log-tail-DeaaUA7g.js → log-tail-DoAwmIXn.js} +7 -7
  135. package/dist/{logging-C7kf6mNZ.js → logging-CjgQOisq.js} +1 -1
  136. package/dist/{logs-cli-DQhMoYgT.js → logs-cli-CIeDTp3g.js} +18 -18
  137. package/dist/{manager-Be7W1lBp.js → manager-B5VtBnfA.js} +14 -14
  138. package/dist/{manager-C5AVBxrT.js → manager-vjvTALqw.js} +9 -9
  139. package/dist/{manager-ywiQQ5nv.js → manager-yAtdyPwQ.js} +18 -18
  140. package/dist/{markdown-tables-i_PaXF56.js → markdown-tables-BwQlrMEW.js} +2 -2
  141. package/dist/{markdown-tables-CmGUH7Wy.js → markdown-tables-DfqPFbkZ.js} +2 -2
  142. package/dist/{memory-cli-vUKqKvFg.js → memory-cli-DajAbkdp.js} +19 -19
  143. package/dist/{model-UbsJmYeh.js → model-A1TZLzNB.js} +2 -2
  144. package/dist/{model-catalog-D1B81cpq.js → model-catalog-BcJh6M8w.js} +4 -4
  145. package/dist/{model-picker-D7AGuTS7.js → model-picker-BYGP4JvH.js} +4 -4
  146. package/dist/{model-selection-BJZFC8fA.js → model-selection-B7FYf8Fo.js} +83 -83
  147. package/dist/{models-wwUL9ZYa.js → models-CaKTiIIq.js} +22 -22
  148. package/dist/{models-cli-DYk-Xwo5.js → models-cli-BA6zwth-.js} +107 -107
  149. package/dist/{models-config-CC5yFmpv.js → models-config-CBX2i56k.js} +7 -7
  150. package/dist/{node-cli-B7Zt1yCl.js → node-cli-BF1J4vkA.js} +43 -43
  151. package/dist/{node-command-policy-C-htkgT_.js → node-command-policy-S97zDTm2.js} +1 -1
  152. package/dist/{node-service-Ch4eBsUZ.js → node-service-Drxz78wf.js} +1 -1
  153. package/dist/{nodes-cli-CEm6ENzh.js → nodes-cli-BzNwotgj.js} +23 -23
  154. package/dist/{nodes-screen-DO6BNCQ6.js → nodes-screen-Brwiveoh.js} +8 -8
  155. package/dist/{note-Dq9MhE7Z.js → note-D-rFqUUL.js} +2 -2
  156. package/dist/{npm-pack-install-B__b0nDK.js → npm-pack-install-BwupN_XV.js} +23 -23
  157. package/dist/{npm-resolution-2lzpgd44.js → npm-resolution-DoQ0TbSm.js} +5 -5
  158. package/dist/{oauth-tls-preflight-CzOK4dkk.js → oauth-tls-preflight-CU1ceznS.js} +1 -1
  159. package/dist/{onboard-channels-CDVGqsGH.js → onboard-channels-aStIhqMG.js} +24 -24
  160. package/dist/{onboard-custom-BJe8lC0m.js → onboard-custom-CF-Qyb3Y.js} +4 -4
  161. package/dist/{onboard-helpers-ByS2aPrW.js → onboard-helpers-Bz91Pf6D.js} +13 -13
  162. package/dist/{onboard-hooks-ColglUdK.js → onboard-hooks-CP5ICg3d.js} +6 -6
  163. package/dist/{onboard-remote-CATwWYLS.js → onboard-remote-DkBLTgQh.js} +5 -5
  164. package/dist/{onboard-skills-CmLqdEyd.js → onboard-skills-BdbiUQFJ.js} +4 -4
  165. package/dist/{onboard-_LkcuZt4.js → onboard-uXr7A8A7.js} +11 -11
  166. package/dist/{onboarding-Z7sHNPIN.js → onboarding-CHVuwQW-.js} +18 -18
  167. package/dist/{onboarding.finalize-B2oQRJVj.js → onboarding.finalize-D4_usXNq.js} +115 -115
  168. package/dist/{onboarding.gateway-config-isEZPjpx.js → onboarding.gateway-config-DKqp9L2Q.js} +21 -21
  169. package/dist/{onboarding.secret-input--lcWBs-r.js → onboarding.secret-input-Bly8kI9z.js} +1 -1
  170. package/dist/{openai-model-default-BHLjGfhz.js → openai-model-default-hQ_Lz4xl.js} +2 -2
  171. package/dist/{openclaw-root-B6Tk0FH8.js → openclaw-root-CvJ5CJns.js} +2 -2
  172. package/dist/{operator-commands-WFKXbJHh.js → operator-commands-1PttwYpR.js} +6 -6
  173. package/dist/{outbound-attachment-BXAhY7Q6.js → outbound-attachment-BJq1brbB.js} +2 -2
  174. package/dist/{outbound-attachment-BbJWA7EA.js → outbound-attachment-DK190u8V.js} +2 -2
  175. package/dist/{outbound-message-hooks-_I696mNI.js → outbound-message-hooks-BvKzCtP_.js} +5 -5
  176. package/dist/{outbound-message-hooks-CjfNIFcN.js → outbound-message-hooks-Dl2zci3u.js} +5 -5
  177. package/dist/{pairing-cli-dhBxo6Vw.js → pairing-cli-CjvOW_Qy.js} +10 -10
  178. package/dist/{pairing-labels-BDuNTDsa.js → pairing-labels-BSl8PmyI.js} +1 -1
  179. package/dist/{pairing-store-ZXK7b5SG.js → pairing-store-BbBjVYYR.js} +4 -4
  180. package/dist/{path-alias-guards-L34PKmdW.js → path-alias-guards-DhwCAYKX.js} +3 -3
  181. package/dist/{path-alias-guards-BV6CR8H3.js → path-alias-guards-nWrE5acE.js} +1 -1
  182. package/dist/{path-safety-DHLkivTI.js → path-safety-Dibh-nnA.js} +1 -1
  183. package/dist/{pi-embedded-D6Ti_RiY.js → pi-embedded-1pY41iFz.js} +267 -267
  184. package/dist/{pi-embedded-BzjQS2tl.js → pi-embedded-BAKd4NmP.js} +18 -18
  185. package/dist/{pi-embedded-helpers--xcGBKr8.js → pi-embedded-helpers-BbOp_MHS.js} +6 -6
  186. package/dist/{pi-embedded-recovery-adapter-Cct1moq2.js → pi-embedded-recovery-adapter-mI-4XOPi.js} +37 -37
  187. package/dist/{pi-embedded-utils-Bqo7G8Hn.js → pi-embedded-utils-Df8_gFa-.js} +2 -2
  188. package/dist/{pi-model-discovery-Rjo2hv2p.js → pi-model-discovery-BWXqga5N.js} +1 -1
  189. package/dist/{pi-model-discovery-PH-bhX7g.js → pi-model-discovery-CusLASy5.js} +7 -7
  190. package/dist/{pid-alive-TVJ4mVal.js → pid-alive-DIe5jzmE.js} +1 -1
  191. package/dist/{plugin-auto-enable-CbW6trDK.js → plugin-auto-enable-BtVVoq7k.js} +2 -2
  192. package/dist/{plugin-owned-work-recovery-adapter-CStAW3lt.js → plugin-owned-work-recovery-adapter-Civ7pCIM.js} +7 -7
  193. package/dist/{plugin-registry-BPGjlX1-.js → plugin-registry-B9Gdebb5.js} +4 -4
  194. package/dist/plugin-sdk/{agent-scope-Brtnf-qo.js → agent-scope-DsdTj4Lw.js} +1 -1
  195. package/dist/plugin-sdk/agent-turn-execute-B7OZd3j0.js +53 -0
  196. package/dist/plugin-sdk/{agent-turn-runner-BoyCp6a7.js → agent-turn-runner-DFx8RFgs.js} +7 -7
  197. package/dist/plugin-sdk/{api-key-rotation-rNPxdoXy.js → api-key-rotation-DLFDIQvI.js} +2 -2
  198. package/dist/plugin-sdk/{audio-preflight-7GBWBtz1.js → audio-preflight-BuvLfTSs.js} +18 -18
  199. package/dist/plugin-sdk/{audio-transcription-runner-Dh6ZjtWU.js → audio-transcription-runner-DVeHis5y.js} +10 -10
  200. package/dist/plugin-sdk/{auth-profiles-C9WuWuhF.js → auth-profiles-DWv_drRN.js} +3 -3
  201. package/dist/plugin-sdk/{chat-content-CLCeI_Qk.js → chat-content-CpswkXNb.js} +14 -14
  202. package/dist/{chrome-D-DfD0Cv.js → plugin-sdk/chrome-3OYkv183.js} +7 -7
  203. package/dist/plugin-sdk/{chunk-cBcZnYwM.js → chunk-BzqRmzIt.js} +4 -4
  204. package/dist/plugin-sdk/{command-queue-7UljN6ld.js → command-queue-CN4gqnUj.js} +2 -2
  205. package/dist/plugin-sdk/{commands-registry-D2pMVn_S.js → commands-registry-Bdwwpat-.js} +3 -3
  206. package/dist/plugin-sdk/deliver-B5KEZCZc.js +30 -0
  207. package/dist/plugin-sdk/{deliver-Bg_r4acr.js → deliver-hk3L8q2Q.js} +13 -13
  208. package/dist/plugin-sdk/{diagnostic-Cr-CoLa3.js → diagnostic-CEwjaZ_7.js} +5 -5
  209. package/dist/plugin-sdk/{diagnostic-session-state-DX8FyVQw.js → diagnostic-session-state-BzWdoxLm.js} +1 -1
  210. package/dist/plugin-sdk/{errors-D358LwuI.js → errors-CsbG_v7K.js} +1 -1
  211. package/dist/plugin-sdk/{fetch-Be4fqzal.js → fetch-DBno66KN.js} +1 -1
  212. package/dist/plugin-sdk/{fetch-ZGQKpqWb.js → fetch-WGWEe3le.js} +6 -6
  213. package/dist/plugin-sdk/{fetch-guard-BKTJU-gg.js → fetch-guard-A8GwiDhx.js} +2 -2
  214. package/dist/plugin-sdk/{fs-safe-B3AzvZ4l.js → fs-safe-1aioFv3e.js} +3 -3
  215. package/dist/plugin-sdk/{inbound-context-BtSlo1sB.js → inbound-context-Bxf_1vgP.js} +1 -1
  216. package/dist/plugin-sdk/{ir-B4yx0AL3.js → ir-D_W-MQYl.js} +4 -4
  217. package/dist/plugin-sdk/{json-files-B__As2nb.js → json-files-BnqU_vp9.js} +6 -6
  218. package/dist/plugin-sdk/manager-B_wRtuCz.js +14 -0
  219. package/dist/plugin-sdk/{manager-BINTVC6-.js → manager-UVkpOLce.js} +7 -7
  220. package/dist/plugin-sdk/{markdown-tables-DFUNbiGy.js → markdown-tables-DN5kZ7HX.js} +3 -3
  221. package/dist/plugin-sdk/{monitor-Cv-Hb6Vg.js → monitor-1WWBQbrJ.js} +88 -88
  222. package/dist/plugin-sdk/{outbound-attachment-DRUsY_P3.js → outbound-attachment-D2FAxmw-.js} +2 -2
  223. package/dist/plugin-sdk/{path-alias-guards-CRi90QdZ.js → path-alias-guards-BaV88b3G.js} +1 -1
  224. package/dist/plugin-sdk/{pi-model-discovery-DpiYKs_-.js → pi-model-discovery-eQO5jtHE.js} +2 -2
  225. package/dist/plugin-sdk/provider-dispatcher-CIuwPWhR.js +53 -0
  226. package/dist/plugin-sdk/{proxy-env-CAAaD_vE.js → proxy-env-iizeE-yn.js} +1 -1
  227. package/dist/plugin-sdk/{pw-ai-DF_oDAcU.js → pw-ai-RkUVP2CG.js} +9 -9
  228. package/dist/plugin-sdk/{qmd-manager-DxXmjvMl.js → qmd-manager-DtWRq-3E.js} +8 -8
  229. package/dist/plugin-sdk/{qmd-scope-mVSXoI81.js → qmd-scope-hKKHM7ur.js} +1 -1
  230. package/dist/plugin-sdk/{query-expansion-Bu7AUpJ5.js → query-expansion-BF9IjXa5.js} +2 -2
  231. package/dist/plugin-sdk/{recorder-BsamU-hC.js → recorder-EjxEn6z5.js} +2 -2
  232. package/dist/plugin-sdk/{redact-Lv3jVFd_.js → redact-CuefNlXl.js} +1 -1
  233. package/dist/plugin-sdk/{registry-CSJhdmW7.js → registry-B-PTnKXn.js} +6 -6
  234. package/dist/plugin-sdk/replies-BWD2mqj4.js +24 -0
  235. package/dist/plugin-sdk/{replies-CFNkUmLR.js → replies-CgjY5QeJ.js} +5 -5
  236. package/dist/plugin-sdk/{reply-prefix-DNyziUbc.js → reply-prefix-B_4F5prZ.js} +2 -2
  237. package/dist/plugin-sdk/{resolve-route-CBCLd9yp.js → resolve-route-BHhFfPZt.js} +4 -4
  238. package/dist/plugin-sdk/{send-b1bp0W-q.js → send-BCEdvryY.js} +8 -8
  239. package/dist/plugin-sdk/{send-kEZiGg40.js → send-BJGiPB1S.js} +8 -8
  240. package/dist/plugin-sdk/send-C6pt4yW6.js +21 -0
  241. package/dist/plugin-sdk/{send-DCt-5Eqo.js → send-CFy9VJtY.js} +6 -6
  242. package/dist/plugin-sdk/{send-Dx8aO_vF.js → send-CIwbHo3j.js} +16 -16
  243. package/dist/plugin-sdk/{send-1zs5bgjT.js → send-Ct68W7Yb.js} +7 -7
  244. package/dist/plugin-sdk/send-MGm8Xvbs.js +22 -0
  245. package/dist/plugin-sdk/send-WNRxCcA_.js +20 -0
  246. package/dist/plugin-sdk/{session-context-B4geQCsj.js → session-context-CMK0kc4L.js} +4 -4
  247. package/dist/plugin-sdk/{session-meta-cugffpHm.js → session-meta-CnQldSIv.js} +2 -2
  248. package/dist/plugin-sdk/{sessions-Dx1DxBM0.js → sessions-Bi3Stvmk.js} +4 -4
  249. package/dist/plugin-sdk/{skill-commands-BIbJBws5.js → skill-commands-B-RjcEg8.js} +5 -5
  250. package/dist/plugin-sdk/{store-CP7sxsrB.js → store-BS62UMsC.js} +2 -2
  251. package/dist/plugin-sdk/subagent-registry-CWWUdAWI.js +53 -0
  252. package/dist/plugin-sdk/{subsystem-BRH2eiRx.js → subsystem-DbM6sYsb.js} +4 -4
  253. package/dist/plugin-sdk/{tables-C-7zslmS.js → tables-rlu-3LoD.js} +1 -1
  254. package/dist/plugin-sdk/testing.js +46 -46
  255. package/dist/plugin-sdk/{tokens-DEiV8tMG.js → tokens-DnxgKy4h.js} +1 -1
  256. package/dist/plugin-sdk/{tool-loop-detection-DnYfACQq.js → tool-loop-detection-CvzazEft.js} +1 -1
  257. package/dist/plugin-sdk/{user-run-recording-Cx-DPR7Y.js → user-run-recording-CuHcEoPI.js} +3 -3
  258. package/dist/{plugins-cli-B3yDmnzB.js → plugins-cli-xEbYlD1N.js} +110 -110
  259. package/dist/{ports-CbxaZ4JR.js → ports-DkQ0JgDq.js} +2 -2
  260. package/dist/{ports-CbjXbpjb.js → ports-R8I-Rd2p.js} +3 -3
  261. package/dist/{program-CiwRqh1J.js → program-Rzncx3aZ.js} +106 -106
  262. package/dist/{progress-80iGSJGv.js → progress-DGJz2cvq.js} +2 -2
  263. package/dist/{prompt-select-styled-Ds_J2iyU.js → prompt-select-styled-BeWIYKDx.js} +48 -48
  264. package/dist/{prompt-style-DUK2H9pQ.js → prompt-style-CevZQqqE.js} +1 -1
  265. package/dist/{provider-auth-helpers-C20ZUFM2.js → provider-auth-helpers-CLBGTBnJ.js} +6 -6
  266. package/dist/{proxy-env-DXcKRnns.js → proxy-env-DrmTb0QW.js} +1 -1
  267. package/dist/{proxy-env-BcMrDxNo.js → proxy-env-t-re7bCo.js} +1 -1
  268. package/dist/{push-apns-DspwiDEu.js → push-apns-CcZhsDRS.js} +10 -10
  269. package/dist/{pw-ai-ByUzz5o2.js → pw-ai-6cOpjyxA.js} +13 -13
  270. package/dist/{pw-ai-qlENNDHC.js → pw-ai-CPIjXEgJ.js} +1 -1
  271. package/dist/{pw-ai-BH-VHtsR.js → pw-ai-h0Uxwko3.js} +18 -18
  272. package/dist/{qmd-manager-CPPURYfg.js → qmd-manager-BYC9bX-E.js} +12 -12
  273. package/dist/{qmd-manager-JUjGk3hv.js → qmd-manager-DR95ckLZ.js} +25 -25
  274. package/dist/{qmd-scope-dd_YbPG-.js → qmd-scope-D6tMcgqR.js} +1 -1
  275. package/dist/{qmd-scope-bewl8Eiz.js → qmd-scope-DGZXz9jW.js} +1 -1
  276. package/dist/{qr-cli-Bk-iHfQo.js → qr-cli-K0UQq59w.js} +9 -9
  277. package/dist/{query-expansion-0S2l-J2-.js → query-expansion-CnQI0IeV.js} +13 -13
  278. package/dist/{query-expansion-BzoTldVy.js → query-expansion-DtX8mWw8.js} +10 -10
  279. package/dist/{reconcile-bundled-DM4QcNVH.js → reconcile-bundled-V0NDG76P.js} +3 -3
  280. package/dist/{recorder-CrrhLZt5.js → recorder-B7dhxQ62.js} +2 -2
  281. package/dist/{recorder-CLU0QuFV.js → recorder-C5MQyLQu.js} +2 -2
  282. package/dist/{recovery-adapter-CjmLDOyV.js → recovery-adapter-BRrpxylo.js} +2 -2
  283. package/dist/{recovery-adapter-ye4l6Gn4.js → recovery-adapter-C1kHnt9q.js} +3 -3
  284. package/dist/{recovery-adapter-ipXNpK0H.js → recovery-adapter-D14MlfbA.js} +7 -7
  285. package/dist/{recovery-prompt-Bmmt8OXc.js → recovery-prompt-BEH6XjKs.js} +1 -1
  286. package/dist/{redact-BkE4uRXu.js → redact-CysJDryP.js} +1 -1
  287. package/dist/{redact-snapshot-46g6fP3z.js → redact-snapshot-Dr2xSc0p.js} +2 -2
  288. package/dist/{register.agent-BAgBhHHu.js → register.agent-C5VjXiOa.js} +121 -121
  289. package/dist/register.configure-BrZHLfY5.js +169 -0
  290. package/dist/{register.maintenance-DZSlUCjt.js → register.maintenance-CRkCaoyK.js} +129 -129
  291. package/dist/{register.message-CmwWkv0S.js → register.message-T_8nxRk5.js} +100 -100
  292. package/dist/{register.onboard-D2FYzcez.js → register.onboard-V55Y2Ubu.js} +26 -26
  293. package/dist/{register.setup-Dviebdoo.js → register.setup-CADjhLHK.js} +29 -29
  294. package/dist/{register.status-health-sessions-ShjYv_Uh.js → register.status-health-sessions-DdVD0IOM.js} +119 -119
  295. package/dist/{register.subclis-DJxVoTQj.js → register.subclis-xNwfLrGG.js} +34 -34
  296. package/dist/{replies-j6q2EArA.js → replies-CP8xbTSR.js} +5 -5
  297. package/dist/{replies-DxPPKLeJ.js → replies-t1yaLy4q.js} +5 -5
  298. package/dist/{reply-directives-B_4oA3B0.js → reply-directives-De0PRN70.js} +2 -2
  299. package/dist/{reply-prefix-KAeJzNvt.js → reply-prefix-B0ufPLD2.js} +1 -1
  300. package/dist/{reply-prefix-BCu_i91I.js → reply-prefix-C7r81KLS.js} +1 -1
  301. package/dist/{reset-CDG1YZWx.js → reset-DxYrusrF.js} +1 -1
  302. package/dist/{resolve-route-WUZ7lH6L.js → resolve-route-BvD1w4_v.js} +4 -4
  303. package/dist/{resolve-route-IeN1DK4w.js → resolve-route-CZXzecu6.js} +5 -5
  304. package/dist/{rpc-C7VnW-Aw.js → rpc-Bg0RuGsL.js} +3 -3
  305. package/dist/{run-main-CnNc7DLd.js → run-main-C-PQ_TDh.js} +119 -119
  306. package/dist/{runs-0PYx5aDJ.js → runs-DzlzC2_b.js} +7 -7
  307. package/dist/{runtime-B1z-tYeF.js → runtime-DxtfUxa-.js} +4 -4
  308. package/dist/{runtime-config-Dm2RpLJ7.js → runtime-config-DZ4anlFD.js} +1 -1
  309. package/dist/{runtime-config-collectors-Chqse-1v.js → runtime-config-collectors-rhm6uhD8.js} +1 -1
  310. package/dist/{runtime-guard-BGWl62dI.js → runtime-guard-7e_ZRPFH.js} +1 -1
  311. package/dist/{sandbox-DSs8pONL.js → sandbox-BcT2OU_g.js} +21 -21
  312. package/dist/{sandbox-cli-X1PaKHUO.js → sandbox-cli-Cghszshw.js} +33 -33
  313. package/dist/{secrets-cli-D1DpG6VH.js → secrets-cli-2cyObDEq.js} +16 -16
  314. package/dist/{security-cli-ZmvFe4nX.js → security-cli-y5Ln-Bce.js} +47 -47
  315. package/dist/{send-DizMtGn_.js → send-36dNynVs.js} +7 -7
  316. package/dist/{send-lY0a6iA2.js → send-4WdiWuFu.js} +8 -8
  317. package/dist/{send-CFG2EYja.js → send-BZv91SjC.js} +6 -6
  318. package/dist/{send-0JKFG0wR.js → send-CFvOM8pI.js} +6 -6
  319. package/dist/{send-BPuhxPvx.js → send-CVaGAWEm.js} +6 -6
  320. package/dist/{send-80rMjd6V.js → send-CjR30q4U.js} +8 -8
  321. package/dist/{send-S06NYAWt.js → send-D1V_gt-x.js} +13 -13
  322. package/dist/{send-D1aXT71a.js → send-bmlVFiBl.js} +7 -7
  323. package/dist/{server-B_-KxUi3.js → server-DvHjKPLj.js} +24 -24
  324. package/dist/{server-context-D_ZTBjWX.js → server-context-DXaMid9A.js} +12 -12
  325. package/dist/{server-lifecycle-CAXoy64R.js → server-lifecycle-BHXiQH6m.js} +3 -3
  326. package/dist/{server-middleware-BxKu1j_s.js → server-middleware-CaVc3KiU.js} +1 -1
  327. package/dist/{server-node-events-3XEsy92y.js → server-node-events-D_Ue3RLX.js} +100 -100
  328. package/dist/{service-DMkBvr4B.js → service-DoOh34VG.js} +15 -15
  329. package/dist/{session-consumer-agents-CBqraSzI.js → session-consumer-agents-Zo97FAeD.js} +1 -1
  330. package/dist/{session-consumer-claim-sweep-AZ5o8Cu-.js → session-consumer-claim-sweep-xufX6DVl.js} +9 -9
  331. package/dist/{session-key-BRw3GFxY.js → session-key-Cr27HfX5.js} +1 -1
  332. package/dist/{session-meta-BjRAI6ON.js → session-meta-BeqTuIFU.js} +1 -1
  333. package/dist/{session-meta-WRN3ZcJ5.js → session-meta-wyuckoIK.js} +1 -1
  334. package/dist/{session-storage-7cXTEQfZ.js → session-storage-CwLPwLoF.js} +22 -22
  335. package/dist/{session-storage-owner-BLPjnobT.js → session-storage-owner-D0BMYGR6.js} +53 -53
  336. package/dist/{session-store-targets-i0Ss9Rbv.js → session-store-targets-hup1YSx3.js} +3 -3
  337. package/dist/{session-utils-Btoq903T.js → session-utils-BsJs6MoS.js} +9 -9
  338. package/dist/{sessions-B6iaKddN.js → sessions-BjSGNjb0.js} +5 -5
  339. package/dist/{sessions-Dp4oQDh2.js → sessions-CXVIRQ7I.js} +6 -6
  340. package/dist/{sessions-DPV-OS7q.js → sessions-D5-WnU1c.js} +5 -5
  341. package/dist/{sessions-Bi3UGKUO.js → sessions-DQ3diYco.js} +17 -17
  342. package/dist/{sessions-claims-status-Dhd9Pthy.js → sessions-claims-status-BIYvHBRD.js} +11 -11
  343. package/dist/{sessions-maintenance-core-C2cCpUiU.js → sessions-maintenance-core-CmawGRLz.js} +8 -8
  344. package/dist/{setup-helpers-zG3DfqLd.js → setup-helpers-BQ-rg8A3.js} +1 -1
  345. package/dist/{shared-B32sbGiP.js → shared-CN5xidM6.js} +4 -4
  346. package/dist/{shared-COhRUP1S.js → shared-DCN12ugV.js} +2 -2
  347. package/dist/{skill-commands-BG0ravVA.js → skill-commands-CcrQquVr.js} +8 -8
  348. package/dist/{skill-commands-BktltILY.js → skill-commands-DKmd3uhq.js} +7 -7
  349. package/dist/{skill-scanner-ubz0B8p_.js → skill-scanner-YQwX3yC-.js} +7 -7
  350. package/dist/{skills-cli-DE9fB_sx.js → skills-cli-mRBgNuUB.js} +9 -9
  351. package/dist/{skills-install-Cu_sfOVw.js → skills-install-B5X0Cyhn.js} +9 -9
  352. package/dist/{skills-CWQC3bQU.js → skills-rshN3U9G.js} +6 -6
  353. package/dist/{skills-status--U7Dyunf.js → skills-status-C40ecVhY.js} +3 -3
  354. package/dist/{status-CCetLhy5.js → status-D-NG9OFK.js} +49 -49
  355. package/dist/{status.update-CHNp32m-.js → status.update-BjR63JWs.js} +2 -2
  356. package/dist/{storage-config-CS0-6wW6.js → storage-config-BJj76p6F.js} +4 -4
  357. package/dist/{store-ccSeveJ0.js → store-BKtDaCRf.js} +7 -7
  358. package/dist/{store-BXWb__DD.js → store-DniD8E6a.js} +7 -7
  359. package/dist/{subsystem-BNf8H-Zm.js → subsystem-xTuYkxuQ.js} +1 -1
  360. package/dist/{supervisor-RBm1KDN1.js → supervisor-CbcownOj.js} +2 -2
  361. package/dist/{system-cli-YRe6nHya.js → system-cli-CqiLRr8j.js} +13 -13
  362. package/dist/{system-run-command-CtzUrDfp.js → system-run-command-DmwSJZGF.js} +2 -2
  363. package/dist/{systemd-CyRDQg6V.js → systemd-DCrSOh9E.js} +11 -11
  364. package/dist/{systemd-hints-CPEnXHmj.js → systemd-hints-Dc0OitcD.js} +9 -9
  365. package/dist/{systemd-linger-AXTvmw5z.js → systemd-linger-j9L7X6dA.js} +2 -2
  366. package/dist/{table-BRTxbR4E.js → table-Buk61GwP.js} +2 -2
  367. package/dist/{tables-BhzelQWA.js → tables-B62PgWcr.js} +1 -1
  368. package/dist/{tables-CBpS5G91.js → tables-BbmkAuhA.js} +1 -1
  369. package/dist/{tailnet-CBZAvwAf.js → tailnet-B5JdDATD.js} +1 -1
  370. package/dist/{tailscale-IMHmOQwv.js → tailscale-BiCf3X3Y.js} +2 -2
  371. package/dist/{task-pipeline-boot-BqE_GrmQ.js → task-pipeline-boot-DgTg-CLO.js} +100 -100
  372. package/dist/{task-runlog-retention-v6UWCQjX.js → task-runlog-retention-Cq2OgFdi.js} +5 -5
  373. package/dist/{tasks-B4CFmiA3.js → tasks-B8WGpUhG.js} +11 -11
  374. package/dist/{tokens-Q7TMdIpT.js → tokens-C2ll8wSq.js} +1 -1
  375. package/dist/{tokens-B0SYKifB.js → tokens-D5eYPE3_.js} +1 -1
  376. package/dist/{tool-display-CjfVgl4p.js → tool-display-BuSkjyOX.js} +1 -1
  377. package/dist/{tool-loop-detection-CVIDnpv_.js → tool-loop-detection-B0Jj6y2H.js} +2 -2
  378. package/dist/{tool-loop-detection--ScllGh1.js → tool-loop-detection-DcldeAQA.js} +2 -2
  379. package/dist/{trash-DhfDhVld.js → trash-D8OVe313.js} +3 -3
  380. package/dist/{tui-BtDuMK-Q.js → tui-Bbgsj5cD.js} +9 -9
  381. package/dist/{tui-cli-AAdDdzBF.js → tui-cli-BB3hPnig.js} +35 -35
  382. package/dist/{update-MKP9QOUt.js → update-OC3VeAt9.js} +3 -3
  383. package/dist/{update-cli-BSA_q7RE.js → update-cli-DqM1XIf_.js} +139 -139
  384. package/dist/{update-runner-BMqGHvjP.js → update-runner-CtQqJO0C.js} +18 -18
  385. package/dist/{user-run-recording-DNsWtMOn.js → user-run-recording-COpooN64.js} +2 -2
  386. package/dist/{user-run-recording-Cw29-tG1.js → user-run-recording-DrY68KAf.js} +2 -2
  387. package/dist/{validation-cli-VaCU6by-.js → validation-cli-CdS1nA-4.js} +99 -99
  388. package/dist/{web-cli-Dp96CkEW.js → web-cli-DvWcPGwe.js} +3 -3
  389. package/dist/{webhooks-cli--2FyIwfR.js → webhooks-cli-VMJNe3gx.js} +10 -10
  390. package/dist/{widearea-dns-BhBfoR1S.js → widearea-dns-CvnQrk1m.js} +1 -1
  391. package/dist/{with-timeout-BbJQtRIl.js → with-timeout-DG_Ef3S1.js} +6 -6
  392. package/dist/{workspace-C4JU6kgP.js → workspace-C8NxbJFT.js} +2 -2
  393. package/dist/{workspace-dirs-DBNKIvKX.js → workspace-dirs-B1dGJTd4.js} +1 -1
  394. package/dist/{workspace-D8z8s1Xz.js → workspace-xnzx7wEV.js} +26 -26
  395. package/dist/{ws-BafnkIRl.js → ws-Dnz-ugxp.js} +2 -2
  396. package/dist/{wsl-CG9o9v6x.js → wsl-Bm8bcioC.js} +2 -2
  397. package/extensions/acpx/package.json +1 -1
  398. package/extensions/anthropic/package.json +1 -1
  399. package/extensions/bifrost/package.json +1 -1
  400. package/extensions/bluebubbles/package.json +1 -1
  401. package/extensions/copilot-proxy/package.json +1 -1
  402. package/extensions/deepgram/package.json +1 -1
  403. package/extensions/deepinfra/package.json +1 -1
  404. package/extensions/diagnostics-otel/package.json +1 -1
  405. package/extensions/diffs/package.json +1 -1
  406. package/extensions/discord/package.json +1 -1
  407. package/extensions/dream-cycle/package.json +1 -1
  408. package/extensions/elevenlabs/package.json +1 -1
  409. package/extensions/feishu/package.json +1 -1
  410. package/extensions/gemini-search/package.json +1 -1
  411. package/extensions/google/package.json +1 -1
  412. package/extensions/google-gemini-cli-auth/package.json +1 -1
  413. package/extensions/googlechat/package.json +1 -1
  414. package/extensions/grok-search/package.json +1 -1
  415. package/extensions/groq/package.json +1 -1
  416. package/extensions/imessage/package.json +1 -1
  417. package/extensions/irc/package.json +1 -1
  418. package/extensions/kimi-search/package.json +1 -1
  419. package/extensions/kokoro/package.json +1 -1
  420. package/extensions/learning-core/package.json +1 -1
  421. package/extensions/line/package.json +1 -1
  422. package/extensions/llm-task/package.json +1 -1
  423. package/extensions/lobster/package.json +1 -1
  424. package/extensions/matrix/CHANGELOG.md +1 -1
  425. package/extensions/matrix/package.json +1 -1
  426. package/extensions/mattermost/package.json +1 -1
  427. package/extensions/memory-core/package.json +1 -1
  428. package/extensions/memory-lancedb/package.json +1 -1
  429. package/extensions/minimax/package.json +1 -1
  430. package/extensions/minimax-portal-auth/package.json +1 -1
  431. package/extensions/mistral/package.json +1 -1
  432. package/extensions/moonshot/package.json +1 -1
  433. package/extensions/msteams/CHANGELOG.md +1 -1
  434. package/extensions/msteams/package.json +1 -1
  435. package/extensions/nextcloud-talk/package.json +1 -1
  436. package/extensions/nostr/CHANGELOG.md +1 -1
  437. package/extensions/nostr/package.json +1 -1
  438. package/extensions/open-prose/package.json +1 -1
  439. package/extensions/openai/package.json +1 -1
  440. package/extensions/openai-realtime/package.json +1 -1
  441. package/extensions/openrouter/package.json +1 -1
  442. package/extensions/perplexity-search/package.json +1 -1
  443. package/extensions/searxng-search/package.json +1 -1
  444. package/extensions/signal/package.json +1 -1
  445. package/extensions/slack/package.json +1 -1
  446. package/extensions/synology-chat/package.json +1 -1
  447. package/extensions/telegram/package.json +1 -1
  448. package/extensions/tlon/package.json +1 -1
  449. package/extensions/twitch/CHANGELOG.md +1 -1
  450. package/extensions/twitch/package.json +1 -1
  451. package/extensions/ui-surfaces/package.json +1 -1
  452. package/extensions/voice-call/CHANGELOG.md +1 -1
  453. package/extensions/voice-call/package.json +1 -1
  454. package/extensions/whatsapp/package.json +1 -1
  455. package/extensions/zai/package.json +1 -1
  456. package/extensions/zalo/CHANGELOG.md +1 -1
  457. package/extensions/zalo/package.json +1 -1
  458. package/extensions/zalouser/CHANGELOG.md +1 -1
  459. package/extensions/zalouser/package.json +1 -1
  460. package/package.json +1 -1
  461. package/dist/clawbot-cli-D1k1DpEc.js +0 -31
  462. package/dist/cli-Dc-MpdqR.js +0 -165
  463. package/dist/github-copilot-token-DrVydgnY.js +0 -106
  464. package/dist/paths-BIDPYPVC.js +0 -233
  465. package/dist/plugin-sdk/agent-turn-execute-UxpRMk9j.js +0 -53
  466. package/dist/plugin-sdk/deliver-CM8QDSXe.js +0 -30
  467. package/dist/plugin-sdk/manager-DHw8x1pr.js +0 -14
  468. package/dist/plugin-sdk/provider-dispatcher-B7p6f3-i.js +0 -53
  469. package/dist/plugin-sdk/replies-Djswi7iH.js +0 -24
  470. package/dist/plugin-sdk/send-CTz3VFmd.js +0 -21
  471. package/dist/plugin-sdk/send-DsxMWGTy.js +0 -22
  472. package/dist/plugin-sdk/send-RHWHegWE.js +0 -20
  473. package/dist/plugin-sdk/subagent-registry-Ck6o6MPJ.js +0 -53
  474. package/dist/register.configure-zu159EnI.js +0 -169
  475. package/dist/subsystem-BOg9wqSC.js +0 -2777
@@ -1,8 +1,8 @@
1
- import { X as isPathInside, Y as isNotFoundPathError } from "./globals-BRyHSrWD.js";
2
- import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-db4fkk2l.js";
3
- import { n as resolveSafeBaseDir } from "./path-safety-DHLkivTI.js";
1
+ import { X as isPathInside, Y as isNotFoundPathError } from "./globals-3lUHnZas.js";
2
+ import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-sWugzmbo.js";
3
+ import { n as resolveSafeBaseDir } from "./path-safety-Dibh-nnA.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,14 +1,14 @@
1
- import { R as extensionUsesSkippedScannerPath, St as resolveUserPath, ct as CONFIG_DIR, z as isPathInside } from "./globals-BRyHSrWD.js";
2
- import { At as loadPluginManifest, jt as resolvePackageExtensionEntries, pt as checkPluginVersionCompat } from "./config-2hPOvE4Z.js";
1
+ import { R as extensionUsesSkippedScannerPath, St as resolveUserPath, ct as CONFIG_DIR, z as isPathInside } from "./globals-3lUHnZas.js";
2
+ import { At as loadPluginManifest, jt as resolvePackageExtensionEntries, pt as checkPluginVersionCompat } from "./config-D--rwfpd.js";
3
3
  import { n as resolveHostVersionInfo } from "./version-D_9__Xw6.js";
4
- import { C as validateRegistryNpmSpec } from "./skills-CWQC3bQU.js";
5
- import { c as writeFileFromPathWithinRoot } from "./fs-safe-db4fkk2l.js";
4
+ import { C as validateRegistryNpmSpec } from "./skills-rshN3U9G.js";
5
+ import { c as writeFileFromPathWithinRoot } from "./fs-safe-sWugzmbo.js";
6
6
  import { n as docsSiteUrl } from "./docs-site-B8KujBhr.js";
7
- import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-BZ4b1O0D.js";
8
- 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-B__b0nDK.js";
9
- import { t as scanDirectoryWithSummary } from "./skill-scanner-ubz0B8p_.js";
7
+ import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-2eEPQsHT.js";
8
+ 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-BwupN_XV.js";
9
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-YQwX3yC-.js";
10
10
  import path from "node:path";
11
- import fs from "node:fs/promises";
11
+ import fsPromises from "node:fs/promises";
12
12
 
13
13
  //#region src/plugins/install.ts
14
14
  const MISSING_EXTENSIONS_ERROR = "package.json missing openclaw.extensions; update the plugin package to include openclaw.extensions (for example [\"./dist/index.js\"]). See " + docsSiteUrl("users/help/troubleshooting#plugin-install-fails-with-missing-openclaw-extensions");
@@ -254,7 +254,7 @@ async function installPluginFromDir(params) {
254
254
  ok: false,
255
255
  error: `directory not found: ${dirPath}`
256
256
  };
257
- if (!(await fs.stat(dirPath)).isDirectory()) return {
257
+ if (!(await fsPromises.stat(dirPath)).isDirectory()) return {
258
258
  ok: false,
259
259
  error: `not a directory: ${dirPath}`
260
260
  };
@@ -271,7 +271,7 @@ async function installPluginFromFile(params) {
271
271
  error: `file not found: ${filePath}`
272
272
  };
273
273
  const extensionsDir = params.extensionsDir ? resolveUserPath(params.extensionsDir) : path.join(CONFIG_DIR, "extensions");
274
- await fs.mkdir(extensionsDir, { recursive: true });
274
+ await fsPromises.mkdir(extensionsDir, { recursive: true });
275
275
  const pluginId = path.basename(filePath, path.extname(filePath)) || "plugin";
276
276
  const pluginIdError = validatePluginId(pluginId);
277
277
  if (pluginIdError) return {
@@ -1,5 +1,5 @@
1
- import { H as isIpv6Address, J as parseCanonicalIpAddress, R as isCanonicalDottedDecimalIPv4 } from "./config-2hPOvE4Z.js";
2
- import { o as getTailnetHostname } from "./tailscale-IMHmOQwv.js";
1
+ import { H as isIpv6Address, J as parseCanonicalIpAddress, R as isCanonicalDottedDecimalIPv4 } from "./config-D--rwfpd.js";
2
+ import { o as getTailnetHostname } from "./tailscale-BiCf3X3Y.js";
3
3
  import { n as docsSiteUrl } from "./docs-site-B8KujBhr.js";
4
4
 
5
5
  //#region src/gateway/gateway-config-prompts.shared.ts
@@ -1,11 +1,11 @@
1
- import { St as resolveUserPath, a as logVerbose, c as shouldLogVerbose } from "./globals-BRyHSrWD.js";
2
- import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-db4fkk2l.js";
3
- import { a as hasAlphaChannel, c as detectMime, g as maxBytesForKind, l as extensionForMime, o as optimizeImageToPng, p as kindFromMime, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-BFv9Aw5H.js";
4
- import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-BZPOzq9L.js";
5
- import { a as chunkText } from "./chunk-TNziyyRO.js";
1
+ import { St as resolveUserPath, a as logVerbose, c as shouldLogVerbose } from "./globals-3lUHnZas.js";
2
+ import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-sWugzmbo.js";
3
+ import { a as hasAlphaChannel, c as detectMime, g as maxBytesForKind, l as extensionForMime, o as optimizeImageToPng, p as kindFromMime, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-C0np5f9V.js";
4
+ import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-CLk1nKmU.js";
5
+ import { a as chunkText } from "./chunk-DAmLsltN.js";
6
6
  import { fileURLToPath } from "node:url";
7
7
  import path from "node:path";
8
- import fs from "node:fs/promises";
8
+ import fsPromises from "node:fs/promises";
9
9
  import MarkdownIt from "markdown-it";
10
10
 
11
11
  //#region src/media/web-media.ts
@@ -36,7 +36,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
36
36
  const roots = localRoots ?? getDefaultLocalRoots();
37
37
  let resolved;
38
38
  try {
39
- resolved = await fs.realpath(mediaPath);
39
+ resolved = await fsPromises.realpath(mediaPath);
40
40
  } catch {
41
41
  resolved = path.resolve(mediaPath);
42
42
  }
@@ -53,7 +53,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
53
53
  for (const root of roots) {
54
54
  let resolvedRoot;
55
55
  try {
56
- resolvedRoot = await fs.realpath(root);
56
+ resolvedRoot = await fsPromises.realpath(root);
57
57
  } catch {
58
58
  resolvedRoot = path.resolve(root);
59
59
  }
@@ -1,7 +1,7 @@
1
- import { f as logVerbose, h as shouldLogVerbose, st as resolveUserPath } from "./subsystem-BOg9wqSC.js";
2
- import { a as getDefaultMediaLocalRoots, c as convertHeicToJpeg, d as optimizeImageToPng, f as resizeToJpeg, m as extensionForMime, n as fetchRemoteMedia, p as detectMime, u as hasAlphaChannel, v as kindFromMime, x as maxBytesForKind } from "./fetch-Ciq99DHJ.js";
3
- import { o as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-CDfp5e8Q.js";
4
- import { a as chunkText } from "./chunk-zortZzCP.js";
1
+ import { f as logVerbose, h as shouldLogVerbose, st as resolveUserPath } from "./subsystem-DynBFcQj.js";
2
+ import { a as getDefaultMediaLocalRoots, c as convertHeicToJpeg, d as optimizeImageToPng, f as resizeToJpeg, m as extensionForMime, n as fetchRemoteMedia, p as detectMime, u as hasAlphaChannel, v as kindFromMime, x as maxBytesForKind } from "./fetch-BBi5dEoV.js";
3
+ import { o as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-CRbowDkj.js";
4
+ import { a as chunkText } from "./chunk-BRJHaAd6.js";
5
5
  import path from "node:path";
6
6
  import fs from "node:fs/promises";
7
7
  import { fileURLToPath } from "node:url";
@@ -1,4 +1,4 @@
1
- import { lt as sanitizeTerminalText } from "./config-2hPOvE4Z.js";
1
+ import { lt as sanitizeTerminalText } from "./config-D--rwfpd.js";
2
2
 
3
3
  //#region src/config/issue-format.ts
4
4
  function normalizeConfigIssuePath(path) {
@@ -1,6 +1,6 @@
1
- import { Ot as truncateUtf16Safe } from "./globals-BRyHSrWD.js";
2
- import { t as createSubsystemLogger } from "./subsystem-BNf8H-Zm.js";
3
- import { p as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-BRw3GFxY.js";
1
+ import { Ot as truncateUtf16Safe } from "./globals-3lUHnZas.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-xTuYkxuQ.js";
3
+ import { p as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-Cr27HfX5.js";
4
4
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-D2m6f_VQ.js";
5
5
  import crypto, { randomUUID } from "node:crypto";
6
6
  import { Cron } from "croner";
@@ -1,14 +1,14 @@
1
- import { m as normalizeSkillFilter } from "./agent-scope-cTY4-zRz.js";
2
- import { H as isPathInside, K as isDangerousHostEnvVarName, N as isPathInsideWithRealpath, Z as CONFIG_DIR, mt as resolvePreferredOpenClawTmpDir, st as resolveUserPath, t as createSubsystemLogger } from "./subsystem-BOg9wqSC.js";
1
+ import { m as normalizeSkillFilter } from "./agent-scope-CoIdVzmg.js";
2
+ import { H as isPathInside, K as isDangerousHostEnvVarName, N as isPathInsideWithRealpath, Z as CONFIG_DIR, mt as resolvePreferredOpenClawTmpDir, st as resolveUserPath, t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
3
3
  import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
4
- import { h as resolveOpenClawPackageRootSync } from "./workspace-D8z8s1Xz.js";
5
- import { At as resolveMemorySlotDecision, Ot as normalizePluginsConfig, Sa as normalizeResolvedSecretInputString, kt as resolveEffectiveEnableState, wt as loadPluginManifestRegistry } from "./model-selection-BJZFC8fA.js";
6
- 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, r as parseFrontmatterBool, s as resolveOpenClawManifestOs, t as getFrontmatterString, u as evaluateRuntimeEligibility } from "./frontmatter-BzlMEBkz.js";
7
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-BV6CR8H3.js";
4
+ import { h as resolveOpenClawPackageRootSync } from "./workspace-xnzx7wEV.js";
5
+ import { At as resolveMemorySlotDecision, Ot as normalizePluginsConfig, Sa as normalizeResolvedSecretInputString, kt as resolveEffectiveEnableState, wt as loadPluginManifestRegistry } from "./model-selection-B7FYf8Fo.js";
6
+ 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, r as parseFrontmatterBool, s as resolveOpenClawManifestOs, t as getFrontmatterString, u as evaluateRuntimeEligibility } from "./frontmatter-DQTIIgFI.js";
7
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-nWrE5acE.js";
8
8
  import path from "node:path";
9
- import fs from "node:fs";
9
+ import syncFs from "node:fs";
10
10
  import os from "node:os";
11
- import fs$1 from "node:fs/promises";
11
+ import fs from "node:fs/promises";
12
12
  import { URL as URL$1, fileURLToPath } from "node:url";
13
13
  import { randomUUID } from "node:crypto";
14
14
  import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
@@ -545,13 +545,13 @@ function shortPath(value) {
545
545
  //#region src/agents/skills/bundled-dir.ts
546
546
  function looksLikeSkillsDir(dir) {
547
547
  try {
548
- const entries = fs.readdirSync(dir, { withFileTypes: true });
548
+ const entries = syncFs.readdirSync(dir, { withFileTypes: true });
549
549
  for (const entry of entries) {
550
550
  if (entry.name.startsWith(".")) continue;
551
551
  const fullPath = path.join(dir, entry.name);
552
552
  if (entry.isFile() && entry.name.endsWith(".md")) return true;
553
553
  if (entry.isDirectory()) {
554
- if (fs.existsSync(path.join(fullPath, "SKILL.md"))) return true;
554
+ if (syncFs.existsSync(path.join(fullPath, "SKILL.md"))) return true;
555
555
  }
556
556
  }
557
557
  } catch {
@@ -566,7 +566,7 @@ function resolveBundledSkillsDir(opts = {}) {
566
566
  const execPath = opts.execPath ?? process.execPath;
567
567
  const execDir = path.dirname(execPath);
568
568
  const sibling = path.join(execDir, "skills");
569
- if (fs.existsSync(sibling)) return sibling;
569
+ if (syncFs.existsSync(sibling)) return sibling;
570
570
  } catch {}
571
571
  try {
572
572
  const moduleUrl = opts.moduleUrl ?? import.meta.url;
@@ -629,7 +629,7 @@ function resolvePluginSkillDirs(params) {
629
629
  const trimmed = raw.trim();
630
630
  if (!trimmed) continue;
631
631
  const candidate = path.resolve(record.rootDir, trimmed);
632
- if (!fs.existsSync(candidate)) {
632
+ if (!syncFs.existsSync(candidate)) {
633
633
  log.warn(`plugin skill path not found (${record.id}): ${candidate}`);
634
634
  continue;
635
635
  }
@@ -660,7 +660,7 @@ async function serializeByKey(key, task) {
660
660
 
661
661
  //#endregion
662
662
  //#region src/agents/skills/workspace.ts
663
- const fsp = fs.promises;
663
+ const fsp = syncFs.promises;
664
664
  const skillsLogger = createSubsystemLogger("skills");
665
665
  const skillCommandDebugOnceState = resolveProcessScopedMap(Symbol.for("openclaw.agents.skills.workspace.skillCommandDebugOnce"));
666
666
  const skillCommandDebugOnce = skillCommandDebugOnceState.get("value") ?? /* @__PURE__ */ new Set();
@@ -739,7 +739,7 @@ function resolveSkillsLimits(config) {
739
739
  }
740
740
  function listChildDirectories(dir) {
741
741
  try {
742
- const entries = fs.readdirSync(dir, { withFileTypes: true });
742
+ const entries = syncFs.readdirSync(dir, { withFileTypes: true });
743
743
  const dirs = [];
744
744
  for (const entry of entries) {
745
745
  if (entry.name.startsWith(".")) continue;
@@ -750,7 +750,7 @@ function listChildDirectories(dir) {
750
750
  continue;
751
751
  }
752
752
  if (entry.isSymbolicLink()) try {
753
- if (fs.statSync(fullPath).isDirectory()) dirs.push(entry.name);
753
+ if (syncFs.statSync(fullPath).isDirectory()) dirs.push(entry.name);
754
754
  } catch {}
755
755
  }
756
756
  return dirs;
@@ -761,7 +761,7 @@ function listChildDirectories(dir) {
761
761
  function resolveNestedSkillsRoot(dir, opts) {
762
762
  const nested = path.join(dir, "skills");
763
763
  try {
764
- if (!fs.existsSync(nested) || !fs.statSync(nested).isDirectory()) return { baseDir: dir };
764
+ if (!syncFs.existsSync(nested) || !syncFs.statSync(nested).isDirectory()) return { baseDir: dir };
765
765
  } catch {
766
766
  return { baseDir: dir };
767
767
  }
@@ -770,7 +770,7 @@ function resolveNestedSkillsRoot(dir, opts) {
770
770
  const toScan = scanLimit === 0 ? [] : nestedDirs.slice(0, Math.min(nestedDirs.length, scanLimit));
771
771
  for (const name of toScan) {
772
772
  const skillMd = path.join(nested, name, "SKILL.md");
773
- if (fs.existsSync(skillMd)) return {
773
+ if (syncFs.existsSync(skillMd)) return {
774
774
  baseDir: nested,
775
775
  note: `Detected nested skills root at ${nested}`
776
776
  };
@@ -790,9 +790,9 @@ function loadSkillEntries(workspaceDir, opts) {
790
790
  const loadSkills = (params) => {
791
791
  const baseDir = resolveNestedSkillsRoot(params.dir, { maxEntriesToScan: limits.maxCandidatesPerRoot }).baseDir;
792
792
  const rootSkillMd = path.join(baseDir, "SKILL.md");
793
- if (fs.existsSync(rootSkillMd)) {
793
+ if (syncFs.existsSync(rootSkillMd)) {
794
794
  try {
795
- const size = fs.statSync(rootSkillMd).size;
795
+ const size = syncFs.statSync(rootSkillMd).size;
796
796
  if (size > limits.maxSkillFileBytes) {
797
797
  skillsLogger.warn("Skipping skills root due to oversized SKILL.md.", {
798
798
  dir: baseDir,
@@ -831,9 +831,9 @@ function loadSkillEntries(workspaceDir, opts) {
831
831
  for (const name of limitedChildren) {
832
832
  const skillDir = path.join(baseDir, name);
833
833
  const skillMd = path.join(skillDir, "SKILL.md");
834
- if (!fs.existsSync(skillMd)) continue;
834
+ if (!syncFs.existsSync(skillMd)) continue;
835
835
  try {
836
- const size = fs.statSync(skillMd).size;
836
+ const size = syncFs.statSync(skillMd).size;
837
837
  if (size > limits.maxSkillFileBytes) {
838
838
  skillsLogger.warn("Skipping skill due to oversized SKILL.md.", {
839
839
  skill: name,
@@ -901,7 +901,7 @@ function loadSkillEntries(workspaceDir, opts) {
901
901
  return Array.from(merged.values()).map((skill) => {
902
902
  let frontmatter = {};
903
903
  try {
904
- frontmatter = parseFrontmatter(fs.readFileSync(skill.filePath, "utf-8"));
904
+ frontmatter = parseFrontmatter(syncFs.readFileSync(skill.filePath, "utf-8"));
905
905
  } catch {}
906
906
  return {
907
907
  skill,
@@ -1139,7 +1139,7 @@ function buildWorkspaceSkillCommandSpecs(workspaceDir, opts) {
1139
1139
  //#region src/infra/json-files.ts
1140
1140
  async function readJsonFile(filePath) {
1141
1141
  try {
1142
- const raw = await fs$1.readFile(filePath, "utf8");
1142
+ const raw = await fs.readFile(filePath, "utf8");
1143
1143
  return JSON.parse(raw);
1144
1144
  } catch {
1145
1145
  return null;
@@ -1154,7 +1154,7 @@ async function writeJsonAtomic(filePath, value, options) {
1154
1154
  }
1155
1155
  async function chmodIfSupported(filePath, mode) {
1156
1156
  try {
1157
- await fs$1.chmod(filePath, mode);
1157
+ await fs.chmod(filePath, mode);
1158
1158
  } catch (err) {
1159
1159
  if (process.platform === "win32") return;
1160
1160
  throw err;
@@ -1165,18 +1165,18 @@ async function writeTextAtomic(filePath, content, options) {
1165
1165
  const payload = options?.appendTrailingNewline && !content.endsWith("\n") ? `${content}\n` : content;
1166
1166
  const mkdirOptions = { recursive: true };
1167
1167
  if (typeof options?.ensureDirMode === "number") mkdirOptions.mode = options.ensureDirMode;
1168
- await fs$1.mkdir(path.dirname(filePath), mkdirOptions);
1168
+ await fs.mkdir(path.dirname(filePath), mkdirOptions);
1169
1169
  const tmp = `${filePath}.${randomUUID()}.tmp`;
1170
1170
  try {
1171
- await fs$1.writeFile(tmp, payload, {
1171
+ await fs.writeFile(tmp, payload, {
1172
1172
  encoding: "utf8",
1173
1173
  mode
1174
1174
  });
1175
1175
  await chmodIfSupported(tmp, mode);
1176
- await fs$1.rename(tmp, filePath);
1176
+ await fs.rename(tmp, filePath);
1177
1177
  await chmodIfSupported(filePath, mode);
1178
1178
  } finally {
1179
- await fs$1.rm(tmp, { force: true }).catch(() => void 0);
1179
+ await fs.rm(tmp, { force: true }).catch(() => void 0);
1180
1180
  }
1181
1181
  }
1182
1182
  function createAsyncLock() {
@@ -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;
@@ -20,7 +20,7 @@ async function writeJsonAtomic(filePath, value, options) {
20
20
  }
21
21
  async function chmodIfSupported(filePath, mode) {
22
22
  try {
23
- await fs.chmod(filePath, mode);
23
+ await fsPromises.chmod(filePath, mode);
24
24
  } catch (err) {
25
25
  if (process.platform === "win32") return;
26
26
  throw err;
@@ -31,18 +31,18 @@ async function writeTextAtomic(filePath, content, options) {
31
31
  const payload = options?.appendTrailingNewline && !content.endsWith("\n") ? `${content}\n` : content;
32
32
  const mkdirOptions = { recursive: true };
33
33
  if (typeof options?.ensureDirMode === "number") mkdirOptions.mode = options.ensureDirMode;
34
- await fs.mkdir(path.dirname(filePath), mkdirOptions);
34
+ await fsPromises.mkdir(path.dirname(filePath), mkdirOptions);
35
35
  const tmp = `${filePath}.${randomUUID()}.tmp`;
36
36
  try {
37
- await fs.writeFile(tmp, payload, {
37
+ await fsPromises.writeFile(tmp, payload, {
38
38
  encoding: "utf8",
39
39
  mode
40
40
  });
41
41
  await chmodIfSupported(tmp, mode);
42
- await fs.rename(tmp, filePath);
42
+ await fsPromises.rename(tmp, filePath);
43
43
  await chmodIfSupported(filePath, mode);
44
44
  } finally {
45
- await fs.rm(tmp, { force: true }).catch(() => void 0);
45
+ await fsPromises.rm(tmp, { force: true }).catch(() => void 0);
46
46
  }
47
47
  }
48
48
  function createAsyncLock() {
@@ -1,4 +1,4 @@
1
- import { t as createSubsystemLogger } from "./subsystem-BOg9wqSC.js";
1
+ import { t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
2
2
 
3
3
  //#region src/utils/boolean.ts
4
4
  const DEFAULT_TRUTHY = [
@@ -1,15 +1,15 @@
1
- import { Tt as shortenHomePath, d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme } from "./globals-BRyHSrWD.js";
1
+ import { Tt as shortenHomePath, d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme } from "./globals-3lUHnZas.js";
2
2
  import { d as resolveIsNixMode } from "./paths-BMo6kTge.js";
3
- import { m as defaultRuntime } from "./subsystem-BNf8H-Zm.js";
4
- import { c as loadConfig, u as readConfigFileSnapshot } from "./config-2hPOvE4Z.js";
3
+ import { m as defaultRuntime } from "./subsystem-xTuYkxuQ.js";
4
+ import { c as loadConfig, u as readConfigFileSnapshot } from "./config-D--rwfpd.js";
5
5
  import { t as formatCliCommand } from "./command-format-DWAk9aIH.js";
6
- import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DLluMUaA.js";
6
+ import { t as resolveGatewayCredentialsFromConfig } from "./credentials-D2RfV9B5.js";
7
7
  import { m as resolveGatewayWindowsTaskName, p as resolveGatewaySystemdServiceName, u as resolveGatewayLaunchAgentLabel } from "./constants-C6ozS4px.js";
8
- import { t as isWSL } from "./wsl-CG9o9v6x.js";
9
- import { n as formatConfigIssueLines } from "./issue-format-OFCh_2sH.js";
10
- import { s as resolveGatewayLogPaths } from "./service-DMkBvr4B.js";
11
- import { r as isSystemdUserServiceAvailable } from "./systemd-CyRDQg6V.js";
12
- import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-CPEnXHmj.js";
8
+ import { t as isWSL } from "./wsl-Bm8bcioC.js";
9
+ import { n as formatConfigIssueLines } from "./issue-format-DhAa1_iS.js";
10
+ import { s as resolveGatewayLogPaths } from "./service-DoOh34VG.js";
11
+ import { r as isSystemdUserServiceAvailable } from "./systemd-DCrSOh9E.js";
12
+ import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-Dc0OitcD.js";
13
13
  import { t as parsePort } from "./parse-port-DnJYkByg.js";
14
14
  import { Writable } from "node:stream";
15
15
 
@@ -1,4 +1,4 @@
1
- import { gt as formatTerminalLink } from "./globals-BRyHSrWD.js";
1
+ import { gt as formatTerminalLink } from "./globals-3lUHnZas.js";
2
2
  import { n as docsSiteUrl } from "./docs-site-B8KujBhr.js";
3
3
 
4
4
  //#region src/terminal/links.ts