@multiplytech/openclaw 2026.2.15-pairing-code.3 → 2026.2.15-pairing-code.4

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 (189) hide show
  1. package/dist/{accounts-DyinIlq4.js → accounts-BvmssTEF.js} +1 -1
  2. package/dist/{accounts-Bu2DSNpQ.js → accounts-CyxQBpl8.js} +1 -1
  3. package/dist/{active-listener-BIBYF9eG.js → active-listener-BruG-udz.js} +1 -1
  4. package/dist/{agent-DTNvKM2P.js → agent-BxxBd9wX.js} +2 -2
  5. package/dist/{agent-DoKOzDAt.js → agent-D0LfsEPF.js} +2 -2
  6. package/dist/{agent-scope-BIw4Bz2L.js → agent-scope-DUn-XVYs.js} +3 -3
  7. package/dist/{agents-DB8xHohl.js → agents-jAnRMd-A.js} +2 -2
  8. package/dist/{audio-preflight-BHSwqB70.js → audio-preflight-CbR1q2CT.js} +17 -17
  9. package/dist/{audio-preflight-CeC5WuRi.js → audio-preflight-kYQdd_bY.js} +4 -4
  10. package/dist/{auth-choice-CTK4oGkS.js → auth-choice-B6AdPtCu.js} +1 -1
  11. package/dist/{auth-choice-C3--CpEI.js → auth-choice-GrNENivg.js} +1 -1
  12. package/dist/{banner-DlnL7Slb.js → banner-D3tgjbUi.js} +1 -1
  13. package/dist/build-info.json +3 -3
  14. package/dist/bundled/boot-md/handler.js +38 -38
  15. package/dist/bundled/bootstrap-extra-files/handler.js +4 -4
  16. package/dist/bundled/command-logger/handler.js +1 -1
  17. package/dist/bundled/session-memory/handler.js +32 -32
  18. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  19. package/dist/{channel-activity-C4rZNocg.js → channel-activity--HqvQlN3.js} +1 -1
  20. package/dist/{channel-options-DjpVPRIl.js → channel-options-C0ayB7mx.js} +1 -1
  21. package/dist/{channel-options-DTszr7UZ.js → channel-options-CgdgqIte.js} +1 -1
  22. package/dist/{channel-web-D7bde6n5.js → channel-web-BTTW7H_d.js} +2 -2
  23. package/dist/{channels-cli-u2oRC89U.js → channels-cli-BcDsE2LA.js} +4 -4
  24. package/dist/{channels-cli-HhdoLxhz.js → channels-cli-p5hPpQzH.js} +4 -4
  25. package/dist/{chrome-BR14_3nU.js → chrome-B2PpxswT.js} +7 -7
  26. package/dist/{chrome-DlM4kwMc.js → chrome-BtogRifc.js} +18 -18
  27. package/dist/{cli-BmEEG6LF.js → cli-Cwzdze-z.js} +1 -1
  28. package/dist/{cli-DALx-L2z.js → cli-Oxxb4axp.js} +1 -1
  29. package/dist/{command-registry-Zu61QmVf.js → command-registry-C8q1jb3h.js} +9 -9
  30. package/dist/{common-BB2PeD4P.js → common-BJE3S8zA.js} +2 -2
  31. package/dist/{completion-cli-sZBZnfMK.js → completion-cli-CIcsx6ic.js} +1 -1
  32. package/dist/{completion-cli-C-q-FkeT.js → completion-cli-DQd6XSG4.js} +2 -2
  33. package/dist/{config-BA8Xs1ek.js → config-CYlbDcBt.js} +34 -34
  34. package/dist/{config-cli-CGOyIowg.js → config-cli-BmW3yfH6.js} +1 -1
  35. package/dist/{config-cli-BWKb4EMZ.js → config-cli-CZLDgS2E.js} +1 -1
  36. package/dist/{configure-DOqQjooh.js → configure-B0_p6Z1n.js} +3 -3
  37. package/dist/{configure-Vvq-cip8.js → configure-CRaYQ6hS.js} +3 -3
  38. package/dist/{deliver-CV4a0MBa.js → deliver-BwXnLuWH.js} +16 -16
  39. package/dist/{deliver-DOrBYvPC.js → deliver-C7HjLIB7.js} +1 -1
  40. package/dist/{deps-CtD8VF2g.js → deps-i6fBS1Dw.js} +1 -1
  41. package/dist/{doctor-DtN-z3_C.js → doctor-AUivq-af.js} +4 -4
  42. package/dist/{doctor-C4_8AvIH.js → doctor-Cs7rfmA-.js} +4 -4
  43. package/dist/{doctor-completion-I1dEiTU-.js → doctor-completion-C2PR6GJF.js} +1 -1
  44. package/dist/{doctor-completion-CHjJchGS.js → doctor-completion-CtBAIy0Z.js} +1 -1
  45. package/dist/entry.js +1 -1
  46. package/dist/{exec-C9rZpEqA.js → exec-C_bNT00b.js} +17 -17
  47. package/dist/extensionAPI.js +6 -6
  48. package/dist/{fetch-Dyb5pqye.js → fetch-mr22CaT4.js} +2 -2
  49. package/dist/{frontmatter-Bk_vZq47.js → frontmatter-BetN20QN.js} +2 -2
  50. package/dist/{gateway-cli-CjGNIUv4.js → gateway-cli-BgGnL3cE.js} +9 -9
  51. package/dist/{gateway-cli-DLgphSfL.js → gateway-cli-M8r3XcpJ.js} +9 -9
  52. package/dist/{github-copilot-token-BXEGgIt5.js → github-copilot-token-U5JrmjNt.js} +7 -7
  53. package/dist/{health-B7GSkRWi.js → health-BqoIIu1u.js} +2 -2
  54. package/dist/{health-CZTNBGMI.js → health-shfUNbPM.js} +2 -2
  55. package/dist/{heartbeat-visibility-B9nOsKDd.js → heartbeat-visibility-BEMg5PJB.js} +1 -1
  56. package/dist/{heartbeat-visibility-Dgp5aP37.js → heartbeat-visibility-B_kubgRp.js} +1 -1
  57. package/dist/{hooks-cli-CB0R6yP9.js → hooks-cli-99NPDBK1.js} +2 -2
  58. package/dist/{hooks-cli-C8IQCUf9.js → hooks-cli-ec5DFn5g.js} +2 -2
  59. package/dist/{image-CIO7-OG5.js → image-CRFk69Io.js} +1 -1
  60. package/dist/{image-DVTZYmDL.js → image-DN3RgnPr.js} +4 -4
  61. package/dist/{image-ops-7EDUjzca.js → image-ops-CKPJXWk4.js} +9 -9
  62. package/dist/index.js +9 -9
  63. package/dist/{ir-eyTjTBlP.js → ir-C-hSqOPD.js} +6 -6
  64. package/dist/llm-slug-generator.js +32 -32
  65. package/dist/{login-NEYiBobK.js → login-BFkQgAbM.js} +1 -1
  66. package/dist/{login-CfzZlhYy.js → login-CmhHGO4I.js} +1 -1
  67. package/dist/{login-CrD6iwIT.js → login-CwQj2jUX.js} +1 -1
  68. package/dist/{login-CFjSEIg1.js → login-Dydm4XDa.js} +3 -3
  69. package/dist/{login-qr-B92LRmnh.js → login-qr-B_NTKK4T.js} +1 -1
  70. package/dist/{login-qr-LM0fkvty.js → login-qr-BrIxb_5N.js} +8 -8
  71. package/dist/{login-qr-CmkMkiw0.js → login-qr-CEOlIdRe.js} +1 -1
  72. package/dist/{login-qr-D3hsc4br.js → login-qr-CF5T7Eew.js} +1 -1
  73. package/dist/{manager-ihPMEKim.js → manager-Ec86Dapd.js} +10 -10
  74. package/dist/{model-auth-BBAJ-iuC.js → model-auth-COYibYBO.js} +8 -8
  75. package/dist/{models-VeXFWmzm.js → models-D688pDKn.js} +2 -2
  76. package/dist/{models-cli-fOdGdULJ.js → models-cli-CcHjNOe3.js} +3 -3
  77. package/dist/{models-cli-QFp-Qadk.js → models-cli-GWtfGvki.js} +2 -2
  78. package/dist/{onboard-DkkjXP5u.js → onboard-BmB1TAqN.js} +2 -2
  79. package/dist/{onboard-ApR__J6N.js → onboard-C5_njUCe.js} +2 -2
  80. package/dist/{onboard-channels-Oo2BI8vk.js → onboard-channels-BATBIQiN.js} +1 -1
  81. package/dist/{onboard-channels-CTkeYXWn.js → onboard-channels-BeXdUwL0.js} +1 -1
  82. package/dist/{onboarding-BvGs6yhQ.js → onboarding-Cjbb0fRA.js} +3 -3
  83. package/dist/{onboarding-DE9maYL1.js → onboarding-txZtcVMA.js} +3 -3
  84. package/dist/{onboarding.finalize-DFyOM5B6.js → onboarding.finalize-BI8zTyGF.js} +6 -6
  85. package/dist/{onboarding.finalize-CS-chLDk.js → onboarding.finalize-CSj3Rf0J.js} +5 -5
  86. package/dist/{outbound-N8cZjkHg.js → outbound-C8YnTFjo.js} +5 -5
  87. package/dist/{outbound-attachment-BAu7a9Bk.js → outbound-attachment-C8Qf4dh8.js} +2 -2
  88. package/dist/{outbound-send-deps-SJCtmIUG.js → outbound-send-deps-BCi2C-Sb.js} +1 -1
  89. package/dist/{paths-CMYSfM3T.js → paths-Bbik2tb_.js} +2 -2
  90. package/dist/{paths-CyR9Pa1R.js → paths-CkkDESQ2.js} +5 -5
  91. package/dist/{pi-auth-json-BX0whbu8.js → pi-auth-json-MhfZXNOP.js} +6 -6
  92. package/dist/{pi-embedded-D_ek_HF_.js → pi-embedded-8ou24X6D.js} +18 -18
  93. package/dist/{pi-embedded-helpers-DHT11gwA.js → pi-embedded-helpers-DmwtjJVo.js} +48 -48
  94. package/dist/{pi-embedded-helpers-D3YxFr03.js → pi-embedded-helpers-Dow6Qreh.js} +4 -4
  95. package/dist/{pi-embedded-DyKQ3bSU.js → pi-embedded-wVlKSjNK.js} +120 -120
  96. package/dist/{plugin-registry-Dcizpoio.js → plugin-registry-D_bG1PT_.js} +1 -1
  97. package/dist/{plugin-registry-DBpayaga.js → plugin-registry-N4ZFQdQ9.js} +1 -1
  98. package/dist/plugin-sdk/{active-listener-CFLZdKRQ.js → active-listener-CkyAenz6.js} +2 -2
  99. package/dist/plugin-sdk/{agent-scope-ip6rBrUD.js → agent-scope-DWZdK6Cr.js} +1 -1
  100. package/dist/plugin-sdk/{audio-preflight-C0NlyreL.js → audio-preflight-BzSvof9i.js} +12 -12
  101. package/dist/plugin-sdk/{channel-web-Za6SnC7J.js → channel-web-BXr_pHKk.js} +11 -11
  102. package/dist/plugin-sdk/{chrome-OZ5Ge8PR.js → chrome-BLYh1Ek9.js} +1 -1
  103. package/dist/plugin-sdk/{common-pKa0kElY.js → common-STTVkT-Z.js} +2 -2
  104. package/dist/plugin-sdk/{config-DelXkt58.js → config-iUJxJaTT.js} +8 -8
  105. package/dist/plugin-sdk/{deliver-ebYNQy_5.js → deliver-Bkdn7hYJ.js} +6 -6
  106. package/dist/plugin-sdk/{exec-C5lqk9X4.js → exec-9HIVkGqi.js} +2 -2
  107. package/dist/plugin-sdk/{fetch-Cw_7QfME.js → fetch-DjHoyhHv.js} +2 -2
  108. package/dist/plugin-sdk/{image-2KL1DOmN.js → image-DolmBtru.js} +4 -4
  109. package/dist/plugin-sdk/{image-ops-zm4O3fkk.js → image-ops-DvO68zWD.js} +4 -4
  110. package/dist/plugin-sdk/index.js +23 -23
  111. package/dist/plugin-sdk/{ir-BEwiHV7R.js → ir-D6TOa8wy.js} +4 -4
  112. package/dist/plugin-sdk/{login-DG-oB1Gg.js → login-CGRU_9Nh.js} +3 -3
  113. package/dist/plugin-sdk/{login-qr-DjYOgNGQ.js → login-qr-D6D-dPg-.js} +5 -5
  114. package/dist/plugin-sdk/{manager-Cqyl7HDP.js → manager-DSG4npLd.js} +5 -5
  115. package/dist/plugin-sdk/{model-selection-DHMRsTNB.js → model-selection-BfTuBvS4.js} +2 -2
  116. package/dist/plugin-sdk/{outbound-DT2nH6dY.js → outbound-BuWEi6UJ.js} +4 -4
  117. package/dist/plugin-sdk/{paths-wRVSwmkX.js → paths-6C0IeDIg.js} +1 -1
  118. package/dist/plugin-sdk/{pi-auth-json-XTF0mVQ6.js → pi-auth-json-CdSpUvvH.js} +3 -3
  119. package/dist/plugin-sdk/{pi-embedded-helpers-C3_rwWkJ.js → pi-embedded-helpers-rNIrRqeN.js} +13 -13
  120. package/dist/plugin-sdk/{pw-ai-BYr2wRwE.js → pw-ai-DHGDCfpy.js} +2 -2
  121. package/dist/plugin-sdk/{qmd-manager-CY7j7J3V.js → qmd-manager-D0FXZkrS.js} +4 -4
  122. package/dist/plugin-sdk/{reply-CnWG5ty5.js → reply-BvOTUN2t.js} +35 -35
  123. package/dist/plugin-sdk/{runner-DxPwS4ed.js → runner-CaaUwzMJ.js} +7 -7
  124. package/dist/plugin-sdk/{session-BO6X9uoj.js → session-Cjs4HuZk.js} +9 -4
  125. package/dist/plugin-sdk/{sqlite-CKrK6KKr.js → sqlite-QNHsO4bW.js} +2 -2
  126. package/dist/plugin-sdk/{tool-images-C4GaQjrF.js → tool-images-BuctNDly.js} +2 -2
  127. package/dist/plugin-sdk/web-CUrXnjRV.js +30 -0
  128. package/dist/plugin-sdk/{whatsapp-actions-C5T64qvX.js → whatsapp-actions-3adtwpVJ.js} +11 -11
  129. package/dist/{plugins-cli-Dc9-hwnS.js → plugins-cli-CFOLjXM-.js} +2 -2
  130. package/dist/{plugins-cli-ByM99YMv.js → plugins-cli-D2KHK9jR.js} +2 -2
  131. package/dist/{program-CxbZh7UH.js → program-B9I5xkOF.js} +7 -7
  132. package/dist/{program-context-BAwPjqcT.js → program-context-C3C2WLNP.js} +17 -17
  133. package/dist/{provider-auth-helpers-BHnRj7nc.js → provider-auth-helpers-DIPDa8Lw.js} +1 -1
  134. package/dist/{provider-auth-helpers-iolF14w8.js → provider-auth-helpers-DYPDXQQP.js} +1 -1
  135. package/dist/{pw-ai-xh9cPTDX.js → pw-ai-BCyIw4W4.js} +3 -3
  136. package/dist/{pw-ai-QsOEPS_1.js → pw-ai-Bbd79y0r.js} +1 -1
  137. package/dist/{qmd-manager-DtmZgEoS.js → qmd-manager-CgC5sB-T.js} +6 -6
  138. package/dist/{register.agent-BBVjFp8Y.js → register.agent-BedOGhk-.js} +7 -7
  139. package/dist/{register.agent-C4IrpTkN.js → register.agent-JL4_r2Jb.js} +6 -6
  140. package/dist/{register.configure-CUZo4Aot.js → register.configure-D_-8trFJ.js} +6 -6
  141. package/dist/{register.configure-aZaemwQh.js → register.configure-U45T1EJ-.js} +6 -6
  142. package/dist/{register.maintenance-BUk55ZfL.js → register.maintenance-BNhGCK92.js} +7 -7
  143. package/dist/{register.maintenance-k-FF9sjN.js → register.maintenance-TMdlbc45.js} +8 -8
  144. package/dist/{register.message-rDz6Pyj3.js → register.message-BdQletmJ.js} +3 -3
  145. package/dist/{register.message-C85LDxMG.js → register.message-DKw_hGiP.js} +3 -3
  146. package/dist/{register.onboard-qQ-XzgeJ.js → register.onboard-D5LHgdqV.js} +4 -4
  147. package/dist/{register.onboard-DoeqvAhF.js → register.onboard-DVHlSfZa.js} +4 -4
  148. package/dist/{register.setup-BYePf2X9.js → register.setup-CAVftQvz.js} +4 -4
  149. package/dist/{register.setup-UW5rhwoL.js → register.setup-Dfhxwzgk.js} +4 -4
  150. package/dist/{register.status-health-sessions-C7tVEUfl.js → register.status-health-sessions-YCJQ83my.js} +3 -3
  151. package/dist/{register.status-health-sessions-D-e34zX_.js → register.status-health-sessions-ixyM5rDz.js} +3 -3
  152. package/dist/{register.subclis-tuSSdE3-.js → register.subclis-D-kjKwwz.js} +9 -9
  153. package/dist/{reply-jLqhHIBQ.js → reply-d6yV4wB_.js} +4 -4
  154. package/dist/{retry-B0RhK9tX.js → retry-D1bxhFWp.js} +1 -1
  155. package/dist/{run-main-B3U7jH0W.js → run-main-D5duEqg3.js} +14 -14
  156. package/dist/{runner-nMdrG8eK.js → runner-DGYLHL8R.js} +7 -7
  157. package/dist/{runner-DED-FFOX.js → runner-oDUAvejt.js} +1 -1
  158. package/dist/{send-BRIcpOAj.js → send-CKSrJ7se.js} +5 -5
  159. package/dist/{send-DzhCsWw9.js → send-DULTJ0oK.js} +7 -7
  160. package/dist/{send-CNibEQip.js → send-Df7eglyR.js} +6 -6
  161. package/dist/{send-CWOrEtrR.js → send-DjP-Miy_.js} +7 -7
  162. package/dist/{send-BMQRcdbF.js → send-z4yxEOnF.js} +4 -4
  163. package/dist/{server-node-events-CKA4Mn5e.js → server-node-events-BE6fD68d.js} +3 -3
  164. package/dist/{server-node-events-CF_WTOvc.js → server-node-events-C51Bayv9.js} +3 -3
  165. package/dist/{session-BrloLgwj.js → session-2uX9t1PO.js} +13 -8
  166. package/dist/{session-D0vLMCo1.js → session-B5I8E41_.js} +7 -2
  167. package/dist/{session-EJQdFRC5.js → session-Bu5MF744.js} +7 -2
  168. package/dist/{session-CJ3QUnhn.js → session-ZppYapGg.js} +7 -2
  169. package/dist/{sqlite-Bfoh6OgV.js → sqlite-CBMbuGLX.js} +4 -4
  170. package/dist/{status-D0bufmRu.js → status-8g-vfjfP.js} +2 -2
  171. package/dist/{status-DfjRvBXf.js → status-BRNeaZhV.js} +1 -1
  172. package/dist/{status-DrjhxuYR.js → status-D0P0XQqw.js} +1 -1
  173. package/dist/{status-DVBJLUIs.js → status-NfZ6FkuQ.js} +2 -2
  174. package/dist/{store-B6Y3aOaY.js → store-m4I2z_5t.js} +2 -2
  175. package/dist/{subagent-registry-Do5aAYdm.js → subagent-registry-DJBVFvb4.js} +4 -4
  176. package/dist/{tables-BhgdJIJu.js → tables-7DihLyDw.js} +1 -1
  177. package/dist/{tool-images-DRiKq4of.js → tool-images-hzyBQ0Og.js} +2 -2
  178. package/dist/{update-cli-COHKHs55.js → update-cli-BOXR9slg.js} +7 -7
  179. package/dist/{update-cli-Dz5XBQ_v.js → update-cli-BZ2fDrwx.js} +8 -8
  180. package/dist/{update-runner-DIgoatPE.js → update-runner-B55O98W8.js} +1 -1
  181. package/dist/{update-runner-rbu-IrlQ.js → update-runner-BZFeJzUi.js} +1 -1
  182. package/dist/{web-B-mup9LH.js → web-By5urMji.js} +4 -4
  183. package/dist/{web-BTK9UUaM.js → web-C5vqAHQC.js} +36 -36
  184. package/dist/{web-DIO2jYwG.js → web-CtSLAgT_.js} +3 -3
  185. package/dist/{web-RzuY5nXI.js → web-DoaI-RpC.js} +8 -8
  186. package/dist/{whatsapp-actions-x16Ismcy.js → whatsapp-actions-C4JR_6XT.js} +14 -14
  187. package/dist/{workspace-LSLFINSz.js → workspace-CgGZnIx_.js} +5 -5
  188. package/package.json +2 -1
  189. package/dist/plugin-sdk/web-DY7ps8Jl.js +0 -30
