@symerian/symi 3.5.20 → 3.5.21

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 (257) hide show
  1. package/dist/{agent-D0Z4r5fr.js → agent-DgVWcnlD.js} +1 -1
  2. package/dist/{agent-DCDT-MPE.js → agent-NT0EKnK_.js} +18 -18
  3. package/dist/{agent-scope-DOrZjOnW.js → agent-scope-Bnsyyeci.js} +18 -18
  4. package/dist/{agents-CdkBeP0d.js → agents-Dlcpc1K3.js} +3 -3
  5. package/dist/{agents.config-B7sNDvhz.js → agents.config-DA0ISLi7.js} +1 -1
  6. package/dist/{audit-B7deV4Lp.js → audit-CPloCzEZ.js} +2 -2
  7. package/dist/{audit-BCStg-Hv.js → audit-CXIXYDRx.js} +20 -20
  8. package/dist/{auth-choice-BIGcxSzP.js → auth-choice--DymOp5O.js} +2 -2
  9. package/dist/{auth-choice-B3DU-aBr.js → auth-choice-BtXIQPTU.js} +11 -11
  10. package/dist/{auth-profiles-Ce7R_25e.js → auth-profiles-D5nYBj_Z.js} +2 -2
  11. package/dist/{auth-token-Cr28IDKY.js → auth-token-fgnCQEHT.js} +3 -3
  12. package/dist/{banner-ChNdzPjD.js → banner-CY_9VW7E.js} +1 -1
  13. package/dist/{browser-cli-C9xaKW8l.js → browser-cli-C5VVk6C9.js} +3 -3
  14. package/dist/{browser-cli-BTg8SVs-.js → browser-cli-DOTM7UBC.js} +9 -9
  15. package/dist/build-info.json +3 -3
  16. package/dist/bundled/boot-md/handler.js +4 -4
  17. package/dist/bundled/session-memory/handler.js +4 -4
  18. package/dist/{call-BccaLPi8.js → call-Bpjj5p7I.js} +9 -9
  19. package/dist/{call-DZg43vv8.js → call-C2urR5Fj.js} +1 -1
  20. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  21. package/dist/{channel-options-CUptVX8c.js → channel-options-XRJiHUm5.js} +1 -1
  22. package/dist/{channel-options-LLmAnD_L.js → channel-options-rFgJaKzJ.js} +1 -1
  23. package/dist/{channels-cli-xoromnio.js → channels-cli-CQ4M05oy.js} +57 -57
  24. package/dist/{channels-cli-B0OQvVUL.js → channels-cli-QMHCRAb5.js} +9 -9
  25. package/dist/{chrome-DJChpTwP.js → chrome-38OnGyuN.js} +2 -2
  26. package/dist/{chrome-CmQwGAuL.js → chrome-OTJg3QKn.js} +7 -7
  27. package/dist/{cli-C7v-sID8.js → cli-B-uoiYP2.js} +45 -45
  28. package/dist/{cli-CMNR7ULk.js → cli-BafqEuaj.js} +6 -6
  29. package/dist/{client-k0MT6NBw.js → client-CTrfpKT3.js} +7 -2
  30. package/dist/{client-DCxeV1bw.js → client-yVTJ5jx5.js} +6 -1
  31. package/dist/{command-registry-CXcvXjUR.js → command-registry-CLm8TAH3.js} +11 -11
  32. package/dist/{commands-registry-Ca5hh7nh.js → commands-registry-CwXsDVuO.js} +1 -1
  33. package/dist/{completion-cli-DJ1YCeSg.js → completion-cli-Cn_81QBb.js} +12 -12
  34. package/dist/{completion-cli-B1Fg6Lmg.js → completion-cli-DOBXkVwG.js} +2 -2
  35. package/dist/{config-B4jkreCN.js → config-BngIfn5l.js} +2 -2
  36. package/dist/{config-cli-D5DlWt6T.js → config-cli-B1cPkJ4p.js} +4 -4
  37. package/dist/{config-cli-CQ1FAvY_.js → config-cli-BgHYqFH1.js} +1 -1
  38. package/dist/{config-guard-BRm3RiOi.js → config-guard-DStz4_V2.js} +6 -6
  39. package/dist/{config-validation-Cdyg1BZB.js → config-validation-Dxj9LRzr.js} +1 -1
  40. package/dist/{configure-bhJB2Dti.js → configure-C7zmSgvC.js} +14 -14
  41. package/dist/{configure-DG1lf0Ld.js → configure-DmzM0S7L.js} +6 -6
  42. package/dist/{consolidate-DymnvvYm.js → consolidate-CO32_TEx.js} +6 -6
  43. package/dist/{control-service-D8kKOts5.js → control-service-CUreKVeY.js} +4 -4
  44. package/dist/control-ui/css/style.css +270 -0
  45. package/dist/control-ui/index.html +44 -114
  46. package/dist/control-ui/js/scheduling.js +85 -224
  47. package/dist/control-ui/js/subagents.js +78 -394
  48. package/dist/control-ui/js/symframe-awaiting.js +301 -0
  49. package/dist/control-ui/js/symframe-pin-store.js +104 -0
  50. package/dist/control-ui/js/symframe.js +238 -2
  51. package/dist/{control-ui-assets-CJQ97d4u.js → control-ui-assets-B8B9z_Ll.js} +1 -1
  52. package/dist/{cost-cli-DWiVCOCx.js → cost-cli-D-ssjcRF.js} +3 -3
  53. package/dist/{cron-cli-8RaBr1CM.js → cron-cli-BNBs3zue.js} +3 -3
  54. package/dist/{cron-cli-fW3wtftG.js → cron-cli-otPeKxmi.js} +7 -7
  55. package/dist/{daemon-cli-Y6clFgva.js → daemon-cli-DDqeG2nd.js} +2 -2
  56. package/dist/{daemon-cli-0EiZTQ2A.js → daemon-cli-qDdMg615.js} +11 -11
  57. package/dist/daemon-cli.js +6 -1
  58. package/dist/{daemon-runtime-DlQla_dA.js → daemon-runtime-CKn0wmCk.js} +10 -10
  59. package/dist/{deliver-B04yNX82.js → deliver-BiWlR84Y.js} +4 -4
  60. package/dist/{deliver-lTZLIQqf.js → deliver-CWMFmMCv.js} +2 -2
  61. package/dist/{deps-Bf9dt2UO.js → deps-CdibsPMx.js} +1 -1
  62. package/dist/{devices-cli-C2gQTsB0.js → devices-cli-BJ3rVWOw.js} +2 -2
  63. package/dist/{devices-cli-DfiSkZ7k.js → devices-cli-DDPwF2Nx.js} +6 -6
  64. package/dist/{diagnostics-DlZODdRf.js → diagnostics-CYkqD5lP.js} +5 -5
  65. package/dist/{directory-cli-Bm5QYEo-.js → directory-cli-giqTe8Yg.js} +3 -3
  66. package/dist/{dm-policy-shared-CeFt0nch.js → dm-policy-shared-B61_yf6G.js} +1 -1
  67. package/dist/{dns-cli-CubLq4j9.js → dns-cli-Dssz4RqF.js} +3 -3
  68. package/dist/{docs-cli-PS8m1er7.js → docs-cli-Ct1STieY.js} +1 -1
  69. package/dist/{doctor-completion-CfF0J8fs.js → doctor-completion-CL7MyXlo.js} +2 -2
  70. package/dist/{doctor-completion-ScxFfN93.js → doctor-completion-k0HiL05o.js} +1 -1
  71. package/dist/{doctor-config-flow-C52W1uUK.js → doctor-config-flow-ljVnQJjo.js} +9 -9
  72. package/dist/entry.js +1 -1
  73. package/dist/{exec-approvals-cli-Cl-vWA1q.js → exec-approvals-cli-Cau1vPQI.js} +4 -4
  74. package/dist/{exec-approvals-cli-BaKWIf56.js → exec-approvals-cli-DsBoQu5H.js} +13 -13
  75. package/dist/extensionAPI.js +2 -2
  76. package/dist/{file-lock-BVUYnlQv.js → file-lock-2AecMjCa.js} +8 -8
  77. package/dist/{fs-safe-BdejYjW8.js → fs-safe-B0Is-oLk.js} +6 -6
  78. package/dist/{gateway-cli-kq5EWlnF.js → gateway-cli-DG_2YZ8B.js} +98 -98
  79. package/dist/{gateway-cli-CK-5nguV.js → gateway-cli-DgmGygc6.js} +16 -16
  80. package/dist/{gateway-rpc-Bzg_TTKP.js → gateway-rpc-Kv0-8W2E.js} +1 -1
  81. package/dist/{gateway-rpc-D12UaJS5.js → gateway-rpc-gaoD882s.js} +1 -1
  82. package/dist/{glass-ui-ws-B6p0iPsO.js → glass-ui-ws-Bof7krDJ.js} +67 -67
  83. package/dist/{glass-ui-ws-CVr0_1gT.js → glass-ui-ws-Dl45d7eU.js} +13 -13
  84. package/dist/{health-CPU9rQGj.js → health-CMbUI4aN.js} +4 -4
  85. package/dist/{health-CJb2CYtg.js → health-znS85U-F.js} +1 -1
  86. package/dist/{hooks-cli-DbgVZaP4.js → hooks-cli-Cb9BzCOY.js} +7 -7
  87. package/dist/{hooks-cli-13HCu5Xs.js → hooks-cli-Cgjor7F-.js} +59 -59
  88. package/dist/{image-ops-L70xVnpG.js → image-ops-BzCBIakN.js} +10 -10
  89. package/dist/index.js +52 -52
  90. package/dist/{inspect-CGKsaVZ4.js → inspect-DzYUb_Dl.js} +4 -4
  91. package/dist/{install-safe-path-B2JrFspY.js → install-safe-path-BrpA09f2.js} +11 -11
  92. package/dist/{installs-D890uIIW.js → installs-bnDlOSq2.js} +10 -10
  93. package/dist/{internal-DVCddhhN.js → internal-csqU78gW.js} +9 -9
  94. package/dist/{lifecycle-core-wFwnK_mD.js → lifecycle-core-cSR_xiIO.js} +5 -5
  95. package/dist/llm-slug-generator.js +4 -4
  96. package/dist/{local-roots-CgDCgCuM.js → local-roots-2Jb79HZ8.js} +1 -1
  97. package/dist/{logs-cli-R16VTptK.js → logs-cli-Kr145PO_.js} +7 -7
  98. package/dist/{logs-cli-CQeK5fn7.js → logs-cli-LiAjkog2.js} +3 -3
  99. package/dist/{manager-CxFs8Z_F.js → manager-CceVgXHV.js} +1 -1
  100. package/dist/{manager-B2SWSuad.js → manager-Cv4xI8sP.js} +1 -1
  101. package/dist/{manager-CHLdCC6u.js → manager-DG6PODgu.js} +15 -15
  102. package/dist/{manager-LPPGAsqn.js → manager-V4UCf0Av.js} +1 -1
  103. package/dist/{memory-DFpqcIst.js → memory-A2D5e8dL.js} +2 -2
  104. package/dist/{memory-DavRjdTi.js → memory-BFnx3v3_.js} +5 -5
  105. package/dist/{memory-cli-DZnq3S6s.js → memory-cli-1zjVJITN.js} +2 -2
  106. package/dist/{memory-cli-B-Cp1Sb1.js → memory-cli-CHNghdrm.js} +12 -12
  107. package/dist/{model-MUMSB_7d.js → model-Cwbcw-km.js} +1 -1
  108. package/dist/{model-auth-1EAQvYRv.js → model-auth-_C07_3Yr.js} +2 -2
  109. package/dist/{model-catalog-IWi6-nY9.js → model-catalog-BWurV7gl.js} +3 -3
  110. package/dist/{model-picker-Cf6UgQEh.js → model-picker-Dpkr5xBW.js} +5 -5
  111. package/dist/{model-selection-7wdmO-Iw.js → model-selection-CCTzD29o.js} +1 -1
  112. package/dist/{models-Cht7Mzvs.js → models-BYev6YAG.js} +3 -3
  113. package/dist/{models-cli-B_motPDX.js → models-cli-BbK8HMKa.js} +55 -55
  114. package/dist/{models-cli-DXswzgUR.js → models-cli-Fa5r1QYP.js} +9 -9
  115. package/dist/{models-config-B5Xxy-c-.js → models-config-DlXge3Sd.js} +8 -8
  116. package/dist/{node-cli-D-gsjRXY.js → node-cli-BPnBosC4.js} +27 -27
  117. package/dist/{node-cli-VmKhIXuP.js → node-cli-Cv7x1gGu.js} +1 -1
  118. package/dist/{node-service-BH08wY5j.js → node-service-Cc18m-uk.js} +1 -1
  119. package/dist/{nodes-cli-BMvxQGCp.js → nodes-cli-CN_m6PO5.js} +10 -10
  120. package/dist/{nodes-cli-D199d74o.js → nodes-cli-DaHOBbd4.js} +3 -3
  121. package/dist/{nodes-screen-De9ma6e1.js → nodes-screen-Cp5QP3ET.js} +4 -4
  122. package/dist/{npm-registry-spec-DTqn-NXZ.js → npm-registry-spec-C-muP97-.js} +9 -9
  123. package/dist/{onboard-DFJcbABp.js → onboard-B2IcTMv-.js} +15 -15
  124. package/dist/{onboard-CdRA8BRG.js → onboard-D-m6WTZl.js} +3 -3
  125. package/dist/{onboard-channels-fadyQGBK.js → onboard-channels-Z-Jkrk5-.js} +1 -1
  126. package/dist/{onboard-channels-Ca7ZFQ2Y.js → onboard-channels-wfGO5Zlh.js} +4 -4
  127. package/dist/{onboard-custom-BcRYreNG.js → onboard-custom-DnDrvxSg.js} +3 -3
  128. package/dist/{onboard-helpers-CQBpac8h.js → onboard-helpers-BKejzolA.js} +8 -8
  129. package/dist/{onboard-helpers-BcLPSb5N.js → onboard-helpers-Dhr98nj8.js} +1 -1
  130. package/dist/{onboard-hooks-2SCajRKc.js → onboard-hooks-D9jHwImb.js} +1 -1
  131. package/dist/{onboard-remote-Bo3tpC9N.js → onboard-remote-DZdMxd1Q.js} +1 -1
  132. package/dist/{onboard-remote-BWK5Ths4.js → onboard-remote-y3ZmP90U.js} +1 -1
  133. package/dist/{onboard-skills-BLl8HPJO.js → onboard-skills-2SUv-W7i.js} +1 -1
  134. package/dist/{onboard-skills-DvacccqZ.js → onboard-skills-BFhHfrt9.js} +3 -3
  135. package/dist/{onboarding-ojb2rFkA.js → onboarding-BckHLQMV.js} +7 -7
  136. package/dist/{onboarding-BywueA1d.js → onboarding-DqlPV372.js} +12 -12
  137. package/dist/{onboarding.finalize-DdxBQpUU.js → onboarding.finalize-Bwjv3jew.js} +31 -31
  138. package/dist/{onboarding.finalize-DHvlZi9G.js → onboarding.finalize-CbH_ShIW.js} +9 -9
  139. package/dist/{onboarding.gateway-config-DPBNWNV6.js → onboarding.gateway-config-CiRo9EMt.js} +8 -8
  140. package/dist/{onboarding.gateway-config-ZK9517uR.js → onboarding.gateway-config-sNSeEykB.js} +3 -3
  141. package/dist/{openai-model-default-BkuuK-Di.js → openai-model-default-De-UAjwg.js} +2 -2
  142. package/dist/{pairing-cli-Rsae0KnN.js → pairing-cli-CBMMCNnx.js} +5 -5
  143. package/dist/{pairing-store-BNhJOnWn.js → pairing-store-Be-ZQK87.js} +1 -1
  144. package/dist/{pairing-token-Dcy37-4s.js → pairing-token-B703A1U3.js} +7 -7
  145. package/dist/{paths-DObzwe08.js → paths-BWqg8NZT.js} +1 -1
  146. package/dist/{pi-auth-json-Db8XJVGL.js → pi-auth-json-D-vdh-nY.js} +6 -6
  147. package/dist/{pi-embedded-Da0QRlM0.js → pi-embedded-B9rtlNMc.js} +25 -9
  148. package/dist/{pi-embedded-helpers-D-OFjhdI.js → pi-embedded-helpers-j1JrlsI0.js} +6 -6
  149. package/dist/{pi-tools.policy-H2t-Xkfc.js → pi-tools.policy-CvAqjEH9.js} +3 -3
  150. package/dist/{plugin-auto-enable-DJBhDIMq.js → plugin-auto-enable-BXSJTxI7.js} +1 -1
  151. package/dist/{plugin-registry-tG7NXc3Y.js → plugin-registry-B43UosQh.js} +3 -3
  152. package/dist/{plugin-registry-Tlmjr-LX.js → plugin-registry-CS4WgHbu.js} +1 -1
  153. package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +1 -1
  154. package/dist/plugin-sdk/index.js +6 -6
  155. package/dist/plugin-sdk/infra/symframe-broadcast.d.ts +18 -6
  156. package/dist/{plugins-cli-CRKD8aho.js → plugins-cli-BV2wbjfI.js} +54 -54
  157. package/dist/{plugins-cli-Cm0G_-Y5.js → plugins-cli-BY42hyHP.js} +7 -7
  158. package/dist/{ports-r7LBic2V.js → ports-Bi3V_3n9.js} +1 -1
  159. package/dist/{ports-gxLM5ahL.js → ports-CB_Iu83U.js} +2 -2
  160. package/dist/{program-DEmAlwmD.js → program-P9F1DxBa.js} +12 -12
  161. package/dist/{program-context-DRCRbDpu.js → program-context-BmXxHUKe.js} +40 -40
  162. package/dist/{prompt-select-styled-pomsR-zf.js → prompt-select-styled-B2ah467m.js} +7 -7
  163. package/dist/{prompt-select-styled-B41Tx9aC.js → prompt-select-styled-BlQZX6pK.js} +38 -38
  164. package/dist/{provider-auth-helpers-rKWs_r7a.js → provider-auth-helpers-Bgb_Bfp9.js} +1 -1
  165. package/dist/{provider-auth-helpers-CdQwOam7.js → provider-auth-helpers-WLwb6tL4.js} +6 -6
  166. package/dist/{push-apns-eCM0qmrY.js → push-apns-CBGvXev_.js} +4 -4
  167. package/dist/{push-apns-CZPUHftn.js → push-apns-DnSCjFu7.js} +1 -1
  168. package/dist/{pw-ai-BiBvIJzd.js → pw-ai-CP5pn3eU.js} +7 -7
  169. package/dist/{pw-ai-DLsdzdgc.js → pw-ai-DY_6l11g.js} +1 -1
  170. package/dist/{qmd-manager-C8-M4Pru.js → qmd-manager-Dxyue7B1.js} +19 -19
  171. package/dist/{qr-cli-1sCVaPcF.js → qr-cli-DHw6muwK.js} +3 -3
  172. package/dist/{register.agent-BQPvYYdn.js → register.agent-BuEcmVg0.js} +12 -12
  173. package/dist/{register.agent-N1hoqMFR.js → register.agent-CXdTiqyP.js} +67 -67
  174. package/dist/{register.configure-BHHZ44xB.js → register.configure-DVcn-gCO.js} +70 -70
  175. package/dist/{register.configure-BAc3P4Z-.js → register.configure-YDKJ-KQg.js} +14 -14
  176. package/dist/{register.maintenance-lX0a3Hzl.js → register.maintenance-BiGvpEj-.js} +13 -13
  177. package/dist/{register.maintenance-DDgy5Iyy.js → register.maintenance-cpspl8D6.js} +67 -67
  178. package/dist/{register.message-Br-IH_0z.js → register.message-BIuLbESM.js} +7 -7
  179. package/dist/{register.message-B4lDhHpE.js → register.message-BjcYy5UG.js} +47 -47
  180. package/dist/{register.onboard-B-GoYJIc.js → register.onboard-C4vIASed.js} +6 -6
  181. package/dist/{register.onboard-Bv0s2_KV.js → register.onboard-D4RN92s2.js} +25 -25
  182. package/dist/{register.setup-DQ6KLkAI.js → register.setup-BvoXF0xl.js} +28 -28
  183. package/dist/{register.setup-4lNdC98i.js → register.setup-D-Jt2e1d.js} +6 -6
  184. package/dist/{register.status-health-sessions-Cg7bK5K2.js → register.status-health-sessions-BY9hMD1s.js} +8 -8
  185. package/dist/{register.status-health-sessions-ByGn71_M.js → register.status-health-sessions-DjDvCXBn.js} +41 -41
  186. package/dist/{register.subclis-FMlcLBX0.js → register.subclis-Cibmeapc.js} +20 -20
  187. package/dist/{replies-CbXXjn9X.js → replies-B_3j7R_Q.js} +1 -1
  188. package/dist/{reply-prefix-BFNeXT65.js → reply-prefix-CtZtkTJK.js} +1 -1
  189. package/dist/{resolve-route-C1IIA6kH.js → resolve-route-Du0VftVs.js} +1 -1
  190. package/dist/{routes-ivqbutvM.js → routes-BwTUoI5h.js} +10 -10
  191. package/dist/{rpc-Dk1Az_d8.js → rpc-BnAKPQDB.js} +1 -1
  192. package/dist/{rpc-JAmDaTYt.js → rpc-CwxSZZOx.js} +1 -1
  193. package/dist/{run-main-DSyeVDsT.js → run-main-BhEQjKtM.js} +20 -20
  194. package/dist/{sandbox-BkznAPKO.js → sandbox-CZGTCone.js} +18 -18
  195. package/dist/{sandbox-cli-Bb9cBtBH.js → sandbox-cli-DEtGT_4y.js} +13 -13
  196. package/dist/{security-cli-DmgGLP83.js → security-cli-CS-ZT1LE.js} +3 -3
  197. package/dist/{security-cli-D47LQbpf.js → security-cli-DJd7Fcdy.js} +29 -29
  198. package/dist/{send-B0jHSNMF.js → send-CxjvucMO.js} +7 -7
  199. package/dist/{server-context-ChcbJgNo.js → server-context-DXdk410X.js} +5 -5
  200. package/dist/{server-methods-DGBBt49x.js → server-methods-CWxr5b-w.js} +19 -13
  201. package/dist/{server-methods-BkHB2MOW.js → server-methods-DfVfzYqq.js} +68 -62
  202. package/dist/{server-node-events-C186LRm0.js → server-node-events-B0yC6hi1.js} +48 -48
  203. package/dist/{server-node-events-D-Akk3uq.js → server-node-events-ClDEcUTJ.js} +8 -8
  204. package/dist/{service-e6MzlLCd.js → service-CRZoXO_n.js} +15 -15
  205. package/dist/{session-dirs-C9E2G0yZ.js → session-dirs-a00Ad2SO.js} +2 -2
  206. package/dist/{session-utils-Cs1jlD-q.js → session-utils-CJhcRx3E.js} +14 -14
  207. package/dist/{sessions-Dxf5Kjig.js → sessions-BCc3THTm.js} +10 -10
  208. package/dist/{shared-1xPo9ygd.js → shared-C39SiDDJ.js} +1 -1
  209. package/dist/{shared-COtpr3Ad.js → shared-Dh-O8nRd.js} +3 -3
  210. package/dist/{skill-commands-DDGGlq68.js → skill-commands-DWvXs3lz.js} +4 -4
  211. package/dist/{skill-scanner-BCgVcIwi.js → skill-scanner-CIlHPszT.js} +5 -5
  212. package/dist/{skills-BwDmcZdt.js → skills-CYcBtLGH.js} +4 -4
  213. package/dist/{skills-cli-B-7TY-vS.js → skills-cli-CD9s3cgm.js} +7 -7
  214. package/dist/{skills-install-Dwzsjoc8.js → skills-install-BTa9IuQ6.js} +3 -3
  215. package/dist/{skills-remote-bz71Bstn.js → skills-remote-BcRQTDsZ.js} +3 -3
  216. package/dist/{skills-status-BKX1PjCc.js → skills-status-DLnCHUZ2.js} +1 -1
  217. package/dist/{sqlite-Cod7C5ba.js → sqlite-BpogPlQW.js} +5 -5
  218. package/dist/{status-CFgCSaDq.js → status-BWxLtb3D.js} +23 -23
  219. package/dist/{status-poPDyC8O.js → status-Doq8T1zj.js} +3 -3
  220. package/dist/{status-Bahhq7OQ.js → status-K1k4g3Ai.js} +1 -1
  221. package/dist/{status-D9LC5P_Y.js → status-ojZB_Lrf.js} +5 -5
  222. package/dist/{status.update-DGJi0OLl.js → status.update-CKfyV6zw.js} +3 -3
  223. package/dist/{subagent-registry-V2o45tIn.js → subagent-registry-BOt7g9hn.js} +21 -10
  224. package/dist/{symframe-cli-bxdpivve.js → symframe-cli-CrUtJw_7.js} +31 -7
  225. package/dist/{symframe-cli-ppdMo15M.js → symframe-cli-D1CtN3pf.js} +37 -13
  226. package/dist/{symi-root-BQ0IpoW2.js → symi-root-DeCVdZB4.js} +2 -2
  227. package/dist/{synthesis-B2EyHFXy.js → synthesis-BIQLrbys.js} +6 -6
  228. package/dist/{synthesis-DGau1ONT.js → synthesis-Bc2QkGvt.js} +2 -2
  229. package/dist/{synthesis-CPSq83PP.js → synthesis-VZNnlUTf.js} +45 -45
  230. package/dist/{synthesis-C2WbvLOI.js → synthesis-yl24Ovw4.js} +4 -4
  231. package/dist/{system-cli-nPyjUPBH.js → system-cli-CvN-Wq9U.js} +3 -3
  232. package/dist/{system-cli-BroqLjZ6.js → system-cli-r7WJj0Xh.js} +7 -7
  233. package/dist/{systemd-CUIM0n5P.js → systemd-CsoVnIbM.js} +5 -5
  234. package/dist/{systemd-hints-CsrzMCTD.js → systemd-hints-QISwLlFU.js} +6 -6
  235. package/dist/{systemd-linger-BzYk7A6M.js → systemd-linger-BnhuRdbt.js} +1 -1
  236. package/dist/{tui-Bp9k5skv.js → tui-BxgdImL_.js} +2 -2
  237. package/dist/{tui-DzROrE20.js → tui-J7Jxp-FF.js} +7 -7
  238. package/dist/{tui-cli-BHBF8O-3.js → tui-cli-DR48dU_C.js} +19 -19
  239. package/dist/{tui-cli-Dv4hBFdc.js → tui-cli-DqvgN5ng.js} +3 -3
  240. package/dist/{unified-runner-CIQIkbvi.js → unified-runner-BV5TdNFv.js} +32 -16
  241. package/dist/{unified-runner-CduaBH_0.js → unified-runner-DXjH-prv.js} +117 -106
  242. package/dist/{update-yYduAjKd.js → update-Cb0Fmxic.js} +3 -3
  243. package/dist/{update-check-BCL_K7kx.js → update-check-u6Jgr1cz.js} +5 -5
  244. package/dist/{update-cli-WcLxjBiY.js → update-cli-CKpjWtlv.js} +77 -77
  245. package/dist/{update-cli-BKnHBe8a.js → update-cli-Dn6QQZLd.js} +14 -14
  246. package/dist/{update-runner-BLV8SI96.js → update-runner-G2YgEATs.js} +15 -15
  247. package/dist/{webhooks-cli-D5k-Y2A8.js → webhooks-cli-DjUITimx.js} +4 -4
  248. package/dist/{with-timeout-DPR4A2dx.js → with-timeout-CLrF-Yr_.js} +1 -1
  249. package/dist/{workspace-dirs-jKFQf7of.js → workspace-dirs-DCICLTHx.js} +1 -1
  250. package/dist/{wsl-CglTdtlb.js → wsl-DTi7eX-V.js} +2 -2
  251. package/extensions/memory-core/package.json +1 -1
  252. package/extensions/msteams/CHANGELOG.md +6 -0
  253. package/extensions/msteams/package.json +1 -1
  254. package/extensions/open-prose/package.json +1 -1
  255. package/extensions/outlook/package.json +1 -1
  256. package/extensions/slack/package.json +1 -1
  257. package/package.json +1 -1
