@fased/fased 0.1.20 → 0.1.21

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 (202) hide show
  1. package/dist/{agents-ChQhgSlb.js → agents-BwDWbvDH.js} +10 -10
  2. package/dist/{attachment-normalize-Cr8RzfVf.js → attachment-normalize-C9F-gS4-.js} +1 -1
  3. package/dist/{attachment-normalize-DB19KLbl.js → attachment-normalize-C9w24bkb.js} +1 -1
  4. package/dist/{audio-preflight-BmW52Ycp.js → audio-preflight-CTs9Ta27.js} +1 -1
  5. package/dist/{audio-preflight-BLGP3XdB.js → audio-preflight-DGoGnRdo.js} +1 -1
  6. package/dist/{audio-preflight-CHhcmiXJ.js → audio-preflight-Dg10mePo.js} +4 -4
  7. package/dist/{audio-preflight-DVwcDm03.js → audio-preflight-DnHScDmF.js} +4 -4
  8. package/dist/{audio-preflight-DAevycUR.js → audio-preflight-QMOvUkXH.js} +1 -1
  9. package/dist/{audit-C5YXYuIL.js → audit-DJOyIBeV.js} +1 -1
  10. package/dist/{audit-DPnCY1UL.js → audit-DmYUk4AC.js} +1 -1
  11. package/dist/{auth-BbQxXxtt.js → auth-7Dkf1_CI.js} +5 -5
  12. package/dist/{auth-choice-DRyuJ7OL.js → auth-choice-D9LWnNpF.js} +1 -1
  13. package/dist/{auth-choice-D8Q1fQwa.js → auth-choice-DbTYwdGn.js} +1 -1
  14. package/dist/{auth-choice-prompt-Bs_OE3ai.js → auth-choice-prompt-D5YuCYf7.js} +1 -1
  15. package/dist/{auth-choice-prompt-EOHB6Adp.js → auth-choice-prompt-DFyVEU7J.js} +1 -1
  16. package/dist/build-info.json +3 -3
  17. package/dist/bundled/boot-md/handler.js +1 -1
  18. package/dist/bundled/session-memory/handler.js +1 -1
  19. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  20. package/dist/{channel-web-Do7PfpgZ.js → channel-web-CAJ_OiB2.js} +1 -1
  21. package/dist/{channel-web-BYwefJub.js → channel-web-X3OJcLB2.js} +1 -1
  22. package/dist/{channels-DrEj3b4G.js → channels-BqOjEy1R.js} +8 -8
  23. package/dist/{channels-Ca02RvCt.js → channels-D9Oj681h.js} +8 -8
  24. package/dist/{channels-cli-CCa-scQg.js → channels-cli-D5hZAzoE.js} +7 -7
  25. package/dist/{channels-cli-b6IPejdy.js → channels-cli-DKRuJbjY.js} +7 -7
  26. package/dist/cli/daemon-cli.js +1 -1
  27. package/dist/{cli-DXIWIIJj.js → cli-ClS8EuDK.js} +4 -4
  28. package/dist/{cli-eje5udQT.js → cli-Dm0682Gu.js} +4 -4
  29. package/dist/{command-registry-Bs12xiCA.js → command-registry-C2wqEo64.js} +10 -10
  30. package/dist/{completion-cli-Btcmy2ZS.js → completion-cli-B9mW_que.js} +2 -2
  31. package/dist/{completion-cli-RlpZaXwm.js → completion-cli-DCvm9Xp-.js} +1 -1
  32. package/dist/{config-cli-CTo8yFw1.js → config-cli-1SYvQdhO.js} +1 -1
  33. package/dist/{config-cli-D-FqgnuJ.js → config-cli-680jTQ3-.js} +1 -1
  34. package/dist/{configure-CLTc56jo.js → configure-BfhVLgNf.js} +14 -14
  35. package/dist/{configure-D0-Sq2kW.js → configure-DQLQp2nb.js} +14 -14
  36. package/dist/control-ui/assets/app-DXYMrRJ9.js.map +1 -1
  37. package/dist/{cron-cli-BstCBSyn.js → cron-cli-C4hgRvYJ.js} +2 -2
  38. package/dist/{cron-cli-pA06wiEq.js → cron-cli-DQjdHktC.js} +2 -2
  39. package/dist/{daemon-cli-cyqRsnTF.js → daemon-cli-B3OUkSy6.js} +1 -1
  40. package/dist/{daemon-cli-DiuXEPjO.js → daemon-cli-DWhAXx5H.js} +1 -1
  41. package/dist/daemon-cli.js +1 -1
  42. package/dist/{deps-BWo3ls9h.js → deps-DdP-Hmxc.js} +1 -1
  43. package/dist/{deps-BKAIBkcE.js → deps-RXAe1X5s.js} +1 -1
  44. package/dist/entry.js +1 -1
  45. package/dist/extensionAPI.js +1 -1
  46. package/dist/{gateway-cli-BbSS1Nxd.js → gateway-cli-CHukRtBG.js} +30 -30
  47. package/dist/{gateway-cli-izDCXWNN.js → gateway-cli-Y450jJFF.js} +30 -30
  48. package/dist/{health-kF4U3o3b.js → health-C-AsEUPg.js} +2 -2
  49. package/dist/{health-DW5NMpNI.js → health-Db548DTY.js} +2 -2
  50. package/dist/{heartbeat-runner-CJP5uO8S.js → heartbeat-runner-CE9O7xVk.js} +1 -1
  51. package/dist/{heartbeat-runner-BnDruNG2.js → heartbeat-runner-DAPP5ojq.js} +1 -1
  52. package/dist/{hooks-cli-CSFuSiA5.js → hooks-cli-ApL31lTH.js} +5 -5
  53. package/dist/{hooks-cli-U5qCBqJm.js → hooks-cli-DpllVSSB.js} +5 -5
  54. package/dist/index.js +9 -9
  55. package/dist/{ipv4-B42xQEbV.js → ipv4-Bh1H98-c.js} +2 -2
  56. package/dist/{ipv4-DSDJ9Fn2.js → ipv4-D88X6kcK.js} +2 -2
  57. package/dist/{lifecycle-BiNcSCVf.js → lifecycle-C5O_poBp.js} +1 -1
  58. package/dist/{lifecycle-Bbry4K-O.js → lifecycle-D2VlrxY8.js} +1 -1
  59. package/dist/{list.auth-overview-ByYcn7Ct.js → list.auth-overview-DQUc2B2l.js} +1 -1
  60. package/dist/{list.auth-overview-Di-jSuQF.js → list.auth-overview-N9tbnvNE.js} +1 -1
  61. package/dist/llm-slug-generator.js +1 -1
  62. package/dist/{model-catalog-ex4Cpln_.js → model-catalog-BQ5G4eK6.js} +10 -10
  63. package/dist/{models-BonzQ9Rv.js → models-BObC-MWx.js} +6 -6
  64. package/dist/{models-cli-Cc0fVKLR.js → models-cli-Bcjaf4CI.js} +6 -6
  65. package/dist/{models-cli-DZ05AYqI.js → models-cli-r2llwGBO.js} +7 -7
  66. package/dist/{node-cli-CKXvITsL.js → node-cli-B5TpzQ6U.js} +4 -4
  67. package/dist/{node-cli-Dfl7X414.js → node-cli-B8V8ar0H.js} +4 -4
  68. package/dist/{onboard-BDK2o_5B.js → onboard-C6Z7OaQ8.js} +7 -7
  69. package/dist/{onboard-CpJeEn67.js → onboard-D8EOxPOn.js} +7 -7
  70. package/dist/{onboard-channels-ZnUGKi2j.js → onboard-channels-C4gBvkYQ.js} +2 -2
  71. package/dist/{onboard-channels-CDXretWe.js → onboard-channels-CDr6F5Rc.js} +2 -2
  72. package/dist/{onboard-search-HgNX3hct.js → onboard-search-BDLus6nY.js} +7 -7
  73. package/dist/{onboard-search-BIltnW27.js → onboard-search-BzpbxIgm.js} +7 -7
  74. package/dist/{onboarding-CBlXOasA.js → onboarding-CIjqOjDq.js} +10 -10
  75. package/dist/{onboarding-Bgx1tJnU.js → onboarding-DjXH2-ro.js} +10 -10
  76. package/dist/{onboarding.wallet--7Yu2hFw.js → onboarding.wallet-B87UVKiT.js} +16 -10
  77. package/dist/{onboarding.wallet-CQG8MiG_.js → onboarding.wallet-BFJRJg77.js} +16 -10
  78. package/dist/{openresponses-http-BTpFUwym.js → openresponses-http-BA2nkk7t.js} +1 -1
  79. package/dist/{openresponses-http-COAxhJal.js → openresponses-http-C9x0SEG6.js} +4 -4
  80. package/dist/{openresponses-http-BBNbIRzc.js → openresponses-http-DU9S_V_8.js} +1 -1
  81. package/dist/{openresponses-http-o273A5SH.js → openresponses-http-NFMdHWOs.js} +4 -4
  82. package/dist/{openresponses-http-5S3xc2MZ.js → openresponses-http-eMouHu_v.js} +1 -1
  83. package/dist/{parent-default-help-DzWAx_GB.js → parent-default-help-k4GD2-UF.js} +1 -1
  84. package/dist/{parent-default-help-BwE33-U1.js → parent-default-help-zu6kW9Un.js} +1 -1
  85. package/dist/{pi-embedded-CeuBUTjd.js → pi-embedded-DPElH0OZ.js} +5 -5
  86. package/dist/{pi-embedded-Bnuo5tPq.js → pi-embedded-Pkm2p81t.js} +5 -5
  87. package/dist/{plugin-registry-DjTXh-9g.js → plugin-registry-DEewJtHt.js} +1 -1
  88. package/dist/{plugin-registry-D2IeEq2N.js → plugin-registry-DfO1RfZv.js} +1 -1
  89. package/dist/plugin-sdk/{audio-preflight-CdPkTmJX.js → audio-preflight-L8bE2tgB.js} +1 -1
  90. package/dist/plugin-sdk/{audio-preflight-CVWduuEO.js → audio-preflight-a_1hr0Eg.js} +1 -1
  91. package/dist/plugin-sdk/channel-plugin-common.js +1 -1
  92. package/dist/plugin-sdk/{channel-web-oM8gCehY.js → channel-web-BNlpZrWA.js} +1 -1
  93. package/dist/plugin-sdk/command-status.js +1 -1
  94. package/dist/plugin-sdk/index.js +2 -2
  95. package/dist/plugin-sdk/{openresponses-http-_SiZJaK2.js → openresponses-http-BBdkt744.js} +1 -1
  96. package/dist/plugin-sdk/{openresponses-http-C_9IfZXZ.js → openresponses-http-DuRGQn_a.js} +1 -1
  97. package/dist/plugin-sdk/{pi-model-discovery-runtime-BWcaNxzp.js → pi-model-discovery-runtime-FgSYY3zE.js} +1 -1
  98. package/dist/plugin-sdk/{registry-DXXOSq_V.js → registry-DyRgZdL8.js} +8 -8
  99. package/dist/plugin-sdk/{reply-e-9_IdAa.js → reply-DclM907b.js} +5 -5
  100. package/dist/plugin-sdk/src/brand.d.ts +2 -2
  101. package/dist/plugin-sdk/{status-D_fsW8e3.js → status-EnvYKAtO.js} +5 -5
  102. package/dist/plugin-sdk/{web-CaVSiRWI.js → web-BrtGwPHN.js} +2 -2
  103. package/dist/plugin-sdk/{web-BL2TuPTi.js → web-C0nKlODk.js} +1 -1
  104. package/dist/{plugins-cli-BMV70lmj.js → plugins-cli-BU7lm9mm.js} +7 -7
  105. package/dist/{plugins-cli-Bf0I1xYR.js → plugins-cli-Be4GLYdI.js} +7 -7
  106. package/dist/{program-CZzXG3p4.js → program-B78oSJVp.js} +9 -9
  107. package/dist/{program-context-CaLlkx1k.js → program-context-DpABaPXE.js} +25 -25
  108. package/dist/{prompt-select-styled-Cj_SHqRt.js → prompt-select-styled-DI5ODziX.js} +4 -4
  109. package/dist/{prompt-select-styled-DVwrrZSb.js → prompt-select-styled-DmcQ0_hv.js} +4 -4
  110. package/dist/{register.agent-C-bHdMXU.js → register.agent-DOychJ9q.js} +11 -11
  111. package/dist/{register.agent-D0ZpgSNd.js → register.agent-FC9A__Az.js} +10 -10
  112. package/dist/{register.configure-B51e7-qt.js → register.configure-i3gbc5Cc.js} +14 -14
  113. package/dist/{register.configure-B0PTAyow.js → register.configure-ybGicOMR.js} +14 -14
  114. package/dist/{register.maintenance-B3cXfhM1.js → register.maintenance-CYX_k6x1.js} +10 -10
  115. package/dist/{register.maintenance-BrmIl5VW.js → register.maintenance-MPPzwTam.js} +11 -11
  116. package/dist/{register.message-Dzs1vNKG.js → register.message-C_Q6o32_.js} +5 -5
  117. package/dist/{register.message-EKaGgJ9I.js → register.message-D6NFTigk.js} +5 -5
  118. package/dist/{register.onboard-DmFrOBs4.js → register.onboard-DqR_m0_p.js} +16 -16
  119. package/dist/{register.onboard-BFPT0Hh1.js → register.onboard-PbsAD-eY.js} +16 -16
  120. package/dist/{register.setup-B0beU4w3.js → register.setup-COidGsw2.js} +16 -16
  121. package/dist/{register.setup-5M8f6DaB.js → register.setup-DMqotP6N.js} +16 -16
  122. package/dist/{register.status-health-sessions-CEIpWahs.js → register.status-health-sessions-CPBz-3k7.js} +8 -8
  123. package/dist/{register.status-health-sessions-9GJwT82K.js → register.status-health-sessions-CeY5Pzgk.js} +8 -8
  124. package/dist/{register.subclis-C3yGp0vO.js → register.subclis-Dxe0Sco3.js} +16 -16
  125. package/dist/{reply-B034LmuD.js → reply-701mJB_S.js} +10 -10
  126. package/dist/{run-main-DYdI5qyZ.js → run-main-BvouUOJB.js} +16 -16
  127. package/dist/{runtime-helper-grants-9-0EfflU.js → runtime-helper-grants-B5q5llgE.js} +1 -1
  128. package/dist/{runtime-helper-grants-BB9I81Ny.js → runtime-helper-grants-CjDNw01t.js} +1 -1
  129. package/dist/{sandbox-cli-CAh9nzL6.js → sandbox-cli-DKUHq66f.js} +4 -4
  130. package/dist/{sandbox-cli-Bl9Lyv-l.js → sandbox-cli-MNviI01s.js} +4 -4
  131. package/dist/{security-cli-lQy0YwCb.js → security-cli-C4J7sHdd.js} +5 -5
  132. package/dist/{security-cli-Bt7g6fbK.js → security-cli-D2jFeCER.js} +5 -5
  133. package/dist/{server-CES-5PaV.js → server-BRsV4GHd.js} +4 -4
  134. package/dist/{server-BKrGeOGh.js → server-CvQUqV31.js} +4 -4
  135. package/dist/{server-cron-q6O09WWT.js → server-cron-BV2pPZ-O.js} +2 -2
  136. package/dist/{server-cron-D3WgivDk.js → server-cron-C-3djfm_.js} +2 -2
  137. package/dist/{server-node-events-DE5oWSSB.js → server-node-events-Bi8FQeYu.js} +5 -5
  138. package/dist/{server-node-events-Df_2uVcT.js → server-node-events-Ce-RXuis.js} +5 -5
  139. package/dist/{status-ne0p_x1W.js → status-BiHSisy7.js} +4 -4
  140. package/dist/{status-DrXKyHMz.js → status-CIb_4gfm.js} +4 -4
  141. package/dist/{status-CdI_oSZ4.js → status-D9As1GK-.js} +1 -1
  142. package/dist/{status-CqIzNbBd.js → status-DoLjTnlQ.js} +1 -1
  143. package/dist/{tui-CLXEsHbW.js → tui-BpbyDMEE.js} +1 -1
  144. package/dist/{tui-CF9NTWgo.js → tui-D9armVLc.js} +1 -1
  145. package/dist/{tui-cli-DIHJPDjw.js → tui-cli-A_j8l8a3.js} +5 -5
  146. package/dist/{tui-cli-Bo8T0iEO.js → tui-cli-lN5CL6pA.js} +5 -5
  147. package/dist/{update-cli-RA5GdCSl.js → update-cli-B8_evObo.js} +11 -11
  148. package/dist/{update-cli-pAvK-b3V.js → update-cli-DRefGXK8.js} +12 -12
  149. package/dist/{update-runner-kVl9uX8I.js → update-runner-Bd7n68kz.js} +1 -1
  150. package/dist/{update-runner-CUbpiOBD.js → update-runner-DnLLf66O.js} +1 -1
  151. package/dist/{wallet-C95r3fvu.js → wallet-CJdBRqTq.js} +1 -1
  152. package/dist/{wallet-BguV7zPF.js → wallet-DZA0r3pV.js} +1 -1
  153. package/dist/{web-CFtLg8L6.js → web-778GrijN.js} +1 -1
  154. package/dist/{web-R6Wrr8ru.js → web-CPKh7bSP.js} +1 -1
  155. package/dist/{web-D7NnzaWN.js → web-D-SMykKz.js} +1 -1
  156. package/dist/{web-CRHqblTb.js → web-DEuBtNld.js} +5 -5
  157. package/dist/{web-BSGV69pb.js → web-Z5JZl5Nc.js} +5 -5
  158. package/dist/{web-search-providers.runtime-BQw2Sxko.js → web-search-providers.runtime-AAOfSU2b.js} +1 -1
  159. package/dist/{web-search-providers.runtime-E9CDTKMh.js → web-search-providers.runtime-DcgcyEiV.js} +1 -1
  160. package/extensions/acpx/package.json +1 -1
  161. package/extensions/bluebubbles/package.json +1 -1
  162. package/extensions/copilot-proxy/package.json +1 -1
  163. package/extensions/diagnostics-otel/package.json +1 -1
  164. package/extensions/discord/package.json +1 -1
  165. package/extensions/fased-federation/package.json +1 -1
  166. package/extensions/feishu/package.json +1 -1
  167. package/extensions/google-gemini-cli-auth/package.json +1 -1
  168. package/extensions/googlechat/package.json +1 -1
  169. package/extensions/imessage/package.json +1 -1
  170. package/extensions/irc/package.json +1 -1
  171. package/extensions/line/package.json +1 -1
  172. package/extensions/llm-task/package.json +1 -1
  173. package/extensions/lobster/package.json +1 -1
  174. package/extensions/matrix/CHANGELOG.md +6 -0
  175. package/extensions/matrix/package.json +1 -1
  176. package/extensions/mattermost/package.json +1 -1
  177. package/extensions/memory-core/package.json +1 -1
  178. package/extensions/memory-lancedb/package.json +1 -1
  179. package/extensions/minimax-portal-auth/package.json +1 -1
  180. package/extensions/msteams/CHANGELOG.md +6 -0
  181. package/extensions/msteams/package.json +1 -1
  182. package/extensions/nextcloud-talk/package.json +1 -1
  183. package/extensions/nostr/CHANGELOG.md +6 -0
  184. package/extensions/nostr/package.json +1 -1
  185. package/extensions/open-prose/package.json +1 -1
  186. package/extensions/sat-mining/package.json +1 -1
  187. package/extensions/signal/package.json +1 -1
  188. package/extensions/slack/package.json +1 -1
  189. package/extensions/synology-chat/package.json +1 -1
  190. package/extensions/telegram/package.json +1 -1
  191. package/extensions/tlon/package.json +1 -1
  192. package/extensions/twitch/CHANGELOG.md +6 -0
  193. package/extensions/twitch/package.json +1 -1
  194. package/extensions/voice-call/CHANGELOG.md +6 -0
  195. package/extensions/voice-call/package.json +1 -1
  196. package/extensions/whatsapp/package.json +1 -1
  197. package/extensions/zalo/CHANGELOG.md +6 -0
  198. package/extensions/zalo/package.json +1 -1
  199. package/extensions/zalouser/CHANGELOG.md +6 -0
  200. package/extensions/zalouser/package.json +1 -1
  201. package/package.json +1 -1
  202. package/scripts/start-managed.sh +9 -4
