wednesdayai 0.5.1-dev.40 → 0.5.1-dev.42

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 (277) hide show
  1. package/dist/{agent-scope-BudmZlc1.js → agent-scope-CoIdVzmg.js} +3 -3
  2. package/dist/{agent-turn-runner-y0WL6xuI.js → agent-turn-runner-BkWusthz.js} +3 -3
  3. package/dist/{agent-turn-runner-C5FiRTJg.js → agent-turn-runner-FwkD42Me.js} +6 -6
  4. package/dist/{api-key-rotation-DAI1NT_a.js → api-key-rotation-1GnreUfv.js} +1 -1
  5. package/dist/{api-key-rotation-DzXkIU1m.js → api-key-rotation-1bTDnvBU.js} +2 -2
  6. package/dist/{audio-preflight-E-nHdi7I.js → audio-preflight-CCjuApbs.js} +27 -27
  7. package/dist/{audio-preflight-Bdn8EyXv.js → audio-preflight-cWE_jPq7.js} +14 -14
  8. package/dist/{audio-transcription-runner-MJ65xlDX.js → audio-transcription-runner-Bk1wu6OC.js} +8 -8
  9. package/dist/{audio-transcription-runner-Cc-hAbE1.js → audio-transcription-runner-DgFYIaIw.js} +26 -26
  10. package/dist/build-info.json +3 -3
  11. package/dist/bundled/boot-md/handler.js +58 -58
  12. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  13. package/dist/bundled/command-logger/handler.js +2 -2
  14. package/dist/bundled/session-journal/handler.js +58 -58
  15. package/dist/bundled/session-memory/handler.js +58 -58
  16. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  17. package/dist/{chat-content-DtaSiJ_7.js → chat-content-B7yKTLAY.js} +9 -9
  18. package/dist/{chat-content-CL44f6Ub.js → chat-content-BdADRLL0.js} +36 -36
  19. package/dist/{plugin-sdk/chrome-DML7V0HT.js → chrome-DQ2kyZpc.js} +34 -34
  20. package/dist/{chrome-BRVJGvQa.js → chrome-W4kkryVf.js} +5 -5
  21. package/dist/{chunk-BHQuzJtJ.js → chunk-BAxcOCcV.js} +3 -3
  22. package/dist/{chunk-CGvXEMAJ.js → chunk-BBj2TedD.js} +1 -1
  23. package/dist/{command-queue-CyJUnsMn.js → command-queue-CRm1AADE.js} +1 -1
  24. package/dist/{command-registry-xYf1aBOy.js → command-registry-Ip0F63vx.js} +4 -4
  25. package/dist/{commands-registry-CNVoO37I.js → commands-registry-CtR9mXss.js} +2 -2
  26. package/dist/{commands-registry-BO2o7Un9.js → commands-registry-b4F_78R4.js} +1 -1
  27. package/dist/{completion-cli-od6mAB_x.js → completion-cli-BFHL_SSq.js} +2 -2
  28. package/dist/{completion-cli-BIuMSnSA.js → completion-cli-EqOcxJpx.js} +1 -1
  29. package/dist/{credentials-DnIj4HtR.js → credentials-BhiiI_Nr.js} +1 -1
  30. package/dist/{credentials-GPboJeMC.js → credentials-U5jLZxJ-.js} +1 -1
  31. package/dist/{deliver-x1MM90HA.js → deliver-BQSIZZRd.js} +11 -11
  32. package/dist/{deliver-DUUEMT-w.js → deliver-BufoibUD.js} +29 -29
  33. package/dist/{diagnostic-YRGuisNG.js → diagnostic-BSnQ1U_E.js} +3 -3
  34. package/dist/{doctor-completion-xR-LI2Kc.js → doctor-completion-CNBGQIUD.js} +1 -1
  35. package/dist/{doctor-completion-B3oIZ4R2.js → doctor-completion-W6Xmw25w.js} +1 -1
  36. package/dist/entry.js +2 -2
  37. package/dist/{errors-DnS9ngr1.js → errors-BzL6hu4G.js} +1 -1
  38. package/dist/extensionAPI.js +40 -40
  39. package/dist/{fetch-Cpgrvssj.js → fetch-DQjTi7nc.js} +1 -1
  40. package/dist/{fetch-ChtdmCYU.js → fetch-DUVm-Rj1.js} +8 -8
  41. package/dist/{plugin-sdk/fetch-BqFNIJpI.js → fetch-DmpLwwor.js} +1 -1
  42. package/dist/{fetch-BzeUsif1.js → fetch-JiVpsY-F.js} +2 -2
  43. package/dist/{fetch-guard-BnKTeFyb.js → fetch-guard-BySb6coS.js} +2 -2
  44. package/dist/{fetch-guard-D49piGJ5.js → fetch-guard-Dn6Z6n6a.js} +1 -1
  45. package/dist/{frontmatter-CqznVm7P.js → frontmatter-NYeLKFIP.js} +3 -3
  46. package/dist/{fs-safe-D96d8swI.js → fs-safe-DOdeIkaS.js} +26 -26
  47. package/dist/{gateway-cli-B0WWrjnY.js → gateway-cli-D17zAbrY.js} +20 -10
  48. package/dist/{gateway-cli-BRUhDHZW.js → gateway-cli-DktZhN9y.js} +20 -10
  49. package/dist/{image-ops-BiBI-uAf.js → image-ops-DEUr_rAC.js} +1 -1
  50. package/dist/index.js +1 -1
  51. package/dist/{ir-Drj2D5Gr.js → ir-B0rUqFWs.js} +5 -5
  52. package/dist/{ir-vVwcX8JG.js → ir-Bra81NIe.js} +2 -2
  53. package/dist/{legacy-names-Bx5L8LWT.js → legacy-names-D7ywm6_7.js} +1 -1
  54. package/dist/llm-slug-generator.js +58 -58
  55. package/dist/{manager-C9H5Oflk.js → manager-3Exjl08V.js} +18 -18
  56. package/dist/{manager-DRfrqzWR.js → manager-DIIInXxQ.js} +4 -4
  57. package/dist/{markdown-tables-CzhZ9VCB.js → markdown-tables-7TebvIj0.js} +1 -1
  58. package/dist/{markdown-tables-BvoP0b-H.js → markdown-tables-lzV8Hoxc.js} +2 -2
  59. package/dist/{model-selection-DkRYDpst.js → model-selection-DFW5CGMj.js} +1 -1
  60. package/dist/{model-selection-2-pBJbaC.js → model-selection-_StPBPAp.js} +80 -80
  61. package/dist/{models-config-7yfOGOZY.js → models-config-D3M9er_C.js} +2 -2
  62. package/dist/{models-config-BaSANr-E.js → models-config-tNRAxYqz.js} +1 -1
  63. package/dist/{nudge-CcGwhSSL.js → nudge-B06CLLon.js} +35 -35
  64. package/dist/{nudge-Chvj0Rw2.js → nudge-DklIe0bB.js} +10 -10
  65. package/dist/{onboard-CRHyyv-F.js → onboard-D2AmYbm8.js} +1 -1
  66. package/dist/{onboard-CYQVIEKp.js → onboard-PJee12bv.js} +1 -1
  67. package/dist/{onboarding-CDHMZKiy.js → onboarding-C1f94rh1.js} +1 -1
  68. package/dist/{onboarding-vLVDuEr7.js → onboarding-DXRhSAcO.js} +1 -1
  69. package/dist/{onboarding.finalize-D3hX9K5R.js → onboarding.finalize-C0RUJoiz.js} +4 -4
  70. package/dist/{onboarding.finalize-BDJnDt6t.js → onboarding.finalize-Calv0MIe.js} +3 -3
  71. package/dist/{outbound-attachment-DegoJUYB.js → outbound-attachment-BeSAM8qU.js} +1 -1
  72. package/dist/{outbound-attachment-CxvBVgcJ.js → outbound-attachment-CCQDMmDH.js} +2 -2
  73. package/dist/{outbound-message-hooks-DfRORyCc.js → outbound-message-hooks-Bn5_bObR.js} +5 -5
  74. package/dist/{outbound-message-hooks-bMw-LLuz.js → outbound-message-hooks-CrrbzX7U.js} +2 -2
  75. package/dist/{pairing-files-ByediFgs.js → pairing-files-B1ukutA_.js} +1 -1
  76. package/dist/{path-alias-guards-BXXI1YTn.js → path-alias-guards-aXY57qPv.js} +1 -1
  77. package/dist/{pi-embedded-BSVP6xD2.js → pi-embedded-CL5jkXds.js} +64 -64
  78. package/dist/{pi-embedded-Dp5uUcq6.js → pi-embedded-DGpkqagr.js} +251 -251
  79. package/dist/{pi-embedded-utils-BF4B99Db.js → pi-embedded-utils-D9zLeiKy.js} +1 -1
  80. package/dist/{pi-embedded-utils-Dc-LEWCI.js → pi-embedded-utils-DD7HmeWR.js} +3 -3
  81. package/dist/{pi-model-discovery-B44lshxv.js → pi-model-discovery-BTuzuVh1.js} +7 -7
  82. package/dist/{pi-model-discovery-B5oKc4R3.js → pi-model-discovery-DiGB5xAq.js} +1 -1
  83. package/dist/plugin-sdk/agent-turn-execute-D0szeKs8.js +61 -0
  84. package/dist/plugin-sdk/{agent-turn-runner-D3tAlzpP.js → agent-turn-runner-fV3h6ELM.js} +6 -6
  85. package/dist/plugin-sdk/{api-key-rotation-Dmd_whf1.js → api-key-rotation-DbJkvwYN.js} +1 -1
  86. package/dist/plugin-sdk/{audio-preflight-2XKqIXAx.js → audio-preflight-DhIYyWh0.js} +14 -14
  87. package/dist/plugin-sdk/{audio-transcription-runner-2ziIuais.js → audio-transcription-runner-DbjdWQRu.js} +8 -8
  88. package/dist/plugin-sdk/{auth-profiles-BxDhfCHT.js → auth-profiles-DPd1Ol-P.js} +1 -1
  89. package/dist/plugin-sdk/{chat-content-DWJ_WMLQ.js → chat-content-CEMoDe5q.js} +9 -9
  90. package/dist/{chrome-D1006Mu2.js → plugin-sdk/chrome-CobI3ImG.js} +8 -8
  91. package/dist/plugin-sdk/{chunk-SR4Ydfza.js → chunk-C3M1IW7W.js} +2 -2
  92. package/dist/plugin-sdk/{command-queue-DUO9-NRr.js → command-queue-DUuIiwvi.js} +2 -2
  93. package/dist/plugin-sdk/{commands-registry-DnePgYTq.js → commands-registry-DPCcTIwi.js} +2 -2
  94. package/dist/plugin-sdk/{credentials-DJMyq23O.js → credentials-BgX_xjTe.js} +1 -1
  95. package/dist/plugin-sdk/deliver-DTstMBfw.js +34 -0
  96. package/dist/plugin-sdk/{deliver-D3LWZpv1.js → deliver-lkeqXp0v.js} +11 -11
  97. package/dist/plugin-sdk/{diagnostic-BXgGsRnq.js → diagnostic-TucKQ5Fk.js} +2 -2
  98. package/dist/plugin-sdk/{diagnostic-session-state-Y-_mHHE2.js → diagnostic-session-state-C74O1QW2.js} +1 -1
  99. package/dist/{fetch-CrTLz8wd.js → plugin-sdk/fetch-BEOHdT2e.js} +1 -1
  100. package/dist/plugin-sdk/{fetch-CpY6mDmQ.js → fetch-D7rvWjfk.js} +2 -2
  101. package/dist/plugin-sdk/{fetch-guard-BEue3kvx.js → fetch-guard-CQIsGUgZ.js} +1 -1
  102. package/dist/plugin-sdk/{inbound-context-CKtZsNVT.js → inbound-context-BdGImnhD.js} +1 -1
  103. package/dist/plugin-sdk/{ir-Ep5lw12h.js → ir-D-nyt7yZ.js} +2 -2
  104. package/dist/plugin-sdk/{manager-DyYd10T2.js → manager-3Bw8zhA3.js} +4 -4
  105. package/dist/plugin-sdk/manager-BexdJt3o.js +14 -0
  106. package/dist/plugin-sdk/{markdown-tables-B4G-uOPz.js → markdown-tables-DczIA0hC.js} +2 -2
  107. package/dist/plugin-sdk/{models-config-DsHaLeW3.js → models-config-DPG3UP6h.js} +1 -1
  108. package/dist/plugin-sdk/{monitor-CbKokdL4.js → monitor-BQWiYAwC.js} +77 -77
  109. package/dist/plugin-sdk/{nudge-z8ozyWd6.js → nudge-Cp00v46W.js} +11 -11
  110. package/dist/plugin-sdk/{outbound-attachment-BrHUWeqB.js → outbound-attachment-JHREBMfy.js} +1 -1
  111. package/dist/plugin-sdk/{pi-embedded-utils-6FFFlkbd.js → pi-embedded-utils-JXHsJfhx.js} +1 -1
  112. package/dist/plugin-sdk/{pi-model-discovery-BnsoI-E6.js → pi-model-discovery-CKGA60jT.js} +2 -2
  113. package/dist/plugin-sdk/provider-dispatcher-Cq6Acy3h.js +61 -0
  114. package/dist/plugin-sdk/{proxy-env-jBCtIiJH.js → proxy-env-D9QKz5Mq.js} +1 -1
  115. package/dist/plugin-sdk/{pw-ai-IAdR6aX7.js → pw-ai-B_6I8TGZ.js} +4 -4
  116. package/dist/plugin-sdk/{qmd-manager-DERrmogO.js → qmd-manager-CIgxgs0D.js} +2 -2
  117. package/dist/plugin-sdk/{query-expansion-CWCvbGoy.js → query-expansion-CECAX0Pe.js} +1 -1
  118. package/dist/plugin-sdk/{recorder-xWMrt--U.js → recorder-C6OpZN3o.js} +1 -1
  119. package/dist/plugin-sdk/{registry-B-9fRLtl.js → registry-D9-EsIYH.js} +1 -1
  120. package/dist/plugin-sdk/{replies-BNtRlug2.js → replies-BhuMuYfa.js} +11 -11
  121. package/dist/plugin-sdk/{replies-CbnkLeUl.js → replies-ClN-Aak4.js} +4 -4
  122. package/dist/plugin-sdk/{reply-directives-CKNwlk_8.js → reply-directives-C69Fd8zO.js} +1 -1
  123. package/dist/plugin-sdk/{reply-prefix-DCeyas-6.js → reply-prefix-BQ-rDIAU.js} +1 -1
  124. package/dist/plugin-sdk/{resolve-route-t2HJkuDx.js → resolve-route-N9oe4tGM.js} +2 -2
  125. package/dist/plugin-sdk/{runs-B0mmuxPP.js → runs-0OTO0OVX.js} +12 -12
  126. package/dist/plugin-sdk/{runs-CSaP-UMd.js → runs-DK85oFoq.js} +7 -7
  127. package/dist/plugin-sdk/{send-BToCKtul.js → send-C8OYq5CD.js} +10 -10
  128. package/dist/plugin-sdk/send-CMAU8Lg8.js +23 -0
  129. package/dist/plugin-sdk/{send-CbbM7dcD.js → send-CVYVctJr.js} +6 -6
  130. package/dist/plugin-sdk/{send-hdgQBd4P.js → send-CciBIiE2.js} +4 -4
  131. package/dist/plugin-sdk/{send-rQhDBwIJ.js → send-CilPGWoe.js} +8 -8
  132. package/dist/plugin-sdk/{send-CTefF3Iw.js → send-CyKQnkbd.js} +6 -6
  133. package/dist/plugin-sdk/{send-CY2iq9C4.js → send-DFpY65tA.js} +10 -10
  134. package/dist/plugin-sdk/{send-BQYyBicH.js → send-dNeIyZEN.js} +5 -5
  135. package/dist/plugin-sdk/{session-context-E8Vv0lBU.js → session-context-4IeKkzGJ.js} +2 -2
  136. package/dist/plugin-sdk/{session-meta-_XFpsAgw.js → session-meta-BlMS0pts.js} +2 -2
  137. package/dist/plugin-sdk/{sessions-DGyoDRbg.js → sessions-BUjbH5K1.js} +1 -1
  138. package/dist/plugin-sdk/{skill-commands-DJ9gv-vK.js → skill-commands-J-ZcPvqF.js} +3 -3
  139. package/dist/plugin-sdk/{skills-mfK8NK3f.js → skills-W6RHTFue.js} +1 -1
  140. package/dist/plugin-sdk/{subagent-registry-DyI22dHA.js → subagent-registry-Bek3q0nu.js} +44 -44
  141. package/dist/plugin-sdk/{tables-Dt2IrV1k.js → tables-ohryoECJ.js} +1 -1
  142. package/dist/plugin-sdk/testing.js +44 -44
  143. package/dist/plugin-sdk/{user-run-recording-C05KbS-o.js → user-run-recording-CAAdiBWD.js} +2 -2
  144. package/dist/plugin-sdk/{ws-BzjQAveZ.js → ws-zaFiZiYP.js} +1 -1
  145. package/dist/{program-CcLb8Psv.js → program-DYZ4XAFZ.js} +2 -2
  146. package/dist/{program-context-X8qIC1Px.js → program-context-BM_flY1J.js} +6 -6
  147. package/dist/{prompt-select-styled-NrfLylYh.js → prompt-select-styled-BFW0tf77.js} +1 -1
  148. package/dist/{prompt-select-styled-DUTH4ST5.js → prompt-select-styled-Eb9ltCzM.js} +1 -1
  149. package/dist/{proxy-env-C0UK-5dm.js → proxy-env-RzbogHFe.js} +1 -1
  150. package/dist/{proxy-env-DdoaBr4H.js → proxy-env-dFmQfhFb.js} +1 -1
  151. package/dist/{pw-ai-CV5A9Kt_.js → pw-ai-B2n3DHPt.js} +14 -14
  152. package/dist/{pw-ai-8QlHyDLL.js → pw-ai-D55f0Pr9.js} +4 -4
  153. package/dist/{qmd-manager-B_ED_NmL.js → qmd-manager-C4rOtrQS.js} +2 -2
  154. package/dist/{qmd-manager-Bw5dnMTy.js → qmd-manager-jLSZ3VID.js} +12 -12
  155. package/dist/{qmd-scope-0dG63o_w.js → qmd-scope-BN4oVeLu.js} +1 -1
  156. package/dist/{query-expansion-BVj0lCGG.js → query-expansion-Dm_RIg6M.js} +1 -1
  157. package/dist/{query-expansion-gzgHhq68.js → query-expansion-UPsVmvEm.js} +13 -13
  158. package/dist/{recorder-BowlGHGe.js → recorder-DRV1SIKe.js} +1 -1
  159. package/dist/{recorder-ciGDu2oO.js → recorder-DvYXNusz.js} +2 -2
  160. package/dist/{redact-Cp-v7ZNA.js → redact-CysJDryP.js} +1 -1
  161. package/dist/{register.maintenance-CFd160fT.js → register.maintenance-CNiAi_Bg.js} +5 -5
  162. package/dist/{register.maintenance-Dc0j0tvi.js → register.maintenance-Dq3k6jFc.js} +4 -4
  163. package/dist/{register.onboard-u0pMgMv4.js → register.onboard-DGBJtyFX.js} +2 -2
  164. package/dist/{register.onboard-C-lkIY7d.js → register.onboard-DqGIfQsO.js} +2 -2
  165. package/dist/{register.setup-BAiTfEey.js → register.setup-BdAQ_7gM.js} +2 -2
  166. package/dist/{register.setup-D6hviI6L.js → register.setup-Ckb9Hpks.js} +2 -2
  167. package/dist/{register.subclis-3YVvoBSB.js → register.subclis-Cn5DS2Th.js} +3 -3
  168. package/dist/{replies-7qxW8HcU.js → replies-BL7cHT2h.js} +4 -4
  169. package/dist/{replies-EZyamg1p.js → replies-DfoUf3N4.js} +5 -5
  170. package/dist/{reply-directives-DarQZxqY.js → reply-directives-D4Hftiqp.js} +1 -1
  171. package/dist/{reply-directives-DMPiBIx3.js → reply-directives-DsGD4aw1.js} +2 -2
  172. package/dist/{reply-prefix-DLf0nmds.js → reply-prefix-gWrzAQtZ.js} +1 -1
  173. package/dist/{resolve-route-B15qdahX.js → resolve-route-D96zWGGF.js} +1 -1
  174. package/dist/{resolve-route-GBqD8iPk.js → resolve-route-RQpYXVl1.js} +4 -4
  175. package/dist/{run-main-BBLzm5df.js → run-main-BYnz7Ou5.js} +3 -3
  176. package/dist/{runs-5zWtWfx5.js → runs-CAO_rrxJ.js} +5 -5
  177. package/dist/{runs-EvR8ugp4.js → runs-DGr28sFu.js} +9 -9
  178. package/dist/{send-BVfxa93K.js → send-C-m_74Nc.js} +8 -8
  179. package/dist/{send-Dy4zxtn3.js → send-CS1yI0B4.js} +6 -6
  180. package/dist/{send-B5XVAKWg.js → send-DFsyNWFI.js} +7 -7
  181. package/dist/{send-BCEsHNBh.js → send-DYRbKT7y.js} +6 -6
  182. package/dist/{send-12uxFQQR.js → send-DkJqx60r.js} +8 -8
  183. package/dist/{send-Cl-ugSMv.js → send-Dv__vEQx.js} +5 -5
  184. package/dist/{send-DJypuRge.js → send-FQrlCKRx.js} +6 -6
  185. package/dist/{send-DdyIJ_uy.js → send-T9aTnSyS.js} +4 -4
  186. package/dist/{session-meta-DgpwY0ah.js → session-meta-CyokAxEY.js} +1 -1
  187. package/dist/{session-meta-C_fW_AWG.js → session-meta-DVKEsZNl.js} +1 -1
  188. package/dist/{sessions-B-dL4q0P.js → sessions-A1wDmvXO.js} +1 -1
  189. package/dist/{sessions-DODCZ4JK.js → sessions-CzjW7wiR.js} +5 -5
  190. package/dist/{skill-commands-5VtV6o_q.js → skill-commands-BfK22Jmi.js} +7 -7
  191. package/dist/{skill-commands-1Axnvvz6.js → skill-commands-CZ8IAEbM.js} +2 -2
  192. package/dist/{skills-B3DYwqF5.js → skills-D6riKXOf.js} +21 -21
  193. package/dist/{skills-CMwL1GBr.js → skills-D7jLGkoP.js} +1 -1
  194. package/dist/{store-DnvoAjAE.js → store-Bt16sey6.js} +7 -7
  195. package/dist/{tables-rCzAF-en.js → tables-BFlTcF5k.js} +1 -1
  196. package/dist/{tables-CuZTAY1e.js → tables-tChtQWdX.js} +1 -1
  197. package/dist/{tokens-C8E7C2l5.js → tokens-C2ll8wSq.js} +1 -1
  198. package/dist/{tool-loop-detection-4AIUOil2.js → tool-loop-detection-D0CRFNOH.js} +2 -2
  199. package/dist/{update-cli-D4CRTu-Y.js → update-cli-BFg_CRum.js} +5 -5
  200. package/dist/{update-cli-q45uqAKK.js → update-cli-BfwXa0Uk.js} +4 -4
  201. package/dist/{user-run-recording-Bax2KSZY.js → user-run-recording-CTOXtrSm.js} +1 -1
  202. package/dist/{user-run-recording-4Dhev2ED.js → user-run-recording-DJedyUge.js} +2 -2
  203. package/dist/{workspace-DOy2M7yN.js → workspace-xnzx7wEV.js} +26 -26
  204. package/dist/{ws-CWxX8WDm.js → ws-CQigqc-W.js} +1 -1
  205. package/dist/{ws-D916JacH.js → ws-DLbfGWAn.js} +1 -1
  206. package/extensions/acpx/package.json +1 -1
  207. package/extensions/anthropic/package.json +1 -1
  208. package/extensions/bifrost/package.json +1 -1
  209. package/extensions/bluebubbles/package.json +1 -1
  210. package/extensions/copilot-proxy/package.json +1 -1
  211. package/extensions/deepgram/package.json +1 -1
  212. package/extensions/deepinfra/package.json +1 -1
  213. package/extensions/diagnostics-otel/package.json +1 -1
  214. package/extensions/diffs/package.json +1 -1
  215. package/extensions/discord/package.json +1 -1
  216. package/extensions/dream-cycle/package.json +1 -1
  217. package/extensions/elevenlabs/package.json +1 -1
  218. package/extensions/feishu/package.json +1 -1
  219. package/extensions/gemini-search/package.json +1 -1
  220. package/extensions/google/package.json +1 -1
  221. package/extensions/google-gemini-cli-auth/package.json +1 -1
  222. package/extensions/googlechat/package.json +1 -1
  223. package/extensions/grok-search/package.json +1 -1
  224. package/extensions/groq/package.json +1 -1
  225. package/extensions/imessage/package.json +1 -1
  226. package/extensions/irc/package.json +1 -1
  227. package/extensions/kimi-search/package.json +1 -1
  228. package/extensions/kokoro/package.json +1 -1
  229. package/extensions/learning-core/package.json +1 -1
  230. package/extensions/line/package.json +1 -1
  231. package/extensions/llm-task/package.json +1 -1
  232. package/extensions/lobster/package.json +1 -1
  233. package/extensions/matrix/CHANGELOG.md +1 -1
  234. package/extensions/matrix/package.json +1 -1
  235. package/extensions/mattermost/package.json +1 -1
  236. package/extensions/memory-core/package.json +1 -1
  237. package/extensions/memory-lancedb/package.json +1 -1
  238. package/extensions/minimax/package.json +1 -1
  239. package/extensions/minimax-portal-auth/package.json +1 -1
  240. package/extensions/mistral/package.json +1 -1
  241. package/extensions/moonshot/package.json +1 -1
  242. package/extensions/msteams/CHANGELOG.md +1 -1
  243. package/extensions/msteams/package.json +1 -1
  244. package/extensions/nextcloud-talk/package.json +1 -1
  245. package/extensions/nostr/CHANGELOG.md +1 -1
  246. package/extensions/nostr/package.json +1 -1
  247. package/extensions/open-prose/package.json +1 -1
  248. package/extensions/openai/package.json +1 -1
  249. package/extensions/openai-realtime/package.json +1 -1
  250. package/extensions/openrouter/package.json +1 -1
  251. package/extensions/perplexity-search/package.json +1 -1
  252. package/extensions/searxng-search/package.json +1 -1
  253. package/extensions/signal/package.json +1 -1
  254. package/extensions/slack/package.json +1 -1
  255. package/extensions/synology-chat/package.json +1 -1
  256. package/extensions/telegram/package.json +1 -1
  257. package/extensions/tlon/package.json +1 -1
  258. package/extensions/twitch/CHANGELOG.md +1 -1
  259. package/extensions/twitch/package.json +1 -1
  260. package/extensions/ui-surfaces/package.json +1 -1
  261. package/extensions/voice-call/CHANGELOG.md +1 -1
  262. package/extensions/voice-call/package.json +1 -1
  263. package/extensions/whatsapp/package.json +1 -1
  264. package/extensions/zai/package.json +1 -1
  265. package/extensions/zalo/CHANGELOG.md +1 -1
  266. package/extensions/zalo/package.json +1 -1
  267. package/extensions/zalouser/CHANGELOG.md +1 -1
  268. package/extensions/zalouser/package.json +1 -1
  269. package/package.json +1 -1
  270. package/dist/github-copilot-token-DrVydgnY.js +0 -106
  271. package/dist/paths-BIDPYPVC.js +0 -233
  272. package/dist/plugin-sdk/agent-turn-execute-Co_96UFp.js +0 -61
  273. package/dist/plugin-sdk/deliver-5MyFMK8o.js +0 -34
  274. package/dist/plugin-sdk/manager-B9WMktLu.js +0 -14
  275. package/dist/plugin-sdk/provider-dispatcher-uLJ5yzx1.js +0 -61
  276. package/dist/plugin-sdk/send-vp7qbuoy.js +0 -23
  277. package/dist/subsystem-DoQFckDJ.js +0 -2777
