@symerian/symi 3.5.33 → 3.5.34

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 (113) hide show
  1. package/dist/{agent-_8O2q22a.js → agent-DkwJ_C7T.js} +1 -1
  2. package/dist/{agent-Bt6Mg6tN.js → agent-Dyqpglpp.js} +1 -1
  3. package/dist/{agents-Vp-Z9p7d.js → agents-CuwUmffQ.js} +2 -2
  4. package/dist/{auth-choice-DKYz4IVA.js → auth-choice-CbNJI71b.js} +1 -1
  5. package/dist/{auth-choice-CGoOl1W1.js → auth-choice-Di2NnC96.js} +1 -1
  6. package/dist/{banner-CRWXer7O.js → banner-F6EJmEcS.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-DCTxFF6Q.js → channel-options-CLEZcALj.js} +1 -1
  12. package/dist/{channel-options-CJybMNab.js → channel-options-IVQWWWuc.js} +1 -1
  13. package/dist/{channels-cli-DZt1Cvdz.js → channels-cli-Bl17If5e.js} +7 -7
  14. package/dist/{channels-cli-om139RPU.js → channels-cli-D8d9ok3b.js} +7 -7
  15. package/dist/{chrome-DNssqQJs.js → chrome-3jl2ulOE.js} +7 -7
  16. package/dist/{cli-Bv1nUo9u.js → cli-BIoLyk88.js} +4 -4
  17. package/dist/{cli-C2-eHINP.js → cli-CbAnYkYs.js} +4 -4
  18. package/dist/{command-registry-dhtbmE5H.js → command-registry-C5LOUwKq.js} +10 -10
  19. package/dist/{completion-cli-COi7vEYW.js → completion-cli-Dcc5-bYY.js} +2 -2
  20. package/dist/{completion-cli-Db4l70VM.js → completion-cli-DewJuifK.js} +1 -1
  21. package/dist/{config-cli-EA720djS.js → config-cli-CMsbPGB3.js} +1 -1
  22. package/dist/{config-cli-KZLy9MiQ.js → config-cli-DemkhbXj.js} +1 -1
  23. package/dist/{configure-DPlT_UCY.js → configure-CW75YbiI.js} +2 -2
  24. package/dist/{configure-iuJmiuup.js → configure-Dc5xcSyf.js} +2 -2
  25. package/dist/control-ui/css/style.css +75 -0
  26. package/dist/control-ui/js/symframe.js +38 -0
  27. package/dist/{deliver-q23ar_Pm.js → deliver-f3cIWxXT.js} +4 -4
  28. package/dist/{doctor-completion-DGqRy0Cz.js → doctor-completion-BpVYwGK0.js} +1 -1
  29. package/dist/{doctor-completion-CewCMEl2.js → doctor-completion-DQmw1ojx.js} +1 -1
  30. package/dist/entry.js +1 -1
  31. package/dist/extensionAPI.js +4 -4
  32. package/dist/{gateway-cli-CKfsJdhp.js → gateway-cli-Dx6ulSWd.js} +10 -10
  33. package/dist/{gateway-cli-DrGrF6Bs.js → gateway-cli-TdnIAl4W.js} +10 -10
  34. package/dist/{glass-ui-ws-pIUgjT7J.js → glass-ui-ws-BF5GGXNz.js} +8 -8
  35. package/dist/{glass-ui-ws-DdeGPN_x.js → glass-ui-ws-CZkskC04.js} +8 -8
  36. package/dist/{hooks-cli-N0huwTDb.js → hooks-cli-DFMpZI4k.js} +5 -5
  37. package/dist/{hooks-cli-CQI6K5RQ.js → hooks-cli-Djw7WFoS.js} +5 -5
  38. package/dist/index.js +8 -8
  39. package/dist/llm-slug-generator.js +2 -2
  40. package/dist/{manager-xUNV-43S.js → manager-BVgukgOu.js} +1 -1
  41. package/dist/{manager-DiD9uXmC.js → manager-CAdF4u2G.js} +1 -1
  42. package/dist/{manager-Cv0Qqs-i.js → manager-DSXvXUZQ.js} +1 -1
  43. package/dist/{manager-C1nI_dqb.js → manager-Dw6j9KTZ.js} +1 -1
  44. package/dist/{memory-D0mvqRoH.js → memory-7DZfwFEz.js} +2 -2
  45. package/dist/{memory-BPVD3vxj.js → memory-CuBkKhKM.js} +2 -2
  46. package/dist/{memory-cli-CHqD-NnN.js → memory-cli-C8h9g8yO.js} +2 -2
  47. package/dist/{memory-cli-0d49vHrN.js → memory-cli-CGqqpDlw.js} +2 -2
  48. package/dist/{models-DV9S_FIE.js → models-CLJSIS8A.js} +2 -2
  49. package/dist/{models-cli-BKvgQEeX.js → models-cli-CbG4PAoP.js} +5 -5
  50. package/dist/{models-cli-DMqrIAd-.js → models-cli-D9bmuwoB.js} +6 -6
  51. package/dist/{onboard-CHlG7cRV.js → onboard-BY-QnWdl.js} +1 -1
  52. package/dist/{onboard--gW_iFPC.js → onboard-BdPqyQmJ.js} +1 -1
  53. package/dist/{onboard-channels-f5axd972.js → onboard-channels-Bzi2ck6V.js} +1 -1
  54. package/dist/{onboard-channels-C2S5txWG.js → onboard-channels-C8bsROUq.js} +1 -1
  55. package/dist/{onboarding-CMZaGD0x.js → onboarding-Ccnav61g.js} +3 -3
  56. package/dist/{onboarding-BnEiVW9s.js → onboarding-Hbt4RoTz.js} +3 -3
  57. package/dist/{onboarding.finalize-BKADBjqn.js → onboarding.finalize--xJkztAR.js} +3 -3
  58. package/dist/{onboarding.finalize-Br7a9LAG.js → onboarding.finalize-OpyyTxY1.js} +4 -4
  59. package/dist/{pi-embedded-B9Dhow_H.js → pi-embedded-RgjY3r6K.js} +66 -10
  60. package/dist/{plugin-registry-0UStQ7W0.js → plugin-registry-B_NJFVHQ.js} +1 -1
  61. package/dist/{plugin-registry-DS4ST-Y2.js → plugin-registry-X13tkCTS.js} +1 -1
  62. package/dist/plugin-sdk/index.js +6 -6
  63. package/dist/{plugins-cli-er9ogmCp.js → plugins-cli-C4bJxBRh.js} +5 -5
  64. package/dist/{plugins-cli-DVTehGDF.js → plugins-cli-DtdwfV-d.js} +5 -5
  65. package/dist/{program-context-DdmFH7Cp.js → program-context-YblB1bz7.js} +18 -18
  66. package/dist/{program-D-0WYYlC.js → program-qzq3Lh15.js} +10 -10
  67. package/dist/{prompt-select-styled-vGccUKhR.js → prompt-select-styled-B_ial7p9.js} +4 -4
  68. package/dist/{prompt-select-styled-BM9wWyI-.js → prompt-select-styled-CQDea8e4.js} +4 -4
  69. package/dist/{provider-auth-helpers-Cqbaelri.js → provider-auth-helpers-BcP3qXzm.js} +1 -1
  70. package/dist/{provider-auth-helpers-BL9b1FfT.js → provider-auth-helpers-BjVtTJHF.js} +1 -1
  71. package/dist/{push-apns-BFn57H8S.js → push-apns-BWhqnXlG.js} +1 -1
  72. package/dist/{push-apns-DOFxmS8_.js → push-apns-D5FHZT1S.js} +1 -1
  73. package/dist/{pw-ai-v__CyAlM.js → pw-ai-DOAsQ5NX.js} +1 -1
  74. package/dist/{register.agent-B2IHb1wt.js → register.agent-BDw4ZFQo.js} +9 -9
  75. package/dist/{register.agent-CyoF3uiI.js → register.agent-DBb8ssU_.js} +8 -8
  76. package/dist/{register.configure-CyjtBFqz.js → register.configure-ClTC_gFo.js} +8 -8
  77. package/dist/{register.configure-Bmj3lkgi.js → register.configure-DwN6_ucd.js} +8 -8
  78. package/dist/{register.maintenance-D0crO8FC.js → register.maintenance-C4EBdIW-.js} +9 -9
  79. package/dist/{register.maintenance-BdJMnGR5.js → register.maintenance-J8-7UEyc.js} +8 -8
  80. package/dist/{register.message-BSie6t4a.js → register.message-CBkdglWp.js} +5 -5
  81. package/dist/{register.message-DHZmSrnW.js → register.message-DkhnvbOo.js} +5 -5
  82. package/dist/{register.onboard-CH-qxgyo.js → register.onboard-B62sO2YM.js} +2 -2
  83. package/dist/{register.onboard-CCZI7O-C.js → register.onboard-BTM1uWDL.js} +2 -2
  84. package/dist/{register.setup-CoxrZJWQ.js → register.setup-C7ai_6EG.js} +2 -2
  85. package/dist/{register.setup-CJhL35sR.js → register.setup-X1z8nL1f.js} +2 -2
  86. package/dist/{register.status-health-sessions-DM5hIwtm.js → register.status-health-sessions-PBqHdGtS.js} +3 -3
  87. package/dist/{register.status-health-sessions-DwbUXRBk.js → register.status-health-sessions-oi4VY1yI.js} +3 -3
  88. package/dist/{register.subclis-VsMMpQQN.js → register.subclis-C1nbYmb-.js} +9 -9
  89. package/dist/{run-main-DUWpRI1w.js → run-main-Dcnq5F34.js} +17 -17
  90. package/dist/{server-methods-Bb9tFpUg.js → server-methods-B8BrOzmI.js} +7 -7
  91. package/dist/{server-methods-Ks6EkY9L.js → server-methods-Cb-Z7rAJ.js} +7 -7
  92. package/dist/{server-node-events-CSbKHyjJ.js → server-node-events-BHcTrVe6.js} +6 -6
  93. package/dist/{server-node-events-CMww2xmX.js → server-node-events-DnbQWd7e.js} +6 -6
  94. package/dist/{status-BJ3X3PxD.js → status-CMnu_ZM8.js} +1 -1
  95. package/dist/{status-BD_s-wIt.js → status-DtfiqHU9.js} +1 -1
  96. package/dist/{status-BUGRo8kk.js → status-KQBTdecN.js} +1 -1
  97. package/dist/{status-9ot0bcuW.js → status-qu-13pDh.js} +1 -1
  98. package/dist/{subagent-registry-BDj_vbwB.js → subagent-registry-BagjubTG.js} +59 -3
  99. package/dist/{synthesis-B1T3Vj63.js → synthesis-BFginQes.js} +4 -4
  100. package/dist/{synthesis-dXo-gmWS.js → synthesis-CNxkpSl0.js} +4 -4
  101. package/dist/{synthesis-DffSaiSK.js → synthesis-CjbRZN2u.js} +4 -4
  102. package/dist/{synthesis-CnAORBtf.js → synthesis-CzEJh0zD.js} +2 -2
  103. package/dist/{unified-runner-Cz7iBOgg.js → unified-runner-B2uJpfUK.js} +59 -3
  104. package/dist/{unified-runner-Bcapans4.js → unified-runner-BoNa4zCp.js} +59 -3
  105. package/dist/{update-cli-CppPa_Bz.js → update-cli-D6uHO0yM.js} +9 -9
  106. package/dist/{update-cli-CMqYGsDK.js → update-cli-Dj7wVif6.js} +8 -8
  107. package/extensions/memory-core/package.json +1 -1
  108. package/extensions/msteams/CHANGELOG.md +6 -0
  109. package/extensions/msteams/package.json +1 -1
  110. package/extensions/open-prose/package.json +1 -1
  111. package/extensions/outlook/package.json +1 -1
  112. package/extensions/slack/package.json +1 -1
  113. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { $t as emitAgentEvent, A as resolveSessionDeliveryTarget, An as resolveFailoverStatus, Dn as runWithModelFallback, It as clearSessionAuthProfileOverride, Kt as resolveAgentTimeoutMs, On as FailoverError, Qt as clearAgentRunContext, Xt as AGENT_LANE_SUBAGENT, Yt as AGENT_LANE_NESTED, _n as resolveRunWorkspaceDir, bt as applyModelOverrideToSessionEntry, ft as getProcessSupervisor, gn as redactRunIdentifier, hn as resolveBootstrapContextForRun, ht as resolveSendPolicy, k as resolveOutboundTarget, mn as makeBootstrapWarn, nn as registerAgentRunContext, pt as detectRuntimeShell, rn as buildAgentSystemPrompt, t as runAgentTurn, un as resolveSymiDocsPath, ut as buildSystemPromptParams, xt as applyVerboseOverride } from "./unified-runner-Bcapans4.js";