@@ -1,53 +1,53 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { a as resolveOAuthDir, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-CyR9Pa1R.js";
3
- import { A as isAcpSessionKey, C as normalizeAccountId$3, D as resolveThreadSessionKeys, E as resolveAgentIdFromSessionKey, M as isSubagentSessionKey, N as parseAgentSessionKey, O as sanitizeAgentId, P as resolveThreadParentSessionKey, S as classifySessionKeyShape, T as normalizeMainKey, _ as DEFAULT_AGENT_ID, b as buildAgentPeerSessionKey, f as loadWorkspaceBootstrapFiles, g as DEFAULT_ACCOUNT_ID$1, j as isCronSessionKey, k as getSubagentDepth, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as DEFAULT_MAIN_KEY, w as normalizeAgentId, y as buildAgentMainSessionKey } from "./workspace-LSLFINSz.js";
4
- import { $ as shortenHomePath, A as listPluginCommands, B as escapeRegExp, C as requireActivePluginRegistry, D as clearPluginCommands, E as normalizePluginHttpPath, F as CONFIG_DIR, H as isPlainObject, K as normalizeE164, L as clampInt, M as createInternalHookEvent, O as executePluginCommand, P as triggerInternalHook, Q as shortenHomeInString, S as getActivePluginRegistry, T as createPluginRegistry, U as isRecord$1, V as formatTerminalLink, X as resolveUserPath, Z as safeParseJson, a as logDebug, b as normalizeChannelId, c as logWarn, ct as shouldLogVerbose, d as defaultRuntime, dt as colorize, et as sleep, f as clearActiveProgressLine, ft as isRich, g as CHAT_CHANNEL_ORDER, gt as normalizeLogLevel, i as spawnWithFallback, it as danger, j as matchPluginCommand, k as getPluginCommandSpecs, l as createSubsystemLogger, m as unregisterActiveProgressLine, mt as getChildLogger, n as runExec, o as logError, ot as logVerbose, p as registerActiveProgressLine, pt as theme, r as formatSpawnError, rt as truncateUtf16Safe, s as logInfo, st as setVerbose, t as runCommandWithTimeout, tt as sliceUtf16Safe, u as createNonExitingRuntime, ut as warn, w as setActivePluginRegistry, y as normalizeAnyChannelId, z as ensureDir$3 } from "./exec-C9rZpEqA.js";
5
- import { c as resolveDefaultAgentId, d as resolveSessionAgentIds, i as resolveAgentModelFallbacksOverride, n as resolveAgentConfig, o as resolveAgentSkillsFilter, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId } from "./agent-scope-BIw4Bz2L.js";
6
- import { C as initializeGlobalHookRunner, E as isSilentReplyText, S as getGlobalHookRunner, T as SILENT_REPLY_TOKEN, _ as throwIfAborted, b as splitMediaFromOutput, c as applyReplyThreading, d as shouldSuppressMessagingToolReplies, f as createReplyToModeFilterForChannel, g as normalizeTargetForProvider, h as normalizeChannelTargetInput, l as filterMessagingToolDuplicates, m as buildTargetResolverSignature, o as normalizeReplyPayloadsForDelivery, p as resolveReplyToMode, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as isRenderablePayload, v as parseReplyDirectives, w as HEARTBEAT_TOKEN, x as parseInlineDirectives$1, y as MEDIA_TOKEN_RE } from "./deliver-CV4a0MBa.js";
7
- import { B as listEnabledTelegramAccounts, C as GATEWAY_CLIENT_NAMES, D as imageMimeFromFormat, F as getChannelPlugin, G as resolveSlackAccount, H as resolveTelegramAccount, I as listChannelPlugins, J as resolveSlackBotToken, L as normalizeChannelId$1, M as MAX_IMAGE_BYTES, O as isAudioFileName, P as mediaKindFromMime, Q as normalizeDiscordToken, R as isWhatsAppGroupJid, S as GATEWAY_CLIENT_MODES, T as extensionForMime, U as resolveTelegramToken, V as listTelegramAccountIds, W as listBindings, X as listEnabledDiscordAccounts, Y as normalizeChatType, Z as resolveDiscordAccount, _ as listDeliverableMessageChannels, a as resizeToJpeg, b as resolveMessageChannel, f as INTERNAL_MESSAGE_CHANNEL, g as isMarkdownCapableMessageChannel, h as isInternalMessageChannel, k as isGifMedia, l as isBlockedHostname, n as getImageMetadata, o as SsrFBlockedError, p as isDeliverableMessageChannel, q as resolveSlackAppToken, u as isPrivateIpAddress, v as normalizeMessageChannel, w as detectMime, x as GATEWAY_CLIENT_IDS, y as resolveGatewayMessageChannel, z as normalizeWhatsAppTarget } from "./image-ops-7EDUjzca.js";
2
+ import { a as resolveOAuthDir, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-CkkDESQ2.js";
3
+ import { A as isAcpSessionKey, C as normalizeAccountId$3, D as resolveThreadSessionKeys, E as resolveAgentIdFromSessionKey, M as isSubagentSessionKey, N as parseAgentSessionKey, O as sanitizeAgentId, P as resolveThreadParentSessionKey, S as classifySessionKeyShape, T as normalizeMainKey, _ as DEFAULT_AGENT_ID, b as buildAgentPeerSessionKey, f as loadWorkspaceBootstrapFiles, g as DEFAULT_ACCOUNT_ID$1, j as isCronSessionKey, k as getSubagentDepth, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as DEFAULT_MAIN_KEY, w as normalizeAgentId, y as buildAgentMainSessionKey } from "./workspace-CgGZnIx_.js";
4
+ import { $ as shortenHomePath, A as listPluginCommands, B as escapeRegExp, C as requireActivePluginRegistry, D as clearPluginCommands, E as normalizePluginHttpPath, F as CONFIG_DIR, H as isPlainObject, K as normalizeE164, L as clampInt, M as createInternalHookEvent, O as executePluginCommand, P as triggerInternalHook, Q as shortenHomeInString, S as getActivePluginRegistry, T as createPluginRegistry, U as isRecord$1, V as formatTerminalLink, X as resolveUserPath, Z as safeParseJson, a as logDebug, b as normalizeChannelId, c as logWarn, ct as shouldLogVerbose, d as defaultRuntime, dt as colorize, et as sleep, f as clearActiveProgressLine, ft as isRich, g as CHAT_CHANNEL_ORDER, gt as normalizeLogLevel, i as spawnWithFallback, it as danger, j as matchPluginCommand, k as getPluginCommandSpecs, l as createSubsystemLogger, m as unregisterActiveProgressLine, mt as getChildLogger, n as runExec, o as logError, ot as logVerbose, p as registerActiveProgressLine, pt as theme, r as formatSpawnError, rt as truncateUtf16Safe, s as logInfo, st as setVerbose, t as runCommandWithTimeout, tt as sliceUtf16Safe, u as createNonExitingRuntime, ut as warn, w as setActivePluginRegistry, y as normalizeAnyChannelId, z as ensureDir$3 } from "./exec-C_bNT00b.js";
5
+ import { c as resolveDefaultAgentId, d as resolveSessionAgentIds, i as resolveAgentModelFallbacksOverride, n as resolveAgentConfig, o as resolveAgentSkillsFilter, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId } from "./agent-scope-DUn-XVYs.js";
6
+ import { C as initializeGlobalHookRunner, E as isSilentReplyText, S as getGlobalHookRunner, T as SILENT_REPLY_TOKEN, _ as throwIfAborted, b as splitMediaFromOutput, c as applyReplyThreading, d as shouldSuppressMessagingToolReplies, f as createReplyToModeFilterForChannel, g as normalizeTargetForProvider, h as normalizeChannelTargetInput, l as filterMessagingToolDuplicates, m as buildTargetResolverSignature, o as normalizeReplyPayloadsForDelivery, p as resolveReplyToMode, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as isRenderablePayload, v as parseReplyDirectives, w as HEARTBEAT_TOKEN, x as parseInlineDirectives$1, y as MEDIA_TOKEN_RE } from "./deliver-BwXnLuWH.js";
7
+ import { B as listEnabledTelegramAccounts, C as GATEWAY_CLIENT_NAMES, D as imageMimeFromFormat, F as getChannelPlugin, G as resolveSlackAccount, H as resolveTelegramAccount, I as listChannelPlugins, J as resolveSlackBotToken, L as normalizeChannelId$1, M as MAX_IMAGE_BYTES, O as isAudioFileName, P as mediaKindFromMime, Q as normalizeDiscordToken, R as isWhatsAppGroupJid, S as GATEWAY_CLIENT_MODES, T as extensionForMime, U as resolveTelegramToken, V as listTelegramAccountIds, W as listBindings, X as listEnabledDiscordAccounts, Y as normalizeChatType, Z as resolveDiscordAccount, _ as listDeliverableMessageChannels, a as resizeToJpeg, b as resolveMessageChannel, f as INTERNAL_MESSAGE_CHANNEL, g as isMarkdownCapableMessageChannel, h as isInternalMessageChannel, k as isGifMedia, l as isBlockedHostname, n as getImageMetadata, o as SsrFBlockedError, p as isDeliverableMessageChannel, q as resolveSlackAppToken, u as isPrivateIpAddress, v as normalizeMessageChannel, w as detectMime, x as GATEWAY_CLIENT_IDS, y as resolveGatewayMessageChannel, z as normalizeWhatsAppTarget } from "./image-ops-CKPJXWk4.js";
8
8
  import { t as parseBooleanValue$1 } from "./boolean-Bb19hm9Y.js";
9
- import { A as resolveModelRefFromString, B as DEFAULT_MODEL, C as isCliProvider, E as normalizeProviderId, H as resolveAuthProfileDisplayLabel, K as resolveShellEnvFallbackTimeoutMs, L as OLLAMA_NATIVE_BASE_URL, O as resolveConfiguredModelRef, R as createOllamaStreamFn, S as buildModelAliasIndex, T as normalizeModelRef, U as normalizeSecretInput, V as DEFAULT_PROVIDER, W as getShellPathFromLoginShell, Y as isTruthyEnvValue, _ as resolveOpenClawAgentDir, a as resolveEnvApiKey, b as buildAllowedModelSet, c as resolveAuthProfileOrder, d as markAuthProfileUsed, f as resolveApiKeyForProfile, g as resolveAuthStorePathForDisplay, h as ensureAuthProfileStore, i as resolveApiKeyForProvider, j as resolveThinkingDefault, k as resolveDefaultModelForAgent, l as isProfileInCooldown, m as markAuthProfileGood, n as getCustomProviderApiKey, o as resolveModelAuthMode, p as listProfilesForProvider, r as requireApiKey, t as getApiKeyForModel, u as markAuthProfileFailure, v as withFileLock$1, w as modelKey, x as buildConfiguredAllowlistKeys, z as DEFAULT_CONTEXT_TOKENS } from "./model-auth-BBAJ-iuC.js";
9
+ import { A as resolveModelRefFromString, B as DEFAULT_MODEL, C as isCliProvider, E as normalizeProviderId, H as resolveAuthProfileDisplayLabel, K as resolveShellEnvFallbackTimeoutMs, L as OLLAMA_NATIVE_BASE_URL, O as resolveConfiguredModelRef, R as createOllamaStreamFn, S as buildModelAliasIndex, T as normalizeModelRef, U as normalizeSecretInput, V as DEFAULT_PROVIDER, W as getShellPathFromLoginShell, Y as isTruthyEnvValue, _ as resolveOpenClawAgentDir, a as resolveEnvApiKey, b as buildAllowedModelSet, c as resolveAuthProfileOrder, d as markAuthProfileUsed, f as resolveApiKeyForProfile, g as resolveAuthStorePathForDisplay, h as ensureAuthProfileStore, i as resolveApiKeyForProvider, j as resolveThinkingDefault, k as resolveDefaultModelForAgent, l as isProfileInCooldown, m as markAuthProfileGood, n as getCustomProviderApiKey, o as resolveModelAuthMode, p as listProfilesForProvider, r as requireApiKey, t as getApiKeyForModel, u as markAuthProfileFailure, v as withFileLock$1, w as modelKey, x as buildConfiguredAllowlistKeys, z as DEFAULT_CONTEXT_TOKENS } from "./model-auth-COYibYBO.js";
10
10
  import { n as resolveCliName, t as formatCliCommand } from "./command-format-BmTFj7S4.js";
11
- import { A as resolveWhatsAppAccount, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, H as webAuthExists, M as getWebAuthAgeMs, N as logWebSelfId, O as resolveAgentMaxConcurrent, P as logoutWeb, R as readWebSelfId, S as unsetConfigOverride, T as setConfigValueAtPath, _ as resolveEnableState, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, d as parseDurationMs, f as validateJsonSchemaValue, g as normalizePluginsConfig, h as applyTestPluginDefaults, i as resolveConfigSnapshotHash, k as VERSION, l as normalizeTelegramCommandName, m as discoverOpenClawPlugins, n as loadConfig, o as validateConfigObjectWithPlugins, p as loadPluginManifestRegistry, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as resolveMemorySlotDecision, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-BA8Xs1ek.js";
12
- import { a as resolveSlackWebClientOptions, i as createSlackWebClient, o as parseSlackTarget, r as markdownToSlackMrkdwnChunks, s as resolveSlackChannelId, t as sendMessageSlack } from "./send-BMQRcdbF.js";
13
- import { $ as resolveDiscordAllowListMatch, A as removeRoleDiscord, B as setChannelPermissionDiscord, C as fetchChannelInfoDiscord, D as kickMemberDiscord, E as fetchVoiceStatusDiscord, F as createChannelDiscord, G as parseDiscordTarget, H as fetchChannelPermissionsDiscord, I as deleteChannelDiscord, J as listDiscordDirectoryPeersLive, K as resolveDiscordChannelId, L as editChannelDiscord, M as listGuildEmojisDiscord, N as uploadEmojiDiscord, O as listGuildChannelsDiscord, P as uploadStickerDiscord, Q as normalizeDiscordSlug, R as moveChannelDiscord, S as createScheduledEventDiscord, T as fetchRoleInfoDiscord, U as createDiscordClient, V as stripUndefinedFields, W as chunkDiscordTextWithMode, X as isDiscordGroupAllowedByPolicy, Y as allowListMatches$1, Z as normalizeDiscordAllowList, _ as readMessagesDiscord, a as removeReactionDiscord, at as resolveGroupDmAllow, b as addRoleDiscord, c as sendStickerDiscord, ct as formatDiscordUserTag, d as deleteMessageDiscord, dt as fetchDiscord, et as resolveDiscordChannelConfigWithFallback, f as editMessageDiscord, ft as applyChannelMatchMeta, g as pinMessageDiscord, h as listThreadsDiscord, i as removeOwnReactionsDiscord, it as resolveDiscordShouldRequireMention, j as timeoutMemberDiscord, k as listScheduledEventsDiscord, l as sendVoiceMessageDiscord, lt as resolveDiscordSystemLocation, m as listPinsDiscord, mt as resolveChannelEntryMatchWithFallback, n as fetchReactionsDiscord, nt as resolveDiscordMemberAllowed, o as sendMessageDiscord, ot as shouldEmitDiscordReactionNotification, p as fetchMessageDiscord, pt as buildChannelKeyCandidates, q as listDiscordDirectoryGroupsLive, r as reactMessageDiscord, rt as resolveDiscordOwnerAllowFrom, s as sendPollDiscord, st as formatDiscordReactionEmoji, tt as resolveDiscordGuildEntry, u as createThreadDiscord, ut as resolveTimestampMs, v as searchMessagesDiscord, w as fetchMemberInfoDiscord, x as banMemberDiscord, y as unpinMessageDiscord, z as removeChannelPermissionDiscord } from "./send-DzhCsWw9.js";
14
- import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-DyinIlq4.js";
15
- import { A as hasBotMention, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramThreadSpec, I as formatLocationText, L as toLocationContext, M as resolveTelegramForumThreadId, N as resolveTelegramReplyId, O as expandTextLinks, P as resolveTelegramStreamMode, R as isVoiceCompatibleAudio, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, _ as splitTelegramCaption, a as sendMessageTelegram, b as buildSenderLabel, d as isRecoverableTelegramNetworkError, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as reactMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as deleteMessageTelegram, o as sendPollTelegram, p as markdownToTelegramHtml, r as editMessageTelegram, s as sendStickerTelegram, t as buildInlineKeyboard, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as parseTelegramTarget } from "./send-CNibEQip.js";
16
- import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-BXEGgIt5.js";
11
+ import { A as resolveWhatsAppAccount, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, H as webAuthExists, M as getWebAuthAgeMs, N as logWebSelfId, O as resolveAgentMaxConcurrent, P as logoutWeb, R as readWebSelfId, S as unsetConfigOverride, T as setConfigValueAtPath, _ as resolveEnableState, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, d as parseDurationMs, f as validateJsonSchemaValue, g as normalizePluginsConfig, h as applyTestPluginDefaults, i as resolveConfigSnapshotHash, k as VERSION, l as normalizeTelegramCommandName, m as discoverOpenClawPlugins, n as loadConfig, o as validateConfigObjectWithPlugins, p as loadPluginManifestRegistry, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as resolveMemorySlotDecision, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-CYlbDcBt.js";
12
+ import { a as resolveSlackWebClientOptions, i as createSlackWebClient, o as parseSlackTarget, r as markdownToSlackMrkdwnChunks, s as resolveSlackChannelId, t as sendMessageSlack } from "./send-z4yxEOnF.js";
13
+ import { $ as resolveDiscordAllowListMatch, A as removeRoleDiscord, B as setChannelPermissionDiscord, C as fetchChannelInfoDiscord, D as kickMemberDiscord, E as fetchVoiceStatusDiscord, F as createChannelDiscord, G as parseDiscordTarget, H as fetchChannelPermissionsDiscord, I as deleteChannelDiscord, J as listDiscordDirectoryPeersLive, K as resolveDiscordChannelId, L as editChannelDiscord, M as listGuildEmojisDiscord, N as uploadEmojiDiscord, O as listGuildChannelsDiscord, P as uploadStickerDiscord, Q as normalizeDiscordSlug, R as moveChannelDiscord, S as createScheduledEventDiscord, T as fetchRoleInfoDiscord, U as createDiscordClient, V as stripUndefinedFields, W as chunkDiscordTextWithMode, X as isDiscordGroupAllowedByPolicy, Y as allowListMatches$1, Z as normalizeDiscordAllowList, _ as readMessagesDiscord, a as removeReactionDiscord, at as resolveGroupDmAllow, b as addRoleDiscord, c as sendStickerDiscord, ct as formatDiscordUserTag, d as deleteMessageDiscord, dt as fetchDiscord, et as resolveDiscordChannelConfigWithFallback, f as editMessageDiscord, ft as applyChannelMatchMeta, g as pinMessageDiscord, h as listThreadsDiscord, i as removeOwnReactionsDiscord, it as resolveDiscordShouldRequireMention, j as timeoutMemberDiscord, k as listScheduledEventsDiscord, l as sendVoiceMessageDiscord, lt as resolveDiscordSystemLocation, m as listPinsDiscord, mt as resolveChannelEntryMatchWithFallback, n as fetchReactionsDiscord, nt as resolveDiscordMemberAllowed, o as sendMessageDiscord, ot as shouldEmitDiscordReactionNotification, p as fetchMessageDiscord, pt as buildChannelKeyCandidates, q as listDiscordDirectoryGroupsLive, r as reactMessageDiscord, rt as resolveDiscordOwnerAllowFrom, s as sendPollDiscord, st as formatDiscordReactionEmoji, tt as resolveDiscordGuildEntry, u as createThreadDiscord, ut as resolveTimestampMs, v as searchMessagesDiscord, w as fetchMemberInfoDiscord, x as banMemberDiscord, y as unpinMessageDiscord, z as removeChannelPermissionDiscord } from "./send-DULTJ0oK.js";
14
+ import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BvmssTEF.js";
15
+ import { A as hasBotMention, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramThreadSpec, I as formatLocationText, L as toLocationContext, M as resolveTelegramForumThreadId, N as resolveTelegramReplyId, O as expandTextLinks, P as resolveTelegramStreamMode, R as isVoiceCompatibleAudio, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, _ as splitTelegramCaption, a as sendMessageTelegram, b as buildSenderLabel, d as isRecoverableTelegramNetworkError, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as reactMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as deleteMessageTelegram, o as sendPollTelegram, p as markdownToTelegramHtml, r as editMessageTelegram, s as sendStickerTelegram, t as buildInlineKeyboard, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as parseTelegramTarget } from "./send-Df7eglyR.js";
16
+ import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-U5JrmjNt.js";
17
17
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Cexg1XRf.js";
18
- import { $ as updateLastRoute, $t as expandPolicyWithPluginGroups, A as isBillingAssistantError, At as createBrowserRouteContext, B as isTransientHttpError, Bt as resolveSkillsPromptForRun, C as BILLING_ERROR_USER_MESSAGE, Ct as getChannelDock, D as formatRawAssistantErrorForUi, Dt as resolveChannelGroupToolsPolicy, E as formatBillingErrorMessage, Et as resolveChannelGroupRequireMention, F as isFailoverErrorMessage, Ft as resolvePathsWithinRoot, G as resolveSandboxContext, Gt as applySkillEnvOverrides, H as parseImageSizeError, Ht as assertMediaNotDataUrl, I as isLikelyContextOverflowError, It as getBridgeAuthForPort, J as appendAssistantMessageToSessionTranscript, Jt as resolveBrowserControlAuth, K as resolveSandboxRuntimeStatus, Kt as applySkillEnvOverridesFromSnapshot, L as isRateLimitAssistantError, Lt as buildWorkspaceSkillCommandSpecs, M as isCompactionFailureError, Mt as resolveBrowserConfig, N as isContextOverflowError, Nt as resolveProfile, O as getApiErrorPayloadFingerprint, Ot as resolveConversationLabel, P as isFailoverAssistantError, Pt as DEFAULT_UPLOAD_DIR, Q as recordSessionMetaFromInbound, Qt as collectExplicitAllowlist, R as isRawApiErrorPayload, Rt as buildWorkspaceSkillSnapshot, S as isGoogleModelApi, St as deriveSessionMetaPatch, T as formatAssistantErrorText, Tt as resolveChannelGroupPolicy, U as sanitizeUserFacingText, Ut as assertSandboxPath, V as parseImageDimensionError, Vt as resolvePluginSkillDirs, W as ensureSandboxWorkspaceForSession, Wt as resolveSandboxedMediaSource, X as loadSessionStore, Xt as applyOwnerOnlyToolPolicy, Yt as resolveSandboxConfigForAgent, Z as readSessionUpdatedAt, Zt as buildPluginToolGroups, _ as sanitizeSessionMessagesImages, _t as DEFAULT_RESET_TRIGGERS, a as formatXHighModelHint, an as compileGlobPatterns, at as deliveryContextKey, b as downgradeOpenAIReasoningBlocks, c as normalizeReasoningLevel, cn as ensureSessionHeader, ct as normalizeSessionDeliveryFields, d as normalizeVerboseLevel, dn as sanitizeGoogleTurnOrdering, dt as resolveSessionKey$1, en as expandToolGroups, et as updateSessionStore, f as resolveResponseUsageMode, ft as evaluateSessionFreshness, g as normalizeTextForComparison, gt as resolveThreadFlag, h as isMessagingToolDuplicateNormalized, ht as resolveSessionResetType, i as formatThinkingLevels, in as stripPluginOnlyAllowlist, it as deliveryContextFromSession, j as isCloudCodeAssistFormatError, jt as registerBrowserRoutes, k as isAuthAssistantError, kt as resolveGroupSessionKey, l as normalizeThinkLevel, ln as resolveBootstrapMaxChars, mt as resolveSessionResetPolicy, n as validateGeminiTurns, nn as normalizeToolName, nt as isCacheEnabled, o as listThinkingLevels, on as matchesAnyGlobPattern, ot as mergeDeliveryContext, p as supportsXHighThinking, pt as resolveChannelResetConfig, q as extractDeliveryInfo, qt as ensureBrowserControlAuth, r as pickFallbackThinkingLevel, rn as resolveToolProfilePolicy, rt as resolveCacheTtlMs$1, s as normalizeElevatedLevel, sn as buildBootstrapContextFiles, st as normalizeDeliveryContext, t as validateAnthropicTurns, tn as mergeAlsoAllowPolicy, tt as updateSessionStoreEntry, u as normalizeUsageDisplay, un as resolveBootstrapTotalMaxChars, ut as acquireSessionWriteLock, v as extractToolCallsFromAssistant, vt as resolveFreshSessionTotalTokens, w as classifyFailoverReason, wt as listChannelDocks, x as isAntigravityClaude, xt as resolveMainSessionKey, y as extractToolResultId, yt as canonicalizeMainSessionAlias, z as isTimeoutErrorMessage, zt as loadWorkspaceSkillEntries } from "./pi-embedded-helpers-DHT11gwA.js";
19
- import { C as pickPrimaryTailnetIPv4, E as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as pickPrimaryLanIPv4, b as rawDataToString, v as ensureChromeExtensionRelayServer } from "./chrome-DlM4kwMc.js";
18
+ import { $ as updateLastRoute, $t as expandPolicyWithPluginGroups, A as isBillingAssistantError, At as createBrowserRouteContext, B as isTransientHttpError, Bt as resolveSkillsPromptForRun, C as BILLING_ERROR_USER_MESSAGE, Ct as getChannelDock, D as formatRawAssistantErrorForUi, Dt as resolveChannelGroupToolsPolicy, E as formatBillingErrorMessage, Et as resolveChannelGroupRequireMention, F as isFailoverErrorMessage, Ft as resolvePathsWithinRoot, G as resolveSandboxContext, Gt as applySkillEnvOverrides, H as parseImageSizeError, Ht as assertMediaNotDataUrl, I as isLikelyContextOverflowError, It as getBridgeAuthForPort, J as appendAssistantMessageToSessionTranscript, Jt as resolveBrowserControlAuth, K as resolveSandboxRuntimeStatus, Kt as applySkillEnvOverridesFromSnapshot, L as isRateLimitAssistantError, Lt as buildWorkspaceSkillCommandSpecs, M as isCompactionFailureError, Mt as resolveBrowserConfig, N as isContextOverflowError, Nt as resolveProfile, O as getApiErrorPayloadFingerprint, Ot as resolveConversationLabel, P as isFailoverAssistantError, Pt as DEFAULT_UPLOAD_DIR, Q as recordSessionMetaFromInbound, Qt as collectExplicitAllowlist, R as isRawApiErrorPayload, Rt as buildWorkspaceSkillSnapshot, S as isGoogleModelApi, St as deriveSessionMetaPatch, T as formatAssistantErrorText, Tt as resolveChannelGroupPolicy, U as sanitizeUserFacingText, Ut as assertSandboxPath, V as parseImageDimensionError, Vt as resolvePluginSkillDirs, W as ensureSandboxWorkspaceForSession, Wt as resolveSandboxedMediaSource, X as loadSessionStore, Xt as applyOwnerOnlyToolPolicy, Yt as resolveSandboxConfigForAgent, Z as readSessionUpdatedAt, Zt as buildPluginToolGroups, _ as sanitizeSessionMessagesImages, _t as DEFAULT_RESET_TRIGGERS, a as formatXHighModelHint, an as compileGlobPatterns, at as deliveryContextKey, b as downgradeOpenAIReasoningBlocks, c as normalizeReasoningLevel, cn as ensureSessionHeader, ct as normalizeSessionDeliveryFields, d as normalizeVerboseLevel, dn as sanitizeGoogleTurnOrdering, dt as resolveSessionKey$1, en as expandToolGroups, et as updateSessionStore, f as resolveResponseUsageMode, ft as evaluateSessionFreshness, g as normalizeTextForComparison, gt as resolveThreadFlag, h as isMessagingToolDuplicateNormalized, ht as resolveSessionResetType, i as formatThinkingLevels, in as stripPluginOnlyAllowlist, it as deliveryContextFromSession, j as isCloudCodeAssistFormatError, jt as registerBrowserRoutes, k as isAuthAssistantError, kt as resolveGroupSessionKey, l as normalizeThinkLevel, ln as resolveBootstrapMaxChars, mt as resolveSessionResetPolicy, n as validateGeminiTurns, nn as normalizeToolName, nt as isCacheEnabled, o as listThinkingLevels, on as matchesAnyGlobPattern, ot as mergeDeliveryContext, p as supportsXHighThinking, pt as resolveChannelResetConfig, q as extractDeliveryInfo, qt as ensureBrowserControlAuth, r as pickFallbackThinkingLevel, rn as resolveToolProfilePolicy, rt as resolveCacheTtlMs$1, s as normalizeElevatedLevel, sn as buildBootstrapContextFiles, st as normalizeDeliveryContext, t as validateAnthropicTurns, tn as mergeAlsoAllowPolicy, tt as updateSessionStoreEntry, u as normalizeUsageDisplay, un as resolveBootstrapTotalMaxChars, ut as acquireSessionWriteLock, v as extractToolCallsFromAssistant, vt as resolveFreshSessionTotalTokens, w as classifyFailoverReason, wt as listChannelDocks, x as isAntigravityClaude, xt as resolveMainSessionKey, y as extractToolResultId, yt as canonicalizeMainSessionAlias, z as isTimeoutErrorMessage, zt as loadWorkspaceSkillEntries } from "./pi-embedded-helpers-DmwtjJVo.js";
19
+ import { C as pickPrimaryTailnetIPv4, E as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as pickPrimaryLanIPv4, b as rawDataToString, v as ensureChromeExtensionRelayServer } from "./chrome-BtogRifc.js";
20
20
  import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-8mFQsaX1.js";
21
- import { n as getMediaDir, r as saveMediaBuffer } from "./store-B6Y3aOaY.js";
22
- import { t as resolveIMessageAccount } from "./accounts-Bu2DSNpQ.js";
23
- import { a as resolveSessionTranscriptPathInDir, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath } from "./paths-CMYSfM3T.js";
21
+ import { n as getMediaDir, r as saveMediaBuffer } from "./store-m4I2z_5t.js";
22
+ import { t as resolveIMessageAccount } from "./accounts-CyxQBpl8.js";
23
+ import { a as resolveSessionTranscriptPathInDir, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath } from "./paths-Bbik2tb_.js";
24
24
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-5cC8ciFz.js";
25
- import { n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-DRiKq4of.js";
26
- import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as ensureOpenClawModelsJson, y as resolveToolDisplay } from "./image-DVTZYmDL.js";
27
- import { n as resolveMemorySearchConfig } from "./manager-ihPMEKim.js";
28
- import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-Bfoh6OgV.js";
29
- import { n as retryAsync } from "./retry-B0RhK9tX.js";
30
- import { a as readNumberParam, c as readStringOrNumberParam, i as jsonResult, l as readStringParam, n as imageResult, o as readReactionParams, r as imageResultFromFile, s as readStringArrayParam, t as createActionGate } from "./common-BB2PeD4P.js";
31
- import { _ as findFenceSpanAt, a as loadWebMedia, c as resolveMarkdownTableMode, d as chunkMarkdownText, f as chunkMarkdownTextWithMode, g as resolveTextChunkLimit, h as resolveChunkMode, i as getDefaultLocalRoots, l as chunkByNewline, m as chunkTextWithMode, p as chunkText, s as getAgentScopedMediaLocalRoots, v as isSafeFenceBreak, y as parseFenceSpans } from "./ir-eyTjTBlP.js";
25
+ import { n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-hzyBQ0Og.js";
26
+ import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as ensureOpenClawModelsJson, y as resolveToolDisplay } from "./image-DN3RgnPr.js";
27
+ import { n as resolveMemorySearchConfig } from "./manager-Ec86Dapd.js";
28
+ import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-CBMbuGLX.js";
29
+ import { n as retryAsync } from "./retry-D1bxhFWp.js";
30
+ import { a as readNumberParam, c as readStringOrNumberParam, i as jsonResult, l as readStringParam, n as imageResult, o as readReactionParams, r as imageResultFromFile, s as readStringArrayParam, t as createActionGate } from "./common-BJE3S8zA.js";
31
+ import { _ as findFenceSpanAt, a as loadWebMedia, c as resolveMarkdownTableMode, d as chunkMarkdownText, f as chunkMarkdownTextWithMode, g as resolveTextChunkLimit, h as resolveChunkMode, i as getDefaultLocalRoots, l as chunkByNewline, m as chunkTextWithMode, p as chunkText, s as getAgentScopedMediaLocalRoots, v as isSafeFenceBreak, y as parseFenceSpans } from "./ir-C-hSqOPD.js";
32
32
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-ijQXfnJ1.js";
33
- import { i as fetchWithSsrFGuard, n as fetchRemoteMedia, r as readResponseWithLimit } from "./fetch-Dyb5pqye.js";
34
- import { _ as applyTemplate, a as runCapability, c as modelSupportsVision, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as findModelInCatalog, p as resolveTimeoutMs$1, r as normalizeMediaAttachments, s as loadModelCatalog, t as buildProviderRegistry, u as resolveAttachmentKind } from "./runner-nMdrG8eK.js";
33
+ import { i as fetchWithSsrFGuard, n as fetchRemoteMedia, r as readResponseWithLimit } from "./fetch-mr22CaT4.js";
34
+ import { _ as applyTemplate, a as runCapability, c as modelSupportsVision, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as findModelInCatalog, p as resolveTimeoutMs$1, r as normalizeMediaAttachments, s as loadModelCatalog, t as buildProviderRegistry, u as resolveAttachmentKind } from "./runner-DGYLHL8R.js";
35
35
  import { t as resolveFetch } from "./fetch-D8nvt_Mr.js";
36
36
  import { n as normalizePollInput } from "./polls-Bqd9Aibe.js";
37
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-BRIcpOAj.js";
38
- import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-CWOrEtrR.js";
39
- import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-C4rZNocg.js";
40
- import { t as convertMarkdownTables } from "./tables-BhgdJIJu.js";
37
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-CKSrJ7se.js";
38
+ import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-DjP-Miy_.js";
39
+ import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity--HqvQlN3.js";
40
+ import { t as convertMarkdownTables } from "./tables-7DihLyDw.js";
41
41
  import { t as makeProxyFetch } from "./proxy-D9Y1zsMX.js";
42
- import { t as getActiveWebListener } from "./active-listener-BIBYF9eG.js";
42
+ import { t as getActiveWebListener } from "./active-listener-BruG-udz.js";
43
43
  import { createRequire } from "node:module";
44
- import * as fs$2 from "node:fs/promises";
44
+ import * as fs$1 from "node:fs/promises";
45
45
  import fs from "node:fs/promises";
46
46
  import * as os$1 from "node:os";
47
47
  import os, { homedir, tmpdir } from "node:os";
48
48
  import * as path$1 from "node:path";
49
49
  import path from "node:path";
50
- import fs$1, { existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
50
+ import fsSync, { existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
51
51
  import JSON5 from "json5";
52
52
  import { execFile, execSync, spawn, spawnSync } from "node:child_process";
53
53
  import { inspect, promisify } from "node:util";
@@ -58,7 +58,7 @@ import { EdgeTTS } from "node-edge-tts";
58
58
  import crypto, { X509Certificate, randomUUID } from "node:crypto";
59
59
  import AjvPkg from "ajv";
60
60
  import { createServer } from "node:http";
61
- import WebSocket$1, { WebSocket } from "ws";
61
+ import WebSocket, { WebSocket as WebSocket$1 } from "ws";
62
62
  import { Buffer as Buffer$1 } from "node:buffer";
63
63
  import { createJiti } from "jiti";
64
64
  import { Type } from "@sinclair/typebox";
@@ -3303,7 +3303,7 @@ async function resolveOpenClawDocsPath(params) {
3303
3303
  const workspaceDir = params.workspaceDir?.trim();
3304
3304
  if (workspaceDir) {
3305
3305
  const workspaceDocs = path.join(workspaceDir, "docs");
3306
- if (fs$1.existsSync(workspaceDocs)) return workspaceDocs;
3306
+ if (fsSync.existsSync(workspaceDocs)) return workspaceDocs;
3307
3307
  }
3308
3308
  const packageRoot = await resolveOpenClawPackageRoot({
3309
3309
  cwd: params.cwd,
@@ -3312,7 +3312,7 @@ async function resolveOpenClawDocsPath(params) {
3312
3312
  });
3313
3313
  if (!packageRoot) return null;
3314
3314
  const packageDocs = path.join(packageRoot, "docs");
3315
- return fs$1.existsSync(packageDocs) ? packageDocs : null;
3315
+ return fsSync.existsSync(packageDocs) ? packageDocs : null;
3316
3316
  }
3317
3317
 
3318
3318
  //#endregion
@@ -3684,7 +3684,7 @@ async function getMemorySearchManager(params) {
3684
3684
  if (cached) return { manager: cached };
3685
3685
  }
3686
3686
  try {
3687
- const { QmdMemoryManager } = await import("./qmd-manager-DtmZgEoS.js");
3687
+ const { QmdMemoryManager } = await import("./qmd-manager-CgC5sB-T.js");
3688
3688
  const primary = await QmdMemoryManager.create({
3689
3689
  cfg: params.cfg,
3690
3690
  agentId: params.agentId,
@@ -3696,7 +3696,7 @@ async function getMemorySearchManager(params) {
3696
3696
  const wrapper = new FallbackMemoryManager({
3697
3697
  primary,
3698
3698
  fallbackFactory: async () => {
3699
- const { MemoryIndexManager } = await import("./manager-ihPMEKim.js").then((n) => n.t);
3699
+ const { MemoryIndexManager } = await import("./manager-Ec86Dapd.js").then((n) => n.t);
3700
3700
  return await MemoryIndexManager.get(params);
3701
3701
  }
3702
3702
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -3709,7 +3709,7 @@ async function getMemorySearchManager(params) {
3709
3709
  }
3710
3710
  }
3711
3711
  try {
3712
- const { MemoryIndexManager } = await import("./manager-ihPMEKim.js").then((n) => n.t);
3712
+ const { MemoryIndexManager } = await import("./manager-Ec86Dapd.js").then((n) => n.t);
3713
3713
  return { manager: await MemoryIndexManager.get(params) };
3714
3714
  } catch (err) {
3715
3715
  return {
@@ -5275,7 +5275,7 @@ function resolveDefaultIdentityPath() {
5275
5275
  return path.join(resolveStateDir(), "identity", "device.json");
5276
5276
  }
5277
5277
  function ensureDir$2(filePath) {
5278
- fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
5278
+ fsSync.mkdirSync(path.dirname(filePath), { recursive: true });
5279
5279
  }
5280
5280
  const ED25519_SPKI_PREFIX = Buffer.from("302a300506032b6570032100", "hex");
5281
5281
  function base64UrlEncode(buf) {
@@ -5311,8 +5311,8 @@ function generateIdentity() {
5311
5311
  }
5312
5312
  function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
5313
5313
  try {
5314
- if (fs$1.existsSync(filePath)) {
5315
- const raw = fs$1.readFileSync(filePath, "utf8");
5314
+ if (fsSync.existsSync(filePath)) {
5315
+ const raw = fsSync.readFileSync(filePath, "utf8");
5316
5316
  const parsed = JSON.parse(raw);
5317
5317
  if (parsed?.version === 1 && typeof parsed.deviceId === "string" && typeof parsed.publicKeyPem === "string" && typeof parsed.privateKeyPem === "string") {
5318
5318
  const derivedId = fingerprintPublicKey(parsed.publicKeyPem);
@@ -5321,9 +5321,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
5321
5321
  ...parsed,
5322
5322
  deviceId: derivedId
5323
5323
  };
5324
- fs$1.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
5324
+ fsSync.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
5325
5325
  try {
5326
- fs$1.chmodSync(filePath, 384);
5326
+ fsSync.chmodSync(filePath, 384);
5327
5327
  } catch {}
5328
5328
  return {
5329
5329
  deviceId: derivedId,
@@ -5348,9 +5348,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
5348
5348
  privateKeyPem: identity.privateKeyPem,
5349
5349
  createdAtMs: Date.now()
5350
5350
  };
5351
- fs$1.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
5351
+ fsSync.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
5352
5352
  try {
5353
- fs$1.chmodSync(filePath, 384);
5353
+ fsSync.chmodSync(filePath, 384);
5354
5354
  } catch {}
5355
5355
  return identity;
5356
5356
  }
@@ -5500,8 +5500,8 @@ function resolveDeviceAuthPath(env = process.env) {
5500
5500
  }
5501
5501
  function readStore(filePath) {
5502
5502
  try {
5503
- if (!fs$1.existsSync(filePath)) return null;
5504
- const raw = fs$1.readFileSync(filePath, "utf8");
5503
+ if (!fsSync.existsSync(filePath)) return null;
5504
+ const raw = fsSync.readFileSync(filePath, "utf8");
5505
5505
  const parsed = JSON.parse(raw);
5506
5506
  if (parsed?.version !== 1 || typeof parsed.deviceId !== "string") return null;
5507
5507
  if (!parsed.tokens || typeof parsed.tokens !== "object") return null;
@@ -5511,10 +5511,10 @@ function readStore(filePath) {
5511
5511
  }
5512
5512
  }
5513
5513
  function writeStore(filePath, store) {
5514
- fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
5515
- fs$1.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
5514
+ fsSync.mkdirSync(path.dirname(filePath), { recursive: true });
5515
+ fsSync.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
5516
5516
  try {
5517
- fs$1.chmodSync(filePath, 384);
5517
+ fsSync.chmodSync(filePath, 384);
5518
5518
  } catch {}
5519
5519
  }
5520
5520
  function loadDeviceAuthToken(params) {
@@ -6773,7 +6773,7 @@ var GatewayClient = class {
6773
6773
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
6774
6774
  });
6775
6775
  }
6776
- this.ws = new WebSocket(url, wsOptions);
6776
+ this.ws = new WebSocket$1(url, wsOptions);
6777
6777
  this.ws.on("open", () => {
6778
6778
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
6779
6779
  const tlsError = this.validateTlsFingerprint();
@@ -6976,7 +6976,7 @@ var GatewayClient = class {
6976
6976
  return null;
6977
6977
  }
6978
6978
  async request(method, params, opts) {
6979
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
6979
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
6980
6980
  const id = randomUUID();
6981
6981
  const frame = {
6982
6982
  type: "req",
@@ -8064,7 +8064,7 @@ async function routeReply(params) {
8064
8064
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
8065
8065
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
8066
8066
  try {
8067
- const { deliverOutboundPayloads } = await import("./deliver-CV4a0MBa.js").then((n) => n.n);
8067
+ const { deliverOutboundPayloads } = await import("./deliver-BwXnLuWH.js").then((n) => n.n);
8068
8068
  return {
8069
8069
  ok: true,
8070
8070
  messageId: (await deliverOutboundPayloads({
@@ -8310,7 +8310,7 @@ function normalizeSessionKey(value) {
8310
8310
  }
8311
8311
  function readSessionStore(storePath) {
8312
8312
  try {
8313
- const raw = fs$1.readFileSync(storePath, "utf-8");
8313
+ const raw = fsSync.readFileSync(storePath, "utf-8");
8314
8314
  const parsed = JSON5.parse(raw);
8315
8315
  if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
8316
8316
  } catch {}
@@ -12441,7 +12441,7 @@ async function createModelSelectionState(params) {
12441
12441
  }
12442
12442
  }
12443
12443
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
12444
- const { ensureAuthProfileStore } = await import("./model-auth-BBAJ-iuC.js").then((n) => n.s);
12444
+ const { ensureAuthProfileStore } = await import("./model-auth-COYibYBO.js").then((n) => n.s);
12445
12445
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
12446
12446
  const providerKey = normalizeProviderId(provider);
12447
12447
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -13615,8 +13615,8 @@ function listSkillCommandsForAgents(params) {
13615
13615
  const visitedDirs = /* @__PURE__ */ new Set();
13616
13616
  for (const agentId of agentIds) {
13617
13617
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, agentId);
13618
- if (!fs$1.existsSync(workspaceDir)) continue;
13619
- const canonicalDir = fs$1.realpathSync(workspaceDir);
13618
+ if (!fsSync.existsSync(workspaceDir)) continue;
13619
+ const canonicalDir = fsSync.realpathSync(workspaceDir);
13620
13620
  if (visitedDirs.has(canonicalDir)) continue;
13621
13621
  visitedDirs.add(canonicalDir);
13622
13622
  const commands = buildWorkspaceSkillCommandSpecs(workspaceDir, {
@@ -14003,7 +14003,7 @@ function resolveAllowFromPath(channel, env = process.env) {
14003
14003
  }
14004
14004
  async function readJsonFile(filePath, fallback) {
14005
14005
  try {
14006
- const parsed = safeParseJson(await fs$1.promises.readFile(filePath, "utf-8"));
14006
+ const parsed = safeParseJson(await fsSync.promises.readFile(filePath, "utf-8"));
14007
14007
  if (parsed == null) return {
14008
14008
  value: fallback,
14009
14009
  exists: true
@@ -14025,18 +14025,18 @@ async function readJsonFile(filePath, fallback) {
14025
14025
  }
14026
14026
  async function writeJsonFile(filePath, value) {
14027
14027
  const dir = path.dirname(filePath);
14028
- await fs$1.promises.mkdir(dir, {
14028
+ await fsSync.promises.mkdir(dir, {
14029
14029
  recursive: true,
14030
14030
  mode: 448
14031
14031
  });
14032
14032
  const tmp = path.join(dir, `${path.basename(filePath)}.${crypto.randomUUID()}.tmp`);
14033
- await fs$1.promises.writeFile(tmp, `${JSON.stringify(value, null, 2)}\n`, { encoding: "utf-8" });
14034
- await fs$1.promises.chmod(tmp, 384);
14035
- await fs$1.promises.rename(tmp, filePath);
14033
+ await fsSync.promises.writeFile(tmp, `${JSON.stringify(value, null, 2)}\n`, { encoding: "utf-8" });
14034
+ await fsSync.promises.chmod(tmp, 384);
14035
+ await fsSync.promises.rename(tmp, filePath);
14036
14036
  }
14037
14037
  async function ensureJsonFile(filePath, fallback) {
14038
14038
  try {
14039
- await fs$1.promises.access(filePath);
14039
+ await fsSync.promises.access(filePath);
14040
14040
  } catch {
14041
14041
  await writeJsonFile(filePath, fallback);
14042
14042
  }
@@ -15349,8 +15349,8 @@ function expandHome$1(value) {
15349
15349
  }
15350
15350
  function isExecutableFile(filePath) {
15351
15351
  try {
15352
- if (!fs$1.statSync(filePath).isFile()) return false;
15353
- if (process.platform !== "win32") fs$1.accessSync(filePath, fs$1.constants.X_OK);
15352
+ if (!fsSync.statSync(filePath).isFile()) return false;
15353
+ if (process.platform !== "win32") fsSync.accessSync(filePath, fsSync.constants.X_OK);
15354
15354
  return true;
15355
15355
  } catch {
15356
15356
  return false;
@@ -15388,7 +15388,7 @@ function normalizeMatchTarget(value) {
15388
15388
  }
15389
15389
  function tryRealpath(value) {
15390
15390
  try {
15391
- return fs$1.realpathSync(value);
15391
+ return fsSync.realpathSync(value);
15392
15392
  } catch {
15393
15393
  return null;
15394
15394
  }
@@ -16026,7 +16026,7 @@ function isPathLikeToken(value) {
16026
16026
  }
16027
16027
  function defaultFileExists(filePath) {
16028
16028
  try {
16029
- return fs$1.existsSync(filePath);
16029
+ return fsSync.existsSync(filePath);
16030
16030
  } catch {
16031
16031
  return false;
16032
16032
  }
@@ -16265,7 +16265,7 @@ function mergeLegacyAgent(current, legacy) {
16265
16265
  }
16266
16266
  function ensureDir$1(filePath) {
16267
16267
  const dir = path.dirname(filePath);
16268
- fs$1.mkdirSync(dir, { recursive: true });
16268
+ fsSync.mkdirSync(dir, { recursive: true });
16269
16269
  }
16270
16270
  function coerceAllowlistEntries(allowlist) {
16271
16271
  if (!Array.isArray(allowlist) || allowlist.length === 0) return Array.isArray(allowlist) ? allowlist : void 0;
@@ -16335,11 +16335,11 @@ function generateToken() {
16335
16335
  function loadExecApprovals() {
16336
16336
  const filePath = resolveExecApprovalsPath();
16337
16337
  try {
16338
- if (!fs$1.existsSync(filePath)) return normalizeExecApprovals({
16338
+ if (!fsSync.existsSync(filePath)) return normalizeExecApprovals({
16339
16339
  version: 1,
16340
16340
  agents: {}
16341
16341
  });
16342
- const raw = fs$1.readFileSync(filePath, "utf8");
16342
+ const raw = fsSync.readFileSync(filePath, "utf8");
16343
16343
  const parsed = JSON.parse(raw);
16344
16344
  if (parsed?.version !== 1) return normalizeExecApprovals({
16345
16345
  version: 1,
@@ -16356,9 +16356,9 @@ function loadExecApprovals() {
16356
16356
  function saveExecApprovals(file) {
16357
16357
  const filePath = resolveExecApprovalsPath();
16358
16358
  ensureDir$1(filePath);
16359
- fs$1.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
16359
+ fsSync.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
16360
16360
  try {
16361
- fs$1.chmodSync(filePath, 384);
16361
+ fsSync.chmodSync(filePath, 384);
16362
16362
  } catch {}
16363
16363
  }
16364
16364
  function ensureExecApprovals() {
@@ -16640,7 +16640,7 @@ function resolvePowerShellPath() {
16640
16640
  const systemRoot = process.env.SystemRoot || process.env.WINDIR;
16641
16641
  if (systemRoot) {
16642
16642
  const candidate = path.join(systemRoot, "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
16643
- if (fs$1.existsSync(candidate)) return candidate;
16643
+ if (fsSync.existsSync(candidate)) return candidate;
16644
16644
  }
16645
16645
  return "powershell.exe";
16646
16646
  }
@@ -16678,7 +16678,7 @@ function resolveShellFromPath(name) {
16678
16678
  for (const entry of entries) {
16679
16679
  const candidate = path.join(entry, name);
16680
16680
  try {
16681
- fs$1.accessSync(candidate, fs$1.constants.X_OK);
16681
+ fsSync.accessSync(candidate, fsSync.constants.X_OK);
16682
16682
  return candidate;
16683
16683
  } catch {}
16684
16684
  }
@@ -19036,10 +19036,10 @@ const resolveGitHead = (startDir) => {
19036
19036
  for (let i = 0; i < 12; i += 1) {
19037
19037
  const gitPath = path.join(current, ".git");
19038
19038
  try {
19039
- const stat = fs$1.statSync(gitPath);
19039
+ const stat = fsSync.statSync(gitPath);
19040
19040
  if (stat.isDirectory()) return path.join(gitPath, "HEAD");
19041
19041
  if (stat.isFile()) {
19042
- const match = fs$1.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
19042
+ const match = fsSync.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
19043
19043
  if (match?.[1]) {
19044
19044
  const resolved = path.resolve(current, match[1].trim());
19045
19045
  return path.join(resolved, "HEAD");
@@ -19097,7 +19097,7 @@ const resolveCommitHash = (options = {}) => {
19097
19097
  cachedCommit = null;
19098
19098
  return cachedCommit;
19099
19099
  }
19100
- const head = fs$1.readFileSync(headPath, "utf-8").trim();
19100
+ const head = fsSync.readFileSync(headPath, "utf-8").trim();
19101
19101
  if (!head) {
19102
19102
  cachedCommit = null;
19103
19103
  return cachedCommit;
@@ -19105,7 +19105,7 @@ const resolveCommitHash = (options = {}) => {
19105
19105
  if (head.startsWith("ref:")) {
19106
19106
  const ref = head.replace(/^ref:\s*/i, "").trim();
19107
19107
  const refPath = path.resolve(path.dirname(headPath), ref);
19108
- cachedCommit = formatCommit(fs$1.readFileSync(refPath, "utf-8").trim());
19108
+ cachedCommit = formatCommit(fsSync.readFileSync(refPath, "utf-8").trim());
19109
19109
  return cachedCommit;
19110
19110
  }
19111
19111
  cachedCommit = formatCommit(head);
@@ -19210,9 +19210,9 @@ const readUsageFromSessionLog = (sessionId, sessionEntry, agentId, sessionKey, s
19210
19210
  } catch {
19211
19211
  return;
19212
19212
  }
19213
- if (!fs$1.existsSync(logPath)) return;
19213
+ if (!fsSync.existsSync(logPath)) return;
19214
19214
  try {
19215
- const lines = fs$1.readFileSync(logPath, "utf-8").split(/\n+/);
19215
+ const lines = fsSync.readFileSync(logPath, "utf-8").split(/\n+/);
19216
19216
  let input = 0;
19217
19217
  let output = 0;
19218
19218
  let promptTokens = 0;
@@ -20230,7 +20230,7 @@ function resolveRepoRoot(params) {
20230
20230
  const configured = params.config?.agents?.defaults?.repoRoot?.trim();
20231
20231
  if (configured) try {
20232
20232
  const resolved = path.resolve(configured);
20233
- if (fs$1.statSync(resolved).isDirectory()) return resolved;
20233
+ if (fsSync.statSync(resolved).isDirectory()) return resolved;
20234
20234
  } catch {}
20235
20235
  const candidates = [params.workspaceDir, params.cwd].map((value) => value?.trim()).filter(Boolean);
20236
20236
  const seen = /* @__PURE__ */ new Set();
@@ -20247,7 +20247,7 @@ function findGitRoot(startDir) {
20247
20247
  for (let i = 0; i < 12; i += 1) {
20248
20248
  const gitPath = path.join(current, ".git");
20249
20249
  try {
20250
- const stat = fs$1.statSync(gitPath);
20250
+ const stat = fsSync.statSync(gitPath);
20251
20251
  if (stat.isDirectory() || stat.isFile()) return current;
20252
20252
  } catch {}
20253
20253
  const parent = path.dirname(current);
@@ -21158,8 +21158,8 @@ function resolveZaiApiKey() {
21158
21158
  }
21159
21159
  try {
21160
21160
  const authPath = path.join(os.homedir(), ".pi", "agent", "auth.json");
21161
- if (!fs$1.existsSync(authPath)) return;
21162
- const data = JSON.parse(fs$1.readFileSync(authPath, "utf-8"));
21161
+ if (!fsSync.existsSync(authPath)) return;
21162
+ const data = JSON.parse(fsSync.readFileSync(authPath, "utf-8"));
21163
21163
  return data["z-ai"]?.access || data.zai?.access;
21164
21164
  } catch {
21165
21165
  return;
@@ -22868,7 +22868,7 @@ const applyCostTotal = (totals, costTotal) => {
22868
22868
  totals.totalCost += costTotal;
22869
22869
  };
22870
22870
  async function scanTranscriptFile(params) {
22871
- const fileStream = fs$1.createReadStream(params.filePath, { encoding: "utf-8" });
22871
+ const fileStream = fsSync.createReadStream(params.filePath, { encoding: "utf-8" });
22872
22872
  const rl = readline.createInterface({
22873
22873
  input: fileStream,
22874
22874
  crlfDelay: Infinity
@@ -22928,10 +22928,10 @@ async function loadCostUsageSummary(params) {
22928
22928
  const dailyMap = /* @__PURE__ */ new Map();
22929
22929
  const totals = emptyTotals();
22930
22930
  const sessionsDir = resolveSessionTranscriptsDirForAgent(params?.agentId);
22931
- const entries = await fs$1.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
22931
+ const entries = await fsSync.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
22932
22932
  const files = (await Promise.all(entries.filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map(async (entry) => {
22933
22933
  const filePath = path.join(sessionsDir, entry.name);
22934
- const stats = await fs$1.promises.stat(filePath).catch(() => null);
22934
+ const stats = await fsSync.promises.stat(filePath).catch(() => null);
22935
22935
  if (!stats) return null;
22936
22936
  if (stats.mtimeMs < sinceTime) return null;
22937
22937
  return filePath;
@@ -22964,7 +22964,7 @@ async function loadCostUsageSummary(params) {
22964
22964
  }
22965
22965
  async function loadSessionCostSummary(params) {
22966
22966
  const sessionFile = params.sessionFile ?? (params.sessionId ? resolveSessionFilePath(params.sessionId, params.sessionEntry, { agentId: params.agentId }) : void 0);
22967
- if (!sessionFile || !fs$1.existsSync(sessionFile)) return null;
22967
+ if (!sessionFile || !fsSync.existsSync(sessionFile)) return null;
22968
22968
  const totals = emptyTotals();
22969
22969
  let firstActivity;
22970
22970
  let lastActivity;
@@ -26513,7 +26513,7 @@ async function writeUrlToFile(filePath, url) {
26513
26513
  if (typeof contentLength === "number" && Number.isFinite(contentLength) && contentLength > MAX_CAMERA_URL_DOWNLOAD_BYTES) throw new Error(`writeUrlToFile: content-length ${contentLength} exceeds max ${MAX_CAMERA_URL_DOWNLOAD_BYTES}`);
26514
26514
  const body = res.body;
26515
26515
  if (!body) throw new Error(`failed to download ${url}: empty response body`);
26516
- const fileHandle = await fs$2.open(filePath, "w");
26516
+ const fileHandle = await fs$1.open(filePath, "w");
26517
26517
  let bytes = 0;
26518
26518
  let thrown;
26519
26519
  try {
@@ -26532,7 +26532,7 @@ async function writeUrlToFile(filePath, url) {
26532
26532
  await fileHandle.close();
26533
26533
  }
26534
26534
  if (thrown) {
26535
- await fs$2.unlink(filePath).catch(() => {});
26535
+ await fs$1.unlink(filePath).catch(() => {});
26536
26536
  throw thrown;
26537
26537
  }
26538
26538
  return {
@@ -26542,7 +26542,7 @@ async function writeUrlToFile(filePath, url) {
26542
26542
  }
26543
26543
  async function writeBase64ToFile(filePath, base64) {
26544
26544
  const buf = Buffer.from(base64, "base64");
26545
- await fs$2.writeFile(filePath, buf);
26545
+ await fs$1.writeFile(filePath, buf);
26546
26546
  return {
26547
26547
  path: filePath,
26548
26548
  bytes: buf.length
@@ -31784,7 +31784,7 @@ function resolveSessionTranscriptCandidates(sessionId, storePath, sessionFile, a
31784
31784
  }
31785
31785
  function archiveFileOnDisk(filePath, reason) {
31786
31786
  const archived = `${filePath}.${reason}.${(/* @__PURE__ */ new Date()).toISOString().replaceAll(":", "-")}`;
31787
- fs$1.renameSync(filePath, archived);
31787
+ fsSync.renameSync(filePath, archived);
31788
31788
  return archived;
31789
31789
  }
31790
31790
  /**
@@ -31794,7 +31794,7 @@ function archiveFileOnDisk(filePath, reason) {
31794
31794
  function archiveSessionTranscripts(opts) {
31795
31795
  const archived = [];
31796
31796
  for (const candidate of resolveSessionTranscriptCandidates(opts.sessionId, opts.storePath, opts.sessionFile, opts.agentId)) {
31797
- if (!fs$1.existsSync(candidate)) continue;
31797
+ if (!fsSync.existsSync(candidate)) continue;
31798
31798
  try {
31799
31799
  archived.push(archiveFileOnDisk(candidate, opts.reason));
31800
31800
  } catch {}
@@ -31841,7 +31841,7 @@ function listExistingAgentIdsFromDisk() {
31841
31841
  const root = resolveStateDir();
31842
31842
  const agentsDir = path.join(root, "agents");
31843
31843
  try {
31844
- return fs$1.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
31844
+ return fsSync.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
31845
31845
  } catch {
31846
31846
  return [];
31847
31847
  }
@@ -36938,7 +36938,7 @@ async function runAgentTurnWithFallback(params) {
36938
36938
  if (corruptedSessionId) {
36939
36939
  const transcriptPath = resolveSessionTranscriptPath(corruptedSessionId);
36940
36940
  try {
36941
- fs$1.unlinkSync(transcriptPath);
36941
+ fsSync.unlinkSync(transcriptPath);
36942
36942
  } catch {}
36943
36943
  }
36944
36944
  delete params.activeSessionStore[sessionKey];
@@ -37728,7 +37728,7 @@ async function runReplyAgent(params) {
37728
37728
  if (resolved) transcriptCandidates.add(resolved);
37729
37729
  transcriptCandidates.add(resolveSessionTranscriptPath(prevSessionId, agentId));
37730
37730
  for (const candidate of transcriptCandidates) try {
37731
- fs$1.unlinkSync(candidate);
37731
+ fsSync.unlinkSync(candidate);
37732
37732
  } catch {}
37733
37733
  }
37734
37734
  return true;
@@ -38494,7 +38494,7 @@ async function deliverSessionMaintenanceWarning(params) {
38494
38494
  return;
38495
38495
  }
38496
38496
  try {
38497
- const { deliverOutboundPayloads } = await import("./deliver-CV4a0MBa.js").then((n) => n.n);
38497
+ const { deliverOutboundPayloads } = await import("./deliver-BwXnLuWH.js").then((n) => n.n);
38498
38498
  await deliverOutboundPayloads({
38499
38499
  cfg: params.cfg,
38500
38500
  channel,
@@ -38520,7 +38520,7 @@ function forkSessionFromParent(params) {
38520
38520
  agentId: params.agentId,
38521
38521
  sessionsDir: params.sessionsDir
38522
38522
  });
38523
- if (!parentSessionFile || !fs$1.existsSync(parentSessionFile)) return null;
38523
+ if (!parentSessionFile || !fsSync.existsSync(parentSessionFile)) return null;
38524
38524
  try {
38525
38525
  const manager = SessionManager.open(parentSessionFile);
38526
38526
  const leafId = manager.getLeafId();
@@ -38544,7 +38544,7 @@ function forkSessionFromParent(params) {
38544
38544
  cwd: manager.getCwd(),
38545
38545
  parentSession: parentSessionFile
38546
38546
  };
38547
- fs$1.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
38547
+ fsSync.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
38548
38548
  return {
38549
38549
  sessionId,
38550
38550
  sessionFile
@@ -41774,7 +41774,7 @@ async function describeStickerImage(params) {
41774
41774
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
41775
41775
  try {
41776
41776
  const buffer = await fs.readFile(imagePath);
41777
- const { describeImageWithModel } = await import("./image-DVTZYmDL.js").then((n) => n.n);
41777
+ const { describeImageWithModel } = await import("./image-DN3RgnPr.js").then((n) => n.n);
41778
41778
  return (await describeImageWithModel({
41779
41779
  buffer,
41780
41780
  fileName: "sticker.webp",
@@ -42136,7 +42136,7 @@ function createWhatsAppLoginTool() {
42136
42136
  force: Type.Optional(Type.Boolean())
42137
42137
  }),
42138
42138
  execute: async (_toolCallId, args) => {
42139
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-LM0fkvty.js");
42139
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-BrIxb_5N.js");
42140
42140
  if ((args?.action ?? "start") === "wait") {
42141
42141
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
42142
42142
  return {
@@ -42388,7 +42388,7 @@ function formatExtraPaths(workspaceDir, extraPaths) {
42388
42388
  }
42389
42389
  async function checkReadableFile(pathname) {
42390
42390
  try {
42391
- await fs.access(pathname, fs$1.constants.R_OK);
42391
+ await fs.access(pathname, fsSync.constants.R_OK);
42392
42392
  return { exists: true };
42393
42393
  } catch (err) {
42394
42394
  const code = err.code;
@@ -42447,7 +42447,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
42447
42447
  }
42448
42448
  let dirReadable = null;
42449
42449
  try {
42450
- await fs.access(memoryDir, fs$1.constants.R_OK);
42450
+ await fs.access(memoryDir, fsSync.constants.R_OK);
42451
42451
  dirReadable = true;
42452
42452
  } catch (err) {
42453
42453
  const code = err.code;
@@ -43942,7 +43942,7 @@ async function preflightDiscordMessage(params) {
43942
43942
  let preflightTranscript;
43943
43943
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
43944
43944
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
43945
- const { transcribeFirstAudio } = await import("./audio-preflight-BHSwqB70.js");
43945
+ const { transcribeFirstAudio } = await import("./audio-preflight-CbR1q2CT.js");
43946
43946
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
43947
43947
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
43948
43948
  ctx: {
@@ -46715,7 +46715,7 @@ function createDiscordGatewayPlugin(params) {
46715
46715
  super(options);
46716
46716
  }
46717
46717
  createWebSocket(url) {
46718
- return new WebSocket$1(url, { agent });
46718
+ return new WebSocket(url, { agent });
46719
46719
  }
46720
46720
  }
46721
46721
  return new ProxyGatewayPlugin();
@@ -48109,7 +48109,7 @@ const DEFAULT_ACCOUNT_ID = "default";
48109
48109
  function readFileIfExists(filePath) {
48110
48110
  if (!filePath) return;
48111
48111
  try {
48112
- return fs$1.readFileSync(filePath, "utf-8").trim();
48112
+ return fsSync.readFileSync(filePath, "utf-8").trim();
48113
48113
  } catch {
48114
48114
  return;
48115
48115
  }
@@ -48680,7 +48680,7 @@ async function downloadLineMedia(messageId, channelAccessToken, maxBytes = 10 *
48680
48680
  const tempDir = os.tmpdir();
48681
48681
  const fileName = `line-media-${messageId}-${Date.now()}${ext}`;
48682
48682
  const filePath = path.join(tempDir, fileName);
48683
- await fs$1.promises.writeFile(filePath, buffer);
48683
+ await fsSync.promises.writeFile(filePath, buffer);
48684
48684
  logVerbose(`line: downloaded media ${messageId} to ${filePath} (${buffer.length} bytes)`);
48685
48685
  return {
48686
48686
  path: filePath,
@@ -55057,7 +55057,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
55057
55057
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
55058
55058
  let preflightTranscript;
55059
55059
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
55060
- const { transcribeFirstAudio } = await import("./audio-preflight-BHSwqB70.js");
55060
+ const { transcribeFirstAudio } = await import("./audio-preflight-CbR1q2CT.js");
55061
55061
  preflightTranscript = await transcribeFirstAudio({
55062
55062
  ctx: {
55063
55063
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -57129,23 +57129,23 @@ let webLoginQrPromise = null;
57129
57129
  let webChannelPromise = null;
57130
57130
  let whatsappActionsPromise = null;
57131
57131
  function loadWebOutbound() {
57132
- webOutboundPromise ??= import("./outbound-N8cZjkHg.js").then((n) => n.t);
57132
+ webOutboundPromise ??= import("./outbound-C8YnTFjo.js").then((n) => n.t);
57133
57133
  return webOutboundPromise;
57134
57134
  }
57135
57135
  function loadWebLogin() {
57136
- webLoginPromise ??= import("./login-CFjSEIg1.js").then((n) => n.n);
57136
+ webLoginPromise ??= import("./login-Dydm4XDa.js").then((n) => n.n);
57137
57137
  return webLoginPromise;
57138
57138
  }
57139
57139
  function loadWebLoginQr() {
57140
- webLoginQrPromise ??= import("./login-qr-LM0fkvty.js");
57140
+ webLoginQrPromise ??= import("./login-qr-BrIxb_5N.js");
57141
57141
  return webLoginQrPromise;
57142
57142
  }
57143
57143
  function loadWebChannel() {
57144
- webChannelPromise ??= import("./web-BTK9UUaM.js");
57144
+ webChannelPromise ??= import("./web-C5vqAHQC.js");
57145
57145
  return webChannelPromise;
57146
57146
  }
57147
57147
  function loadWhatsAppActions() {
57148
- whatsappActionsPromise ??= import("./whatsapp-actions-x16Ismcy.js");
57148
+ whatsappActionsPromise ??= import("./whatsapp-actions-C4JR_6XT.js");
57149
57149
  return whatsappActionsPromise;
57150
57150
  }
57151
57151
  function createPluginRuntime() {
@@ -57348,7 +57348,7 @@ const resolvePluginSdkAliasFile = (params) => {
57348
57348
  const srcCandidate = path.join(cursor, "src", "plugin-sdk", params.srcFile);
57349
57349
  const distCandidate = path.join(cursor, "dist", "plugin-sdk", params.distFile);
57350
57350
  const orderedCandidates = isTest ? [distCandidate, srcCandidate] : [distCandidate];
57351
- for (const candidate of orderedCandidates) if (fs$1.existsSync(candidate)) return candidate;
57351
+ for (const candidate of orderedCandidates) if (fsSync.existsSync(candidate)) return candidate;
57352
57352
  const parent = path.dirname(cursor);
57353
57353
  if (parent === cursor) break;
57354
57354
  cursor = parent;
@@ -61189,7 +61189,7 @@ async function compactEmbeddedPiSessionDirect(params) {
61189
61189
  if (!apiKeyInfo.apiKey) {
61190
61190
  if (apiKeyInfo.mode !== "aws-sdk") throw new Error(`No API key resolved for provider "${model.provider}" (auth mode: ${apiKeyInfo.mode}).`);
61191
61191
  } else if (model.provider === "github-copilot") {
61192
- const { resolveCopilotApiToken } = await import("./github-copilot-token-BXEGgIt5.js").then((n) => n.n);
61192
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-U5JrmjNt.js").then((n) => n.n);
61193
61193
  const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
61194
61194
  authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
61195
61195
  } else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
@@ -62299,11 +62299,11 @@ function appendRawStream(payload) {
62299
62299
  if (!rawStreamReady) {
62300
62300
  rawStreamReady = true;
62301
62301
  try {
62302
- fs$1.mkdirSync(path.dirname(RAW_STREAM_PATH), { recursive: true });
62302
+ fsSync.mkdirSync(path.dirname(RAW_STREAM_PATH), { recursive: true });
62303
62303
  } catch {}
62304
62304
  }
62305
62305
  try {
62306
- fs$1.promises.appendFile(RAW_STREAM_PATH, `${JSON.stringify(payload)}\n`);
62306
+ fsSync.promises.appendFile(RAW_STREAM_PATH, `${JSON.stringify(payload)}\n`);
62307
62307
  } catch {}
62308
62308
  }
62309
62309
 
@@ -65036,7 +65036,7 @@ async function runEmbeddedPiAgent(params) {
65036
65036
  return;
65037
65037
  }
65038
65038
  if (model.provider === "github-copilot") {
65039
- const { resolveCopilotApiToken } = await import("./github-copilot-token-BXEGgIt5.js").then((n) => n.n);
65039
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-U5JrmjNt.js").then((n) => n.n);
65040
65040
  const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
65041
65041
  authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
65042
65042
  } else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);