@@ -1,61 +1,61 @@
1
1
  import { i as resolveAgentDir, s as resolveAgentWorkspaceDir, x as ensureAgentWorkspace } from "./agent-scope-Js3kUihf.js";
2
2
  import "./paths-B_gs59ga.js";
3
3
  import "./subsystem-DynBFcQj.js";
4
- import { Cn as loadSessionStore, Kn as resolveSessionFilePath, Ma as DEFAULT_PROVIDER, Xn as resolveStorePath, h as resolveThinkingDefault, ja as DEFAULT_MODEL, kn as saveSessionStore } from "./model-selection-DkRYDpst.js";
4
+ import { Cn as loadSessionStore, Kn as resolveSessionFilePath, Ma as DEFAULT_PROVIDER, Xn as resolveStorePath, h as resolveThinkingDefault, ja as DEFAULT_MODEL, kn as saveSessionStore } from "./model-selection-DFW5CGMj.js";
5
5
  import { a as resolveAgentIdentity } from "./reply-prefix-4eNR7tt6.js";
6
6
  import "./github-copilot-token-BJeEWDJb.js";
7
- import "./send-Cl-ugSMv.js";
8
- import "./send-Dy4zxtn3.js";
7
+ import "./send-Dv__vEQx.js";
8
+ import "./send-CS1yI0B4.js";
9
9
  import "./tokens-D81t1pbF.js";
