@symerian/symi 3.5.38 → 3.5.40

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 (112) hide show
  1. package/dist/{agent-D-r1jDDr.js → agent-B4x9arqs.js} +1 -1
  2. package/dist/{agent-BTGl36fO.js → agent-C1mfEPpO.js} +1 -1
  3. package/dist/{agents-qlUHy5Br.js → agents-CRjkWjTz.js} +2 -2
  4. package/dist/{auth-choice-B8hl2zQ_.js → auth-choice-B-YDzf6k.js} +1 -1
  5. package/dist/{auth-choice-DmQV3qVD.js → auth-choice-BpJa6MIU.js} +1 -1
  6. package/dist/{banner-B_FIPskF.js → banner-83x457Gs.js} +1 -1
  7. package/dist/build-info.json +3 -3
  8. package/dist/bundled/boot-md/handler.js +2 -2
  9. package/dist/bundled/session-memory/handler.js +2 -2
  10. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  11. package/dist/{channel-options-B3FrqAbY.js → channel-options-CBu88unz.js} +1 -1
  12. package/dist/{channel-options-CXChz2Gl.js → channel-options-DSponzlW.js} +1 -1
  13. package/dist/{channels-cli-BqTjGrnV.js → channels-cli-BCYF7mWT.js} +7 -7
  14. package/dist/{channels-cli-DJruxsCI.js → channels-cli-Bcc5qOjU.js} +7 -7
  15. package/dist/{chrome-DNssqQJs.js → chrome-3jl2ulOE.js} +7 -7
  16. package/dist/{cli-n3Th69Yr.js → cli-B97x6rkP.js} +4 -4
  17. package/dist/{cli-oKtyaG-m.js → cli-CJH8m4aQ.js} +4 -4
  18. package/dist/{command-registry-CL9Kg-yN.js → command-registry-D3imrPZK.js} +10 -10
  19. package/dist/{completion-cli-CRZLUn7D.js → completion-cli-C740UxN5.js} +1 -1
  20. package/dist/{completion-cli-CNVJwiv2.js → completion-cli-yJ2YN2Rz.js} +2 -2
  21. package/dist/{config-cli-DfRMdVFn.js → config-cli-D3unzeUl.js} +1 -1
  22. package/dist/{config-cli-DGd8g_Ct.js → config-cli-Koe81w4Z.js} +1 -1
  23. package/dist/{configure-DsebNj9T.js → configure-BpdrzhML.js} +2 -2
  24. package/dist/{configure-CCwkHVZQ.js → configure-DifpX1Ur.js} +2 -2
  25. package/dist/control-ui/css/style.css +54 -3
  26. package/dist/control-ui/index.html +4 -0
  27. package/dist/{deliver-q23ar_Pm.js → deliver-f3cIWxXT.js} +4 -4
  28. package/dist/{doctor-completion-D4zwYnEN.js → doctor-completion-C6YEL2dp.js} +1 -1
  29. package/dist/{doctor-completion-DEqpjKDZ.js → doctor-completion-wZ5L09dU.js} +1 -1
  30. package/dist/entry.js +1 -1
  31. package/dist/extensionAPI.js +4 -4
  32. package/dist/{gateway-cli-DyftuEOb.js → gateway-cli-DqGzKRIZ.js} +10 -10
  33. package/dist/{gateway-cli-BJ6xAu7G.js → gateway-cli-PXLsTcdr.js} +10 -10
  34. package/dist/{glass-ui-ws-Bn9B5Ac_.js → glass-ui-ws-CdUDvHbV.js} +8 -8
  35. package/dist/{glass-ui-ws-BLTXXspr.js → glass-ui-ws-Cn62VWMN.js} +8 -8
  36. package/dist/{hooks-cli-DfCuxn1F.js → hooks-cli-2lJAWBxs.js} +5 -5
  37. package/dist/{hooks-cli-B2V8uacu.js → hooks-cli-BVhozYWU.js} +5 -5
  38. package/dist/index.js +8 -8
  39. package/dist/llm-slug-generator.js +2 -2
  40. package/dist/{manager-BXM8F9zI.js → manager-0eaPU1SZ.js} +1 -1
  41. package/dist/{manager-IHsU3dHx.js → manager-DIusIBzv.js} +1 -1
  42. package/dist/{manager-DjgKz80p.js → manager-DbEvY6wj.js} +1 -1
  43. package/dist/{manager-CDkFM3pi.js → manager-eeu-xRjS.js} +1 -1
  44. package/dist/{memory-DgS1AC6J.js → memory-CIyIuHS3.js} +2 -2
  45. package/dist/{memory-BLluF2i6.js → memory-DIhzkdsJ.js} +2 -2
  46. package/dist/{memory-cli-jmPQDz2s.js → memory-cli-BMPG3My6.js} +2 -2
  47. package/dist/{memory-cli-DQTznta7.js → memory-cli-R2BeQOIN.js} +2 -2
  48. package/dist/{models-BVDQwjWd.js → models-D-5wKlT9.js} +2 -2
  49. package/dist/{models-cli-B1rXMGPT.js → models-cli-C1zC4lKD.js} +6 -6
  50. package/dist/{models-cli-DAwcBLHF.js → models-cli-D5qw1ZpC.js} +5 -5
  51. package/dist/{onboard-BIPhgfaW.js → onboard-BkSAITl5.js} +1 -1
  52. package/dist/{onboard-C9k0zmHq.js → onboard-Cj_YnZJa.js} +1 -1
  53. package/dist/{onboard-channels-BEi6XlDW.js → onboard-channels-CSob-yk7.js} +1 -1
  54. package/dist/{onboard-channels-BkmP8-BZ.js → onboard-channels-Cs8PisRK.js} +1 -1
  55. package/dist/{onboarding-B1NNMstX.js → onboarding-BZ48EHlN.js} +3 -3
  56. package/dist/{onboarding-B2Km9GAJ.js → onboarding-CAAwF3a9.js} +3 -3
  57. package/dist/{onboarding.finalize-xL4ImbkA.js → onboarding.finalize-B3552IcE.js} +4 -4
  58. package/dist/{onboarding.finalize-DJghG2o6.js → onboarding.finalize-CCBybhum.js} +3 -3
  59. package/dist/{pi-embedded-LB2aszfv.js → pi-embedded-CUOgsTPP.js} +46 -27
  60. package/dist/{plugin-registry-C2TXQh4N.js → plugin-registry-DYCw-sNi.js} +1 -1
  61. package/dist/{plugin-registry-CPEFf3Lg.js → plugin-registry-q70u5zpG.js} +1 -1
  62. package/dist/{plugins-cli-Df8zFZuP.js → plugins-cli-CtLc-2Ld.js} +5 -5
  63. package/dist/{plugins-cli-DiB98WvI.js → plugins-cli-DVVRxelh.js} +5 -5
  64. package/dist/{program-BUv-qGcY.js → program-BxxXl80d.js} +10 -10
  65. package/dist/{program-context-B2L7Zll7.js → program-context-BtIXG2qR.js} +18 -18
  66. package/dist/{prompt-select-styled-BMyhMWqW.js → prompt-select-styled-BHhH5ybZ.js} +4 -4
  67. package/dist/{prompt-select-styled-DCTSxBvr.js → prompt-select-styled-ByjTpyot.js} +4 -4
  68. package/dist/{provider-auth-helpers-4CHkGgIn.js → provider-auth-helpers-CAuz6DNd.js} +1 -1
  69. package/dist/{provider-auth-helpers-FDwi4Yzt.js → provider-auth-helpers-DBKEKALS.js} +1 -1
  70. package/dist/{push-apns-MTIWc9yH.js → push-apns-BCSNcIc0.js} +1 -1
  71. package/dist/{push-apns-BzR8krCb.js → push-apns-DL93WtYD.js} +1 -1
  72. package/dist/{pw-ai-v__CyAlM.js → pw-ai-DOAsQ5NX.js} +1 -1
  73. package/dist/{register.agent-CIA-0mpo.js → register.agent-CQGI1gXc.js} +8 -8
  74. package/dist/{register.agent-COTicWGL.js → register.agent-DIY2bwUm.js} +9 -9
  75. package/dist/{register.configure-BV_zrg1a.js → register.configure-BWXNvhzX.js} +8 -8
  76. package/dist/{register.configure-RZHIHn4g.js → register.configure-BapgCBs0.js} +8 -8
  77. package/dist/{register.maintenance-B7OkvZK3.js → register.maintenance-BDVgq9T4.js} +8 -8
  78. package/dist/{register.maintenance-Bgr2ezP7.js → register.maintenance-BlAUANdz.js} +9 -9
  79. package/dist/{register.message-MnKGR-CU.js → register.message-Csbuzuuo.js} +5 -5
  80. package/dist/{register.message-B87VSL0P.js → register.message-DCi7lcog.js} +5 -5
  81. package/dist/{register.onboard-uE1fuOoP.js → register.onboard-BO07mgTh.js} +2 -2
  82. package/dist/{register.onboard-B-mQpES-.js → register.onboard-BRyFTT_p.js} +2 -2
  83. package/dist/{register.setup-DvW7pEmV.js → register.setup-BpkNkSlo.js} +2 -2
  84. package/dist/{register.setup-fD86QH-Z.js → register.setup-CPpe9s0t.js} +2 -2
  85. package/dist/{register.status-health-sessions-DnJHSkWN.js → register.status-health-sessions-BbZjSoaj.js} +3 -3
  86. package/dist/{register.status-health-sessions-CZlmKKRr.js → register.status-health-sessions-CqWSfitY.js} +3 -3
  87. package/dist/{register.subclis-B_zXq-OG.js → register.subclis-BjBF7wWe.js} +9 -9
  88. package/dist/{run-main-BwejEUC8.js → run-main-CkwOELop.js} +17 -17
  89. package/dist/{server-methods-DF_vhByu.js → server-methods-Ce0l0gh5.js} +7 -7
  90. package/dist/{server-methods-fT02jJUv.js → server-methods-Ck3DDa2f.js} +7 -7
  91. package/dist/{server-node-events-C-SSj_J4.js → server-node-events-CFOMv4Fa.js} +6 -6
  92. package/dist/{server-node-events-B0Ah5xv3.js → server-node-events-Qd8n11ct.js} +6 -6
  93. package/dist/{status-C43mMdxl.js → status-CFY6kzHz.js} +1 -1
  94. package/dist/{status-DYN36pJ0.js → status-Dm7Wc3Qd.js} +1 -1
  95. package/dist/{status-9_SJZT-n.js → status-c8NQQ2B0.js} +1 -1
  96. package/dist/{status-BJK_HWiE.js → status-efu_KQ17.js} +1 -1
  97. package/dist/{subagent-registry-odA9HOvg.js → subagent-registry-DiV7CISR.js} +39 -20
  98. package/dist/{synthesis-CVmwfUvx.js → synthesis-Bx3Iep0j.js} +4 -4
  99. package/dist/{synthesis-BI3Vsi69.js → synthesis-CWnI9fLb.js} +4 -4
  100. package/dist/{synthesis-BxLob78U.js → synthesis-DOzB6Nh2.js} +4 -4
  101. package/dist/{synthesis-ByIDCuPD.js → synthesis-DQY0p49e.js} +2 -2
  102. package/dist/{unified-runner-DJTndfeW.js → unified-runner-8JZoT8A5.js} +39 -20
  103. package/dist/{unified-runner-C8BedLLT.js → unified-runner-DPEy1Kdd.js} +39 -20
  104. package/dist/{update-cli-Ce4anXY7.js → update-cli-BtfrRdxV.js} +9 -9
  105. package/dist/{update-cli-BP1MAHhV.js → update-cli-CxntpfBH.js} +8 -8
  106. package/extensions/memory-core/package.json +1 -1
  107. package/extensions/msteams/CHANGELOG.md +12 -0
  108. package/extensions/msteams/package.json +1 -1
  109. package/extensions/open-prose/package.json +1 -1
  110. package/extensions/outlook/package.json +1 -1
  111. package/extensions/slack/package.json +1 -1
  112. package/package.json +1 -1
