@symerian/symi 2.6.14 → 2.6.16

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 (170) hide show
  1. package/dist/{agents-CrSpoNsS.js → agents-DbDrceM_.js} +4 -4
  2. package/dist/{agents.config-B3GILTs5.js → agents.config-AMrJVinF.js} +1 -1
  3. package/dist/{agents.config-Co1CO8fA.js → agents.config-phBy3nbc.js} +1 -1
  4. package/dist/{audio-preflight-CPBOQV4I.js → audio-preflight-C40mKAp7.js} +4 -4
  5. package/dist/{auth-choice-BHWxDJh7.js → auth-choice-CmbfbR4q.js} +1 -1
  6. package/dist/{auth-choice-BBmXnDnK.js → auth-choice-DsGuT4Dk.js} +1 -1
  7. package/dist/{banner-RLiOIu-3.js → banner-Ds_jDSsM.js} +1 -1
  8. package/dist/build-info.json +3 -3
  9. package/dist/bundled/boot-md/handler.js +1 -1
  10. package/dist/bundled/session-memory/handler.js +1 -1
  11. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  12. package/dist/{channel-options-BCK41AON.js → channel-options-BV6WyWWq.js} +1 -1
  13. package/dist/{channel-options-PDf46S-K.js → channel-options-Del6IGRs.js} +1 -1
  14. package/dist/{channel-web-C3XZ7c2q.js → channel-web-Cuukem2c.js} +1 -1
  15. package/dist/{channels-cli-723vy6L6.js → channels-cli-C3LiJhRT.js} +4 -4
  16. package/dist/{channels-cli-CUWuD7qf.js → channels-cli-D-E-oHnC.js} +4 -4
  17. package/dist/{chrome-D2SKJnR7.js → chrome-CDJYxX5a.js} +7 -7
  18. package/dist/{cli-CAzmrOs0.js → cli-BavIfExj.js} +1 -1
  19. package/dist/{cli-DYdRSi_j.js → cli-C53UJpN3.js} +1 -1
  20. package/dist/{command-registry-B2aO0Q7_.js → command-registry-Dtn5iLgE.js} +9 -9
  21. package/dist/{completion-cli-BsKD_vBb.js → completion-cli-DEFzGiNX.js} +2 -2
  22. package/dist/{completion-cli-BKm12loU.js → completion-cli-DhhIPri-.js} +1 -1
  23. package/dist/{config-cli-D47lU7kU.js → config-cli-CIhqgzOH.js} +1 -1
  24. package/dist/{config-cli-Bynmd81Q.js → config-cli-DW40utS2.js} +1 -1
  25. package/dist/{configure-Df6GmKAR.js → configure-CkSODPmX.js} +3 -3
  26. package/dist/{configure-B3vS2Iz5.js → configure-SVzErXwX.js} +3 -3
  27. package/dist/{deliver-C-37cZUe.js → deliver-BH0l3UKW.js} +1 -1
  28. package/dist/{doctor-completion-DyiRkYT4.js → doctor-completion-B-w1_lQk.js} +1 -1
  29. package/dist/{doctor-completion-SEerte2S.js → doctor-completion-BBki2Ufk.js} +1 -1
  30. package/dist/entry.js +1 -1
  31. package/dist/extensionAPI.js +6 -6
  32. package/dist/{gateway-cli-k19iT2vJ.js → gateway-cli-BNYHujRR.js} +9 -9
  33. package/dist/{gateway-cli-PjmG0pFo.js → gateway-cli-BVbhSSqh.js} +9 -9
  34. package/dist/{glass-ui-ws-iCEtluQU.js → glass-ui-ws-B-MkTkAC.js} +7 -7
  35. package/dist/{glass-ui-ws-D0Yv090T.js → glass-ui-ws-DfJEU59m.js} +7 -7
  36. package/dist/{health-CXjAtn1-.js → health-BU6f7W6a.js} +1 -1
  37. package/dist/{health-B32Q-KYM.js → health-wZyomt2k.js} +1 -1
  38. package/dist/{hooks-cli-DA6zOGNz.js → hooks-cli-CdoOvoX9.js} +2 -2
  39. package/dist/{hooks-cli-DfRmFenH.js → hooks-cli-DX4nLKqn.js} +2 -2
  40. package/dist/{image-DcpMiprB.js → image-CHzdaNJ4.js} +1 -1
  41. package/dist/index.js +6 -6
  42. package/dist/llm-slug-generator.js +1 -1
  43. package/dist/{models-cli-CbJUD_L1.js → models-cli-Bc2k_maK.js} +3 -3
  44. package/dist/{models-cli-BgCUViRO.js → models-cli-BeOo0gLs.js} +2 -2
  45. package/dist/{models-zowe4LXa.js → models-mS0NbL8c.js} +2 -2
  46. package/dist/{onboard-CYvIpUXQ.js → onboard-B6VpNEvT.js} +2 -2
  47. package/dist/{onboard-DsKgcThj.js → onboard-Cl0aQccB.js} +2 -2
  48. package/dist/{onboard-channels-DxCGWgB0.js → onboard-channels-BlmSvsPS.js} +1 -1
  49. package/dist/{onboard-channels-DLiV4Y0t.js → onboard-channels-BnvM0w8_.js} +1 -1
  50. package/dist/{onboarding-DioGtMFo.js → onboarding-BxBRG2z_.js} +3 -3
  51. package/dist/{onboarding-BA5v1JEG.js → onboarding-DwHp3u6V.js} +3 -3
  52. package/dist/{onboarding.finalize-DMXCA49f.js → onboarding.finalize-BrbMUUi5.js} +6 -6
  53. package/dist/{onboarding.finalize-CAbRXb0h.js → onboarding.finalize-J7oUfYcz.js} +5 -5
  54. package/dist/{pi-embedded-CFFnZEcA.js → pi-embedded-gKNapGKh.js} +186 -16
  55. package/dist/{pi-embedded-helpers-B8kqLWns.js → pi-embedded-helpers-lgx_U5KS.js} +4 -4
  56. package/dist/{plugin-registry-HFOrv3KN.js → plugin-registry-CMCHyYWB.js} +1 -1
  57. package/dist/{plugin-registry-Bt5YCgFq.js → plugin-registry-thPK5K1z.js} +1 -1
  58. package/dist/plugin-sdk/{accounts-BtaOa4z_.js → accounts-BToL3HlP.js} +1 -1
  59. package/dist/plugin-sdk/{accounts-Ddm33hQm.js → accounts-D9zGZU5t.js} +3 -3
  60. package/dist/plugin-sdk/{accounts-s-AdhXVR.js → accounts-Dtszw3Zn.js} +1 -1
  61. package/dist/plugin-sdk/{active-listener-BXYeALs0.js → active-listener-bEk__wbB.js} +1 -1
  62. package/dist/plugin-sdk/{agent-scope-CYYpcO9W.js → agent-scope-C3gMMKCU.js} +2 -2
  63. package/dist/plugin-sdk/{api-key-rotation-D_sMvI5W.js → api-key-rotation-CVBMpnPc.js} +1 -1
  64. package/dist/plugin-sdk/{audio-preflight-VpItkiy3.js → audio-preflight-DoQQKlxa.js} +24 -24
  65. package/dist/plugin-sdk/{bindings-C7hRtgYW.js → bindings-BbwoUGPx.js} +2 -2
  66. package/dist/plugin-sdk/{channel-activity-DoC1xtDu.js → channel-activity-Ji7f0gqq.js} +1 -1
  67. package/dist/plugin-sdk/{channel-web-E56yV1OA.js → channel-web-Byw20uRC.js} +22 -22
  68. package/dist/plugin-sdk/{chrome-B7RdxmJ0.js → chrome-C7c_0I5M.js} +3 -3
  69. package/dist/plugin-sdk/{chunk-Dw2XBYXv.js → chunk-jvk9axTQ.js} +1 -1
  70. package/dist/plugin-sdk/{command-format-GKSevep4.js → command-format-DSdvQ_M5.js} +1 -1
  71. package/dist/plugin-sdk/{commands-registry-COIaslGl.js → commands-registry-CQFbmUMs.js} +4 -4
  72. package/dist/plugin-sdk/{config-KlTNfkFF.js → config-DDkdiUOR.js} +9 -9
  73. package/dist/plugin-sdk/{deliver-BZ99UKQq.js → deliver-BZ6iNLl7.js} +10 -10
  74. package/dist/plugin-sdk/{diagnostic-05pm5Rxi.js → diagnostic-mFf4i4G9.js} +1 -1
  75. package/dist/plugin-sdk/{image-CLOPx7yW.js → image-BOYy0Ump.js} +4 -4
  76. package/dist/plugin-sdk/{image-ops-BlQR__MN.js → image-ops-Bnp6LXEx.js} +1 -1
  77. package/dist/plugin-sdk/index.js +53 -53
  78. package/dist/plugin-sdk/{ir-BJ6BHE5b.js → ir-Fb3qpcis.js} +4 -4
  79. package/dist/plugin-sdk/{local-roots-BHLNSI8U.js → local-roots-Ckk1QfzI.js} +3 -3
  80. package/dist/plugin-sdk/{login-DQMXuxOk.js → login-Bh3DZPam.js} +7 -7
  81. package/dist/plugin-sdk/{login-qr-BjVZSoCi.js → login-qr-DbR7odSr.js} +9 -9
  82. package/dist/plugin-sdk/{manager-CBSBFuFz.js → manager-DckktAQ3.js} +8 -8
  83. package/dist/plugin-sdk/{manifest-registry-CPnHl_K3.js → manifest-registry-B3ugY9-f.js} +1 -1
  84. package/dist/plugin-sdk/{markdown-tables-BoYFajMu.js → markdown-tables-Dfaqilz6.js} +1 -1
  85. package/dist/plugin-sdk/{message-channel-COTAJzHd.js → message-channel-BdI5Ra9S.js} +1 -1
  86. package/dist/plugin-sdk/{model-selection-CsbEfrS0.js → model-selection-OpU8HN50.js} +4 -4
  87. package/dist/plugin-sdk/{outbound-attachment-CnslKL38.js → outbound-attachment-DnVQfTG2.js} +2 -2
  88. package/dist/plugin-sdk/{outbound-B0e8KdaR.js → outbound-rF6G8Xpr.js} +7 -7
  89. package/dist/plugin-sdk/{pi-auth-json-qWi7ZIYV.js → pi-auth-json-CJk8t14T.js} +5 -5
  90. package/dist/plugin-sdk/{pi-embedded-helpers-CW630epe.js → pi-embedded-helpers-BveUP4hk.js} +17 -17
  91. package/dist/plugin-sdk/{plugins-BNByVCIH.js → plugins-BbAvhC25.js} +4 -4
  92. package/dist/plugin-sdk/{pw-ai-CnbPIPY9.js → pw-ai-DjGUsee-.js} +8 -8
  93. package/dist/plugin-sdk/{qmd-manager-CH0XbIHf.js → qmd-manager-mjKcdwVr.js} +4 -4
  94. package/dist/plugin-sdk/{registry-D0xTnUWt.js → registry--_pGht6S.js} +2 -2
  95. package/dist/plugin-sdk/{replies-LLcQL3w6.js → replies-fI39rPGa.js} +3 -3
  96. package/dist/plugin-sdk/{reply-pPqvSkWb.js → reply-DU2A_Mmx.js} +248 -78
  97. package/dist/plugin-sdk/{reply-prefix-uxfMZW4p.js → reply-prefix-BHuV5t70.js} +1 -1
  98. package/dist/plugin-sdk/{resolve-outbound-target-BiyAyTWz.js → resolve-outbound-target-BkCUbYGV.js} +2 -2
  99. package/dist/plugin-sdk/{resolve-route-B3CCBumQ.js → resolve-route-D3JH_D2N.js} +3 -3
  100. package/dist/plugin-sdk/{retry-CwQ_iIj8.js → retry-ilSJqnz9.js} +1 -1
  101. package/dist/plugin-sdk/{runner-CGBT7tgF.js → runner-BVqnEfNe.js} +9 -9
  102. package/dist/plugin-sdk/{send-C5h_YxNb.js → send-BHbXh8Ly.js} +7 -7
  103. package/dist/plugin-sdk/{send-pYqe432l.js → send-BMfJIhCk.js} +6 -6
  104. package/dist/plugin-sdk/{send-B2CEnVLL.js → send-BtANzsAo.js} +6 -6
  105. package/dist/plugin-sdk/{send-CjOBB3Vo.js → send-Bxdu6ZZy.js} +10 -10
  106. package/dist/plugin-sdk/{send-CRsR8-vO.js → send-D6LMZJ_h.js} +10 -10
  107. package/dist/plugin-sdk/{session-BsOrxiMj.js → session-kI0tzViQ.js} +4 -4
  108. package/dist/plugin-sdk/{skill-commands-ff_01_r3.js → skill-commands-DCNXVERE.js} +5 -5
  109. package/dist/plugin-sdk/{skills-_yTP47Cd.js → skills-B1GeRYlu.js} +7 -7
  110. package/dist/plugin-sdk/{sqlite-CxAR5ttJ.js → sqlite-Cq_7Cg4E.js} +1 -1
  111. package/dist/plugin-sdk/{store-BdrNabcU.js → store-Do3t33-c.js} +2 -2
  112. package/dist/plugin-sdk/{subsystem-B2uDN3TV.js → subsystem-Coz2AgU8.js} +1 -1
  113. package/dist/plugin-sdk/{tables-DNwXwNFa.js → tables-DR0NmBeH.js} +1 -1
  114. package/dist/plugin-sdk/{target-errors-Paro1BjP.js → target-errors-B7YyMnIi.js} +2 -2
  115. package/dist/plugin-sdk/{thinking-CXqf7WTe.js → thinking-DCNUIAHY.js} +5 -5
  116. package/dist/plugin-sdk/{tokens-bC3UVmVH.js → tokens-CWMflosr.js} +1 -1
  117. package/dist/plugin-sdk/{tool-images-HJ2sfZDV.js → tool-images-D7Lno-TE.js} +2 -2
  118. package/dist/plugin-sdk/{tool-loop-detection-at_K42K7.js → tool-loop-detection-DU5sTIKg.js} +2 -2
  119. package/dist/plugin-sdk/web-k5JssYD-.js +65 -0
  120. package/dist/plugin-sdk/{whatsapp-actions-DfseosPO.js → whatsapp-actions-CcBzDuL-.js} +21 -21
  121. package/dist/{plugins-cli-C7xTf9NV.js → plugins-cli-B87kp0ad.js} +2 -2
  122. package/dist/{plugins-cli-CXz_UApK.js → plugins-cli-DamE7XjD.js} +2 -2
  123. package/dist/{program-context-BBtSJunF.js → program-context-DFKRAsbt.js} +17 -17
  124. package/dist/{program-8hWr4qGZ.js → program-gbhreuEV.js} +7 -7
  125. package/dist/{prompt-select-styled-DUXeA9Zp.js → prompt-select-styled-B5bx2NEB.js} +4 -4
  126. package/dist/{prompt-select-styled-CwfroEHp.js → prompt-select-styled-BICt4IW2.js} +4 -4
  127. package/dist/{provider-auth-helpers-Dc7jBEOA.js → provider-auth-helpers-BEu0e6yr.js} +1 -1
  128. package/dist/{provider-auth-helpers-DhLHWjNU.js → provider-auth-helpers-DmEnyFX5.js} +1 -1
  129. package/dist/{push-apns-CflJh75N.js → push-apns-DVz2SkR5.js} +1 -1
  130. package/dist/{push-apns-CVZe5WVN.js → push-apns-tMnMeZX7.js} +1 -1
  131. package/dist/{pw-ai-1htA-NnS.js → pw-ai-De-KR9_s.js} +1 -1
  132. package/dist/{register.agent-BnuJQ5lg.js → register.agent-BOvqehoy.js} +6 -6
  133. package/dist/{register.agent-DV7IR1rI.js → register.agent-KI2e7rY8.js} +5 -5
  134. package/dist/{register.configure-DaIrJXWo.js → register.configure-BpxsezsB.js} +6 -6
  135. package/dist/{register.configure-BhncI0ij.js → register.configure-D8DGPMv0.js} +6 -6
  136. package/dist/{register.maintenance-BO1XWhVb.js → register.maintenance-BcIwMibz.js} +7 -7
  137. package/dist/{register.maintenance-DK_p-7so.js → register.maintenance-WRAU5DSR.js} +8 -8
  138. package/dist/{register.message-B194ue2R.js → register.message-C0eMmAGL.js} +2 -2
  139. package/dist/{register.message-B4CGCAn_.js → register.message-CX_Dmuke.js} +2 -2
  140. package/dist/{register.onboard-DidMCka8.js → register.onboard-BE87LPDH.js} +4 -4
  141. package/dist/{register.onboard-Dt53qGB5.js → register.onboard-ByB6oGQ-.js} +4 -4
  142. package/dist/{register.setup-DgUxMRZR.js → register.setup-D8DgDNnC.js} +4 -4
  143. package/dist/{register.setup-CLV1kk2-.js → register.setup-DSY9eAV8.js} +4 -4
  144. package/dist/{register.status-health-sessions-TvGuwVoR.js → register.status-health-sessions-CW4DkAa1.js} +3 -3
  145. package/dist/{register.status-health-sessions-CB10JLY6.js → register.status-health-sessions-TMJPmooX.js} +3 -3
  146. package/dist/{register.subclis-elNdyQio.js → register.subclis-BS-WgVMV.js} +9 -9
  147. package/dist/{reply-DUZvOCsG.js → reply-B2Xur-75.js} +172 -2
  148. package/dist/{run-main-gBPGqO8r.js → run-main-jFBqLwBJ.js} +14 -14
  149. package/dist/{runner-BcQ0sF9T.js → runner-DUBExAb5.js} +1 -1
  150. package/dist/{server-methods-dgW-8gC7.js → server-methods-BqQeaixw.js} +7 -7
  151. package/dist/{server-methods-BG0N79yY.js → server-methods-zgqyrRAq.js} +7 -7
  152. package/dist/{server-node-events-B_hsQw_N.js → server-node-events-8pINzbzg.js} +2 -2
  153. package/dist/{server-node-events-ZtQKBPo3.js → server-node-events-Doln-zR2.js} +2 -2
  154. package/dist/{status-D4Lr90yH.js → status-BDABGQ7Y.js} +1 -1
  155. package/dist/{status-Cd9-xWsZ.js → status-Bdqk3JgK.js} +2 -2
  156. package/dist/{status-BqhJ-HsW.js → status-Bwvq4SPL.js} +1 -1
  157. package/dist/{status-D-IvYfjk.js → status-DFml_pIs.js} +2 -2
  158. package/dist/{subagent-registry-J2pIBQF7.js → subagent-registry-CUXuFP-8.js} +172 -2
  159. package/dist/{unified-runner-C8c7J6BS.js → unified-runner-CZhWh22N.js} +172 -2
  160. package/dist/{update-cli-D8nA6U7C.js → update-cli-C6thJhZU.js} +7 -7
  161. package/dist/{update-cli-B7TLu25J.js → update-cli-Pwrk83u-.js} +8 -8
  162. package/dist/{update-runner-DvZOsoQs.js → update-runner-Bssy0nSl.js} +1 -1
  163. package/dist/{update-runner-D8AFB8Oi.js → update-runner-DgqFpUFr.js} +1 -1
  164. package/dist/{web-DDiOPIdv.js → web-BFY2FcFr.js} +2 -2
  165. package/dist/{web-CAy-xQv2.js → web-BiK5cfMV.js} +1 -1
  166. package/dist/{web--erunODY.js → web-D1KyfkIV.js} +1 -1
  167. package/dist/{web-mQInjWbW.js → web-DHA8-PYV.js} +6 -6
  168. package/package.json +1 -1
  169. package/skills/self-inspect/SKILL.md +69 -67
  170. package/dist/plugin-sdk/web-Msnzya6B.js +0 -65