10
- import { a as resolveAgentTimeoutMs, t as runEmbeddedPiAgent } from "./pi-embedded-BSVP6xD2.js";
11
- import "./sessions-B-dL4q0P.js";
10
+ import { a as resolveAgentTimeoutMs, t as runEmbeddedPiAgent } from "./pi-embedded-CL5jkXds.js";
11
+ import "./sessions-A1wDmvXO.js";
12
12
  import "./diagnostic-events-DMwgeRgr.js";
13
13
  import "./diagnostic-XckGznW_.js";
14
14
  import "./diagnostic-session-state-CkpWUesj.js";
15
15
  import "./redact-DsVjtfGq.js";
16
16
  import "./command-queue-K_AfPnin.js";
17
17
  import "./image-ops-Dk3eDp_u.js";
18
- import "./pi-model-discovery-B5oKc4R3.js";
19
- import "./chat-content-DtaSiJ_7.js";
20
- import "./chrome-BRVJGvQa.js";
21
- import "./ws-CWxX8WDm.js";
22
- import "./skills-CMwL1GBr.js";
18
+ import "./pi-model-discovery-DiGB5xAq.js";
19
+ import "./chat-content-B7yKTLAY.js";
20
+ import "./chrome-DQ2kyZpc.js";
21
+ import "./ws-CQigqc-W.js";
22
+ import "./skills-D7jLGkoP.js";
23
23
  import "./path-alias-guards-nWrE5acE.js";
