@symerian/symi 2.6.18 → 2.6.19

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 (163) hide show
  1. package/dist/{agents-BEWe0DLk.js → agents-CrSpoNsS.js} +4 -4
  2. package/dist/{agents.config-C76tSodQ.js → agents.config-B3GILTs5.js} +1 -1
  3. package/dist/{agents.config-DxYp0zoG.js → agents.config-Co1CO8fA.js} +1 -1
  4. package/dist/{auth-choice-EwOsmB_b.js → auth-choice-BBmXnDnK.js} +1 -1
  5. package/dist/{auth-choice-DrYJKB8t.js → auth-choice-BHWxDJh7.js} +1 -1
  6. package/dist/{banner-CJyz7ro7.js → banner-RLiOIu-3.js} +1 -1
  7. package/dist/build-info.json +3 -3
  8. package/dist/bundled/boot-md/handler.js +1 -1
  9. package/dist/bundled/session-memory/handler.js +1 -1
  10. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  11. package/dist/{channel-options-tWyK68mk.js → channel-options-BCK41AON.js} +1 -1
  12. package/dist/{channel-options-D0NlH6Qb.js → channel-options-PDf46S-K.js} +1 -1
  13. package/dist/{channel-web-PvWA2ukO.js → channel-web-C3XZ7c2q.js} +1 -1
  14. package/dist/{channels-cli-B50IZ27a.js → channels-cli-723vy6L6.js} +4 -4
  15. package/dist/{channels-cli-BAXmmIxX.js → channels-cli-CUWuD7qf.js} +4 -4
  16. package/dist/{cli-BW4igUHG.js → cli-CAzmrOs0.js} +1 -1
  17. package/dist/{cli-CPKEDe6C.js → cli-DYdRSi_j.js} +1 -1
  18. package/dist/{command-registry-DV-FTDz1.js → command-registry-B2aO0Q7_.js} +9 -9
  19. package/dist/{completion-cli-BqzmOZg7.js → completion-cli-BKm12loU.js} +1 -1
  20. package/dist/{completion-cli-Cbr2b-rs.js → completion-cli-BsKD_vBb.js} +2 -2
  21. package/dist/{config-cli-D5QqQi4y.js → config-cli-Bynmd81Q.js} +1 -1
  22. package/dist/{config-cli-DBjlHFwQ.js → config-cli-D47lU7kU.js} +1 -1
  23. package/dist/{configure-B4VAN-WJ.js → configure-B3vS2Iz5.js} +3 -3
  24. package/dist/{configure-DbTH7t_m.js → configure-Df6GmKAR.js} +3 -3
  25. package/dist/{doctor-completion-v8uq--hy.js → doctor-completion-DyiRkYT4.js} +1 -1
  26. package/dist/{doctor-completion-Do0e0eZE.js → doctor-completion-SEerte2S.js} +1 -1
  27. package/dist/entry.js +1 -1
  28. package/dist/extensionAPI.js +1 -1
  29. package/dist/{gateway-cli-BAiFaCGg.js → gateway-cli-PjmG0pFo.js} +9 -9
  30. package/dist/{gateway-cli-BkOe3JQ_.js → gateway-cli-k19iT2vJ.js} +9 -9
  31. package/dist/{glass-ui-ws-B8V4Slwd.js → glass-ui-ws-D0Yv090T.js} +7 -7
  32. package/dist/{glass-ui-ws-DFAQWoiK.js → glass-ui-ws-iCEtluQU.js} +7 -7
  33. package/dist/{health-B3pwVJ_N.js → health-B32Q-KYM.js} +1 -1
  34. package/dist/{health-8bTzq722.js → health-CXjAtn1-.js} +1 -1
  35. package/dist/{hooks-cli-Vqz0A84F.js → hooks-cli-DA6zOGNz.js} +2 -2
  36. package/dist/{hooks-cli-D1Yhb7y5.js → hooks-cli-DfRmFenH.js} +2 -2
  37. package/dist/index.js +6 -6
  38. package/dist/llm-slug-generator.js +1 -1
  39. package/dist/{models-cli-EP_U-tWq.js → models-cli-BgCUViRO.js} +2 -2
  40. package/dist/{models-cli-BrDyN5KN.js → models-cli-CbJUD_L1.js} +3 -3
  41. package/dist/{models-BQOnDzS9.js → models-zowe4LXa.js} +2 -2
  42. package/dist/{onboard-BZNptre7.js → onboard-CYvIpUXQ.js} +2 -2
  43. package/dist/{onboard-DM0BChC6.js → onboard-DsKgcThj.js} +2 -2
  44. package/dist/{onboard-channels-4jeB30Ty.js → onboard-channels-DLiV4Y0t.js} +1 -1
  45. package/dist/{onboard-channels-C6dLmiYY.js → onboard-channels-DxCGWgB0.js} +1 -1
  46. package/dist/{onboarding-CDdiYaCC.js → onboarding-BA5v1JEG.js} +3 -3
  47. package/dist/{onboarding-DQJQ-k9A.js → onboarding-DioGtMFo.js} +3 -3
  48. package/dist/{onboarding.finalize-Bmd5TpyH.js → onboarding.finalize-CAbRXb0h.js} +5 -5
  49. package/dist/{onboarding.finalize-B82xL12C.js → onboarding.finalize-DMXCA49f.js} +6 -6
  50. package/dist/{pi-embedded-Dtmwbds4.js → pi-embedded-CFFnZEcA.js} +7 -228
  51. package/dist/{plugin-registry-DG_WWCr9.js → plugin-registry-Bt5YCgFq.js} +1 -1
  52. package/dist/{plugin-registry-D7ylmzDw.js → plugin-registry-HFOrv3KN.js} +1 -1
  53. package/dist/plugin-sdk/{accounts-BToL3HlP.js → accounts-BtaOa4z_.js} +1 -1
  54. package/dist/plugin-sdk/{accounts-D9zGZU5t.js → accounts-Ddm33hQm.js} +3 -3
  55. package/dist/plugin-sdk/{accounts-Dtszw3Zn.js → accounts-s-AdhXVR.js} +1 -1
  56. package/dist/plugin-sdk/{active-listener-bEk__wbB.js → active-listener-BXYeALs0.js} +1 -1
  57. package/dist/plugin-sdk/{agent-scope-C3gMMKCU.js → agent-scope-CYYpcO9W.js} +2 -2
  58. package/dist/plugin-sdk/{api-key-rotation-CVBMpnPc.js → api-key-rotation-D_sMvI5W.js} +1 -1
  59. package/dist/plugin-sdk/{audio-preflight-DoQQKlxa.js → audio-preflight-VpItkiy3.js} +24 -24
  60. package/dist/plugin-sdk/{bindings-BbwoUGPx.js → bindings-C7hRtgYW.js} +2 -2
  61. package/dist/plugin-sdk/{channel-activity-Ji7f0gqq.js → channel-activity-DoC1xtDu.js} +1 -1
  62. package/dist/plugin-sdk/{channel-web-_efq-pM9.js → channel-web-E56yV1OA.js} +22 -22
  63. package/dist/plugin-sdk/{chrome-C7c_0I5M.js → chrome-B7RdxmJ0.js} +3 -3
  64. package/dist/plugin-sdk/{chunk-jvk9axTQ.js → chunk-Dw2XBYXv.js} +1 -1
  65. package/dist/plugin-sdk/{command-format-DSdvQ_M5.js → command-format-GKSevep4.js} +1 -1
  66. package/dist/plugin-sdk/{commands-registry-CQFbmUMs.js → commands-registry-COIaslGl.js} +4 -4
  67. package/dist/plugin-sdk/{config-DDkdiUOR.js → config-KlTNfkFF.js} +9 -9
  68. package/dist/plugin-sdk/{deliver-BZ6iNLl7.js → deliver-BZ99UKQq.js} +10 -10
  69. package/dist/plugin-sdk/{diagnostic-mFf4i4G9.js → diagnostic-05pm5Rxi.js} +1 -1
  70. package/dist/plugin-sdk/{image-BOYy0Ump.js → image-CLOPx7yW.js} +4 -4
  71. package/dist/plugin-sdk/{image-ops-Bnp6LXEx.js → image-ops-BlQR__MN.js} +1 -1
  72. package/dist/plugin-sdk/index.js +53 -53
  73. package/dist/plugin-sdk/{ir-Fb3qpcis.js → ir-BJ6BHE5b.js} +4 -4
  74. package/dist/plugin-sdk/{local-roots-Ckk1QfzI.js → local-roots-BHLNSI8U.js} +3 -3
  75. package/dist/plugin-sdk/{login-Bh3DZPam.js → login-DQMXuxOk.js} +7 -7
  76. package/dist/plugin-sdk/{login-qr-DbR7odSr.js → login-qr-BjVZSoCi.js} +9 -9
  77. package/dist/plugin-sdk/{manager-DckktAQ3.js → manager-CBSBFuFz.js} +8 -8
  78. package/dist/plugin-sdk/{manifest-registry-B3ugY9-f.js → manifest-registry-CPnHl_K3.js} +1 -1
  79. package/dist/plugin-sdk/{markdown-tables-Dfaqilz6.js → markdown-tables-BoYFajMu.js} +1 -1
  80. package/dist/plugin-sdk/{message-channel-BdI5Ra9S.js → message-channel-COTAJzHd.js} +1 -1
  81. package/dist/plugin-sdk/{model-selection-OpU8HN50.js → model-selection-CsbEfrS0.js} +4 -4
  82. package/dist/plugin-sdk/{outbound-rF6G8Xpr.js → outbound-B0e8KdaR.js} +7 -7
  83. package/dist/plugin-sdk/{outbound-attachment-DnVQfTG2.js → outbound-attachment-CnslKL38.js} +2 -2
  84. package/dist/plugin-sdk/{pi-auth-json-CJk8t14T.js → pi-auth-json-qWi7ZIYV.js} +5 -5
  85. package/dist/plugin-sdk/{pi-embedded-helpers-BveUP4hk.js → pi-embedded-helpers-CW630epe.js} +17 -17
  86. package/dist/plugin-sdk/{plugins-BbAvhC25.js → plugins-BNByVCIH.js} +4 -4
  87. package/dist/plugin-sdk/{pw-ai-DjGUsee-.js → pw-ai-CnbPIPY9.js} +8 -8
  88. package/dist/plugin-sdk/{qmd-manager-mjKcdwVr.js → qmd-manager-CH0XbIHf.js} +4 -4
  89. package/dist/plugin-sdk/{registry--_pGht6S.js → registry-D0xTnUWt.js} +2 -2
  90. package/dist/plugin-sdk/{replies-fI39rPGa.js → replies-LLcQL3w6.js} +3 -3
  91. package/dist/plugin-sdk/{reply-D2W7XCcz.js → reply-pPqvSkWb.js} +82 -303
  92. package/dist/plugin-sdk/{reply-prefix-BHuV5t70.js → reply-prefix-uxfMZW4p.js} +1 -1
  93. package/dist/plugin-sdk/{resolve-outbound-target-BkCUbYGV.js → resolve-outbound-target-BiyAyTWz.js} +2 -2
  94. package/dist/plugin-sdk/{resolve-route-D3JH_D2N.js → resolve-route-B3CCBumQ.js} +3 -3
  95. package/dist/plugin-sdk/{retry-ilSJqnz9.js → retry-CwQ_iIj8.js} +1 -1
  96. package/dist/plugin-sdk/{runner-BVqnEfNe.js → runner-CGBT7tgF.js} +9 -9
  97. package/dist/plugin-sdk/{send-BtANzsAo.js → send-B2CEnVLL.js} +6 -6
  98. package/dist/plugin-sdk/{send-BHbXh8Ly.js → send-C5h_YxNb.js} +7 -7
  99. package/dist/plugin-sdk/{send-D6LMZJ_h.js → send-CRsR8-vO.js} +10 -10
  100. package/dist/plugin-sdk/{send-Bxdu6ZZy.js → send-CjOBB3Vo.js} +10 -10
  101. package/dist/plugin-sdk/{send-BMfJIhCk.js → send-pYqe432l.js} +6 -6
  102. package/dist/plugin-sdk/{session-kI0tzViQ.js → session-BsOrxiMj.js} +4 -4
  103. package/dist/plugin-sdk/{skill-commands-DCNXVERE.js → skill-commands-ff_01_r3.js} +5 -5
  104. package/dist/plugin-sdk/{skills-B1GeRYlu.js → skills-_yTP47Cd.js} +7 -7
  105. package/dist/plugin-sdk/{sqlite-Cq_7Cg4E.js → sqlite-CxAR5ttJ.js} +1 -1
  106. package/dist/plugin-sdk/{store-Do3t33-c.js → store-BdrNabcU.js} +2 -2
  107. package/dist/plugin-sdk/{subsystem-Coz2AgU8.js → subsystem-B2uDN3TV.js} +1 -1
  108. package/dist/plugin-sdk/{tables-DR0NmBeH.js → tables-DNwXwNFa.js} +1 -1
  109. package/dist/plugin-sdk/{target-errors-B7YyMnIi.js → target-errors-Paro1BjP.js} +2 -2
  110. package/dist/plugin-sdk/{thinking-DCNUIAHY.js → thinking-CXqf7WTe.js} +5 -5
  111. package/dist/plugin-sdk/{tokens-CWMflosr.js → tokens-bC3UVmVH.js} +1 -1
  112. package/dist/plugin-sdk/{tool-images-D7Lno-TE.js → tool-images-HJ2sfZDV.js} +2 -2
  113. package/dist/plugin-sdk/{tool-loop-detection-DU5sTIKg.js → tool-loop-detection-at_K42K7.js} +2 -2
  114. package/dist/plugin-sdk/web-Msnzya6B.js +65 -0
  115. package/dist/plugin-sdk/{whatsapp-actions-CcBzDuL-.js → whatsapp-actions-DfseosPO.js} +21 -21
  116. package/dist/{plugins-cli-BUFrZlyR.js → plugins-cli-C7xTf9NV.js} +2 -2
  117. package/dist/{plugins-cli-CMCwFRL9.js → plugins-cli-CXz_UApK.js} +2 -2
  118. package/dist/{program-BdVazL5L.js → program-8hWr4qGZ.js} +7 -7
  119. package/dist/{program-context-DZNOBe-u.js → program-context-BBtSJunF.js} +17 -17
  120. package/dist/{prompt-select-styled-uLoOKbdZ.js → prompt-select-styled-CwfroEHp.js} +4 -4
  121. package/dist/{prompt-select-styled-XyOMjPBV.js → prompt-select-styled-DUXeA9Zp.js} +4 -4
  122. package/dist/{provider-auth-helpers-D01YbcHZ.js → provider-auth-helpers-Dc7jBEOA.js} +1 -1
  123. package/dist/{provider-auth-helpers-CWf7gdZW.js → provider-auth-helpers-DhLHWjNU.js} +1 -1
  124. package/dist/{push-apns-B-zVLcnN.js → push-apns-CVZe5WVN.js} +1 -1
  125. package/dist/{push-apns-B2bxLda8.js → push-apns-CflJh75N.js} +1 -1
  126. package/dist/{register.agent-BYZEiWk1.js → register.agent-BnuJQ5lg.js} +6 -6
  127. package/dist/{register.agent-BF6_rPdM.js → register.agent-DV7IR1rI.js} +5 -5
  128. package/dist/{register.configure-4lt1A0NF.js → register.configure-BhncI0ij.js} +6 -6
  129. package/dist/{register.configure-B0g-yfDR.js → register.configure-DaIrJXWo.js} +6 -6
  130. package/dist/{register.maintenance-WBpgdygw.js → register.maintenance-BO1XWhVb.js} +7 -7
  131. package/dist/{register.maintenance-DXZyjFYw.js → register.maintenance-DK_p-7so.js} +8 -8
  132. package/dist/{register.message-CuoXu-_e.js → register.message-B194ue2R.js} +2 -2
  133. package/dist/{register.message-BHRBK4eH.js → register.message-B4CGCAn_.js} +2 -2
  134. package/dist/{register.onboard-D5-L8JYT.js → register.onboard-DidMCka8.js} +4 -4
  135. package/dist/{register.onboard-D-P9Wc41.js → register.onboard-Dt53qGB5.js} +4 -4
  136. package/dist/{register.setup-BzmkdzSO.js → register.setup-CLV1kk2-.js} +4 -4
  137. package/dist/{register.setup-D7NNQwXc.js → register.setup-DgUxMRZR.js} +4 -4
  138. package/dist/{register.status-health-sessions-BIwZhPIZ.js → register.status-health-sessions-CB10JLY6.js} +3 -3
  139. package/dist/{register.status-health-sessions-DiCr003h.js → register.status-health-sessions-TvGuwVoR.js} +3 -3
  140. package/dist/{register.subclis-BxbyrMu1.js → register.subclis-elNdyQio.js} +9 -9
  141. package/dist/{reply-BgOOEOPX.js → reply-DUZvOCsG.js} +7 -228
  142. package/dist/{run-main-BW5eFi2Y.js → run-main-gBPGqO8r.js} +14 -14
  143. package/dist/{server-methods-D-Gd1kMo.js → server-methods-BG0N79yY.js} +7 -7
  144. package/dist/{server-methods-Dp8iuEko.js → server-methods-dgW-8gC7.js} +7 -7
  145. package/dist/{server-node-events-B2_RCsYi.js → server-node-events-B_hsQw_N.js} +2 -2
  146. package/dist/{server-node-events-CnjqDQbZ.js → server-node-events-ZtQKBPo3.js} +2 -2
  147. package/dist/{status-CGhoES6L.js → status-BqhJ-HsW.js} +1 -1
  148. package/dist/{status-4PSvL6ui.js → status-Cd9-xWsZ.js} +2 -2
  149. package/dist/{status-kFfqsras.js → status-D-IvYfjk.js} +2 -2
  150. package/dist/{status-CrVk9Tz5.js → status-D4Lr90yH.js} +1 -1
  151. package/dist/{subagent-registry-M6DQwhYN.js → subagent-registry-J2pIBQF7.js} +7 -228
  152. package/dist/{unified-runner-DckayuEM.js → unified-runner-oH9Pt-cO.js} +7 -228
  153. package/dist/{update-cli-DCYkskZu.js → update-cli-B7TLu25J.js} +8 -8
  154. package/dist/{update-cli-x5YGUm9F.js → update-cli-D8nA6U7C.js} +7 -7
  155. package/dist/{update-runner-BIp88-4P.js → update-runner-D8AFB8Oi.js} +1 -1
  156. package/dist/{update-runner-Dmki2xrH.js → update-runner-DvZOsoQs.js} +1 -1
  157. package/dist/{web-1JPHv6du.js → web-0xZpP0WA.js} +1 -1
  158. package/dist/{web-DWSTD7Gy.js → web-CAy-xQv2.js} +1 -1
  159. package/dist/{web-rShvuTx4.js → web-DDiOPIdv.js} +2 -2
  160. package/dist/{web-C40boK8U.js → web-mQInjWbW.js} +1 -1
  161. package/package.json +1 -1
  162. package/dist/plugin-sdk/web-CmT3D7vj.js +0 -65
  163. package/skills/self-inspect/SKILL.md +0 -109