@@ -13,11 +13,11 @@ import "./skills-cLBEdkqu.js";
13
13
  import "./manifest-registry-CVLmi8rz.js";
14
14
  import { F as loadDotEnv, N as VERSION } from "./config-D7TcU4qN.js";
15
15
  import "./shell-env-CTYaxUs_.js";
16
- import "./client-DCxeV1bw.js";
17
- import "./call-DZg43vv8.js";
16
+ import "./client-yVTJ5jx5.js";
17
+ import "./call-C2urR5Fj.js";
18
18
  import "./message-channel-DXToSaWK.js";
19
19
  import "./pairing-token-B-OTYROz.js";
20
- import { Wt as installUnhandledRejectionHandler } from "./subagent-registry-V2o45tIn.js";
20
+ import { Wt as installUnhandledRejectionHandler } from "./subagent-registry-BOt7g9hn.js";
21
21
  import "./sessions-Dn6VXn4p.js";
22
22
  import "./plugins-BsEhWvLn.js";
23
23
  import "./send-Dq252-bi.js";
@@ -47,8 +47,8 @@ import "./model-auth-Byr7Gic_.js";
47
47
  import "./github-copilot-token-B5y4__YM.js";
48
48
  import "./models-config-CiR_RUxw.js";
49
49
  import "./reply-prefix-DV3KhOhL.js";