24
24
  import "./errors-B_bbUZmd.js";
25
25
  import "./fs-safe-CFEZK0gv.js";
26
- import "./proxy-env-C0UK-5dm.js";
26
+ import "./proxy-env-RzbogHFe.js";
27
27
  import "./store-CMoTRwPk.js";
28
28
  import "./thinking-D6R5MauW.js";
29
- import "./nudge-Chvj0Rw2.js";
30
- import "./models-config-BaSANr-E.js";
31
- import "./audio-transcription-runner-MJ65xlDX.js";
32
- import "./pi-embedded-utils-BF4B99Db.js";
33
- import "./fetch-BzeUsif1.js";
34
- import "./fetch-guard-D49piGJ5.js";
35
- import "./api-key-rotation-DAI1NT_a.js";
36
- import "./chunk-CGvXEMAJ.js";
37
- import "./markdown-tables-CzhZ9VCB.js";
38
- import "./ir-vVwcX8JG.js";
29
+ import "./nudge-DklIe0bB.js";
30
+ import "./models-config-tNRAxYqz.js";
31
+ import "./audio-transcription-runner-Bk1wu6OC.js";
32
+ import "./pi-embedded-utils-D9zLeiKy.js";
33
+ import "./fetch-JiVpsY-F.js";
34
+ import "./fetch-guard-Dn6Z6n6a.js";
35
+ import "./api-key-rotation-1GnreUfv.js";
36
+ import "./chunk-BBj2TedD.js";
37
+ import "./markdown-tables-7TebvIj0.js";
38
+ import "./ir-Bra81NIe.js";
39
39
  import "./render-95l30zcf.js";
40
- import "./commands-registry-BO2o7Un9.js";
41
- import "./user-run-recording-Bax2KSZY.js";
42
- import "./recorder-BowlGHGe.js";
43
- import "./agent-turn-runner-y0WL6xuI.js";
40
+ import "./commands-registry-b4F_78R4.js";
41
+ import "./user-run-recording-CTOXtrSm.js";
42
+ import "./recorder-DRV1SIKe.js";
43
+ import "./agent-turn-runner-BkWusthz.js";
44
44
  import "./pairing-files-IkbpvWkm.js";