@@ -1,6 +1,6 @@
1
1
  import { _ as normalizeE164, i as CONFIG_DIR, v as pathExists } from "./agent-paths-DmOVZE7g.js";
2
2
  import { $l as runCommandWithTimeout, B as listChatChannels, Bd as listDiscordAccountIds, Dd as listSlackAccountIds, F as createSubsystemLogger, Fd as resolveSignalAccount, Hd as resolveDefaultDiscordAccountId, Hu as resolveDefaultWhatsAppAccountId, Id as listIMessageAccountIds, L as formatChannelPrimerLine, Ld as resolveDefaultIMessageAccountId, Mu as getChannelPlugin, Nd as listSignalAccountIds, Nu as listChannelPlugins, Od as resolveDefaultSlackAccountId, Pd as resolveDefaultSignalAccountId, R as formatChannelSelectionLine, Rd as resolveIMessageAccount, Ud as resolveDiscordAccount, Vu as listWhatsAppAccountIds, Wu as resolveWhatsAppAuthDir, _d as resolveDefaultTelegramAccountId, d as resolveDefaultAgentId, dd as formatCliCommand, gd as listTelegramAccountIds, kd as resolveSlackAccount, ld as stripAnsi, mo as resolveFasedAgentPackageRootSync, ou as extractArchive, u as resolveAgentWorkspaceDir, vd as resolveTelegramAccount, wl as installPluginFromNpmSpec } from "./agent-scope-DHrLr5OF.js";
