@fased/fased 0.1.48 → 0.1.51

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 (157) hide show
  1. package/dist/agents/auth-health.js +11 -5
  2. package/dist/agents/current-model-catalog.js +45 -0
  3. package/dist/agents/model-catalog-source.js +28 -3
  4. package/dist/agents/provider-id.js +1 -1
  5. package/dist/brand.js +1 -1
  6. package/dist/build-info.json +3 -3
  7. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  8. package/dist/cli/lightweight/gateway-runtime-probe.js +50 -0
  9. package/dist/cli/update-cli/update-command.js +120 -0
  10. package/dist/commands/doctor-state-integrity.js +25 -2
  11. package/dist/config/sessions/transcript.js +30 -16
  12. package/dist/config/sessions.js +2 -2
  13. package/dist/control-ui/assets/{app-CHqTx3P_.js → app-wJm5kuje.js} +1274 -1259
  14. package/dist/control-ui/assets/{chat-model-ref-BbrdMKjQ.js → chat-model-ref-Cs2TTOtF.js} +2 -2
  15. package/dist/control-ui/assets/{config-FFZLTSLS.js → config-CU5Zi8Dh.js} +2 -2
  16. package/dist/control-ui/assets/{index-CFHfNlLv.js → index-vTDTf5Zv.js} +3 -3
  17. package/dist/control-ui/assets/{mining-D_VAMFMY.js → mining-BdhMn18r.js} +3 -3
  18. package/dist/control-ui/assets/{providers-DqFL6WrJ.js → providers-C0DEXi8e.js} +14 -3
  19. package/dist/control-ui/index.html +1 -1
  20. package/dist/gateway/probe-payload.js +14 -0
  21. package/dist/gateway/probe.js +8 -4
  22. package/dist/gateway/protocol/schema/agents-models-skills.js +1 -0
  23. package/dist/gateway/protocol/schema/frames.js +5 -0
  24. package/dist/gateway/protocol/schema/snapshot.js +1 -0
  25. package/dist/gateway/server/ws-connection/message-handler.js +2 -1
  26. package/dist/gateway/server-http-lazy.js +2 -4
  27. package/dist/gateway/server-http.js +3 -4
  28. package/dist/gateway/server-methods/chat.js +4 -29
  29. package/dist/gateway/server-methods/models.js +3 -2
  30. package/dist/infra/system-presence.js +4 -2
  31. package/dist/light-update-precheck.js +1 -1
  32. package/dist/light-update-status.js +1 -1
  33. package/dist/memory/inventory.js +19 -0
  34. package/dist/plugin-sdk/{accounts-DI5226U8.js → accounts-BfdIB9Ud.js} +1 -1
  35. package/dist/plugin-sdk/{actions-CEj4gOU2.js → actions-DHN_x97P.js} +2 -2
  36. package/dist/plugin-sdk/{active-listener-Ss4UKXZb.js → active-listener-CIP_Ht8d.js} +1 -1
  37. package/dist/plugin-sdk/{audio-preflight-Cu4alGjb.js → audio-preflight-CKGhXtyV.js} +26 -26
  38. package/dist/plugin-sdk/{audit-BTskqjJ_.js → audit-Cmg38KPG.js} +1 -1
  39. package/dist/plugin-sdk/{channel-access-B1KciKmw.js → channel-access-JHDguu4T.js} +1 -1
  40. package/dist/plugin-sdk/{channel-access-configure-Y91FLOJc.js → channel-access-configure-B8mwKp-Z.js} +1 -1
  41. package/dist/plugin-sdk/channel-plugin-common.d.ts +2 -2
  42. package/dist/plugin-sdk/channel-plugin-common.js +4 -4
  43. package/dist/plugin-sdk/{chunk-items-Q8HhMuSe.js → chunk-items-iKdlZyWZ.js} +1 -1
  44. package/dist/plugin-sdk/{chunk-CSUjIQSx.js → chunk-oJRyTNTL.js} +1 -1
  45. package/dist/plugin-sdk/command-status.js +26 -26
  46. package/dist/plugin-sdk/{commands-registry-DJ0pfCcY.js → commands-registry-Cjo7OjIf.js} +2 -2
  47. package/dist/plugin-sdk/{common-Cjm8psuW.js → common-Dx4sUa9f.js} +1 -1
  48. package/dist/plugin-sdk/{config-DutIeFge.js → config-DdS0zHiU.js} +80 -4
  49. package/dist/plugin-sdk/{config-schema-Cg6PYSHR.js → config-schema-BJQEjMPz.js} +2090 -523
  50. package/dist/plugin-sdk/device-pair.d.ts +1 -1
  51. package/dist/plugin-sdk/discord.d.ts +4 -4
  52. package/dist/plugin-sdk/discord.js +19 -19
  53. package/dist/plugin-sdk/{handle-action-Dp2741iu.js → handle-action-wR0x9b0c.js} +13 -13
  54. package/dist/plugin-sdk/{helpers-BCZ9d3fl.js → helpers-DkauqZNP.js} +1 -1
  55. package/dist/plugin-sdk/{image-ops-B-QR_M9Z.js → image-ops-DmSjpAeh.js} +1 -1
  56. package/dist/plugin-sdk/index.d.ts +17 -17
  57. package/dist/plugin-sdk/index.js +28 -28
  58. package/dist/plugin-sdk/{login-BFvQxf9o.js → login-DB9LIbi8.js} +3 -3
  59. package/dist/plugin-sdk/{login-qr-CERTe_nD.js → login-qr-CDhMa-c7.js} +3 -3
  60. package/dist/plugin-sdk/{manager-Dhq3SXpO.js → manager-DGZsMQWR.js} +2 -2
  61. package/dist/plugin-sdk/{markdown-tables-B1Tx7c77.js → markdown-tables-BX7JXDUV.js} +1 -1
  62. package/dist/plugin-sdk/{media-BwsqooWC.js → media-DyzsScOp.js} +2 -2
  63. package/dist/plugin-sdk/{monitor-BYzN5Qr4.js → monitor-B91PZ2mD.js} +31 -31
  64. package/dist/plugin-sdk/{monitor-CJiacqtR.js → monitor-BH9rTJFq.js} +30 -30
  65. package/dist/plugin-sdk/{openresponses-http-VLSSqCZZ.js → openresponses-http-CmBLZ9bH.js} +26 -26
  66. package/dist/plugin-sdk/{optional-runtime-dependency-BEBP4VFJ.js → optional-runtime-dependency-DaMkPVe_.js} +1 -1
  67. package/dist/plugin-sdk/{outbound-BqWgaC5M.js → outbound-X-m2mBZn.js} +6 -6
  68. package/dist/plugin-sdk/{outbound-attachment-L1q40kiu.js → outbound-attachment-M0NCUSG-.js} +2 -2
  69. package/dist/plugin-sdk/{pairing-message-DWXHX-jt.d.ts → pairing-message-BaQiXKLE.d.ts} +1 -1
  70. package/dist/plugin-sdk/{pairing-message-CZBahREg.js → pairing-message-hnmpJlW2.js} +1 -1
  71. package/dist/plugin-sdk/{pairing-store-D7I1Qmiw.js → pairing-store-DyghUm9G.js} +2 -2
  72. package/dist/plugin-sdk/{pi-model-discovery-C5klknQZ.js → pi-model-discovery-ReorOh7W.js} +1 -1
  73. package/dist/plugin-sdk/{pi-model-discovery-runtime-DIEMhCZ5.js → pi-model-discovery-runtime-C-CHZo03.js} +2 -2
  74. package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +1 -1
  75. package/dist/plugin-sdk/{pw-ai-Bv-q25gY.js → pw-ai-D_gli3_r.js} +3 -3
  76. package/dist/plugin-sdk/{replies-Bd9ktEkq.js → replies-Djyehmcu.js} +2 -2
  77. package/dist/plugin-sdk/{resolve-outbound-target-CCIyBb5H.js → resolve-outbound-target-Chznq8rS.js} +1 -1
  78. package/dist/plugin-sdk/{resolve-route-B7vZ3nKp.js → resolve-route-Ce08Fx-G.js} +1 -1
  79. package/dist/plugin-sdk/{retry-policy-ChC3G4lv.js → retry-policy-eS25atAo.js} +1 -1
  80. package/dist/plugin-sdk/{runtime-BLknHFGz.js → runtime-Cv3gX3Wc.js} +31 -18
  81. package/dist/plugin-sdk/{runtime-dependency-C5rJfC0u.js → runtime-dependency-p_iKbESf.js} +2 -2
  82. package/dist/plugin-sdk/sat-runtime.d.ts +2 -2
  83. package/dist/plugin-sdk/sat-runtime.js +5 -5
  84. package/dist/plugin-sdk/{send-Bd3Z-jAd.js → send-B3RAELvw.js} +6 -6
  85. package/dist/plugin-sdk/{send-Bmtz9ICm.js → send-BuPGxx3-.js} +8 -8
  86. package/dist/plugin-sdk/{send-mkyZzhCO.js → send-C-jaxZJG.js} +5 -5
  87. package/dist/plugin-sdk/{send-CUGEhiUa.js → send-CSob7dn9.js} +6 -6
  88. package/dist/plugin-sdk/{send-CMoWt-EX.js → send-CsLJsIvv.js} +7 -7
  89. package/dist/plugin-sdk/{session-D2zmelOL.js → session-DKJGakm1.js} +2 -2
  90. package/dist/plugin-sdk/{skill-commands-BybEjJ1_.js → skill-commands-BqpZG5nW.js} +2 -2
  91. package/dist/plugin-sdk/{slack-DogXvGG3.js → slack-CQqN9uBH.js} +38 -38
  92. package/dist/plugin-sdk/{slack-actions-uXb55QWW.js → slack-actions-DlbVH5SS.js} +11 -11
  93. package/dist/plugin-sdk/slack.d.ts +4 -4
  94. package/dist/plugin-sdk/slack.js +9 -9
  95. package/dist/plugin-sdk/{sticker-cache-BuPw7fTf.js → sticker-cache-CDyt2ZMh.js} +3 -3
  96. package/dist/plugin-sdk/{tables-CVDOT5dX.js → tables-Cij4iAXw.js} +1 -1
  97. package/dist/plugin-sdk/{targets-DskkhJAp.js → targets-VrYeAmeT.js} +1 -1
  98. package/dist/plugin-sdk/{telegram-actions-_KQPbjpI.js → telegram-actions-ZwUBOkwa.js} +29 -29
  99. package/dist/plugin-sdk/telegram.d.ts +4 -4
  100. package/dist/plugin-sdk/telegram.js +8 -8
  101. package/dist/plugin-sdk/{thread-bindings.lifecycle-CrhQXYEU.js → thread-bindings.lifecycle-BWIzwpPM.js} +3 -3
  102. package/dist/plugin-sdk/{thread-bindings.state-ssxdG7xV.js → thread-bindings.state-CpAQrGco.js} +2 -2
  103. package/dist/plugin-sdk/{tmp-fased-dir-Be1wBhVz.d.ts → tmp-fased-dir-DLba1ePP.d.ts} +1 -1
  104. package/dist/plugin-sdk/{types-CXLEOrJX.d.ts → types-CKR2Lvsa.d.ts} +1 -1
  105. package/dist/plugin-sdk/{types-CJGVZX6j.d.ts → types-NR-f-rw-.d.ts} +3 -3
  106. package/dist/plugin-sdk/{wallet-status-CQI89c_6.js → wallet-status-ClmXigGN.js} +10 -3
  107. package/dist/plugin-sdk/{web-C8DwA0eO.js → web-BK2j9z6c.js} +31 -31
  108. package/dist/plugin-sdk/{whatsapp-actions-DfvM-mlZ.js → whatsapp-actions-CaenMy79.js} +13 -13
  109. package/dist/plugin-sdk/{whatsapp-heartbeat-DyJasLDB.js → whatsapp-heartbeat-Cr9K5Sil.js} +2 -2
  110. package/dist/plugin-sdk/whatsapp.d.ts +11 -11
  111. package/dist/plugin-sdk/whatsapp.js +12 -12
  112. package/dist/plugin-sdk/{wsl-JwmI6Zu8.js → wsl-D_I-iL4U.js} +3 -3
  113. package/dist/plugin-sdk/{zod-schema.providers-core-BE_5DNhj.d.ts → zod-schema.providers-core-CIzCjXH9.d.ts} +71 -71
  114. package/dist/plugins/status-cache.js +1 -1
  115. package/dist/providers/refresh.js +1 -1
  116. package/dist/providers/refreshed-model-capabilities.js +1935 -406
  117. package/dist/providers/registry.js +14 -3
  118. package/dist/version.js +11 -1
  119. package/extensions/acpx/package.json +1 -1
  120. package/extensions/bluebubbles/package.json +1 -1
  121. package/extensions/copilot-proxy/package.json +1 -1
  122. package/extensions/diagnostics-otel/package.json +1 -1
  123. package/extensions/fased-federation/package.json +1 -1
  124. package/extensions/google-gemini-cli-auth/package.json +1 -1
  125. package/extensions/imessage/package.json +1 -1
  126. package/extensions/irc/package.json +1 -1
  127. package/extensions/line/package.json +1 -1
  128. package/extensions/llm-task/package.json +1 -1
  129. package/extensions/lobster/package.json +1 -1
  130. package/extensions/matrix/CHANGELOG.md +18 -0
  131. package/extensions/matrix/package.json +1 -1
  132. package/extensions/mattermost/package.json +1 -1
  133. package/extensions/memory-core/package.json +2 -2
  134. package/extensions/memory-lancedb/package.json +1 -1
  135. package/extensions/minimax-portal-auth/package.json +1 -1
  136. package/extensions/msteams/CHANGELOG.md +18 -0
  137. package/extensions/msteams/package.json +1 -1
  138. package/extensions/nextcloud-talk/package.json +1 -1
  139. package/extensions/nostr/CHANGELOG.md +18 -0
  140. package/extensions/nostr/package.json +1 -1
  141. package/extensions/open-prose/package.json +1 -1
  142. package/extensions/sat-mining/index.ts +121 -12
  143. package/extensions/sat-mining/package.json +1 -1
  144. package/extensions/sat-mining/src/runtime.ts +9 -3
  145. package/extensions/signal/package.json +1 -1
  146. package/extensions/synology-chat/package.json +1 -1
  147. package/extensions/tlon/package.json +1 -1
  148. package/extensions/twitch/CHANGELOG.md +18 -0
  149. package/extensions/twitch/package.json +1 -1
  150. package/extensions/voice-call/CHANGELOG.md +18 -0
  151. package/extensions/voice-call/package.json +1 -1
  152. package/extensions/zalo/CHANGELOG.md +18 -0
  153. package/extensions/zalo/package.json +1 -1
  154. package/extensions/zalouser/CHANGELOG.md +18 -0
  155. package/extensions/zalouser/package.json +1 -1
  156. package/package.json +1 -1
  157. package/scripts/start-managed.sh +35 -1