50
- import "./memory-DFpqcIst.js";
51
- import "./manager-CxFs8Z_F.js";
50
+ import "./memory-A2D5e8dL.js";
51
+ import "./manager-CceVgXHV.js";
52
52
  import "./sqlite-9jF_eajd.js";
53
53
  import "./chunk-B2lBXhR0.js";
54
54
  import "./markdown-tables-BEdkErjm.js";
@@ -79,7 +79,7 @@ import "./links-Dnmd-RS-.js";
79
79
  import "./cli-utils-DXfA5936.js";
80
80
  import "./help-format-Dbp8yEhl.js";
81
81
  import "./progress-CI19Xh3z.js";
82
- import "./memory-cli-DZnq3S6s.js";
82
+ import "./memory-cli-1zjVJITN.js";
83
83
  import "./logging-UO6tk8Em.js";
84
84
  import "./replies-CLREUzzB.js";
85
85
  import "./pi-tools.policy-06k__URR.js";
@@ -87,10 +87,10 @@ import "./catalog-BQgWCFTH.js";
87
87
  import "./prompt-style-CZGg35Py.js";
88
88
  import "./note-BIAQpZxi.js";
89
89
  import "./plugin-auto-enable-DaR6Z6BC.js";
90
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-Tlmjr-LX.js";
90
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-CS4WgHbu.js";
91
91
  import { t as assertSupportedRuntime } from "./runtime-guard-LRRZ73eX.js";