3
- import { Ft as resolveSlackUserAllowlist, It as resolveSlackChannelAllowlist, Nt as loadFasedAgentPlugins, la as createPluginLoaderLogger, mn as resolveDiscordChannelAllowlist, pn as resolveDiscordUserAllowlist, zt as detectBinary } from "./reply-B034LmuD.js";
3
+ import { Ft as resolveSlackUserAllowlist, It as resolveSlackChannelAllowlist, Nt as loadFasedAgentPlugins, la as createPluginLoaderLogger, mn as resolveDiscordChannelAllowlist, pn as resolveDiscordUserAllowlist, zt as detectBinary } from "./reply-701mJB_S.js";
4
4
  import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-LmCHAJTQ.js";
5
5
  import { dt as normalizeDiscordSlug } from "./send-jxmRy65D.js";
6
6
  import { i as isBlockedHostnameOrIp } from "./ssrf-Blf4NrHS.js";
@@ -12,7 +12,7 @@ import { t as resolveBrewExecutable } from "./brew-C52GeCeh.js";
12
12
  import { t as resolveChannelDefaultAccountId } from "./helpers-BvDnvwsE.js";
13
13
  import { t as enablePluginInConfig } from "./enable-D3_YPNIT.js";
14
14
  import { t as buildNpmResolutionInstallFields } from "./installs-DDbnXe4x.js";
15
- import { o as finalizeInstalledPluginConfig } from "./lifecycle-Bbry4K-O.js";
15
+ import { o as finalizeInstalledPluginConfig } from "./lifecycle-D2VlrxY8.js";
16
16
  import { t as fetchTelegramChatId } from "./api-DLdLLQm_.js";
17
17
  import fs, { createWriteStream, readFileSync } from "node:fs";
18
18
  import os from "node:os";
@@ -1,7 +1,7 @@
1
1
  import { $c as installPluginFromNpmSpec, $d as resolveDiscordAccount, $l as listWhatsAppAccountIds, Au as resolveTelegramAccount, Cu as formatCliCommand, Gd as resolveSignalAccount, Gl as listChannelPlugins, Gu as resolveDefaultAgentId, Jd as resolveIMessageAccount, Kd as listIMessageAccountIds, Ld as listSlackAccountIds, Ou as listTelegramAccountIds, Qd as resolveDefaultDiscordAccountId, Rd as resolveDefaultSlackAccountId, Ud as listSignalAccountIds, Wd as resolveDefaultSignalAccountId, Wl as getChannelPlugin, Wu as resolveAgentWorkspaceDir, Xd as listDiscordAccountIds, a as createSubsystemLogger, c as formatChannelSelectionLine, eu as resolveDefaultWhatsAppAccountId, ku as resolveDefaultTelegramAccountId, md as runCommandWithTimeout, nu as resolveWhatsAppAuthDir, pd as resolveFasedAgentPackageRootSync, qd as resolveDefaultIMessageAccountId, s as formatChannelPrimerLine, u as listChatChannels, xl as extractArchive, xu as stripAnsi, zd as resolveSlackAccount } from "./env-C77feXxI.js";
2
2
  import { _ as pathExists, g as normalizeE164, i as CONFIG_DIR } from "./agent-paths-BI1hx-tF.js";
3
3
  import { dt as normalizeDiscordSlug } from "./send-BFEd4vCM.js";
4
- import { Oi as createPluginLoaderLogger, Qt as resolveDiscordUserAllowlist, V as resolveDiscordChannelAllowlist, Zt as resolveSlackUserAllowlist, c as loadFasedAgentPlugins, p as detectBinary, u as resolveSlackChannelAllowlist } from "./model-catalog-ex4Cpln_.js";
4
+ import { Oi as createPluginLoaderLogger, Qt as resolveDiscordUserAllowlist, V as resolveDiscordChannelAllowlist, Zt as resolveSlackUserAllowlist, c as loadFasedAgentPlugins, p as detectBinary, u as resolveSlackChannelAllowlist } from "./model-catalog-BQ5G4eK6.js";
5
5
  import { J as DEFAULT_ACCOUNT_ID, Y as normalizeAccountId } from "./entry.js";
6
6
  import { i as isBlockedHostnameOrIp } from "./ssrf-CqV2hisj.js";
7
7
  import { d as listChannelPluginCatalogEntries, f as resolveChannelPluginExpectedPluginIds, l as formatChannelPluginCatalogSelectionHint, s as isChannelConfigured, u as formatChannelPluginCatalogStatusLine } from "./dangerous-name-matching-CFRKz8Uq.js";
@@ -12,7 +12,7 @@ import { t as loginWeb } from "./login-CuawnITW.js";
12
12
  import { t as resolveChannelDefaultAccountId } from "./helpers-BfdkoReO.js";
13
13
  import { t as enablePluginInConfig } from "./enable-C4xB2A3x.js";
14
14
  import { t as buildNpmResolutionInstallFields } from "./installs-Cha8QIzO.js";
15
- import { o as finalizeInstalledPluginConfig } from "./lifecycle-BiNcSCVf.js";
15
+ import { o as finalizeInstalledPluginConfig } from "./lifecycle-C5O_poBp.js";
16
16
  import { t as fetchTelegramChatId } from "./api-uvDKewCP.js";
17
17
  import { spawn } from "node:child_process";
18
18
  import os from "node:os";