@@ -1,6 +1,6 @@
1
1
  import { u as resolveGatewayPort } from "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, k as info, z as isRich } from "./utils-B-0b9bGM.js";
3
- import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-DUZvOCsG.js";
3
+ import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-B2Xur-75.js";
4
4
  import { S as parseAgentSessionKey } from "./session-key-DCt45XZa.js";
5
5
  import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
6
6
  import { n as runExec } from "./exec-CWkblSrI.js";
@@ -28,7 +28,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-CR9445g5.j
28
28
  import { t as readLastGatewayErrorLine } from "./diagnostics-BAMlsVVX.js";
29
29
  import { t as renderTable } from "./table-BTgkRafz.js";
30
30
  import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-CrITRV6w.js";
31
- import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-B32Q-KYM.js";
31
+ import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-wZyomt2k.js";
32
32
  import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-CtckACbb.js";
33
33
  import { t as resolveNodeService } from "./node-service-Cxz4e-Qd.js";
34
34
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-yQZNwAF2.js";
@@ -1,4 +1,4 @@
1
- import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-DUZvOCsG.js";
1
+ import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-B2Xur-75.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
3
3
  import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
4
4
  import { i as loadConfig } from "./config-CHwyw6l5.js";
@@ -9,7 +9,7 @@ import { c as resolveAgentWorkspaceDir } from "./agent-scope-D-jRCY0d.js";
9
9
  import { t as buildWorkspaceSkillStatus } from "./skills-status-DKXJ-tbi.js";