@@ -1,10 +1,10 @@
1
1
  import { n as DEFAULT_ACCOUNT_ID, r as normalizeAccountId } from "./session-key--_1zVBRB.js";
2
2
  import { At as FasedAgentConfig, F as ChannelAccountSnapshot, Gt as TelegramAccountConfig, J as ChannelMessageActionAdapter, it as ChannelStatusIssue, n as ChannelPlugin, r as ChannelOnboardingAdapter, u as ChannelMessageActionName, ut as getChatChannelMeta } from "./types.plugin-CvUiB3Kh.js";
3
- import { Bt as resolveDefaultGroupPolicy, Cn as readStringParam, Gt as listSlackDirectoryGroupsFromConfig, Jt as listTelegramDirectoryPeersFromConfig, Kt as listSlackDirectoryPeersFromConfig, Lt as TelegramProbe, Ut as listDiscordDirectoryGroupsFromConfig, Vt as resolveOpenProviderRuntimeGroupPolicy, Wt as listDiscordDirectoryPeersFromConfig, Xt as listWhatsAppDirectoryPeersFromConfig, Yt as listWhatsAppDirectoryGroupsFromConfig, _ as FasedAgentPluginApi, qt as listTelegramDirectoryGroupsFromConfig, t as PluginRuntime, yn as createActionGate, zt as resolveAllowlistProviderRuntimeGroupPolicy } from "./types-CXLEOrJX.js";
4
- import { D as normalizeE164 } from "./types-CJGVZX6j.js";
5
- import { a as buildChannelConfigSchema, c as emptyPluginConfigSchema, i as setAccountEnabledInConfigSection, n as formatPairingApproveHint, o as applyAccountNameToChannelSection, r as deleteAccountFromConfigSection, s as migrateBaseNameToDefaultAccount, t as PAIRING_APPROVED_MESSAGE } from "./pairing-message-DWXHX-jt.js";
3
+ import { Bt as resolveDefaultGroupPolicy, Cn as readStringParam, Gt as listSlackDirectoryGroupsFromConfig, Jt as listTelegramDirectoryPeersFromConfig, Kt as listSlackDirectoryPeersFromConfig, Lt as TelegramProbe, Ut as listDiscordDirectoryGroupsFromConfig, Vt as resolveOpenProviderRuntimeGroupPolicy, Wt as listDiscordDirectoryPeersFromConfig, Xt as listWhatsAppDirectoryPeersFromConfig, Yt as listWhatsAppDirectoryGroupsFromConfig, _ as FasedAgentPluginApi, qt as listTelegramDirectoryGroupsFromConfig, t as PluginRuntime, yn as createActionGate, zt as resolveAllowlistProviderRuntimeGroupPolicy } from "./types-CKR2Lvsa.js";
4
+ import { D as normalizeE164 } from "./types-NR-f-rw-.js";
5
+ import { a as buildChannelConfigSchema, c as emptyPluginConfigSchema, i as setAccountEnabledInConfigSection, n as formatPairingApproveHint, o as applyAccountNameToChannelSection, r as deleteAccountFromConfigSection, s as migrateBaseNameToDefaultAccount, t as PAIRING_APPROVED_MESSAGE } from "./pairing-message-BaQiXKLE.js";
6
6
  import { _ as buildTokenChannelStatusSummary, d as resolveTelegramGroupRequireMention, f as resolveTelegramGroupToolPolicy } from "./group-mentions-DLOOve8d.js";