1
+ import { $t as emitAgentEvent, A as resolveSessionDeliveryTarget, An as resolveFailoverStatus, Dn as runWithModelFallback, It as clearSessionAuthProfileOverride, Kt as resolveAgentTimeoutMs, On as FailoverError, Qt as clearAgentRunContext, Xt as AGENT_LANE_SUBAGENT, Yt as AGENT_LANE_NESTED, _n as resolveRunWorkspaceDir, bt as applyModelOverrideToSessionEntry, ft as getProcessSupervisor, gn as redactRunIdentifier, hn as resolveBootstrapContextForRun, ht as resolveSendPolicy, k as resolveOutboundTarget, mn as makeBootstrapWarn, nn as registerAgentRunContext, pt as detectRuntimeShell, rn as buildAgentSystemPrompt, t as runAgentTurn, un as resolveSymiDocsPath, ut as buildSystemPromptParams, xt as applyVerboseOverride } from "./unified-runner-BoNa4zCp.js";
2
2
  import { D as shouldLogVerbose, r as DEFAULT_CHAT_CHANNEL } from "./registry-Sbac4a4z.js";
3
3
  import { u as isRecord } from "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
@@ -8,7 +8,7 @@ import { a as buildModelAliasLines } from "./model-B4Btg-Q6.js";
8
8
  import { r as buildWorkspaceSkillSnapshot } from "./skills-cLBEdkqu.js";