92
92
  import { t as ensureSymiCliOnPath } from "./path-env-SUrcTSJ-.js";
93
- import { t as emitCliBanner } from "./banner-ChNdzPjD.js";
93
+ import { t as emitCliBanner } from "./banner-CY_9VW7E.js";
94
94
  import "./doctor-config-flow-BIBJeoRl.js";
95
95
  import { n as ensureConfigReady } from "./config-guard-CCLLHbZ3.js";
96
96
  import process$1 from "node:process";
@@ -105,7 +105,7 @@ const routeHealth = {
105
105
  const verbose = getVerboseFlag(argv, { includeDebug: true });
106
106
  const timeoutMs = getPositiveIntFlagValue(argv, "--timeout");
107
107
  if (timeoutMs === null) return false;
108
- const { healthCommand } = await import("./health-CJb2CYtg.js").then((n) => n.i);
108
+ const { healthCommand } = await import("./health-znS85U-F.js").then((n) => n.i);
109
109
  await healthCommand({
110
110
  json,
111
111
  timeoutMs,
@@ -125,7 +125,7 @@ const routeStatus = {
125
125
  const verbose = getVerboseFlag(argv, { includeDebug: true });
126
126
  const timeoutMs = getPositiveIntFlagValue(argv, "--timeout");
127
127
  if (timeoutMs === null) return false;
128
- const { statusCommand } = await import("./status-D9LC5P_Y.js").then((n) => n.t);
128
+ const { statusCommand } = await import("./status-ojZB_Lrf.js").then((n) => n.t);
129
129
  await statusCommand({
130
130
  json,
131
131
  deep,
@@ -159,7 +159,7 @@ const routeAgentsList = {
159
159
  run: async (argv) => {
160
160
  const json = hasFlag(argv, "--json");
161
161
  const bindings = hasFlag(argv, "--bindings");
162
- const { agentsListCommand } = await import("./agents-CdkBeP0d.js").then((n) => n.t);
162
+ const { agentsListCommand } = await import("./agents-Dlcpc1K3.js").then((n) => n.t);
163
163
  await agentsListCommand({
164
164
  json,
165
165
  bindings
@@ -176,7 +176,7 @@ const routeMemoryStatus = {
176
176
  const deep = hasFlag(argv, "--deep");
177
177
  const index = hasFlag(argv, "--index");
178
178
  const verbose = hasFlag(argv, "--verbose");
179
- const { runMemoryStatus } = await import("./memory-cli-DZnq3S6s.js").then((n) => n.t);
179
+ const { runMemoryStatus } = await import("./memory-cli-1zjVJITN.js").then((n) => n.t);
180
180
  await runMemoryStatus({
181
181
  agent,
182
182
  json,
@@ -230,7 +230,7 @@ const routes = [
230
230
  const pathArg = getCommandPositionals(argv)[2];
231
231
  if (!pathArg) return false;
232
232
  const json = hasFlag(argv, "--json");
233
- const { runConfigGet } = await import("./config-cli-CQ1FAvY_.js");
233
+ const { runConfigGet } = await import("./config-cli-BgHYqFH1.js");
234
234
  await runConfigGet({
235
235
  path: pathArg,
236
236
  json
@@ -243,7 +243,7 @@ const routes = [
243
243
  run: async (argv) => {
244
244
  const pathArg = getCommandPositionals(argv)[2];
245
245
  if (!pathArg) return false;
246
- const { runConfigUnset } = await import("./config-cli-CQ1FAvY_.js");
246
+ const { runConfigUnset } = await import("./config-cli-BgHYqFH1.js");
247
247
  await runConfigUnset({ path: pathArg });
248
248
  return true;
249
249
  }
@@ -257,7 +257,7 @@ const routes = [
257
257
  const local = hasFlag(argv, "--local");
258
258
  const json = hasFlag(argv, "--json");
259
259
  const plain = hasFlag(argv, "--plain");
260
- const { modelsListCommand } = await import("./models-Cht7Mzvs.js").then((n) => n.t);
260
+ const { modelsListCommand } = await import("./models-BYev6YAG.js").then((n) => n.t);
261
261
  await modelsListCommand({
262
262
  all,
263
263
  local,
@@ -288,7 +288,7 @@ const routes = [
288
288
  const plain = hasFlag(argv, "--plain");
289
289
  const check = hasFlag(argv, "--check");
290
290
  const probe = hasFlag(argv, "--probe");
291
- const { modelsStatusCommand } = await import("./models-Cht7Mzvs.js").then((n) => n.t);
291
+ const { modelsStatusCommand } = await import("./models-BYev6YAG.js").then((n) => n.t);
292
292
  await modelsStatusCommand({
293
293
  json,
294
294
  plain,
@@ -366,7 +366,7 @@ async function runCli(argv = process$1.argv) {
366
366
  assertSupportedRuntime();
367
367
  if (await tryRouteCli(normalizedArgv)) return;
368
368
  enableConsoleCapture();
369
- const { buildProgram } = await import("./program-DEmAlwmD.js");
369
+ const { buildProgram } = await import("./program-P9F1DxBa.js");
370
370
  const program = buildProgram();
371
371
  installUnhandledRejectionHandler();
372
372
  process$1.on("uncaughtException", (error) => {
@@ -398,10 +398,10 @@ async function runCli(argv = process$1.argv) {
398
398
  const { getProgramContext } = await import("./program-context-B_0V80zV.js").then((n) => n.n);
399
399
  const ctx = getProgramContext(program);
400
400
  if (ctx) {
401
- const { registerCoreCliByName } = await import("./command-registry-CXcvXjUR.js").then((n) => n.t);
401
+ const { registerCoreCliByName } = await import("./command-registry-CLm8TAH3.js").then((n) => n.t);
402
402
  await registerCoreCliByName(program, ctx, primary, parseArgv);
403
403
  }
404
- const { registerSubCliByName } = await import("./register.subclis-FMlcLBX0.js").then((n) => n.a);
404
+ const { registerSubCliByName } = await import("./register.subclis-Cibmeapc.js").then((n) => n.a);
405
405
  await registerSubCliByName(program, primary);
406
406
  }
407
407
  const hasBuiltinPrimary = primary !== null && program.commands.some((command) => command.name() === primary);
@@ -410,7 +410,7 @@ async function runCli(argv = process$1.argv) {
410
410
  primary,
411
411
  hasBuiltinPrimary
412
412
  })) {
413
- const { registerPluginCliCommands } = await import("./cli-CMNR7ULk.js");
413
+ const { registerPluginCliCommands } = await import("./cli-BafqEuaj.js");
414
414
  const { loadConfig } = await import("./config-D7TcU4qN.js").then((n) => n.t);
415
415
  registerPluginCliCommands(program, loadConfig());
416
416
  }
@@ -4,19 +4,19 @@ import { h as resolveUserPath } from "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
6
6
  import { c as resolveAgentIdFromSessionKey, o as normalizeAgentId } from "./session-key-DUSb7CCb.js";
7
- import { C as ensureAgentWorkspace, S as DEFAULT_USER_FILENAME, b as DEFAULT_SYMIPULSE_FILENAME, d as resolveSessionAgentId, g as DEFAULT_IDENTITY_FILENAME, h as DEFAULT_BOOTSTRAP_FILENAME, m as DEFAULT_AGENT_WORKSPACE_DIR, p as DEFAULT_AGENTS_FILENAME, r as resolveAgentConfig, x as DEFAULT_TOOLS_FILENAME, y as DEFAULT_SYMICORE_FILENAME } from "./agent-scope-DOrZjOnW.js";
8
- import { i as loadConfig } from "./config-B4jkreCN.js";
9
- import { A as DEFAULT_SYMI_BROWSER_PROFILE_NAME, D as DEFAULT_BROWSER_EVALUATE_ENABLED, O as DEFAULT_SYMI_BROWSER_COLOR } from "./chrome-DJChpTwP.js";
7
+ import { C as ensureAgentWorkspace, S as DEFAULT_USER_FILENAME, b as DEFAULT_SYMIPULSE_FILENAME, d as resolveSessionAgentId, g as DEFAULT_IDENTITY_FILENAME, h as DEFAULT_BOOTSTRAP_FILENAME, m as DEFAULT_AGENT_WORKSPACE_DIR, p as DEFAULT_AGENTS_FILENAME, r as resolveAgentConfig, x as DEFAULT_TOOLS_FILENAME, y as DEFAULT_SYMICORE_FILENAME } from "./agent-scope-Bnsyyeci.js";
8
+ import { i as loadConfig } from "./config-BngIfn5l.js";
9
+ import { A as DEFAULT_SYMI_BROWSER_PROFILE_NAME, D as DEFAULT_BROWSER_EVALUATE_ENABLED, O as DEFAULT_SYMI_BROWSER_COLOR } from "./chrome-38OnGyuN.js";
10
10
  import { t as safeEqualSecret } from "./secret-equal-CbntzRkh.js";
11
11
  import { r as isLoopbackHost } from "./ws-C7Ktmt-R.js";
12
- import { a as resolveProfile, m as resolveBrowserControlAuth, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-ChcbJgNo.js";
13
- import { d as resolveSandboxInputPath, f as resolveSandboxPath, g as sanitizeEnvVars, o as syncSkillsToWorkspace } from "./skills-BwDmcZdt.js";
14
- import { t as registerBrowserRoutes } from "./routes-ivqbutvM.js";
15
- import { B as resolveAgentMainSessionKey, J as acquireSessionWriteLock, z as canonicalizeMainSessionAlias } from "./sessions-Dxf5Kjig.js";
12
+ import { a as resolveProfile, m as resolveBrowserControlAuth, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-DXdk410X.js";
13
+ import { d as resolveSandboxInputPath, f as resolveSandboxPath, g as sanitizeEnvVars, o as syncSkillsToWorkspace } from "./skills-CYcBtLGH.js";
14
+ import { t as registerBrowserRoutes } from "./routes-BwTUoI5h.js";
15
+ import { B as resolveAgentMainSessionKey, J as acquireSessionWriteLock, z as canonicalizeMainSessionAlias } from "./sessions-BCc3THTm.js";
16
16
  import crypto from "node:crypto";
17
17
  import path, { posix } from "node:path";
18
18
  import { existsSync, realpathSync } from "node:fs";
19
- import fs$1 from "node:fs/promises";
19
+ import fsPromises from "node:fs/promises";
20
20
  import { spawn } from "node:child_process";
21
21
  import express from "express";
22
22
 
@@ -776,7 +776,7 @@ async function withRegistryLock(registryPath, fn) {
776
776
  }
777
777
  async function readRegistryFromFile(registryPath, mode) {
778
778
  try {
779
- const raw = await fs$1.readFile(registryPath, "utf-8");
779
+ const raw = await fsPromises.readFile(registryPath, "utf-8");
780
780
  const parsed = JSON.parse(raw);
781
781
  if (isRegistryFile(parsed)) return parsed;
782
782
  if (mode === "fallback") return { entries: [] };
@@ -789,15 +789,15 @@ async function readRegistryFromFile(registryPath, mode) {
789
789
  }
790
790
  }
791
791
  async function writeRegistryFile(registryPath, registry) {
792
- await fs$1.mkdir(SANDBOX_STATE_DIR, { recursive: true });
792
+ await fsPromises.mkdir(SANDBOX_STATE_DIR, { recursive: true });
793
793
  const payload = `${JSON.stringify(registry, null, 2)}\n`;
794
794
  const registryDir = path.dirname(registryPath);
795
795
  const tempPath = path.join(registryDir, `${path.basename(registryPath)}.${crypto.randomUUID()}.tmp`);
796
- await fs$1.writeFile(tempPath, payload, "utf-8");
796
+ await fsPromises.writeFile(tempPath, payload, "utf-8");
797
797
  try {
798
- await fs$1.rename(tempPath, registryPath);
798
+ await fsPromises.rename(tempPath, registryPath);
799
799
  } catch (error) {
800
- await fs$1.rm(tempPath, { force: true });
800
+ await fsPromises.rm(tempPath, { force: true });
801
801
  throw error;
802
802
  }
803
803
  }
@@ -2032,7 +2032,7 @@ function formatSandboxToolPolicyBlockedMessage(params) {
2032
2032
  //#endregion
2033
2033
  //#region src/agents/sandbox/workspace.ts
2034
2034
  async function ensureSandboxWorkspace(workspaceDir, seedFrom, skipBootstrap) {
2035
- await fs$1.mkdir(workspaceDir, { recursive: true });
2035
+ await fsPromises.mkdir(workspaceDir, { recursive: true });
2036
2036
  if (seedFrom) {
2037
2037
  const seed = resolveUserPath(seedFrom);
2038
2038
  const files = [
@@ -2048,11 +2048,11 @@ async function ensureSandboxWorkspace(workspaceDir, seedFrom, skipBootstrap) {
2048
2048
  const src = path.join(seed, name);
2049
2049
  const dest = path.join(workspaceDir, name);
2050
2050
  try {
2051
- await fs$1.access(dest);
2051
+ await fsPromises.access(dest);
2052
2052
  } catch {
2053
2053
  try {
2054
- const content = await fs$1.readFile(src, "utf-8");
2055
- await fs$1.writeFile(dest, content, {
2054
+ const content = await fsPromises.readFile(src, "utf-8");
2055
+ await fsPromises.writeFile(dest, content, {
2056
2056
  encoding: "utf-8",
2057
2057
  flag: "wx"
2058
2058
  });
@@ -2087,7 +2087,7 @@ async function ensureSandboxWorkspaceLayout(params) {
2087
2087
  const message = error instanceof Error ? error.message : JSON.stringify(error);
2088
2088
  defaultRuntime.error?.(`Sandbox skill sync failed: ${message}`);
2089
2089
  }
2090
- } else await fs$1.mkdir(workspaceDir, { recursive: true });
2090
+ } else await fsPromises.mkdir(workspaceDir, { recursive: true });
2091
2091
  return {
2092
2092
  agentWorkspaceDir,
2093
2093
  scopeKey,
@@ -5,30 +5,30 @@ import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
6
6
  import { c as resolveAgentIdFromSessionKey, o as normalizeAgentId, r as buildAgentMainSessionKey, s as normalizeMainKey, x as parseAgentSessionKey } from "./session-key-DUSb7CCb.js";
7
7
  import "./exec-DuYbft0z.js";
8
- import { r as resolveAgentConfig } from "./agent-scope-DOrZjOnW.js";
9
- import "./model-selection-7wdmO-Iw.js";
10
- import { i as loadConfig } from "./config-B4jkreCN.js";
8
+ import { r as resolveAgentConfig } from "./agent-scope-Bnsyyeci.js";
9
+ import "./model-selection-CCTzD29o.js";
10
+ import { i as loadConfig } from "./config-BngIfn5l.js";
11
11
  import "./boolean-CbZoNRMn.js";
12
12
  import "./env-BRnPI9sO.js";
13
13
  import "./shell-env-Dc3iU7HK.js";
14
14
  import "./manifest-registry-D1MLZEjS.js";
15
- import { f as resolveSandboxConfigForAgent, i as removeSandboxContainer, m as resolveSandboxToolPolicyForAgent, n as listSandboxContainers, r as removeSandboxBrowserContainer, t as listSandboxBrowsers } from "./sandbox-BkznAPKO.js";
16
- import "./chrome-DJChpTwP.js";
15
+ import { f as resolveSandboxConfigForAgent, i as removeSandboxContainer, m as resolveSandboxToolPolicyForAgent, n as listSandboxContainers, r as removeSandboxBrowserContainer, t as listSandboxBrowsers } from "./sandbox-CZGTCone.js";
16
+ import "./chrome-38OnGyuN.js";
17
17
  import "./tailscale-DpKBMIvx.js";
18
18
  import "./auth-Bkx-QuRN.js";
19
- import "./server-context-ChcbJgNo.js";
19
+ import "./server-context-DXdk410X.js";
20
20
  import "./frontmatter-B_jqcova.js";
21
- import "./skills-BwDmcZdt.js";
22
- import "./routes-ivqbutvM.js";
21
+ import "./skills-CYcBtLGH.js";
22
+ import "./routes-BwTUoI5h.js";
23
23
  import "./redact-B3O-RBO1.js";
24
24
  import "./errors-bI7Tdx75.js";
25
- import "./fs-safe-BdejYjW8.js";
26
- import "./paths-DObzwe08.js";
25
+ import "./fs-safe-B0Is-oLk.js";
26
+ import "./paths-BWqg8NZT.js";
27
27
  import "./ssrf-DOZRI5XH.js";
28
- import "./image-ops-L70xVnpG.js";
29
- import "./ports-gxLM5ahL.js";
28
+ import "./image-ops-BzCBIakN.js";
29
+ import "./ports-CB_Iu83U.js";
30
30
  import "./trash-_YhavPQI.js";
31
- import { B as resolveAgentMainSessionKey, H as resolveMainSessionKey, o as loadSessionStore } from "./sessions-Dxf5Kjig.js";
31
+ import { B as resolveAgentMainSessionKey, H as resolveMainSessionKey, o as loadSessionStore } from "./sessions-BCc3THTm.js";
32
32
  import "./dock-hF45sewN.js";
33
33
  import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DgjXWzf-.js";
34
34
  import "./plugins-CF5skkHh.js";
@@ -10,8 +10,8 @@ import "./skills-cLBEdkqu.js";
10
10
  import "./manifest-registry-CVLmi8rz.js";
11
11
  import { i as loadConfig, r as createConfigIO } from "./config-D7TcU4qN.js";
12
12
  import "./shell-env-CTYaxUs_.js";
13
- import "./client-DCxeV1bw.js";
14
- import "./call-DZg43vv8.js";
13
+ import "./client-yVTJ5jx5.js";
14
+ import "./call-C2urR5Fj.js";
15
15
  import "./message-channel-DXToSaWK.js";
16
16
  import "./pairing-token-B-OTYROz.js";
17
17
  import "./sessions-Dn6VXn4p.js";
@@ -39,7 +39,7 @@ import { t as formatDocsLink } from "./links-Dnmd-RS-.js";
39
39
  import { t as formatHelpExamples } from "./help-format-Dbp8yEhl.js";
40
40
  import "./pi-tools.policy-06k__URR.js";
41
41
  import "./skill-scanner-BC3PyNso.js";
42
- import { a as collectIncludePathsRecursive, i as formatIcaclsResetCommand, r as createIcaclsResetCommand, t as runSecurityAudit } from "./audit-B7deV4Lp.js";
42
+ import { a as collectIncludePathsRecursive, i as formatIcaclsResetCommand, r as createIcaclsResetCommand, t as runSecurityAudit } from "./audit-CPloCzEZ.js";
43
43
  import "./dm-policy-shared-BtrdvOIT.js";
44
44
  import path from "node:path";
45
45
  import fs from "node:fs/promises";
@@ -5,54 +5,54 @@ import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
6
6
  import { o as normalizeAgentId } from "./session-key-DUSb7CCb.js";
7
7
  import { n as runExec } from "./exec-DuYbft0z.js";
8
- import { l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
9
- import "./model-selection-7wdmO-Iw.js";
10
- import "./file-lock-BVUYnlQv.js";
11
- import { i as loadConfig, r as createConfigIO } from "./config-B4jkreCN.js";
8
+ import { l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
9
+ import "./model-selection-CCTzD29o.js";
10
+ import "./file-lock-2AecMjCa.js";
11
+ import { i as loadConfig, r as createConfigIO } from "./config-BngIfn5l.js";
12
12
  import "./boolean-CbZoNRMn.js";
13
13
  import "./env-BRnPI9sO.js";
14
14
  import "./shell-env-Dc3iU7HK.js";
15
15
  import "./manifest-registry-D1MLZEjS.js";
16
- import "./sandbox-BkznAPKO.js";
17
- import "./chrome-DJChpTwP.js";
16
+ import "./sandbox-CZGTCone.js";
17
+ import "./chrome-38OnGyuN.js";
18
18
  import "./tailscale-DpKBMIvx.js";
19
19
  import "./auth-Bkx-QuRN.js";
20
- import "./server-context-ChcbJgNo.js";
20
+ import "./server-context-DXdk410X.js";
21
21
  import "./frontmatter-B_jqcova.js";
22
- import "./skills-BwDmcZdt.js";
23
- import "./routes-ivqbutvM.js";
22
+ import "./skills-CYcBtLGH.js";
23
+ import "./routes-BwTUoI5h.js";
24
24
  import "./redact-B3O-RBO1.js";
25
25
  import "./errors-bI7Tdx75.js";
26
- import "./fs-safe-BdejYjW8.js";
27
- import "./paths-DObzwe08.js";
26
+ import "./fs-safe-B0Is-oLk.js";
27
+ import "./paths-BWqg8NZT.js";
28
28
  import "./ssrf-DOZRI5XH.js";
29
- import "./image-ops-L70xVnpG.js";
30
- import "./ports-gxLM5ahL.js";
29
+ import "./image-ops-BzCBIakN.js";
30
+ import "./ports-CB_Iu83U.js";
31
31
  import "./trash-_YhavPQI.js";
32
- import "./sessions-Dxf5Kjig.js";
32
+ import "./sessions-BCc3THTm.js";
33
33
  import "./dock-hF45sewN.js";
34
34
  import "./message-channel-DgjXWzf-.js";
35
35
  import "./plugins-CF5skkHh.js";
36
36
  import "./paths-BtvQ7JvU.js";
37
37
  import "./commands-DUzLGgEZ.js";
38
- import "./client-k0MT6NBw.js";
39
- import "./call-BccaLPi8.js";
40
- import "./pairing-token-Dcy37-4s.js";
41
- import "./workspace-dirs-jKFQf7of.js";
42
- import { i as readChannelAllowFromStore } from "./pairing-store-BNhJOnWn.js";
38
+ import "./client-CTrfpKT3.js";
39
+ import "./call-Bpjj5p7I.js";
40
+ import "./pairing-token-B703A1U3.js";
41
+ import "./workspace-dirs-DCICLTHx.js";
42
+ import { i as readChannelAllowFromStore } from "./pairing-store-Be-ZQK87.js";
43
43
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
44
44
  import { t as formatHelpExamples } from "./help-format-7hFcsqss.js";
45
- import "./pi-tools.policy-H2t-Xkfc.js";
46
- import "./skill-scanner-BCgVcIwi.js";
47
- import { a as collectIncludePathsRecursive, i as formatIcaclsResetCommand, r as createIcaclsResetCommand, t as runSecurityAudit } from "./audit-BCStg-Hv.js";
48
- import "./dm-policy-shared-CeFt0nch.js";
45
+ import "./pi-tools.policy-CvAqjEH9.js";
46
+ import "./skill-scanner-CIlHPszT.js";
47
+ import { a as collectIncludePathsRecursive, i as formatIcaclsResetCommand, r as createIcaclsResetCommand, t as runSecurityAudit } from "./audit-CXIXYDRx.js";
48
+ import "./dm-policy-shared-B61_yf6G.js";
49
49
  import path from "node:path";
50
- import fs from "node:fs/promises";
50
+ import fsPromises from "node:fs/promises";
51
51
 
52
52
  //#region src/security/fix.ts
53
53
  async function safeChmod(params) {
54
54
  try {
55
- const st = await fs.lstat(params.path);
55
+ const st = await fsPromises.lstat(params.path);
56
56
  if (st.isSymbolicLink()) return {
57
57
  kind: "chmod",
58
58
  path: params.path,
@@ -81,7 +81,7 @@ async function safeChmod(params) {
81
81
  ok: false,
82
82
  skipped: "already"
83
83
  };
84
- await fs.chmod(params.path, params.mode);
84
+ await fsPromises.chmod(params.path, params.mode);
85
85
  return {
86
86
  kind: "chmod",
87
87
  path: params.path,
@@ -111,7 +111,7 @@ async function safeAclReset(params) {
111
111
  env: params.env
112
112
  });
113
113
  try {
114
- const st = await fs.lstat(params.path);
114
+ const st = await fsPromises.lstat(params.path);
115
115
  if (st.isSymbolicLink()) return {
116
116
  kind: "icacls",
117
117
  path: params.path,
@@ -249,7 +249,7 @@ async function chmodCredentialsAndAgentState(params) {
249
249
  mode: 448,
250
250
  require: "dir"
251
251
  }));
252
- const credsEntries = await fs.readdir(credsDir, { withFileTypes: true }).catch(() => []);
252
+ const credsEntries = await fsPromises.readdir(credsDir, { withFileTypes: true }).catch(() => []);
253
253
  for (const entry of credsEntries) {
254
254
  if (!entry.isFile()) continue;
255
255
  if (!entry.name.endsWith(".json")) continue;
@@ -300,7 +300,7 @@ async function chmodCredentialsAndAgentState(params) {
300
300
  mode: 384,
301
301
  require: "file"
302
302
  }));
303
- const sessionEntries = await fs.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
303
+ const sessionEntries = await fsPromises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
304
304
  for (const entry of sessionEntries) {
305
305
  if (!entry.isFile()) continue;
306
306
  if (!entry.name.endsWith(".jsonl")) continue;
@@ -1,17 +1,17 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { D as shouldLogVerbose, w as logVerbose } from "./registry-Sbac4a4z.js";
3
3
  import { h as resolveUserPath } from "./utils-CTPsqyE_.js";
4
- import { i as loadConfig } from "./config-B4jkreCN.js";
5
- import { r as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-BdejYjW8.js";
6
- import { _ as mediaKindFromMime, a as hasAlphaChannel, c as detectMime, g as maxBytesForKind, l as extensionForMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-L70xVnpG.js";
4
+ import { i as loadConfig } from "./config-BngIfn5l.js";
5
+ import { r as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-B0Is-oLk.js";
6
+ import { _ as mediaKindFromMime, a as hasAlphaChannel, c as detectMime, g as maxBytesForKind, l as extensionForMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-BzCBIakN.js";
7
7
  import { a as resolveSlackAccount, c as resolveSlackBotToken } from "./plugins-CF5skkHh.js";
8
8
  import { a as chunkText, c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-BxfKjCUx.js";
9
9
  import { n as resolveMarkdownTableMode } from "./markdown-tables-CS1Tvb3z.js";
10
10
  import { t as fetchWithSsrFGuard } from "./fetch-guard-JHxT9355.js";
11
- import { n as getDefaultMediaLocalRoots } from "./local-roots-CgDCgCuM.js";
11
+ import { n as getDefaultMediaLocalRoots } from "./local-roots-2Jb79HZ8.js";
12
12
  import { fileURLToPath } from "node:url";
13
13
  import path from "node:path";
14
- import fs from "node:fs/promises";
14
+ import fsPromises from "node:fs/promises";
15
15
  import { WebClient } from "@slack/web-api";
16
16
  import MarkdownIt from "markdown-it";
17
17
 
@@ -380,7 +380,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
380
380
  const roots = localRoots ?? getDefaultLocalRoots();
381
381
  let resolved;
382
382
  try {
383
- resolved = await fs.realpath(mediaPath);
383
+ resolved = await fsPromises.realpath(mediaPath);
384
384
  } catch {
385
385
  resolved = path.resolve(mediaPath);
386
386
  }
@@ -397,7 +397,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
397
397
  for (const root of roots) {
398
398
  let resolvedRoot;
399
399
  try {
400
- resolvedRoot = await fs.realpath(root);
400
+ resolvedRoot = await fsPromises.realpath(root);
401
401
  } catch {
402
402
  resolvedRoot = path.resolve(root);
403
403
  }
@@ -1,6 +1,6 @@
1
1
  import { u as resolveGatewayPort } from "./paths-By0XjHBk.js";
2
- import { i as loadConfig, l as writeConfigFile, r as createConfigIO } from "./config-B4jkreCN.js";
3
- import { A as DEFAULT_SYMI_BROWSER_PROFILE_NAME, D as DEFAULT_BROWSER_EVALUATE_ENABLED, E as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, O as DEFAULT_SYMI_BROWSER_COLOR, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, k as DEFAULT_SYMI_BROWSER_ENABLED, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, v as fetchOk, x as ensureChromeExtensionRelayServer } from "./chrome-DJChpTwP.js";
2
+ import { i as loadConfig, l as writeConfigFile, r as createConfigIO } from "./config-BngIfn5l.js";
3
+ import { A as DEFAULT_SYMI_BROWSER_PROFILE_NAME, D as DEFAULT_BROWSER_EVALUATE_ENABLED, E as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, O as DEFAULT_SYMI_BROWSER_COLOR, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, k as DEFAULT_SYMI_BROWSER_ENABLED, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, v as fetchOk, x as ensureChromeExtensionRelayServer } from "./chrome-38OnGyuN.js";
4
4
  import { r as isLoopbackHost } from "./ws-C7Ktmt-R.js";
5
5
  import { a as resolveGatewayAuth } from "./auth-Bkx-QuRN.js";
6
6
  import { n as formatErrorMessage, t as extractErrorCode } from "./errors-bI7Tdx75.js";
@@ -152,7 +152,7 @@ function isModuleNotFoundError(err) {
152
152
  }
153
153
  async function loadPwAiModule(mode) {
154
154
  try {
155
- return await import("./pw-ai-BiBvIJzd.js");
155
+ return await import("./pw-ai-CP5pn3eU.js");
156
156
  } catch (err) {
157
157
  if (mode === "soft") return null;
158
158
  if (isModuleNotFoundError(err)) return null;
@@ -775,11 +775,11 @@ function createProfileContext(opts, profile) {
775
775
  const userDataDir = resolveSymiUserDataDir(profile.name);
776
776
  const profileState = getProfileState();
777
777
  if (await isHttpReachable(300) && !profileState.running) try {
778
- await (await import("./pw-ai-BiBvIJzd.js")).closePlaywrightBrowserConnection();
778
+ await (await import("./pw-ai-CP5pn3eU.js")).closePlaywrightBrowserConnection();
779
779
  } catch {}
780
780
  if (profileState.running) await stopRunningBrowser();
781
781
  try {
782
- await (await import("./pw-ai-BiBvIJzd.js")).closePlaywrightBrowserConnection();
782
+ await (await import("./pw-ai-CP5pn3eU.js")).closePlaywrightBrowserConnection();
783
783
  } catch {}
784
784
  if (!fs.existsSync(userDataDir)) return {
785
785
  moved: false,
@@ -7,13 +7,13 @@ import { n as normalizeSecretInput } from "./normalize-secret-input-8lcBtVEy.js"
7
7
  import { i as loadWorkspaceSkillEntries } from "./skills-cLBEdkqu.js";
8
8
  import { t as buildWorkspaceSkillStatus } from "./skills-status-g3ssrjuX.js";
9
9
  import { N as VERSION, P as resolveRuntimeServiceVersion, T as applyLegacyMigrations, a as parseConfigJson5, c as resolveConfigSnapshotHash, d as SymiSchema, i as loadConfig, l as writeConfigFile, m as sensitive, o as readConfigFileSnapshot, s as readConfigFileSnapshotForWrite, u as validateConfigObjectWithPlugins, w as applyMergePatch } from "./config-D7TcU4qN.js";
10
- import { $ as validateNodeInvokeResultParams, $t as rotateDeviceToken, A as validateCronListParams, At as validateTasksListParams, B as validateDeviceTokenRevokeParams, Bt as ErrorCodes, C as validateConfigApplyParams, Ct as validateSessionsUsageParams, D as validateConfigSetParams, Dt as validateSkillsUpdateParams, E as validateConfigSchemaParams, Et as validateSkillsStatusParams, F as validateCronUpdateParams, Ft as validateWizardCancelParams, G as validateExecApprovalsNodeGetParams, Gt as approveDevicePairing, I as validateDevicePairApproveParams, It as validateWizardNextParams, J as validateLogsTailParams, Jt as listDevicePairing, K as validateExecApprovalsNodeSetParams, L as validateDevicePairListParams, Lt as validateWizardStartParams, M as validateCronRunParams, Mt as validateWakeParams, N as validateCronRunsParams, Nt as validateWebLoginStartParams, Ot as validateTalkConfigParams, P as validateCronStatusParams, Pt as validateWebLoginWaitParams, Q as validateNodeInvokeParams, Qt as revokeDeviceToken, R as validateDevicePairRejectParams, Rt as validateWizardStatusParams, S as validateChatToolsListParams, St as validateSessionsSearchParams, T as validateConfigPatchParams, Tt as validateSkillsInstallParams, Ut as parseSessionLabel, V as validateDeviceTokenRotateParams, Vt as errorShape, W as validateExecApprovalsGetParams, X as validateNodeDescribeParams, Xt as removePairedDevice, Y as validateModelsListParams, Yt as rejectDevicePairing, Z as validateNodeEventParams, _ as validateChatHistoryParams, _t as validateSessionsPatchParams, a as validateAgentWaitParams, at as validateNodePairVerifyParams, b as validateChatSkillsListParams, bt as validateSessionsResolveParams, c as validateAgentsFilesGetParams, ct as validatePushTestParams, d as validateAgentsListParams, dt as validateSessionsAdoptFileParams, en as summarizeDeviceTokens, et as validateNodeListParams, f as validateAgentsUpdateParams, ft as validateSessionsCompactParams, g as validateChatCommandsListParams, gt as validateSessionsListParams, h as validateChatAbortParams, ht as validateSessionsFavoriteFileParams, i as validateAgentParams, it as validateNodePairRequestParams, j as validateCronRemoveParams, jt as validateUpdateRunParams, k as validateCronAddParams, kt as validateTalkModeParams, l as validateAgentsFilesListParams, m as validateChannelsStatusParams, mt as validateSessionsDeleteParams, n as formatValidationErrors, nt as validateNodePairListParams, o as validateAgentsCreateParams, ot as validateNodeRenameParams, p as validateChannelsLogoutParams, pt as validateSessionsDeleteFileParams, q as validateExecApprovalsSetParams, r as validateAgentIdentityParams, rt as validateNodePairRejectParams, s as validateAgentsDeleteParams, st as validatePollParams, tt as validateNodePairApproveParams, u as validateAgentsFilesSetParams, ut as validateSendParams, v as validateChatInjectParams, vt as validateSessionsPreviewParams, w as validateConfigGetParams, wt as validateSkillsBinsParams, x as validateChatSymframePushParams, xt as validateSessionsRestoreParams, y as validateChatSendParams, yt as validateSessionsResetParams, z as validateDevicePairRemoveParams } from "./client-DCxeV1bw.js";
11
- import { l as authorizeOperatorScopesForMethod, s as ADMIN_SCOPE$2, u as isNodeRoleMethod } from "./call-DZg43vv8.js";
10
+ import { $ as validateNodeInvokeResultParams, $t as rotateDeviceToken, A as validateCronListParams, At as validateTasksListParams, B as validateDeviceTokenRevokeParams, Bt as ErrorCodes, C as validateConfigApplyParams, Ct as validateSessionsUsageParams, D as validateConfigSetParams, Dt as validateSkillsUpdateParams, E as validateConfigSchemaParams, Et as validateSkillsStatusParams, F as validateCronUpdateParams, Ft as validateWizardCancelParams, G as validateExecApprovalsNodeGetParams, Gt as approveDevicePairing, I as validateDevicePairApproveParams, It as validateWizardNextParams, J as validateLogsTailParams, Jt as listDevicePairing, K as validateExecApprovalsNodeSetParams, L as validateDevicePairListParams, Lt as validateWizardStartParams, M as validateCronRunParams, Mt as validateWakeParams, N as validateCronRunsParams, Nt as validateWebLoginStartParams, Ot as validateTalkConfigParams, P as validateCronStatusParams, Pt as validateWebLoginWaitParams, Q as validateNodeInvokeParams, Qt as revokeDeviceToken, R as validateDevicePairRejectParams, Rt as validateWizardStatusParams, S as validateChatToolsListParams, St as validateSessionsSearchParams, T as validateConfigPatchParams, Tt as validateSkillsInstallParams, Ut as parseSessionLabel, V as validateDeviceTokenRotateParams, Vt as errorShape, W as validateExecApprovalsGetParams, X as validateNodeDescribeParams, Xt as removePairedDevice, Y as validateModelsListParams, Yt as rejectDevicePairing, Z as validateNodeEventParams, _ as validateChatHistoryParams, _t as validateSessionsPatchParams, a as validateAgentWaitParams, at as validateNodePairVerifyParams, b as validateChatSkillsListParams, bt as validateSessionsResolveParams, c as validateAgentsFilesGetParams, ct as validatePushTestParams, d as validateAgentsListParams, dt as validateSessionsAdoptFileParams, en as summarizeDeviceTokens, et as validateNodeListParams, f as validateAgentsUpdateParams, ft as validateSessionsCompactParams, g as validateChatCommandsListParams, gt as validateSessionsListParams, h as validateChatAbortParams, ht as validateSessionsFavoriteFileParams, i as validateAgentParams, it as validateNodePairRequestParams, j as validateCronRemoveParams, jt as validateUpdateRunParams, k as validateCronAddParams, kt as validateTalkModeParams, l as validateAgentsFilesListParams, m as validateChannelsStatusParams, mt as validateSessionsDeleteParams, n as formatValidationErrors, nt as validateNodePairListParams, o as validateAgentsCreateParams, ot as validateNodeRenameParams, p as validateChannelsLogoutParams, pt as validateSessionsDeleteFileParams, q as validateExecApprovalsSetParams, r as validateAgentIdentityParams, rt as validateNodePairRejectParams, s as validateAgentsDeleteParams, st as validatePollParams, tt as validateNodePairApproveParams, u as validateAgentsFilesSetParams, ut as validateSendParams, v as validateChatInjectParams, vt as validateSessionsPreviewParams, w as validateConfigGetParams, wt as validateSkillsBinsParams, x as validateChatSymframePushParams, xt as validateSessionsRestoreParams, y as validateChatSendParams, yt as validateSessionsResetParams, z as validateDevicePairRemoveParams } from "./client-yVTJ5jx5.js";
11
+ import { l as authorizeOperatorScopesForMethod, s as ADMIN_SCOPE$2, u as isNodeRoleMethod } from "./call-C2urR5Fj.js";
12
12
  import { f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, i as isGatewayMessageChannel, l as normalizeMessageChannel, n as isDeliverableMessageChannel, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DXToSaWK.js";
13
13
  import { c as writeJsonAtomic, o as createAsyncLock, s as readJsonFile } from "./pairing-token-B-OTYROz.js";
14
14
  import { s as pickPrimaryLanIPv4 } from "./net-TZUXtwGR.js";
15
15
  import { i as normalizeInputProvenance } from "./input-provenance-BdV0rbga.js";
16
- import { C as buildGlassUiProfile, Dt as scheduleGatewaySigusr1Restart, E as abortEmbeddedPiRun, En as registerAgentRunContext, Ft as normalizeSendPolicy, G as normalizePollInput, H as resolveOutboundSessionRoute, Ht as applyVerboseOverride, It as resolveSendPolicy, L as listTasksInWorkdir, N as buildAgentTurnParams, O as waitForEmbeddedPiRunEnd, P as prepareReplyTurn, Tn as onAgentEvent, U as resolveOutboundTarget, Ut as parseVerboseOverride, V as ensureOutboundSessionEntry, Vt as applyModelOverrideToSessionEntry, a as listSubagentRunsForRequester, c as clearSessionQueues, cn as stopSubagentsForRequester, et as normalizeCronJobCreate, i as listDescendantRunsForRequester, in as normalizeGroupActivation, m as loadSymiPlugins, nn as prepareAgentRun, on as formatZonedTimestamp, pn as resolveUserTimezone, rn as BARE_SESSION_RESET_PROMPT, sn as isAbortTrigger, tn as resolveAgentTimeoutMs, tt as normalizeCronJobPatch, vt as applyBrowserProxyPaths, w as runUnifiedTurn, x as createReplyDispatcher, y as getChannelActivity, yt as persistBrowserProxyFiles } from "./subagent-registry-V2o45tIn.js";
16
+ import { C as buildGlassUiProfile, Dt as scheduleGatewaySigusr1Restart, E as abortEmbeddedPiRun, En as registerAgentRunContext, Ft as normalizeSendPolicy, G as normalizePollInput, H as resolveOutboundSessionRoute, Ht as applyVerboseOverride, It as resolveSendPolicy, L as listTasksInWorkdir, N as buildAgentTurnParams, O as waitForEmbeddedPiRunEnd, P as prepareReplyTurn, Tn as onAgentEvent, U as resolveOutboundTarget, Ut as parseVerboseOverride, V as ensureOutboundSessionEntry, Vt as applyModelOverrideToSessionEntry, a as listSubagentRunsForRequester, c as clearSessionQueues, cn as stopSubagentsForRequester, et as normalizeCronJobCreate, i as listDescendantRunsForRequester, in as normalizeGroupActivation, m as loadSymiPlugins, nn as prepareAgentRun, on as formatZonedTimestamp, pn as resolveUserTimezone, rn as BARE_SESSION_RESET_PROMPT, sn as isAbortTrigger, tn as resolveAgentTimeoutMs, tt as normalizeCronJobPatch, vt as applyBrowserProxyPaths, w as runUnifiedTurn, x as createReplyDispatcher, y as getChannelActivity, yt as persistBrowserProxyFiles } from "./subagent-registry-BOt7g9hn.js";
17
17
  import { F as resolveMainSessionKey, I as resolveMainSessionKeyFromConfig, J as normalizeSessionDeliveryFields, N as resolveAgentMainSessionKey, P as resolveExplicitAgentSessionKey, R as snapshotSessionOrigin, S as stripEnvelopeFromMessages, _ as capArrayByJsonBytes, d as updateSessionStore, g as archiveSessionTranscripts, h as archiveFileOnDisk, o as loadSessionStore, t as extractDeliveryInfo, v as readSessionMessages, x as resolveSessionTranscriptCandidates, y as readSessionPreviewItemsFromTranscript } from "./sessions-Dn6VXn4p.js";
18
18
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BsEhWvLn.js";
19
19
  import { n as createBrowserRouteDispatcher } from "./with-timeout-B9GM8DPj.js";
@@ -22,7 +22,7 @@ import { t as movePathToTrash } from "./trash-Bx4LIudf.js";
22
22
  import { c as resolveStorePath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-DtiEyjsC.js";
23
23
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-BZDIJMl_.js";
24
24
  import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-DV3KhOhL.js";
25
- import { t as getMemorySearchManager } from "./memory-DFpqcIst.js";
25
+ import { t as getMemorySearchManager } from "./memory-A2D5e8dL.js";
26
26
  import { c as approveNodePairing, d as renamePairedNode, f as requestNodePairing, l as listNodePairing, m as verifyNodeToken, t as getRemoteSkillEligibility, u as rejectNodePairing } from "./skills-remote-DSGpkPJE.js";
27
27
  import { g as isSystemEventContextChanged, h as enqueueSystemEvent, i as formatDoctorNonInteractiveHint, l as writeRestartSentinel, u as loadProviderUsageSummary } from "./redact-identifier-BOxAUdff.js";
28
28
  import { t as listAgentWorkspaceDirs } from "./workspace-dirs-wlRR65M3.js";
@@ -35,13 +35,13 @@ import { t as buildChannelUiCatalog } from "./catalog-BQgWCFTH.js";
35
35
  import { t as WizardCancelledError } from "./prompts-D4yOwSll.js";
36
36
  import { t as resolveChannelDefaultAccountId } from "./helpers-CBCZwlBW.js";
37
37
  import { t as buildChannelAccountSnapshot } from "./status-BzmfZaEV.js";
38
- import { w as resolveAssistantAvatarUrl } from "./onboard-helpers-BcLPSb5N.js";
39
- import { c as resolveNodeCommandAllowlist, s as isNodeCommandAllowed } from "./audit-B7deV4Lp.js";
40
- import { r as getStatusSummary } from "./status-D9LC5P_Y.js";
38
+ import { w as resolveAssistantAvatarUrl } from "./onboard-helpers-Dhr98nj8.js";
39
+ import { c as resolveNodeCommandAllowlist, s as isNodeCommandAllowed } from "./audit-CPloCzEZ.js";
40
+ import { r as getStatusSummary } from "./status-ojZB_Lrf.js";
41
41
  import { r as createOutboundSendDeps } from "./outbound-send-deps-BCyarBRf.js";
42
42
  import { m as normalizeUpdateChannel } from "./update-check-DLOnLuop.js";
43
- import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-CZPUHftn.js";
44
- import { i as resolveAgentOutboundTarget, r as resolveAgentDeliveryPlan, t as agentCommand } from "./agent-D0Z4r5fr.js";
43
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-DnSCjFu7.js";
44
+ import { i as resolveAgentOutboundTarget, r as resolveAgentDeliveryPlan, t as agentCommand } from "./agent-DgVWcnlD.js";
45
45
  import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-CqfMQEiy.js";
46
46
  import { t as resolveSystemRunCommand } from "./system-run-command-CYEDiFm7.js";
47
47
  import { t as installSkill } from "./skills-install-CZE8W7lV.js";
@@ -4223,7 +4223,7 @@ const chatHandlers = {
4223
4223
  }
4224
4224
  (async () => {
4225
4225
  try {
4226
- const [{ createSymiTools }, { loadConfig }] = await Promise.all([import("./subagent-registry-V2o45tIn.js").then((n) => n.I), import("./config-D7TcU4qN.js").then((n) => n.t)]);
4226
+ const [{ createSymiTools }, { loadConfig }] = await Promise.all([import("./subagent-registry-BOt7g9hn.js").then((n) => n.I), import("./config-D7TcU4qN.js").then((n) => n.t)]);
4227
4227
  respond(true, { tools: createSymiTools({ config: loadConfig() }).map((tool) => {
4228
4228
  const name = tool.name;
4229
4229
  const description = tool.description;
@@ -4276,8 +4276,14 @@ const chatHandlers = {
4276
4276
  respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, "chat.symframe.push: update requires `id` and `card`"));
4277
4277
  return;
4278
4278
  }
4279
- if (typed.action === "remove" && !typed.id) {
4280
- respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, "chat.symframe.push: remove requires `id`"));
4279
+ if (new Set([
4280
+ "remove",
4281
+ "dwell",
4282
+ "release",
4283
+ "pin",
4284
+ "unpin"
4285
+ ]).has(typed.action) && !typed.id) {
4286
+ respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, `chat.symframe.push: ${typed.action} requires \`id\``));
4281
4287
  return;
4282
4288
  }
4283
4289
  (async () => {
@@ -7539,7 +7545,7 @@ const nodeHandlers = {
7539
7545
  const p = params;
7540
7546
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
7541
7547
  await respondUnavailableOnThrow(respond, async () => {
7542
- const { handleNodeEvent } = await import("./server-node-events-D-Akk3uq.js");
7548
+ const { handleNodeEvent } = await import("./server-node-events-ClDEcUTJ.js");
7543
7549
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
7544
7550
  await handleNodeEvent({
7545
7551
  deps: context.deps,