@symerian/symi 3.5.19 → 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 (261) 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-3jl2ulOE.js} +4 -4
  27. package/dist/{chrome-DNssqQJs.js → chrome-OTJg3QKn.js} +4 -4
  28. package/dist/{cli-C7v-sID8.js → cli-B-uoiYP2.js} +45 -45
  29. package/dist/{cli-CMNR7ULk.js → cli-BafqEuaj.js} +6 -6
  30. package/dist/{client-k0MT6NBw.js → client-CTrfpKT3.js} +7 -2
  31. package/dist/{client-DCxeV1bw.js → client-yVTJ5jx5.js} +6 -1
  32. package/dist/{command-registry-CXcvXjUR.js → command-registry-CLm8TAH3.js} +11 -11
  33. package/dist/{commands-registry-Ca5hh7nh.js → commands-registry-CwXsDVuO.js} +1 -1
  34. package/dist/{completion-cli-DJ1YCeSg.js → completion-cli-Cn_81QBb.js} +12 -12
  35. package/dist/{completion-cli-B1Fg6Lmg.js → completion-cli-DOBXkVwG.js} +2 -2
  36. package/dist/{config-B4jkreCN.js → config-BngIfn5l.js} +2 -2
  37. package/dist/{config-cli-D5DlWt6T.js → config-cli-B1cPkJ4p.js} +4 -4
  38. package/dist/{config-cli-CQ1FAvY_.js → config-cli-BgHYqFH1.js} +1 -1
  39. package/dist/{config-guard-BRm3RiOi.js → config-guard-DStz4_V2.js} +6 -6
  40. package/dist/{config-validation-Cdyg1BZB.js → config-validation-Dxj9LRzr.js} +1 -1
  41. package/dist/{configure-bhJB2Dti.js → configure-C7zmSgvC.js} +14 -14
  42. package/dist/{configure-DG1lf0Ld.js → configure-DmzM0S7L.js} +6 -6
  43. package/dist/{consolidate-DymnvvYm.js → consolidate-CO32_TEx.js} +6 -6
  44. package/dist/{control-service-D8kKOts5.js → control-service-CUreKVeY.js} +4 -4
  45. package/dist/control-ui/css/style.css +478 -80
  46. package/dist/control-ui/index.html +54 -127
  47. package/dist/control-ui/js/render.js +11 -227
  48. package/dist/control-ui/js/scheduling.js +85 -224
  49. package/dist/control-ui/js/subagents.js +78 -394
  50. package/dist/control-ui/js/symframe-awaiting.js +301 -0
  51. package/dist/control-ui/js/symframe-pin-store.js +104 -0
  52. package/dist/control-ui/js/symframe-substrate.js +395 -0
  53. package/dist/control-ui/js/symframe.js +244 -6
  54. package/dist/{control-ui-assets-CJQ97d4u.js → control-ui-assets-B8B9z_Ll.js} +1 -1
  55. package/dist/{cost-cli-DWiVCOCx.js → cost-cli-D-ssjcRF.js} +3 -3
  56. package/dist/{cron-cli-8RaBr1CM.js → cron-cli-BNBs3zue.js} +3 -3
  57. package/dist/{cron-cli-fW3wtftG.js → cron-cli-otPeKxmi.js} +7 -7
  58. package/dist/{daemon-cli-Y6clFgva.js → daemon-cli-DDqeG2nd.js} +2 -2
  59. package/dist/{daemon-cli-0EiZTQ2A.js → daemon-cli-qDdMg615.js} +11 -11
  60. package/dist/daemon-cli.js +6 -1
  61. package/dist/{daemon-runtime-DlQla_dA.js → daemon-runtime-CKn0wmCk.js} +10 -10
  62. package/dist/{deliver-B04yNX82.js → deliver-BiWlR84Y.js} +4 -4
  63. package/dist/{deliver-lTZLIQqf.js → deliver-CWMFmMCv.js} +2 -2
  64. package/dist/{deliver-q23ar_Pm.js → deliver-f3cIWxXT.js} +4 -4
  65. package/dist/{deps-Bf9dt2UO.js → deps-CdibsPMx.js} +1 -1
  66. package/dist/{devices-cli-C2gQTsB0.js → devices-cli-BJ3rVWOw.js} +2 -2
  67. package/dist/{devices-cli-DfiSkZ7k.js → devices-cli-DDPwF2Nx.js} +6 -6
  68. package/dist/{diagnostics-DlZODdRf.js → diagnostics-CYkqD5lP.js} +5 -5
  69. package/dist/{directory-cli-Bm5QYEo-.js → directory-cli-giqTe8Yg.js} +3 -3
  70. package/dist/{dm-policy-shared-CeFt0nch.js → dm-policy-shared-B61_yf6G.js} +1 -1
  71. package/dist/{dns-cli-CubLq4j9.js → dns-cli-Dssz4RqF.js} +3 -3
  72. package/dist/{docs-cli-PS8m1er7.js → docs-cli-Ct1STieY.js} +1 -1
  73. package/dist/{doctor-completion-CfF0J8fs.js → doctor-completion-CL7MyXlo.js} +2 -2
  74. package/dist/{doctor-completion-ScxFfN93.js → doctor-completion-k0HiL05o.js} +1 -1
  75. package/dist/{doctor-config-flow-C52W1uUK.js → doctor-config-flow-ljVnQJjo.js} +9 -9
  76. package/dist/entry.js +1 -1
  77. package/dist/{exec-approvals-cli-Cl-vWA1q.js → exec-approvals-cli-Cau1vPQI.js} +4 -4
  78. package/dist/{exec-approvals-cli-BaKWIf56.js → exec-approvals-cli-DsBoQu5H.js} +13 -13
  79. package/dist/extensionAPI.js +4 -4
  80. package/dist/{file-lock-BVUYnlQv.js → file-lock-2AecMjCa.js} +8 -8
  81. package/dist/{fs-safe-BdejYjW8.js → fs-safe-B0Is-oLk.js} +6 -6
  82. package/dist/{gateway-cli-kq5EWlnF.js → gateway-cli-DG_2YZ8B.js} +98 -98
  83. package/dist/{gateway-cli-CK-5nguV.js → gateway-cli-DgmGygc6.js} +16 -16
  84. package/dist/{gateway-rpc-Bzg_TTKP.js → gateway-rpc-Kv0-8W2E.js} +1 -1
  85. package/dist/{gateway-rpc-D12UaJS5.js → gateway-rpc-gaoD882s.js} +1 -1
  86. package/dist/{glass-ui-ws-B6p0iPsO.js → glass-ui-ws-Bof7krDJ.js} +67 -67
  87. package/dist/{glass-ui-ws-CVr0_1gT.js → glass-ui-ws-Dl45d7eU.js} +13 -13
  88. package/dist/{health-CPU9rQGj.js → health-CMbUI4aN.js} +4 -4
  89. package/dist/{health-CJb2CYtg.js → health-znS85U-F.js} +1 -1
  90. package/dist/{hooks-cli-DbgVZaP4.js → hooks-cli-Cb9BzCOY.js} +7 -7
  91. package/dist/{hooks-cli-13HCu5Xs.js → hooks-cli-Cgjor7F-.js} +59 -59
  92. package/dist/{image-ops-L70xVnpG.js → image-ops-BzCBIakN.js} +10 -10
  93. package/dist/index.js +52 -52
  94. package/dist/{inspect-CGKsaVZ4.js → inspect-DzYUb_Dl.js} +4 -4
  95. package/dist/{install-safe-path-B2JrFspY.js → install-safe-path-BrpA09f2.js} +11 -11
  96. package/dist/{installs-D890uIIW.js → installs-bnDlOSq2.js} +10 -10
  97. package/dist/{internal-DVCddhhN.js → internal-csqU78gW.js} +9 -9
  98. package/dist/{lifecycle-core-wFwnK_mD.js → lifecycle-core-cSR_xiIO.js} +5 -5
  99. package/dist/llm-slug-generator.js +4 -4
  100. package/dist/{local-roots-CgDCgCuM.js → local-roots-2Jb79HZ8.js} +1 -1
  101. package/dist/{logs-cli-R16VTptK.js → logs-cli-Kr145PO_.js} +7 -7
  102. package/dist/{logs-cli-CQeK5fn7.js → logs-cli-LiAjkog2.js} +3 -3
  103. package/dist/{manager-CxFs8Z_F.js → manager-CceVgXHV.js} +1 -1
  104. package/dist/{manager-B2SWSuad.js → manager-Cv4xI8sP.js} +1 -1
  105. package/dist/{manager-CHLdCC6u.js → manager-DG6PODgu.js} +15 -15
  106. package/dist/{manager-BhEbaYDa.js → manager-V4UCf0Av.js} +1 -1
  107. package/dist/{memory-DFpqcIst.js → memory-A2D5e8dL.js} +2 -2
  108. package/dist/{memory-DavRjdTi.js → memory-BFnx3v3_.js} +5 -5
  109. package/dist/{memory-cli-DZnq3S6s.js → memory-cli-1zjVJITN.js} +2 -2
  110. package/dist/{memory-cli-B-Cp1Sb1.js → memory-cli-CHNghdrm.js} +12 -12
  111. package/dist/{model-MUMSB_7d.js → model-Cwbcw-km.js} +1 -1
  112. package/dist/{model-auth-1EAQvYRv.js → model-auth-_C07_3Yr.js} +2 -2
  113. package/dist/{model-catalog-IWi6-nY9.js → model-catalog-BWurV7gl.js} +3 -3
  114. package/dist/{model-picker-Cf6UgQEh.js → model-picker-Dpkr5xBW.js} +5 -5
  115. package/dist/{model-selection-7wdmO-Iw.js → model-selection-CCTzD29o.js} +1 -1
  116. package/dist/{models-Cht7Mzvs.js → models-BYev6YAG.js} +3 -3
  117. package/dist/{models-cli-B_motPDX.js → models-cli-BbK8HMKa.js} +55 -55
  118. package/dist/{models-cli-DXswzgUR.js → models-cli-Fa5r1QYP.js} +9 -9
  119. package/dist/{models-config-B5Xxy-c-.js → models-config-DlXge3Sd.js} +8 -8
  120. package/dist/{node-cli-D-gsjRXY.js → node-cli-BPnBosC4.js} +27 -27
  121. package/dist/{node-cli-VmKhIXuP.js → node-cli-Cv7x1gGu.js} +1 -1
  122. package/dist/{node-service-BH08wY5j.js → node-service-Cc18m-uk.js} +1 -1
  123. package/dist/{nodes-cli-BMvxQGCp.js → nodes-cli-CN_m6PO5.js} +10 -10
  124. package/dist/{nodes-cli-D199d74o.js → nodes-cli-DaHOBbd4.js} +3 -3
  125. package/dist/{nodes-screen-De9ma6e1.js → nodes-screen-Cp5QP3ET.js} +4 -4
  126. package/dist/{npm-registry-spec-DTqn-NXZ.js → npm-registry-spec-C-muP97-.js} +9 -9
  127. package/dist/{onboard-DFJcbABp.js → onboard-B2IcTMv-.js} +15 -15
  128. package/dist/{onboard-CdRA8BRG.js → onboard-D-m6WTZl.js} +3 -3
  129. package/dist/{onboard-channels-fadyQGBK.js → onboard-channels-Z-Jkrk5-.js} +1 -1
  130. package/dist/{onboard-channels-Ca7ZFQ2Y.js → onboard-channels-wfGO5Zlh.js} +4 -4
  131. package/dist/{onboard-custom-BcRYreNG.js → onboard-custom-DnDrvxSg.js} +3 -3
  132. package/dist/{onboard-helpers-CQBpac8h.js → onboard-helpers-BKejzolA.js} +8 -8
  133. package/dist/{onboard-helpers-BcLPSb5N.js → onboard-helpers-Dhr98nj8.js} +1 -1
  134. package/dist/{onboard-hooks-2SCajRKc.js → onboard-hooks-D9jHwImb.js} +1 -1
  135. package/dist/{onboard-remote-Bo3tpC9N.js → onboard-remote-DZdMxd1Q.js} +1 -1
  136. package/dist/{onboard-remote-BWK5Ths4.js → onboard-remote-y3ZmP90U.js} +1 -1
  137. package/dist/{onboard-skills-BLl8HPJO.js → onboard-skills-2SUv-W7i.js} +1 -1
  138. package/dist/{onboard-skills-DvacccqZ.js → onboard-skills-BFhHfrt9.js} +3 -3
  139. package/dist/{onboarding-ojb2rFkA.js → onboarding-BckHLQMV.js} +7 -7
  140. package/dist/{onboarding-BywueA1d.js → onboarding-DqlPV372.js} +12 -12
  141. package/dist/{onboarding.finalize-DdxBQpUU.js → onboarding.finalize-Bwjv3jew.js} +31 -31
  142. package/dist/{onboarding.finalize-DHvlZi9G.js → onboarding.finalize-CbH_ShIW.js} +9 -9
  143. package/dist/{onboarding.gateway-config-DPBNWNV6.js → onboarding.gateway-config-CiRo9EMt.js} +8 -8
  144. package/dist/{onboarding.gateway-config-ZK9517uR.js → onboarding.gateway-config-sNSeEykB.js} +3 -3
  145. package/dist/{openai-model-default-BkuuK-Di.js → openai-model-default-De-UAjwg.js} +2 -2
  146. package/dist/{pairing-cli-Rsae0KnN.js → pairing-cli-CBMMCNnx.js} +5 -5
  147. package/dist/{pairing-store-BNhJOnWn.js → pairing-store-Be-ZQK87.js} +1 -1
  148. package/dist/{pairing-token-Dcy37-4s.js → pairing-token-B703A1U3.js} +7 -7
  149. package/dist/{paths-DObzwe08.js → paths-BWqg8NZT.js} +1 -1
  150. package/dist/{pi-auth-json-Db8XJVGL.js → pi-auth-json-D-vdh-nY.js} +6 -6
  151. package/dist/{pi-embedded-DJE9TMwq.js → pi-embedded-B9rtlNMc.js} +32 -16
  152. package/dist/{pi-embedded-helpers-D-OFjhdI.js → pi-embedded-helpers-j1JrlsI0.js} +6 -6
  153. package/dist/{pi-tools.policy-H2t-Xkfc.js → pi-tools.policy-CvAqjEH9.js} +3 -3
  154. package/dist/{plugin-auto-enable-DJBhDIMq.js → plugin-auto-enable-BXSJTxI7.js} +1 -1
  155. package/dist/{plugin-registry-tG7NXc3Y.js → plugin-registry-B43UosQh.js} +3 -3
  156. package/dist/{plugin-registry-Tlmjr-LX.js → plugin-registry-CS4WgHbu.js} +1 -1
  157. package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +1 -1
  158. package/dist/plugin-sdk/infra/symframe-broadcast.d.ts +18 -6
  159. package/dist/{plugins-cli-CRKD8aho.js → plugins-cli-BV2wbjfI.js} +54 -54
  160. package/dist/{plugins-cli-Cm0G_-Y5.js → plugins-cli-BY42hyHP.js} +7 -7
  161. package/dist/{ports-r7LBic2V.js → ports-Bi3V_3n9.js} +1 -1
  162. package/dist/{ports-gxLM5ahL.js → ports-CB_Iu83U.js} +2 -2
  163. package/dist/{program-DEmAlwmD.js → program-P9F1DxBa.js} +12 -12
  164. package/dist/{program-context-DRCRbDpu.js → program-context-BmXxHUKe.js} +40 -40
  165. package/dist/{prompt-select-styled-pomsR-zf.js → prompt-select-styled-B2ah467m.js} +7 -7
  166. package/dist/{prompt-select-styled-B41Tx9aC.js → prompt-select-styled-BlQZX6pK.js} +38 -38
  167. package/dist/{provider-auth-helpers-rKWs_r7a.js → provider-auth-helpers-Bgb_Bfp9.js} +1 -1
  168. package/dist/{provider-auth-helpers-CdQwOam7.js → provider-auth-helpers-WLwb6tL4.js} +6 -6
  169. package/dist/{push-apns-eCM0qmrY.js → push-apns-CBGvXev_.js} +4 -4
  170. package/dist/{push-apns-CZPUHftn.js → push-apns-DnSCjFu7.js} +1 -1
  171. package/dist/{pw-ai-BiBvIJzd.js → pw-ai-CP5pn3eU.js} +7 -7
  172. package/dist/{pw-ai-v__CyAlM.js → pw-ai-DOAsQ5NX.js} +1 -1
  173. package/dist/{pw-ai-DLsdzdgc.js → pw-ai-DY_6l11g.js} +1 -1
  174. package/dist/{qmd-manager-C8-M4Pru.js → qmd-manager-Dxyue7B1.js} +19 -19
  175. package/dist/{qr-cli-1sCVaPcF.js → qr-cli-DHw6muwK.js} +3 -3
  176. package/dist/{register.agent-BQPvYYdn.js → register.agent-BuEcmVg0.js} +12 -12
  177. package/dist/{register.agent-N1hoqMFR.js → register.agent-CXdTiqyP.js} +67 -67
  178. package/dist/{register.configure-BHHZ44xB.js → register.configure-DVcn-gCO.js} +70 -70
  179. package/dist/{register.configure-BAc3P4Z-.js → register.configure-YDKJ-KQg.js} +14 -14
  180. package/dist/{register.maintenance-lX0a3Hzl.js → register.maintenance-BiGvpEj-.js} +13 -13
  181. package/dist/{register.maintenance-DDgy5Iyy.js → register.maintenance-cpspl8D6.js} +67 -67
  182. package/dist/{register.message-Br-IH_0z.js → register.message-BIuLbESM.js} +7 -7
  183. package/dist/{register.message-B4lDhHpE.js → register.message-BjcYy5UG.js} +47 -47
  184. package/dist/{register.onboard-B-GoYJIc.js → register.onboard-C4vIASed.js} +6 -6
  185. package/dist/{register.onboard-Bv0s2_KV.js → register.onboard-D4RN92s2.js} +25 -25
  186. package/dist/{register.setup-DQ6KLkAI.js → register.setup-BvoXF0xl.js} +28 -28
  187. package/dist/{register.setup-4lNdC98i.js → register.setup-D-Jt2e1d.js} +6 -6
  188. package/dist/{register.status-health-sessions-Cg7bK5K2.js → register.status-health-sessions-BY9hMD1s.js} +8 -8
  189. package/dist/{register.status-health-sessions-ByGn71_M.js → register.status-health-sessions-DjDvCXBn.js} +41 -41
  190. package/dist/{register.subclis-FMlcLBX0.js → register.subclis-Cibmeapc.js} +20 -20
  191. package/dist/{replies-CbXXjn9X.js → replies-B_3j7R_Q.js} +1 -1
  192. package/dist/{reply-prefix-BFNeXT65.js → reply-prefix-CtZtkTJK.js} +1 -1
  193. package/dist/{resolve-route-C1IIA6kH.js → resolve-route-Du0VftVs.js} +1 -1
  194. package/dist/{routes-ivqbutvM.js → routes-BwTUoI5h.js} +10 -10
  195. package/dist/{rpc-Dk1Az_d8.js → rpc-BnAKPQDB.js} +1 -1
  196. package/dist/{rpc-JAmDaTYt.js → rpc-CwxSZZOx.js} +1 -1
  197. package/dist/{run-main-DSyeVDsT.js → run-main-BhEQjKtM.js} +20 -20
  198. package/dist/{sandbox-BkznAPKO.js → sandbox-CZGTCone.js} +18 -18
  199. package/dist/{sandbox-cli-Bb9cBtBH.js → sandbox-cli-DEtGT_4y.js} +13 -13
  200. package/dist/{security-cli-DmgGLP83.js → security-cli-CS-ZT1LE.js} +3 -3
  201. package/dist/{security-cli-D47LQbpf.js → security-cli-DJd7Fcdy.js} +29 -29
  202. package/dist/{send-B0jHSNMF.js → send-CxjvucMO.js} +7 -7
  203. package/dist/{server-context-ChcbJgNo.js → server-context-DXdk410X.js} +5 -5
  204. package/dist/{server-methods-DGBBt49x.js → server-methods-CWxr5b-w.js} +19 -13
  205. package/dist/{server-methods-BkHB2MOW.js → server-methods-DfVfzYqq.js} +68 -62
  206. package/dist/{server-node-events-C186LRm0.js → server-node-events-B0yC6hi1.js} +48 -48
  207. package/dist/{server-node-events-D-Akk3uq.js → server-node-events-ClDEcUTJ.js} +8 -8
  208. package/dist/{service-e6MzlLCd.js → service-CRZoXO_n.js} +15 -15
  209. package/dist/{session-dirs-C9E2G0yZ.js → session-dirs-a00Ad2SO.js} +2 -2
  210. package/dist/{session-utils-Cs1jlD-q.js → session-utils-CJhcRx3E.js} +14 -14
  211. package/dist/{sessions-Dxf5Kjig.js → sessions-BCc3THTm.js} +10 -10
  212. package/dist/{shared-1xPo9ygd.js → shared-C39SiDDJ.js} +1 -1
  213. package/dist/{shared-COtpr3Ad.js → shared-Dh-O8nRd.js} +3 -3
  214. package/dist/{skill-commands-DDGGlq68.js → skill-commands-DWvXs3lz.js} +4 -4
  215. package/dist/{skill-scanner-BCgVcIwi.js → skill-scanner-CIlHPszT.js} +5 -5
  216. package/dist/{skills-BwDmcZdt.js → skills-CYcBtLGH.js} +4 -4
  217. package/dist/{skills-cli-B-7TY-vS.js → skills-cli-CD9s3cgm.js} +7 -7
  218. package/dist/{skills-install-Dwzsjoc8.js → skills-install-BTa9IuQ6.js} +3 -3
  219. package/dist/{skills-remote-bz71Bstn.js → skills-remote-BcRQTDsZ.js} +3 -3
  220. package/dist/{skills-status-BKX1PjCc.js → skills-status-DLnCHUZ2.js} +1 -1
  221. package/dist/{sqlite-Cod7C5ba.js → sqlite-BpogPlQW.js} +5 -5
  222. package/dist/{status-CFgCSaDq.js → status-BWxLtb3D.js} +23 -23
  223. package/dist/{status-poPDyC8O.js → status-Doq8T1zj.js} +3 -3
  224. package/dist/{status-Bahhq7OQ.js → status-K1k4g3Ai.js} +1 -1
  225. package/dist/{status-D9LC5P_Y.js → status-ojZB_Lrf.js} +5 -5
  226. package/dist/{status.update-DGJi0OLl.js → status.update-CKfyV6zw.js} +3 -3
  227. package/dist/{subagent-registry-V2o45tIn.js → subagent-registry-BOt7g9hn.js} +21 -10
  228. package/dist/{symframe-cli-bxdpivve.js → symframe-cli-CrUtJw_7.js} +31 -7
  229. package/dist/{symframe-cli-ppdMo15M.js → symframe-cli-D1CtN3pf.js} +37 -13
  230. package/dist/{symi-root-BQ0IpoW2.js → symi-root-DeCVdZB4.js} +2 -2
  231. package/dist/{synthesis-B2EyHFXy.js → synthesis-BIQLrbys.js} +6 -6
  232. package/dist/{synthesis-BlJyO1E_.js → synthesis-Bc2QkGvt.js} +4 -4
  233. package/dist/{synthesis-CPSq83PP.js → synthesis-VZNnlUTf.js} +45 -45
  234. package/dist/{synthesis-C2WbvLOI.js → synthesis-yl24Ovw4.js} +4 -4
  235. package/dist/{system-cli-nPyjUPBH.js → system-cli-CvN-Wq9U.js} +3 -3
  236. package/dist/{system-cli-BroqLjZ6.js → system-cli-r7WJj0Xh.js} +7 -7
  237. package/dist/{systemd-CUIM0n5P.js → systemd-CsoVnIbM.js} +5 -5
  238. package/dist/{systemd-hints-CsrzMCTD.js → systemd-hints-QISwLlFU.js} +6 -6
  239. package/dist/{systemd-linger-BzYk7A6M.js → systemd-linger-BnhuRdbt.js} +1 -1
  240. package/dist/{tui-Bp9k5skv.js → tui-BxgdImL_.js} +2 -2
  241. package/dist/{tui-DzROrE20.js → tui-J7Jxp-FF.js} +7 -7
  242. package/dist/{tui-cli-BHBF8O-3.js → tui-cli-DR48dU_C.js} +19 -19
  243. package/dist/{tui-cli-Dv4hBFdc.js → tui-cli-DqvgN5ng.js} +3 -3
  244. package/dist/{unified-runner-CIQIkbvi.js → unified-runner-BV5TdNFv.js} +32 -16
  245. package/dist/{unified-runner-CduaBH_0.js → unified-runner-DXjH-prv.js} +117 -106
  246. package/dist/{update-yYduAjKd.js → update-Cb0Fmxic.js} +3 -3
  247. package/dist/{update-check-BCL_K7kx.js → update-check-u6Jgr1cz.js} +5 -5
  248. package/dist/{update-cli-WcLxjBiY.js → update-cli-CKpjWtlv.js} +77 -77
  249. package/dist/{update-cli-BKnHBe8a.js → update-cli-Dn6QQZLd.js} +14 -14
  250. package/dist/{update-runner-BLV8SI96.js → update-runner-G2YgEATs.js} +15 -15
  251. package/dist/{webhooks-cli-D5k-Y2A8.js → webhooks-cli-DjUITimx.js} +4 -4
  252. package/dist/{with-timeout-DPR4A2dx.js → with-timeout-CLrF-Yr_.js} +1 -1
  253. package/dist/{workspace-dirs-jKFQf7of.js → workspace-dirs-DCICLTHx.js} +1 -1
  254. package/dist/{wsl-CglTdtlb.js → wsl-DTi7eX-V.js} +2 -2
  255. package/extensions/memory-core/package.json +1 -1
  256. package/extensions/msteams/CHANGELOG.md +12 -0
  257. package/extensions/msteams/package.json +1 -1
  258. package/extensions/open-prose/package.json +1 -1
  259. package/extensions/outlook/package.json +1 -1
  260. package/extensions/slack/package.json +1 -1
  261. package/package.json +1 -1