9
9
  import { i as loadConfig } from "./config-D7TcU4qN.js";
10
10
  import { a as isInternalMessageChannel, d as resolveMessageChannel, i as isGatewayMessageChannel, l as normalizeMessageChannel, n as isDeliverableMessageChannel, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DXToSaWK.js";
11
- import { A as resolveRunWorkspaceDir, At as buildAgentSystemPrompt, Cn as emitAgentEvent, En as registerAgentRunContext, Ht as applyVerboseOverride, It as resolveSendPolicy, Nt as getProcessSupervisor, Pt as detectRuntimeShell, Q as resolveFailoverStatus, Sn as clearAgentRunContext, T as runAgentTurn, U as resolveOutboundTarget, Vt as applyModelOverrideToSessionEntry, W as resolveSessionDeliveryTarget, X as FailoverError, Y as runWithModelFallback, an as clearSessionAuthProfileOverride, bt as AGENT_LANE_NESTED, hn as resolveBootstrapContextForRun, jt as buildSystemPromptParams, k as redactRunIdentifier, mn as makeBootstrapWarn, tn as resolveAgentTimeoutMs, un as resolveSymiDocsPath, xt as AGENT_LANE_SUBAGENT } from "./subagent-registry-BDj_vbwB.js";
11
+ import { A as resolveRunWorkspaceDir, At as buildAgentSystemPrompt, Cn as emitAgentEvent, En as registerAgentRunContext, Ht as applyVerboseOverride, It as resolveSendPolicy, Nt as getProcessSupervisor, Pt as detectRuntimeShell, Q as resolveFailoverStatus, Sn as clearAgentRunContext, T as runAgentTurn, U as resolveOutboundTarget, Vt as applyModelOverrideToSessionEntry, W as resolveSessionDeliveryTarget, X as FailoverError, Y as runWithModelFallback, an as clearSessionAuthProfileOverride, bt as AGENT_LANE_NESTED, hn as resolveBootstrapContextForRun, jt as buildSystemPromptParams, k as redactRunIdentifier, mn as makeBootstrapWarn, tn as resolveAgentTimeoutMs, un as resolveSymiDocsPath, xt as AGENT_LANE_SUBAGENT } from "./subagent-registry-BagjubTG.js";
12
12
  import { D as resolveSessionResetPolicy, E as resolveChannelResetConfig, O as resolveSessionResetType, P as resolveExplicitAgentSessionKey, T as evaluateSessionFreshness, Y as normalizeAccountId, a as resolveAndPersistSessionFile, d as updateSessionStore, n as parseSessionThreadInfo, o as loadSessionStore, w as resolveSessionKey } from "./sessions-Dn6VXn4p.js";
13
13
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BsEhWvLn.js";
14
14
  import { a as normalizeOutboundPayloadsForJson, i as normalizeOutboundPayloads, r as formatOutboundPayloadLog, t as deliverOutboundPayloads } from "./deliver-DIK2emIV.js";
@@ -10,13 +10,13 @@ import { s as resolveSessionTranscriptsDirForAgent } from "./paths-DtiEyjsC.js";
10
10
  import { t as WizardCancelledError } from "./prompts-D4yOwSll.js";
11
11
  import { t as createClackPrompter } from "./clack-prompter-BMQT37oC.js";
12
12
  import { t as resolveChannelDefaultAccountId } from "./helpers-CBCZwlBW.js";
13
- import { r as setupChannels } from "./onboard-channels-C2S5txWG.js";
13
+ import { r as setupChannels } from "./onboard-channels-C8bsROUq.js";
14
14
  import { t as requireValidConfigSnapshot } from "./config-validation-CeEJcuMJ.js";
15
15
  import { a as ensureWorkspaceAndSessions, l as moveToTrash } from "./onboard-helpers-t7tI9KSA.js";
16
16
  import { a as pruneAgentConfig, c as parseIdentityMarkdown, i as loadAgentIdentity, n as buildAgentSummaries, o as identityHasValues, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-CqfMQEiy.js";
17
17
  import { n as logConfigUpdated } from "./logging-Ev3fNJEG.js";
18
18
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-D6A5uuj3.js";
19
- import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-CGoOl1W1.js";
19
+ import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-Di2NnC96.js";
20
20
  import path from "node:path";
21
21
  import fs from "node:fs/promises";
22
22
 
@@ -10,7 +10,7 @@ import { n as loadModelCatalog } from "./model-catalog-IWi6-nY9.js";
10
10
  import { t as enablePluginInConfig } from "./enable-B8TbkmWU.js";
11
11
  import { f as openUrl } from "./onboard-helpers-7IGQ8nAM.js";
12
12
  import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, C as applyQianfanProviderConfig, D as applyTogetherProviderConfig, E as applyTogetherConfig, F as applyZaiProviderConfig, G as OPENROUTER_DEFAULT_MODEL_REF, H as applyAgentDefaultModelPrimary, I as applyLitellmConfig, J as XIAOMI_DEFAULT_MODEL_REF, K as TOGETHER_DEFAULT_MODEL_REF, L as applyLitellmProviderConfig, M as applyXiaomiConfig, N as applyXiaomiProviderConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, T as applySyntheticProviderConfig, U as HUGGINGFACE_DEFAULT_MODEL_REF, V as applyVercelAiGatewayProviderConfig, W as LITELLM_DEFAULT_MODEL_REF, X as setAnthropicApiKey, Y as ZAI_DEFAULT_MODEL_REF, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, _t as QIANFAN_DEFAULT_MODEL_REF, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, c as applyMinimaxApiProviderConfigCn, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, ft as setXiaomiApiKey, g as applyMoonshotConfig, gt as MOONSHOT_DEFAULT_MODEL_REF, h as applyKimiCodeProviderConfig, ht as KIMI_CODING_MODEL_REF, i as applyOpencodeZenProviderConfig, it as setOpencodeZenApiKey, j as applyXaiProviderConfig, k as applyVeniceProviderConfig, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, mt as writeOAuthCredentials, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, p as applyHuggingfaceProviderConfig, pt as setZaiApiKey, q as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, s as applyMinimaxApiProviderConfig, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, u as applyMinimaxProviderConfig, ut as setVercelAiGatewayApiKey, v as applyMoonshotProviderConfig, vt as XAI_DEFAULT_MODEL_REF, w as applySyntheticConfig, x as applyOpenrouterProviderConfig, y as applyMoonshotProviderConfigCn, z as applyCloudflareAiGatewayProviderConfig } from "./auth-token-Cr28IDKY.js";
13
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-BL9b1FfT.js";
13
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-BjVtTJHF.js";
14
14
  import { a as detectZaiEndpoint, c as ensureModelAllowlistEntry, i as upsertSharedEnvVar, n as applyOpenAIConfig, o as GOOGLE_GEMINI_DEFAULT_MODEL, r as applyOpenAIProviderConfig, s as applyGoogleGeminiModelDefault, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-BkuuK-Di.js";
15
15
  import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker-Cf6UgQEh.js";
16
16
  import { randomBytes } from "node:crypto";
@@ -10,7 +10,7 @@ import { n as loadModelCatalog } from "./model-catalog-CzKsiNZA.js";
10
10
  import { t as enablePluginInConfig } from "./enable-BIMBTSRy.js";
11
11
  import { f as openUrl } from "./onboard-helpers-t7tI9KSA.js";
12
12
  import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, C as applyQianfanProviderConfig, D as applyTogetherProviderConfig, E as applyTogetherConfig, F as applyZaiProviderConfig, G as OPENROUTER_DEFAULT_MODEL_REF, H as applyAgentDefaultModelPrimary, I as applyLitellmConfig, J as XIAOMI_DEFAULT_MODEL_REF, K as TOGETHER_DEFAULT_MODEL_REF, L as applyLitellmProviderConfig, M as applyXiaomiConfig, N as applyXiaomiProviderConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, T as applySyntheticProviderConfig, U as HUGGINGFACE_DEFAULT_MODEL_REF, V as applyVercelAiGatewayProviderConfig, W as LITELLM_DEFAULT_MODEL_REF, X as setAnthropicApiKey, Y as ZAI_DEFAULT_MODEL_REF, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, _t as QIANFAN_DEFAULT_MODEL_REF, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, c as applyMinimaxApiProviderConfigCn, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, ft as setXiaomiApiKey, g as applyMoonshotConfig, gt as MOONSHOT_DEFAULT_MODEL_REF, h as applyKimiCodeProviderConfig, ht as KIMI_CODING_MODEL_REF, i as applyOpencodeZenProviderConfig, it as setOpencodeZenApiKey, j as applyXaiProviderConfig, k as applyVeniceProviderConfig, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, mt as writeOAuthCredentials, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, p as applyHuggingfaceProviderConfig, pt as setZaiApiKey, q as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, s as applyMinimaxApiProviderConfig, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, u as applyMinimaxProviderConfig, ut as setVercelAiGatewayApiKey, v as applyMoonshotProviderConfig, vt as XAI_DEFAULT_MODEL_REF, w as applySyntheticConfig, x as applyOpenrouterProviderConfig, y as applyMoonshotProviderConfigCn, z as applyCloudflareAiGatewayProviderConfig } from "./auth-token-YTHu2ftn.js";
13
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-Cqbaelri.js";
13
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-BcP3qXzm.js";
14
14
  import { a as detectZaiEndpoint, c as ensureModelAllowlistEntry, i as upsertSharedEnvVar, n as applyOpenAIConfig, o as GOOGLE_GEMINI_DEFAULT_MODEL, r as applyOpenAIProviderConfig, s as applyGoogleGeminiModelDefault, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-Cx6qbnBw.js";
15
15
  import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker-DvP8ViSf.js";
16
16
  import { randomBytes } from "node:crypto";
@@ -1,5 +1,5 @@
1
1
  import { Q as theme, Z as isRich, h as visibleWidth, nn as hasRootVersionAlias } from "./entry.js";
2
- import { Mt as resolveCommitHash } from "./subagent-registry-BDj_vbwB.js";
2
+ import { Mt as resolveCommitHash } from "./subagent-registry-BagjubTG.js";
3
3
 
4
4
  //#region src/cli/tagline.ts
5
5
  const DEFAULT_TAGLINE = "All your chats, one Symi.";
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "3.5.33",
3
- "commit": "51cfc93a8f5415a24a54d7e27acfdc80ffca6edf",
4
- "builtAt": "2026-05-25T21:24:44.929Z"
2
+ "version": "3.5.34",
3
+ "commit": "c92171c877311e75de8dba34adf9936c160ac3f2",
4
+ "builtAt": "2026-05-25T22:04:52.780Z"
5
5
  }
@@ -4,7 +4,7 @@ import { E as shouldLogVerbose, G as isRecord, r as DEFAULT_CHAT_CHANNEL, v as i
4
4
  import { a as resolveAgentSkillsFilter, c as resolveEffectiveModelFallbacks, i as resolveAgentModelPrimary, l as resolveSessionAgentId, o as resolveAgentWorkspaceDir, r as resolveAgentDir, t as listAgentIds, u as resolveSessionAgentIds } from "../../agent-scope-B1Ina6jV.js";
5
5
  import { r as defaultRuntime, t as createSubsystemLogger } from "../../subsystem-DzRUKS9f.js";
6
6
  import { l as ensureAgentWorkspace } from "../../workspace-CsaDUuDn.js";
7
- import { A as runWithModelFallback, C as resolveSymiDocsPath, D as resolveRunWorkspaceDir, E as redactRunIdentifier, M as resolveFailoverStatus, O as deriveSessionTotalTokens, S as buildAgentSystemPrompt, T as resolveBootstrapContextForRun, _ as AGENT_LANE_NESTED, a as resolveSessionDeliveryTarget, b as emitAgentEvent, c as detectRuntimeShell, d as applyModelOverrideToSessionEntry, f as applyVerboseOverride, g as resolveAgentTimeoutMs, i as resolveOutboundTarget, j as FailoverError, k as hasNonzeroUsage, l as resolveSendPolicy, m as clearSessionAuthProfileOverride, n as buildModelAliasLines, o as buildSystemPromptParams, p as loadModelCatalog, s as getProcessSupervisor, t as runAgentTurn, u as lookupContextTokens, v as AGENT_LANE_SUBAGENT, w as makeBootstrapWarn, x as registerAgentRunContext, y as clearAgentRunContext } from "../../unified-runner-Cz7iBOgg.js";
7
+ import { A as runWithModelFallback, C as resolveSymiDocsPath, D as resolveRunWorkspaceDir, E as redactRunIdentifier, M as resolveFailoverStatus, O as deriveSessionTotalTokens, S as buildAgentSystemPrompt, T as resolveBootstrapContextForRun, _ as AGENT_LANE_NESTED, a as resolveSessionDeliveryTarget, b as emitAgentEvent, c as detectRuntimeShell, d as applyModelOverrideToSessionEntry, f as applyVerboseOverride, g as resolveAgentTimeoutMs, i as resolveOutboundTarget, j as FailoverError, k as hasNonzeroUsage, l as resolveSendPolicy, m as clearSessionAuthProfileOverride, n as buildModelAliasLines, o as buildSystemPromptParams, p as loadModelCatalog, s as getProcessSupervisor, t as runAgentTurn, u as lookupContextTokens, v as AGENT_LANE_SUBAGENT, w as makeBootstrapWarn, x as registerAgentRunContext, y as clearAgentRunContext } from "../../unified-runner-B2uJpfUK.js";
8
8
  import { d as ensureAuthProfileStore } from "../../auth-profiles-BSw0aQND.js";
9
9
  import { t as formatCliCommand } from "../../command-format-BrrHNE8r.js";
10
10
  import { _ as DEFAULT_MODEL, a as isCliProvider, c as normalizeProviderId, d as resolveDefaultModelForAgent, g as DEFAULT_CONTEXT_TOKENS, m as resolveThinkingDefault, o as modelKey, s as normalizeModelRef, t as buildAllowedModelSet, u as resolveConfiguredModelRef, v as DEFAULT_PROVIDER } from "../../model-selection-BqshlIZc.js";
@@ -27,7 +27,7 @@ import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, s as re
27
27
  import { t as SILENT_REPLY_TOKEN } from "../../tokens-D_vCJSzF.js";
28
28
  import "../../diagnostic-BALvP9wI.js";
29
29
  import "../../diagnostic-session-state-BDfanaOY.js";
30
- import "../../manager-xUNV-43S.js";
30
+ import "../../manager-BVgukgOu.js";
31
31
  import "../../github-copilot-token-uhEBNQfj.js";
32
32
  import "../../pi-auth-json-DCGR3yfh.js";
33
33
  import "../../reply-prefix-D0NzzC4I.js";
@@ -4,7 +4,7 @@ import "../../registry-C-JddWwo.js";
4
4
  import { o as resolveAgentWorkspaceDir } from "../../agent-scope-B1Ina6jV.js";
5
5
  import { t as createSubsystemLogger } from "../../subsystem-DzRUKS9f.js";
6
6
  import "../../workspace-CsaDUuDn.js";
7
- import "../../unified-runner-Cz7iBOgg.js";
7
+ import "../../unified-runner-B2uJpfUK.js";
8
8
  import "../../auth-profiles-BSw0aQND.js";
9
9
  import "../../model-selection-BqshlIZc.js";
10
10
  import { Tt as hasInterSessionUserProvenance } from "../../deliver-B04yNX82.js";
@@ -26,7 +26,7 @@ import "../../paths-BsT3BvfH.js";
26
26
  import "../../tokens-D_vCJSzF.js";
27
27
  import "../../diagnostic-BALvP9wI.js";
28
28
  import "../../diagnostic-session-state-BDfanaOY.js";
29
- import "../../manager-xUNV-43S.js";
29
+ import "../../manager-BVgukgOu.js";
30
30
  import "../../github-copilot-token-uhEBNQfj.js";
31
31
  import "../../pi-auth-json-DCGR3yfh.js";
32
32
  import "../../reply-prefix-D0NzzC4I.js";
@@ -1 +1 @@
1
- 7bd353283df3150108292b101e122815208622a3fc8e2c4c177203b02c55850d
1
+ 5ea8d10b117648b54fc99ce4584ed01e72733464c55688ade96bfd12e080673c
@@ -2,7 +2,7 @@ import { n as CHAT_CHANNEL_ORDER } from "./registry-Sbac4a4z.js";
2
2
  import { t as isTruthyEnvValue } from "./env-BRnPI9sO.js";
3
3
  import { n as listChannelPlugins } from "./plugins-CF5skkHh.js";
4
4
  import { r as listChannelPluginCatalogEntries } from "./catalog-BptA-dUv.js";
5
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DS4ST-Y2.js";
5
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-X13tkCTS.js";
6
6
 
7
7
  //#region src/cli/channel-options.ts
8
8
  function dedupe(values) {
@@ -1,7 +1,7 @@
1
1
  import { C as CHAT_CHANNEL_ORDER, n as isTruthyEnvValue } from "./entry.js";
2
2
  import { n as listChannelPlugins } from "./plugins-BsEhWvLn.js";
3
3
  import { r as listChannelPluginCatalogEntries } from "./catalog-BQgWCFTH.js";
4
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-0UStQ7W0.js";
4
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-B_NJFVHQ.js";
5
5
 
6
6
  //#region src/cli/channel-options.ts
7
7
  function dedupe(values) {
@@ -19,7 +19,7 @@ import "./client-BOd5o3Kp.js";
19
19
  import { n as callGateway } from "./call-DTshgdlW.js";
20
20
  import "./message-channel-DXToSaWK.js";
21
21
  import "./pairing-token-B-OTYROz.js";
22
- import "./subagent-registry-BDj_vbwB.js";
22
+ import "./subagent-registry-BagjubTG.js";
23
23
  import "./sessions-Dn6VXn4p.js";
24
24
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BsEhWvLn.js";
25
25
  import { d as createSlackWebClient } from "./send-Dq252-bi.js";
@@ -49,8 +49,8 @@ import "./model-auth-Byr7Gic_.js";
49
49
  import "./github-copilot-token-B5y4__YM.js";
50
50
  import "./models-config-CiR_RUxw.js";
51
51
  import "./reply-prefix-DV3KhOhL.js";
52
- import "./memory-D0mvqRoH.js";
53
- import "./manager-Cv0Qqs-i.js";
52
+ import "./memory-7DZfwFEz.js";
53
+ import "./manager-DSXvXUZQ.js";
54
54
  import "./sqlite-9jF_eajd.js";
55
55
  import "./chunk-B2lBXhR0.js";
56
56
  import "./markdown-tables-BEdkErjm.js";
@@ -82,7 +82,7 @@ import { t as formatDocsLink } from "./links-Dnmd-RS-.js";
82
82
  import { n as runCommandWithRuntime } from "./cli-utils-DXfA5936.js";
83
83
  import { t as formatHelpExamples } from "./help-format-Dbp8yEhl.js";
84
84
  import { n as withProgress } from "./progress-CI19Xh3z.js";
85
- import "./memory-cli-0d49vHrN.js";
85
+ import "./memory-cli-CGqqpDlw.js";
86
86
  import "./logging-UO6tk8Em.js";
87
87
  import "./replies-CLREUzzB.js";
88
88
  import "./pi-tools.policy-06k__URR.js";
@@ -97,13 +97,13 @@ import "./install-safe-path-BdxXJux8.js";
97
97
  import "./npm-registry-spec-BPgK9EL7.js";
98
98
  import "./skill-scanner-BC3PyNso.js";
99
99
  import "./installs-Dunp9UFl.js";
100
- import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-C2S5txWG.js";
100
+ import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-C8bsROUq.js";
101
101
  import { t as requireValidConfigSnapshot } from "./config-validation-CeEJcuMJ.js";
102
102
  import { t as buildChannelAccountSnapshot } from "./status-BzmfZaEV.js";
103
103
  import { t as parseLogLine } from "./parse-log-line-DfH8ycNl.js";
104
104
  import { t as collectChannelStatusIssues } from "./channels-status-issues-BTvrA4nx.js";
105
- import "./plugin-registry-0UStQ7W0.js";
106
- import { t as formatCliChannelOptions } from "./channel-options-CJybMNab.js";
105
+ import "./plugin-registry-B_NJFVHQ.js";
106
+ import { t as formatCliChannelOptions } from "./channel-options-IVQWWWuc.js";
107
107
  import fs from "node:fs/promises";
108
108
 
109
109
  //#region src/commands/channels/add-mutators.ts
@@ -1,4 +1,4 @@
1
- import "./unified-runner-Bcapans4.js";
1
+ import "./unified-runner-BoNa4zCp.js";
2
2
  import { E as setVerbose, P as getResolvedLoggerSettings, b as danger, j as theme, r as DEFAULT_CHAT_CHANNEL } from "./registry-Sbac4a4z.js";
3
3
  import "./paths-By0XjHBk.js";
4
4
  import { u as isRecord } from "./utils-CTPsqyE_.js";
@@ -52,8 +52,8 @@ import "./session-cost-usage-D3mgssM_.js";
52
52
  import { _ as loadProviderUsageSummary, v as formatUsageReportLines } from "./session-utils-Cs1jlD-q.js";
53
53
  import "./with-timeout-DPR4A2dx.js";
54
54
  import "./reply-prefix-BFNeXT65.js";
55
- import "./memory-BPVD3vxj.js";
56
- import "./manager-C1nI_dqb.js";
55
+ import "./memory-CuBkKhKM.js";
56
+ import "./manager-Dw6j9KTZ.js";
57
57
  import "./sqlite-Cod7C5ba.js";
58
58
  import "./chunk-BxfKjCUx.js";
59
59
  import "./markdown-tables-CS1Tvb3z.js";
@@ -85,14 +85,14 @@ import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
85
85
  import { n as runCommandWithRuntime } from "./cli-utils-CuyGL3rq.js";
86
86
  import { t as formatHelpExamples } from "./help-format-7hFcsqss.js";
87
87
  import { n as withProgress } from "./progress-swt2y17x.js";
88
- import "./memory-cli-CHqD-NnN.js";
88
+ import "./memory-cli-C8h9g8yO.js";
89
89
  import "./logging-BWknayJl.js";
90
90
  import "./replies-CbXXjn9X.js";
91
91
  import "./pi-tools.policy-H2t-Xkfc.js";
92
92
  import "./model-MUMSB_7d.js";
93
93
  import { r as listChannelPluginCatalogEntries } from "./catalog-BptA-dUv.js";
94
- import "./plugin-registry-DS4ST-Y2.js";
95
- import { t as formatCliChannelOptions } from "./channel-options-DCTxFF6Q.js";
94
+ import "./plugin-registry-X13tkCTS.js";
95
+ import { t as formatCliChannelOptions } from "./channel-options-CLEZcALj.js";
96
96
  import { t as hasExplicitOptions } from "./command-options-DDDwkB9t.js";
97
97
  import "./prompt-style-olk5zI5k.js";
98
98
  import "./note-D9FXI2qW.js";
@@ -103,7 +103,7 @@ import "./install-safe-path-B2JrFspY.js";
103
103
  import "./npm-registry-spec-DTqn-NXZ.js";
104
104
  import "./skill-scanner-BCgVcIwi.js";
105
105
  import "./installs-D890uIIW.js";
106
- import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-f5axd972.js";
106
+ import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-Bzi2ck6V.js";
107
107
  import { t as requireValidConfigSnapshot } from "./config-validation-Cdyg1BZB.js";
108
108
  import { t as buildChannelAccountSnapshot } from "./status-Bah7VY4i.js";
109
109
  import { t as parseLogLine } from "./parse-log-line-Vp8N7lak.js";
@@ -9,7 +9,7 @@ import fs$1 from "node:fs/promises";
9
9
  import { execFileSync, spawn } from "node:child_process";
10
10
  import net from "node:net";
11
11
  import { createServer } from "node:http";
12
- import WebSocket$1, { WebSocketServer } from "ws";
12
+ import WebSocket, { WebSocketServer } from "ws";
13
13
  import { Buffer as Buffer$1 } from "node:buffer";
14
14
 
15
15
  //#region src/browser/constants.ts
@@ -177,7 +177,7 @@ async function ensureChromeExtensionRelayServer(opts) {
177
177
  let nextExtensionId = 1;
178
178
  const sendToExtension = async (payload) => {
179
179
  const ws = extensionWs;
180
- if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
180
+ if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
181
181
  ws.send(JSON.stringify(payload));
182
182
  return await new Promise((resolve, reject) => {
183
183
  const timer = setTimeout(() => {
@@ -194,12 +194,12 @@ async function ensureChromeExtensionRelayServer(opts) {
194
194
  const broadcastToCdpClients = (evt) => {
195
195
  const msg = JSON.stringify(evt);
196
196
  for (const ws of cdpClients) {
197
- if (ws.readyState !== WebSocket$1.OPEN) continue;
197
+ if (ws.readyState !== WebSocket.OPEN) continue;
198
198
  ws.send(msg);
199
199
  }
200
200
  };
201
201
  const sendResponseToCdp = (ws, res) => {
202
- if (ws.readyState !== WebSocket$1.OPEN) return;
202
+ if (ws.readyState !== WebSocket.OPEN) return;
203
203
  ws.send(JSON.stringify(res));
204
204
  };
205
205
  const ensureTargetEventsForClient = (ws, mode) => {
@@ -424,7 +424,7 @@ async function ensureChromeExtensionRelayServer(opts) {
424
424
  wssExtension.on("connection", (ws) => {
425
425
  extensionWs = ws;
426
426
  const ping = setInterval(() => {
427
- if (ws.readyState !== WebSocket$1.OPEN) return;
427
+ if (ws.readyState !== WebSocket.OPEN) return;
428
428
  ws.send(JSON.stringify({ method: "ping" }));
429
429
  }, 5e3);
430
430
  ws.on("message", (data) => {
@@ -742,7 +742,7 @@ async function fetchOk(url, timeoutMs = 1500, init) {
742
742
  }
743
743
  async function withCdpSocket(wsUrl, fn, opts) {
744
744
  const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
745
- const ws = new WebSocket$1(wsUrl, {
745
+ const ws = new WebSocket(wsUrl, {
746
746
  handshakeTimeout: typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : 5e3,
747
747
  ...Object.keys(headers).length ? { headers } : {}
748
748
  });
@@ -1636,7 +1636,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
1636
1636
  async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
1637
1637
  return await new Promise((resolve) => {
1638
1638
  const headers = getHeadersWithAuth(wsUrl);
1639
- const ws = new WebSocket$1(wsUrl, {
1639
+ const ws = new WebSocket(wsUrl, {
1640
1640
  handshakeTimeout: timeoutMs,
1641
1641
  ...Object.keys(headers).length ? { headers } : {}
1642
1642
  });
@@ -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 { m as loadSymiPlugins } from "./subagent-registry-BDj_vbwB.js";
20
+ import { m as loadSymiPlugins } from "./subagent-registry-BagjubTG.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-D0mvqRoH.js";
51
- import "./manager-Cv0Qqs-i.js";
50
+ import "./memory-7DZfwFEz.js";
51
+ import "./manager-DSXvXUZQ.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-0d49vHrN.js";
82
+ import "./memory-cli-CGqqpDlw.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 { s as loadSymiPlugins } from "./unified-runner-Bcapans4.js";
1
+ import { s as loadSymiPlugins } from "./unified-runner-BoNa4zCp.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-BPVD3vxj.js";
54
- import "./manager-C1nI_dqb.js";
53
+ import "./memory-CuBkKhKM.js";
54
+ import "./manager-Dw6j9KTZ.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-CHqD-NnN.js";
85
+ import "./memory-cli-C8h9g8yO.js";
86
86
  import "./logging-BWknayJl.js";
87
87
  import "./replies-CbXXjn9X.js";
88
88
  import "./pi-tools.policy-H2t-Xkfc.js";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Qt as getPrimaryCommand, tn as hasHelpOrVersion } from "./entry.js";
3
- import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-VsMMpQQN.js";
3
+ import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-C1nbYmb-.js";
4
4
 
5
5
  //#region src/cli/program/command-registry.ts
6
6
  var command_registry_exports = /* @__PURE__ */ __exportAll({
@@ -22,7 +22,7 @@ const coreEntries = [
22
22
  hasSubcommands: false
23
23
  }],
24
24
  register: async ({ program }) => {
25
- (await import("./register.setup-CJhL35sR.js")).registerSetupCommand(program);
25
+ (await import("./register.setup-X1z8nL1f.js")).registerSetupCommand(program);
26
26
  }
27
27
  },
28
28
  {
@@ -32,7 +32,7 @@ const coreEntries = [
32
32
  hasSubcommands: false
33
33
  }],
34
34
  register: async ({ program }) => {
35
- (await import("./register.onboard-CCZI7O-C.js")).registerOnboardCommand(program);
35
+ (await import("./register.onboard-BTM1uWDL.js")).registerOnboardCommand(program);
36
36
  }
37
37
  },
38
38
  {
@@ -42,7 +42,7 @@ const coreEntries = [
42
42
  hasSubcommands: false
43
43
  }],
44
44
  register: async ({ program }) => {
45
- (await import("./register.configure-CyjtBFqz.js")).registerConfigureCommand(program);
45
+ (await import("./register.configure-ClTC_gFo.js")).registerConfigureCommand(program);
46
46
  }
47
47
  },
48
48
  {
@@ -52,7 +52,7 @@ const coreEntries = [
52
52
  hasSubcommands: true
53
53
  }],
54
54
  register: async ({ program }) => {
55
- (await import("./config-cli-KZLy9MiQ.js")).registerConfigCli(program);
55
+ (await import("./config-cli-DemkhbXj.js")).registerConfigCli(program);
56
56
  }
57
57
  },
58
58
  {
@@ -79,7 +79,7 @@ const coreEntries = [
79
79
  }
80
80
  ],
81
81
  register: async ({ program }) => {
82
- (await import("./register.maintenance-D0crO8FC.js")).registerMaintenanceCommands(program);
82
+ (await import("./register.maintenance-C4EBdIW-.js")).registerMaintenanceCommands(program);
83
83
  }
84
84
  },
85
85
  {
@@ -89,7 +89,7 @@ const coreEntries = [
89
89
  hasSubcommands: true
90
90
  }],
91
91
  register: async ({ program, ctx }) => {
92
- (await import("./register.message-DHZmSrnW.js")).registerMessageCommands(program, ctx);
92
+ (await import("./register.message-DkhnvbOo.js")).registerMessageCommands(program, ctx);
93
93
  }
94
94
  },
95
95
  {
@@ -99,7 +99,7 @@ const coreEntries = [
99
99
  hasSubcommands: true
100
100
  }],
101
101
  register: async ({ program }) => {
102
- (await import("./memory-cli-0d49vHrN.js").then((n) => n.t)).registerMemoryCli(program);
102
+ (await import("./memory-cli-CGqqpDlw.js").then((n) => n.t)).registerMemoryCli(program);
103
103
  }
104
104
  },
105
105
  {
@@ -113,7 +113,7 @@ const coreEntries = [
113
113
  hasSubcommands: true
114
114
  }],
115
115
  register: async ({ program, ctx }) => {
116
- (await import("./register.agent-B2IHb1wt.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
116
+ (await import("./register.agent-BDw4ZFQo.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
117
117
  }
118
118
  },
119
119
  {
@@ -135,7 +135,7 @@ const coreEntries = [
135
135
  }
136
136
  ],
137
137
  register: async ({ program }) => {
138
- (await import("./register.status-health-sessions-DM5hIwtm.js")).registerStatusHealthSessionsCommands(program);
138
+ (await import("./register.status-health-sessions-PBqHdGtS.js")).registerStatusHealthSessionsCommands(program);
139
139
  }
140
140
  },
141
141
  {
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Mt as pathExists, l as routeLogsToStderr, yt as resolveStateDir } from "./entry.js";
3
- import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-VsMMpQQN.js";
4
- import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-dhtbmE5H.js";
3
+ import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-C1nbYmb-.js";
4
+ import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-C5LOUwKq.js";
5
5
  import { t as getProgramContext } from "./program-context-B_0V80zV.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
3
3
  import { f as pathExists } from "./utils-CTPsqyE_.js";
4
4
  import { i as routeLogsToStderr } from "./subsystem-CHbO_DkH.js";
5
- import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-DdmFH7Cp.js";
5
+ import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-YblB1bz7.js";
6
6
  import path from "node:path";
7
7
  import os from "node:os";
8
8
  import fs from "node:fs/promises";
@@ -206,7 +206,7 @@ async function runConfigUnset(opts) {
206
206
  }
207
207
  function registerConfigCli(program) {
208
208
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
209
- const { configureCommandFromSectionsArg } = await import("./configure-DPlT_UCY.js").then((n) => n.t);
209
+ const { configureCommandFromSectionsArg } = await import("./configure-CW75YbiI.js").then((n) => n.t);
210
210
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
211
211
  });
212
212
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -201,7 +201,7 @@ async function runConfigUnset(opts) {
201
201
  }
202
202
  function registerConfigCli(program) {
203
203
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
204
- const { configureCommandFromSectionsArg } = await import("./configure-iuJmiuup.js").then((n) => n.t);
204
+ const { configureCommandFromSectionsArg } = await import("./configure-Dc5xcSyf.js").then((n) => n.t);
205
205
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
206
206
  });
207
207
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -12,7 +12,7 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
12
12
  import { t as note$1 } from "./note-D9FXI2qW.js";
13
13
  import { t as WizardCancelledError } from "./prompts-CNzp9M83.js";
14
14
  import { t as createClackPrompter } from "./clack-prompter-BpcKjPIh.js";
15
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-f5axd972.js";
15
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-Bzi2ck6V.js";
16
16
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DlQla_dA.js";
17
17
  import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-7IGQ8nAM.js";
18
18
  import { t as resolveGatewayService } from "./service-e6MzlLCd.js";
@@ -20,7 +20,7 @@ import { r as healthCommand } from "./health-7UqIGG8U.js";
20
20
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CJQ97d4u.js";
21
21
  import { n as logConfigUpdated } from "./logging-DDnP1BTp.js";
22
22
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-BAFfYZeR.js";
23
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-DKYz4IVA.js";
23
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-CbNJI71b.js";
24
24
  import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-Cf6UgQEh.js";
25
25
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-BzYk7A6M.js";
26
26
  import { a as promptCustomApiConfig } from "./onboard-custom-BcRYreNG.js";
@@ -10,7 +10,7 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
10
10
  import { t as note$1 } from "./note-BIAQpZxi.js";
11
11
  import { t as WizardCancelledError } from "./prompts-D4yOwSll.js";
12
12
  import { t as createClackPrompter } from "./clack-prompter-BMQT37oC.js";
13
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-C2S5txWG.js";
13
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-C8bsROUq.js";
14
14
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-AkgOtHR6.js";
15
15
  import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-t7tI9KSA.js";
16
16
  import { t as resolveGatewayService } from "./service-DYpU1ajf.js";
@@ -18,7 +18,7 @@ import { r as healthCommand } from "./health-Dkwuq8ta.js";
18
18
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Dnz69KRU.js";
19
19
  import { n as logConfigUpdated } from "./logging-Ev3fNJEG.js";
20
20
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-D6A5uuj3.js";
21
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-CGoOl1W1.js";
21
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-Di2NnC96.js";
22
22
  import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-DvP8ViSf.js";
23
23
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-CctFkWNE.js";
24
24
  import { a as promptCustomApiConfig } from "./onboard-custom-CfKvdcJ5.js";
@@ -2420,6 +2420,81 @@ body {
2420
2420
  }
2421
2421
  }
2422
2422
 
2423
+ /* ── Stage F.2: Memory cards ───────────────────────────────────────────
2424
+ Surfaces which memory entries are influencing the current response.
2425
+ Uses intent="holding" (cyan stripe — working memory) but overrides
2426
+ the corner ribbon to read "RECALL" instead of "HOLDING" so the user
2427
+ knows this is a retrieved memory, not a generic working-memory card.
2428
+
2429
+ Each memory has a type badge (user/feedback/project/reference) that
2430
+ color-codes the badge chip to match the intent palette already
2431
+ established by Stage D.1.
2432
+ */
2433
+ .symframe-card[data-card-type="memory"][data-intent="holding"]::before {
2434
+ content: "recall";
2435
+ }
2436
+ .symframe-card[data-card-type="memory"] .symframe-card-header {
2437
+ font-family: var(--font-mono);
2438
+ font-size: var(--sf-text-sm);
2439
+ letter-spacing: 0.04em;
2440
+ }
2441
+ .symframe-body-memory {
2442
+ display: flex;
2443
+ flex-direction: column;
2444
+ gap: var(--sf-pad-sm);
2445
+ font-family: var(--font-mono);
2446
+ font-size: var(--sf-text-xs);
2447
+ }
2448
+ .symframe-memory-type {
2449
+ align-self: flex-start;
2450
+ padding: var(--sf-pad-xs) var(--sf-pad-md);
2451
+
2452
+ border-radius: var(--sf-radius-xs);
2453
+ font-size: var(--sf-text-xs);
2454
+ letter-spacing: 0.1em;
2455
+ text-transform: uppercase;
2456
+ font-weight: 700;
2457
+ background: var(--sf-cyan-veil);
2458
+ color: var(--accent-cyan);
2459
+ border: 1px solid var(--sf-cyan-edge);
2460
+ }
2461
+ .symframe-body-memory[data-memory-type="user"] .symframe-memory-type {
2462
+ background: var(--sf-pink-tint);
2463
+ color: var(--sf-pink-text);
2464
+ border-color: var(--sf-pink-edge);
2465
+ }
2466
+ .symframe-body-memory[data-memory-type="feedback"] .symframe-memory-type {
2467
+ background: var(--sf-amber-tint);
2468
+ color: #f5b73a;
2469
+ border-color: var(--sf-amber-edge);
2470
+ }
2471
+ .symframe-body-memory[data-memory-type="project"] .symframe-memory-type {
2472
+ background: var(--sf-green-tint);
2473
+ color: var(--sf-green-strong);
2474
+ border-color: var(--sf-green-edge);
2475
+ }
2476
+ .symframe-body-memory[data-memory-type="reference"] .symframe-memory-type {
2477
+ background: var(--sf-violet-tint);
2478
+ color: #8b5cf6;
2479
+ border-color: var(--sf-violet-edge);
2480
+ }
2481
+ .symframe-memory-description {
2482
+ color: var(--text);
2483
+ line-height: 1.4;
2484
+ /* Clamp to 3 lines so a long description doesn't dominate */
2485
+ display: -webkit-box;
2486
+ -webkit-line-clamp: 3;
2487
+ line-clamp: 3;
2488
+ -webkit-box-orient: vertical;
2489
+ overflow: hidden;
2490
+ }
2491
+ .symframe-memory-path {
2492
+ color: var(--text-dim);
2493
+ font-size: var(--sf-text-xs);
2494
+ opacity: 0.65;
2495
+ word-break: break-all;
2496
+ }
2497
+
2423
2498
  /* ── Response Area ────────────────────────────────────────────────── */
2424
2499
  .response-area {
2425
2500
  position: fixed;