@@ -49,8 +49,8 @@ import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsX
49
49
  import { i as resolveApiKeyForProvider, n as getCustomProviderApiKey, o as resolveEnvApiKey, r as requireApiKey, s as resolveModelAuthMode, t as getApiKeyForModel } from "./model-auth-Byr7Gic_.js";
50
50
  import { b as OLLAMA_NATIVE_BASE_URL, c as normalizeGoogleModelId, t as ensureSymiModelsJson, x as createOllamaStreamFn } from "./models-config-CiR_RUxw.js";
51
51
  import { i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-DV3KhOhL.js";
52
- import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-DgS1AC6J.js";
53
- import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-CDkFM3pi.js";
52
+ import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-CIyIuHS3.js";
53
+ import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-eeu-xRjS.js";
54
54
  import { f as runTasksWithConcurrency } from "./internal-D3mEiuyB.js";
55
55
  import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-B2lBXhR0.js";
56
56
  import { n as resolveMarkdownTableMode } from "./markdown-tables-BEdkErjm.js";
@@ -83,7 +83,7 @@ import { t as emitSymframePush } from "./symframe-broadcast-BVxModY5.js";
83
83
  import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-CmU8iVio.js";
84
84
  import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-BVJ4-d9c.js";
85
85
  import { t as parseTimeoutMs } from "./parse-timeout-widuTpq9.js";
86
- import { n as registerMemoryCli } from "./memory-cli-jmPQDz2s.js";
86
+ import { n as registerMemoryCli } from "./memory-cli-BMPG3My6.js";
87
87
  import { i as resolveSlackThreadTs, n as deliverReplies, t as createSlackReplyDeliveryPlan } from "./replies-CLREUzzB.js";
88
88
  import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-06k__URR.js";
89
89
  import { createRequire } from "node:module";
@@ -32481,24 +32481,43 @@ function handleMessageEnd(ctx, evt) {
32481
32481
  {
32482
32482
  const totals = ctx.getUsageTotals();
32483
32483
  const modelInfo = assistantMessage;
32484
- emitSymframePush({
32485
- action: "add",
32486
- id: "context-meter",
32487
- card: {
32484
+ const modelId = typeof modelInfo.model === "string" && modelInfo.model ? modelInfo.model : void 0;
32485
+ const provider = typeof modelInfo.provider === "string" && modelInfo.provider ? modelInfo.provider : void 0;
32486
+ const modelName = modelId ?? provider ?? "model";
32487
+ const contextInput = totals?.input ?? 0;
32488
+ const contextOutput = totals?.output ?? 0;
32489
+ const contextCacheRead = totals?.cacheRead ?? 0;
32490
+ const contextCacheWrite = totals?.cacheWrite ?? 0;
32491
+ const contextTotal = totals?.total ?? contextInput + contextOutput + contextCacheRead + contextCacheWrite;
32492
+ (async () => {
32493
+ let contextWindow;
32494
+ try {
32495
+ contextWindow = (await loadModelCatalog()).find((e) => {
32496
+ if (provider && e.provider !== provider) return false;
32497
+ return modelId ? e.id === modelId || e.name === modelId : false;
32498
+ })?.contextWindow;
32499
+ } catch {}
32500
+ emitSymframePush({
32501
+ action: "add",
32488
32502
  id: "context-meter",
32489
- type: "context",
32490
- intent: "holding",
32491
- title: "context",
32492
- contextModel: typeof modelInfo.model === "string" && modelInfo.model ? modelInfo.model : typeof modelInfo.provider === "string" ? modelInfo.provider : "model",
32493
- contextInput: totals?.input ?? 0,
32494
- contextOutput: totals?.output ?? 0,
32495
- contextCacheRead: totals?.cacheRead ?? 0,
32496
- contextCacheWrite: totals?.cacheWrite ?? 0,
32497
- contextTotal: totals?.total ?? (totals?.input ?? 0) + (totals?.output ?? 0) + (totals?.cacheRead ?? 0) + (totals?.cacheWrite ?? 0),
32498
- contextPhase: "running",
32499
- dismissable: true
32500
- }
32501
- });
32503
+ card: {
32504
+ id: "context-meter",
32505
+ type: "context",
32506
+ intent: "holding",
32507
+ title: "context",
32508
+ contextModel: modelName,
32509
+ contextProvider: provider,
32510
+ contextWindow,
32511
+ contextInput,
32512
+ contextOutput,
32513
+ contextCacheRead,
32514
+ contextCacheWrite,
32515
+ contextTotal,
32516
+ contextPhase: "running",
32517
+ dismissable: true
32518
+ }
32519
+ });
32520
+ })();
32502
32521
  }
32503
32522
  const rawText = extractAssistantText$1(assistantMessage);
32504
32523
  appendRawStream({
@@ -6,8 +6,8 @@ import "./model-selection-BisYvTBb.js";
6
6
  import "./reply-prefix-i-FPYcoQ.js";
7
7
  import "./plugins-CZ_mYwXq.js";
8
8
  import "./replies-0nzkXt6o.js";
9
- import { n as runAgentTurn } from "./pi-embedded-LB2aszfv.js";
10
- import "./deliver-q23ar_Pm.js";
9
+ import { n as runAgentTurn } from "./pi-embedded-CUOgsTPP.js";
10
+ import "./deliver-f3cIWxXT.js";
11
11
  import "./diagnostic-BdRnGknC.js";
12
12
  import "./diagnostic-session-state-DpxCUzoM.js";
13
13
  import "./chunk-CAZujdOi.js";
@@ -16,14 +16,14 @@ import "./ssrf-BCSnhba8.js";
16
16
  import "./boolean-BW6OTjPi.js";
17
17
  import "./shell-env-DgjeObDZ.js";
18
18
  import "./manifest-registry-CAWGTwb5.js";
19
- import "./chrome-DNssqQJs.js";
19
+ import "./chrome-3jl2ulOE.js";
20
20
  import "./skills-DO7WNsVJ.js";
21
21
  import "./redact-DSOAcWMe.js";
22
22
  import "./errors-BEU7IHU6.js";
23
23
  import "./tokens-yWO1wD7Z.js";
24
24
  import "./thinking-DgjGxdSP.js";
25
25
  import "./paths-BsT3BvfH.js";
26
- import "./manager-BXM8F9zI.js";
26
+ import "./manager-0eaPU1SZ.js";
27
27
  import "./github-copilot-token-dYUr1mDQ.js";
28
28
  import "./sqlite-D8iYC_CU.js";
29
29
  import "./markdown-tables-jQzXAsf3.js";
@@ -17,7 +17,7 @@ import "./client-BOd5o3Kp.js";
17
17
  import "./call-DTshgdlW.js";
18
18
  import "./message-channel-DXToSaWK.js";
19
19
  import "./pairing-token-B-OTYROz.js";
20
- import { T as runAgentTurn } from "./subagent-registry-odA9HOvg.js";
20
+ import { T as runAgentTurn } from "./subagent-registry-DiV7CISR.js";
21
21
  import "./sessions-Dn6VXn4p.js";
22
22
  import "./plugins-BsEhWvLn.js";
23
23
  import "./send-Dq252-bi.js";
@@ -47,8 +47,8 @@ import "./model-auth-Byr7Gic_.js";
47
47
  import "./github-copilot-token-B5y4__YM.js";
48
48
  import "./models-config-CiR_RUxw.js";
49
49
  import "./reply-prefix-DV3KhOhL.js";
50
- import "./memory-DgS1AC6J.js";
51
- import "./manager-CDkFM3pi.js";
50
+ import "./memory-CIyIuHS3.js";
51
+ import "./manager-eeu-xRjS.js";
52
52
  import "./sqlite-9jF_eajd.js";
53
53
  import "./chunk-B2lBXhR0.js";
54
54
  import "./markdown-tables-BEdkErjm.js";
@@ -79,7 +79,7 @@ import "./links-Dnmd-RS-.js";
79
79
  import "./cli-utils-DXfA5936.js";
80
80
  import "./help-format-Dbp8yEhl.js";
81
81
  import "./progress-CI19Xh3z.js";
82
- import "./memory-cli-jmPQDz2s.js";
82
+ import "./memory-cli-BMPG3My6.js";
83
83
  import "./logging-UO6tk8Em.js";
84
84
  import "./replies-CLREUzzB.js";
85
85
  import "./pi-tools.policy-06k__URR.js";
@@ -1,4 +1,4 @@
1
- import { t as runAgentTurn } from "./unified-runner-C8BedLLT.js";
1
+ import { t as runAgentTurn } from "./unified-runner-DPEy1Kdd.js";
2
2
  import "./registry-Sbac4a4z.js";
3
3
  import "./paths-By0XjHBk.js";
4
4
  import "./utils-CTPsqyE_.js";
@@ -50,8 +50,8 @@ import "./session-cost-usage-D3mgssM_.js";
50
50
  import "./session-utils-Cs1jlD-q.js";
51
51
  import "./with-timeout-DPR4A2dx.js";
52
52
  import "./reply-prefix-BFNeXT65.js";
53
- import "./memory-BLluF2i6.js";
54
- import "./manager-DjgKz80p.js";
53
+ import "./memory-DIhzkdsJ.js";
54
+ import "./manager-DbEvY6wj.js";
55
55
  import "./sqlite-Cod7C5ba.js";
56
56
  import "./chunk-BxfKjCUx.js";
57
57
  import "./markdown-tables-CS1Tvb3z.js";
@@ -82,7 +82,7 @@ import "./links-Bqr0FxXx.js";
82
82
  import "./cli-utils-CuyGL3rq.js";
83
83
  import "./help-format-7hFcsqss.js";
84
84
  import "./progress-swt2y17x.js";
85
- import "./memory-cli-DQTznta7.js";
85
+ import "./memory-cli-R2BeQOIN.js";
86
86
  import "./logging-BWknayJl.js";
87
87
  import "./replies-CbXXjn9X.js";
88
88
  import "./pi-tools.policy-H2t-Xkfc.js";
@@ -3,7 +3,7 @@ import "./registry-C-JddWwo.js";
3
3
  import "./agent-scope-B1Ina6jV.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-DzRUKS9f.js";
5
5
  import "./workspace-CsaDUuDn.js";
6
- import { t as runAgentTurn } from "./unified-runner-DJTndfeW.js";
6
+ import { t as runAgentTurn } from "./unified-runner-8JZoT8A5.js";
7
7
  import "./auth-profiles-BSw0aQND.js";
8
8
  import "./model-selection-BqshlIZc.js";
9
9
  import "./deliver-BiWlR84Y.js";
@@ -25,7 +25,7 @@ import "./paths-BsT3BvfH.js";
25
25
  import "./tokens-D_vCJSzF.js";
26
26
  import "./diagnostic-BALvP9wI.js";
27
27
  import "./diagnostic-session-state-BDfanaOY.js";
28
- import "./manager-IHsU3dHx.js";
28
+ import "./manager-DIusIBzv.js";
29
29
  import "./github-copilot-token-uhEBNQfj.js";
30
30
  import "./pi-auth-json-DCGR3yfh.js";
31
31
  import "./reply-prefix-D0NzzC4I.js";
@@ -31,7 +31,7 @@ import { t as emitSessionTranscriptUpdate } from "./transcript-events-ChU6IQwp.j
31
31
  import { n as isSilentReplyText, t as SILENT_REPLY_TOKEN } from "./tokens-D_vCJSzF.js";
32
32
  import { a as logMessageProcessed, i as logLaneEnqueue, o as logMessageQueued, r as logLaneDequeue, s as logSessionStateChange, t as diag } from "./diagnostic-BALvP9wI.js";
33
33
  import { n as getDiagnosticSessionState } from "./diagnostic-session-state-BDfanaOY.js";
34
- import { a as parseGeminiAuth, c as resolveMemorySearchConfig, d as requireApiKey, f as resolveApiKeyForProvider, h as resolveModelAuthMode, i as resolveOllamaBaseUrl, l as getApiKeyForModel, m as resolveEnvApiKey, n as retryAsync, o as collectProviderApiKeysForExecution, p as resolveAwsSdkEnvVarName, r as probeOllamaEmbeddingModels, s as executeWithApiKeyRotation, u as getCustomProviderApiKey } from "./manager-IHsU3dHx.js";
34
+ import { a as parseGeminiAuth, c as resolveMemorySearchConfig, d as requireApiKey, f as resolveApiKeyForProvider, h as resolveModelAuthMode, i as resolveOllamaBaseUrl, l as getApiKeyForModel, m as resolveEnvApiKey, n as retryAsync, o as collectProviderApiKeysForExecution, p as resolveAwsSdkEnvVarName, r as probeOllamaEmbeddingModels, s as executeWithApiKeyRotation, u as getCustomProviderApiKey } from "./manager-DIusIBzv.js";
35
35
  import { r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-uhEBNQfj.js";
36
36
  import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-DCGR3yfh.js";
37
37
  import { a as resolveEffectiveMessagesConfig, i as resolveAckReaction, o as resolveHumanDelayConfig, r as resolveResponsePrefixTemplate, t as createReplyPrefixOptions } from "./reply-prefix-D0NzzC4I.js";
@@ -4460,7 +4460,7 @@ async function getMemorySearchManager(params) {
4460
4460
  const wrapper = new FallbackMemoryManager({
4461
4461
  primary,
4462
4462
  fallbackFactory: async () => {
4463
- const { MemoryIndexManager } = await import("./manager-IHsU3dHx.js").then((n) => n.t);
4463
+ const { MemoryIndexManager } = await import("./manager-DIusIBzv.js").then((n) => n.t);
4464
4464
  return await MemoryIndexManager.get(params);
4465
4465
  }
4466
4466
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -4473,7 +4473,7 @@ async function getMemorySearchManager(params) {
4473
4473
  }
4474
4474
  }
4475
4475
  try {
4476
- const { MemoryIndexManager } = await import("./manager-IHsU3dHx.js").then((n) => n.t);
4476
+ const { MemoryIndexManager } = await import("./manager-DIusIBzv.js").then((n) => n.t);
4477
4477
  return { manager: await MemoryIndexManager.get(params) };
4478
4478
  } catch (err) {
4479
4479
  return {
@@ -58292,24 +58292,43 @@ function handleMessageEnd(ctx, evt) {
58292
58292
  {
58293
58293
  const totals = ctx.getUsageTotals();
58294
58294
  const modelInfo = assistantMessage;
58295
- emitSymframePush({
58296
- action: "add",
58297
- id: "context-meter",
58298
- card: {
58295
+ const modelId = typeof modelInfo.model === "string" && modelInfo.model ? modelInfo.model : void 0;
58296
+ const provider = typeof modelInfo.provider === "string" && modelInfo.provider ? modelInfo.provider : void 0;
58297
+ const modelName = modelId ?? provider ?? "model";
58298
+ const contextInput = totals?.input ?? 0;
58299
+ const contextOutput = totals?.output ?? 0;
58300
+ const contextCacheRead = totals?.cacheRead ?? 0;
58301
+ const contextCacheWrite = totals?.cacheWrite ?? 0;
58302
+ const contextTotal = totals?.total ?? contextInput + contextOutput + contextCacheRead + contextCacheWrite;
58303
+ (async () => {
58304
+ let contextWindow;
58305
+ try {
58306
+ contextWindow = (await loadModelCatalog()).find((e) => {
58307
+ if (provider && e.provider !== provider) return false;
58308
+ return modelId ? e.id === modelId || e.name === modelId : false;
58309
+ })?.contextWindow;
58310
+ } catch {}
58311
+ emitSymframePush({
58312
+ action: "add",
58299
58313
  id: "context-meter",
58300
- type: "context",
58301
- intent: "holding",
58302
- title: "context",
58303
- contextModel: typeof modelInfo.model === "string" && modelInfo.model ? modelInfo.model : typeof modelInfo.provider === "string" ? modelInfo.provider : "model",
58304
- contextInput: totals?.input ?? 0,
58305
- contextOutput: totals?.output ?? 0,
58306
- contextCacheRead: totals?.cacheRead ?? 0,
58307
- contextCacheWrite: totals?.cacheWrite ?? 0,
58308
- contextTotal: totals?.total ?? (totals?.input ?? 0) + (totals?.output ?? 0) + (totals?.cacheRead ?? 0) + (totals?.cacheWrite ?? 0),
58309
- contextPhase: "running",
58310
- dismissable: true
58311
- }
58312
- });
58314
+ card: {
58315
+ id: "context-meter",
58316
+ type: "context",
58317
+ intent: "holding",
58318
+ title: "context",
58319
+ contextModel: modelName,
58320
+ contextProvider: provider,
58321
+ contextWindow,
58322
+ contextInput,
58323
+ contextOutput,
58324
+ contextCacheRead,
58325
+ contextCacheWrite,
58326
+ contextTotal,
58327
+ contextPhase: "running",
58328
+ dismissable: true
58329
+ }
58330
+ });
58331
+ })();
58313
58332
  }
58314
58333
  const rawText = extractAssistantText$1(assistantMessage);
58315
58334
  appendRawStream({
@@ -52,8 +52,8 @@ import { c as hasNonzeroUsage, l as normalizeUsage, n as loadCostUsageSummary, o
52
52
  import { C as enqueueSystemEvent, E as buildChannelSummary, S as drainSystemEventEntries, _ as loadProviderUsageSummary, a as loadCombinedSessionStoreForGateway, b as resolveUsageProviderId, d as formatDoctorNonInteractiveHint, g as writeRestartSentinel, k as redactIdentifier, x as lookupContextTokens, y as formatUsageWindowSummary } from "./session-utils-Cs1jlD-q.js";
53
53
  import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$2 } from "./with-timeout-DPR4A2dx.js";
54
54
  import { i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-BFNeXT65.js";
55
- import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-BLluF2i6.js";
56
- import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-DjgKz80p.js";
55
+ import { n as resolveMemoryBackendConfig, t as getMemorySearchManager } from "./memory-DIhzkdsJ.js";
56
+ import { a as parseGeminiAuth, c as resolveMemorySearchConfig, n as retryAsync, o as collectProviderApiKeysForExecution, s as executeWithApiKeyRotation } from "./manager-DbEvY6wj.js";
57
57
  import { f as runTasksWithConcurrency } from "./internal-DVCddhhN.js";
58
58
  import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-BxfKjCUx.js";
59
59
  import { n as resolveMarkdownTableMode } from "./markdown-tables-CS1Tvb3z.js";
@@ -86,7 +86,7 @@ import { t as emitSymframePush } from "./symframe-broadcast-CXo2qoxy.js";
86
86
  import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-H1qOf0q-.js";
87
87
  import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-C1IIA6kH.js";
88
88
  import { t as parseTimeoutMs } from "./parse-timeout-DmEcHIsV.js";
89
- import { n as registerMemoryCli } from "./memory-cli-DQTznta7.js";
89
+ import { n as registerMemoryCli } from "./memory-cli-R2BeQOIN.js";
90
90
  import { i as resolveSlackThreadTs, n as deliverReplies, t as createSlackReplyDeliveryPlan } from "./replies-CbXXjn9X.js";
91
91
  import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-H2t-Xkfc.js";
92
92
  import { a as buildModelAliasLines, n as resolveModel$2 } from "./model-MUMSB_7d.js";
@@ -45626,24 +45626,43 @@ function handleMessageEnd(ctx, evt) {
45626
45626
  {
45627
45627
  const totals = ctx.getUsageTotals();
45628
45628
  const modelInfo = assistantMessage;
45629
- emitSymframePush({
45630
- action: "add",
45631
- id: "context-meter",
45632
- card: {
45629
+ const modelId = typeof modelInfo.model === "string" && modelInfo.model ? modelInfo.model : void 0;
45630
+ const provider = typeof modelInfo.provider === "string" && modelInfo.provider ? modelInfo.provider : void 0;
45631
+ const modelName = modelId ?? provider ?? "model";
45632
+ const contextInput = totals?.input ?? 0;
45633
+ const contextOutput = totals?.output ?? 0;
45634
+ const contextCacheRead = totals?.cacheRead ?? 0;
45635
+ const contextCacheWrite = totals?.cacheWrite ?? 0;
45636
+ const contextTotal = totals?.total ?? contextInput + contextOutput + contextCacheRead + contextCacheWrite;
45637
+ (async () => {
45638
+ let contextWindow;
45639
+ try {
45640
+ contextWindow = (await loadModelCatalog()).find((e) => {
45641
+ if (provider && e.provider !== provider) return false;
45642
+ return modelId ? e.id === modelId || e.name === modelId : false;
45643
+ })?.contextWindow;
45644
+ } catch {}
45645
+ emitSymframePush({
45646
+ action: "add",
45633
45647
  id: "context-meter",
45634
- type: "context",
45635
- intent: "holding",
45636
- title: "context",
45637
- contextModel: typeof modelInfo.model === "string" && modelInfo.model ? modelInfo.model : typeof modelInfo.provider === "string" ? modelInfo.provider : "model",
45638
- contextInput: totals?.input ?? 0,
45639
- contextOutput: totals?.output ?? 0,
45640
- contextCacheRead: totals?.cacheRead ?? 0,
45641
- contextCacheWrite: totals?.cacheWrite ?? 0,
45642
- contextTotal: totals?.total ?? (totals?.input ?? 0) + (totals?.output ?? 0) + (totals?.cacheRead ?? 0) + (totals?.cacheWrite ?? 0),
45643
- contextPhase: "running",
45644
- dismissable: true
45645
- }
45646
- });
45648
+ card: {
45649
+ id: "context-meter",
45650
+ type: "context",
45651
+ intent: "holding",
45652
+ title: "context",
45653
+ contextModel: modelName,
45654
+ contextProvider: provider,
45655
+ contextWindow,
45656
+ contextInput,
45657
+ contextOutput,
45658
+ contextCacheRead,
45659
+ contextCacheWrite,
45660
+ contextTotal,
45661
+ contextPhase: "running",
45662
+ dismissable: true
45663
+ }
45664
+ });
45665
+ })();
45647
45666
  }
45648
45667
  const rawText = extractAssistantText$1(assistantMessage);
45649
45668
  appendRawStream({
@@ -21,7 +21,7 @@ import "./client-BOd5o3Kp.js";
21
21
  import "./call-DTshgdlW.js";
22
22
  import "./message-channel-DXToSaWK.js";
23
23
  import "./pairing-token-B-OTYROz.js";
24
- import "./subagent-registry-odA9HOvg.js";
24
+ import "./subagent-registry-DiV7CISR.js";
25
25
  import "./sessions-Dn6VXn4p.js";
26
26
  import "./plugins-BsEhWvLn.js";
27
27
  import "./send-Dq252-bi.js";
@@ -51,8 +51,8 @@ import "./model-auth-Byr7Gic_.js";
51
51
  import "./github-copilot-token-B5y4__YM.js";
52
52
  import "./models-config-CiR_RUxw.js";
53
53
  import "./reply-prefix-DV3KhOhL.js";
54
- import "./memory-DgS1AC6J.js";
55
- import "./manager-CDkFM3pi.js";
54
+ import "./memory-CIyIuHS3.js";
55
+ import "./manager-eeu-xRjS.js";
56
56
  import "./sqlite-9jF_eajd.js";
57
57
  import "./chunk-B2lBXhR0.js";
58
58
  import "./markdown-tables-BEdkErjm.js";
@@ -85,7 +85,7 @@ import { t as formatDocsLink } from "./links-Dnmd-RS-.js";
85
85
  import "./cli-utils-DXfA5936.js";
86
86
  import { t as formatHelpExamples } from "./help-format-Dbp8yEhl.js";
87
87
  import "./progress-CI19Xh3z.js";
88
- import "./memory-cli-jmPQDz2s.js";
88
+ import "./memory-cli-BMPG3My6.js";
89
89
  import "./logging-UO6tk8Em.js";
90
90
  import "./replies-CLREUzzB.js";
91
91
  import "./pi-tools.policy-06k__URR.js";
@@ -99,10 +99,10 @@ import "./npm-registry-spec-BPgK9EL7.js";
99
99
  import "./skill-scanner-BC3PyNso.js";
100
100
  import "./installs-Dunp9UFl.js";
101
101
  import "./channels-status-issues-BTvrA4nx.js";
102
- import "./register.subclis-B_zXq-OG.js";
103
- import "./command-registry-CL9Kg-yN.js";
102
+ import "./register.subclis-BjBF7wWe.js";
103
+ import "./command-registry-D3imrPZK.js";
104
104
  import "./program-context-B_0V80zV.js";
105
- import { r as installCompletion } from "./completion-cli-CNVJwiv2.js";
105
+ import { r as installCompletion } from "./completion-cli-yJ2YN2Rz.js";
106
106
  import "./daemon-runtime-AkgOtHR6.js";
107
107
  import { r as parseSemver } from "./runtime-guard-LRRZ73eX.js";
108
108
  import "./onboard-helpers-t7tI9KSA.js";
@@ -124,8 +124,8 @@ import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from
124
124
  import "./doctor-config-flow-BIBJeoRl.js";
125
125
  import "./systemd-linger-CctFkWNE.js";
126
126
  import "./health-format-6tfMqkNX.js";
127
- import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-BMyhMWqW.js";
128
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-D4zwYnEN.js";
127
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-BHhH5ybZ.js";
128
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-C6YEL2dp.js";
129
129
  import { spawn, spawnSync } from "node:child_process";
130
130
  import os from "node:os";
131
131
  import path from "node:path";
@@ -1,4 +1,4 @@
1
- import "./unified-runner-C8BedLLT.js";
1
+ import "./unified-runner-DPEy1Kdd.js";
2
2
  import { j as theme } from "./registry-Sbac4a4z.js";
3
3
  import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
4
4
  import { f as pathExists } from "./utils-CTPsqyE_.js";
@@ -53,8 +53,8 @@ import "./session-cost-usage-D3mgssM_.js";
53
53
  import { h as trimLogTail } from "./session-utils-Cs1jlD-q.js";
54
54
  import "./with-timeout-DPR4A2dx.js";
55
55
  import "./reply-prefix-BFNeXT65.js";
56
- import "./memory-BLluF2i6.js";
57
- import "./manager-DjgKz80p.js";
56
+ import "./memory-DIhzkdsJ.js";
57
+ import "./manager-DbEvY6wj.js";
58
58
  import "./sqlite-Cod7C5ba.js";
59
59
  import "./chunk-BxfKjCUx.js";
60
60
  import "./markdown-tables-CS1Tvb3z.js";
@@ -87,13 +87,13 @@ import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
87
87
  import "./cli-utils-CuyGL3rq.js";
88
88
  import { t as formatHelpExamples } from "./help-format-7hFcsqss.js";
89
89
  import "./progress-swt2y17x.js";
90
- import "./memory-cli-DQTznta7.js";
90
+ import "./memory-cli-R2BeQOIN.js";
91
91
  import "./logging-BWknayJl.js";
92
92
  import "./replies-CbXXjn9X.js";
93
93
  import "./pi-tools.policy-H2t-Xkfc.js";
94
94
  import "./model-MUMSB_7d.js";
95
95
  import { r as parseSemver } from "./runtime-guard-CWA00ZXa.js";
96
- import "./program-context-B2L7Zll7.js";
96
+ import "./program-context-BtIXG2qR.js";
97
97
  import "./catalog-BptA-dUv.js";
98
98
  import "./skills-status-BKX1PjCc.js";
99
99
  import { n as inheritOptionFromParent } from "./command-options-DDDwkB9t.js";
@@ -105,7 +105,7 @@ import "./npm-registry-spec-DTqn-NXZ.js";
105
105
  import "./skill-scanner-BCgVcIwi.js";
106
106
  import "./installs-D890uIIW.js";
107
107
  import "./channels-status-issues-DLIzUsjR.js";
108
- import { r as installCompletion } from "./completion-cli-CRZLUn7D.js";
108
+ import { r as installCompletion } from "./completion-cli-C740UxN5.js";
109
109
  import "./daemon-runtime-DlQla_dA.js";
110
110
  import "./onboard-helpers-7IGQ8nAM.js";
111
111
  import "./systemd-CUIM0n5P.js";
@@ -126,8 +126,8 @@ import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from
126
126
  import "./doctor-config-flow-C52W1uUK.js";
127
127
  import "./systemd-linger-BzYk7A6M.js";
128
128
  import "./health-format-Bxg84_f4.js";
129
- import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-DCTSxBvr.js";
130
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DEqpjKDZ.js";
129
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-ByjTpyot.js";
130
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-wZ5L09dU.js";
131
131
  import path from "node:path";
132
132
  import os from "node:os";
133
133
  import fs from "node:fs/promises";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symi/memory-core",
3
- "version": "3.5.38",
3
+ "version": "3.5.40",
4
4
  "private": true,
5
5
  "description": "Symi core memory search plugin",
6
6
  "type": "module",
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 3.5.40
4
+
5
+ ### Changes
6
+
7
+ - Version alignment with core Symi release numbers.
8
+
9
+ ## 3.5.39
10
+
11
+ ### Changes
12
+
13
+ - Version alignment with core Symi release numbers.
14
+
3
15
  ## 3.5.38
4
16
 
5
17
  ### Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symi/msteams",
3
- "version": "3.5.38",
3
+ "version": "3.5.40",
4
4
  "description": "Symi Microsoft Teams channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symi/open-prose",
3
- "version": "3.5.38",
3
+ "version": "3.5.40",
4
4
  "private": true,
5
5
  "description": "OpenProse VM skill pack plugin (slash command + telemetry).",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symi/outlook",
3
- "version": "3.5.38",
3
+ "version": "3.5.40",
4
4
  "private": true,
5
5
  "description": "Symi Outlook 365 email integration via Microsoft Graph API",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symi/slack",
3
- "version": "3.5.38",
3
+ "version": "3.5.40",
4
4
  "private": true,
5
5
  "description": "Symi Slack channel plugin",
6
6
  "type": "module",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symerian/symi",
3
- "version": "3.5.38",
3
+ "version": "3.5.40",
4
4
  "description": "Multi-channel AI gateway with extensible messaging integrations",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/jaysteelmind/symi#readme",