@@ -4,7 +4,7 @@ import { _ as isCronSessionKey, b as resolveThreadParentSessionKey, c as normali
4
4
  import { $ as warn, B as sleep$1, D as escapeRegExp, E as ensureDir$3, G as danger, I as resolveUserPath, J as logVerbose, M as normalizeE164, O as formatTerminalLink, R as shortenHomeInString, S as CONFIG_DIR, U as truncateUtf16Safe, V as sliceUtf16Safe, W as isPlainObject, X as setVerbose, Z as shouldLogVerbose, _ as matchPluginCommand, a as normalizeAnyChannelId, d as createPluginRegistry, dt as resolvePreferredSymiTmpDir, et as colorize, f as normalizePluginHttpPath, g as listPluginCommands, h as getPluginCommandSpecs, k as isRecord$1, l as requireActivePluginRegistry, lt as normalizeLogLevel, m as executePluginCommand, n as CHAT_CHANNEL_ORDER, nt as theme, o as normalizeChannelId, p as clearPluginCommands, r as DEFAULT_CHAT_CHANNEL, rt as getChildLogger, tt as isRich, u as setActivePluginRegistry, v as createInternalHookEvent, w as clampInt, x as triggerInternalHook, z as shortenHomePath } from "./registry-DYq1AYOv.js";
5
5
  import { a as resolveAgentModelPrimary, c as resolveDefaultAgentId, d as resolveSessionAgentIds, i as resolveAgentModelFallbacksOverride, l as resolveEffectiveModelFallbacks, n as resolveAgentConfig, o as resolveAgentSkillsFilter, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId } from "./agent-scope-CpEJ0B88.js";
6
6
  import { a as registerActiveProgressLine, i as clearActiveProgressLine, n as createNonExitingRuntime, o as unregisterActiveProgressLine, r as defaultRuntime, t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
7
- import { S as logWarn, _ as runExec, b as logError, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, h as resolveSymiPackageRootSync, i as DEFAULT_IDENTITY_FILENAME, l as ensureAgentWorkspace, m as resolveSymiPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as logInfo, y as logDebug } from "./workspace-DscDraUb.js";
7
+ import { S as logWarn, _ as runExec, b as logError, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, i as DEFAULT_IDENTITY_FILENAME, l as ensureAgentWorkspace, m as resolveSymiPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as logInfo, y as logDebug } from "./workspace-DscDraUb.js";
8
8
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-CbQV9WEg.js";
9
9
  import { $ as resolveSymiAgentDir, B as resolveApiKeyForProvider, C as normalizeProviderId, D as resolveModelRefFromString, E as resolveDefaultModelForAgent, F as OLLAMA_NATIVE_BASE_URL, H as resolveModelAuthMode, I as createOllamaStreamFn, K as resolveShellEnvFallbackTimeoutMs, L as getApiKeyForModel, O as resolveSubagentSpawnModelSelection, Q as resolveAuthProfileDisplayLabel, R as getCustomProviderApiKey, S as normalizeModelRef$2, T as resolveConfiguredModelRef, U as normalizeSecretInput, V as resolveEnvApiKey, W as getShellPathFromLoginShell, X as DEFAULT_MODEL, Y as DEFAULT_CONTEXT_TOKENS, Z as DEFAULT_PROVIDER, _ as buildConfiguredAllowlistKeys, a as markAuthProfileFailure, b as isCliProvider, c as dedupeProfileIds, d as ensureAuthProfileStore, f as resolveAuthStorePathForDisplay, g as buildAllowedModelSet, i as isProfileInCooldown, k as resolveThinkingDefault, l as listProfilesForProvider, n as resolveAuthProfileOrder, o as markAuthProfileUsed, p as withFileLock, r as getSoonestCooldownExpiry, s as resolveApiKeyForProfile, u as markAuthProfileGood, v as buildModelAliasIndex, x as modelKey, y as findNormalizedProviderValue, z as requireApiKey } from "./auth-profiles-DdK1Hxaa.js";
10
10
  import { n as formatCliCommand, r as resolveCliName, t as isTruthyEnvValue } from "./env-BDXYbTKj.js";
@@ -104,30 +104,6 @@ import { apiThrottler } from "@grammyjs/transformer-throttler";
104
104
 
105
105
  //#region src/config/model-profiles-builtin.ts
106
106
  /**
107
- * Starter pack — always-on context for models with tool arg corruption.
108
- * ~500 tokens. Prevents the most common failure patterns.
109
- * For detailed file modification guides, the self-inspect skill cascades from here.
110
- */
111
- const STARTER_PACK = [
112
- "",
113
- "YOUR FILES (use read tool directly on these paths — NEVER use exec to find or read files):",
114
- "- Glass UI CSS: <SYMI_ROOT>/dist/control-ui/css/style.css",
115
- "- Glass UI HTML: <SYMI_ROOT>/dist/control-ui/index.html",
116
- "- Glass UI JS: <SYMI_ROOT>/dist/control-ui/js/app.js, gateway.js, render.js, models.js, history.js, symipulse.js, debug.js",
117
- "- Package: <SYMI_ROOT>/package.json",
118
- "- Config: ~/.symi/symi.json | Sessions: ~/.symi/agents/main/sessions/ | Memory: ~/.symi/state/memory/",
119
- "- For detailed modification guides, read the self-inspect skill.",
120
- "",
121
- "TOOL RULES (mandatory):",
122
- "- read/write/edit: Always provide the full absolute path directly. NEVER use exec with cat, head, find, grep, or ls to view files.",
123
- "- exec/bash: Provide only valid shell syntax. No tags, no tokens, no markup. Spell commands exactly.",
124
- "- web_search: Always include query argument. Example: web_search({ query: \"search terms\" })",
125
- "- sessions_spawn: Always include task and mode. Example: sessions_spawn({ label: \"name\", mode: \"run\", task: \"description\" })",
126
- "",
127
- "KNOWN SHELL COMMANDS (use exact spelling):",
128
- "awk basename brew cargo cat chmod chown cp curl cut date dd df diff dig dirname docker du echo env find gcc git go grep gunzip gzip head hostname id ifconfig ip java javac journalctl kill killall launchctl less ln locate ls make man mkdir mktemp more mount mv nc netstat nice node nohup npm npx open paste pbcopy pbpaste ping pip pip3 plutil printf ps pwd python python3 readlink realpath rm rmdir rsync ruby scp sed sleep sort ssh stat strings sudo su sw_vers sysctl system_profiler systemctl tail tar tee test top touch tr type uname uniq unzip wc wget which xargs xz yes zip"
129
- ];
130
- /**
131
107
  * Built-in model profiles. Ordered from most-specific to least-specific so
132
108
  * that `resolveModelProfile` can return the first match.
133
109
  *
@@ -170,8 +146,7 @@ const BUILTIN_PROFILES = [
170
146
  "- Do not write 'Verification:', 'Requirements:', 'Status Check:', or 'Everything is correct'.",
171
147
  "- If you need to verify your work, do so before writing your response, not after.",
172
148
  "- Send brief progress updates on long tasks so the user knows you are active.",
173
- "- When calling tools, provide arguments as clean values only. Never include <|, |>, or XML-like tags in tool argument values. For exec/bash commands, provide only valid shell syntax.",
174
- ...STARTER_PACK
149
+ "- When calling tools, provide arguments as clean values only. Never include <|, |>, or XML-like tags in tool argument values. For exec/bash commands, provide only valid shell syntax."
175
150
  ],
176
151
  ui: {
177
152
  badge: "Local",
@@ -243,8 +218,7 @@ const BUILTIN_PROFILES = [
243
218
  "- If you need to verify your work, do so before writing your response, not after.",
244
219
  "- Keep planning and reasoning internal. Only speak when you have a result or need user input.",
245
220
  "- When working on multi-step tasks, send a brief one-line status update so the user knows you are active.",
246
- "- When calling tools, provide arguments as clean values only. Never include <|, |>, or XML-like tags in tool argument values. For exec/bash commands, provide only valid shell syntax.",
247
- ...STARTER_PACK
221
+ "- When calling tools, provide arguments as clean values only. Never include <|, |>, or XML-like tags in tool argument values. For exec/bash commands, provide only valid shell syntax."
248
222
  ],
249
223
  ui: {
250
224
  badge: "CoreWeave",
@@ -53700,7 +53674,7 @@ function isVoiceChannelType(type) {
53700
53674
  function createDefaultDeps() {
53701
53675
  return {
53702
53676
  sendMessageWhatsApp: async (...args) => {
53703
- const { sendMessageWhatsApp } = await import("./web-1JPHv6du.js");
53677
+ const { sendMessageWhatsApp } = await import("./web-0xZpP0WA.js");
53704
53678
  return await sendMessageWhatsApp(...args);
53705
53679
  },
53706
53680
  sendMessageTelegram: async (...args) => {
@@ -68980,7 +68954,7 @@ function loadWebLoginQr() {
68980
68954
  return webLoginQrPromise;
68981
68955
  }
68982
68956
  function loadWebChannel() {
68983
- webChannelPromise ??= import("./web-1JPHv6du.js");
68957
+ webChannelPromise ??= import("./web-0xZpP0WA.js");
68984
68958
  return webChannelPromise;
68985
68959
  }
68986
68960
  function loadWhatsAppActions() {
@@ -75523,175 +75497,6 @@ function subscribeEmbeddedPiSession(params) {
75523
75497
  * @module
75524
75498
  */
75525
75499
  /**
75526
- * Known shell commands for prefix deduplication.
75527
- * When token boundary corruption doubles a command prefix (grep → grgrep,
75528
- * ls → lsls), we check the first token against this set. If stripping
75529
- * the repeated prefix yields a known command, use it.
75530
- *
75531
- * O(1) lookup. Zero false positives — no valid command is its own prefix doubled.
75532
- */
75533
- const KNOWN_COMMANDS = new Set([
75534
- "ls",
75535
- "cat",
75536
- "cp",
75537
- "mv",
75538
- "rm",
75539
- "mkdir",
75540
- "rmdir",
75541
- "touch",
75542
- "chmod",
75543
- "chown",
75544
- "chgrp",
75545
- "ln",
75546
- "pwd",
75547
- "echo",
75548
- "printf",
75549
- "head",
75550
- "tail",
75551
- "wc",
75552
- "sort",
75553
- "uniq",
75554
- "cut",
75555
- "tr",
75556
- "tee",
75557
- "xargs",
75558
- "env",
75559
- "date",
75560
- "sleep",
75561
- "true",
75562
- "false",
75563
- "yes",
75564
- "test",
75565
- "expr",
75566
- "basename",
75567
- "dirname",
75568
- "readlink",
75569
- "realpath",
75570
- "mktemp",
75571
- "stat",
75572
- "file",
75573
- "dd",
75574
- "df",
75575
- "du",
75576
- "id",
75577
- "whoami",
75578
- "hostname",
75579
- "uname",
75580
- "grep",
75581
- "egrep",
75582
- "fgrep",
75583
- "find",
75584
- "locate",
75585
- "sed",
75586
- "awk",
75587
- "diff",
75588
- "patch",
75589
- "strings",
75590
- "less",
75591
- "more",
75592
- "tar",
75593
- "gzip",
75594
- "gunzip",
75595
- "zip",
75596
- "unzip",
75597
- "bzip2",
75598
- "xz",
75599
- "curl",
75600
- "wget",
75601
- "ssh",
75602
- "scp",
75603
- "rsync",
75604
- "ping",
75605
- "dig",
75606
- "nslookup",
75607
- "netstat",
75608
- "lsof",
75609
- "nc",
75610
- "ifconfig",
75611
- "ip",
75612
- "ps",
75613
- "top",
75614
- "kill",
75615
- "killall",
75616
- "nohup",
75617
- "nice",
75618
- "which",
75619
- "type",
75620
- "where",
75621
- "man",
75622
- "sudo",
75623
- "su",
75624
- "mount",
75625
- "umount",
75626
- "systemctl",
75627
- "journalctl",
75628
- "launchctl",
75629
- "dmesg",
75630
- "sysctl",
75631
- "git",
75632
- "make",
75633
- "gcc",
75634
- "python",
75635
- "python3",
75636
- "pip",
75637
- "pip3",
75638
- "node",
75639
- "npm",
75640
- "npx",
75641
- "pnpm",
75642
- "yarn",
75643
- "cargo",
75644
- "go",
75645
- "ruby",
75646
- "gem",
75647
- "java",
75648
- "javac",
75649
- "docker",
75650
- "brew",
75651
- "open",
75652
- "pbcopy",
75653
- "pbpaste",
75654
- "defaults",
75655
- "diskutil",
75656
- "sw_vers",
75657
- "system_profiler",
75658
- "plutil",
75659
- "mdfind",
75660
- "mdls",
75661
- "softwareupdate",
75662
- "caffeinate",
75663
- "say",
75664
- "osascript",
75665
- "security",
75666
- "codesign",
75667
- "hdiutil",
75668
- "installer",
75669
- "lipo",
75670
- "otool",
75671
- "dscl",
75672
- "scutil"
75673
- ]);
75674
- /**
75675
- * Fix command prefix duplication from token boundary splits.
75676
- * Token corruption can double a multi-char prefix: grep → grgrep, ls → lsls.
75677
- * Check if the first token starts with a repeated prefix that, when removed,
75678
- * yields a known command.
75679
- *
75680
- * Examples: grgrep → grep, lsls → ls, catcat → cat, curlcurl → curl
75681
- */
75682
- function dedupCommandPrefix(command) {
75683
- const match = command.match(/^([a-zA-Z0-9_-]+)/);
75684
- if (!match) return command;
75685
- const firstToken = match[1];
75686
- if (KNOWN_COMMANDS.has(firstToken)) return command;
75687
- for (let prefixLen = 2; prefixLen <= Math.min(10, Math.floor(firstToken.length / 2)); prefixLen++) {
75688
- const prefix = firstToken.slice(0, prefixLen);
75689
- const candidate = firstToken.slice(prefixLen);
75690
- if (candidate.startsWith(prefix.slice(0, Math.min(prefix.length, candidate.length))) && KNOWN_COMMANDS.has(candidate)) return candidate + command.slice(firstToken.length);
75691
- }
75692
- return command;
75693
- }
75694
- /**
75695
75500
  * Validate that a command string contains extractable valid shell syntax.
75696
75501
  * Returns the cleaned command if valid, or an error reason if not.
75697
75502
  *
@@ -75710,7 +75515,6 @@ function validateShellCommand(command) {
75710
75515
  cleaned = cleaned.replace(/<\|[^|>]*(?:\|>)?/g, "").trim();
75711
75516
  cleaned = cleanResidualTokenFragments(cleaned);
75712
75517
  }
75713
- cleaned = dedupCommandPrefix(cleaned);
75714
75518
  if (!cleaned || !cleaned.trim()) return {
75715
75519
  valid: false,
75716
75520
  cleaned: "",
@@ -77049,18 +76853,7 @@ async function runEmbeddedAttempt(params) {
77049
76853
  const profileModelKey = params.modelId ?? "";
77050
76854
  const modelProfile = resolveModelProfile(profileModelKey, params.config?.models?.profiles);
77051
76855
  log$9.debug(`[profile] resolved: modelId=${profileModelKey} → profile=${modelProfile.label} validateToolArgs=${modelProfile.filters?.validateToolArgs ?? false}`);
77052
- const systemPromptText = createSystemPromptOverride(appendPrompt + (() => {
77053
- if (modelProfile.promptAdditions.length === 0) return "";
77054
- let text = "\n\n" + modelProfile.promptAdditions.join("\n");
77055
- if (text.includes("<SYMI_ROOT>")) {
77056
- const symiRoot = resolveSymiPackageRootSync({
77057
- moduleUrl: import.meta.url,
77058
- argv1: process.argv[1]
77059
- });
77060
- if (symiRoot) text = text.replaceAll("<SYMI_ROOT>", symiRoot);
77061
- }
77062
- return text;
77063
- })())();
76856
+ const systemPromptText = createSystemPromptOverride(appendPrompt + (modelProfile.promptAdditions.length > 0 ? "\n\n" + modelProfile.promptAdditions.join("\n") : ""))();
77064
76857
  const sessionLock = await acquireSessionWriteLock({
77065
76858
  sessionFile: params.sessionFile,
77066
76859
  maxHoldMs: resolveSessionLockMaxHoldFromTimeout({ timeoutMs: params.timeoutMs })
@@ -77334,18 +77127,6 @@ async function runEmbeddedAttempt(params) {
77334
77127
  const TOOL_ERROR_ABORT_THRESHOLD = 5;
77335
77128
  const TOOL_ERROR_WARN_THRESHOLD = 3;
77336
77129
  let consecutiveToolErrors = 0;
77337
- /** Detect exec/bash results that indicate a shell error (non-zero exit, command not found, etc.) */
77338
- const isShellErrorResult = (result) => {
77339
- if (!result || typeof result !== "object") return false;
77340
- const content = result.content;
77341
- if (!Array.isArray(content)) return false;
77342
- const text = content.filter((b) => b && typeof b === "object" && b.type === "text").map((b) => {
77343
- const t = b.text;
77344
- return typeof t === "string" ? t : "";
77345
- }).join("\n");
77346
- if (!text) return false;
77347
- return /exit code [1-9]\d*|command not found|No such file or directory|syntax error|parse error|Permission denied|not recognized|cannot execute/i.test(text);
77348
- };
77349
77130
  const subscription = subscribeEmbeddedPiSession({
77350
77131
  session: activeSession,
77351
77132
  runId: params.runId,
@@ -77371,9 +77152,7 @@ async function runEmbeddedAttempt(params) {
77371
77152
  const phase = typeof evt.data?.phase === "string" ? evt.data.phase : "";
77372
77153
  const isError = evt.data?.isError === true;
77373
77154
  if (phase === "result") {
77374
- const toolName = typeof evt.data?.name === "string" ? evt.data.name : "";
77375
- const isExecShellError = !isError && (toolName === "exec" || toolName === "bash") && isShellErrorResult(evt.data?.result);
77376
- if (isError || isExecShellError) consecutiveToolErrors++;
77155
+ if (isError) consecutiveToolErrors++;
77377
77156
  else consecutiveToolErrors = 0;
77378
77157
  if (consecutiveToolErrors >= TOOL_ERROR_ABORT_THRESHOLD) {
77379
77158
  const toolName = typeof evt.data?.name === "string" ? evt.data.name : "unknown";
@@ -16,7 +16,7 @@ import "./client-DMBZpU6X.js";
16
16
  import "./call-BcE47FtD.js";
17
17
  import "./message-channel-C9dERklz.js";
18
18
  import "./pairing-token-Byh6drgn.js";
19
- import { Ct as trimLogTail } from "./subagent-registry-M6DQwhYN.js";
19
+ import { Ct as trimLogTail } from "./subagent-registry-J2pIBQF7.js";
20
20
  import "./sessions-CJXnZVjR.js";
21
21
  import "./tokens-Csntmwwn.js";
22
22
  import "./plugins-CwSlLxM8.js";
@@ -111,10 +111,10 @@ import "./npm-registry-spec-DkaZNHAW.js";
111
111
  import "./skill-scanner-BGWOBqLY.js";
112
112
  import "./installs-CgQpVncj.js";
113
113
  import "./channels-status-issues-c7qZbYG5.js";
114
- import "./register.subclis-BxbyrMu1.js";
115
- import "./command-registry-DV-FTDz1.js";
114
+ import "./register.subclis-elNdyQio.js";
115
+ import "./command-registry-B2aO0Q7_.js";
116
116
  import "./program-context-CqzR_m-7.js";
117
- import { r as installCompletion } from "./completion-cli-Cbr2b-rs.js";
117
+ import { r as installCompletion } from "./completion-cli-BsKD_vBb.js";
118
118
  import "./daemon-runtime-CfRwa6qh.js";
119
119
  import { r as parseSemver } from "./runtime-guard-D7waq_Ho.js";
120
120
  import "./systemd-DlMdyFDY.js";
@@ -124,19 +124,19 @@ import "./systemd-hints-sQipWGd1.js";
124
124
  import { i as runDaemonInstall, r as runDaemonRestart } from "./daemon-cli-wWnBIQtk.js";
125
125
  import "./diagnostics-CS1ov_hH.js";
126
126
  import { t as renderTable } from "./table-D01d2GuY.js";
127
- import "./health-8bTzq722.js";
127
+ import "./health-CXjAtn1-.js";
128
128
  import "./control-ui-assets-BseSWee1.js";
129
129
  import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, m as normalizeUpdateChannel, n as compareSemverStrings, r as fetchNpmTagVersion, s as DEFAULT_GIT_CHANNEL, t as checkUpdateStatus, u as channelToNpmTag } from "./update-check-ZdimP1aU.js";
130
130
  import "./dm-policy-shared-DJ-61hCT.js";
131
131
  import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-DbmZz0Aq.js";
132
- import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-BIp88-4P.js";
132
+ import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-D8AFB8Oi.js";
133
133
  import "./logging-BGewRZy0.js";
134
134
  import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-DEMKx4eC.js";
135
135
  import "./doctor-config-flow-CA3eiKhd.js";
136
136
  import "./systemd-linger-DA_LW52P.js";
137
137
  import "./health-format-CzgUHmmX.js";
138
- import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-uLoOKbdZ.js";
139
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-v8uq--hy.js";
138
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-CwfroEHp.js";
139
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DyiRkYT4.js";
140
140
  import { spawn, spawnSync } from "node:child_process";
141
141
  import os from "node:os";
142
142
  import path from "node:path";
@@ -1,7 +1,7 @@
1
1
  import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, h as pathExists } from "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { V as trimLogTail } from "./reply-BgOOEOPX.js";
4
+ import { V as trimLogTail } from "./reply-DUZvOCsG.js";
5
5
  import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
6
6
  import "./registry-Cja8eT7G.js";
7
7
  import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
@@ -106,7 +106,7 @@ import "./stagger-BUClb97_.js";
106
106
  import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName } from "./constants-C8_BLnaW.js";
107
107
  import "./channel-selection-DuWs0Aak.js";
108
108
  import { r as parseSemver } from "./runtime-guard-B37eizu-.js";
109
- import "./program-context-DZNOBe-u.js";
109
+ import "./program-context-BBtSJunF.js";
110
110
  import "./catalog-RiADx7MA.js";
111
111
  import "./skills-status-CURJKnyY.js";
112
112
  import { n as inheritOptionFromParent } from "./command-options-BtDai3oC.js";
@@ -117,7 +117,7 @@ import "./npm-registry-spec-C2JDdSZS.js";
117
117
  import "./skill-scanner-CLs8u6vQ.js";
118
118
  import "./installs-C1Cebk97.js";
119
119
  import "./channels-status-issues-B_kBkl_u.js";
120
- import { r as installCompletion } from "./completion-cli-BqzmOZg7.js";
120
+ import { r as installCompletion } from "./completion-cli-BKm12loU.js";
121
121
  import "./daemon-runtime-2mwX-jqj.js";
122
122
  import "./systemd-riq8uNJQ.js";
123
123
  import { t as resolveGatewayService } from "./service-Cl74hx8J.js";
@@ -126,19 +126,19 @@ import "./systemd-hints-BR6gChwm.js";
126
126
  import { i as runDaemonInstall, r as runDaemonRestart } from "./daemon-cli-DscwlsKW.js";
127
127
  import "./diagnostics-BAMlsVVX.js";
128
128
  import { t as renderTable } from "./table-BTgkRafz.js";
129
- import "./health-B3pwVJ_N.js";
129
+ import "./health-B32Q-KYM.js";
130
130
  import "./control-ui-assets-Z947tKLt.js";
131
131
  import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, m as normalizeUpdateChannel, n as compareSemverStrings, r as fetchNpmTagVersion, s as DEFAULT_GIT_CHANNEL, t as checkUpdateStatus, u as channelToNpmTag } from "./update-check-CtckACbb.js";
132
132
  import "./dm-policy-shared-Bh3TbexU.js";
133
133
  import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-DtwCUTf-.js";
134
- import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-Dmki2xrH.js";
134
+ import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-DvZOsoQs.js";
135
135
  import "./logging-BzzwiKjv.js";
136
136
  import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-rw7wJwHd.js";
137
137
  import "./doctor-config-flow-QnaBd8kL.js";
138
138
  import "./systemd-linger-aQ75ZlXY.js";
139
139
  import "./health-format-DSwnXZPU.js";
140
- import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-XyOMjPBV.js";
141
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-Do0e0eZE.js";
140
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-DUXeA9Zp.js";
141
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-SEerte2S.js";
142
142
  import os from "node:os";
143
143
  import path from "node:path";
144
144
  import fs from "node:fs/promises";
@@ -1,6 +1,6 @@
1
1
  import { nt as pathExists } from "./entry.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-CBKBIMpA.js";
3
- import { Ct as trimLogTail } from "./subagent-registry-M6DQwhYN.js";
3
+ import { Ct as trimLogTail } from "./subagent-registry-J2pIBQF7.js";
4
4
  import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BseSWee1.js";
5
5
  import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-ZdimP1aU.js";
6
6
  import os from "node:os";
@@ -1,5 +1,5 @@
1
1
  import { h as pathExists } from "./utils-B-0b9bGM.js";
2
- import { V as trimLogTail } from "./reply-BgOOEOPX.js";
2
+ import { V as trimLogTail } from "./reply-DUZvOCsG.js";
3
3
  import { t as runCommandWithTimeout } from "./exec-CWkblSrI.js";
4
4
  import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-Z947tKLt.js";
5
5
  import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-CtckACbb.js";
@@ -4,7 +4,7 @@ import { A as isSelfChatMode, B as sleep, C as clamp, F as resolveJidToE164, H a
4
4
  import "./agent-scope-CpEJ0B88.js";
5
5
  import { r as defaultRuntime, t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
6
6
  import "./workspace-DscDraUb.js";
7
- import { C as resolveEnvelopeFormatOptions, D as normalizeMentionText, E as buildMentionRegexes, S as formatInboundEnvelope, T as shouldComputeCommandAuthorized, _ as parseActivationCommand, b as createInboundDebouncer, c as DEFAULT_GROUP_HISTORY_LIMIT, d as shouldAckReactionForWhatsApp, f as dispatchReplyWithBufferedBlockDispatcher, g as normalizeGroupActivation, h as getReplyFromConfig, l as buildHistoryContextFromEntries, m as createDedupeCache, n as computeBackoff, o as buildPairingReply, r as sleepWithAbort, s as resolveMentionGating, u as recordPendingHistoryEntryIfEnabled, v as formatDurationPrecise, w as hasControlCommand, x as resolveInboundDebounceMs, y as enqueueSystemEvent } from "./unified-runner-DckayuEM.js";
7
+ import { C as resolveEnvelopeFormatOptions, D as normalizeMentionText, E as buildMentionRegexes, S as formatInboundEnvelope, T as shouldComputeCommandAuthorized, _ as parseActivationCommand, b as createInboundDebouncer, c as DEFAULT_GROUP_HISTORY_LIMIT, d as shouldAckReactionForWhatsApp, f as dispatchReplyWithBufferedBlockDispatcher, g as normalizeGroupActivation, h as getReplyFromConfig, l as buildHistoryContextFromEntries, m as createDedupeCache, n as computeBackoff, o as buildPairingReply, r as sleepWithAbort, s as resolveMentionGating, u as recordPendingHistoryEntryIfEnabled, v as formatDurationPrecise, w as hasControlCommand, x as resolveInboundDebounceMs, y as enqueueSystemEvent } from "./unified-runner-oH9Pt-cO.js";
8
8
  import { s as resolveStorePath } from "./paths-CbQV9WEg.js";
9
9
  import "./auth-profiles-DdK1Hxaa.js";
10
10
  import { n as formatCliCommand } from "./env-BDXYbTKj.js";
@@ -15,7 +15,7 @@ import "./client-DMBZpU6X.js";
15
15
  import "./call-BcE47FtD.js";
16
16
  import "./message-channel-C9dERklz.js";
17
17
  import "./pairing-token-Byh6drgn.js";
18
- import { Bn as resolveEnvelopeFormatOptions, Cn as enqueueSystemEvent, F as buildHistoryContextFromEntries, Hn as hasControlCommand, I as recordPendingHistoryEntryIfEnabled, Kn as buildMentionRegexes, L as shouldAckReactionForWhatsApp, Ln as createInboundDebouncer, M as buildPairingReply, N as resolveMentionGating, P as DEFAULT_GROUP_HISTORY_LIMIT, R as dispatchReplyWithBufferedBlockDispatcher, Rn as resolveInboundDebounceMs, U as createDedupeCache, Un as shouldComputeCommandAuthorized, W as getReplyFromConfig, b as sleepWithAbort, nn as parseActivationCommand, qn as normalizeMentionText, tn as normalizeGroupActivation, y as computeBackoff, zn as formatInboundEnvelope } from "./subagent-registry-M6DQwhYN.js";
18
+ import { Bn as resolveEnvelopeFormatOptions, Cn as enqueueSystemEvent, F as buildHistoryContextFromEntries, Hn as hasControlCommand, I as recordPendingHistoryEntryIfEnabled, Kn as buildMentionRegexes, L as shouldAckReactionForWhatsApp, Ln as createInboundDebouncer, M as buildPairingReply, N as resolveMentionGating, P as DEFAULT_GROUP_HISTORY_LIMIT, R as dispatchReplyWithBufferedBlockDispatcher, Rn as resolveInboundDebounceMs, U as createDedupeCache, Un as shouldComputeCommandAuthorized, W as getReplyFromConfig, b as sleepWithAbort, nn as parseActivationCommand, qn as normalizeMentionText, tn as normalizeGroupActivation, y as computeBackoff, zn as formatInboundEnvelope } from "./subagent-registry-J2pIBQF7.js";
19
19
  import { B as resolveGroupSessionKey, c as recordSessionMetaFromInbound, o as loadSessionStore, s as readSessionUpdatedAt, u as updateLastRoute } from "./sessions-CJXnZVjR.js";
20
20
  import "./tokens-Csntmwwn.js";
21
21
  import "./plugins-CwSlLxM8.js";
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import "./reply-BgOOEOPX.js";
4
+ import "./reply-DUZvOCsG.js";
5
5
  import "./registry-Cja8eT7G.js";
6
6
  import "./subsystem-D9vIQve0.js";
7
7
  import "./exec-CWkblSrI.js";
@@ -101,7 +101,7 @@ import "./pi-tools.policy-CIDBbw6x.js";
101
101
  import "./control-service-Bz7rxLWq.js";
102
102
  import "./stagger-BUClb97_.js";
103
103
  import "./channel-selection-DuWs0Aak.js";
104
- import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-PvWA2ukO.js";
104
+ import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-C3XZ7c2q.js";
105
105
  import { n as sendMessageWhatsApp } from "./outbound-DB5Zus0-.js";
106
106
  import { i as waitForWaConnection, t as createWaSocket } from "./session-DIBTkyvE.js";
107
107
  import { t as loginWeb } from "./login-dIlDkG4X.js";
@@ -8,7 +8,7 @@ import { c as resolveIdentityNamePrefix, l as resolveMessagePrefix, t as createR
8
8
  import "./github-copilot-token-BbsJ0Qbo.js";
9
9
  import { r as formatCliCommand } from "./env-CQ_DQOwT.js";
10
10
  import "./tokens-Cn6drXx2.js";
11
- import { C as shouldComputeCommandAuthorized, S as hasControlCommand, T as normalizeMentionText, _ as enqueueSystemEvent, a as DEFAULT_GROUP_HISTORY_LIMIT, b as formatInboundEnvelope, c as shouldAckReactionForWhatsApp, d as createDedupeCache, f as getReplyFromConfig, g as formatDurationPrecise, h as parseActivationCommand, i as resolveMentionGating, l as dispatchReplyWithBufferedBlockDispatcher, m as normalizeGroupActivation, n as sleepWithAbort, o as buildHistoryContextFromEntries, r as buildPairingReply, s as recordPendingHistoryEntryIfEnabled, t as computeBackoff, v as createInboundDebouncer, w as buildMentionRegexes, x as resolveEnvelopeFormatOptions, y as resolveInboundDebounceMs } from "./pi-embedded-Dtmwbds4.js";
11
+ import { C as shouldComputeCommandAuthorized, S as hasControlCommand, T as normalizeMentionText, _ as enqueueSystemEvent, a as DEFAULT_GROUP_HISTORY_LIMIT, b as formatInboundEnvelope, c as shouldAckReactionForWhatsApp, d as createDedupeCache, f as getReplyFromConfig, g as formatDurationPrecise, h as parseActivationCommand, i as resolveMentionGating, l as dispatchReplyWithBufferedBlockDispatcher, m as normalizeGroupActivation, n as sleepWithAbort, o as buildHistoryContextFromEntries, r as buildPairingReply, s as recordPendingHistoryEntryIfEnabled, t as computeBackoff, v as createInboundDebouncer, w as buildMentionRegexes, x as resolveEnvelopeFormatOptions, y as resolveInboundDebounceMs } from "./pi-embedded-CFFnZEcA.js";
12
12
  import "./plugins-71oIavrF.js";
13
13
  import { i as logWebSelfId, l as readWebSelfId, n as WA_WEB_AUTH_DIR, p as webAuthExists, r as getWebAuthAgeMs, s as pickWebChannel, t as resolveWhatsAppAccount } from "./accounts-DDEyGwby.js";
14
14
  import "./bindings-DYVakimr.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symerian/symi",
3
- "version": "2.6.18",
3
+ "version": "2.6.19",
4
4
  "description": "Multi-channel AI gateway with extensible messaging integrations",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/jaysteelmind/symi#readme",
@@ -1,65 +0,0 @@
1
- import { a as WA_WEB_AUTH_DIR, g as webAuthExists, s as logWebSelfId, u as pickWebChannel } from "./accounts-D9zGZU5t.js";
2
- import "./reply-D2W7XCcz.js";
3
- import "./paths-DR2yt_mP.js";
4
- import "./github-copilot-token-D9X2phUj.js";
5
- import "./plugins-BbAvhC25.js";
6
- import "./fetch-CUNoPTKm.js";
7
- import "./registry--_pGht6S.js";
8
- import "./retry-ilSJqnz9.js";
9
- import "./send-Bxdu6ZZy.js";
10
- import "./config-DDkdiUOR.js";
11
- import "./subsystem-Coz2AgU8.js";
12
- import "./command-format-DSdvQ_M5.js";
13
- import "./model-selection-OpU8HN50.js";
14
- import "./agent-scope-C3gMMKCU.js";
15
- import "./manifest-registry-B3ugY9-f.js";
16
- import "./redact-DPnDWsnT.js";
17
- import "./errors-Bv8oZiTO.js";
18
- import "./channel-activity-Ji7f0gqq.js";
19
- import "./image-ops-Bnp6LXEx.js";
20
- import "./ssrf-DKZ8eBrk.js";
21
- import "./local-roots-Ckk1QfzI.js";
22
- import "./ir-Fb3qpcis.js";
23
- import "./chunk-jvk9axTQ.js";
24
- import "./message-channel-BdI5Ra9S.js";
25
- import "./bindings-BbwoUGPx.js";
26
- import "./markdown-tables-Dfaqilz6.js";
27
- import "./render-BiJZ5W4Z.js";
28
- import "./tables-DR0NmBeH.js";
29
- import "./send-BHbXh8Ly.js";
30
- import "./tool-images-D7Lno-TE.js";
31
- import "./target-errors-B7YyMnIi.js";
32
- import "./send-BtANzsAo.js";
33
- import "./send-D6LMZJ_h.js";
34
- import "./runner-BVqnEfNe.js";
35
- import "./reply-prefix-BHuV5t70.js";
36
- import "./tokens-CWMflosr.js";
37
- import "./skill-commands-DCNXVERE.js";
38
- import "./skills-B1GeRYlu.js";
39
- import "./chrome-C7c_0I5M.js";
40
- import "./thinking-DCNUIAHY.js";
41
- import "./accounts-Dtszw3Zn.js";
42
- import "./accounts-BToL3HlP.js";
43
- import "./deliver-BZ6iNLl7.js";
44
- import "./pi-embedded-helpers-BveUP4hk.js";
45
- import "./paths-A0xdf3yk.js";
46
- import "./diagnostic-mFf4i4G9.js";
47
- import "./store-Do3t33-c.js";
48
- import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-_efq-pM9.js";
49
- import "./image-BOYy0Ump.js";
50
- import "./pi-model-discovery-LbcEa65a.js";
51
- import "./api-key-rotation-CVBMpnPc.js";
52
- import "./sqlite-Cq_7Cg4E.js";
53
- import "./diagnostic-session-state-Wd5tNeQG.js";
54
- import "./manager-DckktAQ3.js";
55
- import "./commands-registry-CQFbmUMs.js";
56
- import "./send-BMfJIhCk.js";
57
- import "./proxy-MquBDehr.js";
58
- import "./resolve-route-D3JH_D2N.js";
59
- import "./replies-fI39rPGa.js";
60
- import "./outbound-attachment-DnVQfTG2.js";
61
- import { n as sendMessageWhatsApp } from "./outbound-rF6G8Xpr.js";
62
- import { i as waitForWaConnection, t as createWaSocket } from "./session-kI0tzViQ.js";
63
- import { t as loginWeb } from "./login-Bh3DZPam.js";
64
-
65
- export { WA_WEB_AUTH_DIR, createWaSocket, logWebSelfId, loginWeb, monitorWebChannel, monitorWebInbox, pickWebChannel, sendMessageWhatsApp, waitForWaConnection, webAuthExists };