@@ -4,16 +4,16 @@ import "./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 "./exec-DuYbft0z.js";
7
- import "./agent-scope-DOrZjOnW.js";
8
- import "./model-selection-7wdmO-Iw.js";
9
- import "./file-lock-BVUYnlQv.js";
10
- import { i as loadConfig } from "./config-B4jkreCN.js";
7
+ import "./agent-scope-Bnsyyeci.js";
8
+ import "./model-selection-CCTzD29o.js";
9
+ import "./file-lock-2AecMjCa.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
15
  import { r as normalizeChannelId } from "./plugins-CF5skkHh.js";
16
- import { c as listPairingChannels, l as notifyPairingApproved, n as approveChannelPairingCode, r as listChannelPairingRequests, s as getPairingAdapter } from "./pairing-store-BNhJOnWn.js";
16
+ import { c as listPairingChannels, l as notifyPairingApproved, n as approveChannelPairingCode, r as listChannelPairingRequests, s as getPairingAdapter } from "./pairing-store-Be-ZQK87.js";
17
17
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
18
18
  import { t as renderTable } from "./table-0A3xKJVC.js";
19
19
 
@@ -1,6 +1,6 @@
1
1
  import { _ as resolveStateDir, b as resolveRequiredHomeDir, h as resolveOAuthDir } from "./paths-By0XjHBk.js";