10
10
  import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-DHBLS1Hl.js";
11
11
  import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BcE47FtD.js";
12
- import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-J2pIBQF7.js";
12
+ import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-CUXuFP-8.js";
13
13
  import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-CJXnZVjR.js";
14
14
  import { n as listChannelPlugins } from "./plugins-CwSlLxM8.js";
15
15
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-CbbvYNVw.js";
@@ -29,7 +29,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-hFVEC3wO.j
29
29
  import { t as readLastGatewayErrorLine } from "./diagnostics-CS1ov_hH.js";
30
30
  import { t as renderTable } from "./table-D01d2GuY.js";
31
31
  import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-Byo5jCLN.js";
32
- import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-CXjAtn1-.js";
32
+ import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-BU6f7W6a.js";
33
33
  import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-ZdimP1aU.js";
34
34
  import { t as resolveNodeService } from "./node-service-fcZExd22.js";
35
35
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-DVLB9DNB.js";
@@ -35579,6 +35579,175 @@ function toClientToolDefinitions(tools, onClientToolCall, hookContext) {
35579
35579
  * @module
35580
35580
  */
35581
35581
  /**
35582
+ * Known shell commands for prefix deduplication.
35583
+ * When token boundary corruption doubles a command prefix (grep → grgrep,
35584
+ * ls → lsls), we check the first token against this set. If stripping
35585
+ * the repeated prefix yields a known command, use it.
35586
+ *
35587
+ * O(1) lookup. Zero false positives — no valid command is its own prefix doubled.
35588
+ */
35589
+ const KNOWN_COMMANDS = new Set([
35590
+ "ls",
35591
+ "cat",
35592
+ "cp",
35593
+ "mv",
35594
+ "rm",
35595
+ "mkdir",
35596
+ "rmdir",
35597
+ "touch",
35598
+ "chmod",
35599
+ "chown",
35600
+ "chgrp",
35601
+ "ln",
35602
+ "pwd",
35603
+ "echo",
35604
+ "printf",
35605
+ "head",
35606
+ "tail",
35607
+ "wc",
35608
+ "sort",
35609
+ "uniq",
35610
+ "cut",
35611
+ "tr",
35612
+ "tee",
35613
+ "xargs",
35614
+ "env",
35615
+ "date",
35616
+ "sleep",
35617
+ "true",
35618
+ "false",
35619
+ "yes",
35620
+ "test",
35621
+ "expr",
35622
+ "basename",
35623
+ "dirname",
35624
+ "readlink",
35625
+ "realpath",
35626
+ "mktemp",
35627
+ "stat",
35628
+ "file",
35629
+ "dd",
35630
+ "df",
35631
+ "du",
35632
+ "id",
35633
+ "whoami",
35634
+ "hostname",
35635
+ "uname",
35636
+ "grep",
35637
+ "egrep",
35638
+ "fgrep",
35639
+ "find",
35640
+ "locate",
35641
+ "sed",
35642
+ "awk",
35643
+ "diff",
35644
+ "patch",
35645
+ "strings",
35646
+ "less",
35647
+ "more",
35648
+ "tar",
35649
+ "gzip",
35650
+ "gunzip",
35651
+ "zip",
35652
+ "unzip",
35653
+ "bzip2",
35654
+ "xz",
35655
+ "curl",
35656
+ "wget",
35657
+ "ssh",
35658
+ "scp",
35659
+ "rsync",
35660
+ "ping",
35661
+ "dig",
35662
+ "nslookup",
35663
+ "netstat",
35664
+ "lsof",
35665
+ "nc",
35666
+ "ifconfig",
35667
+ "ip",
35668
+ "ps",
35669
+ "top",
35670
+ "kill",
35671
+ "killall",
35672
+ "nohup",
35673
+ "nice",
35674
+ "which",
35675
+ "type",
35676
+ "where",
35677
+ "man",
35678
+ "sudo",
35679
+ "su",
35680
+ "mount",
35681
+ "umount",
35682
+ "systemctl",
35683
+ "journalctl",
35684
+ "launchctl",
35685
+ "dmesg",
35686
+ "sysctl",
35687
+ "git",
35688
+ "make",
35689
+ "gcc",
35690
+ "python",
35691
+ "python3",
35692
+ "pip",
35693
+ "pip3",
35694
+ "node",
35695
+ "npm",
35696
+ "npx",
35697
+ "pnpm",
35698
+ "yarn",
35699
+ "cargo",
35700
+ "go",
35701
+ "ruby",
35702
+ "gem",
35703
+ "java",
35704
+ "javac",
35705
+ "docker",
35706
+ "brew",
35707
+ "open",
35708
+ "pbcopy",
35709
+ "pbpaste",
35710
+ "defaults",
35711
+ "diskutil",
35712
+ "sw_vers",
35713
+ "system_profiler",
35714
+ "plutil",
35715
+ "mdfind",
35716
+ "mdls",
35717
+ "softwareupdate",
35718
+ "caffeinate",
35719
+ "say",
35720
+ "osascript",
35721
+ "security",
35722
+ "codesign",
35723
+ "hdiutil",
35724
+ "installer",
35725
+ "lipo",
35726
+ "otool",
35727
+ "dscl",
35728
+ "scutil"
35729
+ ]);
35730
+ /**
35731
+ * Fix command prefix duplication from token boundary splits.
35732
+ * Token corruption can double a multi-char prefix: grep → grgrep, ls → lsls.
35733
+ * Check if the first token starts with a repeated prefix that, when removed,
35734
+ * yields a known command.
35735
+ *
35736
+ * Examples: grgrep → grep, lsls → ls, catcat → cat, curlcurl → curl
35737
+ */
35738
+ function dedupCommandPrefix(command) {
35739
+ const match = command.match(/^([a-zA-Z0-9_-]+)/);
35740
+ if (!match) return command;
35741
+ const firstToken = match[1];
35742
+ if (KNOWN_COMMANDS.has(firstToken)) return command;
35743
+ for (let prefixLen = 2; prefixLen <= Math.min(10, Math.floor(firstToken.length / 2)); prefixLen++) {
35744
+ const prefix = firstToken.slice(0, prefixLen);
35745
+ const candidate = firstToken.slice(prefixLen);
35746
+ if (candidate.startsWith(prefix.slice(0, Math.min(prefix.length, candidate.length))) && KNOWN_COMMANDS.has(candidate)) return candidate + command.slice(firstToken.length);
35747
+ }
35748
+ return command;
35749
+ }
35750
+ /**
35582
35751
  * Validate that a command string contains extractable valid shell syntax.
35583
35752
  * Returns the cleaned command if valid, or an error reason if not.
35584
35753
  *
@@ -35597,6 +35766,7 @@ function validateShellCommand(command) {
35597
35766
  cleaned = cleaned.replace(/<\|[^|>]*(?:\|>)?/g, "").trim();
35598
35767
  cleaned = cleanResidualTokenFragments(cleaned);
35599
35768
  }
35769
+ cleaned = dedupCommandPrefix(cleaned);
35600
35770
  if (!cleaned || !cleaned.trim()) return {
35601
35771
  valid: false,
35602
35772
  cleaned: "",
@@ -53079,7 +53249,7 @@ function isVoiceChannelType(type) {
53079
53249
  function createDefaultDeps() {
53080
53250
  return {
53081
53251
  sendMessageWhatsApp: async (...args) => {
53082
- const { sendMessageWhatsApp } = await import("./web-CAy-xQv2.js");
53252
+ const { sendMessageWhatsApp } = await import("./web-BiK5cfMV.js");
53083
53253
  return await sendMessageWhatsApp(...args);
53084
53254
  },
53085
53255
  sendMessageTelegram: async (...args) => {
@@ -68393,7 +68563,7 @@ function loadWebLoginQr() {
68393
68563
  return webLoginQrPromise;
68394
68564
  }
68395
68565
  function loadWebChannel() {
68396
- webChannelPromise ??= import("./web-CAy-xQv2.js");
68566
+ webChannelPromise ??= import("./web-BiK5cfMV.js");
68397
68567
  return webChannelPromise;
68398
68568
  }
68399
68569
  function loadWhatsAppActions() {
@@ -53674,7 +53674,7 @@ function isVoiceChannelType(type) {
53674
53674
  function createDefaultDeps() {
53675
53675
  return {
53676
53676
  sendMessageWhatsApp: async (...args) => {
53677
- const { sendMessageWhatsApp } = await import("./web--erunODY.js");
53677
+ const { sendMessageWhatsApp } = await import("./web-D1KyfkIV.js");
53678
53678
  return await sendMessageWhatsApp(...args);
53679
53679
  },
53680
53680
  sendMessageTelegram: async (...args) => {
@@ -68954,7 +68954,7 @@ function loadWebLoginQr() {
68954
68954
  return webLoginQrPromise;
68955
68955
  }
68956
68956
  function loadWebChannel() {
68957
- webChannelPromise ??= import("./web--erunODY.js");
68957
+ webChannelPromise ??= import("./web-D1KyfkIV.js");
68958
68958
  return webChannelPromise;
68959
68959
  }
68960
68960
  function loadWhatsAppActions() {
@@ -75497,6 +75497,175 @@ function subscribeEmbeddedPiSession(params) {
75497
75497
  * @module
75498
75498
  */
75499
75499
  /**
75500
+ * Known shell commands for prefix deduplication.
75501
+ * When token boundary corruption doubles a command prefix (grep → grgrep,
75502
+ * ls → lsls), we check the first token against this set. If stripping
75503
+ * the repeated prefix yields a known command, use it.
75504
+ *
75505
+ * O(1) lookup. Zero false positives — no valid command is its own prefix doubled.
75506
+ */
75507
+ const KNOWN_COMMANDS = new Set([
75508
+ "ls",
75509
+ "cat",
75510
+ "cp",
75511
+ "mv",
75512
+ "rm",
75513
+ "mkdir",
75514
+ "rmdir",
75515
+ "touch",
75516
+ "chmod",
75517
+ "chown",
75518
+ "chgrp",
75519
+ "ln",
75520
+ "pwd",
75521
+ "echo",
75522
+ "printf",
75523
+ "head",
75524
+ "tail",
75525
+ "wc",
75526
+ "sort",
75527
+ "uniq",
75528
+ "cut",
75529
+ "tr",
75530
+ "tee",
75531
+ "xargs",
75532
+ "env",
75533
+ "date",
75534
+ "sleep",
75535
+ "true",
75536
+ "false",
75537
+ "yes",
75538
+ "test",
75539
+ "expr",
75540
+ "basename",
75541
+ "dirname",
75542
+ "readlink",
75543
+ "realpath",
75544
+ "mktemp",
75545
+ "stat",
75546
+ "file",
75547
+ "dd",
75548
+ "df",
75549
+ "du",
75550
+ "id",
75551
+ "whoami",
75552
+ "hostname",
75553
+ "uname",
75554
+ "grep",
75555
+ "egrep",
75556
+ "fgrep",
75557
+ "find",
75558
+ "locate",
75559
+ "sed",
75560
+ "awk",
75561
+ "diff",
75562
+ "patch",
75563
+ "strings",
75564
+ "less",
75565
+ "more",
75566
+ "tar",
75567
+ "gzip",
75568
+ "gunzip",
75569
+ "zip",
75570
+ "unzip",
75571
+ "bzip2",
75572
+ "xz",
75573
+ "curl",
75574
+ "wget",
75575
+ "ssh",
75576
+ "scp",
75577
+ "rsync",
75578
+ "ping",
75579
+ "dig",
75580
+ "nslookup",
75581
+ "netstat",
75582
+ "lsof",
75583
+ "nc",
75584
+ "ifconfig",
75585
+ "ip",
75586
+ "ps",
75587
+ "top",
75588
+ "kill",
75589
+ "killall",
75590
+ "nohup",
75591
+ "nice",
75592
+ "which",
75593
+ "type",
75594
+ "where",
75595
+ "man",
75596
+ "sudo",
75597
+ "su",
75598
+ "mount",
75599
+ "umount",
75600
+ "systemctl",
75601
+ "journalctl",
75602
+ "launchctl",
75603
+ "dmesg",
75604
+ "sysctl",
75605
+ "git",
75606
+ "make",
75607
+ "gcc",
75608
+ "python",
75609
+ "python3",
75610
+ "pip",
75611
+ "pip3",
75612
+ "node",
75613
+ "npm",
75614
+ "npx",
75615
+ "pnpm",
75616
+ "yarn",
75617
+ "cargo",
75618
+ "go",
75619
+ "ruby",
75620
+ "gem",
75621
+ "java",
75622
+ "javac",
75623
+ "docker",
75624
+ "brew",
75625
+ "open",
75626
+ "pbcopy",
75627
+ "pbpaste",
75628
+ "defaults",
75629
+ "diskutil",
75630
+ "sw_vers",
75631
+ "system_profiler",
75632
+ "plutil",
75633
+ "mdfind",
75634
+ "mdls",
75635
+ "softwareupdate",
75636
+ "caffeinate",
75637
+ "say",
75638
+ "osascript",
75639
+ "security",
75640
+ "codesign",
75641
+ "hdiutil",
75642
+ "installer",
75643
+ "lipo",
75644
+ "otool",
75645
+ "dscl",
75646
+ "scutil"
75647
+ ]);
75648
+ /**
75649
+ * Fix command prefix duplication from token boundary splits.
75650
+ * Token corruption can double a multi-char prefix: grep → grgrep, ls → lsls.
75651
+ * Check if the first token starts with a repeated prefix that, when removed,
75652
+ * yields a known command.
75653
+ *
75654
+ * Examples: grgrep → grep, lsls → ls, catcat → cat, curlcurl → curl
75655
+ */
75656
+ function dedupCommandPrefix(command) {
75657
+ const match = command.match(/^([a-zA-Z0-9_-]+)/);
75658
+ if (!match) return command;
75659
+ const firstToken = match[1];
75660
+ if (KNOWN_COMMANDS.has(firstToken)) return command;
75661
+ for (let prefixLen = 2; prefixLen <= Math.min(10, Math.floor(firstToken.length / 2)); prefixLen++) {
75662
+ const prefix = firstToken.slice(0, prefixLen);
75663
+ const candidate = firstToken.slice(prefixLen);
75664
+ if (candidate.startsWith(prefix.slice(0, Math.min(prefix.length, candidate.length))) && KNOWN_COMMANDS.has(candidate)) return candidate + command.slice(firstToken.length);
75665
+ }
75666
+ return command;
75667
+ }
75668
+ /**
75500
75669
  * Validate that a command string contains extractable valid shell syntax.
75501
75670
  * Returns the cleaned command if valid, or an error reason if not.
75502
75671
  *
@@ -75515,6 +75684,7 @@ function validateShellCommand(command) {
75515
75684
  cleaned = cleaned.replace(/<\|[^|>]*(?:\|>)?/g, "").trim();
75516
75685
  cleaned = cleanResidualTokenFragments(cleaned);
75517
75686
  }
75687
+ cleaned = dedupCommandPrefix(cleaned);
75518
75688
  if (!cleaned || !cleaned.trim()) return {
75519
75689
  valid: false,
75520
75690
  cleaned: "",
@@ -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-DUZvOCsG.js";
4
+ import { V as trimLogTail } from "./reply-B2Xur-75.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-BBtSJunF.js";
109
+ import "./program-context-DFKRAsbt.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-BKm12loU.js";
120
+ import { r as installCompletion } from "./completion-cli-DhhIPri-.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-B32Q-KYM.js";
129
+ import "./health-wZyomt2k.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-DvZOsoQs.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-Bssy0nSl.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-DUXeA9Zp.js";
141
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-SEerte2S.js";
140
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-B5bx2NEB.js";
141
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-BBki2Ufk.js";
142
142
  import os from "node:os";
143
143
  import path from "node:path";
144
144
  import fs from "node:fs/promises";
@@ -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-J2pIBQF7.js";
19
+ import { Ct as trimLogTail } from "./subagent-registry-CUXuFP-8.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-elNdyQio.js";
115
- import "./command-registry-B2aO0Q7_.js";
114
+ import "./register.subclis-BS-WgVMV.js";
115
+ import "./command-registry-Dtn5iLgE.js";
116
116
  import "./program-context-CqzR_m-7.js";
117
- import { r as installCompletion } from "./completion-cli-BsKD_vBb.js";
117
+ import { r as installCompletion } from "./completion-cli-DEFzGiNX.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-CXjAtn1-.js";
127
+ import "./health-BU6f7W6a.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-D8AFB8Oi.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-DgqFpUFr.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-CwfroEHp.js";
139
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DyiRkYT4.js";
138
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-BICt4IW2.js";
139
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-B-w1_lQk.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,5 +1,5 @@
1
1
  import { h as pathExists } from "./utils-B-0b9bGM.js";
2
- import { V as trimLogTail } from "./reply-DUZvOCsG.js";
2
+ import { V as trimLogTail } from "./reply-B2Xur-75.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";
@@ -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-J2pIBQF7.js";
3
+ import { Ct as trimLogTail } from "./subagent-registry-CUXuFP-8.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,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-DUZvOCsG.js";
4
+ import "./reply-B2Xur-75.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-C3XZ7c2q.js";
104
+ import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-Cuukem2c.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";
@@ -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-J2pIBQF7.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-CUXuFP-8.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";
@@ -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-C8c7J6BS.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-CZhWh22N.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";
@@ -8,13 +8,13 @@ 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-CFFnZEcA.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-gKNapGKh.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";
15
15
  import "./send-D-hWrHoH.js";
16
16
  import "./send-C1IYd3g7.js";
17
- import "./deliver-C-37cZUe.js";
17
+ import "./deliver-BH0l3UKW.js";
18
18
  import "./diagnostic-D0xmLpej.js";
19
19
  import "./diagnostic-session-state-C1vRJs5w.js";
20
20
  import "./accounts-8zZqL37v.js";
@@ -22,10 +22,10 @@ import { G as formatLocationText, J as readChannelAllowFromStore, K as toLocatio
22
22
  import "./image-ops-ByaQt43P.js";
23
23
  import "./pi-model-discovery-j5tVLINv.js";
24
24
  import "./message-channel-BQINJQIT.js";
25
- import { Ct as resolveGroupSessionKey, H as loadSessionStore, K as updateLastRoute, U as readSessionUpdatedAt, W as recordSessionMetaFromInbound } from "./pi-embedded-helpers-B8kqLWns.js";
25
+ import { Ct as resolveGroupSessionKey, H as loadSessionStore, K as updateLastRoute, U as readSessionUpdatedAt, W as recordSessionMetaFromInbound } from "./pi-embedded-helpers-lgx_U5KS.js";
26
26
  import { n as loadConfig } from "./config-BmV60pPT.js";
27
27
  import "./manifest-registry-D-mTF1cj.js";
28
- import "./chrome-D2SKJnR7.js";
28
+ import "./chrome-CDJYxX5a.js";
29
29
  import "./skills-BNpGMnp-.js";
30
30
  import "./redact-1NGYV_8p.js";
31
31
  import "./errors-CPfngF0S.js";
@@ -35,7 +35,7 @@ import { h as resolveChannelGroupRequireMention, m as resolveChannelGroupPolicy
35
35
  import "./accounts-DImOt9jX.js";
36
36
  import { s as resolveStorePath } from "./paths-DkMamAQ-.js";
37
37
  import "./tool-images-ChC2CXaN.js";
38
- import "./image-DcpMiprB.js";
38
+ import "./image-CHzdaNJ4.js";
39
39
  import "./manager-jpn5vRTY.js";
40
40
  import "./gemini-auth-CSlZZ1Pw.js";
41
41
  import "./sqlite-BNh23mUR.js";
@@ -49,7 +49,7 @@ import "./render-B1VqYyvo.js";
49
49
  import "./commands-registry-C_aYUwpl.js";
50
50
  import "./skill-commands-DklY7Cj7.js";
51
51
  import { t as finalizeInboundContext } from "./inbound-context-QOi5vzUt.js";
52
- import { p as registerUnhandledRejectionHandler } from "./runner-BcQ0sF9T.js";
52
+ import { p as registerUnhandledRejectionHandler } from "./runner-DUBExAb5.js";
53
53
  import "./fetch-DtLn7YU3.js";
54
54
  import { n as recordChannelActivity } from "./channel-activity-D9q-fIPB.js";
55
55
  import { t as convertMarkdownTables } from "./tables-COnZ169v.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symerian/symi",
3
- "version": "2.6.14",
3
+ "version": "2.6.16",
4
4
  "description": "Multi-channel AI gateway with extensible messaging integrations",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/jaysteelmind/symi#readme",