@@ -2,7 +2,7 @@ import { $c as installPluginFromNpmSpec, Wa as coerceSecretRef, pd as resolveFas
2
2
  import { i as CONFIG_DIR, p as isRecord, x as resolveUserPath } from "./agent-paths-BI1hx-tF.js";
3
3
  import "./send-D7X0_iFp.js";
4
4
  import "./send-BFEd4vCM.js";
5
- import "./model-catalog-ex4Cpln_.js";
5
+ import "./model-catalog-BQ5G4eK6.js";
6
6
  import "./github-copilot-token-A9DiaCB0.js";
7
7
  import "./reply-prefix-TUhpEtvr.js";
8
8
  import "./memory-2keYbXkc.js";
@@ -30,10 +30,10 @@ import "./dangerous-tools-CusV9bcr.js";
30
30
  import "./chrome-bxkNKPA7.js";
31
31
  import "./pairing-token-C2iKEhFc.js";
32
32
  import "./ws-DiFJ3zRB.js";
33
- import "./onboarding.wallet--7Yu2hFw.js";
33
+ import "./onboarding.wallet-B87UVKiT.js";
34
34
  import "./wallet-runtime-config-TjiNNY9x.js";
35
35
  import "./wallet-provider-registry-CFNtQ2ZR.js";
36
- import "./wallet-C95r3fvu.js";
36
+ import "./wallet-CJdBRqTq.js";
37
37
  import "./wallet-approval-auth-BaVTLG5r.js";
38
38
  import "./runtime-DXHXAPJA.js";
39
39
  import "./device-identity-ZHUQ6a8N.js";
@@ -44,7 +44,7 @@ import "./send-C-su1wPZ.js";
44
44
  import "./outbound-attachment-Bh4FmcYg.js";
45
45
  import "./fetch-BVvWzHT_.js";
46
46
  import "./delivery-queue-55Cityuq.js";
47
- import "./deps-BWo3ls9h.js";
47
+ import "./deps-DdP-Hmxc.js";
48
48
  import "./frontmatter-D2UNJikU.js";
49
49
  import "./skills-Dis31awJ.js";
50
50
  import "./skills-remote-CIAB0AXm.js";
@@ -75,10 +75,10 @@ import "./prompt-style-Rmj3c-Ir.js";
75
75
  import "./pairing-labels-BCM1S2e_.js";
76
76
  import { t as enablePluginInConfig } from "./enable-C4xB2A3x.js";
77
77
  import { t as buildNpmResolutionInstallFields } from "./installs-Cha8QIzO.js";
78
- import "./status-CqIzNbBd.js";
78
+ import "./status-DoLjTnlQ.js";
79
79
  import "./update-D4rhRm3D.js";
80
- import { o as finalizeInstalledPluginConfig } from "./lifecycle-BiNcSCVf.js";
81
- import { t as resolvePluginWebSearchProviders } from "./web-search-providers.runtime-BQw2Sxko.js";
80
+ import { o as finalizeInstalledPluginConfig } from "./lifecycle-C5O_poBp.js";
81
+ import { t as resolvePluginWebSearchProviders } from "./web-search-providers.runtime-AAOfSU2b.js";
82
82
  import path from "node:path";
83
83
  import fs from "node:fs";
84
84
 
@@ -2,7 +2,7 @@ import "./paths-C9FmTW1x.js";
2
2
  import { S as resolveUserPath, i as CONFIG_DIR, m as isRecord } from "./agent-paths-DmOVZE7g.js";
3
3
  import { Co as coerceSecretRef, mo as resolveFasedAgentPackageRootSync, wl as installPluginFromNpmSpec } from "./agent-scope-DHrLr5OF.js";
4
4
  import "./commands-registry-BRvZQ1jh.js";
5
- import "./reply-B034LmuD.js";
5
+ import "./reply-701mJB_S.js";
6
6
  import "./errors-Dx3S3Nrp.js";
7
7
  import "./send-C5_fB8YQ.js";
8
8
  import "./send-jxmRy65D.js";
@@ -14,10 +14,10 @@ import "./chrome-mXtDMFyZ.js";
14
14
  import "./pairing-token-BFGorDQo.js";
15
15
  import "./ip-D_T5zbZS.js";
16
16
  import "./ws-cvQhrVP3.js";
17
- import "./onboarding.wallet-CQG8MiG_.js";
17
+ import "./onboarding.wallet-BFJRJg77.js";
18
18
  import "./wallet-runtime-config-BlRWvEER.js";
19
19
  import "./wallet-provider-registry-ax0NJo0F.js";
20
- import "./wallet-BguV7zPF.js";
20
+ import "./wallet-DZA0r3pV.js";
21
21
  import "./wallet-approval-auth-DT-vofLs.js";
22
22
  import "./reply-prefix-C2EEc3pc.js";
23
23
  import "./media-C5BIKO-v.js";
@@ -37,7 +37,7 @@ import "./ssrf-Blf4NrHS.js";
37
37
  import "./outbound-attachment-CsXJwFsg.js";
38
38
  import "./fetch-CnCPOuq7.js";
39
39
  import "./delivery-queue-DKRjVFlq.js";
40
- import "./deps-BKAIBkcE.js";
40
+ import "./deps-RXAe1X5s.js";
41
41
  import "./memory-DDpj0IVA.js";
42
42
  import "./memory-search-BwYkW6_V.js";
43
43
  import "./manager-BmONwMiP.js";
@@ -78,10 +78,10 @@ import "./prompt-style-CWAacuMq.js";
78
78
  import "./pairing-labels-D2yOKhoV.js";
79
79
  import { t as enablePluginInConfig } from "./enable-D3_YPNIT.js";
80
80
  import { t as buildNpmResolutionInstallFields } from "./installs-DDbnXe4x.js";
81
- import "./status-CdI_oSZ4.js";
81
+ import "./status-D9As1GK-.js";
82
82
  import "./update-Dew6hqdf.js";
83
- import { o as finalizeInstalledPluginConfig } from "./lifecycle-Bbry4K-O.js";
84
- import { t as resolvePluginWebSearchProviders } from "./web-search-providers.runtime-E9CDTKMh.js";
83
+ import { o as finalizeInstalledPluginConfig } from "./lifecycle-D2VlrxY8.js";
84
+ import { t as resolvePluginWebSearchProviders } from "./web-search-providers.runtime-DcgcyEiV.js";
85
85
  import fs from "node:fs";
86
86
  import path from "node:path";
87
87
 
@@ -1,13 +1,13 @@
1
1
  import { _ as resolveStateDir, u as resolveGatewayPort } from "./paths-C9FmTW1x.js";
2
2
  import { S as resolveUserPath, U as theme } from "./agent-paths-DmOVZE7g.js";
3
3
  import { Ga as ensureAuthProfileStore, Mn as writeConfigFile, Zr as collectConfigServiceEnvVars, d as resolveDefaultAgentId, dd as formatCliCommand, fr as ensureActiveMemoryPluginAllowlisted, kn as readConfigFileSnapshot, u as resolveAgentWorkspaceDir } from "./agent-scope-DHrLr5OF.js";
4
- import { Bt as detectBrowserOpenSupport, Ht as formatControlUiSshHint, Jt as openUrl, Lt as DEFAULT_WORKSPACE, Mo as runFederationAutoConnectOnce, Qo as findTailscaleBinary, Qt as resolveControlUiLinks, Rt as applyWizardMetadata, Vt as ensureWorkspaceAndSessions, Wt as handleOnboardingRepair, Xo as enableTailscaleFunnel, Xt as probeGatewayReachable, Yt as printWizardHeader, Zo as enableTailscaleServe, Zt as randomToken, en as summarizeExistingConfig, nn as waitForGatewayReachable, qt as normalizeGatewayTokenInput, tn as validateGatewayPasswordInput, xo as normalizeControlUiBasePath, yo as CONTROL_UI_BOOT_CHECK_PATH } from "./reply-B034LmuD.js";
4
+ import { Bt as detectBrowserOpenSupport, Ht as formatControlUiSshHint, Jt as openUrl, Lt as DEFAULT_WORKSPACE, Mo as runFederationAutoConnectOnce, Qo as findTailscaleBinary, Qt as resolveControlUiLinks, Rt as applyWizardMetadata, Vt as ensureWorkspaceAndSessions, Wt as handleOnboardingRepair, Xo as enableTailscaleFunnel, Xt as probeGatewayReachable, Yt as printWizardHeader, Zo as enableTailscaleServe, Zt as randomToken, en as summarizeExistingConfig, nn as waitForGatewayReachable, qt as normalizeGatewayTokenInput, tn as validateGatewayPasswordInput, xo as normalizeControlUiBasePath, yo as CONTROL_UI_BOOT_CHECK_PATH } from "./reply-701mJB_S.js";
5
5
  import { d as defaultRuntime, f as restoreTerminalState, s as redactSensitiveText } from "./errors-Dx3S3Nrp.js";
6
- import { a as resolveSignerdBinaryPath, n as installSignerdBinary, o as restartLocalSocketSigner, r as migrateLocalSignerKeystoreToMaterialDir, t as configureWalletForOnboarding } from "./onboarding.wallet-CQG8MiG_.js";
6
+ import { a as resolveSignerdBinaryPath, n as installSignerdBinary, o as restartLocalSocketSigner, r as migrateLocalSignerKeystoreToMaterialDir, t as configureWalletForOnboarding } from "./onboarding.wallet-BFJRJg77.js";
7
7
  import { i as resolveLocalSignerRunAsUser, n as resolveLocalSignerBackendSocketPath, o as resolveLocalSignerSocketPath, r as resolveLocalSignerMaterialRootDir, t as ensureWalletStateDir } from "./wallet-runtime-config-BlRWvEER.js";
8
8
  import { a as readWalletProviderRegistry, l as setDefaultWallet, n as checkNamedWalletDeletionSafety, p as upsertNamedWallet, r as deleteNamedWallet, s as resolveWalletUserRole, u as setNamedWalletRole } from "./wallet-provider-registry-ax0NJo0F.js";
9
9
  import { n as redactSensitiveUrlLikeString } from "./redact-sensitive-url-B0RJQqO7.js";
10
- import { C as walletSetupCommand, k as readWalletStatusSnapshot, t as collectWalletSignerDoctorReport } from "./wallet-BguV7zPF.js";
10
+ import { C as walletSetupCommand, k as readWalletStatusSnapshot, t as collectWalletSignerDoctorReport } from "./wallet-DZA0r3pV.js";
11
11
  import { c as loadPersistedFederationToken, i as resolveFederationBaseUrl, o as resolveFederationHandle, t as DEFAULT_FEDERATION_BASE_URL } from "./runtime-bsvPuEXH.js";
12
12
  import { t as readManagedFederationTokenSummary } from "./federation-BrNm7xtG.js";
13
13
  import { or as clearDeviceAuthStore } from "./call-DDALpDwS.js";
@@ -17,14 +17,14 @@ import { a as resolveHostedOnboardingGatewayStartupMode, i as resolveGatewayStar
17
17
  import { d as buildSystemdUnit, r as isSystemdUserServiceAvailable } from "./systemd-CmxDYXvt.js";
18
18
  import { t as resolveGatewayService } from "./service-Bsg622jp.js";
19
19
  import { n as auditGatewayServiceConfig, t as SERVICE_AUDIT_CODES } from "./service-audit-BRLbvcxT.js";
20
- import { a as promptRemoteGatewayConfig, n as getTailscaleMissingBinNoteLines, r as setupSkills, t as validateIPv4AddressInput, u as promptCustomApiConfig } from "./ipv4-B42xQEbV.js";
21
- import { o as waitForHostedDashboardBrowserPath } from "./health-kF4U3o3b.js";
22
- import { n as warnIfModelConfigLooksOff, r as applyAuthChoice } from "./auth-choice-DRyuJ7OL.js";
23
- import { t as promptAuthChoiceGrouped } from "./auth-choice-prompt-EOHB6Adp.js";
20
+ import { a as promptRemoteGatewayConfig, n as getTailscaleMissingBinNoteLines, r as setupSkills, t as validateIPv4AddressInput, u as promptCustomApiConfig } from "./ipv4-Bh1H98-c.js";
21
+ import { o as waitForHostedDashboardBrowserPath } from "./health-C-AsEUPg.js";
22
+ import { n as warnIfModelConfigLooksOff, r as applyAuthChoice } from "./auth-choice-D9LWnNpF.js";
23
+ import { t as promptAuthChoiceGrouped } from "./auth-choice-prompt-DFyVEU7J.js";
24
24
  import { n as logConfigUpdated } from "./logging-Dv2wthF_.js";
25
- import { n as setupChannels } from "./onboard-channels-ZnUGKi2j.js";
25
+ import { n as setupChannels } from "./onboard-channels-C4gBvkYQ.js";
26
26
  import { t as buildWorkspaceHookStatus } from "./hooks-status-BielXMUB.js";
27
- import { t as runTui } from "./tui-CF9NTWgo.js";
27
+ import { t as runTui } from "./tui-D9armVLc.js";
28
28
  import fs from "node:fs";
29
29
  import os from "node:os";
30
30
  import path from "node:path";
@@ -1664,7 +1664,7 @@ async function finalizeOnboardingWizard(options) {
1664
1664
  if (process.platform === "linux") {
1665
1665
  const localSignerSync = resolveLocalSignerSyncForFinalize({ strictVps });
1666
1666
  if (localSignerSync.sync) try {
1667
- const { syncLocalSocketSignerFromConfig } = await import("./onboarding.wallet-CQG8MiG_.js").then((n) => n.i);
1667
+ const { syncLocalSocketSignerFromConfig } = await import("./onboarding.wallet-BFJRJg77.js").then((n) => n.i);
1668
1668
  await syncLocalSocketSignerFromConfig({
1669
1669
  config: nextConfig,
1670
1670
  env: process.env,
@@ -1,12 +1,12 @@
1
1
  import { Cu as formatCliCommand, Fn as ensureActiveMemoryPluginAllowlisted, Gu as resolveDefaultAgentId, Qt as readConfigFileSnapshot, Wu as resolveAgentWorkspaceDir, br as collectConfigServiceEnvVars, ma as ensureAuthProfileStore, tn as writeConfigFile } from "./env-C77feXxI.js";
2
2
  import { H as theme, x as resolveUserPath } from "./agent-paths-BI1hx-tF.js";
3
- import { A as waitForGatewayReachable, C as printWizardHeader, E as resolveControlUiLinks, Ha as CONTROL_UI_BOOT_CHECK_PATH, O as summarizeExistingConfig, S as openUrl, T as randomToken, Wa as normalizeControlUiBasePath, bo as enableTailscaleServe, d as DEFAULT_WORKSPACE, f as applyWizardMetadata, g as formatControlUiSshHint, h as ensureWorkspaceAndSessions, k as validateGatewayPasswordInput, m as detectBrowserOpenSupport, to as runFederationAutoConnectOnce, v as handleOnboardingRepair, w as probeGatewayReachable, x as normalizeGatewayTokenInput, xo as findTailscaleBinary, yo as enableTailscaleFunnel } from "./model-catalog-ex4Cpln_.js";
3
+ import { A as waitForGatewayReachable, C as printWizardHeader, E as resolveControlUiLinks, Ha as CONTROL_UI_BOOT_CHECK_PATH, O as summarizeExistingConfig, S as openUrl, T as randomToken, Wa as normalizeControlUiBasePath, bo as enableTailscaleServe, d as DEFAULT_WORKSPACE, f as applyWizardMetadata, g as formatControlUiSshHint, h as ensureWorkspaceAndSessions, k as validateGatewayPasswordInput, m as detectBrowserOpenSupport, to as runFederationAutoConnectOnce, v as handleOnboardingRepair, w as probeGatewayReachable, x as normalizeGatewayTokenInput, xo as findTailscaleBinary, yo as enableTailscaleFunnel } from "./model-catalog-BQ5G4eK6.js";
4
4
  import { A as defaultRuntime, Ct as resolveStateDir, E as redactSensitiveText, gt as resolveGatewayPort, j as restoreTerminalState } from "./entry.js";
5
5
  import { n as redactSensitiveUrlLikeString } from "./redact-sensitive-url-BW03TVj8.js";
6
- import { a as resolveSignerdBinaryPath, n as installSignerdBinary, o as restartLocalSocketSigner, r as migrateLocalSignerKeystoreToMaterialDir, t as configureWalletForOnboarding } from "./onboarding.wallet--7Yu2hFw.js";
6
+ import { a as resolveSignerdBinaryPath, n as installSignerdBinary, o as restartLocalSocketSigner, r as migrateLocalSignerKeystoreToMaterialDir, t as configureWalletForOnboarding } from "./onboarding.wallet-B87UVKiT.js";
7
7
  import { i as resolveLocalSignerRunAsUser, n as resolveLocalSignerBackendSocketPath, o as resolveLocalSignerSocketPath, r as resolveLocalSignerMaterialRootDir, t as ensureWalletStateDir } from "./wallet-runtime-config-TjiNNY9x.js";
8
8
  import { a as readWalletProviderRegistry, l as setDefaultWallet, n as checkNamedWalletDeletionSafety, p as upsertNamedWallet, r as deleteNamedWallet, s as resolveWalletUserRole, u as setNamedWalletRole } from "./wallet-provider-registry-CFNtQ2ZR.js";
9
- import { C as walletSetupCommand, k as readWalletStatusSnapshot, t as collectWalletSignerDoctorReport } from "./wallet-C95r3fvu.js";
9
+ import { C as walletSetupCommand, k as readWalletStatusSnapshot, t as collectWalletSignerDoctorReport } from "./wallet-CJdBRqTq.js";
10
10
  import { c as loadPersistedFederationToken, i as resolveFederationBaseUrl, o as resolveFederationHandle, t as DEFAULT_FEDERATION_BASE_URL } from "./runtime-DXHXAPJA.js";
11
11
  import { t as readManagedFederationTokenSummary } from "./federation-8sW60I4p.js";
12
12
  import { or as clearDeviceAuthStore } from "./call-B9EvxMq6.js";
@@ -16,14 +16,14 @@ import { a as resolveHostedOnboardingGatewayStartupMode, i as resolveGatewayStar
16
16
  import { d as buildSystemdUnit, r as isSystemdUserServiceAvailable } from "./systemd-B8OPQXFR.js";
17
17
  import { t as resolveGatewayService } from "./service-2JBjv-ge.js";
18
18
  import { n as auditGatewayServiceConfig, t as SERVICE_AUDIT_CODES } from "./service-audit-COK5O0cM.js";
19
- import { a as promptRemoteGatewayConfig, n as getTailscaleMissingBinNoteLines, r as setupSkills, t as validateIPv4AddressInput, u as promptCustomApiConfig } from "./ipv4-DSDJ9Fn2.js";
20
- import { s as waitForHostedDashboardBrowserPath } from "./health-DW5NMpNI.js";
21
- import { n as warnIfModelConfigLooksOff, r as applyAuthChoice } from "./auth-choice-D8Q1fQwa.js";
22
- import { t as promptAuthChoiceGrouped } from "./auth-choice-prompt-Bs_OE3ai.js";
19
+ import { a as promptRemoteGatewayConfig, n as getTailscaleMissingBinNoteLines, r as setupSkills, t as validateIPv4AddressInput, u as promptCustomApiConfig } from "./ipv4-D88X6kcK.js";
20
+ import { s as waitForHostedDashboardBrowserPath } from "./health-Db548DTY.js";
21
+ import { n as warnIfModelConfigLooksOff, r as applyAuthChoice } from "./auth-choice-DbTYwdGn.js";
22
+ import { t as promptAuthChoiceGrouped } from "./auth-choice-prompt-D5YuCYf7.js";
23
23
  import { n as logConfigUpdated } from "./logging-DZ32I_SP.js";
24
- import { n as setupChannels } from "./onboard-channels-CDXretWe.js";
24
+ import { n as setupChannels } from "./onboard-channels-CDr6F5Rc.js";
25
25
  import { t as buildWorkspaceHookStatus } from "./hooks-status-DRZciWMZ.js";
26
- import { t as runTui } from "./tui-CLXEsHbW.js";
26
+ import { t as runTui } from "./tui-BpbyDMEE.js";
27
27
  import { spawn, spawnSync } from "node:child_process";
28
28
  import os from "node:os";
29
29
  import path from "node:path";
@@ -1663,7 +1663,7 @@ async function finalizeOnboardingWizard(options) {
1663
1663
  if (process.platform === "linux") {
1664
1664
  const localSignerSync = resolveLocalSignerSyncForFinalize({ strictVps });
1665
1665
  if (localSignerSync.sync) try {
1666
- const { syncLocalSocketSignerFromConfig } = await import("./onboarding.wallet--7Yu2hFw.js").then((n) => n.i);
1666
+ const { syncLocalSocketSignerFromConfig } = await import("./onboarding.wallet-B87UVKiT.js").then((n) => n.i);
1667
1667
  await syncLocalSocketSignerFromConfig({
1668
1668
  config: nextConfig,
1669
1669
  env: process.env,
@@ -3237,6 +3237,7 @@ const INSTALL_SCRIPT_RELPATHS = ["scripts/install-fased-signerd.sh", "../scripts
3237
3237
  const BUILD_SCRIPT_RELPATHS = ["scripts/build-fased-signerd.sh", "../scripts/build-fased-signerd.sh"];
3238
3238
  const BROKER_CLI_RELPATHS = ["./index.js", "../../dist/index.js"];
3239
3239
  const DEFAULT_SIGNER_RELEASE_DOWNLOAD_BASE = "https://github.com/fased-ai/fased/releases/download";
3240
+ const SIGNER_MAINTENANCE_HELPER = "/usr/local/sbin/fased-signer-maintenance";
3240
3241
  const SIGNER_ISOLATION_HELPER = "/usr/local/sbin/fased-signer-isolation";
3241
3242
  function runCommand(params) {
3242
3243
  const child = spawnSync(params.command, params.args, {
@@ -3768,17 +3769,15 @@ function resolveCurrentUnixUser() {
3768
3769
  }
3769
3770
  }
3770
3771
  function runSignerIsolationHelper(runAsUser, args, opts) {
3771
- if (!fs.existsSync(SIGNER_ISOLATION_HELPER)) return;
3772
+ const helperArgs = signerMaintenanceHelperArgs(runAsUser, args);
3773
+ if (!helperArgs) return;
3772
3774
  try {
3773
3775
  return runCommand({
3774
3776
  command: "sudo",
3775
3777
  args: [
3776
3778
  "-n",
3777
3779
  "-E",
3778
- SIGNER_ISOLATION_HELPER,
3779
- resolveCurrentUnixUser(),
3780
- runAsUser,
3781
- ...args
3780
+ ...helperArgs
3782
3781
  ],
3783
3782
  capture: opts?.capture
3784
3783
  });
@@ -3788,15 +3787,13 @@ function runSignerIsolationHelper(runAsUser, args, opts) {
3788
3787
  }
3789
3788
  }
3790
3789
  function startSignerIsolationHelperBackground(runAsUser, args, logPath, env = process.env) {
3791
- if (!fs.existsSync(SIGNER_ISOLATION_HELPER)) return false;
3790
+ const helperArgs = signerMaintenanceHelperArgs(runAsUser, args);
3791
+ if (!helperArgs) return false;
3792
3792
  const out = fs.openSync(logPath, "a", 384);
3793
3793
  spawn("sudo", [
3794
3794
  "-n",
3795
3795
  "-E",
3796
- SIGNER_ISOLATION_HELPER,
3797
- resolveCurrentUnixUser(),
3798
- runAsUser,
3799
- ...args
3796
+ ...helperArgs
3800
3797
  ], {
3801
3798
  detached: true,
3802
3799
  stdio: [
@@ -3811,6 +3808,15 @@ function startSignerIsolationHelperBackground(runAsUser, args, logPath, env = pr
3811
3808
  }).unref();
3812
3809
  return true;
3813
3810
  }
3811
+ function signerMaintenanceHelperArgs(runAsUser, args) {
3812
+ if (fs.existsSync(SIGNER_MAINTENANCE_HELPER)) return [SIGNER_MAINTENANCE_HELPER, ...args];
3813
+ if (fs.existsSync(SIGNER_ISOLATION_HELPER)) return [
3814
+ SIGNER_ISOLATION_HELPER,
3815
+ resolveCurrentUnixUser(),
3816
+ runAsUser,
3817
+ ...args
3818
+ ];
3819
+ }
3814
3820
  function ensureIsolatedSignerPaths(materialDir, backendSocketPath, appSocketPath, runAsUser) {
3815
3821
  if (runSignerIsolationHelper(runAsUser, [
3816
3822
  "prepare",
@@ -3238,6 +3238,7 @@ const INSTALL_SCRIPT_RELPATHS = ["scripts/install-fased-signerd.sh", "../scripts
3238
3238
  const BUILD_SCRIPT_RELPATHS = ["scripts/build-fased-signerd.sh", "../scripts/build-fased-signerd.sh"];
3239
3239
  const BROKER_CLI_RELPATHS = ["./index.js", "../../dist/index.js"];
3240
3240
  const DEFAULT_SIGNER_RELEASE_DOWNLOAD_BASE = "https://github.com/fased-ai/fased/releases/download";
3241
+ const SIGNER_MAINTENANCE_HELPER = "/usr/local/sbin/fased-signer-maintenance";
3241
3242
  const SIGNER_ISOLATION_HELPER = "/usr/local/sbin/fased-signer-isolation";
3242
3243
  function runCommand(params) {
3243
3244
  const child = spawnSync(params.command, params.args, {
@@ -3769,17 +3770,15 @@ function resolveCurrentUnixUser() {
3769
3770
  }
3770
3771
  }
3771
3772
  function runSignerIsolationHelper(runAsUser, args, opts) {
3772
- if (!fs.existsSync(SIGNER_ISOLATION_HELPER)) return;
3773
+ const helperArgs = signerMaintenanceHelperArgs(runAsUser, args);
3774
+ if (!helperArgs) return;
3773
3775
  try {
3774
3776
  return runCommand({
3775
3777
  command: "sudo",
3776
3778
  args: [
3777
3779
  "-n",
3778
3780
  "-E",
3779
- SIGNER_ISOLATION_HELPER,
3780
- resolveCurrentUnixUser(),
3781
- runAsUser,
3782
- ...args
3781
+ ...helperArgs
3783
3782
  ],
3784
3783
  capture: opts?.capture
3785
3784
  });
@@ -3789,15 +3788,13 @@ function runSignerIsolationHelper(runAsUser, args, opts) {
3789
3788
  }
3790
3789
  }
3791
3790
  function startSignerIsolationHelperBackground(runAsUser, args, logPath, env = process.env) {
3792
- if (!fs.existsSync(SIGNER_ISOLATION_HELPER)) return false;
3791
+ const helperArgs = signerMaintenanceHelperArgs(runAsUser, args);
3792
+ if (!helperArgs) return false;
3793
3793
  const out = fs.openSync(logPath, "a", 384);
3794
3794
  spawn("sudo", [
3795
3795
  "-n",
3796
3796
  "-E",
3797
- SIGNER_ISOLATION_HELPER,
3798
- resolveCurrentUnixUser(),
3799
- runAsUser,
3800
- ...args
3797
+ ...helperArgs
3801
3798
  ], {
3802
3799
  detached: true,
3803
3800
  stdio: [
@@ -3812,6 +3809,15 @@ function startSignerIsolationHelperBackground(runAsUser, args, logPath, env = pr
3812
3809
  }).unref();
3813
3810
  return true;
3814
3811
  }
3812
+ function signerMaintenanceHelperArgs(runAsUser, args) {
3813
+ if (fs.existsSync(SIGNER_MAINTENANCE_HELPER)) return [SIGNER_MAINTENANCE_HELPER, ...args];
3814
+ if (fs.existsSync(SIGNER_ISOLATION_HELPER)) return [
3815
+ SIGNER_ISOLATION_HELPER,
3816
+ resolveCurrentUnixUser(),
3817
+ runAsUser,
3818
+ ...args
3819
+ ];
3820
+ }
3815
3821
  function ensureIsolatedSignerPaths(materialDir, backendSocketPath, appSocketPath, runAsUser) {
3816
3822
  if (runSignerIsolationHelper(runAsUser, [
3817
3823
  "prepare",
@@ -1,6 +1,6 @@
1
1
  import "./github-copilot-token-Dy7Y_jbI.js";
2
2
  import { la as logWarn, qo as defaultRuntime } from "./paths-OUJyk-5R.js";
3
- import { B as extractImageContentFromSource, F as DEFAULT_INPUT_IMAGE_MAX_BYTES, H as resolveInputFileLimits, I as DEFAULT_INPUT_IMAGE_MIMES, L as DEFAULT_INPUT_MAX_REDIRECTS, R as DEFAULT_INPUT_TIMEOUT_MS, V as normalizeMimeList, X as emitAgentEvent, Z as onAgentEvent, a as agentCommand, at as sendJson, i as resolveAssistantStreamDeltaText, it as resolveSessionKey, n as handleGatewayPostJsonEndpoint, nt as createDefaultDeps, ot as setSseHeaders, r as buildAgentMessageFromConversationEntries, rt as resolveAgentIdForRequest, st as writeDone, z as extractFileContentFromSource } from "./auth-BbQxXxtt.js";
3
+ import { B as extractImageContentFromSource, F as DEFAULT_INPUT_IMAGE_MAX_BYTES, H as resolveInputFileLimits, I as DEFAULT_INPUT_IMAGE_MIMES, L as DEFAULT_INPUT_MAX_REDIRECTS, R as DEFAULT_INPUT_TIMEOUT_MS, V as normalizeMimeList, X as emitAgentEvent, Z as onAgentEvent, a as agentCommand, at as sendJson, i as resolveAssistantStreamDeltaText, it as resolveSessionKey, n as handleGatewayPostJsonEndpoint, nt as createDefaultDeps, ot as setSseHeaders, r as buildAgentMessageFromConversationEntries, rt as resolveAgentIdForRequest, st as writeDone, z as extractFileContentFromSource } from "./auth-7Dkf1_CI.js";
4
4
  import "./send-D96gGRQz.js";
5
5
  import "./send-BFoI9HuU.js";
6
6
  import "./skill-commands-DvoCSQnx.js";
@@ -2,7 +2,7 @@ import { bd as logWarn } from "./env-C77feXxI.js";
2
2
  import "./agent-paths-BI1hx-tF.js";
3
3
  import "./send-D7X0_iFp.js";
4
4
  import "./send-BFEd4vCM.js";
5
- import { Ai as buildAgentMessageFromConversationEntries, Ii as resolveAssistantStreamDeltaText, Li as agentCommand, _a as resolveAgentIdForRequest, an as DEFAULT_INPUT_IMAGE_MAX_BYTES, ba as setSseHeaders, cn as DEFAULT_INPUT_TIMEOUT_MS, dn as normalizeMimeList, fn as resolveInputFileLimits, ia as emitAgentEvent, ki as handleGatewayPostJsonEndpoint, ln as extractFileContentFromSource, oa as onAgentEvent, on as DEFAULT_INPUT_IMAGE_MIMES, sn as DEFAULT_INPUT_MAX_REDIRECTS, un as extractImageContentFromSource, va as resolveSessionKey, xa as writeDone, ya as sendJson } from "./model-catalog-ex4Cpln_.js";
5
+ import { Ai as buildAgentMessageFromConversationEntries, Ii as resolveAssistantStreamDeltaText, Li as agentCommand, _a as resolveAgentIdForRequest, an as DEFAULT_INPUT_IMAGE_MAX_BYTES, ba as setSseHeaders, cn as DEFAULT_INPUT_TIMEOUT_MS, dn as normalizeMimeList, fn as resolveInputFileLimits, ia as emitAgentEvent, ki as handleGatewayPostJsonEndpoint, ln as extractFileContentFromSource, oa as onAgentEvent, on as DEFAULT_INPUT_IMAGE_MIMES, sn as DEFAULT_INPUT_MAX_REDIRECTS, un as extractImageContentFromSource, va as resolveSessionKey, xa as writeDone, ya as sendJson } from "./model-catalog-BQ5G4eK6.js";
6
6
  import "./github-copilot-token-A9DiaCB0.js";
7
7
  import { A as defaultRuntime } from "./entry.js";
8
8
  import "./reply-prefix-TUhpEtvr.js";
@@ -31,10 +31,10 @@ import "./dangerous-tools-CusV9bcr.js";
31
31
  import "./chrome-bxkNKPA7.js";
32
32
  import "./pairing-token-C2iKEhFc.js";
33
33
  import "./ws-DiFJ3zRB.js";
34
- import "./onboarding.wallet--7Yu2hFw.js";
34
+ import "./onboarding.wallet-B87UVKiT.js";
35
35
  import "./wallet-runtime-config-TjiNNY9x.js";
36
36
  import "./wallet-provider-registry-CFNtQ2ZR.js";
37
- import "./wallet-C95r3fvu.js";
37
+ import "./wallet-CJdBRqTq.js";
38
38
  import "./wallet-approval-auth-BaVTLG5r.js";
39
39
  import "./runtime-DXHXAPJA.js";
40
40
  import "./device-identity-ZHUQ6a8N.js";
@@ -45,7 +45,7 @@ import "./send-C-su1wPZ.js";
45
45
  import "./outbound-attachment-Bh4FmcYg.js";
46
46
  import "./fetch-BVvWzHT_.js";
47
47
  import "./delivery-queue-55Cityuq.js";
48
- import { t as createDefaultDeps } from "./deps-BWo3ls9h.js";
48
+ import { t as createDefaultDeps } from "./deps-DdP-Hmxc.js";
49
49
  import "./frontmatter-D2UNJikU.js";
50
50
  import "./skills-Dis31awJ.js";
51
51
  import "./skills-remote-CIAB0AXm.js";
@@ -2,7 +2,7 @@ import { Sa as defaultRuntime, Vi as logWarn } from "./agent-scope-DUKEZjqM.js";
2
2
  import "./github-copilot-token-CNsqwfnE.js";
3
3
  import "./send-CFSRf7De.js";
4
4
  import "./send-gtmn6YeH.js";
5
- import { B as DEFAULT_INPUT_IMAGE_MIMES, G as normalizeMimeList, H as DEFAULT_INPUT_TIMEOUT_MS, K as resolveInputFileLimits, U as extractFileContentFromSource, V as DEFAULT_INPUT_MAX_REDIRECTS, W as extractImageContentFromSource, a as agentCommand, at as sendJson, et as emitAgentEvent, i as resolveAssistantStreamDeltaText, it as resolveSessionKey, n as handleGatewayPostJsonEndpoint, nt as createDefaultDeps, ot as setSseHeaders, r as buildAgentMessageFromConversationEntries, rt as resolveAgentIdForRequest, st as writeDone, tt as onAgentEvent, z as DEFAULT_INPUT_IMAGE_MAX_BYTES } from "./pi-embedded-CeuBUTjd.js";
5
+ import { B as DEFAULT_INPUT_IMAGE_MIMES, G as normalizeMimeList, H as DEFAULT_INPUT_TIMEOUT_MS, K as resolveInputFileLimits, U as extractFileContentFromSource, V as DEFAULT_INPUT_MAX_REDIRECTS, W as extractImageContentFromSource, a as agentCommand, at as sendJson, et as emitAgentEvent, i as resolveAssistantStreamDeltaText, it as resolveSessionKey, n as handleGatewayPostJsonEndpoint, nt as createDefaultDeps, ot as setSseHeaders, r as buildAgentMessageFromConversationEntries, rt as resolveAgentIdForRequest, st as writeDone, tt as onAgentEvent, z as DEFAULT_INPUT_IMAGE_MAX_BYTES } from "./pi-embedded-DPElH0OZ.js";
6
6
  import "./reply-prefix-Bitnsmpd.js";
7
7
  import "./diagnostic-_BiQ6GgD.js";
8
8
  import "./diagnostic-session-state-CL_QxyRg.js";
@@ -2,7 +2,7 @@ import "./paths-C9FmTW1x.js";
2
2
  import "./agent-paths-DmOVZE7g.js";
3
3
  import { au as logWarn } from "./agent-scope-DHrLr5OF.js";
4
4
  import "./commands-registry-BRvZQ1jh.js";
5
- import { Er as onAgentEvent, G as DEFAULT_INPUT_TIMEOUT_MS, H as DEFAULT_INPUT_IMAGE_MAX_BYTES, J as normalizeMimeList, Ja as sendJson, K as extractFileContentFromSource, Ka as resolveAgentIdForRequest, U as DEFAULT_INPUT_IMAGE_MIMES, W as DEFAULT_INPUT_MAX_REDIRECTS, Xa as writeDone, Y as resolveInputFileLimits, Ya as setSseHeaders, ft as handleGatewayPostJsonEndpoint, ht as agentCommand, mt as resolveAssistantStreamDeltaText, pt as buildAgentMessageFromConversationEntries, q as extractImageContentFromSource, qa as resolveSessionKey, wr as emitAgentEvent } from "./reply-B034LmuD.js";
5
+ import { Er as onAgentEvent, G as DEFAULT_INPUT_TIMEOUT_MS, H as DEFAULT_INPUT_IMAGE_MAX_BYTES, J as normalizeMimeList, Ja as sendJson, K as extractFileContentFromSource, Ka as resolveAgentIdForRequest, U as DEFAULT_INPUT_IMAGE_MIMES, W as DEFAULT_INPUT_MAX_REDIRECTS, Xa as writeDone, Y as resolveInputFileLimits, Ya as setSseHeaders, ft as handleGatewayPostJsonEndpoint, ht as agentCommand, mt as resolveAssistantStreamDeltaText, pt as buildAgentMessageFromConversationEntries, q as extractImageContentFromSource, qa as resolveSessionKey, wr as emitAgentEvent } from "./reply-701mJB_S.js";
6
6
  import { d as defaultRuntime } from "./errors-Dx3S3Nrp.js";
7
7
  import "./send-C5_fB8YQ.js";
8
8
  import "./send-jxmRy65D.js";
@@ -14,10 +14,10 @@ import "./chrome-mXtDMFyZ.js";
14
14
  import "./pairing-token-BFGorDQo.js";
15
15
  import "./ip-D_T5zbZS.js";
16
16
  import "./ws-cvQhrVP3.js";
17
- import "./onboarding.wallet-CQG8MiG_.js";
17
+ import "./onboarding.wallet-BFJRJg77.js";
18
18
  import "./wallet-runtime-config-BlRWvEER.js";
19
19
  import "./wallet-provider-registry-ax0NJo0F.js";
20
- import "./wallet-BguV7zPF.js";
20
+ import "./wallet-DZA0r3pV.js";
21
21
  import "./wallet-approval-auth-DT-vofLs.js";
22
22
  import "./reply-prefix-C2EEc3pc.js";
23
23
  import "./media-C5BIKO-v.js";
@@ -37,7 +37,7 @@ import "./ssrf-Blf4NrHS.js";
37
37
  import "./outbound-attachment-CsXJwFsg.js";
38
38
  import "./fetch-CnCPOuq7.js";
39
39
  import "./delivery-queue-DKRjVFlq.js";
40
- import { t as createDefaultDeps } from "./deps-BKAIBkcE.js";
40
+ import { t as createDefaultDeps } from "./deps-RXAe1X5s.js";
41
41
  import "./memory-DDpj0IVA.js";
42
42
  import "./memory-search-BwYkW6_V.js";
43
43
  import "./manager-BmONwMiP.js";
@@ -2,7 +2,7 @@ import { Ui as logWarn, wa as defaultRuntime } from "./agent-scope-Cb1u7HE7.js";
2
2
  import "./github-copilot-token-DYrFvncE.js";
3
3
  import "./send-vR6HwT94.js";
4
4
  import "./send-BQMxv218.js";
5
- import { $ as emitAgentEvent, B as DEFAULT_INPUT_IMAGE_MIMES, G as normalizeMimeList, H as DEFAULT_INPUT_TIMEOUT_MS, K as resolveInputFileLimits, U as extractFileContentFromSource, V as DEFAULT_INPUT_MAX_REDIRECTS, W as extractImageContentFromSource, a as agentCommand, at as setSseHeaders, et as onAgentEvent, i as resolveAssistantStreamDeltaText, it as sendJson, n as handleGatewayPostJsonEndpoint, nt as resolveAgentIdForRequest, ot as writeDone, r as buildAgentMessageFromConversationEntries, rt as resolveSessionKey, tt as createDefaultDeps, z as DEFAULT_INPUT_IMAGE_MAX_BYTES } from "./pi-embedded-Bnuo5tPq.js";
5
+ import { $ as emitAgentEvent, B as DEFAULT_INPUT_IMAGE_MIMES, G as normalizeMimeList, H as DEFAULT_INPUT_TIMEOUT_MS, K as resolveInputFileLimits, U as extractFileContentFromSource, V as DEFAULT_INPUT_MAX_REDIRECTS, W as extractImageContentFromSource, a as agentCommand, at as setSseHeaders, et as onAgentEvent, i as resolveAssistantStreamDeltaText, it as sendJson, n as handleGatewayPostJsonEndpoint, nt as resolveAgentIdForRequest, ot as writeDone, r as buildAgentMessageFromConversationEntries, rt as resolveSessionKey, tt as createDefaultDeps, z as DEFAULT_INPUT_IMAGE_MAX_BYTES } from "./pi-embedded-Pkm2p81t.js";
6
6
  import "./diagnostic-D6XQAXl4.js";
7
7
  import "./diagnostic-session-state-CexmAKza.js";
8
8
  import "./send-Da1hCe1A.js";
@@ -1,6 +1,6 @@
1
1
  import { Cd as isTruthyEnvValue, Nu as listChannelPlugins, jf as CHAT_CHANNEL_ORDER } from "./agent-scope-DHrLr5OF.js";
2
2
  import { c as listChannelPluginCatalogEntries } from "./dangerous-name-matching-CnyEIiOk.js";
3
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-D2IeEq2N.js";
3
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DfO1RfZv.js";
4
4
 
5
5
  //#region src/cli/channel-options.ts
6
6
  function dedupe(values) {
@@ -1,6 +1,6 @@
1
1
  import { Gl as listChannelPlugins, Vf as CHAT_CHANNEL_ORDER, t as isTruthyEnvValue } from "./env-C77feXxI.js";
2
2
  import { d as listChannelPluginCatalogEntries } from "./dangerous-name-matching-CFRKz8Uq.js";
3
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DjTXh-9g.js";
3
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DEewJtHt.js";
4
4
 
5
5
  //#region src/cli/channel-options.ts
6
6
  function dedupe(values) {
@@ -19121,7 +19121,7 @@ function createOutboundSendDepsFromCliSource(deps) {
19121
19121
  function createDefaultDeps() {
19122
19122
  return {
19123
19123
  sendMessageWhatsApp: async (...args) => {
19124
- const { sendMessageWhatsApp } = await import("./web-CFtLg8L6.js");
19124
+ const { sendMessageWhatsApp } = await import("./web-778GrijN.js");
19125
19125
  return await sendMessageWhatsApp(...args);
19126
19126
  },
19127
19127
  sendMessageTelegram: async (...args) => {
@@ -91767,7 +91767,7 @@ async function preflightDiscordMessage(params) {
91767
91767
  let preflightTranscript;
91768
91768
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
91769
91769
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
91770
- const { transcribeFirstAudio } = await import("./audio-preflight-DAevycUR.js");
91770
+ const { transcribeFirstAudio } = await import("./audio-preflight-QMOvUkXH.js");
91771
91771
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
91772
91772
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
91773
91773
  ctx: {
@@ -99064,7 +99064,7 @@ async function waitForTransportReady(params) {
99064
99064
 
99065
99065
  //#endregion
99066
99066
  //#region src/brand.ts
99067
- const FASED_PRODUCT_VERSION = "0.1.20";
99067
+ const FASED_PRODUCT_VERSION = "0.1.21";
99068
99068
  const FASED_DISPLAY_VERSION = `v${FASED_PRODUCT_VERSION}`;
99069
99069
 
99070
99070
  //#endregion
@@ -108687,7 +108687,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
108687
108687
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
108688
108688
  let preflightTranscript;
108689
108689
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
108690
- const { transcribeFirstAudio } = await import("./audio-preflight-DAevycUR.js");
108690
+ const { transcribeFirstAudio } = await import("./audio-preflight-QMOvUkXH.js");
108691
108691
  preflightTranscript = await transcribeFirstAudio({
108692
108692
  ctx: {
108693
108693
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -111313,7 +111313,7 @@ function loadWebLoginQr() {
111313
111313
  return webLoginQrPromise;
111314
111314
  }
111315
111315
  function loadWebChannel() {
111316
- webChannelPromise ??= import("./web-CFtLg8L6.js");
111316
+ webChannelPromise ??= import("./web-778GrijN.js");
111317
111317
  return webChannelPromise;
111318
111318
  }
111319
111319
  function loadWhatsAppActions() {
@@ -19122,7 +19122,7 @@ function createOutboundSendDepsFromCliSource(deps) {
19122
19122
  function createDefaultDeps() {
19123
19123
  return {
19124
19124
  sendMessageWhatsApp: async (...args) => {
19125
- const { sendMessageWhatsApp } = await import("./web-D7NnzaWN.js");
19125
+ const { sendMessageWhatsApp } = await import("./web-D-SMykKz.js");
19126
19126
  return await sendMessageWhatsApp(...args);
19127
19127
  },
19128
19128
  sendMessageTelegram: async (...args) => {
@@ -91758,7 +91758,7 @@ async function preflightDiscordMessage(params) {
91758
91758
  let preflightTranscript;
91759
91759
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
91760
91760
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
91761
- const { transcribeFirstAudio } = await import("./audio-preflight-BLGP3XdB.js");
91761
+ const { transcribeFirstAudio } = await import("./audio-preflight-DGoGnRdo.js");
91762
91762
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
91763
91763
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
91764
91764
  ctx: {
@@ -99055,7 +99055,7 @@ async function waitForTransportReady(params) {
99055
99055
 
99056
99056
  //#endregion
99057
99057
  //#region src/brand.ts
99058
- const FASED_PRODUCT_VERSION = "0.1.20";
99058
+ const FASED_PRODUCT_VERSION = "0.1.21";
99059
99059
  const FASED_DISPLAY_VERSION = `v${FASED_PRODUCT_VERSION}`;
99060
99060
 
99061
99061
  //#endregion
@@ -108678,7 +108678,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
108678
108678
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
108679
108679
  let preflightTranscript;
108680
108680
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
108681
- const { transcribeFirstAudio } = await import("./audio-preflight-BLGP3XdB.js");
108681
+ const { transcribeFirstAudio } = await import("./audio-preflight-DGoGnRdo.js");
108682
108682
  preflightTranscript = await transcribeFirstAudio({
108683
108683
  ctx: {
108684
108684
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -111304,7 +111304,7 @@ function loadWebLoginQr() {
111304
111304
  return webLoginQrPromise;
111305
111305
  }
111306
111306
  function loadWebChannel() {
111307
- webChannelPromise ??= import("./web-D7NnzaWN.js");
111307
+ webChannelPromise ??= import("./web-D-SMykKz.js");
111308
111308
  return webChannelPromise;
111309
111309
  }
111310
111310
  function loadWhatsAppActions() {
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Gu as resolveDefaultAgentId, Wu as resolveAgentWorkspaceDir, Xt as loadConfig, a as createSubsystemLogger, p as getActivePluginRegistry } from "./env-C77feXxI.js";
3
- import { c as loadFasedAgentPlugins } from "./model-catalog-ex4Cpln_.js";
3
+ import { c as loadFasedAgentPlugins } from "./model-catalog-BQ5G4eK6.js";
4
4
 
5
5
  //#region src/cli/plugin-registry.ts
6
6
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Dn as loadConfig, F as createSubsystemLogger, U as getActivePluginRegistry, d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-DHrLr5OF.js";
3
- import { Nt as loadFasedAgentPlugins } from "./reply-B034LmuD.js";
3
+ import { Nt as loadFasedAgentPlugins } from "./reply-701mJB_S.js";
4
4
 
5
5
  //#region src/cli/plugin-registry.ts
6
6
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -1,4 +1,4 @@
1
- import { C as normalizeMediaAttachments, E as isAudioAttachment, S as createMediaAttachmentCache, T as runCapability, w as resolveMediaAttachmentLocalRoots, x as buildProviderRegistry } from "./reply-e-9_IdAa.js";
1
+ import { C as normalizeMediaAttachments, E as isAudioAttachment, S as createMediaAttachmentCache, T as runCapability, w as resolveMediaAttachmentLocalRoots, x as buildProviderRegistry } from "./reply-DclM907b.js";
2
2
  import { Gc as logVerbose, qc as shouldLogVerbose } from "./runtime-CtLKqMBi.js";
3
3
  import "./github-copilot-token-CVC_19vl.js";
4
4
  import "./send-DWQzk-g-.js";
@@ -2,7 +2,7 @@ import { Ds as shouldLogVerbose, Ts as logVerbose } from "./context-ELfFy5gI.js"
2
2
  import "./github-copilot-token-BMocqO3v.js";
3
3
  import "./send-U2KLDk8Y.js";
4
4
  import "./send-D-qiCsR8.js";
5
- import { A as buildProviderRegistry, F as isAudioAttachment, M as normalizeMediaAttachments, N as resolveMediaAttachmentLocalRoots, P as runCapability, j as createMediaAttachmentCache } from "./status-D_fsW8e3.js";
5
+ import { A as buildProviderRegistry, F as isAudioAttachment, M as normalizeMediaAttachments, N as resolveMediaAttachmentLocalRoots, P as runCapability, j as createMediaAttachmentCache } from "./status-EnvYKAtO.js";
6
6
  import "./paths-LSd1qcYE.js";
7
7
  import "./ssrf-CZsNT0Hn.js";
8
8
  import "./reply-prefix-Dkj5AXG3.js";
@@ -1,4 +1,4 @@
1
- import { a as DEFAULT_ACCOUNT_ID, i as formatCliCommand, o as normalizeAccountId, t as getChatChannelMeta } from "./registry-DXXOSq_V.js";
1
+ import { a as DEFAULT_ACCOUNT_ID, i as formatCliCommand, o as normalizeAccountId, t as getChatChannelMeta } from "./registry-DyRgZdL8.js";
2
2
 
3
3
  //#region src/plugins/config-schema.ts
4
4
  function error(message) {