2
2
  import { g as safeParseJson } from "./utils-CTPsqyE_.js";
3
- import { t as withFileLock$1 } from "./file-lock-BVUYnlQv.js";
3
+ import { t as withFileLock$1 } from "./file-lock-2AecMjCa.js";
4
4
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-CF5skkHh.js";
5
5
  import crypto from "node:crypto";
6
6
  import path from "node:path";
@@ -2,12 +2,12 @@ import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
2
2
  import { t as safeEqualSecret } from "./secret-equal-CbntzRkh.js";
3
3
  import { randomBytes, randomUUID } from "node:crypto";
4
4
  import path from "node:path";
5
- import fs from "node:fs/promises";
5
+ import fsPromises from "node:fs/promises";
6
6
 
7
7
  //#region src/infra/json-files.ts
8
8
  async function readJsonFile(filePath) {
9
9
  try {
10
- const raw = await fs.readFile(filePath, "utf8");
10
+ const raw = await fsPromises.readFile(filePath, "utf8");
11
11
  return JSON.parse(raw);
12
12
  } catch {
13
13
  return null;
@@ -16,15 +16,15 @@ async function readJsonFile(filePath) {
16
16
  async function writeJsonAtomic(filePath, value, options) {
17
17
  const mode = options?.mode ?? 384;
18
18
  const dir = path.dirname(filePath);
19
- await fs.mkdir(dir, { recursive: true });
19
+ await fsPromises.mkdir(dir, { recursive: true });
20
20
  const tmp = `${filePath}.${randomUUID()}.tmp`;
21
- await fs.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
21
+ await fsPromises.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
22
22
  try {
23
- await fs.chmod(tmp, mode);
23
+ await fsPromises.chmod(tmp, mode);
24
24
  } catch {}
25
- await fs.rename(tmp, filePath);
25
+ await fsPromises.rename(tmp, filePath);
26
26
  try {
27
- await fs.chmod(filePath, mode);
27
+ await fsPromises.chmod(filePath, mode);
28
28
  } catch {}
29
29
  }
30
30
  function createAsyncLock() {
@@ -1,5 +1,5 @@
1
1
  import { B as resolvePreferredSymiTmpDir } from "./registry-Sbac4a4z.js";
2
- import { n as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-BdejYjW8.js";
2
+ import { n as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-B0Is-oLk.js";
3
3
  import path from "node:path";
4
4
 
5
5
  //#region src/browser/paths.ts
@@ -1,15 +1,15 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { b as ensureAuthProfileStore } from "./auth-profiles-Ce7R_25e.js";
3
- import { u as normalizeProviderId } from "./model-selection-7wdmO-Iw.js";
2
+ import { b as ensureAuthProfileStore } from "./auth-profiles-D5nYBj_Z.js";
3
+ import { u as normalizeProviderId } from "./model-selection-CCTzD29o.js";
4
4
  import { t as normalizeOptionalSecretInput } from "./normalize-secret-input-DjGU5EXe.js";
5
5
  import path from "node:path";
6
- import fs from "node:fs/promises";
6
+ import fsPromises from "node:fs/promises";
7
7
 
8
8
  //#region src/agents/pi-auth-json.ts
9
9
  var pi_auth_json_exports = /* @__PURE__ */ __exportAll({ ensurePiAuthJsonFromAuthProfiles: () => ensurePiAuthJsonFromAuthProfiles });
10
10
  async function readAuthJson(filePath) {
11
11
  try {
12
- const raw = await fs.readFile(filePath, "utf8");
12
+ const raw = await fsPromises.readFile(filePath, "utf8");
13
13
  const parsed = JSON.parse(raw);
14
14
  if (!parsed || typeof parsed !== "object") return {};
15
15
  return parsed;
@@ -120,11 +120,11 @@ async function ensurePiAuthJsonFromAuthProfiles(agentDir, options) {
120
120
  wrote: false,
121
121
  authPath
122
122
  };
123
- await fs.mkdir(agentDir, {
123
+ await fsPromises.mkdir(agentDir, {
124
124
  recursive: true,
125
125
  mode: 448
126
126
  });
127
- await fs.writeFile(authPath, `${JSON.stringify(existing, null, 2)}\n`, { mode: 384 });
127
+ await fsPromises.writeFile(authPath, `${JSON.stringify(existing, null, 2)}\n`, { mode: 384 });
128
128
  return {
129
129
  wrote: true,
130
130
  authPath
@@ -9,7 +9,7 @@ import { i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as reso
9
9
  import { t as normalizeChatType } from "./chat-type-Acj2OK2p.js";
10
10
  import { i as resolveSlackAccount, n as listChannelPlugins, o as resolveSlackAppToken, r as normalizeChannelId$1, s as resolveSlackBotToken, t as getChannelPlugin } from "./plugins-CZ_mYwXq.js";
11
11
  import { S as resolveSlackChannelId, _ as resolveSlackWebClientOptions, a as sendMessageSlack, b as buildSlackBlocksFallbackText, c as getDefaultLocalRoots, d as fetchRemoteMedia, f as readResponseWithLimit, g as createSlackWebClient, h as fetchWithTimeout, i as resolveSlackThreadTs, l as loadWebMedia, m as bindAbortRelay, n as deliverReplies, o as renderMarkdownWithMarkers, p as fetchWithSsrFGuard, s as markdownToIRWithMeta, t as createSlackReplyDeliveryPlan, u as MediaFetchError, v as parseSlackBlocksInput, x as parseSlackTarget, y as validateSlackBlocksArray } from "./replies-0nzkXt6o.js";
12
- import { $ as loadSessionStore, $t as resolveToolProfilePolicy, A as formatRawAssistantErrorForUi, At as resolveMainSessionKey, B as isRateLimitAssistantError, Bt as saveMediaBuffer, C as downgradeOpenAIReasoningBlocks, Ct as resolveChannelResetConfig, D as classifyFailoverReason, Dt as DEFAULT_RESET_TRIGGERS, E as BILLING_ERROR_USER_MESSAGE, Et as resolveThreadFlag, F as isCompactionFailureError, Ft as createBrowserRouteContext, G as parseImageSizeError, Gt as resolveBrowserControlAuth, H as isTimeoutErrorMessage, Ht as resolveExistingPathsWithinRoot, I as isContextOverflowError, It as registerBrowserRoutes, J as resolveSandboxContext, Jt as collectExplicitAllowlist, K as sanitizeUserFacingText, Kt as applyOwnerOnlyToolPolicy, L as isFailoverAssistantError, Lt as resolveBrowserConfig, M as isAuthAssistantError, Mt as resolveGroupSessionKey, N as isBillingAssistantError, Nt as acquireSessionWriteLock, O as formatAssistantErrorText, Ot as resolveFreshSessionTotalTokens, P as isCloudCodeAssistFormatError, Pt as resolveSessionLockMaxHoldFromTimeout, Q as resolveAndPersistSessionFile, Qt as normalizeToolName$1, R as isFailoverErrorMessage, Rt as resolveProfile, S as extractToolResultId, St as evaluateSessionFreshness, T as isGoogleModelApi, Tt as resolveSessionResetType, U as isTransientHttpError, Ut as getBridgeAuthForPort, V as isRawApiErrorPayload, Vt as DEFAULT_UPLOAD_DIR, W as parseImageDimensionError, Wt as ensureBrowserControlAuth, X as extractDeliveryInfo, Xt as expandToolGroups, Y as resolveSandboxRuntimeStatus, Yt as expandPolicyWithPluginGroups, Z as appendAssistantMessageToSessionTranscript, Zt as mergeAlsoAllowPolicy, _ as sanitizeSessionMessagesImages, _t as INPUT_PROVENANCE_KIND_VALUES, a as normalizeChannelTargetInput, an as resolveBootstrapMaxChars, at as updateSessionStoreEntry, b as resolveImageSanitizationLimits, bt as normalizeInputProvenance, c as parseReplyDirectives, cn as getGlobalHookRunner, ct as deliveryContextFromSession, d as parseInlineDirectives$1, dt as normalizeDeliveryContext, en as stripPluginOnlyAllowlist, et as readSessionUpdatedAt, f as validateAnthropicTurns, ft as normalizeSessionDeliveryFields, g as normalizeTextForComparison, gt as extractToolCallNames, h as isMessagingToolDuplicateNormalized, ht as countToolResults, i as buildTargetResolverSignature, in as ensureSessionHeader, it as updateSessionStore, j as getApiErrorPayloadFingerprint, jt as deriveSessionMetaPatch, k as formatBillingErrorMessage, kt as canonicalizeMainSessionAlias, l as MEDIA_TOKEN_RE, ln as initializeGlobalHookRunner, lt as deliveryContextKey, m as pickFallbackThinkingLevel, mt as capArrayByJsonBytes, nn as matchesAnyGlobPattern, o as normalizeTargetForProvider, on as resolveBootstrapTotalMaxChars, ot as isCacheEnabled, p as validateGeminiTurns, pt as archiveSessionTranscripts, q as ensureSandboxWorkspaceForSession, qt as buildPluginToolGroups, r as normalizeReplyPayloadsForDelivery, rn as buildBootstrapContextFiles, rt as updateLastRoute, s as throwIfAborted, sn as sanitizeGoogleTurnOrdering, st as resolveCacheTtlMs$1, t as deliverOutboundPayloads, tn as compileGlobPatterns, tt as recordSessionMetaFromInbound, u as splitMediaFromOutput, ut as mergeDeliveryContext, v as sanitizeImageBlocks, vt as applyInputProvenanceToUserMessage, w as isAntigravityClaude, wt as resolveSessionResetPolicy, x as extractToolCallsFromAssistant, xt as resolveSessionKey, y as sanitizeToolResultImages, yt as hasInterSessionUserProvenance, z as isLikelyContextOverflowError, zt as getMediaDir } from "./deliver-q23ar_Pm.js";
12
+ import { $ as loadSessionStore, $t as resolveToolProfilePolicy, A as formatRawAssistantErrorForUi, At as resolveMainSessionKey, B as isRateLimitAssistantError, Bt as saveMediaBuffer, C as downgradeOpenAIReasoningBlocks, Ct as resolveChannelResetConfig, D as classifyFailoverReason, Dt as DEFAULT_RESET_TRIGGERS, E as BILLING_ERROR_USER_MESSAGE, Et as resolveThreadFlag, F as isCompactionFailureError, Ft as createBrowserRouteContext, G as parseImageSizeError, Gt as resolveBrowserControlAuth, H as isTimeoutErrorMessage, Ht as resolveExistingPathsWithinRoot, I as isContextOverflowError, It as registerBrowserRoutes, J as resolveSandboxContext, Jt as collectExplicitAllowlist, K as sanitizeUserFacingText, Kt as applyOwnerOnlyToolPolicy, L as isFailoverAssistantError, Lt as resolveBrowserConfig, M as isAuthAssistantError, Mt as resolveGroupSessionKey, N as isBillingAssistantError, Nt as acquireSessionWriteLock, O as formatAssistantErrorText, Ot as resolveFreshSessionTotalTokens, P as isCloudCodeAssistFormatError, Pt as resolveSessionLockMaxHoldFromTimeout, Q as resolveAndPersistSessionFile, Qt as normalizeToolName$1, R as isFailoverErrorMessage, Rt as resolveProfile, S as extractToolResultId, St as evaluateSessionFreshness, T as isGoogleModelApi, Tt as resolveSessionResetType, U as isTransientHttpError, Ut as getBridgeAuthForPort, V as isRawApiErrorPayload, Vt as DEFAULT_UPLOAD_DIR, W as parseImageDimensionError, Wt as ensureBrowserControlAuth, X as extractDeliveryInfo, Xt as expandToolGroups, Y as resolveSandboxRuntimeStatus, Yt as expandPolicyWithPluginGroups, Z as appendAssistantMessageToSessionTranscript, Zt as mergeAlsoAllowPolicy, _ as sanitizeSessionMessagesImages, _t as INPUT_PROVENANCE_KIND_VALUES, a as normalizeChannelTargetInput, an as resolveBootstrapMaxChars, at as updateSessionStoreEntry, b as resolveImageSanitizationLimits, bt as normalizeInputProvenance, c as parseReplyDirectives, cn as getGlobalHookRunner, ct as deliveryContextFromSession, d as parseInlineDirectives$1, dt as normalizeDeliveryContext, en as stripPluginOnlyAllowlist, et as readSessionUpdatedAt, f as validateAnthropicTurns, ft as normalizeSessionDeliveryFields, g as normalizeTextForComparison, gt as extractToolCallNames, h as isMessagingToolDuplicateNormalized, ht as countToolResults, i as buildTargetResolverSignature, in as ensureSessionHeader, it as updateSessionStore, j as getApiErrorPayloadFingerprint, jt as deriveSessionMetaPatch, k as formatBillingErrorMessage, kt as canonicalizeMainSessionAlias, l as MEDIA_TOKEN_RE, ln as initializeGlobalHookRunner, lt as deliveryContextKey, m as pickFallbackThinkingLevel, mt as capArrayByJsonBytes, nn as matchesAnyGlobPattern, o as normalizeTargetForProvider, on as resolveBootstrapTotalMaxChars, ot as isCacheEnabled, p as validateGeminiTurns, pt as archiveSessionTranscripts, q as ensureSandboxWorkspaceForSession, qt as buildPluginToolGroups, r as normalizeReplyPayloadsForDelivery, rn as buildBootstrapContextFiles, rt as updateLastRoute, s as throwIfAborted, sn as sanitizeGoogleTurnOrdering, st as resolveCacheTtlMs$1, t as deliverOutboundPayloads, tn as compileGlobPatterns, tt as recordSessionMetaFromInbound, u as splitMediaFromOutput, ut as mergeDeliveryContext, v as sanitizeImageBlocks, vt as applyInputProvenanceToUserMessage, w as isAntigravityClaude, wt as resolveSessionResetPolicy, x as extractToolCallsFromAssistant, xt as resolveSessionKey, y as sanitizeToolResultImages, yt as hasInterSessionUserProvenance, z as isLikelyContextOverflowError, zt as getMediaDir } from "./deliver-f3cIWxXT.js";
13
13
  import { a as logMessageProcessed, i as logLaneEnqueue, o as logMessageQueued, r as logLaneDequeue, s as logSessionStateChange, t as diag } from "./diagnostic-BdRnGknC.js";
14
14
  import { n as getDiagnosticSessionState } from "./diagnostic-session-state-DpxCUzoM.js";
15
15
  import { S as GATEWAY_CLIENT_NAMES, _ as listDeliverableMessageChannels, a as chunkText, b as GATEWAY_CLIENT_IDS, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, g as isMarkdownCapableMessageChannel, h as isInternalMessageChannel, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, m as isDeliverableMessageChannel, o as chunkTextWithMode, p as INTERNAL_MESSAGE_CHANNEL, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt, v as normalizeMessageChannel, x as GATEWAY_CLIENT_MODES, y as resolveGatewayMessageChannel } from "./chunk-CAZujdOi.js";
@@ -18,7 +18,7 @@ import { C as unsetConfigValueAtPath, S as setConfigValueAtPath, T as VERSION, _
18
18
  import { t as parseBooleanValue } from "./boolean-BW6OTjPi.js";
19
19
  import { i as resolveShellEnvFallbackTimeoutMs, n as getShellPathFromLoginShell, s as isTruthyEnvValue } from "./shell-env-DgjeObDZ.js";
20
20
  import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverSymiPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-CAWGTwb5.js";
21
- import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-DNssqQJs.js";
21
+ import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-3jl2ulOE.js";
22
22
  import { n as resolveCliName, t as formatCliCommand } from "./command-format-DPd9RN2g.js";
23
23
  import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, h as parseFrontmatterBlock, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-DO7WNsVJ.js";
24
24
  import { n as redactToolDetail } from "./redact-DSOAcWMe.js";
@@ -29,7 +29,7 @@ import { n as resolveConversationLabel } from "./conversation-label-DTTqF8gH.js"
29
29
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-BsT3BvfH.js";
30
30
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-ChU6IQwp.js";
31
31
  import { n as saveJsonFile, t as loadJsonFile } from "./json-file-B7D44OOV.js";
32
- import { a as parseGeminiAuth, c as resolveMemorySearchConfig, d as requireApiKey, f as resolveApiKeyForProvider, h as resolveModelAuthMode, i as resolveOllamaBaseUrl, l as getApiKeyForModel, m as resolveEnvApiKey, n as retryAsync, o as collectProviderApiKeysForExecution, p as resolveAwsSdkEnvVarName, r as probeOllamaEmbeddingModels, s as executeWithApiKeyRotation, u as getCustomProviderApiKey } from "./manager-BhEbaYDa.js";
32
+ import { a as parseGeminiAuth, c as resolveMemorySearchConfig, d as requireApiKey, f as resolveApiKeyForProvider, h as resolveModelAuthMode, i as resolveOllamaBaseUrl, l as getApiKeyForModel, m as resolveEnvApiKey, n as retryAsync, o as collectProviderApiKeysForExecution, p as resolveAwsSdkEnvVarName, r as probeOllamaEmbeddingModels, s as executeWithApiKeyRotation, u as getCustomProviderApiKey } from "./manager-V4UCf0Av.js";
33
33
  import { r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-dYUr1mDQ.js";
34
34
  import { c as normalizeExtraMemoryPaths, f as runTasksWithConcurrency, s as listMemoryFiles } from "./internal-Ce-sg7EN.js";
35
35
  import { n as resolveMarkdownTableMode } from "./markdown-tables-jQzXAsf3.js";
@@ -53,7 +53,7 @@ import { fileURLToPath } from "node:url";
53
53
  import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
54
54
  import crypto, { X509Certificate, createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
55
55
  import AjvPkg from "ajv";
56
- import { WebSocket } from "ws";
56
+ import { WebSocket as WebSocket$1 } from "ws";
57
57
  import { Buffer as Buffer$1 } from "node:buffer";
58
58
  import { complete, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
59
59
  import { BedrockClient, ListFoundationModelsCommand } from "@aws-sdk/client-bedrock";
@@ -3390,7 +3390,7 @@ async function getMemorySearchManager(params) {
3390
3390
  const wrapper = new FallbackMemoryManager({
3391
3391
  primary,
3392
3392
  fallbackFactory: async () => {
3393
- const { MemoryIndexManager } = await import("./manager-BhEbaYDa.js").then((n) => n.t);
3393
+ const { MemoryIndexManager } = await import("./manager-V4UCf0Av.js").then((n) => n.t);
3394
3394
  return await MemoryIndexManager.get(params);
3395
3395
  }
3396
3396
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -3403,7 +3403,7 @@ async function getMemorySearchManager(params) {
3403
3403
  }
3404
3404
  }
3405
3405
  try {
3406
- const { MemoryIndexManager } = await import("./manager-BhEbaYDa.js").then((n) => n.t);
3406
+ const { MemoryIndexManager } = await import("./manager-V4UCf0Av.js").then((n) => n.t);
3407
3407
  return { manager: await MemoryIndexManager.get(params) };
3408
3408
  } catch (err) {
3409
3409
  return {
@@ -5450,7 +5450,12 @@ const ChatSymframePushParamsSchema = Type.Object({
5450
5450
  action: Type.Union([
5451
5451
  Type.Literal("add"),
5452
5452
  Type.Literal("update"),
5453
- Type.Literal("remove")
5453
+ Type.Literal("remove"),
5454
+ Type.Literal("dwell"),
5455
+ Type.Literal("release"),
5456
+ Type.Literal("recall"),
5457
+ Type.Literal("pin"),
5458
+ Type.Literal("unpin")
5454
5459
  ]),
5455
5460
  id: Type.Optional(NonEmptyString),
5456
5461
  force: Type.Optional(Type.Boolean()),
@@ -5955,7 +5960,7 @@ var GatewayClient = class {
5955
5960
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
5956
5961
  });
5957
5962
  }
5958
- this.ws = new WebSocket(url, wsOptions);
5963
+ this.ws = new WebSocket$1(url, wsOptions);
5959
5964
  this.ws.on("open", () => {
5960
5965
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
5961
5966
  const tlsError = this.validateTlsFingerprint();
@@ -6174,7 +6179,7 @@ var GatewayClient = class {
6174
6179
  return null;
6175
6180
  }
6176
6181
  async request(method, params, opts) {
6177
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
6182
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
6178
6183
  const id = randomUUID();
6179
6184
  const frame = {
6180
6185
  type: "req",
@@ -7124,7 +7129,7 @@ async function routeReply(params) {
7124
7129
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
7125
7130
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
7126
7131
  try {
7127
- const { deliverOutboundPayloads } = await import("./deliver-q23ar_Pm.js").then((n) => n.n);
7132
+ const { deliverOutboundPayloads } = await import("./deliver-f3cIWxXT.js").then((n) => n.n);
7128
7133
  return {
7129
7134
  ok: true,
7130
7135
  messageId: (await deliverOutboundPayloads({
@@ -26503,6 +26508,12 @@ function buildAgentSystemPrompt(params) {
26503
26508
  " - `awaiting` — deferred/scheduled/in-flight work (sub-agent output, scheduled task)",
26504
26509
  "Renderer `type`: `text` · `markdown` · `code` (with `language` hljs hint) · `email-draft` (with `email: { from?, to, cc?, bcc?, subject, body }`) · `pdf` · `audio` · `video` (`url` + optional `mimeType`).",
26505
26510
  "Use `action: \"update\"` with the same `id` to revise a card you pushed earlier (e.g. iterate a draft across turns). `action: \"remove\"` to dismiss. Set `force: true` only when overriding a sticky card — sticky cards represent the user's pinned context and shouldn't be clobbered by routine pushes.",
26511
+ "Attention verbs (Stage C — id-only, no card body):",
26512
+ " - `dwell` — pull a card to the top with a brief highlight pulse. Use when the user's next message references something you pushed earlier and you want to draw their eye to it.",
26513
+ " - `release` — soft-dismiss a card with a fade-out. Recoverable via `recall` for ~10 most-recent. Prefer this over `remove` when letting a thought go gracefully (e.g. a weighing option just decided against).",
26514
+ " - `recall` — re-summon a recently-released card (id optional → most-recent).",
26515
+ " - `pin` — persist a card across reload + /new (user-curated; the user can also pin from the UI).",
26516
+ " - `unpin` — remove the pin; does NOT drop the card.",
26506
26517
  "After pushing, briefly tell the user what's in the panel (e.g. \"Drafted the email — shown in your panel.\"). Don't repeat the full content in chat.",
26507
26518
  "",
26508
26519
  ...compactMode ? [] : [
@@ -33939,7 +33950,12 @@ const ARTIFACT_TYPES = [
33939
33950
  const ARTIFACT_ACTIONS = [
33940
33951
  "add",
33941
33952
  "update",
33942
- "remove"
33953
+ "remove",
33954
+ "dwell",
33955
+ "release",
33956
+ "recall",
33957
+ "pin",
33958
+ "unpin"
33943
33959
  ];
33944
33960
  /**
33945
33961
  * Stage A: intent vocabulary added as orthogonal metadata to renderer type.
@@ -33996,19 +34012,19 @@ function createDisplayArtifactTool() {
33996
34012
  return {
33997
34013
  label: "Display Artifact",
33998
34014
  name: "display_artifact",
33999
- description: "Push a card into the Glass UI symframe — the right-column window into your mind. Use for content that represents what you're thinking about, holding, considering, or producing — drafts, references you're keeping in view, options being weighed, generated artifacts. Always set `intent` (holding | weighing | producing | drafted | reference | awaiting). Renderer `type`: text | markdown | code | email-draft | pdf | audio | video. Returns the card id; pass action=update with the same id to revise (set force:true to update a sticky card), or action=remove to dismiss.",
34015
+ description: "Push a card into the Glass UI symframe — the right-column window into your mind. Use for content that represents what you're thinking about, holding, considering, or producing — drafts, references you're keeping in view, options being weighed, generated artifacts. Always set `intent` (holding | weighing | producing | drafted | reference | awaiting). Renderer `type`: text | markdown | code | email-draft | pdf | audio | video. Returns the card id; pass action=update with the same id to revise (set force:true to update a sticky card), action=remove to dismiss. Stage-C attention verbs (id-only, no card body): action=dwell pulls a card to the top with a brief highlight, action=release softly fades a card out (recoverable via recall), action=recall re-summons a recently-released card (id optional → most recent), action=pin persists across reload, action=unpin removes the pin.",
34000
34016
  parameters: DisplayArtifactSchema,
34001
34017
  execute: async (_toolCallId, args) => {
34002
34018
  const params = args;
34003
34019
  const actionRaw = readStringParam(params, "action");
34004
- const action = actionRaw === "update" || actionRaw === "remove" ? actionRaw : "add";
34020
+ const action = ARTIFACT_ACTIONS.includes(actionRaw ?? "") ? actionRaw : "add";
34005
34021
  const id = readStringParam(params, "id") || (action === "add" ? genCardId() : void 0);
34006
- if (action !== "add" && !id) return jsonResult({
34022
+ if (action !== "add" && action !== "recall" && !id) return jsonResult({
34007
34023
  ok: false,
34008
34024
  error: `${action} requires an id`
34009
34025
  });
34010
34026
  const force = params.force === true;
34011
- if (action === "remove") {
34027
+ if (action === "remove" || action === "dwell" || action === "release" || action === "recall" || action === "pin" || action === "unpin") {
34012
34028
  emitSymframePush({
34013
34029
  action,
34014
34030
  id,
@@ -42274,7 +42290,7 @@ async function deliverSessionMaintenanceWarning(params) {
42274
42290
  return;
42275
42291
  }
42276
42292
  try {
42277
- const { deliverOutboundPayloads } = await import("./deliver-q23ar_Pm.js").then((n) => n.n);
42293
+ const { deliverOutboundPayloads } = await import("./deliver-f3cIWxXT.js").then((n) => n.n);
42278
42294
  await deliverOutboundPayloads({
42279
42295
  cfg: params.cfg,
42280
42296
  channel,
@@ -1,11 +1,11 @@
1
1
  import { x as truncateUtf16Safe } from "./utils-CTPsqyE_.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { s as formatSandboxToolPolicyBlockedMessage } from "./sandbox-BkznAPKO.js";
4
- import { i as getImageMetadata, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-L70xVnpG.js";
3
+ import { s as formatSandboxToolPolicyBlockedMessage } from "./sandbox-CZGTCone.js";
4
+ import { i as getImageMetadata, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-BzCBIakN.js";
5
5
  import { s as normalizeThinkLevel } from "./thinking-COroyVA5.js";
6
6
  import { createHash } from "node:crypto";
7
7
  import path from "node:path";
8
- import fs from "node:fs/promises";
8
+ import fsPromises from "node:fs/promises";
9
9
 
10
10
  //#region src/agents/pi-embedded-helpers/bootstrap.ts
11
11
  function isBase64Signature(value) {
@@ -102,10 +102,10 @@ function clampToBudget(content, budget) {
102
102
  async function ensureSessionHeader(params) {
103
103
  const file = params.sessionFile;
104
104
  try {
105
- await fs.stat(file);
105
+ await fsPromises.stat(file);
106
106
  return;
107
107
  } catch {}
108
- await fs.mkdir(path.dirname(file), { recursive: true });
108
+ await fsPromises.mkdir(path.dirname(file), { recursive: true });
109
109
  const entry = {
110
110
  type: "session",
111
111
  version: 2,
@@ -113,7 +113,7 @@ async function ensureSessionHeader(params) {
113
113
  timestamp: (/* @__PURE__ */ new Date()).toISOString(),
114
114
  cwd: params.cwd
115
115
  };
116
- await fs.writeFile(file, `${JSON.stringify(entry)}\n`, "utf-8");
116
+ await fsPromises.writeFile(file, `${JSON.stringify(entry)}\n`, "utf-8");
117
117
  }
118
118
  function buildBootstrapContextFiles(files, opts) {
119
119
  const maxChars = opts?.maxChars ?? DEFAULT_BOOTSTRAP_MAX_CHARS;
@@ -1,7 +1,7 @@
1
1
  import { S as resolveThreadParentSessionKey, c as resolveAgentIdFromSessionKey } from "./session-key-DUSb7CCb.js";
2
- import { r as resolveAgentConfig } from "./agent-scope-DOrZjOnW.js";
3
- import { A as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH } from "./config-B4jkreCN.js";
4
- import { T as matchesAnyGlobPattern, w as compileGlobPatterns, x as normalizeToolName, y as expandToolGroups } from "./sandbox-BkznAPKO.js";
2
+ import { r as resolveAgentConfig } from "./agent-scope-Bnsyyeci.js";
3
+ import { A as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH } from "./config-BngIfn5l.js";
4
+ import { T as matchesAnyGlobPattern, w as compileGlobPatterns, x as normalizeToolName, y as expandToolGroups } from "./sandbox-CZGTCone.js";
5
5
  import { a as resolveChannelGroupToolsPolicy, t as getChannelDock } from "./dock-hF45sewN.js";
6
6
  import { l as normalizeMessageChannel } from "./message-channel-DgjXWzf-.js";
7
7
 
@@ -1,6 +1,6 @@
1
1
  import { o as getChatChannelMeta, s as listChatChannels, u as normalizeChatChannelId } from "./registry-Sbac4a4z.js";
2
2
  import { u as isRecord } from "./utils-CTPsqyE_.js";
3
- import { u as normalizeProviderId } from "./model-selection-7wdmO-Iw.js";
3
+ import { u as normalizeProviderId } from "./model-selection-CCTzD29o.js";
4
4
  import { n as getChannelPluginCatalogEntry, r as listChannelPluginCatalogEntries } from "./catalog-BptA-dUv.js";
5
5
  import { t as ensurePluginAllowlisted } from "./plugins-allowlist-CAXiY1du.js";
6
6
 
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { s as loadSymiPlugins } from "./unified-runner-CduaBH_0.js";
2
+ import { s as loadSymiPlugins } from "./unified-runner-DXjH-prv.js";
3
3
  import { d as getActivePluginRegistry } from "./registry-Sbac4a4z.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
5
- import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
6
- import { i as loadConfig } from "./config-B4jkreCN.js";
5
+ import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
6
+ import { i as loadConfig } from "./config-BngIfn5l.js";
7
7
 
8
8
  //#region src/cli/plugin-registry.ts
9
9
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { M as getActivePluginRegistry, o as createSubsystemLogger } from "./entry.js";
3
3
  import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-C-Jte08L.js";
4
4
  import { i as loadConfig } from "./config-D7TcU4qN.js";
5
- import { m as loadSymiPlugins } from "./subagent-registry-V2o45tIn.js";
5
+ import { m as loadSymiPlugins } from "./subagent-registry-BOt7g9hn.js";
6
6
 
7
7
  //#region src/cli/plugin-registry.ts
8
8
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -32,7 +32,7 @@ export declare const ChatSkillsListParamsSchema: import("@sinclair/typebox").TOb
32
32
  * a schema bump.
33
33
  */
34
34
  export declare const ChatSymframePushParamsSchema: import("@sinclair/typebox").TObject<{
35
- action: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"add">, import("@sinclair/typebox").TLiteral<"update">, import("@sinclair/typebox").TLiteral<"remove">]>;
35
+ action: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"add">, import("@sinclair/typebox").TLiteral<"update">, import("@sinclair/typebox").TLiteral<"remove">, import("@sinclair/typebox").TLiteral<"dwell">, import("@sinclair/typebox").TLiteral<"release">, import("@sinclair/typebox").TLiteral<"recall">, import("@sinclair/typebox").TLiteral<"pin">, import("@sinclair/typebox").TLiteral<"unpin">]>;
36
36
  id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
37
37
  /**
38
38
  * Stage A: required to update or remove a sticky card. Sticky cards
@@ -1,13 +1,25 @@
1
+ /**
2
+ * The symframe broadcast action union.
3
+ *
4
+ * Stage A (3.5.19): add | update | remove + sticky-card force flag.
5
+ * Stage C (3.5.21): dwell | release | recall | pin | unpin — attention
6
+ * verbs that treat the panel as a mind window rather than a card list.
7
+ * - dwell pull the card to the top with a brief highlight pulse
8
+ * - release soft-dismiss with fade-out; recoverable via recall
9
+ * - recall re-summon a released card (id optional → most recent)
10
+ * - pin persist across reload/reset via localStorage
11
+ * - unpin remove the pin (does NOT drop the card)
12
+ * Stage D (planned): setMode for the layout posture.
13
+ */
14
+ export type SymframePushAction = "add" | "update" | "remove" | "dwell" | "release" | "recall" | "pin" | "unpin";
1
15
  export type SymframePushPayload = {
2
- action: "add" | "update" | "remove";
16
+ action: SymframePushAction;
3
17
  id?: string;
4
18
  card?: Record<string, unknown>;
5
19
  /**
6
- * Stage A: required to update or remove a sticky card. Sticky cards are
7
- * registry-managed wrappers around native panels (subagents, scheduling)
8
- * that should not be patched/dismissed by routine pushes — only an
9
- * explicit force from the agent/CLI/RPC overrides the guard.
10
- * @see glass-ui/js/symframe.js update() and remove()
20
+ * Required to update / remove / release a sticky card. Sticky cards
21
+ * wrap native panels (subagents, scheduling) or any card pushed with
22
+ * sticky:true; without force the registry refuses the operation.
11
23
  */
12
24
  force?: boolean;
13
25
  };
@@ -1,103 +1,103 @@
1
- import "./unified-runner-CduaBH_0.js";
1
+ import "./unified-runner-DXjH-prv.js";
2
2
  import { j as theme } from "./registry-Sbac4a4z.js";
3
3
  import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
4
4
  import { _ as shortenHomeInString, h as resolveUserPath, p as resolveConfigDir, v as shortenHomePath } from "./utils-CTPsqyE_.js";
5
5
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
6
- import "./auth-profiles-Ce7R_25e.js";
6
+ import "./auth-profiles-D5nYBj_Z.js";
7
7
  import "./exec-DuYbft0z.js";
8
- import "./agent-scope-DOrZjOnW.js";
9
- import "./model-selection-7wdmO-Iw.js";
10
- import "./file-lock-BVUYnlQv.js";
8
+ import "./agent-scope-Bnsyyeci.js";
9
+ import "./model-selection-CCTzD29o.js";
10
+ import "./file-lock-2AecMjCa.js";
11
11
  import "./agent-paths-BbZSGrUA.js";
12
- import "./pi-embedded-helpers-D-OFjhdI.js";
13
- import { i as loadConfig, l as writeConfigFile } from "./config-B4jkreCN.js";
12
+ import "./pi-embedded-helpers-j1JrlsI0.js";
13
+ import { i as loadConfig, l as writeConfigFile } from "./config-BngIfn5l.js";
14
14
  import "./boolean-CbZoNRMn.js";
15
15
  import "./env-BRnPI9sO.js";
16
16
  import "./shell-env-Dc3iU7HK.js";
17
17
  import { m as defaultSlotIdForKey, p as applyExclusiveSlotSelection, s as resolveBundledPluginsDir, t as clearPluginManifestRegistryCache } from "./manifest-registry-D1MLZEjS.js";
18
- import "./sandbox-BkznAPKO.js";
19
- import "./chrome-DJChpTwP.js";
18
+ import "./sandbox-CZGTCone.js";
19
+ import "./chrome-38OnGyuN.js";
20
20
  import { u as promptYesNo } from "./tailscale-DpKBMIvx.js";
21
21
  import "./auth-Bkx-QuRN.js";
22
- import "./server-context-ChcbJgNo.js";
22
+ import "./server-context-DXdk410X.js";
23
23
  import "./frontmatter-B_jqcova.js";
24
- import "./skills-BwDmcZdt.js";
25
- import "./routes-ivqbutvM.js";
24
+ import "./skills-CYcBtLGH.js";
25
+ import "./routes-BwTUoI5h.js";
26
26
  import "./redact-B3O-RBO1.js";
27
27
  import "./errors-bI7Tdx75.js";
28
- import "./fs-safe-BdejYjW8.js";
29
- import "./paths-DObzwe08.js";
28
+ import "./fs-safe-B0Is-oLk.js";
29
+ import "./paths-BWqg8NZT.js";
30
30
  import "./ssrf-DOZRI5XH.js";
31
- import "./image-ops-L70xVnpG.js";
32
- import "./ports-gxLM5ahL.js";
31
+ import "./image-ops-BzCBIakN.js";
32
+ import "./ports-CB_Iu83U.js";
33
33
  import "./trash-_YhavPQI.js";
34
- import "./sessions-Dxf5Kjig.js";
34
+ import "./sessions-BCc3THTm.js";
35
35
  import "./dock-hF45sewN.js";
36
36
  import "./message-channel-DgjXWzf-.js";
37
37
  import "./plugins-CF5skkHh.js";
38
- import "./send-B0jHSNMF.js";
38
+ import "./send-CxjvucMO.js";
39
39
  import "./paths-BtvQ7JvU.js";
40
40
  import "./thinking-COroyVA5.js";
41
41
  import "./tokens-0yh2UnJq.js";
42
- import "./deliver-lTZLIQqf.js";
42
+ import "./deliver-CWMFmMCv.js";
43
43
  import "./diagnostic-DbT9t0Sh.js";
44
44
  import "./diagnostic-session-state-DnkpMfCl.js";
45
- import "./model-auth-1EAQvYRv.js";
45
+ import "./model-auth-_C07_3Yr.js";
46
46
  import "./github-copilot-token-D-FdDfee.js";
47
- import "./models-config-B5Xxy-c-.js";
48
- import "./pi-auth-json-Db8XJVGL.js";
47
+ import "./models-config-DlXge3Sd.js";
48
+ import "./pi-auth-json-D-vdh-nY.js";
49
49
  import "./session-cost-usage-D3mgssM_.js";
50
- import "./session-utils-Cs1jlD-q.js";
51
- import "./with-timeout-DPR4A2dx.js";
52
- import "./reply-prefix-BFNeXT65.js";
53
- import "./memory-DavRjdTi.js";
54
- import "./manager-CHLdCC6u.js";
55
- import "./sqlite-Cod7C5ba.js";
50
+ import "./session-utils-CJhcRx3E.js";
51
+ import "./with-timeout-CLrF-Yr_.js";
52
+ import "./reply-prefix-CtZtkTJK.js";
53
+ import "./memory-BFnx3v3_.js";
54
+ import "./manager-DG6PODgu.js";
55
+ import "./sqlite-BpogPlQW.js";
56
56
  import "./chunk-BxfKjCUx.js";
57
57
  import "./markdown-tables-CS1Tvb3z.js";
58
58
  import "./fetch-guard-JHxT9355.js";
59
- import "./local-roots-CgDCgCuM.js";
59
+ import "./local-roots-2Jb79HZ8.js";
60
60
  import "./commands-DUzLGgEZ.js";
61
- import "./commands-registry-Ca5hh7nh.js";
62
- import "./client-k0MT6NBw.js";
63
- import "./call-BccaLPi8.js";
64
- import "./pairing-token-Dcy37-4s.js";
61
+ import "./commands-registry-CwXsDVuO.js";
62
+ import "./client-CTrfpKT3.js";
63
+ import "./call-Bpjj5p7I.js";
64
+ import "./pairing-token-B703A1U3.js";
65
65
  import "./tool-display-DFOL6UQ9.js";
66
- import "./skills-remote-bz71Bstn.js";
67
- import "./workspace-dirs-jKFQf7of.js";
66
+ import "./skills-remote-BcRQTDsZ.js";
67
+ import "./workspace-dirs-DCICLTHx.js";
68
68
  import "./pi-model-discovery-ClQLvlCW.js";
69
- import "./model-catalog-IWi6-nY9.js";
70
- import "./skill-commands-DDGGlq68.js";
71
- import "./pairing-store-BNhJOnWn.js";
69
+ import "./model-catalog-BWurV7gl.js";
70
+ import "./skill-commands-DWvXs3lz.js";
71
+ import "./pairing-store-Be-ZQK87.js";
72
72
  import "./exec-approvals-DioSaIeH.js";
73
- import "./nodes-screen-De9ma6e1.js";
73
+ import "./nodes-screen-Cp5QP3ET.js";
74
74
  import "./breakdown-B_Dhhm3K.js";
75
- import "./control-service-D8kKOts5.js";
75
+ import "./control-service-CUreKVeY.js";
76
76
  import "./stagger-DQs772BN.js";
77
77
  import "./channel-selection-H1qOf0q-.js";
78
78
  import "./delivery-queue-OAc7hsIs.js";
79
79
  import "./bindings-DIhsYGa_.js";
80
- import "./resolve-route-C1IIA6kH.js";
80
+ import "./resolve-route-Du0VftVs.js";
81
81
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
82
82
  import "./cli-utils-CuyGL3rq.js";
83
83
  import "./help-format-7hFcsqss.js";
84
84
  import "./progress-swt2y17x.js";
85
- import "./memory-cli-B-Cp1Sb1.js";
85
+ import "./memory-cli-CHNghdrm.js";
86
86
  import "./logging-BWknayJl.js";
87
- import "./replies-CbXXjn9X.js";
88
- import "./pi-tools.policy-H2t-Xkfc.js";
89
- import "./model-MUMSB_7d.js";
90
- import { c as resolveArchiveKind } from "./install-safe-path-B2JrFspY.js";
91
- import "./npm-registry-spec-DTqn-NXZ.js";
92
- import "./skill-scanner-BCgVcIwi.js";
93
- import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-D890uIIW.js";
87
+ import "./replies-B_3j7R_Q.js";
88
+ import "./pi-tools.policy-CvAqjEH9.js";
89
+ import "./model-Cwbcw-km.js";
90
+ import { c as resolveArchiveKind } from "./install-safe-path-BrpA09f2.js";
91
+ import "./npm-registry-spec-C-muP97-.js";
92
+ import "./skill-scanner-CIlHPszT.js";
93
+ import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-bnDlOSq2.js";
94
94
  import { t as renderTable } from "./table-0A3xKJVC.js";
95
- import { t as buildPluginStatusReport } from "./status-poPDyC8O.js";
96
- import { n as updateNpmInstalledPlugins } from "./update-yYduAjKd.js";
95
+ import { t as buildPluginStatusReport } from "./status-Doq8T1zj.js";
96
+ import { n as updateNpmInstalledPlugins } from "./update-Cb0Fmxic.js";
97
97
  import path from "node:path";
98
98
  import fs from "node:fs";
99
99
  import os from "node:os";
100
- import fs$1 from "node:fs/promises";
100
+ import fsPromises from "node:fs/promises";
101
101
 
102
102
  //#region src/plugins/source-display.ts
103
103
  function tryRelative(root, filePath) {
@@ -259,9 +259,9 @@ async function uninstallPlugin(params) {
259
259
  extensionsDir
260
260
  }) : null;
261
261
  if (deleteTarget) {
262
- const existed = await fs$1.access(deleteTarget).then(() => true).catch(() => false) ?? false;
262
+ const existed = await fsPromises.access(deleteTarget).then(() => true).catch(() => false) ?? false;
263
263
  try {
264
- await fs$1.rm(deleteTarget, {
264
+ await fsPromises.rm(deleteTarget, {
265
265
  recursive: true,
266
266
  force: true
267
267
  });
@@ -13,11 +13,11 @@ import "./skills-cLBEdkqu.js";
13
13
  import { m as defaultSlotIdForKey, p as applyExclusiveSlotSelection, s as resolveBundledPluginsDir, t as clearPluginManifestRegistryCache } from "./manifest-registry-CVLmi8rz.js";
14
14
  import { i as loadConfig, l as writeConfigFile } 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 "./subagent-registry-V2o45tIn.js";
20
+ import "./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 { t as formatDocsLink } from "./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";
@@ -88,7 +88,7 @@ import "./npm-registry-spec-BPgK9EL7.js";
88
88
  import "./skill-scanner-BC3PyNso.js";
89
89
  import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-Dunp9UFl.js";
90
90
  import { t as renderTable } from "./table-D0JXlEhQ.js";
91
- import { t as buildPluginStatusReport } from "./status-Bahhq7OQ.js";
91
+ import { t as buildPluginStatusReport } from "./status-K1k4g3Ai.js";
92
92
  import { n as updateNpmInstalledPlugins } from "./update-B7qKOIqP.js";
93
93
  import os from "node:os";
94
94
  import path from "node:path";