45
- import "./runs-5zWtWfx5.js";
46
- import "./outbound-message-hooks-bMw-LLuz.js";
47
- import "./deliver-x1MM90HA.js";
48
- import "./fetch-Cpgrvssj.js";
49
- import "./skill-commands-1Axnvvz6.js";
50
- import "./tables-rCzAF-en.js";
51
- import "./reply-directives-DarQZxqY.js";
52
- import "./send-DJypuRge.js";
53
- import "./outbound-attachment-DegoJUYB.js";
54
- import "./send-DdyIJ_uy.js";
55
- import "./resolve-route-B15qdahX.js";
56
- import "./session-meta-DgpwY0ah.js";
57
- import "./replies-7qxW8HcU.js";
58
- import "./manager-DRfrqzWR.js";
59
- import "./query-expansion-BVj0lCGG.js";
45
+ import "./runs-CAO_rrxJ.js";
46
+ import "./outbound-message-hooks-CrrbzX7U.js";
47
+ import "./deliver-BQSIZZRd.js";
48
+ import "./fetch-DQjTi7nc.js";
49
+ import "./skill-commands-CZ8IAEbM.js";
50
+ import "./tables-BFlTcF5k.js";
51
+ import "./reply-directives-D4Hftiqp.js";
52
+ import "./send-FQrlCKRx.js";
53
+ import "./outbound-attachment-BeSAM8qU.js";
54
+ import "./send-T9aTnSyS.js";
55
+ import "./resolve-route-D96zWGGF.js";
56
+ import "./session-meta-CyokAxEY.js";
57
+ import "./replies-BL7cHT2h.js";
58
+ import "./manager-DIIInXxQ.js";
59
+ import "./query-expansion-Dm_RIg6M.js";
60
60
 
61
61
  export { DEFAULT_MODEL, DEFAULT_PROVIDER, ensureAgentWorkspace, loadSessionStore, resolveAgentDir, resolveAgentIdentity, resolveAgentTimeoutMs, resolveAgentWorkspaceDir, resolveSessionFilePath, resolveStorePath, resolveThinkingDefault, runEmbeddedPiAgent, saveSessionStore };
@@ -1,4 +1,4 @@
1
- import { a as bindAbortRelay } from "./fetch-guard-D49piGJ5.js";
1
+ import { a as bindAbortRelay } from "./fetch-guard-Dn6Z6n6a.js";
2
2
 
3
3
  //#region src/infra/fetch.ts
4
4
  const wrapFetchWithAbortSignalMarker = Symbol.for("openclaw.fetch.abort-signal-wrapped");
@@ -1,13 +1,13 @@
1
- import { c as resolveAgentWorkspaceDir } from "./agent-scope-BudmZlc1.js";
2
- import { l as resolveStateDir } from "./paths-BIDPYPVC.js";
3
- import { mt as resolvePreferredOpenClawTmpDir } from "./subsystem-DoQFckDJ.js";
1
+ import { c as resolveAgentWorkspaceDir } from "./agent-scope-CoIdVzmg.js";
2
+ import { l as resolveStateDir } from "./paths-B_gs59ga.js";
3
+ import { mt as resolvePreferredOpenClawTmpDir } from "./subsystem-DynBFcQj.js";
4
4
  import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
5
- import { U as loadConfig } from "./model-selection-2-pBJbaC.js";
6
- import { t as redactSensitiveText } from "./redact-Cp-v7ZNA.js";
7
- import { c as detectMime, l as extensionForMime } from "./image-ops-BiBI-uAf.js";
8
- import { n as formatErrorChainMessage } from "./errors-DnS9ngr1.js";
5
+ import { U as loadConfig } from "./model-selection-_StPBPAp.js";
6
+ import { t as redactSensitiveText } from "./redact-CysJDryP.js";
7
+ import { c as detectMime, l as extensionForMime } from "./image-ops-DEUr_rAC.js";
8
+ import { n as formatErrorChainMessage } from "./errors-BzL6hu4G.js";
9
9
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-Cj-XaaTu.js";
10
- import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-BnKTeFyb.js";
10
+ import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-BySb6coS.js";
11
11
  import path from "node:path";
12
12
 
13
13
  //#region src/media/local-roots.ts
@@ -1,4 +1,4 @@
1
- import { a as bindAbortRelay } from "./fetch-guard-BEue3kvx.js";
1
+ import { a as bindAbortRelay } from "./fetch-guard-BySb6coS.js";
2
2
 
3
3
  //#region src/infra/fetch.ts
4
4
  const wrapFetchWithAbortSignalMarker = Symbol.for("openclaw.fetch.abort-signal-wrapped");
@@ -2,12 +2,12 @@ import { s as resolveAgentWorkspaceDir } from "./agent-scope-Js3kUihf.js";
2
2
  import { l as resolveStateDir } from "./paths-B_gs59ga.js";
3
3
  import { mt as resolvePreferredOpenClawTmpDir } from "./subsystem-DynBFcQj.js";
4
4
  import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
5
- import { U as loadConfig } from "./model-selection-DkRYDpst.js";
5
+ import { U as loadConfig } from "./model-selection-DFW5CGMj.js";
6
6
  import { t as redactSensitiveText } from "./redact-DsVjtfGq.js";
7
7
  import { c as detectMime, l as extensionForMime } from "./image-ops-Dk3eDp_u.js";
8
8
  import { n as formatErrorChainMessage } from "./errors-B_bbUZmd.js";
9
9
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-CWMxbvLB.js";
10
- import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-D49piGJ5.js";
10
+ import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-Dn6Z6n6a.js";
11
11
  import path from "node:path";
12
12
 
13
13
  //#region src/media/local-roots.ts
@@ -1,5 +1,5 @@
1
- import { S as logWarn, x as logInfo } from "./workspace-DOy2M7yN.js";
2
- import { c as resolvePinnedHostnameWithPolicy, i as createPinnedDispatcher, n as SsrFBlockedError, o as isPrivateIpAddress, r as closeDispatcher, t as hasProxyEnvConfigured } from "./proxy-env-DdoaBr4H.js";
1
+ import { S as logWarn, x as logInfo } from "./workspace-xnzx7wEV.js";
2
+ import { c as resolvePinnedHostnameWithPolicy, i as createPinnedDispatcher, n as SsrFBlockedError, o as isPrivateIpAddress, r as closeDispatcher, t as hasProxyEnvConfigured } from "./proxy-env-dFmQfhFb.js";
3
3
  import { EnvHttpProxyAgent, FormData, ProxyAgent, fetch as fetch$1 } from "undici";
4
4
 
5
5
  //#region src/utils/fetch-timeout.ts
@@ -1,5 +1,5 @@
1
1
  import { M as logWarn, j as logInfo } from "./agent-scope-Js3kUihf.js";
2
- import { c as resolvePinnedHostnameWithPolicy, i as createPinnedDispatcher, n as SsrFBlockedError, o as isPrivateIpAddress, r as closeDispatcher, t as hasProxyEnvConfigured } from "./proxy-env-C0UK-5dm.js";
2
+ import { c as resolvePinnedHostnameWithPolicy, i as createPinnedDispatcher, n as SsrFBlockedError, o as isPrivateIpAddress, r as closeDispatcher, t as hasProxyEnvConfigured } from "./proxy-env-RzbogHFe.js";
3
3
  import { EnvHttpProxyAgent, FormData, ProxyAgent, fetch as fetch$1 } from "undici";
4
4
 
5
5
  //#region src/utils/fetch-timeout.ts
@@ -1,6 +1,6 @@
1
- import { s as parseBooleanValue, t as readManifestNamespace } from "./legacy-names-Bx5L8LWT.js";
1
+ import { s as parseBooleanValue, t as readManifestNamespace } from "./legacy-names-D7ywm6_7.js";
2
2
  import path from "node:path";
3
- import fs from "node:fs";
3
+ import syncFs from "node:fs";
4
4
  import JSON5 from "json5";
5
5
  import YAML from "yaml";
6
6
 
