@symerian/symi 2.2.0 → 2.2.1

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 (69) hide show
  1. package/dist/build-info.json +3 -3
  2. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  3. package/dist/control-ui/js/app.js +4 -4
  4. package/dist/control-ui/js/models.js +2 -0
  5. package/dist/plugin-sdk/{accounts-BtaOa4z_.js → accounts-BToL3HlP.js} +1 -1
  6. package/dist/plugin-sdk/{accounts-Ddm33hQm.js → accounts-D9zGZU5t.js} +3 -3
  7. package/dist/plugin-sdk/{accounts-s-AdhXVR.js → accounts-Dtszw3Zn.js} +1 -1
  8. package/dist/plugin-sdk/{active-listener-BXYeALs0.js → active-listener-bEk__wbB.js} +1 -1
  9. package/dist/plugin-sdk/{agent-scope-CYYpcO9W.js → agent-scope-C3gMMKCU.js} +2 -2
  10. package/dist/plugin-sdk/{api-key-rotation-BSfyE1_4.js → api-key-rotation-BRvrAgJE.js} +1 -1
  11. package/dist/plugin-sdk/{audio-preflight-IluEXChS.js → audio-preflight-Djl8hQTI.js} +24 -24
  12. package/dist/plugin-sdk/{bindings-C7hRtgYW.js → bindings-BbwoUGPx.js} +2 -2
  13. package/dist/plugin-sdk/{channel-activity-DoC1xtDu.js → channel-activity-Ji7f0gqq.js} +1 -1
  14. package/dist/plugin-sdk/{channel-web-CcPB6K6E.js → channel-web-BkzECNa5.js} +22 -22
  15. package/dist/plugin-sdk/{chrome-DmQSQaqJ.js → chrome-BazxJffV.js} +3 -3
  16. package/dist/plugin-sdk/{chunk-Dw2XBYXv.js → chunk-jvk9axTQ.js} +1 -1
  17. package/dist/plugin-sdk/{command-format-GKSevep4.js → command-format-DSdvQ_M5.js} +1 -1
  18. package/dist/plugin-sdk/{commands-registry-B8LOxvF1.js → commands-registry-BybwbMjk.js} +4 -4
  19. package/dist/plugin-sdk/{config-77WETCnu.js → config-DmDmnRKy.js} +9 -9
  20. package/dist/plugin-sdk/{deliver-cf5qNrBO.js → deliver-BnNdPE7h.js} +10 -10
  21. package/dist/plugin-sdk/{diagnostic-05pm5Rxi.js → diagnostic-mFf4i4G9.js} +1 -1
  22. package/dist/plugin-sdk/{image-dWPmKTSh.js → image-90GffxnB.js} +4 -4
  23. package/dist/plugin-sdk/{image-ops-BlQR__MN.js → image-ops-Bnp6LXEx.js} +1 -1
  24. package/dist/plugin-sdk/index.js +53 -53
  25. package/dist/plugin-sdk/{ir-BJ6BHE5b.js → ir-Fb3qpcis.js} +4 -4
  26. package/dist/plugin-sdk/{local-roots-BHLNSI8U.js → local-roots-Ckk1QfzI.js} +3 -3
  27. package/dist/plugin-sdk/{login-8KaFO-QT.js → login-DgHVmRH6.js} +7 -7
  28. package/dist/plugin-sdk/{login-qr-CTqWLxv_.js → login-qr-Z7oc-u0S.js} +9 -9
  29. package/dist/plugin-sdk/{manager-BFSY5TBY.js → manager-R9tHcYof.js} +8 -8
  30. package/dist/plugin-sdk/{manifest-registry-CPnHl_K3.js → manifest-registry-B3ugY9-f.js} +1 -1
  31. package/dist/plugin-sdk/{markdown-tables-BoYFajMu.js → markdown-tables-Dfaqilz6.js} +1 -1
  32. package/dist/plugin-sdk/{message-channel-COTAJzHd.js → message-channel-BdI5Ra9S.js} +1 -1
  33. package/dist/plugin-sdk/{model-selection-BrjdiXHy.js → model-selection-CHfjhxOQ.js} +4 -4
  34. package/dist/plugin-sdk/{outbound-BJk8NQao.js → outbound-Docm16hy.js} +7 -7
  35. package/dist/plugin-sdk/{outbound-attachment-CnslKL38.js → outbound-attachment-DnVQfTG2.js} +2 -2
  36. package/dist/plugin-sdk/{pi-auth-json-BayNsPyX.js → pi-auth-json-Bz_APjiL.js} +5 -5
  37. package/dist/plugin-sdk/{pi-embedded-helpers-DTXrf1Tk.js → pi-embedded-helpers-DYLRigcQ.js} +17 -17
  38. package/dist/plugin-sdk/{plugins-BNByVCIH.js → plugins-BbAvhC25.js} +4 -4
  39. package/dist/plugin-sdk/{pw-ai-7DLi9ZE5.js → pw-ai-B17MBz0Q.js} +8 -8
  40. package/dist/plugin-sdk/{qmd-manager-CH0XbIHf.js → qmd-manager-mjKcdwVr.js} +4 -4
  41. package/dist/plugin-sdk/{registry-D0xTnUWt.js → registry--_pGht6S.js} +2 -2
  42. package/dist/plugin-sdk/{replies-DVOjHJOV.js → replies-CVa02kkQ.js} +3 -3
  43. package/dist/plugin-sdk/{reply-Ci83lFPb.js → reply-ByQhiL4m.js} +78 -78
  44. package/dist/plugin-sdk/{reply-prefix-uxfMZW4p.js → reply-prefix-BHuV5t70.js} +1 -1
  45. package/dist/plugin-sdk/{resolve-outbound-target-BiyAyTWz.js → resolve-outbound-target-BkCUbYGV.js} +2 -2
  46. package/dist/plugin-sdk/{resolve-route-B3CCBumQ.js → resolve-route-D3JH_D2N.js} +3 -3
  47. package/dist/plugin-sdk/{retry-CwQ_iIj8.js → retry-ilSJqnz9.js} +1 -1
  48. package/dist/plugin-sdk/{runner-DsKKlo3l.js → runner-BlSbbnXi.js} +9 -9
  49. package/dist/plugin-sdk/{send-Byzw6epu.js → send-3oIQMt_U.js} +6 -6
  50. package/dist/plugin-sdk/{send-BmNYgEW_.js → send-B09RXfg-.js} +10 -10
  51. package/dist/plugin-sdk/{send-CXHBNSyM.js → send-Clm68RGe.js} +6 -6
  52. package/dist/plugin-sdk/{send-UoN0iJP3.js → send-DlBkzGTU.js} +7 -7
  53. package/dist/plugin-sdk/{send-DhGx53iH.js → send-a-DZlwoz.js} +10 -10
  54. package/dist/plugin-sdk/{session-DGWsCClR.js → session-BpgZAHo5.js} +4 -4
  55. package/dist/plugin-sdk/{skill-commands-BLeKP20L.js → skill-commands-C3WAU00B.js} +5 -5
  56. package/dist/plugin-sdk/{skills-_yTP47Cd.js → skills-B1GeRYlu.js} +7 -7
  57. package/dist/plugin-sdk/{sqlite-CxAR5ttJ.js → sqlite-Cq_7Cg4E.js} +1 -1
  58. package/dist/plugin-sdk/{store-BdrNabcU.js → store-Do3t33-c.js} +2 -2
  59. package/dist/plugin-sdk/{subsystem-B2uDN3TV.js → subsystem-Coz2AgU8.js} +1 -1
  60. package/dist/plugin-sdk/{tables-DNwXwNFa.js → tables-DR0NmBeH.js} +1 -1
  61. package/dist/plugin-sdk/{target-errors-Paro1BjP.js → target-errors-B7YyMnIi.js} +2 -2
  62. package/dist/plugin-sdk/{thinking-CXqf7WTe.js → thinking-DCNUIAHY.js} +5 -5
  63. package/dist/plugin-sdk/{tokens-bC3UVmVH.js → tokens-CWMflosr.js} +1 -1
  64. package/dist/plugin-sdk/{tool-images-HJ2sfZDV.js → tool-images-D7Lno-TE.js} +2 -2
  65. package/dist/plugin-sdk/{tool-loop-detection-BVA6fax-.js → tool-loop-detection-edmW8ZiF.js} +2 -2
  66. package/dist/plugin-sdk/web-CB_T4Hd2.js +65 -0
  67. package/dist/plugin-sdk/{whatsapp-actions-ClW9_Bzt.js → whatsapp-actions-No_TGqkY.js} +21 -21
  68. package/package.json +1 -1
  69. package/dist/plugin-sdk/web-Bsc3iJ9r.js +0 -65
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.2.0",
3
- "commit": "bec35e306becc713141c7c11462011af766436f5",
4
- "builtAt": "2026-04-04T23:25:20.309Z"
2
+ "version": "2.2.1",
3
+ "commit": "29070113bf2c77aed7eff37377212aa8cd7c4b0f",
4
+ "builtAt": "2026-04-05T01:49:42.859Z"
5
5
  }
