@fased/fased 0.1.36 → 0.1.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/config/capability-catalog.json +241 -0
  2. package/config/dependency-ownership.json +130 -0
  3. package/config/official-channel-catalog.json +39 -0
  4. package/dist/agents/tools/web-fetch-utils.js +2 -1
  5. package/dist/agents/tools/web-fetch-visibility.js +3 -1
  6. package/dist/brand.js +1 -1
  7. package/dist/browser/pw-session.js +2 -1
  8. package/dist/browser/pw-tools-core.state.js +3 -2
  9. package/dist/browser/runtime-dependency.js +27 -0
  10. package/dist/build-info.json +3 -3
  11. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  12. package/dist/capabilities/catalog.js +228 -0
  13. package/dist/cli/components-cli.js +105 -0
  14. package/dist/cli/hooks-cli.js +1 -1
  15. package/dist/cli/plugins-cli.js +3 -3
  16. package/dist/cli/program/register.subclis.js +9 -0
  17. package/dist/cli/update-cli/update-command.js +1 -1
  18. package/dist/commands/doctor-capabilities.js +26 -0
  19. package/dist/commands/doctor.js +2 -0
  20. package/dist/control-ui/assets/{app-DXYMrRJ9.js → app-JBrTSsNu.js} +1480 -1465
  21. package/dist/control-ui/assets/{index-iGQkJE0l.js → index-H-2DWAnH.js} +3 -3
  22. package/dist/control-ui/index.html +1 -1
  23. package/dist/gateway/method-scopes.js +1 -0
  24. package/dist/gateway/server-methods/plugins-marketplace.js +1 -1
  25. package/dist/gateway/server-methods/services.js +8 -0
  26. package/dist/gateway/server-methods-list.js +1 -0
  27. package/dist/infra/optional-runtime-dependency.js +46 -0
  28. package/dist/media/image-ops.js +6 -1
  29. package/dist/media/input-files.js +11 -2
  30. package/dist/media/mime.js +6 -1
  31. package/dist/memory/sqlite-vec.js +7 -1
  32. package/dist/plugin-sdk/{accounts-VqAX3HJ0.js → accounts-BwkH5bTD.js} +1 -1
  33. package/dist/plugin-sdk/{accounts-Zgt0NP54.js → accounts-RT6y7n3H.js} +1 -1
  34. package/dist/plugin-sdk/{actions-lB3PCwsz.js → actions-BrU_JMqM.js} +2 -2
  35. package/dist/plugin-sdk/{actions-BI5QViLk.js → actions-CUdVHzeJ.js} +2 -2
  36. package/dist/plugin-sdk/{active-listener-DKZiSaRA.js → active-listener-CE8t5g6l.js} +1 -1
  37. package/dist/plugin-sdk/{active-listener-D6_pdTMC.js → active-listener-Dx1SEGDn.js} +1 -1
  38. package/dist/plugin-sdk/{audio-preflight-Dx8J7XhV.js → audio-preflight-BPK8t0tI.js} +22 -22
  39. package/dist/plugin-sdk/{audio-preflight-CeRstduc.js → audio-preflight-kCa_KGRH.js} +22 -22
  40. package/dist/plugin-sdk/{audit-BImNOQvk.js → audit-DxB2Kml5.js} +11 -11
  41. package/dist/plugin-sdk/{audit-CKWkq0Un.js → audit-sSeRDwJb.js} +11 -11
  42. package/dist/plugin-sdk/channel-plugin-common.js +3 -2
  43. package/dist/plugin-sdk/{chunk-skAJZWCT.js → chunk-KCxbJLsV.js} +1 -1
  44. package/dist/plugin-sdk/{chunk-Cjw4712g.js → chunk-M2d7r-Zt.js} +1 -1
  45. package/dist/plugin-sdk/{chunk-items-Df5811D0.js → chunk-items-DGHUeFuI.js} +1 -1
  46. package/dist/plugin-sdk/command-status.js +22 -22
  47. package/dist/plugin-sdk/{commands-registry-5J619bQ2.js → commands-registry-CdT-nl7v.js} +2 -2
  48. package/dist/plugin-sdk/{commands-registry-CoLAT03J.js → commands-registry-DoWdYAJd.js} +2 -2
  49. package/dist/plugin-sdk/{common-CSTxewqY.js → common-Cpw-vuuM.js} +1 -1
  50. package/dist/plugin-sdk/{common-BiF0sTnY.js → common-DJWrErdE.js} +1 -1
  51. package/dist/plugin-sdk/{config-BxVjLTIv.js → config-C0qggNKQ.js} +7 -7
  52. package/dist/plugin-sdk/{config-TFokWwvO.js → config-CgwTaper.js} +45 -2
  53. package/dist/plugin-sdk/{config-DXlISPlx.js → config-DtqAN2L3.js} +45 -2
  54. package/dist/plugin-sdk/discord.js +2 -1
  55. package/dist/plugin-sdk/{fetch-guard-DPMynms8.js → fetch-guard-BLdujDnt.js} +1 -1
  56. package/dist/plugin-sdk/{fetch-guard-COLmW2TM.js → fetch-guard-DTKgMN9f.js} +1 -1
  57. package/dist/plugin-sdk/{handle-action-C-UndB8E.js → handle-action-B61D85yo.js} +12 -12
  58. package/dist/plugin-sdk/{handle-action-hhufKxmU.js → handle-action-CjcxGzQD.js} +12 -12
  59. package/dist/plugin-sdk/index.js +22 -22
  60. package/dist/plugin-sdk/{login-DL1oBBfL.js → login-CB_nCjX3.js} +3 -3
  61. package/dist/plugin-sdk/{login-Dnxas1dI.js → login-CzUuDd1v.js} +3 -3
  62. package/dist/plugin-sdk/{login-qr-CVQsGWKq.js → login-qr-D7MEpFza.js} +3 -3
  63. package/dist/plugin-sdk/{login-qr-B343JNXJ.js → login-qr-DgxfBFVN.js} +3 -3
  64. package/dist/plugin-sdk/{manager-BytwRIfK.js → manager-9see0IX5.js} +8 -3
  65. package/dist/plugin-sdk/{manager-BZjd_PCt.js → manager-D2kZ0Cps.js} +8 -3
  66. package/dist/plugin-sdk/{markdown-tables-krKiU4cT.js → markdown-tables-CCSD52rA.js} +1 -1
  67. package/dist/plugin-sdk/{markdown-tables-9rJDQ1X-.js → markdown-tables-DWUNvLrc.js} +1 -1
  68. package/dist/plugin-sdk/{media-D7ZkWU-A.js → media-C7YT4DeU.js} +13 -4
  69. package/dist/plugin-sdk/{media-C6C2c9a4.js → media-Cxw-xLGU.js} +13 -4
  70. package/dist/plugin-sdk/{monitor-BsLMfn3U.js → monitor-6lkdOqhQ.js} +26 -26
  71. package/dist/plugin-sdk/{monitor-BCxkQBoh.js → monitor-C6Ohw9BA.js} +26 -26
  72. package/dist/plugin-sdk/{monitor-BzDW50H6.js → monitor-o20KTHIi.js} +29 -29
  73. package/dist/plugin-sdk/{monitor-CVQNDfhs.js → monitor-rOs3mUol.js} +27 -27
  74. package/dist/plugin-sdk/{openresponses-http-BB67Z4QM.js → openresponses-http-BJONnUdy.js} +22 -22
  75. package/dist/plugin-sdk/{openresponses-http-NE76GGhj.js → openresponses-http-DkWqYznu.js} +22 -22
  76. package/dist/plugin-sdk/{ssrf-u0Ul7okY.js → optional-runtime-dependency-szS49voX.js} +46 -2
  77. package/dist/plugin-sdk/{outbound-PGNWU6T-.js → outbound-BCxOxdi-.js} +6 -6
  78. package/dist/plugin-sdk/{outbound-BHWJD9q0.js → outbound-JIwQbpRY.js} +6 -6
  79. package/dist/plugin-sdk/{outbound-attachment-BVzfhqnk.js → outbound-attachment-C-jSFaEB.js} +1 -1
  80. package/dist/plugin-sdk/{outbound-attachment-ClMvNW17.js → outbound-attachment-D6tj5Y5H.js} +1 -1
  81. package/dist/plugin-sdk/{pi-embedded-runner-DQ6UPx6-.js → pi-embedded-runner-DqDy0MWN.js} +72 -60
  82. package/dist/plugin-sdk/{pi-model-discovery-D51L5E9I.js → pi-model-discovery-DadlvsZW.js} +1 -1
  83. package/dist/plugin-sdk/{pi-model-discovery-runtime-DxoFm4Vd.js → pi-model-discovery-runtime-C5ssE6EW.js} +1 -1
  84. package/dist/plugin-sdk/{pi-model-discovery-runtime-DRuh4PNV.js → pi-model-discovery-runtime-DAaOPt64.js} +2 -2
  85. package/dist/plugin-sdk/{pi-model-discovery-runtime-BTWgkx4x.js → pi-model-discovery-runtime-gd77b0UF.js} +2 -2
  86. package/dist/plugin-sdk/{pi-model-discovery-CkH5l9X5.js → pi-model-discovery-yifTIDIn.js} +1 -1
  87. package/dist/plugin-sdk/{pw-ai-DZs6uYRd.js → pw-ai-Boor5vYw.js} +6 -5
  88. package/dist/plugin-sdk/{pw-ai-Cn-EUPZK.js → pw-ai-sH1Pi-Fh.js} +6 -5
  89. package/dist/plugin-sdk/{registry-B4HvWzob.js → registry-DNkJsNsz.js} +4 -3
  90. package/dist/plugin-sdk/{replies-jDMUBsNO.js → replies-fvzN5wnU.js} +2 -2
  91. package/dist/plugin-sdk/{replies-B_LW9c9f.js → replies-zebgZCHX.js} +2 -2
  92. package/dist/plugin-sdk/{resolve-route-_YZHbS-z.js → resolve-route-CNhTJG_2.js} +1 -1
  93. package/dist/plugin-sdk/{resolve-route-DlHzggnG.js → resolve-route-DO0WR4nB.js} +1 -1
  94. package/dist/plugin-sdk/{resolve-utils-zBhVX3Vx.js → resolve-utils-bixHYDBj.js} +1 -1
  95. package/dist/plugin-sdk/{retry-policy-DGLs5ebP.js → retry-policy-BLYEgIwP.js} +1 -1
  96. package/dist/plugin-sdk/{retry-policy-DaodShGa.js → retry-policy-sM01QZT2.js} +1 -1
  97. package/dist/plugin-sdk/{runtime-Dd0sswuW.js → runtime-BPyuAmka.js} +4 -3
  98. package/dist/plugin-sdk/{paths-CBCpJ5bu.js → runtime-dependency-Csswyv5r.js} +27 -3
  99. package/dist/plugin-sdk/{paths-DW-U2r7Y.js → runtime-dependency-Deg_sw2k.js} +36 -12
  100. package/dist/plugin-sdk/sat-runtime.js +1 -0
  101. package/dist/plugin-sdk/{send-8remZhsH.js → send-B09HRfHN.js} +6 -6
  102. package/dist/plugin-sdk/{send-DaaAscWj.js → send-BBYcgXA4.js} +5 -5
  103. package/dist/plugin-sdk/{send-DFTB0cnx.js → send-BQXQA81e.js} +6 -6
  104. package/dist/plugin-sdk/{send-CtMVvMJs.js → send-BzFdvD_i.js} +6 -6
  105. package/dist/plugin-sdk/{send-Di9irjS-.js → send-C3u-F_8s.js} +6 -6
  106. package/dist/plugin-sdk/{send-Dl88ZKq2.js → send-D3836_UN.js} +6 -6
  107. package/dist/plugin-sdk/{send-ifgZCHVB.js → send-D7tr-EsH.js} +5 -5
  108. package/dist/plugin-sdk/{send-DvUpYh0d.js → send-DRGzRdI3.js} +6 -6
  109. package/dist/plugin-sdk/{send-D2jlPeKH.js → send-DfkPKz_0.js} +4 -4
  110. package/dist/plugin-sdk/{send-QSt6nbny.js → send-DsxFXrCO.js} +4 -4
  111. package/dist/plugin-sdk/{session-CknrceVU.js → session-DG_bYisw.js} +2 -2
  112. package/dist/plugin-sdk/{session-CyRTcJ8N.js → session-EIStzK0E.js} +2 -2
  113. package/dist/plugin-sdk/{skill-commands-DHxkTA0s.js → skill-commands-CkgGmWBS.js} +2 -2
  114. package/dist/plugin-sdk/{skill-commands-CLXAG5sU.js → skill-commands-hyZA0LE3.js} +2 -2
  115. package/dist/plugin-sdk/{slack-Br9c6Yzs.js → slack-BErIh0uj.js} +34 -34
  116. package/dist/plugin-sdk/{slack-BpJXkwxF.js → slack-CGTAN4UD.js} +34 -34
  117. package/dist/plugin-sdk/{slack-actions-8tLGt1Ht.js → slack-actions-BQawWGTJ.js} +11 -11
  118. package/dist/plugin-sdk/{slack-actions-CDSSRo8Y.js → slack-actions-DDMszx56.js} +11 -11
  119. package/dist/plugin-sdk/slack.js +2 -1
  120. package/dist/plugin-sdk/src/brand.d.ts +2 -2
  121. package/dist/plugin-sdk/src/browser/runtime-dependency.d.ts +3 -0
  122. package/dist/plugin-sdk/src/infra/optional-runtime-dependency.d.ts +6 -0
  123. package/dist/plugin-sdk/{ssrf-fG4UHKBw.js → ssrf-Cce6LubA.js} +41 -7
  124. package/dist/plugin-sdk/{status-DoxnzyMC.js → status-CCGFb0f2.js} +76 -64
  125. package/dist/plugin-sdk/{sticker-cache-zmJ39ByC.js → sticker-cache-CKAkkCoU.js} +3 -3
  126. package/dist/plugin-sdk/{sticker-cache-D7WcMYsF.js → sticker-cache-wxl1Me2i.js} +3 -3
  127. package/dist/plugin-sdk/{tables-CkxblF0u.js → tables-BD7H5ug-.js} +1 -1
  128. package/dist/plugin-sdk/{tables-RBtf8G4P.js → tables-CJE8kB35.js} +1 -1
  129. package/dist/plugin-sdk/{telegram-actions-DAeYXSLk.js → telegram-actions-BRUNEXMr.js} +25 -25
  130. package/dist/plugin-sdk/{telegram-actions-BDeS3ocd.js → telegram-actions-r86ntIKR.js} +25 -25
  131. package/dist/plugin-sdk/telegram.js +2 -1
  132. package/dist/plugin-sdk/{thread-bindings.lifecycle-DsB94WbE.js → thread-bindings.lifecycle-Djem8FWF.js} +2 -2
  133. package/dist/plugin-sdk/{thread-bindings.lifecycle-DMhV3TsR.js → thread-bindings.lifecycle-gmHv3hc7.js} +2 -2
  134. package/dist/plugin-sdk/{thread-bindings.state-DYWpy7hJ.js → thread-bindings.state-CNT2vxm3.js} +2 -2
  135. package/dist/plugin-sdk/{thread-bindings.state-DG5cBaRn.js → thread-bindings.state-D8kN2X6H.js} +2 -2
  136. package/dist/plugin-sdk/{web-DJwacWQo.js → web-02I0vmdu.js} +26 -26
  137. package/dist/plugin-sdk/{web-IJ4NoGPJ.js → web-CXz56wyu.js} +26 -26
  138. package/dist/plugin-sdk/{whatsapp-actions-DAY8hWpD.js → whatsapp-actions-68Mfs2dJ.js} +12 -12
  139. package/dist/plugin-sdk/{whatsapp-actions-6opfo-oB.js → whatsapp-actions-DRqtzvTO.js} +12 -12
  140. package/dist/plugin-sdk/whatsapp.js +2 -1
  141. package/dist/plugin-sdk/{wsl-B2euLEc2.js → wsl-DcM2PgSS.js} +3 -3
  142. package/dist/plugin-sdk/{wsl-B8eyviuv.js → wsl-PXrdWitE.js} +3 -3
  143. package/dist/plugins/update.js +1 -1
  144. package/dist/tts/tts-core.js +6 -1
  145. package/dist/wizard/onboarding.finalize.js +9 -0
  146. package/extensions/acpx/package.json +1 -1
  147. package/extensions/bluebubbles/package.json +1 -1
  148. package/extensions/copilot-proxy/package.json +1 -1
  149. package/extensions/diagnostics-otel/package.json +1 -1
  150. package/extensions/fased-federation/package.json +1 -1
  151. package/extensions/google-gemini-cli-auth/package.json +1 -1
  152. package/extensions/imessage/package.json +1 -1
  153. package/extensions/irc/package.json +1 -1
  154. package/extensions/line/package.json +1 -1
  155. package/extensions/llm-task/package.json +1 -1
  156. package/extensions/lobster/package.json +1 -1
  157. package/extensions/matrix/CHANGELOG.md +12 -0
  158. package/extensions/matrix/package.json +1 -1
  159. package/extensions/mattermost/package.json +1 -1
  160. package/extensions/memory-core/package.json +2 -2
  161. package/extensions/memory-lancedb/package.json +1 -1
  162. package/extensions/minimax-portal-auth/package.json +1 -1
  163. package/extensions/msteams/CHANGELOG.md +12 -0
  164. package/extensions/msteams/package.json +1 -1
  165. package/extensions/nextcloud-talk/package.json +1 -1
  166. package/extensions/nostr/CHANGELOG.md +12 -0
  167. package/extensions/nostr/package.json +1 -1
  168. package/extensions/open-prose/package.json +1 -1
  169. package/extensions/sat-mining/package.json +1 -1
  170. package/extensions/signal/package.json +1 -1
  171. package/extensions/synology-chat/package.json +1 -1
  172. package/extensions/tlon/package.json +1 -1
  173. package/extensions/twitch/CHANGELOG.md +12 -0
  174. package/extensions/twitch/package.json +1 -1
  175. package/extensions/voice-call/CHANGELOG.md +12 -0
  176. package/extensions/voice-call/package.json +1 -1
  177. package/extensions/zalo/CHANGELOG.md +12 -0
  178. package/extensions/zalo/package.json +1 -1
  179. package/extensions/zalouser/CHANGELOG.md +12 -0
  180. package/extensions/zalouser/package.json +1 -1
  181. package/package.json +22 -15
  182. package/extensions/feishu/fased.plugin.json +0 -10
  183. package/extensions/feishu/index.ts +0 -63
  184. package/extensions/feishu/package.json +0 -33
  185. package/extensions/feishu/skills/feishu-doc/SKILL.md +0 -211
  186. package/extensions/feishu/skills/feishu-doc/references/block-types.md +0 -103
  187. package/extensions/feishu/skills/feishu-drive/SKILL.md +0 -97
  188. package/extensions/feishu/skills/feishu-perm/SKILL.md +0 -119
  189. package/extensions/feishu/skills/feishu-wiki/SKILL.md +0 -111
  190. package/extensions/feishu/src/accounts.ts +0 -159
  191. package/extensions/feishu/src/bitable.ts +0 -713
  192. package/extensions/feishu/src/bot.ts +0 -979
  193. package/extensions/feishu/src/channel.ts +0 -359
  194. package/extensions/feishu/src/client.ts +0 -118
  195. package/extensions/feishu/src/config-schema.ts +0 -226
  196. package/extensions/feishu/src/dedup.ts +0 -54
  197. package/extensions/feishu/src/directory.ts +0 -177
  198. package/extensions/feishu/src/doc-schema.ts +0 -122
  199. package/extensions/feishu/src/docx.ts +0 -998
  200. package/extensions/feishu/src/drive-schema.ts +0 -46
  201. package/extensions/feishu/src/drive.ts +0 -232
  202. package/extensions/feishu/src/dynamic-agent.ts +0 -131
  203. package/extensions/feishu/src/external-keys.ts +0 -19
  204. package/extensions/feishu/src/media.ts +0 -447
  205. package/extensions/feishu/src/mention.ts +0 -133
  206. package/extensions/feishu/src/monitor.ts +0 -434
  207. package/extensions/feishu/src/onboarding.ts +0 -430
  208. package/extensions/feishu/src/outbound.ts +0 -56
  209. package/extensions/feishu/src/perm-schema.ts +0 -52
  210. package/extensions/feishu/src/perm.ts +0 -180
  211. package/extensions/feishu/src/policy.ts +0 -116
  212. package/extensions/feishu/src/probe.ts +0 -44
  213. package/extensions/feishu/src/reactions.ts +0 -160
  214. package/extensions/feishu/src/reply-dispatcher.ts +0 -239
  215. package/extensions/feishu/src/runtime.ts +0 -14
  216. package/extensions/feishu/src/send-result.ts +0 -29
  217. package/extensions/feishu/src/send-target.ts +0 -25
  218. package/extensions/feishu/src/send.ts +0 -313
  219. package/extensions/feishu/src/streaming-card.ts +0 -218
  220. package/extensions/feishu/src/targets.ts +0 -78
  221. package/extensions/feishu/src/tool-account.ts +0 -58
  222. package/extensions/feishu/src/tools-config.ts +0 -21
  223. package/extensions/feishu/src/types.ts +0 -81
  224. package/extensions/feishu/src/typing.ts +0 -80
  225. package/extensions/feishu/src/wiki-schema.ts +0 -55
  226. package/extensions/feishu/src/wiki.ts +0 -237
  227. package/extensions/googlechat/fased.plugin.json +0 -9
  228. package/extensions/googlechat/index.ts +0 -19
  229. package/extensions/googlechat/package.json +0 -37
  230. package/extensions/googlechat/src/accounts.ts +0 -147
  231. package/extensions/googlechat/src/actions.ts +0 -176
  232. package/extensions/googlechat/src/api.ts +0 -282
  233. package/extensions/googlechat/src/auth.ts +0 -137
  234. package/extensions/googlechat/src/channel.ts +0 -591
  235. package/extensions/googlechat/src/monitor.ts +0 -996
  236. package/extensions/googlechat/src/onboarding.ts +0 -344
  237. package/extensions/googlechat/src/runtime.ts +0 -14
  238. package/extensions/googlechat/src/targets.ts +0 -65
  239. package/extensions/googlechat/src/types.config.ts +0 -3
  240. package/extensions/googlechat/src/types.ts +0 -73
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { $ as unwrapKnownDispatchWrapperInvocation, $n as isTruthyEnvValue, $t as markAuthProfileUsed, A as setConfigOverride, An as assertSecretInputResolved, At as resolveThinkingDefault, B as normalizeTrustedSafeBinDirs, Bn as supportsXHighThinking, Bt as resolveModelAuthMode, C as isAvatarDataUrl, Cn as resolveMemorySlotDecision, D as validateJsonSchemaValue, Dn as resolveAuthProfileDisplayLabel, Dt as resolveModelRefFromString, E as isSupportedLocalAvatarExtension, En as resolveCliName, F as unsetConfigValueAtPath, Fn as formatThinkingLevels, Ft as getApiKeyForModel, G as splitCommandChain, Gn as getPackageManifestMetadata, Gt as normalizeModelCatalogModelId, H as analyzeShellCommand, Hn as DEFAULT_MODEL, Ht as listCurrentModelCatalogRows, I as ensurePluginAllowlisted, In as formatXHighModelHint, It as getCustomProviderApiKey, J as resolveAllowlistCandidatePath, Jn as formatErrorMessage, K as DEFAULT_SAFE_BINS, Kt as normalizeModelCatalogProviderId, L as getTrustedSafeBinDirs, Lt as requireApiKey, M as getConfigValueAtPath, Mn as splitTrailingAuthProfile, N as parseConfigPath, Nn as isOpenAISignInRuntimeModelSupported, O as getConfigOverrides, On as isPrivateNetworkBaseUrl, Ot as resolveReasoningDefault, P as setConfigValueAtPath, Pn as lookupProviderManifestModelCapability, Q as isShellWrapperExecutable, Qn as resolveShellEnvFallbackTimeoutMs, Qt as markAuthProfileFailure, R as isTrustedSafeBinPath, Rn as normalizeThinkLevel, Rt as resolveApiKeyForProvider, S as AVATAR_MAX_BYTES, Sn as resolveEffectiveEnableState, St as normalizeProviderId$1, T as isPathWithinRoot, Tn as formatCliCommand, Tt as resolveDefaultModelForAgent, U as buildEnforcedShellCommand, Un as DEFAULT_PROVIDER, Ut as buildModelCatalogMergeKey, V as validateSafeBinArgv, Vn as DEFAULT_CONTEXT_TOKENS, Vt as CURRENT_MODEL_PROVIDER_CATALOG, W as isWindowsPlatform, Wn as VERSION, Wt as mergeModelCatalogRowsByAuthority, X as extractShellWrapperInlineCommand, Xt as getSoonestCooldownExpiry, Y as resolveCommandResolutionFromArgv, Yt as resolveAuthProfileOrder, Z as isDispatchWrapperExecutable, Zn as getShellPathFromLoginShell, Zt as isProfileInCooldown, _ as normalizeScpRemoteHost, _n as isPathInside, _t as findNormalizedProviderValue$1, a as readConfigFileSnapshotForWrite, an as markAuthProfileGood, ar as resolveOwnerDisplaySetting, at as applyMergePatch, b as parseDurationMs, bt as modelKey, c as validateConfigObjectWithPlugins, cn as resolveFasedAgentAgentDir, en as resolveProfilesUnavailableReason, er as parseBooleanValue$1, et as unwrapKnownShellMultiplexerInvocation, f as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, ft as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, g as resolveIMessageRemoteAttachmentRoots, gn as discoverFasedAgentPlugins, gt as buildModelAliasIndex, h as resolveIMessageAttachmentRoots, hn as loadPluginManifestRegistry, ht as buildConfiguredAllowlistKeys, i as readConfigFileSnapshot, in as listProvidersWithStoredCredentials, ir as sanitizeHostExecEnv, it as resolveSafeBinProfiles, j as unsetConfigOverride, jn as coerceSecretRef, jt as normalizeGoogleModelId, k as resetConfigOverrides, kn as normalizeSecretInput, kt as resolveSubagentSpawnModelSelection, m as mergeInboundPathRoots, mn as normalizeProviderId$2, mt as buildAllowedModelSet, n as loadConfig, nn as dedupeProfileIds, nt as SAFE_BIN_PROFILES, o as resolveConfigSnapshotHash, on as ensureAuthProfileStore, ot as isSafeExecutableValue, p as isInboundPathAllowed, pn as findNormalizedProviderValue, q as matchAllowlist, qn as extractErrorCode, qt as normalizeProviderCatalogRows, r as parseConfigJson5, rn as listProfilesForProvider, rr as isDangerousHostInheritedEnvVarName, rt as normalizeSafeBinProfileFixtures, s as writeConfigFile, sn as resolveAuthStorePathForDisplay, t as createConfigIO, tn as resolveApiKeyForProfile, tr as isDangerousHostEnvOverrideVarName, tt as splitShellArgs, v as MODEL_APIS, vn as safeStatSync, w as isAvatarHttpUrl, wt as resolveConfiguredModelRef, xn as normalizePluginsConfig, xt as normalizeModelRef$1, y as getBlockedNetworkModeReason, yn as applyTestPluginDefaults, yt as isCliProvider, z as listWritableExplicitTrustedSafeBinDirs, zn as resolveModelThinkingCapability, zt as resolveEnvApiKey } from "./config-TFokWwvO.js";
2
+ import { $ as unwrapKnownDispatchWrapperInvocation, $n as resolveShellEnvFallbackTimeoutMs, $t as markAuthProfileUsed, A as setConfigOverride, An as assertSecretInputResolved, At as resolveThinkingDefault, B as normalizeTrustedSafeBinDirs, Bn as supportsXHighThinking, Bt as resolveModelAuthMode, C as isAvatarDataUrl, Cn as resolveMemorySlotDecision, D as validateJsonSchemaValue, Dn as resolveAuthProfileDisplayLabel, Dt as resolveModelRefFromString, E as isSupportedLocalAvatarExtension, En as resolveCliName, F as unsetConfigValueAtPath, Fn as formatThinkingLevels, Ft as getApiKeyForModel, G as splitCommandChain, Gt as normalizeModelCatalogModelId, H as analyzeShellCommand, Hn as DEFAULT_MODEL, Ht as listCurrentModelCatalogRows, I as ensurePluginAllowlisted, In as formatXHighModelHint, It as getCustomProviderApiKey, J as resolveAllowlistCandidatePath, Jn as extractErrorCode, K as DEFAULT_SAFE_BINS, Kn as getPackageManifestMetadata, Kt as normalizeModelCatalogProviderId, L as getTrustedSafeBinDirs, Lt as requireApiKey, M as getConfigValueAtPath, Mn as splitTrailingAuthProfile, N as parseConfigPath, Nn as isOpenAISignInRuntimeModelSupported, O as getConfigOverrides, On as isPrivateNetworkBaseUrl, Ot as resolveReasoningDefault, P as setConfigValueAtPath, Pn as lookupProviderManifestModelCapability, Q as isShellWrapperExecutable, Qn as getShellPathFromLoginShell, Qt as markAuthProfileFailure, R as isTrustedSafeBinPath, Rn as normalizeThinkLevel, Rt as resolveApiKeyForProvider, S as AVATAR_MAX_BYTES, Sn as resolveEffectiveEnableState, St as normalizeProviderId$1, T as isPathWithinRoot, Tn as formatCliCommand, Tt as resolveDefaultModelForAgent, U as buildEnforcedShellCommand, Un as DEFAULT_PROVIDER, Ut as buildModelCatalogMergeKey, V as validateSafeBinArgv, Vn as DEFAULT_CONTEXT_TOKENS, Vt as CURRENT_MODEL_PROVIDER_CATALOG, W as isWindowsPlatform, Wn as VERSION, Wt as mergeModelCatalogRowsByAuthority, X as extractShellWrapperInlineCommand, Xt as getSoonestCooldownExpiry, Y as resolveCommandResolutionFromArgv, Yn as formatErrorMessage, Yt as resolveAuthProfileOrder, Z as isDispatchWrapperExecutable, Zt as isProfileInCooldown, _ as normalizeScpRemoteHost, _n as isPathInside, _t as findNormalizedProviderValue$1, a as readConfigFileSnapshotForWrite, an as markAuthProfileGood, ar as sanitizeHostExecEnv, at as applyMergePatch, b as parseDurationMs, bt as modelKey, c as validateConfigObjectWithPlugins, cn as resolveFasedAgentAgentDir, en as resolveProfilesUnavailableReason, er as isTruthyEnvValue, et as unwrapKnownShellMultiplexerInvocation, f as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, ft as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, g as resolveIMessageRemoteAttachmentRoots, gn as discoverFasedAgentPlugins, gt as buildModelAliasIndex, h as resolveIMessageAttachmentRoots, hn as loadPluginManifestRegistry, ht as buildConfiguredAllowlistKeys, i as readConfigFileSnapshot, in as listProvidersWithStoredCredentials, ir as isDangerousHostInheritedEnvVarName, it as resolveSafeBinProfiles, j as unsetConfigOverride, jn as coerceSecretRef, jt as normalizeGoogleModelId, k as resetConfigOverrides, kn as normalizeSecretInput, kt as resolveSubagentSpawnModelSelection, m as mergeInboundPathRoots, mn as normalizeProviderId$2, mt as buildAllowedModelSet, n as loadConfig, nn as dedupeProfileIds, nr as isDangerousHostEnvOverrideVarName, nt as SAFE_BIN_PROFILES, o as resolveConfigSnapshotHash, on as ensureAuthProfileStore, or as resolveOwnerDisplaySetting, ot as isSafeExecutableValue, p as isInboundPathAllowed, pn as findNormalizedProviderValue, q as matchAllowlist, qt as normalizeProviderCatalogRows, r as parseConfigJson5, rn as listProfilesForProvider, rt as normalizeSafeBinProfileFixtures, s as writeConfigFile, sn as resolveAuthStorePathForDisplay, t as createConfigIO, tn as resolveApiKeyForProfile, tr as parseBooleanValue$1, tt as splitShellArgs, v as MODEL_APIS, vn as safeStatSync, w as isAvatarHttpUrl, wt as resolveConfiguredModelRef, xn as normalizePluginsConfig, xt as normalizeModelRef$1, y as getBlockedNetworkModeReason, yn as applyTestPluginDefaults, yt as isCliProvider, z as listWritableExplicitTrustedSafeBinDirs, zn as resolveModelThinkingCapability, zt as resolveEnvApiKey } from "./config-CgwTaper.js";
3
3
  import { c as expandHomePrefix, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-GdhK5mV_.js";
4
4
  import { C as resolvePreferredFasedAgentTmpDir, d as isRich, f as theme, i as logVerbose, l as warn, o as setVerbose, p as getChildLogger, s as shouldLogVerbose, t as danger, u as colorize, x as normalizeLogLevel } from "./globals-BtKmaIS3.js";
5
5
  import { C as isPlainObject, S as truncateUtf16Safe, _ as shortenHomeInString, a as ensureDir$3, b as sliceUtf16Safe, c as isRecord$3, d as normalizeE164, h as resolveUserPath, o as escapeRegExp, r as clampInt, s as formatTerminalLink, t as CONFIG_DIR, v as shortenHomePath, y as sleep } from "./utils-LGKVujSU.js";
@@ -10,57 +10,57 @@ import { C as resolveThreadParentSessionKey, S as parseAgentSessionKey, _ as get
10
10
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-Djqpy66R.js";
11
11
  import { t as runTasksWithConcurrency } from "./run-with-concurrency-CavAFhML.js";
12
12
  import { n as retryAsync } from "./retry-Cq65ROXv.js";
13
- import { $ as setSessionRuntimeModel, A as normalizeDeliveryContext, At as isInternalMessageChannel, B as hasInterSessionUserProvenance, Bt as CLI_DEFAULT_OPERATOR_SCOPES, C as updateSessionStore, Ct as resolveChannelGroupPolicy, D as deliveryContextFromSession, Dt as INTERNAL_MESSAGE_CHANNEL, E as resolveCacheTtlMs$1, Et as resolveGroupSessionKey, F as countToolResults, Ft as resolveMessageChannel, G as evaluateSessionFreshness, H as acquireSessionWriteLock, Ht as normalizePluginHttpPath, I as extractToolCallNames, It as GATEWAY_CLIENT_IDS, J as resolveSessionResetType, Jt as createInternalHookEvent, K as resolveChannelResetConfig, Kt as listPluginCommands, L as parseInlineDirectives$1, Lt as GATEWAY_CLIENT_MODES, M as normalizeAccountId$2, Mt as listDeliverableMessageChannels, N as archiveSessionTranscripts, Nt as normalizeMessageChannel, O as deliveryContextKey, Ot as isDeliverableMessageChannel, P as capArrayByJsonBytes, Pt as resolveGatewayMessageChannel, Q as resolveFreshSessionTotalTokens, Qt as ensureFasedAgentModelsJson, R as INPUT_PROVENANCE_KIND_VALUES, Rt as GATEWAY_CLIENT_NAMES, S as updateLastRoute, St as resolveIMessageAccount, T as isCacheEnabled, Tt as resolveChannelGroupToolsPolicy, U as resolveSessionLockMaxHoldFromTimeout, Ut as clearPluginCommands, V as normalizeInputProvenance, Vt as resolveLeastPrivilegeOperatorScopesForMethod, W as resolveSessionKey$1, Wt as executePluginCommand, X as DEFAULT_RESET_TRIGGERS, Xt as lookupContextTokens, Y as resolveThreadFlag, Yt as triggerInternalHook, Z as mergeSessionEntry, Zt as resolveContextTokensForModel, _ as resolveSessionTranscriptFile, _t as resolveTelegramToken, a as getActivePluginRegistry, at as getChannelPlugin, b as readSessionUpdatedAt, bt as listEnabledSignalAccounts, c as setActivePluginRegistry, ct as getChannelDock, d as loadCombinedSessionStoreForGateway, dt as normalizeWhatsAppTarget, et as canonicalizeMainSessionAlias, ft as normalizeSignalMessagingTarget, g as resolveMirroredTranscriptText, gt as resolveTelegramAccount, h as appendAssistantMessageToSessionTranscript, ht as listTelegramAccountIds, i as normalizeChannelId$2, it as deriveSessionMetaPatch, j as normalizeSessionDeliveryFields, jt as isMarkdownCapableMessageChannel, k as mergeDeliveryContext, kt as isGatewayMessageChannel, l as createPluginRegistry, lt as listChannelDocks, m as parseSessionThreadInfo, mt as listEnabledTelegramAccounts, n as listChatChannels, nt as resolveExplicitAgentSessionKey, o as getActivePluginRegistryKey, ot as listChannelPlugins, p as extractDeliveryInfo, pt as createTelegramActionGate, q as resolveSessionResetPolicy, qt as matchPluginCommand, r as normalizeAnyChannelId, rt as resolveMainSessionKey, s as requireActivePluginRegistry, st as normalizeChannelId$1, t as getChatChannelMeta, tt as resolveAgentMainSessionKey, u as createRuntimeHelpers, ut as isWhatsAppGroupJid, v as resolveAndPersistSessionFile, vt as buildChannelAccountBindings, w as updateSessionStoreEntry, wt as resolveChannelGroupRequireMention, x as recordSessionMetaFromInbound, xt as resolveSignalAccount, y as loadSessionStore, z as applyInputProvenanceToUserMessage, zt as ADMIN_SCOPE } from "./registry-B4HvWzob.js";
13
+ import { $ as setSessionRuntimeModel, A as normalizeDeliveryContext, At as isInternalMessageChannel, B as hasInterSessionUserProvenance, Bt as CLI_DEFAULT_OPERATOR_SCOPES, C as updateSessionStore, Ct as resolveChannelGroupPolicy, D as deliveryContextFromSession, Dt as INTERNAL_MESSAGE_CHANNEL, E as resolveCacheTtlMs$1, Et as resolveGroupSessionKey, F as countToolResults, Ft as resolveMessageChannel, G as evaluateSessionFreshness, H as acquireSessionWriteLock, Ht as normalizePluginHttpPath, I as extractToolCallNames, It as GATEWAY_CLIENT_IDS, J as resolveSessionResetType, Jt as createInternalHookEvent, K as resolveChannelResetConfig, Kt as listPluginCommands, L as parseInlineDirectives$1, Lt as GATEWAY_CLIENT_MODES, M as normalizeAccountId$2, Mt as listDeliverableMessageChannels, N as archiveSessionTranscripts, Nt as normalizeMessageChannel, O as deliveryContextKey, Ot as isDeliverableMessageChannel, P as capArrayByJsonBytes, Pt as resolveGatewayMessageChannel, Q as resolveFreshSessionTotalTokens, Qt as ensureFasedAgentModelsJson, R as INPUT_PROVENANCE_KIND_VALUES, Rt as GATEWAY_CLIENT_NAMES, S as updateLastRoute, St as resolveIMessageAccount, T as isCacheEnabled, Tt as resolveChannelGroupToolsPolicy, U as resolveSessionLockMaxHoldFromTimeout, Ut as clearPluginCommands, V as normalizeInputProvenance, Vt as resolveLeastPrivilegeOperatorScopesForMethod, W as resolveSessionKey$1, Wt as executePluginCommand, X as DEFAULT_RESET_TRIGGERS, Xt as lookupContextTokens, Y as resolveThreadFlag, Yt as triggerInternalHook, Z as mergeSessionEntry, Zt as resolveContextTokensForModel, _ as resolveSessionTranscriptFile, _t as resolveTelegramToken, a as getActivePluginRegistry, at as getChannelPlugin, b as readSessionUpdatedAt, bt as listEnabledSignalAccounts, c as setActivePluginRegistry, ct as getChannelDock, d as loadCombinedSessionStoreForGateway, dt as normalizeWhatsAppTarget, et as canonicalizeMainSessionAlias, ft as normalizeSignalMessagingTarget, g as resolveMirroredTranscriptText, gt as resolveTelegramAccount, h as appendAssistantMessageToSessionTranscript, ht as listTelegramAccountIds, i as normalizeChannelId$2, it as deriveSessionMetaPatch, j as normalizeSessionDeliveryFields, jt as isMarkdownCapableMessageChannel, k as mergeDeliveryContext, kt as isGatewayMessageChannel, l as createPluginRegistry, lt as listChannelDocks, m as parseSessionThreadInfo, mt as listEnabledTelegramAccounts, n as listChatChannels, nt as resolveExplicitAgentSessionKey, o as getActivePluginRegistryKey, ot as listChannelPlugins, p as extractDeliveryInfo, pt as createTelegramActionGate, q as resolveSessionResetPolicy, qt as matchPluginCommand, r as normalizeAnyChannelId, rt as resolveMainSessionKey, s as requireActivePluginRegistry, st as normalizeChannelId$1, t as getChatChannelMeta, tt as resolveAgentMainSessionKey, u as createRuntimeHelpers, ut as isWhatsAppGroupJid, v as resolveAndPersistSessionFile, vt as buildChannelAccountBindings, w as updateSessionStoreEntry, wt as resolveChannelGroupRequireMention, x as recordSessionMetaFromInbound, xt as resolveSignalAccount, y as loadSessionStore, z as applyInputProvenanceToUserMessage, zt as ADMIN_SCOPE } from "./registry-DNkJsNsz.js";
14
14
  import { t as normalizeChatType } from "./chat-type-CH3W-zKy.js";
15
15
  import { n as resolveAccountEntry } from "./account-helpers-CMvQP0I-.js";
16
16
  import { n as listEnabledDiscordAccounts, r as resolveDiscordAccount, t as createDiscordActionGate } from "./accounts-BJFheJNv.js";
17
17
  import { t as resolveSlackAccount } from "./accounts-BRbbLNW_.js";
18
- import { a as logWebSelfId, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, t as hasAnyWhatsAppAuth, u as readWebSelfId } from "./accounts-VqAX3HJ0.js";
18
+ import { a as logWebSelfId, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, t as hasAnyWhatsAppAuth, u as readWebSelfId } from "./accounts-BwkH5bTD.js";
19
19
  import { a as parseSlackTarget, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-BK5rrwBB.js";
20
20
  import { b as normalizeChannelSlug, x as resolveChannelEntryMatchWithFallback, y as buildChannelKeyCandidates } from "./allow-list-CBtbuDI8.js";
21
21
  import { a as resolveSessionTranscriptPath, c as resolveSessionTranscriptsDirForAgent, i as resolveSessionFilePathOptions, l as resolveStorePath, n as resolveDefaultSessionStorePath, r as resolveSessionFilePath } from "./paths-DTurNPnO.js";
22
22
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-BJQWUdmU.js";
23
- import { B as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, C as assertBrowserNavigationAllowed, D as fetchJson$1, E as appendCdpPath, F as isLoopbackHost, G as DEFAULT_FASED_BROWSER_COLOR, H as DEFAULT_AI_SNAPSHOT_MAX_CHARS, I as isSecureWebSocketUrl, K as DEFAULT_FASED_BROWSER_ENABLED, L as isTrustedProxyAddress, M as stopChromeExtensionRelayServer, N as rawDataToString, O as fetchOk, P as isLoopbackAddress, R as resolveClientIp, S as InvalidBrowserNavigationUrlError, T as withBrowserNavigationPolicy, U as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, V as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, W as DEFAULT_BROWSER_EVALUATE_ENABLED, _ as captureScreenshot, b as normalizeCdpWsUrl, c as normalizeBrowserFormField, d as isChromeReachable, f as launchFasedAgentChrome, g as resolveLsofCommandSync, h as resolveBrowserExecutableForPlatform, i as resolveExistingPathsWithinRoot, j as ensureChromeExtensionRelayServer, m as stopFasedAgentChrome, n as DEFAULT_TRACE_DIR, o as resolveWritablePathWithinRoot, p as resolveFasedAgentUserDataDir, q as DEFAULT_FASED_BROWSER_PROFILE_NAME, r as DEFAULT_UPLOAD_DIR, t as DEFAULT_DOWNLOAD_DIR, u as isChromeCdpReady, v as createTargetViaCdp, w as assertBrowserNavigationResultAllowed, x as snapshotAria, z as resolveForwardedClientIp } from "./paths-DW-U2r7Y.js";
24
- import { i as isBlockedHostnameOrIp, t as SsrFBlockedError } from "./ssrf-u0Ul7okY.js";
25
- import { _ as resolvePairingPaths, b as writeJsonAtomic, c as getSkillsSnapshotVersion, d as resolveSkillsPromptForRun, f as syncSkillsToWorkspace, g as pruneExpiredPending, h as sanitizeEnvVars, i as resolveSkillCommandInvocation, l as buildWorkspaceSkillSnapshot, m as applySkillEnvOverridesFromSnapshot, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as applySkillEnvOverrides, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as loadWorkspaceSkillEntries, v as createAsyncLock, y as readJsonFile$1 } from "./skill-commands-CLXAG5sU.js";
26
- import { i as discoverModels, r as discoverAuthStorage } from "./pi-model-discovery-D51L5E9I.js";
23
+ import { A as fetchJson$1, B as isTrustedProxyAddress, C as normalizeCdpWsUrl, D as assertBrowserNavigationResultAllowed, E as assertBrowserNavigationAllowed, F as stopChromeExtensionRelayServer, G as DEFAULT_AI_SNAPSHOT_MAX_CHARS, H as resolveForwardedClientIp, I as rawDataToString, J as DEFAULT_FASED_BROWSER_COLOR, K as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, L as isLoopbackAddress, O as withBrowserNavigationPolicy, P as ensureChromeExtensionRelayServer, R as isLoopbackHost, T as InvalidBrowserNavigationUrlError, U as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, V as resolveClientIp, W as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, X as DEFAULT_FASED_BROWSER_PROFILE_NAME, Y as DEFAULT_FASED_BROWSER_ENABLED, _ as stopFasedAgentChrome, a as DEFAULT_TRACE_DIR, b as captureScreenshot, d as normalizeBrowserFormField, g as resolveFasedAgentUserDataDir, h as launchFasedAgentChrome, i as DEFAULT_DOWNLOAD_DIR, j as fetchOk, k as appendCdpPath, l as resolveWritablePathWithinRoot, m as isChromeReachable, o as DEFAULT_UPLOAD_DIR, p as isChromeCdpReady, q as DEFAULT_BROWSER_EVALUATE_ENABLED, r as loadReadability, s as resolveExistingPathsWithinRoot, t as loadLinkedom, v as resolveBrowserExecutableForPlatform, w as snapshotAria, x as createTargetViaCdp, y as resolveLsofCommandSync, z as isSecureWebSocketUrl } from "./runtime-dependency-Deg_sw2k.js";
24
+ import { i as isBlockedHostnameOrIp, s as importOptionalRuntimeDependency, t as SsrFBlockedError } from "./ssrf-Cce6LubA.js";
25
+ import { _ as resolvePairingPaths, b as writeJsonAtomic, c as getSkillsSnapshotVersion, d as resolveSkillsPromptForRun, f as syncSkillsToWorkspace, g as pruneExpiredPending, h as sanitizeEnvVars, i as resolveSkillCommandInvocation, l as buildWorkspaceSkillSnapshot, m as applySkillEnvOverridesFromSnapshot, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as applySkillEnvOverrides, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as loadWorkspaceSkillEntries, v as createAsyncLock, y as readJsonFile$1 } from "./skill-commands-hyZA0LE3.js";
26
+ import { i as discoverModels, r as discoverAuthStorage } from "./pi-model-discovery-DadlvsZW.js";
27
27
  import { n as redactSensitiveUrlLikeString, t as redactSensitiveUrl } from "./redact-sensitive-url-DK8OUExz.js";
28
28
  import { a as resolveAgentIdentity, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-Y14LY6Rn.js";
29
- import { E as mediaKindFromMime, S as kindFromMime, _ as extensionForMime, a as buildImageResizeSideGrid, b as isAudioFileName, c as MediaFetchError, g as detectMime, h as getDefaultMediaLocalRoots, i as IMAGE_REDUCE_QUALITY_STEPS, l as fetchRemoteMedia, m as getAgentScopedMediaLocalRoots, n as loadWebMedia, o as getImageMetadata, s as resizeToJpeg, t as getDefaultLocalRoots, u as readResponseWithLimit, v as getFileExtension, w as MAX_IMAGE_BYTES, y as imageMimeFromFormat } from "./media-D7ZkWU-A.js";
29
+ import { E as mediaKindFromMime, S as kindFromMime, _ as extensionForMime, a as buildImageResizeSideGrid, b as isAudioFileName, c as MediaFetchError, g as detectMime, h as getDefaultMediaLocalRoots, i as IMAGE_REDUCE_QUALITY_STEPS, l as fetchRemoteMedia, m as getAgentScopedMediaLocalRoots, n as loadWebMedia, o as getImageMetadata, s as resizeToJpeg, t as getDefaultLocalRoots, u as readResponseWithLimit, v as getFileExtension, w as MAX_IMAGE_BYTES, y as imageMimeFromFormat } from "./media-C7YT4DeU.js";
30
30
  import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-C76pC928.js";
31
31
  import { a as writeFileWithinRoot, n as openFileWithinRoot, r as readFileWithinRoot, t as SafeOpenError } from "./fs-safe-BDnJzutp.js";
32
32
  import { a as logMessageProcessed, i as logLaneEnqueue, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag } from "./diagnostic-DpyvOvs2.js";
33
- import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-skAJZWCT.js";
34
- import { n as resolveMarkdownTableMode } from "./markdown-tables-9rJDQ1X-.js";
35
- import { a as resolveSignalRpcContext, c as streamSignalEvents, l as markdownToSignalTextChunks, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-DaaAscWj.js";
33
+ import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-KCxbJLsV.js";
34
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-DWUNvLrc.js";
35
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, l as markdownToSignalTextChunks, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-BBYcgXA4.js";
36
36
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-Dyj5Y_Ss.js";
37
- import { t as fetchWithSsrFGuard } from "./fetch-guard-DPMynms8.js";
38
- import { i as saveMediaBuffer, n as ensureMediaDir, r as getMediaDir } from "./outbound-attachment-ClMvNW17.js";
37
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-BLdujDnt.js";
38
+ import { i as saveMediaBuffer, n as ensureMediaDir, r as getMediaDir } from "./outbound-attachment-D6tj5Y5H.js";
39
39
  import { t as resolveFetch } from "./fetch-xfeOsibm.js";
40
40
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-CO1VkMEt.js";
41
- import { _ as estimateBase64DecodedBytes, a as jsonResult, d as readStringParam, f as sanitizeContentBlocksImages, g as canonicalizeBase64, h as resolveImageSanitizationLimits, i as imageResultFromFile, l as readStringArrayParam, m as sanitizeToolResultImages, n as createActionGate, p as sanitizeImageBlocks, r as imageResult, s as readNumberParam, u as readStringOrNumberParam } from "./common-BiF0sTnY.js";
42
- import { C as normalizeUsageDisplay, S as normalizeReasoningLevel, T as resolveResponseUsageMode, a as listChatCommands, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, o as listChatCommandsForConfig, u as normalizeCommandBody, v as isRestartEnabled, w as normalizeVerboseLevel, x as normalizeElevatedLevel } from "./commands-registry-CoLAT03J.js";
43
- import { B as isSessionBindingError, C as resolveThreadBindingMaxAgeMs$1, F as resolveThreadBindingIntroText, G as resolveSessionStorePathForAcp, I as resolveThreadBindingThreadName, K as upsertAcpSessionMeta, L as SYSTEM_MARK, N as formatThreadBindingDurationLabel, R as prefixSystemMessage, S as resolveThreadBindingMaxAgeExpiresAt, U as listAcpSessionEntries, W as readAcpSessionEntry, b as resolveThreadBindingIdleTimeoutMs$1, c as getThreadBindingManager, x as resolveThreadBindingInactivityExpiresAt, z as getSessionBindingService } from "./thread-bindings.state-DG5cBaRn.js";
41
+ import { _ as estimateBase64DecodedBytes, a as jsonResult, d as readStringParam, f as sanitizeContentBlocksImages, g as canonicalizeBase64, h as resolveImageSanitizationLimits, i as imageResultFromFile, l as readStringArrayParam, m as sanitizeToolResultImages, n as createActionGate, p as sanitizeImageBlocks, r as imageResult, s as readNumberParam, u as readStringOrNumberParam } from "./common-DJWrErdE.js";
42
+ import { C as normalizeUsageDisplay, S as normalizeReasoningLevel, T as resolveResponseUsageMode, a as listChatCommands, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, o as listChatCommandsForConfig, u as normalizeCommandBody, v as isRestartEnabled, w as normalizeVerboseLevel, x as normalizeElevatedLevel } from "./commands-registry-DoWdYAJd.js";
43
+ import { B as isSessionBindingError, C as resolveThreadBindingMaxAgeMs$1, F as resolveThreadBindingIntroText, G as resolveSessionStorePathForAcp, I as resolveThreadBindingThreadName, K as upsertAcpSessionMeta, L as SYSTEM_MARK, N as formatThreadBindingDurationLabel, R as prefixSystemMessage, S as resolveThreadBindingMaxAgeExpiresAt, U as listAcpSessionEntries, W as readAcpSessionEntry, b as resolveThreadBindingIdleTimeoutMs$1, c as getThreadBindingManager, x as resolveThreadBindingInactivityExpiresAt, z as getSessionBindingService } from "./thread-bindings.state-D8kN2X6H.js";
44
44
  import { t as resolveMemorySearchConfig } from "./memory-search-B-0Fwnrp.js";
45
- import { i as executeWithApiKeyRotation, n as parseGeminiAuth, r as collectProviderApiKeysForExecution } from "./manager-BytwRIfK.js";
45
+ import { i as executeWithApiKeyRotation, n as parseGeminiAuth, r as collectProviderApiKeysForExecution } from "./manager-9see0IX5.js";
46
46
  import { c as normalizeExtraMemoryPaths, s as listMemoryFiles } from "./internal-DMTDEiDF.js";
47
47
  import { i as resolveQmdScopeDenial } from "./qmd-scope-Cei2-7Q5.js";
48
48
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-CT36_PCE.js";
49
49
  import { t as redactIdentifier } from "./redact-identifier-BAD7jXcr.js";
50
- import { A as mergeDmAllowFromSources, B as formatLocationText, F as upsertChannelPairingRequest, K as parseTelegramTarget, M as addChannelAllowFromStoreEntry, N as readChannelAllowFromStore, O as firstDefined$1, P as removeChannelAllowFromStoreEntry, R as getPairingAdapter, U as isVoiceCompatibleAudio, V as toLocationContext, i as saveCronStore, j as resolveGroupAllowFromSources, k as isSenderIdAllowed, l as buildTelegramGroupPeerId, n as loadCronStore, q as resolveTelegramTargetChatType, r as resolveCronStorePath, z as listPairingChannels } from "./wsl-B2euLEc2.js";
50
+ import { A as mergeDmAllowFromSources, B as formatLocationText, F as upsertChannelPairingRequest, K as parseTelegramTarget, M as addChannelAllowFromStoreEntry, N as readChannelAllowFromStore, O as firstDefined$1, P as removeChannelAllowFromStoreEntry, R as getPairingAdapter, U as isVoiceCompatibleAudio, V as toLocationContext, i as saveCronStore, j as resolveGroupAllowFromSources, k as isSenderIdAllowed, l as buildTelegramGroupPeerId, n as loadCronStore, q as resolveTelegramTargetChatType, r as resolveCronStorePath, z as listPairingChannels } from "./wsl-DcM2PgSS.js";
51
51
  import { n as resolveUserTimeFormat, r as resolveUserTimezone, t as formatUserTime } from "./date-time-BtRPVcm7.js";
52
52
  import { a as resolveSandboxedMediaSource, i as resolveSandboxPath, n as assertSandboxPath, r as resolveSandboxInputPath, t as assertMediaNotDataUrl } from "./sandbox-paths-DMnFyOaA.js";
53
53
  import { n as normalizePollInput } from "./polls-B4cMiwMo.js";
54
54
  import { t as parseDiscordTarget } from "./targets-t1hbjHdJ.js";
55
55
  import { n as missingTargetError, r as unknownTargetError, t as ambiguousTargetError } from "./target-errors-kz4lDpCF.js";
56
56
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-C2vOB38t.js";
57
- import { a as formatIMessageChatTarget, c as normalizeIMessageHandle, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, l as parseIMessageTarget, o as formatIMessageTargetForLog, r as createIMessageRpcClient, s as isAllowedIMessageSender, t as sendMessageIMessage } from "./send-Dl88ZKq2.js";
58
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-DlHzggnG.js";
57
+ import { a as formatIMessageChatTarget, c as normalizeIMessageHandle, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, l as parseIMessageTarget, o as formatIMessageTargetForLog, r as createIMessageRpcClient, s as isAllowedIMessageSender, t as sendMessageIMessage } from "./send-D3836_UN.js";
58
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-DO0WR4nB.js";
59
59
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-CeJDjLk-.js";
60
- import { t as convertMarkdownTables } from "./tables-RBtf8G4P.js";
60
+ import { t as convertMarkdownTables } from "./tables-BD7H5ug-.js";
61
61
  import { n as recordChannelActivity, t as getChannelActivity } from "./channel-activity-Cf5sKkfd.js";
62
62
  import { t as withTimeout$3 } from "./with-timeout-DqkblR98.js";
63
- import { t as getActiveWebListener } from "./active-listener-D6_pdTMC.js";
63
+ import { t as getActiveWebListener } from "./active-listener-Dx1SEGDn.js";
64
64
  import { createRequire } from "node:module";
65
65
  import fs, { constants, existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
66
66
  import crypto, { X509Certificate, createDecipheriv, createHash, createHmac, randomBytes, randomUUID, scryptSync, timingSafeEqual } from "node:crypto";
@@ -79,7 +79,7 @@ import AjvPkg from "ajv";
79
79
  import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, createAgentSession, createCodingTools, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary } from "@mariozechner/pi-coding-agent";
80
80
  import net from "node:net";
81
81
  import { Type } from "@sinclair/typebox";
82
- import { WebSocket } from "ws";
82
+ import { WebSocket as WebSocket$1 } from "ws";
83
83
  import { Buffer as Buffer$1 } from "node:buffer";
84
84
  import { AddressLookupTableAccount, PublicKey, VersionedTransaction } from "@solana/web3.js";
85
85
  import { Value } from "@sinclair/typebox/value";
@@ -89,7 +89,6 @@ import "@fedify/fedify/vocab";
89
89
  import { createJiti } from "jiti";
90
90
  import readline from "node:readline";
91
91
  import { complete, completeSimple, streamSimple } from "@mariozechner/pi-ai/compat";
92
- import { EdgeTTS } from "node-edge-tts";
93
92
  import { EventEmitter } from "node:events";
94
93
  import { Client } from "@modelcontextprotocol/sdk/client/index.js";
95
94
  import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";
@@ -4312,7 +4311,7 @@ var GatewayClient = class {
4312
4311
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
4313
4312
  });
4314
4313
  }
4315
- this.ws = new WebSocket(url, wsOptions);
4314
+ this.ws = new WebSocket$1(url, wsOptions);
4316
4315
  this.ws.on("open", () => {
4317
4316
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
4318
4317
  const tlsError = this.validateTlsFingerprint();
@@ -4508,7 +4507,7 @@ var GatewayClient = class {
4508
4507
  const connectChallengeTimeoutMs = typeof rawConnectDelayMs === "number" && Number.isFinite(rawConnectDelayMs) ? Math.max(250, Math.min(1e4, rawConnectDelayMs)) : 2e3;
4509
4508
  if (this.connectTimer) clearTimeout(this.connectTimer);
4510
4509
  this.connectTimer = setTimeout(() => {
4511
- if (this.connectSent || this.ws?.readyState !== WebSocket.OPEN) return;
4510
+ if (this.connectSent || this.ws?.readyState !== WebSocket$1.OPEN) return;
4512
4511
  this.opts.onConnectError?.(/* @__PURE__ */ new Error("gateway connect challenge timeout"));
4513
4512
  this.ws?.close(1008, "connect challenge timeout");
4514
4513
  }, connectChallengeTimeoutMs);
@@ -4550,7 +4549,7 @@ var GatewayClient = class {
4550
4549
  return null;
4551
4550
  }
4552
4551
  async request(method, params, opts) {
4553
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
4552
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
4554
4553
  const id = randomUUID();
4555
4554
  const frame = {
4556
4555
  type: "req",
@@ -17692,27 +17691,27 @@ function createOutboundSendDepsFromCliSource(deps) {
17692
17691
  function createDefaultDeps() {
17693
17692
  return {
17694
17693
  sendMessageWhatsApp: async (...args) => {
17695
- const { sendMessageWhatsApp } = await import("./web-DJwacWQo.js");
17694
+ const { sendMessageWhatsApp } = await import("./web-02I0vmdu.js");
17696
17695
  return await sendMessageWhatsApp(...args);
17697
17696
  },
17698
17697
  sendMessageTelegram: async (...args) => {
17699
- const { sendMessageTelegram } = await import("./send-8remZhsH.js").then((n) => n.c);
17698
+ const { sendMessageTelegram } = await import("./send-B09HRfHN.js").then((n) => n.c);
17700
17699
  return await sendMessageTelegram(...args);
17701
17700
  },
17702
17701
  sendMessageDiscord: async (...args) => {
17703
- const { sendMessageDiscord } = await import("./send-Di9irjS-.js").then((n) => n.t);
17702
+ const { sendMessageDiscord } = await import("./send-C3u-F_8s.js").then((n) => n.t);
17704
17703
  return await sendMessageDiscord(...args);
17705
17704
  },
17706
17705
  sendMessageSlack: async (...args) => {
17707
- const { sendMessageSlack } = await import("./send-QSt6nbny.js").then((n) => n.n);
17706
+ const { sendMessageSlack } = await import("./send-DsxFXrCO.js").then((n) => n.n);
17708
17707
  return await sendMessageSlack(...args);
17709
17708
  },
17710
17709
  sendMessageSignal: async (...args) => {
17711
- const { sendMessageSignal } = await import("./send-DaaAscWj.js").then((n) => n.i);
17710
+ const { sendMessageSignal } = await import("./send-BBYcgXA4.js").then((n) => n.i);
17712
17711
  return await sendMessageSignal(...args);
17713
17712
  },
17714
17713
  sendMessageIMessage: async (...args) => {
17715
- const { sendMessageIMessage } = await import("./send-Dl88ZKq2.js").then((n) => n.n);
17714
+ const { sendMessageIMessage } = await import("./send-D3836_UN.js").then((n) => n.n);
17716
17715
  return await sendMessageIMessage(...args);
17717
17716
  }
17718
17717
  };
@@ -19774,7 +19773,7 @@ async function getMemorySearchManager(params) {
19774
19773
  const wrapper = new FallbackMemoryManager({
19775
19774
  primary,
19776
19775
  fallbackFactory: async () => {
19777
- const { MemoryIndexManager } = await import("./manager-BytwRIfK.js").then((n) => n.t);
19776
+ const { MemoryIndexManager } = await import("./manager-9see0IX5.js").then((n) => n.t);
19778
19777
  return await MemoryIndexManager.get(params);
19779
19778
  }
19780
19779
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -19787,7 +19786,7 @@ async function getMemorySearchManager(params) {
19787
19786
  }
19788
19787
  }
19789
19788
  try {
19790
- const { MemoryIndexManager } = await import("./manager-BytwRIfK.js").then((n) => n.t);
19789
+ const { MemoryIndexManager } = await import("./manager-9see0IX5.js").then((n) => n.t);
19791
19790
  return { manager: await MemoryIndexManager.get(params) };
19792
19791
  } catch (err) {
19793
19792
  const message = err instanceof Error ? err.message : String(err);
@@ -22702,6 +22701,11 @@ function inferEdgeExtension(outputFormat) {
22702
22701
  }
22703
22702
  async function edgeTTS(params) {
22704
22703
  const { text, outputPath, config, timeoutMs } = params;
22704
+ const { EdgeTTS } = await importOptionalRuntimeDependency({
22705
+ componentId: "speech-runtime",
22706
+ packageName: "@fased/speech-runtime",
22707
+ dependency: "node-edge-tts"
22708
+ });
22705
22709
  await new EdgeTTS({
22706
22710
  voice: config.voice,
22707
22711
  lang: config.lang,
@@ -32490,7 +32494,7 @@ function isModuleNotFoundError(err) {
32490
32494
  }
32491
32495
  async function loadPwAiModule(mode) {
32492
32496
  try {
32493
- return await import("./pw-ai-DZs6uYRd.js");
32497
+ return await import("./pw-ai-Boor5vYw.js");
32494
32498
  } catch (err) {
32495
32499
  if (mode === "soft") return null;
32496
32500
  if (isModuleNotFoundError(err)) return null;
@@ -32884,11 +32888,11 @@ function createProfileContext(opts, profile) {
32884
32888
  const userDataDir = resolveFasedAgentUserDataDir(profile.name);
32885
32889
  const profileState = getProfileState();
32886
32890
  if (await isHttpReachable(300) && !profileState.running) try {
32887
- await (await import("./pw-ai-DZs6uYRd.js")).closePlaywrightBrowserConnection();
32891
+ await (await import("./pw-ai-Boor5vYw.js")).closePlaywrightBrowserConnection();
32888
32892
  } catch {}
32889
32893
  if (profileState.running) await stopRunningBrowser();
32890
32894
  try {
32891
- await (await import("./pw-ai-DZs6uYRd.js")).closePlaywrightBrowserConnection();
32895
+ await (await import("./pw-ai-Boor5vYw.js")).closePlaywrightBrowserConnection();
32892
32896
  } catch {}
32893
32897
  if (!fs.existsSync(userDataDir)) return {
32894
32898
  moved: false,
@@ -54255,7 +54259,7 @@ async function sanitizeHtml(html) {
54255
54259
  let sanitized = html.replace(/<!--[\s\S]*?-->/g, "");
54256
54260
  let document;
54257
54261
  try {
54258
- const { parseHTML } = await import("linkedom");
54262
+ const { parseHTML } = await loadLinkedom();
54259
54263
  ({document} = parseHTML(sanitized));
54260
54264
  } catch {
54261
54265
  return sanitized;
@@ -54278,7 +54282,7 @@ const READABILITY_MAX_HTML_CHARS = 1e6;
54278
54282
  const READABILITY_MAX_ESTIMATED_NESTING_DEPTH = 3e3;
54279
54283
  let readabilityDepsPromise;
54280
54284
  async function loadReadabilityDeps() {
54281
- if (!readabilityDepsPromise) readabilityDepsPromise = Promise.all([import("@mozilla/readability"), import("linkedom")]).then(([readability, linkedom]) => ({
54285
+ if (!readabilityDepsPromise) readabilityDepsPromise = Promise.all([loadReadability(), loadLinkedom()]).then(([readability, linkedom]) => ({
54282
54286
  Readability: readability.Readability,
54283
54287
  parseHTML: linkedom.parseHTML
54284
54288
  }));
@@ -71497,14 +71501,22 @@ async function applyLinkUnderstanding(params) {
71497
71501
  let canvasModulePromise = null;
71498
71502
  let pdfJsModulePromise = null;
71499
71503
  async function loadCanvasModule() {
71500
- if (!canvasModulePromise) canvasModulePromise = import("@napi-rs/canvas").catch((err) => {
71504
+ if (!canvasModulePromise) canvasModulePromise = importOptionalRuntimeDependency({
71505
+ componentId: "media-runtime",
71506
+ packageName: "@fased/media-runtime",
71507
+ dependency: "@napi-rs/canvas"
71508
+ }).catch((err) => {
71501
71509
  canvasModulePromise = null;
71502
71510
  throw new Error(`Optional dependency @napi-rs/canvas is required for PDF image extraction: ${String(err)}`);
71503
71511
  });
71504
71512
  return canvasModulePromise;
71505
71513
  }
71506
71514
  async function loadPdfJsModule() {
71507
- if (!pdfJsModulePromise) pdfJsModulePromise = import("pdfjs-dist/legacy/build/pdf.mjs").catch((err) => {
71515
+ if (!pdfJsModulePromise) pdfJsModulePromise = importOptionalRuntimeDependency({
71516
+ componentId: "media-runtime",
71517
+ packageName: "@fased/media-runtime",
71518
+ dependency: "pdfjs-dist/legacy/build/pdf.mjs"
71519
+ }).catch((err) => {
71508
71520
  pdfJsModulePromise = null;
71509
71521
  throw new Error(`Optional dependency pdfjs-dist is required for PDF extraction: ${String(err)}`);
71510
71522
  });
@@ -83514,7 +83526,7 @@ const handleSessionCommand = async (params, allowTextCommands) => {
83514
83526
  reply: { text: resolveSessionCommandUsage() }
83515
83527
  };
83516
83528
  }
83517
- const { setThreadBindingIdleTimeoutBySessionKey, setThreadBindingMaxAgeBySessionKey } = await import("./thread-bindings.lifecycle-DsB94WbE.js").then((n) => n.n);
83529
+ const { setThreadBindingIdleTimeoutBySessionKey, setThreadBindingMaxAgeBySessionKey } = await import("./thread-bindings.lifecycle-Djem8FWF.js").then((n) => n.n);
83518
83530
  const updatedBindings = action === SESSION_ACTION_IDLE ? setThreadBindingIdleTimeoutBySessionKey({
83519
83531
  targetSessionKey: binding.targetSessionKey,
83520
83532
  accountId,
@@ -84740,7 +84752,7 @@ async function createModelSelectionState(params) {
84740
84752
  }
84741
84753
  }
84742
84754
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
84743
- const { ensureAuthProfileStore } = await import("./config-TFokWwvO.js").then((n) => n.Jt);
84755
+ const { ensureAuthProfileStore } = await import("./config-CgwTaper.js").then((n) => n.Jt);
84744
84756
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
84745
84757
  const providerKey = normalizeProviderId$1(provider);
84746
84758
  if (!profile || normalizeProviderId$1(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -93405,7 +93417,7 @@ const discordMessageActions = {
93405
93417
  return null;
93406
93418
  },
93407
93419
  handleAction: async ({ action, params, cfg, accountId, requesterSenderId, toolContext, mediaLocalRoots }) => {
93408
- const { handleDiscordMessageAction } = await import("./handle-action-C-UndB8E.js");
93420
+ const { handleDiscordMessageAction } = await import("./handle-action-B61D85yo.js");
93409
93421
  return await handleDiscordMessageAction({
93410
93422
  action,
93411
93423
  params,
@@ -93654,7 +93666,7 @@ function extractToolSend(args, expectedAction = "sendMessage") {
93654
93666
  //#region src/channels/plugins/actions/telegram.ts
93655
93667
  const providerId = "telegram";
93656
93668
  async function loadTelegramActionHandler() {
93657
- const { handleTelegramAction } = await import("./telegram-actions-DAeYXSLk.js");
93669
+ const { handleTelegramAction } = await import("./telegram-actions-BRUNEXMr.js");
93658
93670
  return handleTelegramAction;
93659
93671
  }
93660
93672
  function readTelegramSendParams(params) {
@@ -93824,7 +93836,7 @@ function createWhatsAppLoginTool() {
93824
93836
  force: Type.Optional(Type.Boolean())
93825
93837
  }),
93826
93838
  execute: async (_toolCallId, args) => {
93827
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CVQsGWKq.js");
93839
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-D7MEpFza.js");
93828
93840
  if ((args?.action ?? "start") === "wait") {
93829
93841
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
93830
93842
  return {
@@ -96170,7 +96182,7 @@ function buildPairingReply(params) {
96170
96182
 
96171
96183
  //#endregion
96172
96184
  //#region src/brand.ts
96173
- const FASED_PRODUCT_VERSION = "0.1.36";
96185
+ const FASED_PRODUCT_VERSION = "0.1.38";
96174
96186
  const FASED_DISPLAY_VERSION = `v${FASED_PRODUCT_VERSION}`;
96175
96187
 
96176
96188
  //#endregion
@@ -100245,7 +100257,7 @@ const handleWhatsAppActionLazy = async (...args) => {
100245
100257
  return handleWhatsAppAction(...args);
100246
100258
  };
100247
100259
  const auditDiscordChannelPermissionsLazy = async (...args) => {
100248
- const { auditDiscordChannelPermissions } = await import("./audit-CKWkq0Un.js");
100260
+ const { auditDiscordChannelPermissions } = await import("./audit-sSeRDwJb.js");
100249
100261
  return auditDiscordChannelPermissions(...args);
100250
100262
  };
100251
100263
  const listDiscordDirectoryGroupsLiveLazy = async (...args) => {
@@ -100269,15 +100281,15 @@ const resolveDiscordUserAllowlistLazy = async (...args) => {
100269
100281
  return resolveDiscordUserAllowlist(...args);
100270
100282
  };
100271
100283
  const sendMessageDiscordLazy = async (...args) => {
100272
- const { sendMessageDiscord } = await import("./send-Di9irjS-.js").then((n) => n.t);
100284
+ const { sendMessageDiscord } = await import("./send-C3u-F_8s.js").then((n) => n.t);
100273
100285
  return sendMessageDiscord(...args);
100274
100286
  };
100275
100287
  const sendPollDiscordLazy = async (...args) => {
100276
- const { sendPollDiscord } = await import("./send-Di9irjS-.js").then((n) => n.t);
100288
+ const { sendPollDiscord } = await import("./send-C3u-F_8s.js").then((n) => n.t);
100277
100289
  return sendPollDiscord(...args);
100278
100290
  };
100279
100291
  const monitorDiscordProviderLazy = async (...args) => {
100280
- const { monitorDiscordProvider } = await import("./monitor-BzDW50H6.js");
100292
+ const { monitorDiscordProvider } = await import("./monitor-o20KTHIi.js");
100281
100293
  return monitorDiscordProvider(...args);
100282
100294
  };
100283
100295
  const listSlackDirectoryGroupsLiveLazy = async (...args) => {
@@ -100301,15 +100313,15 @@ const resolveSlackUserAllowlistLazy = async (...args) => {
100301
100313
  return resolveSlackUserAllowlist(...args);
100302
100314
  };
100303
100315
  const sendMessageSlackLazy = async (...args) => {
100304
- const { sendMessageSlack } = await import("./send-QSt6nbny.js").then((n) => n.n);
100316
+ const { sendMessageSlack } = await import("./send-DsxFXrCO.js").then((n) => n.n);
100305
100317
  return sendMessageSlack(...args);
100306
100318
  };
100307
100319
  const monitorSlackProviderLazy = async (...args) => {
100308
- const { monitorSlackProvider } = await import("./slack-Br9c6Yzs.js");
100320
+ const { monitorSlackProvider } = await import("./slack-BErIh0uj.js");
100309
100321
  return monitorSlackProvider(...args);
100310
100322
  };
100311
100323
  const handleSlackActionLazy = async (...args) => {
100312
- const { handleSlackAction } = await import("./slack-actions-CDSSRo8Y.js");
100324
+ const { handleSlackAction } = await import("./slack-actions-DDMszx56.js");
100313
100325
  return handleSlackAction(...args);
100314
100326
  };
100315
100327
  const probeTelegramLazy = async (...args) => {
@@ -100317,15 +100329,15 @@ const probeTelegramLazy = async (...args) => {
100317
100329
  return probeTelegram(...args);
100318
100330
  };
100319
100331
  const sendMessageTelegramLazy = async (...args) => {
100320
- const { sendMessageTelegram } = await import("./send-8remZhsH.js").then((n) => n.c);
100332
+ const { sendMessageTelegram } = await import("./send-B09HRfHN.js").then((n) => n.c);
100321
100333
  return sendMessageTelegram(...args);
100322
100334
  };
100323
100335
  const sendPollTelegramLazy = async (...args) => {
100324
- const { sendPollTelegram } = await import("./send-8remZhsH.js").then((n) => n.c);
100336
+ const { sendPollTelegram } = await import("./send-B09HRfHN.js").then((n) => n.c);
100325
100337
  return sendPollTelegram(...args);
100326
100338
  };
100327
100339
  const monitorTelegramProviderLazy = async (...args) => {
100328
- const { monitorTelegramProvider } = await import("./monitor-BCxkQBoh.js");
100340
+ const { monitorTelegramProvider } = await import("./monitor-C6Ohw9BA.js");
100329
100341
  return monitorTelegramProvider(...args);
100330
100342
  };
100331
100343
  let webOutboundPromise = null;
@@ -100334,23 +100346,23 @@ let webLoginQrPromise = null;
100334
100346
  let webChannelPromise = null;
100335
100347
  let whatsappActionsPromise = null;
100336
100348
  function loadWebOutbound() {
100337
- webOutboundPromise ??= import("./outbound-BHWJD9q0.js").then((n) => n.t);
100349
+ webOutboundPromise ??= import("./outbound-JIwQbpRY.js").then((n) => n.t);
100338
100350
  return webOutboundPromise;
100339
100351
  }
100340
100352
  function loadWebLogin() {
100341
- webLoginPromise ??= import("./login-Dnxas1dI.js").then((n) => n.n);
100353
+ webLoginPromise ??= import("./login-CzUuDd1v.js").then((n) => n.n);
100342
100354
  return webLoginPromise;
100343
100355
  }
100344
100356
  function loadWebLoginQr() {
100345
- webLoginQrPromise ??= import("./login-qr-CVQsGWKq.js");
100357
+ webLoginQrPromise ??= import("./login-qr-D7MEpFza.js");
100346
100358
  return webLoginQrPromise;
100347
100359
  }
100348
100360
  function loadWebChannel() {
100349
- webChannelPromise ??= import("./web-DJwacWQo.js");
100361
+ webChannelPromise ??= import("./web-02I0vmdu.js");
100350
100362
  return webChannelPromise;
100351
100363
  }
100352
100364
  function loadWhatsAppActions() {
100353
- whatsappActionsPromise ??= import("./whatsapp-actions-6opfo-oB.js");
100365
+ whatsappActionsPromise ??= import("./whatsapp-actions-DRqtzvTO.js");
100354
100366
  return whatsappActionsPromise;
100355
100367
  }
100356
100368
  function createPluginRuntime(options = {}) {
@@ -102343,7 +102355,7 @@ const log$1 = createSubsystemLogger("model-catalog");
102343
102355
  let modelCatalogPromise = null;
102344
102356
  let hasLoggedModelCatalogError = false;
102345
102357
  let hasLoggedProviderCatalogError = false;
102346
- const defaultImportPiSdk = () => import("./pi-model-discovery-D51L5E9I.js").then((n) => n.a);
102358
+ const defaultImportPiSdk = () => import("./pi-model-discovery-DadlvsZW.js").then((n) => n.a);
102347
102359
  let importPiSdk = defaultImportPiSdk;
102348
102360
  const CODEX_PROVIDER = "openai-codex";
102349
102361
  const OPENAI_PROVIDER = "openai";
@@ -1,8 +1,8 @@
1
- import { Rt as resolveApiKeyForProvider, Tt as resolveDefaultModelForAgent } from "./config-TFokWwvO.js";
1
+ import { Rt as resolveApiKeyForProvider, Tt as resolveDefaultModelForAgent } from "./config-CgwTaper.js";
2
2
  import { t as STATE_DIR } from "./paths-GdhK5mV_.js";
3
3
  import { i as logVerbose } from "./globals-BtKmaIS3.js";
4
4
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-Djqpy66R.js";
5
- import { c as findModelInCatalog, dt as resolveAutoImageModel, l as loadModelCatalog, u as modelSupportsVision } from "./status-DoxnzyMC.js";
5
+ import { c as findModelInCatalog, dt as resolveAutoImageModel, l as loadModelCatalog, u as modelSupportsVision } from "./status-CCGFb0f2.js";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs/promises";
8
8
 
@@ -147,7 +147,7 @@ async function describeStickerImage(params) {
147
147
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
148
148
  try {
149
149
  const buffer = await fs.readFile(imagePath);
150
- const { describeImageWithModel } = await import("./status-DoxnzyMC.js").then((n) => n.Ct);
150
+ const { describeImageWithModel } = await import("./status-CCGFb0f2.js").then((n) => n.Ct);
151
151
  return (await describeImageWithModel({
152
152
  buffer,
153
153
  fileName: "sticker.webp",
@@ -1,7 +1,7 @@
1
- import { c as loadModelCatalog, kt as resolveAutoImageModel, l as modelSupportsVision, s as findModelInCatalog } from "./pi-embedded-runner-DQ6UPx6-.js";
1
+ import { c as loadModelCatalog, kt as resolveAutoImageModel, l as modelSupportsVision, s as findModelInCatalog } from "./pi-embedded-runner-DqDy0MWN.js";
2
2
  import { i as logVerbose } from "./globals-B_jjtAje.js";
3
3
  import { t as STATE_DIR } from "./paths-BEmvSyOV.js";
4
- import { Gt as resolveDefaultModelForAgent, in as resolveApiKeyForProvider } from "./config-DXlISPlx.js";
4
+ import { Gt as resolveDefaultModelForAgent, in as resolveApiKeyForProvider } from "./config-DtqAN2L3.js";
5
5
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-Dgug856m.js";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs/promises";
@@ -147,7 +147,7 @@ async function describeStickerImage(params) {
147
147
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
148
148
  try {
149
149
  const buffer = await fs.readFile(imagePath);
150
- const { describeImageWithModel } = await import("./pi-embedded-runner-DQ6UPx6-.js").then((n) => n.Ht);
150
+ const { describeImageWithModel } = await import("./pi-embedded-runner-DqDy0MWN.js").then((n) => n.Ht);
151
151
  return (await describeImageWithModel({
152
152
  buffer,
153
153
  fileName: "sticker.webp",
@@ -1,4 +1,4 @@
1
- import { p as markdownToIRWithMeta } from "./media-C6C2c9a4.js";
1
+ import { p as markdownToIRWithMeta } from "./media-C7YT4DeU.js";
2
2
  import { t as renderMarkdownWithMarkers } from "./render-C9LkRUhd.js";
3
3
 
4
4
  //#region src/markdown/tables.ts
@@ -1,4 +1,4 @@
1
- import { p as markdownToIRWithMeta } from "./media-D7ZkWU-A.js";
1
+ import { p as markdownToIRWithMeta } from "./media-Cxw-xLGU.js";
2
2
  import { t as renderMarkdownWithMarkers } from "./render-C9LkRUhd.js";
3
3
 
4
4
  //#region src/markdown/tables.ts
@@ -1,4 +1,4 @@
1
- import "./config-TFokWwvO.js";
1
+ import "./config-CgwTaper.js";
2
2
  import "./paths-GdhK5mV_.js";
3
3
  import "./globals-BtKmaIS3.js";
4
4
  import "./utils-LGKVujSU.js";
@@ -7,48 +7,48 @@ import "./agent-scope-BuTbywla.js";
7
7
  import "./redact-Ck-wgswc.js";
8
8
  import "./github-copilot-token-Djqpy66R.js";
9
9
  import "./retry-Cq65ROXv.js";
10
- import { _t as resolveTelegramToken, pt as createTelegramActionGate } from "./registry-B4HvWzob.js";
10
+ import { _t as resolveTelegramToken, pt as createTelegramActionGate } from "./registry-DNkJsNsz.js";
11
11
  import "./accounts-BJFheJNv.js";
12
12
  import "./accounts-BRbbLNW_.js";
13
- import "./accounts-VqAX3HJ0.js";
13
+ import "./accounts-BwkH5bTD.js";
14
14
  import "./tokens-BK5rrwBB.js";
15
15
  import "./allow-list-CBtbuDI8.js";
16
16
  import "./paths-DTurNPnO.js";
17
- import { en as resolveTelegramReactionLevel, tn as resolveTelegramInlineButtonsScope } from "./status-DoxnzyMC.js";
18
- import "./paths-DW-U2r7Y.js";
19
- import "./ssrf-u0Ul7okY.js";
20
- import "./skill-commands-CLXAG5sU.js";
21
- import "./pi-model-discovery-D51L5E9I.js";
17
+ import { en as resolveTelegramReactionLevel, tn as resolveTelegramInlineButtonsScope } from "./status-CCGFb0f2.js";
18
+ import "./runtime-dependency-Deg_sw2k.js";
19
+ import "./ssrf-Cce6LubA.js";
20
+ import "./skill-commands-hyZA0LE3.js";
21
+ import "./pi-model-discovery-DadlvsZW.js";
22
22
  import "./reply-prefix-Y14LY6Rn.js";
23
- import "./media-D7ZkWU-A.js";
23
+ import "./media-C7YT4DeU.js";
24
24
  import "./path-alias-guards-C76pC928.js";
25
25
  import "./fs-safe-BDnJzutp.js";
26
26
  import "./diagnostic-DpyvOvs2.js";
27
- import "./chunk-skAJZWCT.js";
28
- import "./markdown-tables-9rJDQ1X-.js";
29
- import "./send-DaaAscWj.js";
30
- import "./fetch-guard-DPMynms8.js";
31
- import "./outbound-attachment-ClMvNW17.js";
27
+ import "./chunk-KCxbJLsV.js";
28
+ import "./markdown-tables-DWUNvLrc.js";
29
+ import "./send-BBYcgXA4.js";
30
+ import "./fetch-guard-BLdujDnt.js";
31
+ import "./outbound-attachment-D6tj5Y5H.js";
32
32
  import "./fetch-xfeOsibm.js";
33
- import { a as jsonResult, c as readReactionParams, d as readStringParam, s as readNumberParam, u as readStringOrNumberParam } from "./common-BiF0sTnY.js";
34
- import "./commands-registry-CoLAT03J.js";
35
- import "./thread-bindings.state-DG5cBaRn.js";
33
+ import { a as jsonResult, c as readReactionParams, d as readStringParam, s as readNumberParam, u as readStringOrNumberParam } from "./common-DJWrErdE.js";
34
+ import "./commands-registry-DoWdYAJd.js";
35
+ import "./thread-bindings.state-D8kN2X6H.js";
36
36
  import "./memory-search-B-0Fwnrp.js";
37
- import "./manager-BytwRIfK.js";
37
+ import "./manager-9see0IX5.js";
38
38
  import "./query-expansion-DjJAUtDU.js";
39
39
  import "./diagnostic-session-state-CT36_PCE.js";
40
- import { q as resolveTelegramTargetChatType } from "./wsl-B2euLEc2.js";
40
+ import { q as resolveTelegramTargetChatType } from "./wsl-DcM2PgSS.js";
41
41
  import "./sandbox-paths-DMnFyOaA.js";
42
42
  import "./directory-live-8umGGN7a.js";
43
43
  import "./targets-t1hbjHdJ.js";
44
- import "./send-Dl88ZKq2.js";
45
- import "./resolve-route-DlHzggnG.js";
44
+ import "./send-D3836_UN.js";
45
+ import "./resolve-route-DO0WR4nB.js";
46
46
  import "./render-C9LkRUhd.js";
47
- import "./tables-RBtf8G4P.js";
48
- import { a as reactMessageTelegram, i as editMessageTelegram, n as createForumTopicTelegram, o as sendMessageTelegram, r as deleteMessageTelegram, s as sendStickerTelegram } from "./send-8remZhsH.js";
49
- import "./retry-policy-DGLs5ebP.js";
47
+ import "./tables-BD7H5ug-.js";
48
+ import { a as reactMessageTelegram, i as editMessageTelegram, n as createForumTopicTelegram, o as sendMessageTelegram, r as deleteMessageTelegram, s as sendStickerTelegram } from "./send-B09HRfHN.js";
49
+ import "./retry-policy-BLYEgIwP.js";
50
50
  import "./proxy-CV9uL4Wi.js";
51
- import { a as searchStickers, r as getCacheStats } from "./sticker-cache-zmJ39ByC.js";
51
+ import { a as searchStickers, r as getCacheStats } from "./sticker-cache-CKAkkCoU.js";
52
52
 
53
53
  //#region src/agents/tools/telegram-actions.ts
54
54
  const TELEGRAM_BUTTON_STYLES = [