@@ -92,7 +92,7 @@ function hasBinary(bin) {
92
92
  for (const part of parts) for (const ext of extensions) {
93
93
  const candidate = path.join(part, bin + ext);
94
94
  try {
95
- fs.accessSync(candidate, fs.constants.X_OK);
95
+ syncFs.accessSync(candidate, syncFs.constants.X_OK);
96
96
  hasBinaryCache.set(bin, true);
97
97
  return true;
98
98
  } catch {}
@@ -1,11 +1,11 @@
1
- import { u as expandHomePrefix } from "./paths-BIDPYPVC.js";
2
- import { B as hasNodeErrorCode, H as isPathInside, I as sameFileIdentity, U as isSymlinkOpenError, V as isNotFoundPathError } from "./subsystem-DoQFckDJ.js";
3
- import { S as logWarn } from "./workspace-DOy2M7yN.js";
4
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-BXXI1YTn.js";
1
+ import { u as expandHomePrefix } from "./paths-B_gs59ga.js";
2
+ import { B as hasNodeErrorCode, H as isPathInside, I as sameFileIdentity, U as isSymlinkOpenError, V as isNotFoundPathError } from "./subsystem-DynBFcQj.js";
3
+ import { S as logWarn } from "./workspace-xnzx7wEV.js";
4
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-aXY57qPv.js";
5
5
  import path from "node:path";
6
6
  import { constants } from "node:fs";
7
7
  import os from "node:os";
8
- import fs$1 from "node:fs/promises";
8
+ import fs from "node:fs/promises";
9
9
  import { randomUUID } from "node:crypto";
10
10
  import { pipeline } from "node:stream/promises";
11
11
 
@@ -25,19 +25,19 @@ const ensureTrailingSep = (value) => value.endsWith(path.sep) ? value : value +
25
25
  async function expandRelativePathWithHome(relativePath) {
26
26
  let home = process.env.HOME || process.env.USERPROFILE || os.homedir();
27
27
  try {
28
- home = await fs$1.realpath(home);
28
+ home = await fs.realpath(home);
29
29
  } catch {}
30
30
  return expandHomePrefix(relativePath, { home });
31
31
  }
32
32
  async function openVerifiedLocalFile(filePath, options) {
33
33
  try {
34
- if ((await fs$1.lstat(filePath)).isDirectory()) throw new SafeOpenError("not-file", "not a file");
34
+ if ((await fs.lstat(filePath)).isDirectory()) throw new SafeOpenError("not-file", "not a file");
35
35
  } catch (err) {
36
36
  if (err instanceof SafeOpenError) throw err;
37
37
  }
38
38
  let handle;
39
39
  try {
40
- handle = await fs$1.open(filePath, OPEN_READ_FLAGS);
40
+ handle = await fs.open(filePath, OPEN_READ_FLAGS);
41
41
  } catch (err) {
42
42
  if (isNotFoundPathError(err)) throw new SafeOpenError("not-found", "file not found");
43
43
  if (isSymlinkOpenError(err)) throw new SafeOpenError("symlink", "symlink open blocked", { cause: err });
@@ -45,13 +45,13 @@ async function openVerifiedLocalFile(filePath, options) {
45
45
  throw err;
46
46
  }
47
47
  try {
48
- const [stat, lstat] = await Promise.all([handle.stat(), fs$1.lstat(filePath)]);
48
+ const [stat, lstat] = await Promise.all([handle.stat(), fs.lstat(filePath)]);
49
49
  if (lstat.isSymbolicLink()) throw new SafeOpenError("symlink", "symlink not allowed");
50
50
  if (!stat.isFile()) throw new SafeOpenError("not-file", "not a file");
51
51
  if (options?.rejectHardlinks && stat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
52
52
  if (!sameFileIdentity(stat, lstat)) throw new SafeOpenError("path-mismatch", "path changed during read");
53
- const realPath = await fs$1.realpath(filePath);
54
- const realStat = await fs$1.stat(realPath);
53
+ const realPath = await fs.realpath(filePath);
54
+ const realStat = await fs.stat(realPath);
55
55
  if (options?.rejectHardlinks && realStat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
56
56
  if (!sameFileIdentity(stat, realStat)) throw new SafeOpenError("path-mismatch", "path mismatch");
57
57
  return {
@@ -69,7 +69,7 @@ async function openVerifiedLocalFile(filePath, options) {
69
69
  async function resolvePathWithinRoot(params) {
70
70
  let rootReal;
71
71
  try {
72
- rootReal = await fs$1.realpath(params.rootDir);
72
+ rootReal = await fs.realpath(params.rootDir);
73
73
  } catch (err) {
74
74
  if (isNotFoundPathError(err)) throw new SafeOpenError("not-found", "root dir not found");
75
75
  throw err;
@@ -170,7 +170,7 @@ function buildAtomicWriteTempPath(targetPath) {
170
170
  return path.join(dir, `.${base}.${process.pid}.${randomUUID()}.tmp`);
171
171
  }
172
172
  async function writeTempFileForAtomicReplace(params) {
173
- const tempHandle = await fs$1.open(params.tempPath, OPEN_WRITE_CREATE_FLAGS, params.mode);
173
+ const tempHandle = await fs.open(params.tempPath, OPEN_WRITE_CREATE_FLAGS, params.mode);
174
174
  try {
175
175
  if (typeof params.data === "string") await tempHandle.writeFile(params.data, params.encoding ?? "utf8");
176
176
  else await tempHandle.writeFile(params.data);
@@ -180,7 +180,7 @@ async function writeTempFileForAtomicReplace(params) {
180
180
  }
181
181
  }
182
182
  async function verifyAtomicWriteResult(params) {
183
- const rootWithSep = ensureTrailingSep(await fs$1.realpath(params.rootDir));
183
+ const rootWithSep = ensureTrailingSep(await fs.realpath(params.rootDir));
184
184
  const opened = await openVerifiedLocalFile(params.targetPath, { rejectHardlinks: true });
185
185
  try {
186
186
  if (!sameFileIdentity(opened.stat, params.expectedStat)) throw new SafeOpenError("path-mismatch", "path changed during write");
@@ -191,13 +191,13 @@ async function verifyAtomicWriteResult(params) {
191
191
  }
192
192
  async function resolveOpenedFileRealPathForHandle(handle, ioPath) {
193
193
  try {
194
- return await fs$1.realpath(ioPath);
194
+ return await fs.realpath(ioPath);
195
195
  } catch (err) {
196
196
  if (!isNotFoundPathError(err)) throw err;
197
197
  }
198
198
  const fdCandidates = process.platform === "linux" ? [`/proc/self/fd/${handle.fd}`, `/dev/fd/${handle.fd}`] : process.platform === "win32" ? [] : [`/dev/fd/${handle.fd}`];
199
199
  for (const fdPath of fdCandidates) try {
200
- return await fs$1.realpath(fdPath);
200
+ return await fs.realpath(fdPath);
201
201
  } catch {}
202
202
  throw new SafeOpenError("path-mismatch", "unable to resolve opened file path");
203
203
  }
@@ -212,10 +212,10 @@ async function openWritableFileWithinRoot(params) {
212
212
  } catch (err) {
213
213
  throw new SafeOpenError("invalid-path", "path alias escape blocked", { cause: err });
214
214
  }
215
- if (params.mkdir !== false) await fs$1.mkdir(path.dirname(resolved), { recursive: true });
215
+ if (params.mkdir !== false) await fs.mkdir(path.dirname(resolved), { recursive: true });
216
216
  let ioPath = resolved;
217
217
  try {
218
- const resolvedRealPath = await fs$1.realpath(resolved);
218
+ const resolvedRealPath = await fs.realpath(resolved);
219
219
  if (!isPathInside(rootWithSep, resolvedRealPath)) throw new SafeOpenError("outside-workspace", "file is outside workspace root");
220
220
  ioPath = resolvedRealPath;
221
221
  } catch (err) {
@@ -227,10 +227,10 @@ async function openWritableFileWithinRoot(params) {
227
227
  let createdForWrite = false;
228
228
  try {
229
229
  try {
230
- handle = await fs$1.open(ioPath, OPEN_WRITE_EXISTING_FLAGS, fileMode);
230
+ handle = await fs.open(ioPath, OPEN_WRITE_EXISTING_FLAGS, fileMode);
231
231
  } catch (err) {
232
232
  if (!isNotFoundPathError(err)) throw err;
233
- handle = await fs$1.open(ioPath, OPEN_WRITE_CREATE_FLAGS, fileMode);
233
+ handle = await fs.open(ioPath, OPEN_WRITE_CREATE_FLAGS, fileMode);
234
234
  createdForWrite = true;
235
235
  }
236
236
  } catch (err) {
@@ -244,7 +244,7 @@ async function openWritableFileWithinRoot(params) {
244
244
  if (!stat.isFile()) throw new SafeOpenError("invalid-path", "path is not a regular file under root");
245
245
  if (stat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
246
246
  try {
247
- const lstat = await fs$1.lstat(ioPath);
247
+ const lstat = await fs.lstat(ioPath);
248
248
  if (lstat.isSymbolicLink() || !lstat.isFile()) throw new SafeOpenError("invalid-path", "path is not a regular file under root");
249
249
  if (!sameFileIdentity(stat, lstat)) throw new SafeOpenError("path-mismatch", "path changed during write");
250
250
  } catch (err) {
@@ -252,7 +252,7 @@ async function openWritableFileWithinRoot(params) {
252
252
  }
253
253
  const realPath = await resolveOpenedFileRealPathForHandle(handle, ioPath);
254
254
  openedRealPath = realPath;
255
- const realStat = await fs$1.stat(realPath);
255
+ const realStat = await fs.stat(realPath);
256
256
  if (!sameFileIdentity(stat, realStat)) throw new SafeOpenError("path-mismatch", "path mismatch");
257
257
  if (realStat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
258
258
  if (!isPathInside(rootWithSep, realPath)) throw new SafeOpenError("outside-workspace", "file is outside workspace root");
@@ -267,7 +267,7 @@ async function openWritableFileWithinRoot(params) {
267
267
  const cleanupCreatedPath = createdForWrite && err instanceof SafeOpenError;
268
268
  const cleanupPath = openedRealPath ?? ioPath;
269
269
  await handle.close().catch(() => {});
270
- if (cleanupCreatedPath) await fs$1.rm(cleanupPath, { force: true }).catch(() => {});
270
+ if (cleanupCreatedPath) await fs.rm(cleanupPath, { force: true }).catch(() => {});
271
271
  throw err;
272
272
  }
273
273
  }
@@ -290,7 +290,7 @@ async function writeFileWithinRoot(params) {
290
290
  encoding: params.encoding,
291
291
  mode: targetMode || 384
292
292
  });
293
- await fs$1.rename(tempPath, destinationPath);
293
+ await fs.rename(tempPath, destinationPath);
294
294
  tempPath = null;
295
295
  try {
296
296
  await verifyAtomicWriteResult({
@@ -303,7 +303,7 @@ async function writeFileWithinRoot(params) {
303
303
  throw err;
304
304
  }
305
305
  } finally {
306
- if (tempPath) await fs$1.rm(tempPath, { force: true }).catch(() => {});
306
+ if (tempPath) await fs.rm(tempPath, { force: true }).catch(() => {});
307
307
  }
308
308
  }
309
309
  async function copyFileWithinRoot(params) {
@@ -331,7 +331,7 @@ async function copyFileWithinRoot(params) {
331
331
  });
332
332
  await pipeline(sourceStream, targetStream);
333
333
  } catch (err) {
334
- if (target?.createdForWrite) await fs$1.rm(target.openedRealPath, { force: true }).catch(() => {});
334
+ if (target?.createdForWrite) await fs.rm(target.openedRealPath, { force: true }).catch(() => {});
335
335
  throw err;
336
336
  } finally {
337
337
  if (!sourceClosedByStream) await source.handle.close().catch(() => {});
@@ -175,7 +175,7 @@ import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUp
175
175
  import { t as reconcileBundledInstalls } from "./reconcile-bundled-DVtY46J8.js";
176
176
  import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-FLRpN4Mm.js";
177
177
  import "./onboarding.secret-input-DHve3Wa-.js";
178
- import { t as runOnboardingWizard } from "./onboarding-vLVDuEr7.js";
178
+ import { t as runOnboardingWizard } from "./onboarding-DXRhSAcO.js";
179
179
  import { a as CONTROL_UI_V2_SERVICE_NAME, i as webBundleMissingMessage, n as buildUserClientRuntimeConfig, o as buildControlUiV2RuntimeConfig, r as resolvePackagedWebBundleRootSync, t as USER_CLIENT_ID } from "./runtime-config-60rqOPs5.js";
180
180
  import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-D1g_JEFQ.js";
181
181
  import { a as readChatHistoryPage, c as REPLY_CONTEXT_CUSTOM_TYPE, d as admitUiActionHead, f as bindUiActionTurn, g as UiSurfaceRefSchema, h as assertValidParams, i as decodeHistoryCursor, l as buildReplyContextPayload, m as unsubscribeSessionChanges, o as resolveDbLeafEntryId, p as reserveUiActionAdmission, r as InvalidHistoryCursorError, s as resolveDbMessageEntryById, t as sessionsHandlers, u as UI_ACTION_CUSTOM_TYPE } from "./sessions-CqTY6R_o.js";
@@ -9688,6 +9688,7 @@ function isGatewayErrorShape(value) {
9688
9688
  function stripUndefinedEntryFields(patch) {
9689
9689
  return Object.fromEntries(Object.entries(patch).filter(([, value]) => value !== void 0));
9690
9690
  }
9691
+ var SessionSendPolicyDenied = class extends Error {};
9691
9692
  async function runSessionResetFromAgent(params) {
9692
9693
  return await new Promise((resolve) => {
9693
9694
  let settled = false;
@@ -9976,7 +9977,7 @@ const agentHandlers = {
9976
9977
  });
9977
9978
  }
9978
9979
  }
9979
- if (resolveSendPolicy({
9980
+ if (!(storePath && !oneShotPlan.internalSessionEffects) && resolveSendPolicy({
9980
9981
  cfg,
9981
9982
  entry: entry ? {
9982
9983
  ...entry,
@@ -9992,7 +9993,7 @@ const agentHandlers = {
9992
9993
  }
9993
9994
  if (storePath && !oneShotPlan.internalSessionEffects) {
9994
9995
  let admissionCollision = false;
9995
- let policyRecheckDenied = false;
9996
+ let policyDenied = false;
9996
9997
  const persisted = await updateSessionStore(storePath, (store) => {
9997
9998
  const held = store[canonicalSessionKey]?.sessionId;
9998
9999
  if (admittedNewSessionId && held && held !== admittedNewSessionId) {
@@ -10015,7 +10016,7 @@ const agentHandlers = {
10015
10016
  }
10016
10017
  }
10017
10018
  const effectiveEntry = source ? mergeSessionEntry(source, stripUndefinedEntryFields({
10018
- sessionId: nextEntryPatch.sessionId,
10019
+ sessionId: admittedNewSessionId ?? (source.sessionId ? void 0 : nextEntryPatch.sessionId),
10019
10020
  updatedAt: nextEntryPatch.updatedAt,
10020
10021
  spawnedBy: nextEntryPatch.spawnedBy,
10021
10022
  channel: source.channel ? void 0 : request.channel?.trim() || void 0,
@@ -10030,12 +10031,17 @@ const agentHandlers = {
10030
10031
  }));
10031
10032
  if (resolveSendPolicy({
10032
10033
  cfg,
10033
- entry: effectiveEntry,
10034
+ entry: source ? {
10035
+ ...source,
10036
+ actor: source.actor ?? routeStampCandidate
10037
+ } : {
10038
+ ...effectiveEntry,
10039
+ channel: entry?.channel,
10040
+ chatType: entry?.chatType,
10041
+ actor: entry?.actor ?? routeStampCandidate
10042
+ },
10034
10043
  sessionKey: canonicalKey
10035
- }) === "deny") {
10036
- policyRecheckDenied = true;
10037
- return;
10038
- }
10044
+ }) === "deny") throw new SessionSendPolicyDenied();
10039
10045
  pruneLegacyStoreKeys({
10040
10046
  store,
10041
10047
  canonicalKey: target.canonicalKey,
@@ -10043,8 +10049,11 @@ const agentHandlers = {
10043
10049
  });
10044
10050
  store[canonicalSessionKey] = effectiveEntry;
10045
10051
  return effectiveEntry;
10052
+ }).catch((err) => {
10053
+ if (!(err instanceof SessionSendPolicyDenied)) throw err;
10054
+ policyDenied = true;
10046
10055
  });
10047
- if (policyRecheckDenied) {
10056
+ if (policyDenied) {
10048
10057
  respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, "send blocked by session policy"));
10049
10058
  return;
10050
10059
  }
@@ -10053,6 +10062,7 @@ const agentHandlers = {
10053
10062
  return;
10054
10063
  }
10055
10064
  sessionEntry = persisted;
10065
+ resolvedSessionId = persisted?.sessionId ?? resolvedSessionId;
10056
10066
  }
10057
10067
  if (!oneShotPlan.internalSessionEffects && (canonicalSessionKey === mainSessionKey || canonicalSessionKey === "global")) {
10058
10068
  context.addChatRun(idem, {
@@ -175,7 +175,7 @@ import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUp
175
175
  import { t as reconcileBundledInstalls } from "./reconcile-bundled-C2O6l6xl.js";
176
176
  import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-C6jPY8mC.js";
177
177
  import "./onboarding.secret-input-CGZRLs69.js";
178
- import { t as runOnboardingWizard } from "./onboarding-CDHMZKiy.js";
178
+ import { t as runOnboardingWizard } from "./onboarding-C1f94rh1.js";
179
179
  import { a as CONTROL_UI_V2_SERVICE_NAME, i as webBundleMissingMessage, n as buildUserClientRuntimeConfig, o as buildControlUiV2RuntimeConfig, r as resolvePackagedWebBundleRootSync, t as USER_CLIENT_ID } from "./runtime-config-C3elfZ8o.js";
180
180
  import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-BnRCjqCx.js";
181
181
  import { a as readChatHistoryPage, c as REPLY_CONTEXT_CUSTOM_TYPE, d as admitUiActionHead, f as bindUiActionTurn, g as UiSurfaceRefSchema, h as assertValidParams, i as decodeHistoryCursor, l as buildReplyContextPayload, m as unsubscribeSessionChanges, o as resolveDbLeafEntryId, p as reserveUiActionAdmission, r as InvalidHistoryCursorError, s as resolveDbMessageEntryById, t as sessionsHandlers, u as UI_ACTION_CUSTOM_TYPE } from "./sessions-C2ZQ1A-F.js";
@@ -9690,6 +9690,7 @@ function isGatewayErrorShape(value) {
9690
9690
  function stripUndefinedEntryFields(patch) {
9691
9691
  return Object.fromEntries(Object.entries(patch).filter(([, value]) => value !== void 0));
9692
9692
  }
9693
+ var SessionSendPolicyDenied = class extends Error {};
9693
9694
  async function runSessionResetFromAgent(params) {
9694
9695
  return await new Promise((resolve) => {
9695
9696
  let settled = false;
@@ -9978,7 +9979,7 @@ const agentHandlers = {
9978
9979
  });
9979
9980
  }
9980
9981
  }
9981
- if (resolveSendPolicy({
9982
+ if (!(storePath && !oneShotPlan.internalSessionEffects) && resolveSendPolicy({
9982
9983
  cfg,
9983
9984
  entry: entry ? {
9984
9985
  ...entry,
@@ -9994,7 +9995,7 @@ const agentHandlers = {
9994
9995
  }
9995
9996
  if (storePath && !oneShotPlan.internalSessionEffects) {
9996
9997
  let admissionCollision = false;
9997
- let policyRecheckDenied = false;
9998
+ let policyDenied = false;
9998
9999
  const persisted = await updateSessionStore(storePath, (store) => {
9999
10000
  const held = store[canonicalSessionKey]?.sessionId;
10000
10001
  if (admittedNewSessionId && held && held !== admittedNewSessionId) {
@@ -10017,7 +10018,7 @@ const agentHandlers = {
10017
10018
  }
10018
10019
  }
10019
10020
  const effectiveEntry = source ? mergeSessionEntry(source, stripUndefinedEntryFields({
10020
- sessionId: nextEntryPatch.sessionId,
10021
+ sessionId: admittedNewSessionId ?? (source.sessionId ? void 0 : nextEntryPatch.sessionId),
10021
10022
  updatedAt: nextEntryPatch.updatedAt,
10022
10023
  spawnedBy: nextEntryPatch.spawnedBy,
10023
10024
  channel: source.channel ? void 0 : request.channel?.trim() || void 0,
@@ -10032,12 +10033,17 @@ const agentHandlers = {
10032
10033
  }));
10033
10034
  if (resolveSendPolicy({
10034
10035
  cfg,
10035
- entry: effectiveEntry,
10036
+ entry: source ? {
10037
+ ...source,
10038
+ actor: source.actor ?? routeStampCandidate
10039
+ } : {
10040
+ ...effectiveEntry,
10041
+ channel: entry?.channel,
10042
+ chatType: entry?.chatType,
10043
+ actor: entry?.actor ?? routeStampCandidate
10044
+ },
10036
10045
  sessionKey: canonicalKey
10037
- }) === "deny") {
10038
- policyRecheckDenied = true;
10039
- return;
10040
- }
10046
+ }) === "deny") throw new SessionSendPolicyDenied();
10041
10047
  pruneLegacyStoreKeys({
10042
10048
  store,
10043
10049
  canonicalKey: target.canonicalKey,
@@ -10045,8 +10051,11 @@ const agentHandlers = {
10045
10051
  });
10046
10052
  store[canonicalSessionKey] = effectiveEntry;
10047
10053
  return effectiveEntry;
10054
+ }).catch((err) => {
10055
+ if (!(err instanceof SessionSendPolicyDenied)) throw err;
10056
+ policyDenied = true;
10048
10057
  });
10049
- if (policyRecheckDenied) {
10058
+ if (policyDenied) {
10050
10059
  respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, "send blocked by session policy"));
10051
10060
  return;
10052
10061
  }
@@ -10055,6 +10064,7 @@ const agentHandlers = {
10055
10064
  return;
10056
10065
  }
10057
10066
  sessionEntry = persisted;
10067
+ resolvedSessionId = persisted?.sessionId ?? resolvedSessionId;
10058
10068
  }
10059
10069
  if (!oneShotPlan.internalSessionEffects && (canonicalSessionKey === mainSessionKey || canonicalSessionKey === "global")) {
10060
10070
  context.addChatRun(idem, {
@@ -1,4 +1,4 @@
1
- import { _ as runExec } from "./workspace-DOy2M7yN.js";
1
+ import { _ as runExec } from "./workspace-xnzx7wEV.js";
2
2
  import path from "node:path";
3
3
  import os from "node:os";
4
4
  import fs from "node:fs/promises";
package/dist/index.js CHANGED
@@ -125,7 +125,7 @@ import { t as isMainModule } from "./is-main-B3FbWStI.js";
125
125
  import { t as ensureOpenClawCliOnPath } from "./path-env-DnW5y1gm.js";
126
126
  import { t as assertSupportedRuntime } from "./runtime-guard-BSmtNHNu.js";
127
127
  import "./ports-BP-0f1b5.js";
128
- import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-X8qIC1Px.js";
128
+ import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-BM_flY1J.js";
129
129
  import "./plugin-registry-CJ-2Wr1t.js";
130
130
  import { n as resolveCliChannelOptions } from "./channel-options-Bx_pFXKx.js";
131
131
  import process$1 from "node:process";
@@ -1,8 +1,8 @@
1
- import { f as logVerbose, h as shouldLogVerbose, st as resolveUserPath } from "./subsystem-DoQFckDJ.js";
2
- 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-BiBI-uAf.js";
3
- import { o as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-D96d8swI.js";
4
- import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-ChtdmCYU.js";
5
- import { a as chunkText } from "./chunk-BHQuzJtJ.js";
1
+ import { f as logVerbose, h as shouldLogVerbose, st as resolveUserPath } from "./subsystem-DynBFcQj.js";
2
+ 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-DEUr_rAC.js";
3
+ import { o as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-DOdeIkaS.js";
4
+ import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-DUVm-Rj1.js";
5
+ import { a as chunkText } from "./chunk-BAxcOCcV.js";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs/promises";
8
8
  import { fileURLToPath } from "node:url";
@@ -1,8 +1,8 @@
1
1
  import { f as logVerbose, h as shouldLogVerbose, st as resolveUserPath } from "./subsystem-DynBFcQj.js";
2
2
  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-Dk3eDp_u.js";
3
3
  import { o as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-CFEZK0gv.js";
4
- import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-BzeUsif1.js";
5
- import { a as chunkText } from "./chunk-CGvXEMAJ.js";
4
+ import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-JiVpsY-F.js";
5
+ import { a as chunkText } from "./chunk-BBj2TedD.js";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs/promises";
8
8
  import { fileURLToPath } from "node:url";
@@ -1,4 +1,4 @@
1
- import { t as createSubsystemLogger } from "./subsystem-DoQFckDJ.js";
1
+ import { t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
2
2
 
3
3
  //#region src/utils/boolean.ts
4
4
  const DEFAULT_TRUTHY = [