@@ -1 +1 @@
1
- e2296a984f5a05865fd11c39ff98e67a8248f252383286e9acfaade5c2650501
1
+ 41c7e4e2cd10c73e3c8bbb357c99f792c772539452e438197187ebdb68059042
@@ -100,7 +100,7 @@ function updateStream(text) {
100
100
  responseArea.scrollTop = responseArea.scrollHeight;
101
101
  }
102
102
 
103
- function closeStreamBubble(model = "claude-sonnet-4-6") {
103
+ function closeStreamBubble(model) {
104
104
  if (!streamBubble) {
105
105
  return;
106
106
  }
@@ -135,7 +135,7 @@ function closeStreamBubble(model = "claude-sonnet-4-6") {
135
135
  const footer = document.createElement("div");
136
136
  footer.className = "telemetry";
137
137
  footer.innerHTML = `
138
- <span class="tele-item">✦ ${model}</span>
138
+ <span class="tele-item">✦ ${model.includes("/") ? model.split("/").slice(1).join("/") : model}</span>
139
139
  <span class="tele-sep">·</span>
140
140
  <span class="tele-item">${chars} tokens</span>
141
141
  <span class="tele-sep">·</span>
@@ -590,7 +590,7 @@ function handleGatewayEvent(event) {
590
590
  if (typeof window.closeLiveThinking === "function") {
591
591
  window.closeLiveThinking();
592
592
  }
593
- closeStreamBubble();
593
+ closeStreamBubble(window.activeModelId || "unknown model");
594
594
  setAgentStatus("done");
595
595
  isStreaming = false;
596
596
  currentRunId = null;
@@ -606,7 +606,7 @@ function handleGatewayEvent(event) {
606
606
  window.closeLiveThinking();
607
607
  }
608
608
  if (streamBubble) {
609
- closeStreamBubble();
609
+ closeStreamBubble(window.activeModelId || "unknown model");
610
610
  }
611
611
  if (thinkingEl) {
612
612
  thinkingEl.remove();
@@ -35,6 +35,7 @@
35
35
  currentHash = cfg.hash || null;
36
36
  const primaryId = cfg.config?.agents?.defaults?.model?.primary || "";
37
37
  setActive(idToKey[primaryId] || "");
38
+ window.activeModelId = primaryId;
38
39
  statusEl.textContent = "";
39
40
  } catch (err) {
40
41
  console.warn("[models] init failed:", err.message);
@@ -48,6 +49,7 @@
48
49
  return;
49
50
  }
50
51
  setActive(which);
52
+ window.activeModelId = newId;
51
53
  statusEl.textContent = "switching…";
52
54
 
53
55
  try {
@@ -1,5 +1,5 @@
1
1
  import { p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
- import { _ as createAccountListHelpers } from "./accounts-Ddm33hQm.js";
2
+ import { _ as createAccountListHelpers } from "./accounts-D9zGZU5t.js";
3
3
 
4
4
  //#region src/signal/accounts.ts
5
5
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("signal");
@@ -1,8 +1,8 @@
1
1
  import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
2
  import { a as resolveOAuthDir } from "./paths-DR2yt_mP.js";
3
- import { P as resolveUserPath, W as info, X as success, k as jidToE164, tt as getChildLogger } from "./registry-D0xTnUWt.js";
4
- import { i as defaultRuntime } from "./subsystem-B2uDN3TV.js";
5
- import { t as formatCliCommand } from "./command-format-GKSevep4.js";
3
+ import { P as resolveUserPath, W as info, X as success, k as jidToE164, tt as getChildLogger } from "./registry--_pGht6S.js";
4
+ import { i as defaultRuntime } from "./subsystem-Coz2AgU8.js";
5
+ import { t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
6
6
  import fs from "node:fs";
7
7
  import path from "node:path";
8
8
  import fs$1 from "node:fs/promises";
@@ -1,5 +1,5 @@
1
1
  import { p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
- import { _ as createAccountListHelpers } from "./accounts-Ddm33hQm.js";
2
+ import { _ as createAccountListHelpers } from "./accounts-D9zGZU5t.js";
3
3
 
4
4
  //#region src/imessage/accounts.ts
5
5
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("imessage");
@@ -1,5 +1,5 @@
1
1
  import { f as DEFAULT_ACCOUNT_ID } from "./session-key-C_0eELjb.js";
2
- import { t as formatCliCommand } from "./command-format-GKSevep4.js";
2
+ import { t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
3
3
 
4
4
  //#region src/web/active-listener.ts
5
5
  const listeners = /* @__PURE__ */ new Map();
@@ -1,7 +1,7 @@
1
1
  import { _ as isCronSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, v as isSubagentSessionKey, y as parseAgentSessionKey } from "./session-key-C_0eELjb.js";
2
2
  import { s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-DR2yt_mP.js";
3
- import { P as resolveUserPath, U as danger, W as info, Y as shouldLogVerbose, Z as warn, j as pathExists, nt as getLogger, q as logVerboseConsole } from "./registry-D0xTnUWt.js";
4
- import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
3
+ import { P as resolveUserPath, U as danger, W as info, Y as shouldLogVerbose, Z as warn, j as pathExists, nt as getLogger, q as logVerboseConsole } from "./registry--_pGht6S.js";
4
+ import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
5
5
  import fs from "node:fs";
6
6
  import path from "node:path";
7
7
  import os from "node:os";
@@ -1,4 +1,4 @@
1
- import { c as normalizeProviderId } from "./model-selection-BrjdiXHy.js";
1
+ import { c as normalizeProviderId } from "./model-selection-CHfjhxOQ.js";
2
2
  import { n as formatErrorMessage } from "./errors-Bv8oZiTO.js";
3
3
 
4
4
  //#region src/infra/gemini-auth.ts
@@ -1,34 +1,34 @@
1
- import "./accounts-Ddm33hQm.js";
1
+ import "./accounts-D9zGZU5t.js";
2
2
  import "./paths-DR2yt_mP.js";
3
3
  import "./github-copilot-token-D9X2phUj.js";
4
- import "./plugins-BNByVCIH.js";
5
- import { K as logVerbose, Y as shouldLogVerbose } from "./registry-D0xTnUWt.js";
6
- import "./config-77WETCnu.js";
7
- import "./subsystem-B2uDN3TV.js";
8
- import "./command-format-GKSevep4.js";
9
- import "./model-selection-BrjdiXHy.js";
10
- import "./agent-scope-CYYpcO9W.js";
11
- import "./manifest-registry-CPnHl_K3.js";
4
+ import "./plugins-BbAvhC25.js";
5
+ import { K as logVerbose, Y as shouldLogVerbose } from "./registry--_pGht6S.js";
6
+ import "./config-DmDmnRKy.js";
7
+ import "./subsystem-Coz2AgU8.js";
8
+ import "./command-format-DSdvQ_M5.js";
9
+ import "./model-selection-CHfjhxOQ.js";
10
+ import "./agent-scope-C3gMMKCU.js";
11
+ import "./manifest-registry-B3ugY9-f.js";
12
12
  import "./redact-DPnDWsnT.js";
13
13
  import "./errors-Bv8oZiTO.js";
14
- import "./image-ops-BlQR__MN.js";
14
+ import "./image-ops-Bnp6LXEx.js";
15
15
  import "./ssrf-DKZ8eBrk.js";
16
- import "./local-roots-BHLNSI8U.js";
17
- import "./message-channel-COTAJzHd.js";
18
- import "./bindings-C7hRtgYW.js";
19
- import "./tool-images-HJ2sfZDV.js";
20
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-DsKKlo3l.js";
21
- import "./skills-_yTP47Cd.js";
22
- import "./chrome-DmQSQaqJ.js";
23
- import "./thinking-CXqf7WTe.js";
24
- import "./accounts-s-AdhXVR.js";
25
- import "./accounts-BtaOa4z_.js";
26
- import "./pi-embedded-helpers-DTXrf1Tk.js";
16
+ import "./local-roots-Ckk1QfzI.js";
17
+ import "./message-channel-BdI5Ra9S.js";
18
+ import "./bindings-BbwoUGPx.js";
19
+ import "./tool-images-D7Lno-TE.js";
20
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-BlSbbnXi.js";
21
+ import "./skills-B1GeRYlu.js";
22
+ import "./chrome-BazxJffV.js";
23
+ import "./thinking-DCNUIAHY.js";
24
+ import "./accounts-Dtszw3Zn.js";
25
+ import "./accounts-BToL3HlP.js";
26
+ import "./pi-embedded-helpers-DYLRigcQ.js";
27
27
  import "./paths-A0xdf3yk.js";
28
- import "./store-BdrNabcU.js";
29
- import "./image-dWPmKTSh.js";
28
+ import "./store-Do3t33-c.js";
29
+ import "./image-90GffxnB.js";
30
30
  import "./pi-model-discovery-LbcEa65a.js";
31
- import "./api-key-rotation-BSfyE1_4.js";
31
+ import "./api-key-rotation-BRvrAgJE.js";
32
32
 
33
33
  //#region src/media-understanding/audio-preflight.ts
34
34
  /**
@@ -1,6 +1,6 @@
1
1
  import { p as normalizeAccountId, s as normalizeAgentId } from "./session-key-C_0eELjb.js";
2
- import { s as normalizeChatChannelId } from "./registry-D0xTnUWt.js";
3
- import { c as resolveDefaultAgentId } from "./agent-scope-CYYpcO9W.js";
2
+ import { s as normalizeChatChannelId } from "./registry--_pGht6S.js";
3
+ import { c as resolveDefaultAgentId } from "./agent-scope-C3gMMKCU.js";
4
4
 
5
5
  //#region src/routing/bindings.ts
6
6
  function normalizeBindingChannelId(raw) {
@@ -1,4 +1,4 @@
1
- import { n as retryAsync, t as resolveRetryConfig } from "./retry-CwQ_iIj8.js";
1
+ import { n as retryAsync, t as resolveRetryConfig } from "./retry-ilSJqnz9.js";
2
2
  import { n as formatErrorMessage } from "./errors-Bv8oZiTO.js";
3
3
  import { RateLimitError } from "@buape/carbon";
4
4
 
@@ -1,28 +1,28 @@
1
1
  import { a as buildGroupHistoryKey, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-C_0eELjb.js";
2
- import { f as readWebSelfId, o as getWebAuthAgeMs, r as resolveWhatsAppAccount } from "./accounts-Ddm33hQm.js";
3
- import { E as enqueueSystemEvent, G as resolveMentionGating, W as shouldAckReactionForWhatsApp, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, _ as resolveEnvelopeFormatOptions, c as computeBackoff, d as formatDurationPrecise, f as dispatchReplyWithBufferedBlockDispatcher, g as formatInboundEnvelope, h as resolveInboundDebounceMs, ht as createDedupeCache, l as sleepWithAbort, m as createInboundDebouncer, n as normalizeGroupActivation, nt as buildMentionRegexes, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as buildPairingReply, v as hasControlCommand, y as shouldComputeCommandAuthorized } from "./reply-Ci83lFPb.js";
4
- import { A as normalizeE164, B as toWhatsappJid, K as logVerbose, N as resolveJidToE164, O as isSelfChatMode, R as sleep, Y as shouldLogVerbose, k as jidToE164, s as normalizeChatChannelId, tt as getChildLogger, x as clamp } from "./registry-D0xTnUWt.js";
5
- import { n as loadConfig } from "./config-77WETCnu.js";
6
- import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
7
- import { t as formatCliCommand } from "./command-format-GKSevep4.js";
8
- import { n as recordChannelActivity } from "./channel-activity-DoC1xtDu.js";
9
- import { t as getAgentScopedMediaLocalRoots } from "./local-roots-BHLNSI8U.js";
10
- import { a as loadWebMedia } from "./ir-BJ6BHE5b.js";
11
- import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-Dw2XBYXv.js";
12
- import { n as resolveMarkdownTableMode } from "./markdown-tables-BoYFajMu.js";
13
- import { t as convertMarkdownTables } from "./tables-DNwXwNFa.js";
14
- import { G as readChannelAllowFromStore, J as upsertChannelPairingRequest, K as readChannelAllowFromStoreSync, nt as toLocationContext, tt as formatLocationText } from "./send-DhGx53iH.js";
15
- import { f as registerUnhandledRejectionHandler } from "./runner-DsKKlo3l.js";
16
- import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-uxfMZW4p.js";
17
- import { F as resolveChannelGroupRequireMention, P as resolveChannelGroupPolicy } from "./thinking-CXqf7WTe.js";
18
- import { Xt as resolveGroupSessionKey, _t as updateLastRoute, gt as recordSessionMetaFromInbound, ht as readSessionUpdatedAt, mt as loadSessionStore } from "./pi-embedded-helpers-DTXrf1Tk.js";
2
+ import { f as readWebSelfId, o as getWebAuthAgeMs, r as resolveWhatsAppAccount } from "./accounts-D9zGZU5t.js";
3
+ import { E as enqueueSystemEvent, G as resolveMentionGating, W as shouldAckReactionForWhatsApp, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, _ as resolveEnvelopeFormatOptions, c as computeBackoff, d as formatDurationPrecise, f as dispatchReplyWithBufferedBlockDispatcher, g as formatInboundEnvelope, h as resolveInboundDebounceMs, ht as createDedupeCache, l as sleepWithAbort, m as createInboundDebouncer, n as normalizeGroupActivation, nt as buildMentionRegexes, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as buildPairingReply, v as hasControlCommand, y as shouldComputeCommandAuthorized } from "./reply-ByQhiL4m.js";
4
+ import { A as normalizeE164, B as toWhatsappJid, K as logVerbose, N as resolveJidToE164, O as isSelfChatMode, R as sleep, Y as shouldLogVerbose, k as jidToE164, s as normalizeChatChannelId, tt as getChildLogger, x as clamp } from "./registry--_pGht6S.js";
5
+ import { n as loadConfig } from "./config-DmDmnRKy.js";
6
+ import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
7
+ import { t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
8
+ import { n as recordChannelActivity } from "./channel-activity-Ji7f0gqq.js";
9
+ import { t as getAgentScopedMediaLocalRoots } from "./local-roots-Ckk1QfzI.js";
10
+ import { a as loadWebMedia } from "./ir-Fb3qpcis.js";
11
+ import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-jvk9axTQ.js";
12
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-Dfaqilz6.js";
13
+ import { t as convertMarkdownTables } from "./tables-DR0NmBeH.js";
14
+ import { G as readChannelAllowFromStore, J as upsertChannelPairingRequest, K as readChannelAllowFromStoreSync, nt as toLocationContext, tt as formatLocationText } from "./send-a-DZlwoz.js";
15
+ import { f as registerUnhandledRejectionHandler } from "./runner-BlSbbnXi.js";
16
+ import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-BHuV5t70.js";
17
+ import { F as resolveChannelGroupRequireMention, P as resolveChannelGroupPolicy } from "./thinking-DCNUIAHY.js";
18
+ import { Xt as resolveGroupSessionKey, _t as updateLastRoute, gt as recordSessionMetaFromInbound, ht as readSessionUpdatedAt, mt as loadSessionStore } from "./pi-embedded-helpers-DYLRigcQ.js";
19
19
  import { s as resolveStorePath } from "./paths-A0xdf3yk.js";
20
- import { i as saveMediaBuffer } from "./store-BdrNabcU.js";
20
+ import { i as saveMediaBuffer } from "./store-Do3t33-c.js";
21
21
  import { t as finalizeInboundContext } from "./inbound-context-D5EzMeL_.js";
22
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-B3CCBumQ.js";
23
- import { r as setActiveWebListener } from "./active-listener-BXYeALs0.js";
24
- import { i as markdownToWhatsApp, r as sendReactionWhatsApp } from "./outbound-BJk8NQao.js";
25
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-DGWsCClR.js";
22
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-D3JH_D2N.js";
23
+ import { r as setActiveWebListener } from "./active-listener-bEk__wbB.js";
24
+ import { i as markdownToWhatsApp, r as sendReactionWhatsApp } from "./outbound-Docm16hy.js";
25
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-BpgZAHo5.js";
26
26
  import { randomUUID } from "node:crypto";
27
27
  import { DisconnectReason, downloadMediaMessage, extractMessageContent, getContentType, isJidGroup, normalizeMessageContent } from "@whiskeysockets/baileys";
28
28
 
@@ -1,6 +1,6 @@
1
- import { b as CONFIG_DIR } from "./registry-D0xTnUWt.js";
2
- import { n as loadConfig } from "./config-77WETCnu.js";
3
- import { t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
1
+ import { b as CONFIG_DIR } from "./registry--_pGht6S.js";
2
+ import { n as loadConfig } from "./config-DmDmnRKy.js";
3
+ import { t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
4
4
  import { i as isErrno } from "./errors-Bv8oZiTO.js";
5
5
  import { s as resolvePinnedHostnameWithPolicy } from "./ssrf-DKZ8eBrk.js";
6
6
  import fs from "node:fs";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { p as normalizeAccountId } from "./session-key-C_0eELjb.js";
3
- import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-COTAJzHd.js";
3
+ import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-BdI5Ra9S.js";
4
4
 
5
5
  //#region src/markdown/fences.ts
6
6
  function parseFenceSpans(buffer) {
@@ -1,4 +1,4 @@
1
- import { t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
1
+ import { t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
2
2
  import path from "node:path";
3
3
 
4
4
  //#region src/utils/boolean.ts
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { r as normalizeChannelId } from "./plugins-BNByVCIH.js";
3
- import { H as isPlainObject, T as escapeRegExp, c as getActivePluginRegistry } from "./registry-D0xTnUWt.js";
4
- import { J as DEFAULT_MODEL, Y as DEFAULT_PROVIDER, u as resolveConfiguredModelRef } from "./model-selection-BrjdiXHy.js";
5
- import { f as listChannelDocks, r as listThinkingLevels } from "./thinking-CXqf7WTe.js";
2
+ import { r as normalizeChannelId } from "./plugins-BbAvhC25.js";
3
+ import { H as isPlainObject, T as escapeRegExp, c as getActivePluginRegistry } from "./registry--_pGht6S.js";
4
+ import { J as DEFAULT_MODEL, Y as DEFAULT_PROVIDER, u as resolveConfiguredModelRef } from "./model-selection-CHfjhxOQ.js";
5
+ import { f as listChannelDocks, r as listThinkingLevels } from "./thinking-DCNUIAHY.js";
6
6
 
7
7
  //#region src/config/commands.ts
8
8
  function resolveAutoDefault(providerId) {
@@ -1,14 +1,14 @@
1
1
  import { s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-C_0eELjb.js";
2
2
  import { n as resolveConfigPath, r as resolveDefaultConfigCandidates, s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-DR2yt_mP.js";
3
- import { D as isRecord, H as isPlainObject$1, M as resolveConfigDir, P as resolveUserPath, s as normalizeChatChannelId, t as CHANNEL_IDS } from "./registry-D0xTnUWt.js";
4
- import { $ as shouldDeferShellEnvFallback, Q as resolveShellEnvFallbackTimeoutMs, Z as loadShellEnvFallback, et as shouldEnableShellEnvFallback, l as parseModelRef, q as DEFAULT_CONTEXT_TOKENS } from "./model-selection-BrjdiXHy.js";
5
- import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-CYYpcO9W.js";
6
- import { c as normalizePluginsConfig, d as isPathInside, l as resolveEnableState, m as normalizeEnvVarKey, p as isDangerousHostEnvVarName, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-CPnHl_K3.js";
3
+ import { D as isRecord, H as isPlainObject$1, M as resolveConfigDir, P as resolveUserPath, s as normalizeChatChannelId, t as CHANNEL_IDS } from "./registry--_pGht6S.js";
4
+ import { $ as shouldDeferShellEnvFallback, Q as resolveShellEnvFallbackTimeoutMs, Z as loadShellEnvFallback, et as shouldEnableShellEnvFallback, l as parseModelRef, q as DEFAULT_CONTEXT_TOKENS } from "./model-selection-CHfjhxOQ.js";
5
+ import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-C3gMMKCU.js";
6
+ import { c as normalizePluginsConfig, d as isPathInside, l as resolveEnableState, m as normalizeEnvVarKey, p as isDangerousHostEnvVarName, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-B3ugY9-f.js";
7
7
  import { createRequire } from "node:module";
8
8
  import fs from "node:fs";
9
9
  import path from "node:path";
10
10
  import os from "node:os";
11
- import JSON5 from "json5";
11
+ import json5 from "json5";
12
12
  import crypto from "node:crypto";
13
13
  import { isDeepStrictEqual } from "node:util";
14
14
  import dotenv from "dotenv";
@@ -892,7 +892,7 @@ function safeRealpath(target) {
892
892
  }
893
893
  const defaultResolver = {
894
894
  readFile: (p) => fs.readFileSync(p, "utf-8"),
895
- parseJson: (raw) => JSON5.parse(raw)
895
+ parseJson: (raw) => json5.parse(raw)
896
896
  };
897
897
  /**
898
898
  * Resolves all $include directives in a parsed config object.
@@ -5556,7 +5556,7 @@ function resolveConfigPathForDeps(deps) {
5556
5556
  function normalizeDeps(overrides = {}) {
5557
5557
  return {
5558
5558
  fs: overrides.fs ?? fs,
5559
- json5: overrides.json5 ?? JSON5,
5559
+ json5: overrides.json5 ?? json5,
5560
5560
  env: overrides.env ?? process.env,
5561
5561
  homedir: overrides.homedir ?? (() => resolveRequiredHomeDir(overrides.env ?? process.env, os.homedir)),
5562
5562
  configPath: overrides.configPath ?? "",
@@ -5567,11 +5567,11 @@ function maybeLoadDotEnvForConfig(env) {
5567
5567
  if (env !== process.env) return;
5568
5568
  loadDotEnv({ quiet: true });
5569
5569
  }
5570
- function parseConfigJson5(raw, json5 = JSON5) {
5570
+ function parseConfigJson5(raw, json5$1 = json5) {
5571
5571
  try {
5572
5572
  return {
5573
5573
  ok: true,
5574
- parsed: json5.parse(raw)
5574
+ parsed: json5$1.parse(raw)
5575
5575
  };
5576
5576
  } catch (err) {
5577
5577
  return {
@@ -1,16 +1,16 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { m as normalizeOptionalAccountId, p as normalizeAccountId } from "./session-key-C_0eELjb.js";
3
3
  import { s as resolveStateDir } from "./paths-DR2yt_mP.js";
4
- import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BNByVCIH.js";
5
- import { c as getActivePluginRegistry, v as createInternalHookEvent, y as triggerInternalHook } from "./registry-D0xTnUWt.js";
6
- import { t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
7
- import { t as getAgentScopedMediaLocalRoots } from "./local-roots-BHLNSI8U.js";
8
- import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph, p as parseFenceSpans } from "./chunk-Dw2XBYXv.js";
9
- import { n as resolveMarkdownTableMode } from "./markdown-tables-BoYFajMu.js";
10
- import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-bC3UVmVH.js";
11
- import { d as getChannelDock } from "./thinking-CXqf7WTe.js";
12
- import { dt as appendAssistantMessageToSessionTranscript, ft as resolveMirroredTranscriptText, i as isMessagingToolDuplicate } from "./pi-embedded-helpers-DTXrf1Tk.js";
13
- import { a as markdownToSignalTextChunks, t as sendMessageSignal } from "./send-Byzw6epu.js";
4
+ import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BbAvhC25.js";
5
+ import { c as getActivePluginRegistry, v as createInternalHookEvent, y as triggerInternalHook } from "./registry--_pGht6S.js";
6
+ import { t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
7
+ import { t as getAgentScopedMediaLocalRoots } from "./local-roots-Ckk1QfzI.js";
8
+ import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph, p as parseFenceSpans } from "./chunk-jvk9axTQ.js";
9
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-Dfaqilz6.js";
10
+ import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-CWMflosr.js";
11
+ import { d as getChannelDock } from "./thinking-DCNUIAHY.js";
12
+ import { dt as appendAssistantMessageToSessionTranscript, ft as resolveMirroredTranscriptText, i as isMessagingToolDuplicate } from "./pi-embedded-helpers-DYLRigcQ.js";
13
+ import { a as markdownToSignalTextChunks, t as sendMessageSignal } from "./send-3oIQMt_U.js";
14
14
  import fs from "node:fs";
15
15
  import path from "node:path";
16
16
  import crypto from "node:crypto";
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
3
3
  import { i as pruneDiagnosticSessionStates, r as getDiagnosticSessionState, t as diagnosticSessionStates } from "./diagnostic-session-state-Wd5tNeQG.js";
4
4
 
5
5
  //#region src/infra/diagnostic-events.ts
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { D as isRecord, I as shortenHomeInString } from "./registry-D0xTnUWt.js";
3
- import { n as loadConfig } from "./config-77WETCnu.js";
4
- import { B as resolveSymiAgentDir, G as normalizeSecretInput, S as getApiKeyForModel, _ as resolveImplicitBedrockProvider, g as normalizeProviders, v as resolveImplicitCopilotProvider, w as requireApiKey, y as resolveImplicitProviders } from "./model-selection-BrjdiXHy.js";
2
+ import { D as isRecord, I as shortenHomeInString } from "./registry--_pGht6S.js";
3
+ import { n as loadConfig } from "./config-DmDmnRKy.js";
4
+ import { B as resolveSymiAgentDir, G as normalizeSecretInput, S as getApiKeyForModel, _ as resolveImplicitBedrockProvider, g as normalizeProviders, v as resolveImplicitCopilotProvider, w as requireApiKey, y as resolveImplicitProviders } from "./model-selection-CHfjhxOQ.js";
5
5
  import { n as redactToolDetail } from "./redact-DPnDWsnT.js";
6
- import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-DTXrf1Tk.js";
6
+ import { N as sanitizeUserFacingText } from "./pi-embedded-helpers-DYLRigcQ.js";
7
7
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-LbcEa65a.js";
8
8
  import path from "node:path";
9
9
  import fs from "node:fs/promises";
@@ -1,4 +1,4 @@
1
- import { E as runExec } from "./agent-scope-CYYpcO9W.js";
1
+ import { E as runExec } from "./agent-scope-C3gMMKCU.js";
2
2
  import { constants } from "node:fs";
3
3
  import path from "node:path";
4
4
  import os from "node:os";
@@ -1,68 +1,68 @@
1
1
  import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
- import { _ as createAccountListHelpers, i as resolveWhatsAppAuthDir, n as resolveDefaultWhatsAppAccountId, r as resolveWhatsAppAccount, t as listWhatsAppAccountIds } from "./accounts-Ddm33hQm.js";
3
- import { $ as clearHistoryEntriesIfEnabled, A as resolveDiscordUserAllowlist, B as logTypingFailure, C as stripMarkdown, Ct as unbindThreadBindingsBySessionKey, D as resolveSlackUserAllowlist, Dt as BLUEBUBBLES_ACTION_NAMES, Et as BLUEBUBBLES_ACTIONS, F as stringEnum, G as resolveMentionGating, H as removeAckReactionAfterReply, I as recordInboundSession, J as summarizeMapping, K as resolveMentionGatingWithBypass, L as resolveControlCommandGate, M as collectDiscordAuditChannelIds, N as formatDocsLink, O as resolveSlackChannelAllowlist, Ot as BLUEBUBBLES_GROUP_ACTIONS, P as optionalStringEnum, Q as clearHistoryEntries, R as logAckFailure, S as processLineMessage, St as listThreadBindingsBySessionKey, T as attachFooterText, Tt as resolveAllowlistMatchSimple, U as shouldAckReaction, V as createTypingCallbacks, W as shouldAckReactionForWhatsApp, Y as DEFAULT_GROUP_HISTORY_LIMIT, Z as buildPendingHistoryContextFromMap, _t as listDevicePairing, a as normalizeAccountId$1, at as isWSLEnv, bt as registerPluginHttpRoute, ct as DEFAULT_WEBHOOK_MAX_BODY_BYTES, dt as isRequestBodyLimitError, et as recordPendingHistoryEntry, ft as readJsonBodyWithLimit, gt as approveDevicePairing, ht as createDedupeCache, i as listLineAccountIds, it as isWSL2Sync, j as resolveDiscordChannelAllowlist, k as detectBinary, kt as CHANNEL_MESSAGE_ACTION_NAMES, lt as RequestBodyLimitError, mt as requestBodyErrorToText, o as resolveDefaultLineAccountId, ot as isWSLSync, pt as readRequestBodyWithLimit, q as mergeAllowlist, s as resolveLineAccount, st as DEFAULT_WEBHOOK_BODY_TIMEOUT_MS, tt as recordPendingHistoryEntryIfEnabled, ut as installRequestBodyLimitGuard, vt as rejectDevicePairing, w as createReceiptCard, wt as formatAllowlistMatchMeta, x as hasMarkdownToConvert, xt as autoBindSpawnedDiscordSubagent, yt as extractToolSend, z as logInboundDrop } from "./reply-Ci83lFPb.js";
2
+ import { _ as createAccountListHelpers, i as resolveWhatsAppAuthDir, n as resolveDefaultWhatsAppAccountId, r as resolveWhatsAppAccount, t as listWhatsAppAccountIds } from "./accounts-D9zGZU5t.js";
3
+ import { $ as clearHistoryEntriesIfEnabled, A as resolveDiscordUserAllowlist, B as logTypingFailure, C as stripMarkdown, Ct as unbindThreadBindingsBySessionKey, D as resolveSlackUserAllowlist, Dt as BLUEBUBBLES_ACTION_NAMES, Et as BLUEBUBBLES_ACTIONS, F as stringEnum, G as resolveMentionGating, H as removeAckReactionAfterReply, I as recordInboundSession, J as summarizeMapping, K as resolveMentionGatingWithBypass, L as resolveControlCommandGate, M as collectDiscordAuditChannelIds, N as formatDocsLink, O as resolveSlackChannelAllowlist, Ot as BLUEBUBBLES_GROUP_ACTIONS, P as optionalStringEnum, Q as clearHistoryEntries, R as logAckFailure, S as processLineMessage, St as listThreadBindingsBySessionKey, T as attachFooterText, Tt as resolveAllowlistMatchSimple, U as shouldAckReaction, V as createTypingCallbacks, W as shouldAckReactionForWhatsApp, Y as DEFAULT_GROUP_HISTORY_LIMIT, Z as buildPendingHistoryContextFromMap, _t as listDevicePairing, a as normalizeAccountId$1, at as isWSLEnv, bt as registerPluginHttpRoute, ct as DEFAULT_WEBHOOK_MAX_BODY_BYTES, dt as isRequestBodyLimitError, et as recordPendingHistoryEntry, ft as readJsonBodyWithLimit, gt as approveDevicePairing, ht as createDedupeCache, i as listLineAccountIds, it as isWSL2Sync, j as resolveDiscordChannelAllowlist, k as detectBinary, kt as CHANNEL_MESSAGE_ACTION_NAMES, lt as RequestBodyLimitError, mt as requestBodyErrorToText, o as resolveDefaultLineAccountId, ot as isWSLSync, pt as readRequestBodyWithLimit, q as mergeAllowlist, s as resolveLineAccount, st as DEFAULT_WEBHOOK_BODY_TIMEOUT_MS, tt as recordPendingHistoryEntryIfEnabled, ut as installRequestBodyLimitGuard, vt as rejectDevicePairing, w as createReceiptCard, wt as formatAllowlistMatchMeta, x as hasMarkdownToConvert, xt as autoBindSpawnedDiscordSubagent, yt as extractToolSend, z as logInboundDrop } from "./reply-ByQhiL4m.js";
4
4
  import "./paths-DR2yt_mP.js";
5
5
  import "./github-copilot-token-D9X2phUj.js";
6
- import { D as resolveSlackAccount, E as resolveDefaultSlackAccountId, F as resolveDiscordAccount, M as listDiscordAccountIds, O as resolveSlackReplyToMode, P as resolveDefaultDiscordAccountId, S as resolveTelegramAccount, T as listSlackAccountIds, _ as normalizeWhatsAppTarget, a as listDiscordDirectoryPeersFromConfig, b as listTelegramAccountIds, c as listTelegramDirectoryGroupsFromConfig, d as listWhatsAppDirectoryPeersFromConfig, f as looksLikeSlackTargetId, g as isWhatsAppGroupJid, i as listDiscordDirectoryGroupsFromConfig, l as listTelegramDirectoryPeersFromConfig, o as listSlackDirectoryGroupsFromConfig, p as normalizeSlackMessagingTarget, s as listSlackDirectoryPeersFromConfig, u as listWhatsAppDirectoryGroupsFromConfig, w as listEnabledSlackAccounts, x as resolveDefaultTelegramAccountId } from "./plugins-BNByVCIH.js";
6
+ import { D as resolveSlackAccount, E as resolveDefaultSlackAccountId, F as resolveDiscordAccount, M as listDiscordAccountIds, O as resolveSlackReplyToMode, P as resolveDefaultDiscordAccountId, S as resolveTelegramAccount, T as listSlackAccountIds, _ as normalizeWhatsAppTarget, a as listDiscordDirectoryPeersFromConfig, b as listTelegramAccountIds, c as listTelegramDirectoryGroupsFromConfig, d as listWhatsAppDirectoryPeersFromConfig, f as looksLikeSlackTargetId, g as isWhatsAppGroupJid, i as listDiscordDirectoryGroupsFromConfig, l as listTelegramDirectoryPeersFromConfig, o as listSlackDirectoryGroupsFromConfig, p as normalizeSlackMessagingTarget, s as listSlackDirectoryPeersFromConfig, u as listWhatsAppDirectoryGroupsFromConfig, w as listEnabledSlackAccounts, x as resolveDefaultTelegramAccountId } from "./plugins-BbAvhC25.js";
7
7
  import "./fetch-CUNoPTKm.js";
8
- import { A as normalizeE164, D as isRecord, F as safeParseJson, R as sleep, T as escapeRegExp, b as CONFIG_DIR, f as normalizePluginHttpPath, i as getChatChannelMeta, it as registerLogTransport, j as pathExists, x as clamp } from "./registry-D0xTnUWt.js";
9
- import "./retry-CwQ_iIj8.js";
10
- import { Dt as resolveChannelEntryMatch, Et as normalizeChannelSlug, Ot as resolveChannelEntryMatchWithFallback, Tt as buildChannelKeyCandidates, dt as normalizeDiscordSlug, it as parseDiscordTarget, kt as resolveNestedAllowlistDecision } from "./send-BmNYgEW_.js";
11
- import { A as MarkdownConfigSchema, D as DmConfigSchema, E as BlockStreamingCoalesceSchema, F as TtsProviderSchema, I as normalizeAllowFrom, L as requireOpenAllowFrom, M as TtsAutoSchema, N as TtsConfigSchema, O as DmPolicySchema, P as TtsModeSchema, T as ToolPolicySchema, c as WhatsAppConfigSchema, d as IMessageConfigSchema, f as MSTeamsConfigSchema, h as TelegramConfigSchema, j as MarkdownTableModeSchema, k as GroupPolicySchema, l as DiscordConfigSchema, m as SlackConfigSchema, p as SignalConfigSchema, u as GoogleChatConfigSchema } from "./config-77WETCnu.js";
12
- import { n as stripAnsi } from "./subsystem-B2uDN3TV.js";
13
- import { r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-GKSevep4.js";
14
- import { H as withFileLock, V as acquireFileLock } from "./model-selection-BrjdiXHy.js";
15
- import { T as runCommandWithTimeout } from "./agent-scope-CYYpcO9W.js";
16
- import "./manifest-registry-CPnHl_K3.js";
8
+ import { A as normalizeE164, D as isRecord, F as safeParseJson, R as sleep, T as escapeRegExp, b as CONFIG_DIR, f as normalizePluginHttpPath, i as getChatChannelMeta, it as registerLogTransport, j as pathExists, x as clamp } from "./registry--_pGht6S.js";
9
+ import "./retry-ilSJqnz9.js";
10
+ import { Dt as resolveChannelEntryMatch, Et as normalizeChannelSlug, Ot as resolveChannelEntryMatchWithFallback, Tt as buildChannelKeyCandidates, dt as normalizeDiscordSlug, it as parseDiscordTarget, kt as resolveNestedAllowlistDecision } from "./send-B09RXfg-.js";
11
+ import { A as MarkdownConfigSchema, D as DmConfigSchema, E as BlockStreamingCoalesceSchema, F as TtsProviderSchema, I as normalizeAllowFrom, L as requireOpenAllowFrom, M as TtsAutoSchema, N as TtsConfigSchema, O as DmPolicySchema, P as TtsModeSchema, T as ToolPolicySchema, c as WhatsAppConfigSchema, d as IMessageConfigSchema, f as MSTeamsConfigSchema, h as TelegramConfigSchema, j as MarkdownTableModeSchema, k as GroupPolicySchema, l as DiscordConfigSchema, m as SlackConfigSchema, p as SignalConfigSchema, u as GoogleChatConfigSchema } from "./config-DmDmnRKy.js";
12
+ import { n as stripAnsi } from "./subsystem-Coz2AgU8.js";
13
+ import { r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
14
+ import { H as withFileLock, V as acquireFileLock } from "./model-selection-CHfjhxOQ.js";
15
+ import { T as runCommandWithTimeout } from "./agent-scope-C3gMMKCU.js";
16
+ import "./manifest-registry-B3ugY9-f.js";
17
17
  import "./redact-DPnDWsnT.js";
18
18
  import { n as formatErrorMessage } from "./errors-Bv8oZiTO.js";
19
- import "./channel-activity-DoC1xtDu.js";
20
- import { c as detectMime, l as extensionForMime, u as getFileExtension } from "./image-ops-BlQR__MN.js";
19
+ import "./channel-activity-Ji7f0gqq.js";
20
+ import { c as detectMime, l as extensionForMime, u as getFileExtension } from "./image-ops-Bnp6LXEx.js";
21
21
  import { a as isBlockedHostnameOrIp, i as isBlockedHostname, o as isPrivateIpAddress, t as SsrFBlockedError } from "./ssrf-DKZ8eBrk.js";
22
- import { o as fetchWithSsrFGuard } from "./local-roots-BHLNSI8U.js";
23
- import { a as loadWebMedia } from "./ir-BJ6BHE5b.js";
24
- import { u as chunkTextByBreakResolver } from "./chunk-Dw2XBYXv.js";
25
- import "./message-channel-COTAJzHd.js";
26
- import "./bindings-C7hRtgYW.js";
27
- import "./markdown-tables-BoYFajMu.js";
22
+ import { o as fetchWithSsrFGuard } from "./local-roots-Ckk1QfzI.js";
23
+ import { a as loadWebMedia } from "./ir-Fb3qpcis.js";
24
+ import { u as chunkTextByBreakResolver } from "./chunk-jvk9axTQ.js";
25
+ import "./message-channel-BdI5Ra9S.js";
26
+ import "./bindings-BbwoUGPx.js";
27
+ import "./markdown-tables-Dfaqilz6.js";
28
28
  import "./render-BiJZ5W4Z.js";
29
- import "./tables-DNwXwNFa.js";
30
- import { d as resolveServicePrefixedAllowTarget, f as resolveServicePrefixedTarget, l as parseChatAllowTargetPrefixes, m as isAllowedParsedChatSender, p as formatAllowFromLowercase, s as normalizeIMessageHandle, u as parseChatTargetPrefixesOrThrow } from "./send-UoN0iJP3.js";
31
- import "./tool-images-HJ2sfZDV.js";
32
- import { a as createActionGate, c as jsonResult, d as readReactionParams, m as readStringParam, n as missingTargetError, u as readNumberParam } from "./target-errors-Paro1BjP.js";
33
- import { s as parseSlackBlocksInput } from "./send-CXHBNSyM.js";
34
- import { it as writeJsonFileAtomically, nt as toLocationContext, rt as readJsonFileWithFallback, tt as formatLocationText } from "./send-DhGx53iH.js";
35
- import { b as withTempDownloadPath, y as buildRandomTempFilePath } from "./runner-DsKKlo3l.js";
36
- import { a as resolveAckReaction, n as createReplyPrefixOptions, t as createReplyPrefixContext } from "./reply-prefix-uxfMZW4p.js";
37
- import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-bC3UVmVH.js";
38
- import "./skill-commands-BLeKP20L.js";
39
- import "./skills-_yTP47Cd.js";
40
- import { N as rawDataToString } from "./chrome-DmQSQaqJ.js";
41
- import { C as resolveSlackGroupRequireMention, D as resolveWhatsAppGroupRequireMention, E as resolveTelegramGroupToolPolicy, L as resolveToolsBySender, N as buildSlackThreadingToolContext, O as resolveWhatsAppGroupToolPolicy, S as resolveIMessageGroupToolPolicy, T as resolveTelegramGroupRequireMention, _ as resolveDiscordGroupRequireMention, b as resolveGoogleChatGroupToolPolicy, g as resolveBlueBubblesGroupToolPolicy, h as resolveBlueBubblesGroupRequireMention, m as normalizeSignalMessagingTarget, p as looksLikeSignalTargetId, v as resolveDiscordGroupToolPolicy, w as resolveSlackGroupToolPolicy, x as resolveIMessageGroupRequireMention, y as resolveGoogleChatGroupRequireMention } from "./thinking-CXqf7WTe.js";
42
- import { n as resolveDefaultIMessageAccountId, r as resolveIMessageAccount, t as listIMessageAccountIds } from "./accounts-s-AdhXVR.js";
43
- import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId } from "./accounts-BtaOa4z_.js";
44
- import { T as resolveChannelMediaMaxBytes } from "./deliver-cf5qNrBO.js";
45
- import "./pi-embedded-helpers-DTXrf1Tk.js";
29
+ import "./tables-DR0NmBeH.js";
30
+ import { d as resolveServicePrefixedAllowTarget, f as resolveServicePrefixedTarget, l as parseChatAllowTargetPrefixes, m as isAllowedParsedChatSender, p as formatAllowFromLowercase, s as normalizeIMessageHandle, u as parseChatTargetPrefixesOrThrow } from "./send-DlBkzGTU.js";
31
+ import "./tool-images-D7Lno-TE.js";
32
+ import { a as createActionGate, c as jsonResult, d as readReactionParams, m as readStringParam, n as missingTargetError, u as readNumberParam } from "./target-errors-B7YyMnIi.js";
33
+ import { s as parseSlackBlocksInput } from "./send-Clm68RGe.js";
34
+ import { it as writeJsonFileAtomically, nt as toLocationContext, rt as readJsonFileWithFallback, tt as formatLocationText } from "./send-a-DZlwoz.js";
35
+ import { b as withTempDownloadPath, y as buildRandomTempFilePath } from "./runner-BlSbbnXi.js";
36
+ import { a as resolveAckReaction, n as createReplyPrefixOptions, t as createReplyPrefixContext } from "./reply-prefix-BHuV5t70.js";
37
+ import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-CWMflosr.js";
38
+ import "./skill-commands-C3WAU00B.js";
39
+ import "./skills-B1GeRYlu.js";
40
+ import { N as rawDataToString } from "./chrome-BazxJffV.js";
41
+ import { C as resolveSlackGroupRequireMention, D as resolveWhatsAppGroupRequireMention, E as resolveTelegramGroupToolPolicy, L as resolveToolsBySender, N as buildSlackThreadingToolContext, O as resolveWhatsAppGroupToolPolicy, S as resolveIMessageGroupToolPolicy, T as resolveTelegramGroupRequireMention, _ as resolveDiscordGroupRequireMention, b as resolveGoogleChatGroupToolPolicy, g as resolveBlueBubblesGroupToolPolicy, h as resolveBlueBubblesGroupRequireMention, m as normalizeSignalMessagingTarget, p as looksLikeSignalTargetId, v as resolveDiscordGroupToolPolicy, w as resolveSlackGroupToolPolicy, x as resolveIMessageGroupRequireMention, y as resolveGoogleChatGroupRequireMention } from "./thinking-DCNUIAHY.js";
42
+ import { n as resolveDefaultIMessageAccountId, r as resolveIMessageAccount, t as listIMessageAccountIds } from "./accounts-Dtszw3Zn.js";
43
+ import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId } from "./accounts-BToL3HlP.js";
44
+ import { T as resolveChannelMediaMaxBytes } from "./deliver-BnNdPE7h.js";
45
+ import "./pi-embedded-helpers-DYLRigcQ.js";
46
46
  import "./paths-A0xdf3yk.js";
47
- import { h as onDiagnosticEvent, m as isDiagnosticsEnabled, p as emitDiagnosticEvent } from "./diagnostic-05pm5Rxi.js";
48
- import { n as extractOriginalFilename } from "./store-BdrNabcU.js";
49
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BiyAyTWz.js";
50
- import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-CcPB6K6E.js";
51
- import "./image-dWPmKTSh.js";
47
+ import { h as onDiagnosticEvent, m as isDiagnosticsEnabled, p as emitDiagnosticEvent } from "./diagnostic-mFf4i4G9.js";
48
+ import { n as extractOriginalFilename } from "./store-Do3t33-c.js";
49
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BkCUbYGV.js";
50
+ import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-BkzECNa5.js";
51
+ import "./image-90GffxnB.js";
52
52
  import "./pi-model-discovery-LbcEa65a.js";
53
- import "./api-key-rotation-BSfyE1_4.js";
54
- import "./sqlite-CxAR5ttJ.js";
53
+ import "./api-key-rotation-BRvrAgJE.js";
54
+ import "./sqlite-Cq_7Cg4E.js";
55
55
  import "./diagnostic-session-state-Wd5tNeQG.js";
56
- import "./manager-BFSY5TBY.js";
57
- import "./commands-registry-B8LOxvF1.js";
58
- import "./send-Byzw6epu.js";
56
+ import "./manager-R9tHcYof.js";
57
+ import "./commands-registry-BybwbMjk.js";
58
+ import "./send-3oIQMt_U.js";
59
59
  import "./proxy-MquBDehr.js";
60
- import "./resolve-route-B3CCBumQ.js";
61
- import "./replies-DVOjHJOV.js";
62
- import "./outbound-attachment-CnslKL38.js";
63
- import "./outbound-BJk8NQao.js";
64
- import "./session-DGWsCClR.js";
65
- import { t as loginWeb } from "./login-8KaFO-QT.js";
60
+ import "./resolve-route-D3JH_D2N.js";
61
+ import "./replies-CVa02kkQ.js";
62
+ import "./outbound-attachment-DnVQfTG2.js";
63
+ import "./outbound-Docm16hy.js";
64
+ import "./session-BpgZAHo5.js";
65
+ import { t as loginWeb } from "./login-DgHVmRH6.js";
66
66
  import fs, { createWriteStream } from "node:fs";
67
67
  import path from "node:path";
68
68
  import os from "node:os";
@@ -1,7 +1,7 @@
1
- import { K as logVerbose, P as resolveUserPath, Y as shouldLogVerbose } from "./registry-D0xTnUWt.js";
2
- import { _ as maxBytesForKind, a as hasAlphaChannel, c as detectMime, l as extensionForMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg, v as mediaKindFromMime, x as readLocalFileSafely, y as SafeOpenError } from "./image-ops-BlQR__MN.js";
3
- import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots } from "./local-roots-BHLNSI8U.js";
4
- import { a as chunkText } from "./chunk-Dw2XBYXv.js";
1
+ import { K as logVerbose, P as resolveUserPath, Y as shouldLogVerbose } from "./registry--_pGht6S.js";
2
+ import { _ as maxBytesForKind, a as hasAlphaChannel, c as detectMime, l as extensionForMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg, v as mediaKindFromMime, x as readLocalFileSafely, y as SafeOpenError } from "./image-ops-Bnp6LXEx.js";
3
+ import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots } from "./local-roots-Ckk1QfzI.js";
4
+ import { a as chunkText } from "./chunk-jvk9axTQ.js";
5
5
  import path from "node:path";
6
6
  import fs from "node:fs/promises";
7
7
  import { fileURLToPath } from "node:url";
@@ -1,8 +1,8 @@
1
1
  import { s as resolveStateDir } from "./paths-DR2yt_mP.js";
2
2
  import { t as bindAbortRelay } from "./fetch-timeout-ChYuW7LE.js";
3
- import { ut as resolvePreferredSymiTmpDir } from "./registry-D0xTnUWt.js";
4
- import { j as logWarn, s as resolveAgentWorkspaceDir } from "./agent-scope-CYYpcO9W.js";
5
- import { c as detectMime, l as extensionForMime } from "./image-ops-BlQR__MN.js";
3
+ import { ut as resolvePreferredSymiTmpDir } from "./registry--_pGht6S.js";
4
+ import { j as logWarn, s as resolveAgentWorkspaceDir } from "./agent-scope-C3gMMKCU.js";
5
+ import { c as detectMime, l as extensionForMime } from "./image-ops-Bnp6LXEx.js";
6
6
  import { n as closeDispatcher, r as createPinnedDispatcher, s as resolvePinnedHostnameWithPolicy, t as SsrFBlockedError } from "./ssrf-DKZ8eBrk.js";
7
7
  import path from "node:path";
8
8