7
- import { s as TelegramConfigSchema } from "./zod-schema.providers-core-BE_5DNhj.js";
7
+ import { s as TelegramConfigSchema } from "./zod-schema.providers-core-CIzCjXH9.js";
8
8
 
9
9
  //#region src/telegram/accounts.d.ts
10
10
  type ResolvedTelegramAccount = {
@@ -1,26 +1,26 @@
1
- import { Nn as getChatChannelMeta, Xt as resolveTelegramGroupRequireMention, Zt as resolveTelegramGroupToolPolicy, _t as listWhatsAppDirectoryPeersFromConfig, dt as listDiscordDirectoryPeersFromConfig, ft as listSlackDirectoryGroupsFromConfig, gt as listWhatsAppDirectoryGroupsFromConfig, ht as listTelegramDirectoryPeersFromConfig, in as resolveTelegramAccount, mt as listTelegramDirectoryGroupsFromConfig, nn as listTelegramAccountIds, pt as listSlackDirectoryPeersFromConfig, rn as resolveDefaultTelegramAccountId, ut as listDiscordDirectoryGroupsFromConfig } from "./runtime-BLknHFGz.js";
1
+ import { Nn as getChatChannelMeta, Xt as resolveTelegramGroupRequireMention, Zt as resolveTelegramGroupToolPolicy, _t as listWhatsAppDirectoryPeersFromConfig, dt as listDiscordDirectoryPeersFromConfig, ft as listSlackDirectoryGroupsFromConfig, gt as listWhatsAppDirectoryGroupsFromConfig, ht as listTelegramDirectoryPeersFromConfig, in as resolveTelegramAccount, mt as listTelegramDirectoryGroupsFromConfig, nn as listTelegramAccountIds, pt as listSlackDirectoryPeersFromConfig, rn as resolveDefaultTelegramAccountId, ut as listDiscordDirectoryGroupsFromConfig } from "./runtime-Cv3gX3Wc.js";
2
2
  import "./subsystem-DBPNbQDQ.js";
3
3
  import "./globals-B_jjtAje.js";
4
4
  import "./paths-BEmvSyOV.js";
5
5
  import { c as isRecord, d as normalizeE164 } from "./utils-CYk9EKoq.js";
6
- import { Cr as formatCliCommand, g as TelegramConfigSchema } from "./config-DutIeFge.js";
6
+ import { Tr as formatCliCommand, g as TelegramConfigSchema } from "./config-DdS0zHiU.js";
7
7
  import "./agent-scope-BbgPlhtw.js";
8
8
  import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
9
9
  import "./accounts-RHZyaB73.js";
10
10
  import "./accounts-CuqIKU8X.js";
11
11
  import "./logger-BbFvCoKk.js";
12
12
  import "./exec-DQ8j4Fm3.js";
13
- import "./accounts-DI5226U8.js";
13
+ import "./accounts-BfdIB9Ud.js";
14
14
  import "./redact-Bm8vu_ju.js";
15
15
  import "./github-copilot-token-CUK__1s1.js";
16
16
  import "./retry-DstNBhDW.js";
17
17
  import "./paths-CTZ2RS_E.js";
18
- import { a as deleteAccountFromConfigSection, c as formatPairingApproveHint, n as applyAccountNameToChannelSection, o as setAccountEnabledInConfigSection, r as migrateBaseNameToDefaultAccount, s as buildChannelConfigSchema, t as PAIRING_APPROVED_MESSAGE, u as emptyPluginConfigSchema } from "./pairing-message-CZBahREg.js";
19
- import { A as resolveDefaultGroupPolicy, D as formatDocsLink, b as setOnboardingChannelEnabled, g as resolveOnboardingAccountId, h as resolveAccountIdForConfigure, j as resolveOpenProviderRuntimeGroupPolicy, k as resolveAllowlistProviderRuntimeGroupPolicy, l as patchChannelConfigForAccount, m as promptSingleChannelToken, n as applySingleTokenPromptResult, p as promptResolvedAllowFrom, v as setChannelDmPolicyWithAllowFrom, w as buildTokenChannelStatusSummary, x as splitOnboardingEntries } from "./helpers-BCZ9d3fl.js";
18
+ import { a as deleteAccountFromConfigSection, c as formatPairingApproveHint, n as applyAccountNameToChannelSection, o as setAccountEnabledInConfigSection, r as migrateBaseNameToDefaultAccount, s as buildChannelConfigSchema, t as PAIRING_APPROVED_MESSAGE, u as emptyPluginConfigSchema } from "./pairing-message-hnmpJlW2.js";
19
+ import { A as resolveDefaultGroupPolicy, D as formatDocsLink, b as setOnboardingChannelEnabled, g as resolveOnboardingAccountId, h as resolveAccountIdForConfigure, j as resolveOpenProviderRuntimeGroupPolicy, k as resolveAllowlistProviderRuntimeGroupPolicy, l as patchChannelConfigForAccount, m as promptSingleChannelToken, n as applySingleTokenPromptResult, p as promptResolvedAllowFrom, v as setChannelDmPolicyWithAllowFrom, w as buildTokenChannelStatusSummary, x as splitOnboardingEntries } from "./helpers-DkauqZNP.js";
20
20
  import { n as normalizeTelegramLookupTarget, r as parseTelegramTarget } from "./targets-BDvvnlph.js";
21
- import "./optional-runtime-dependency-BEBP4VFJ.js";
22
- import "./image-ops-B-QR_M9Z.js";
23
- import { d as readStringParam, n as createActionGate } from "./common-Cjm8psuW.js";
21
+ import "./optional-runtime-dependency-DaMkPVe_.js";
22
+ import "./image-ops-DmSjpAeh.js";
23
+ import { d as readStringParam, n as createActionGate } from "./common-Dx4sUa9f.js";
24
24
  import { i as resolveEnabledConfiguredAccountId, n as asString, t as appendMatchMetadata } from "./shared-clhhbWN3.js";
25
25
  import "./channel-core-BOkyXXLa.js";
26
26
 
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { i as logVerbose } from "./globals-B_jjtAje.js";
3
3
  import { l as resolveAgentIdFromSessionKey, p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
4
- import { A as DEFAULT_THREAD_BINDING_MAX_AGE_MS, C as resolveThreadBindingMaxAgeMs, D as shouldPersistBindingMutations, E as shouldDefaultPersist, F as resolveThreadBindingIntroText, H as unregisterSessionBindingAdapter, I as resolveThreadBindingThreadName, L as SYSTEM_MARK, M as THREAD_BINDINGS_SWEEP_INTERVAL_MS, O as toReusableWebhookKey, P as resolveThreadBindingFarewellText, S as resolveThreadBindingMaxAgeExpiresAt, T as setBindingRecord, V as registerSessionBindingAdapter, W as readAcpSessionEntry, _ as removeBindingRecord, a as THREAD_BINDING_TOUCH_PERSIST_MIN_INTERVAL_MS, b as resolveThreadBindingIdleTimeoutMs, d as normalizeTargetKind, f as normalizeThreadBindingDurationMs, g as rememberThreadBindingToken, h as rememberReusableWebhook, i as REUSABLE_WEBHOOKS_BY_ACCOUNT_CHANNEL, j as DISCORD_UNKNOWN_CHANNEL_ERROR_CODE, k as DEFAULT_THREAD_BINDING_IDLE_TIMEOUT_MS, l as getThreadBindingToken, m as rememberRecentUnboundWebhookEcho, n as MANAGERS_BY_ACCOUNT_ID, o as ensureBindingsLoaded, p as normalizeThreadId, r as PERSIST_BY_ACCOUNT_ID, s as forgetThreadBindingToken, t as BINDINGS_BY_THREAD_ID, v as resolveBindingIdsForSession, w as saveBindingsToDisk, x as resolveThreadBindingInactivityExpiresAt, y as resolveBindingRecordKey } from "./thread-bindings.state-ssxdG7xV.js";
5
- import { t as parseDiscordTarget } from "./targets-DskkhJAp.js";
6
- import { b as sendWebhookMessageDiscord, g as sendMessageDiscord, nt as createDiscordRestClient, x as createThreadDiscord } from "./send-Bmtz9ICm.js";
4
+ import { A as DEFAULT_THREAD_BINDING_MAX_AGE_MS, C as resolveThreadBindingMaxAgeMs, D as shouldPersistBindingMutations, E as shouldDefaultPersist, F as resolveThreadBindingIntroText, H as unregisterSessionBindingAdapter, I as resolveThreadBindingThreadName, L as SYSTEM_MARK, M as THREAD_BINDINGS_SWEEP_INTERVAL_MS, O as toReusableWebhookKey, P as resolveThreadBindingFarewellText, S as resolveThreadBindingMaxAgeExpiresAt, T as setBindingRecord, V as registerSessionBindingAdapter, W as readAcpSessionEntry, _ as removeBindingRecord, a as THREAD_BINDING_TOUCH_PERSIST_MIN_INTERVAL_MS, b as resolveThreadBindingIdleTimeoutMs, d as normalizeTargetKind, f as normalizeThreadBindingDurationMs, g as rememberThreadBindingToken, h as rememberReusableWebhook, i as REUSABLE_WEBHOOKS_BY_ACCOUNT_CHANNEL, j as DISCORD_UNKNOWN_CHANNEL_ERROR_CODE, k as DEFAULT_THREAD_BINDING_IDLE_TIMEOUT_MS, l as getThreadBindingToken, m as rememberRecentUnboundWebhookEcho, n as MANAGERS_BY_ACCOUNT_ID, o as ensureBindingsLoaded, p as normalizeThreadId, r as PERSIST_BY_ACCOUNT_ID, s as forgetThreadBindingToken, t as BINDINGS_BY_THREAD_ID, v as resolveBindingIdsForSession, w as saveBindingsToDisk, x as resolveThreadBindingInactivityExpiresAt, y as resolveBindingRecordKey } from "./thread-bindings.state-CpAQrGco.js";
5
+ import { t as parseDiscordTarget } from "./targets-VrYeAmeT.js";
6
+ import { b as sendWebhookMessageDiscord, g as sendMessageDiscord, nt as createDiscordRestClient, x as createThreadDiscord } from "./send-BuPGxx3-.js";
7
7
  import { ChannelType, Routes } from "discord-api-types/v10";
8
8
 
9
9
  //#region src/discord/monitor/thread-bindings.persona.ts
@@ -1,6 +1,6 @@
1
- import { $ as mergeSessionEntry, T as updateSessionStore, x as loadSessionStore } from "./runtime-BLknHFGz.js";
1
+ import { $ as mergeSessionEntry, T as updateSessionStore, x as loadSessionStore } from "./runtime-Cv3gX3Wc.js";
2
2
  import { s as resolveStateDir } from "./paths-BEmvSyOV.js";
3
- import { n as loadConfig } from "./config-DutIeFge.js";
3
+ import { n as loadConfig } from "./config-DdS0zHiU.js";
4
4
  import { S as parseAgentSessionKey, l as resolveAgentIdFromSessionKey, p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
5
5
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-CUK__1s1.js";
6
6
  import { l as resolveStorePath } from "./paths-CTZ2RS_E.js";
@@ -1,5 +1,5 @@
1
1
  import { At as FasedAgentConfig, l as AgentDefaultsConfig } from "./types.plugin-CvUiB3Kh.js";
2
- import { M as LookupFn, P as SsrFPolicy } from "./types-CJGVZX6j.js";
2
+ import { M as LookupFn, P as SsrFPolicy } from "./types-NR-f-rw-.js";
3
3
 
4
4
  //#region src/agents/agent-scope.d.ts
5
5
  type AgentEntry = NonNullable<NonNullable<FasedAgentConfig["agents"]>["list"]>[number];
@@ -1,6 +1,6 @@
1
1
  import { t as ChatType } from "./chat-type-CK5stkc4.js";
2
2
  import { An as GetReplyOptions, At as FasedAgentConfig, B as ChannelCapabilities, Ct as RuntimeEnv, Dn as MarkdownTableMode, E as ChannelPairingAdapter, F as ChannelAccountSnapshot, G as ChannelId, J as ChannelMessageActionAdapter, Jt as SlackSlashCommandConfig, Kt as TelegramGroupConfig, L as ChannelAgentPromptAdapter, N as BaseProbeResult, Nt as ModelProviderConfig, On as ReplyToMode, Ot as sendMessageDiscord, P as BaseTokenResolution, R as ChannelAgentTool, St as sendMessageIMessage, Tn as HumanDelayConfig, V as ChannelDirectoryEntry, _t as sendPollWhatsApp, bn as GroupToolPolicyConfig, bt as sendMessageSlack, c as writeConfigFile, dn as chunkMarkdownTextWithMode, f as ChannelCommandAdapter, fn as chunkText, ft as FinalizedMsgContext, gt as sendMessageWhatsApp, h as ChannelElevatedAdapter, hn as resolveTextChunkLimit, ht as ShouldHandleTextCommandsParams, jn as ReplyPayload, kt as sendPollDiscord, ln as chunkByNewline, mn as resolveChunkMode, mt as CommandNormalizeOptions, n as ChannelPlugin, o as WizardPrompter, ot as ChannelThreadingAdapter, p as ChannelConfigAdapter, pn as chunkTextWithMode, pt as MsgContext, q as ChannelMentionAdapter, s as loadConfig, sn as TtsAutoMode, un as chunkMarkdownText, v as ChannelGroupAdapter, vn as PollInput, vt as sendMessageTelegram, wn as GroupPolicy, xt as sendMessageSignal, yn as GroupToolPolicyBySenderConfig, yt as sendPollTelegram } from "./types.plugin-CvUiB3Kh.js";
3
- import { C as readWebSelfId, H as resolveStateDir, M as LookupFn, P as SsrFPolicy, S as logoutWeb, _ as PushTestParams, a as GatewayClient, b as getWebAuthAgeMs, c as GatewayRequestHandlerOptions, i as OperatorScope, j as LogLevel, l as GatewayRequestHandlers, m as ChatInjectParams, n as AuthProfileStore, o as GatewayRequestContext, r as OAuthCredential, s as GatewayRequestHandler, t as AuthProfileCredential, v as WebLoginStartParams, w as webAuthExists, x as logWebSelfId, y as WebLoginWaitParams } from "./types-CJGVZX6j.js";
3
+ import { C as readWebSelfId, H as resolveStateDir, M as LookupFn, P as SsrFPolicy, S as logoutWeb, _ as PushTestParams, a as GatewayClient, b as getWebAuthAgeMs, c as GatewayRequestHandlerOptions, i as OperatorScope, j as LogLevel, l as GatewayRequestHandlers, m as ChatInjectParams, n as AuthProfileStore, o as GatewayRequestContext, r as OAuthCredential, s as GatewayRequestHandler, t as AuthProfileCredential, v as WebLoginStartParams, w as webAuthExists, x as logWebSelfId, y as WebLoginWaitParams } from "./types-NR-f-rw-.js";
4
4
  import { WebClient } from "@slack/web-api";
5
5
  import { Skill } from "@mariozechner/pi-coding-agent";
6
6
  import { AgentMessage, AgentTool, AgentToolResult } from "@mariozechner/pi-agent-core";
@@ -168,13 +168,13 @@ declare const ConnectParamsSchema: _sinclair_typebox0.TObject<{
168
168
  minProtocol: _sinclair_typebox0.TInteger;
169
169
  maxProtocol: _sinclair_typebox0.TInteger;
170
170
  client: _sinclair_typebox0.TObject<{
171
- id: _sinclair_typebox0.TUnion<_sinclair_typebox0.TLiteral<"webchat-ui" | "fased-control-ui" | "webchat" | "cli" | "gateway-client" | "fased-macos" | "fased-ios" | "fased-android" | "node-host" | "test" | "fingerprint" | "fased-probe">[]>;
171
+ id: _sinclair_typebox0.TUnion<_sinclair_typebox0.TLiteral<"cli" | "webchat" | "webchat-ui" | "fased-control-ui" | "gateway-client" | "fased-macos" | "fased-ios" | "fased-android" | "node-host" | "test" | "fingerprint" | "fased-probe">[]>;
172
172
  displayName: _sinclair_typebox0.TOptional<_sinclair_typebox0.TString>;
173
173
  version: _sinclair_typebox0.TString;
174
174
  platform: _sinclair_typebox0.TString;
175
175
  deviceFamily: _sinclair_typebox0.TOptional<_sinclair_typebox0.TString>;
176
176
  modelIdentifier: _sinclair_typebox0.TOptional<_sinclair_typebox0.TString>;
177
- mode: _sinclair_typebox0.TUnion<_sinclair_typebox0.TLiteral<"webchat" | "cli" | "test" | "ui" | "backend" | "node" | "probe">[]>;
177
+ mode: _sinclair_typebox0.TUnion<_sinclair_typebox0.TLiteral<"ui" | "backend" | "node" | "cli" | "webchat" | "probe" | "test">[]>;
178
178
  instanceId: _sinclair_typebox0.TOptional<_sinclair_typebox0.TString>;
179
179
  }>;
180
180
  caps: _sinclair_typebox0.TOptional<_sinclair_typebox0.TArray<_sinclair_typebox0.TString>>;
@@ -1407,7 +1407,7 @@ declare class CronService {
1407
1407
  } | {
1408
1408
  readonly ok: true;
1409
1409
  readonly ran: false;
1410
- readonly reason: "running" | "queued";
1410
+ readonly reason: "queued" | "running";
1411
1411
  readonly runId: string;
1412
1412
  readonly detail: string | undefined;
1413
1413
  } | {
@@ -1,13 +1,13 @@
1
- import { An as GATEWAY_CLIENT_IDS, B as INPUT_PROVENANCE_KIND_VALUES, Bn as CLI_DEFAULT_OPERATOR_SCOPES, Hn as resolveLeastPrivilegeOperatorScopesForMethod, Mn as GATEWAY_CLIENT_NAMES, jn as GATEWAY_CLIENT_MODES } from "./runtime-BLknHFGz.js";
1
+ import { An as GATEWAY_CLIENT_IDS, B as INPUT_PROVENANCE_KIND_VALUES, Bn as CLI_DEFAULT_OPERATOR_SCOPES, Hn as resolveLeastPrivilegeOperatorScopesForMethod, Mn as GATEWAY_CLIENT_NAMES, jn as GATEWAY_CLIENT_MODES } from "./runtime-Cv3gX3Wc.js";
2
2
  import { i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir } from "./paths-BEmvSyOV.js";
3
3
  import { _ as shortenHomeInString, a as ensureDir$1, h as resolveUserPath, t as CONFIG_DIR } from "./utils-CYk9EKoq.js";
4
- import { Gn as isPrivateNetworkBaseUrl, Kt as normalizeProviderId$1, Mn as resolveFasedAgentAgentDir, ir as DEFAULT_CONTEXT_TOKENS, n as loadConfig, qn as assertSecretInputResolved, sr as VERSION } from "./config-DutIeFge.js";
4
+ import { Gn as isPrivateNetworkBaseUrl, Kt as normalizeProviderId$1, Mn as resolveFasedAgentAgentDir, lr as VERSION, n as loadConfig, or as DEFAULT_CONTEXT_TOKENS, qn as assertSecretInputResolved } from "./config-DdS0zHiU.js";
5
5
  import { l as resolveAgentIdFromSessionKey } from "./session-key-HSJ2KQTc.js";
6
6
  import { n as logError, t as logDebug } from "./logger-BbFvCoKk.js";
7
7
  import { n as redactSensitiveText } from "./redact-Bm8vu_ju.js";
8
8
  import { n as redactSensitiveUrlLikeString } from "./redact-sensitive-url-dPvnFFsK.js";
9
9
  import { a as normalizeDeviceAuthRole, n as clearDevicePairing, o as normalizeDeviceAuthScopes } from "./device-pairing-D2Yq-_U6.js";
10
- import { i as discoverModels, r as discoverAuthStorage } from "./pi-model-discovery-C5klknQZ.js";
10
+ import { i as discoverModels, r as discoverAuthStorage } from "./pi-model-discovery-ReorOh7W.js";
11
11
  import { i as isSecureWebSocketUrl, t as rawDataToString } from "./ws-CocpWGhl.js";
12
12
  import { createRequire } from "node:module";
13
13
  import path from "node:path";
@@ -1294,6 +1294,7 @@ const ModelsAuthStatusParamsSchema = Type.Object({}, { additionalProperties: fal
1294
1294
  const ModelsAuthStatusKindSchema = Type.Union([
1295
1295
  Type.Literal("ok"),
1296
1296
  Type.Literal("expiring"),
1297
+ Type.Literal("refresh-required"),
1297
1298
  Type.Literal("expired"),
1298
1299
  Type.Literal("missing"),
1299
1300
  Type.Literal("static")
@@ -3068,6 +3069,7 @@ const PresenceEntrySchema = Type.Object({
3068
3069
  host: Type.Optional(NonEmptyString),
3069
3070
  ip: Type.Optional(NonEmptyString),
3070
3071
  version: Type.Optional(NonEmptyString),
3072
+ runtimeSource: Type.Optional(NonEmptyString),
3071
3073
  platform: Type.Optional(NonEmptyString),
3072
3074
  deviceFamily: Type.Optional(NonEmptyString),
3073
3075
  modelIdentifier: Type.Optional(NonEmptyString),
@@ -3160,6 +3162,11 @@ const HelloOkSchema = Type.Object({
3160
3162
  protocol: Type.Integer({ minimum: 1 }),
3161
3163
  server: Type.Object({
3162
3164
  version: NonEmptyString,
3165
+ runtimeSource: Type.Optional(Type.Union([
3166
+ Type.Literal("source-checkout"),
3167
+ Type.Literal("managed-package"),
3168
+ Type.Literal("packaged-runtime")
3169
+ ])),
3163
3170
  connId: NonEmptyString
3164
3171
  }, { additionalProperties: false }),
3165
3172
  features: Type.Object({
@@ -1,17 +1,17 @@
1
- import { Bt as formatDurationPrecise, Ht as enqueueSystemEvent, J as sleepWithAbort, K as buildPairingReply, L as resolveMentionGating, Mr as readStoreAllowFromForDmPolicy, Nr as resolveDmGroupAccessWithCommandGate, Ot as normalizeGroupActivation, Pr as resolveDmGroupAccessWithLists, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, Zt as registerUnhandledRejectionHandler, dt as resolveInboundDebounceMs, fn as buildMentionRegexes, ft as formatInboundEnvelope, kt as parseActivationCommand, ln as hasControlCommand, mn as normalizeMentionText, mt as resolveEnvelopeFormatOptions, nt as recordPendingHistoryEntryIfEnabled, or as createDedupeCache, ot as shouldAckReactionForWhatsApp, q as computeBackoff, st as dispatchReplyWithBufferedBlockDispatcher, un as shouldComputeCommandAuthorized, ut as createInboundDebouncer, vt as getReplyFromConfig } from "./config-schema-Cg6PYSHR.js";
2
- import { C as recordSessionMetaFromInbound, S as readSessionUpdatedAt, _n as resolveChannelGroupRequireMention, bn as resolveGroupSessionKey, gn as resolveChannelGroupPolicy, w as updateLastRoute, x as loadSessionStore } from "./runtime-BLknHFGz.js";
1
+ import { Bt as formatDurationPrecise, Ht as enqueueSystemEvent, J as sleepWithAbort, K as buildPairingReply, L as resolveMentionGating, Mr as readStoreAllowFromForDmPolicy, Nr as resolveDmGroupAccessWithCommandGate, Ot as normalizeGroupActivation, Pr as resolveDmGroupAccessWithLists, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, Zt as registerUnhandledRejectionHandler, dt as resolveInboundDebounceMs, fn as buildMentionRegexes, ft as formatInboundEnvelope, kt as parseActivationCommand, ln as hasControlCommand, mn as normalizeMentionText, mt as resolveEnvelopeFormatOptions, nt as recordPendingHistoryEntryIfEnabled, or as createDedupeCache, ot as shouldAckReactionForWhatsApp, q as computeBackoff, st as dispatchReplyWithBufferedBlockDispatcher, un as shouldComputeCommandAuthorized, ut as createInboundDebouncer, vt as getReplyFromConfig } from "./config-schema-BJQEjMPz.js";
2
+ import { C as recordSessionMetaFromInbound, S as readSessionUpdatedAt, _n as resolveChannelGroupRequireMention, bn as resolveGroupSessionKey, gn as resolveChannelGroupPolicy, w as updateLastRoute, x as loadSessionStore } from "./runtime-Cv3gX3Wc.js";
3
3
  import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-DBPNbQDQ.js";
4
4
  import { i as logVerbose, p as getChildLogger, s as shouldLogVerbose } from "./globals-B_jjtAje.js";
5
5
  import "./paths-BEmvSyOV.js";
6
6
  import { d as normalizeE164, l as isSelfChatMode, m as resolveJidToE164, n as clamp, u as jidToE164, x as toWhatsappJid, y as sleep } from "./utils-CYk9EKoq.js";
7
- import { Cr as formatCliCommand, n as loadConfig } from "./config-DutIeFge.js";
7
+ import { Tr as formatCliCommand, n as loadConfig } from "./config-DdS0zHiU.js";
8
8
  import "./agent-scope-BbgPlhtw.js";
9
9
  import { a as buildGroupHistoryKey, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-HSJ2KQTc.js";
10
10
  import "./accounts-RHZyaB73.js";
11
11
  import "./accounts-CuqIKU8X.js";
12
12
  import "./logger-BbFvCoKk.js";
13
13
  import "./exec-DQ8j4Fm3.js";
14
- import { _ as webAuthExists, c as logWebSelfId, d as pickWebChannel, i as resolveWhatsAppAccount, o as WA_WEB_AUTH_DIR, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-DI5226U8.js";
14
+ import { _ as webAuthExists, c as logWebSelfId, d as pickWebChannel, i as resolveWhatsAppAccount, o as WA_WEB_AUTH_DIR, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-BfdIB9Ud.js";
15
15
  import "./allow-list-BYeKk0Sy.js";
16
16
  import "./redact-Bm8vu_ju.js";
17
17
  import "./github-copilot-token-CUK__1s1.js";
@@ -21,11 +21,11 @@ import "./ip-C70a-YlD.js";
21
21
  import "./ssrf-BZG8Ztod.js";
22
22
  import "./fetch-guard-BuYrl6q2.js";
23
23
  import { n as redactSensitiveUrlLikeString } from "./redact-sensitive-url-dPvnFFsK.js";
24
- import "./send-CUGEhiUa.js";
25
- import { A as resolveDefaultGroupPolicy, M as warnMissingProviderGroupPolicyFallbackOnce, j as resolveOpenProviderRuntimeGroupPolicy } from "./helpers-BCZ9d3fl.js";
26
- import { D as formatLocationText, O as toLocationContext } from "./wsl-JwmI6Zu8.js";
27
- import { a as upsertChannelPairingRequest } from "./pairing-store-D7I1Qmiw.js";
28
- import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-CSUjIQSx.js";
24
+ import "./send-CSob7dn9.js";
25
+ import { A as resolveDefaultGroupPolicy, M as warnMissingProviderGroupPolicyFallbackOnce, j as resolveOpenProviderRuntimeGroupPolicy } from "./helpers-DkauqZNP.js";
26
+ import { D as formatLocationText, O as toLocationContext } from "./wsl-D_I-iL4U.js";
27
+ import { a as upsertChannelPairingRequest } from "./pairing-store-DyghUm9G.js";
28
+ import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-oJRyTNTL.js";
29
29
  import "./tailscale-status-ClsquRGs.js";
30
30
  import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-Bqzm6DC1.js";
31
31
  import "./tokens-BvtlOzVP.js";
@@ -34,40 +34,40 @@ import "./pairing-token-N_6Jbt1L.js";
34
34
  import "./diagnostic-Dfn1iERm.js";
35
35
  import "./diagnostic-session-state-HO94DMou.js";
36
36
  import { t as redactIdentifier } from "./redact-identifier-Q3tkvxhm.js";
37
- import "./optional-runtime-dependency-BEBP4VFJ.js";
38
- import "./image-ops-B-QR_M9Z.js";
39
- import "./wallet-status-CQI89c_6.js";
40
- import "./pi-model-discovery-C5klknQZ.js";
41
- import "./runtime-dependency-C5rJfC0u.js";
37
+ import "./optional-runtime-dependency-DaMkPVe_.js";
38
+ import "./image-ops-DmSjpAeh.js";
39
+ import "./wallet-status-ClmXigGN.js";
40
+ import "./pi-model-discovery-ReorOh7W.js";
41
+ import "./runtime-dependency-p_iKbESf.js";
42
42
  import "./ws-CocpWGhl.js";
43
43
  import "./path-alias-guards-Dg3gU-MA.js";
44
44
  import "./fs-safe-BG-VzVkL.js";
45
- import { n as resolveMarkdownTableMode } from "./markdown-tables-B1Tx7c77.js";
46
- import { n as loadWebMedia, u as getAgentScopedMediaLocalRoots } from "./media-BwsqooWC.js";
47
- import "./send-Bd3Z-jAd.js";
48
- import { a as saveMediaBuffer } from "./outbound-attachment-L1q40kiu.js";
45
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-BX7JXDUV.js";
46
+ import { n as loadWebMedia, u as getAgentScopedMediaLocalRoots } from "./media-DyzsScOp.js";
47
+ import "./send-B3RAELvw.js";
48
+ import { a as saveMediaBuffer } from "./outbound-attachment-M0NCUSG-.js";
49
49
  import "./fetch-Cu-ahkie.js";
50
- import "./thread-bindings.state-ssxdG7xV.js";
50
+ import "./thread-bindings.state-CpAQrGco.js";
51
51
  import "./memory-search-C3C0bD2H.js";
52
- import "./manager-Dhq3SXpO.js";
52
+ import "./manager-DGZsMQWR.js";
53
53
  import "./query-expansion-Zr9qQixm.js";
54
- import "./common-Cjm8psuW.js";
55
- import "./commands-registry-DJ0pfCcY.js";
56
- import "./skill-commands-BybEjJ1_.js";
54
+ import "./common-Dx4sUa9f.js";
55
+ import "./commands-registry-Cjo7OjIf.js";
56
+ import "./skill-commands-BqpZG5nW.js";
57
57
  import { t as finalizeInboundContext } from "./inbound-context-BFnIdcqI.js";
58
58
  import "./directory-live-DatqU-eS.js";
59
- import "./targets-DskkhJAp.js";
59
+ import "./targets-VrYeAmeT.js";
60
60
  import "./sandbox-paths-lj7_EVuA.js";
61
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-B7vZ3nKp.js";
61
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Ce08Fx-G.js";
62
62
  import "./render-Bwu_WxwA.js";
63
- import { t as convertMarkdownTables } from "./tables-CVDOT5dX.js";
63
+ import { t as convertMarkdownTables } from "./tables-Cij4iAXw.js";
64
64
  import { n as recordChannelActivity } from "./channel-activity-Cg1xRoc2.js";
65
- import { r as setActiveWebListener } from "./active-listener-Ss4UKXZb.js";
65
+ import { r as setActiveWebListener } from "./active-listener-CIP_Ht8d.js";
66
66
  import "./shared-clhhbWN3.js";
67
- import "./whatsapp-heartbeat-DyJasLDB.js";
68
- import { i as markdownToWhatsApp, n as sendMessageWhatsApp, r as sendReactionWhatsApp } from "./outbound-BqWgaC5M.js";
69
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-D2zmelOL.js";
70
- import { t as loginWeb } from "./login-BFvQxf9o.js";
67
+ import "./whatsapp-heartbeat-Cr9K5Sil.js";
68
+ import { i as markdownToWhatsApp, n as sendMessageWhatsApp, r as sendReactionWhatsApp } from "./outbound-X-m2mBZn.js";
69
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-DKJGakm1.js";
70
+ import { t as loginWeb } from "./login-DB9LIbi8.js";
71
71
  import { randomUUID } from "node:crypto";
72
72
  import { DisconnectReason, downloadMediaMessage, extractMessageContent, getContentType, isJidGroup, normalizeMessageContent } from "@whiskeysockets/baileys";
73
73
 
@@ -1,15 +1,15 @@
1
- import "./runtime-BLknHFGz.js";
1
+ import "./runtime-Cv3gX3Wc.js";
2
2
  import "./subsystem-DBPNbQDQ.js";
3
3
  import "./globals-B_jjtAje.js";
4
4
  import "./paths-BEmvSyOV.js";
5
5
  import "./utils-CYk9EKoq.js";
6
- import "./config-DutIeFge.js";
6
+ import "./config-DdS0zHiU.js";
7
7
  import "./agent-scope-BbgPlhtw.js";
8
8
  import "./accounts-RHZyaB73.js";
9
9
  import "./accounts-CuqIKU8X.js";
10
10
  import "./logger-BbFvCoKk.js";
11
11
  import "./exec-DQ8j4Fm3.js";
12
- import { i as resolveWhatsAppAccount } from "./accounts-DI5226U8.js";
12
+ import { i as resolveWhatsAppAccount } from "./accounts-BfdIB9Ud.js";
13
13
  import "./redact-Bm8vu_ju.js";
14
14
  import "./github-copilot-token-CUK__1s1.js";
15
15
  import "./retry-DstNBhDW.js";
@@ -17,19 +17,19 @@ import "./paths-CTZ2RS_E.js";
17
17
  import "./ip-C70a-YlD.js";
18
18
  import "./ssrf-BZG8Ztod.js";
19
19
  import "./fetch-guard-BuYrl6q2.js";
20
- import "./chunk-CSUjIQSx.js";
21
- import "./optional-runtime-dependency-BEBP4VFJ.js";
22
- import "./image-ops-B-QR_M9Z.js";
20
+ import "./chunk-oJRyTNTL.js";
21
+ import "./optional-runtime-dependency-DaMkPVe_.js";
22
+ import "./image-ops-DmSjpAeh.js";
23
23
  import "./path-alias-guards-Dg3gU-MA.js";
24
24
  import "./fs-safe-BG-VzVkL.js";
25
- import "./markdown-tables-B1Tx7c77.js";
26
- import "./media-BwsqooWC.js";
27
- import { a as jsonResult, c as readReactionParams, d as readStringParam, n as createActionGate, t as ToolAuthorizationError } from "./common-Cjm8psuW.js";
25
+ import "./markdown-tables-BX7JXDUV.js";
26
+ import "./media-DyzsScOp.js";
27
+ import { a as jsonResult, c as readReactionParams, d as readStringParam, n as createActionGate, t as ToolAuthorizationError } from "./common-Dx4sUa9f.js";
28
28
  import "./render-Bwu_WxwA.js";
29
- import "./tables-CVDOT5dX.js";
30
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-CCIyBb5H.js";
31
- import { r as sendReactionWhatsApp } from "./outbound-BqWgaC5M.js";
32
- import "./session-D2zmelOL.js";
29
+ import "./tables-Cij4iAXw.js";
30
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-Chznq8rS.js";
31
+ import { r as sendReactionWhatsApp } from "./outbound-X-m2mBZn.js";
32
+ import "./session-DKJGakm1.js";
33
33
 
34
34
  //#region src/agents/tools/whatsapp-target-auth.ts
35
35
  function resolveAuthorizedWhatsAppOutboundTarget(params) {
@@ -1,9 +1,9 @@
1
- import { x as loadSessionStore } from "./runtime-BLknHFGz.js";
1
+ import { x as loadSessionStore } from "./runtime-Cv3gX3Wc.js";
2
2
  import { f as normalizeChatChannelId } from "./subsystem-DBPNbQDQ.js";
3
3
  import { d as normalizeE164 } from "./utils-CYk9EKoq.js";
4
4
  import { f as DEFAULT_ACCOUNT_ID } from "./session-key-HSJ2KQTc.js";
5
5
  import { l as resolveStorePath } from "./paths-CTZ2RS_E.js";
6
- import { r as readChannelAllowFromStoreSync } from "./pairing-store-D7I1Qmiw.js";
6
+ import { r as readChannelAllowFromStoreSync } from "./pairing-store-DyghUm9G.js";
7
7
 
8
8
  //#region src/channels/plugins/whatsapp-heartbeat.ts
9
9
  function getSessionRecipients(cfg) {
@@ -1,8 +1,8 @@
1
1
  import { n as DEFAULT_ACCOUNT_ID, r as normalizeAccountId } from "./session-key--_1zVBRB.js";
2
2
  import { At as FasedAgentConfig, Cn as DmPolicy, F as ChannelAccountSnapshot, J as ChannelMessageActionAdapter, Wt as WhatsAppAccountConfig, it as ChannelStatusIssue, n as ChannelPlugin, r as ChannelOnboardingAdapter, u as ChannelMessageActionName, ut as getChatChannelMeta, wn as GroupPolicy } from "./types.plugin-CvUiB3Kh.js";
3
- import { Bt as resolveDefaultGroupPolicy, Cn as readStringParam, Gt as listSlackDirectoryGroupsFromConfig, Jt as listTelegramDirectoryPeersFromConfig, Kt as listSlackDirectoryPeersFromConfig, Ut as listDiscordDirectoryGroupsFromConfig, Vt as resolveOpenProviderRuntimeGroupPolicy, Wt as listDiscordDirectoryPeersFromConfig, Xt as listWhatsAppDirectoryPeersFromConfig, Yt as listWhatsAppDirectoryGroupsFromConfig, _ as FasedAgentPluginApi, qt as listTelegramDirectoryGroupsFromConfig, t as PluginRuntime, yn as createActionGate, zt as resolveAllowlistProviderRuntimeGroupPolicy } from "./types-CXLEOrJX.js";
4
- import { D as normalizeE164 } from "./types-CJGVZX6j.js";
5
- import { a as buildChannelConfigSchema, c as emptyPluginConfigSchema, i as setAccountEnabledInConfigSection, n as formatPairingApproveHint, o as applyAccountNameToChannelSection, r as deleteAccountFromConfigSection, s as migrateBaseNameToDefaultAccount, t as PAIRING_APPROVED_MESSAGE } from "./pairing-message-DWXHX-jt.js";
3
+ import { Bt as resolveDefaultGroupPolicy, Cn as readStringParam, Gt as listSlackDirectoryGroupsFromConfig, Jt as listTelegramDirectoryPeersFromConfig, Kt as listSlackDirectoryPeersFromConfig, Ut as listDiscordDirectoryGroupsFromConfig, Vt as resolveOpenProviderRuntimeGroupPolicy, Wt as listDiscordDirectoryPeersFromConfig, Xt as listWhatsAppDirectoryPeersFromConfig, Yt as listWhatsAppDirectoryGroupsFromConfig, _ as FasedAgentPluginApi, qt as listTelegramDirectoryGroupsFromConfig, t as PluginRuntime, yn as createActionGate, zt as resolveAllowlistProviderRuntimeGroupPolicy } from "./types-CKR2Lvsa.js";
4
+ import { D as normalizeE164 } from "./types-NR-f-rw-.js";
5
+ import { a as buildChannelConfigSchema, c as emptyPluginConfigSchema, i as setAccountEnabledInConfigSection, n as formatPairingApproveHint, o as applyAccountNameToChannelSection, r as deleteAccountFromConfigSection, s as migrateBaseNameToDefaultAccount, t as PAIRING_APPROVED_MESSAGE } from "./pairing-message-BaQiXKLE.js";
6
6
  import { _ as buildTokenChannelStatusSummary, m as resolveWhatsAppGroupToolPolicy, p as resolveWhatsAppGroupRequireMention } from "./group-mentions-DLOOve8d.js";
7
7
  import { z } from "zod";
8
8
 
@@ -12,9 +12,9 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
12
12
  capabilities: z.ZodOptional<z.ZodArray<z.ZodString>>;
13
13
  markdown: z.ZodOptional<z.ZodObject<{
14
14
  tables: z.ZodOptional<z.ZodEnum<{
15
- code: "code";
16
15
  off: "off";
17
16
  bullets: "bullets";
17
+ code: "code";
18
18
  }>>;
19
19
  }, z.core.$strict>>;
20
20
  configWrites: z.ZodOptional<z.ZodBoolean>;
@@ -22,9 +22,9 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
22
22
  messagePrefix: z.ZodOptional<z.ZodString>;
23
23
  responsePrefix: z.ZodOptional<z.ZodString>;
24
24
  dmPolicy: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
25
+ open: "open";
25
26
  disabled: "disabled";
26
27
  allowlist: "allowlist";
27
- open: "open";
28
28
  pairing: "pairing";
29
29
  }>>>;
30
30
  selfChatMode: z.ZodOptional<z.ZodBoolean>;
@@ -32,9 +32,9 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
32
32
  defaultTo: z.ZodOptional<z.ZodString>;
33
33
  groupAllowFrom: z.ZodOptional<z.ZodArray<z.ZodString>>;
34
34
  groupPolicy: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
35
+ open: "open";
35
36
  disabled: "disabled";
36
37
  allowlist: "allowlist";
37
- open: "open";
38
38
  }>>>;
39
39
  historyLimit: z.ZodOptional<z.ZodNumber>;
40
40
  dmHistoryLimit: z.ZodOptional<z.ZodNumber>;
@@ -69,8 +69,8 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
69
69
  emoji: z.ZodOptional<z.ZodString>;
70
70
  direct: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
71
71
  group: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
72
- always: "always";
73
72
  never: "never";
73
+ always: "always";
74
74
  mentions: "mentions";
75
75
  }>>>;
76
76
  }, z.core.$strict>>;
@@ -84,9 +84,9 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
84
84
  capabilities: z.ZodOptional<z.ZodArray<z.ZodString>>;
85
85
  markdown: z.ZodOptional<z.ZodObject<{
86
86
  tables: z.ZodOptional<z.ZodEnum<{
87
- code: "code";
88
87
  off: "off";
89
88
  bullets: "bullets";
89
+ code: "code";
90
90
  }>>;
91
91
  }, z.core.$strict>>;
92
92
  configWrites: z.ZodOptional<z.ZodBoolean>;
@@ -94,9 +94,9 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
94
94
  messagePrefix: z.ZodOptional<z.ZodString>;
95
95
  responsePrefix: z.ZodOptional<z.ZodString>;
96
96
  dmPolicy: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
97
+ open: "open";
97
98
  disabled: "disabled";
98
99
  allowlist: "allowlist";
99
- open: "open";
100
100
  pairing: "pairing";
101
101
  }>>>;
102
102
  selfChatMode: z.ZodOptional<z.ZodBoolean>;
@@ -104,9 +104,9 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
104
104
  defaultTo: z.ZodOptional<z.ZodString>;
105
105
  groupAllowFrom: z.ZodOptional<z.ZodArray<z.ZodString>>;
106
106
  groupPolicy: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
107
+ open: "open";
107
108
  disabled: "disabled";
108
109
  allowlist: "allowlist";
109
- open: "open";
110
110
  }>>>;
111
111
  historyLimit: z.ZodOptional<z.ZodNumber>;
112
112
  dmHistoryLimit: z.ZodOptional<z.ZodNumber>;
@@ -141,8 +141,8 @@ declare const WhatsAppConfigSchema: z.ZodObject<{
141
141
  emoji: z.ZodOptional<z.ZodString>;
142
142
  direct: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
143
143
  group: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
144
- always: "always";
145
144
  never: "never";
145
+ always: "always";
146
146
  mentions: "mentions";
147
147
  }>>>;
148
148
  }, z.core.$strict>>;
@@ -1,30 +1,30 @@
1
- import { $t as resolveWhatsAppGroupToolPolicy, At as resolveWhatsAppMentionStripPatterns, Mt as normalizeWhatsAppAllowFromEntries, Nn as getChatChannelMeta, Nt as normalizeWhatsAppMessagingTarget, Qt as resolveWhatsAppGroupRequireMention, _t as listWhatsAppDirectoryPeersFromConfig, dt as listDiscordDirectoryPeersFromConfig, ft as listSlackDirectoryGroupsFromConfig, gt as listWhatsAppDirectoryGroupsFromConfig, ht as listTelegramDirectoryPeersFromConfig, jt as looksLikeWhatsAppTargetId, kt as resolveWhatsAppGroupIntroHint, mt as listTelegramDirectoryGroupsFromConfig, pt as listSlackDirectoryPeersFromConfig, ut as listDiscordDirectoryGroupsFromConfig } from "./runtime-BLknHFGz.js";
1
+ import { $t as resolveWhatsAppGroupToolPolicy, At as resolveWhatsAppMentionStripPatterns, Mt as normalizeWhatsAppAllowFromEntries, Nn as getChatChannelMeta, Nt as normalizeWhatsAppMessagingTarget, Qt as resolveWhatsAppGroupRequireMention, _t as listWhatsAppDirectoryPeersFromConfig, dt as listDiscordDirectoryPeersFromConfig, ft as listSlackDirectoryGroupsFromConfig, gt as listWhatsAppDirectoryGroupsFromConfig, ht as listTelegramDirectoryPeersFromConfig, jt as looksLikeWhatsAppTargetId, kt as resolveWhatsAppGroupIntroHint, mt as listTelegramDirectoryGroupsFromConfig, pt as listSlackDirectoryPeersFromConfig, ut as listDiscordDirectoryGroupsFromConfig } from "./runtime-Cv3gX3Wc.js";
2
2
  import "./subsystem-DBPNbQDQ.js";
3
3
  import "./globals-B_jjtAje.js";
4
4
  import "./paths-BEmvSyOV.js";
5
5
  import { c as isRecord, d as normalizeE164, f as pathExists } from "./utils-CYk9EKoq.js";
6
- import { Cr as formatCliCommand, l as WhatsAppConfigSchema } from "./config-DutIeFge.js";
6
+ import { Tr as formatCliCommand, l as WhatsAppConfigSchema } from "./config-DdS0zHiU.js";
7
7
  import "./agent-scope-BbgPlhtw.js";
8
8
  import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
9
9
  import "./accounts-RHZyaB73.js";
10
10
  import "./accounts-CuqIKU8X.js";
11
11
  import "./logger-BbFvCoKk.js";
12
12
  import "./exec-DQ8j4Fm3.js";
13
- import { a as resolveWhatsAppAuthDir, i as resolveWhatsAppAccount, n as listWhatsAppAccountIds, r as resolveDefaultWhatsAppAccountId } from "./accounts-DI5226U8.js";
13
+ import { a as resolveWhatsAppAuthDir, i as resolveWhatsAppAccount, n as listWhatsAppAccountIds, r as resolveDefaultWhatsAppAccountId } from "./accounts-BfdIB9Ud.js";
14
14
  import "./redact-Bm8vu_ju.js";
15
15
  import "./github-copilot-token-CUK__1s1.js";
16
16
  import "./retry-DstNBhDW.js";
17
17
  import "./paths-CTZ2RS_E.js";
18
- import { a as deleteAccountFromConfigSection, c as formatPairingApproveHint, n as applyAccountNameToChannelSection, o as setAccountEnabledInConfigSection, r as migrateBaseNameToDefaultAccount, s as buildChannelConfigSchema, t as PAIRING_APPROVED_MESSAGE, u as emptyPluginConfigSchema } from "./pairing-message-CZBahREg.js";
19
- import { A as resolveDefaultGroupPolicy, D as formatDocsLink, g as resolveOnboardingAccountId, h as resolveAccountIdForConfigure, i as normalizeAllowFromEntries, j as resolveOpenProviderRuntimeGroupPolicy, k as resolveAllowlistProviderRuntimeGroupPolicy, w as buildTokenChannelStatusSummary, x as splitOnboardingEntries } from "./helpers-BCZ9d3fl.js";
20
- import "./pairing-store-D7I1Qmiw.js";
21
- import "./optional-runtime-dependency-BEBP4VFJ.js";
22
- import "./image-ops-B-QR_M9Z.js";
23
- import { d as readStringParam, n as createActionGate } from "./common-Cjm8psuW.js";
18
+ import { a as deleteAccountFromConfigSection, c as formatPairingApproveHint, n as applyAccountNameToChannelSection, o as setAccountEnabledInConfigSection, r as migrateBaseNameToDefaultAccount, s as buildChannelConfigSchema, t as PAIRING_APPROVED_MESSAGE, u as emptyPluginConfigSchema } from "./pairing-message-hnmpJlW2.js";
19
+ import { A as resolveDefaultGroupPolicy, D as formatDocsLink, g as resolveOnboardingAccountId, h as resolveAccountIdForConfigure, i as normalizeAllowFromEntries, j as resolveOpenProviderRuntimeGroupPolicy, k as resolveAllowlistProviderRuntimeGroupPolicy, w as buildTokenChannelStatusSummary, x as splitOnboardingEntries } from "./helpers-DkauqZNP.js";
20
+ import "./pairing-store-DyghUm9G.js";
21
+ import "./optional-runtime-dependency-DaMkPVe_.js";
22
+ import "./image-ops-DmSjpAeh.js";
23
+ import { d as readStringParam, n as createActionGate } from "./common-Dx4sUa9f.js";
24
24
  import { n as asString, r as collectIssuesForEnabledAccounts } from "./shared-clhhbWN3.js";
25
25
  import "./channel-core-BOkyXXLa.js";
26
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-CCIyBb5H.js";
27
- import { t as resolveWhatsAppHeartbeatRecipients } from "./whatsapp-heartbeat-DyJasLDB.js";
26
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-Chznq8rS.js";
27
+ import { t as resolveWhatsAppHeartbeatRecipients } from "./whatsapp-heartbeat-Cr9K5Sil.js";
28
28
  import path from "node:path";
29
29
 
30
30
  //#region src/config/merge-config.ts
@@ -293,7 +293,7 @@ const whatsappOnboardingAdapter = {
293
293
  message: linked ? "WhatsApp already linked. Re-link now?" : "Link WhatsApp now (QR)?",
294
294
  initialValue: !linked
295
295
  })) try {
296
- const { loginWeb } = await import("./login-BFvQxf9o.js").then((n) => n.n);
296
+ const { loginWeb } = await import("./login-DB9LIbi8.js").then((n) => n.n);
297
297
  await loginWeb(false, void 0, runtime, accountId);
298
298
  } catch (err) {
299
299
  runtime.error(`WhatsApp login failed: ${String(err)}`);
@@ -1,10 +1,10 @@
1
1
  import { t as createSubsystemLogger } from "./subsystem-DBPNbQDQ.js";
2
2
  import { c as expandHomePrefix } from "./paths-BEmvSyOV.js";
3
3
  import { t as CONFIG_DIR } from "./utils-CYk9EKoq.js";
4
- import { Ft as resolveTelegramPreviewStreamMode } from "./config-DutIeFge.js";
4
+ import { Ft as resolveTelegramPreviewStreamMode } from "./config-DdS0zHiU.js";
5
5
  import { p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
6
- import { n as readChannelAllowFromStore } from "./pairing-store-D7I1Qmiw.js";
7
- import { h as normalizeMimeType, u as getFileExtension } from "./image-ops-B-QR_M9Z.js";
6
+ import { n as readChannelAllowFromStore } from "./pairing-store-DyghUm9G.js";
7
+ import { h as normalizeMimeType, u as getFileExtension } from "./image-ops-DmSjpAeh.js";
8
8
  import path from "node:path";
9
9
  import fs, { readFileSync } from "node:fs";
10
10
  import JSON5 from "json5";