@symerian/symi 3.5.25 → 3.5.26

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 (254) hide show
  1. package/dist/{agent-DgVWcnlD.js → agent-CB5yb-7V.js} +1 -1
  2. package/dist/{agent-CBfp75J4.js → agent-CoHzNs_e.js} +18 -18
  3. package/dist/{agent-scope-DOrZjOnW.js → agent-scope-Bnsyyeci.js} +18 -18
  4. package/dist/{agents-Dlcpc1K3.js → agents-DtRd3yEb.js} +3 -3
  5. package/dist/{agents.config-B7sNDvhz.js → agents.config-DA0ISLi7.js} +1 -1
  6. package/dist/{audit-Ce-u6aaR.js → audit-CuwXq_EA.js} +20 -20
  7. package/dist/{audit-CPloCzEZ.js → audit-DyncRBKq.js} +2 -2
  8. package/dist/{auth-choice--DymOp5O.js → auth-choice-5SLfZiQ7.js} +2 -2
  9. package/dist/{auth-choice-CUvx59kv.js → auth-choice-DKRHawfp.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-CY_9VW7E.js → banner-B_P_FrmA.js} +1 -1
  13. package/dist/{browser-cli-Ibgld3mA.js → browser-cli-BI81RlI8.js} +9 -9
  14. package/dist/{browser-cli-C5VVk6C9.js → browser-cli-CcCYZtag.js} +3 -3
  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-C2urR5Fj.js → call-DTshgdlW.js} +1 -1
  19. package/dist/{call-xdEE97oU.js → call-xUpyZDH4.js} +9 -9
  20. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  21. package/dist/{channel-options-rFgJaKzJ.js → channel-options-8NGYZjfd.js} +1 -1
  22. package/dist/{channel-options-DCmWOAc0.js → channel-options-vjcKi2yl.js} +1 -1
  23. package/dist/{channels-cli-QMHCRAb5.js → channels-cli-Bx90nSmB.js} +9 -9
  24. package/dist/{channels-cli-Cs1Z0dn8.js → channels-cli-CfBFa-VO.js} +57 -57
  25. package/dist/{chrome-DJChpTwP.js → chrome-38OnGyuN.js} +2 -2
  26. package/dist/{chrome-OTJg3QKn.js → chrome-CmQwGAuL.js} +7 -7
  27. package/dist/{cli-BafqEuaj.js → cli-DHG9iZJi.js} +6 -6
  28. package/dist/{cli-CadU09SC.js → cli-qf0qK7oi.js} +45 -45
  29. package/dist/{client-yVTJ5jx5.js → client-BOd5o3Kp.js} +9 -1
  30. package/dist/{client-Cs9Bh-G0.js → client-DiPa71im.js} +10 -2
  31. package/dist/{command-registry-CLm8TAH3.js → command-registry-DBbzZvh6.js} +11 -11
  32. package/dist/{commands-registry-Ca5hh7nh.js → commands-registry-CwXsDVuO.js} +1 -1
  33. package/dist/{completion-cli-Dd56ibFZ.js → completion-cli-Ddfrnilx.js} +12 -12
  34. package/dist/{completion-cli-DOBXkVwG.js → completion-cli-DoQrkCAd.js} +2 -2
  35. package/dist/{config-B4jkreCN.js → config-BngIfn5l.js} +2 -2
  36. package/dist/{config-cli-BgHYqFH1.js → config-cli-9a5qBcdo.js} +1 -1
  37. package/dist/{config-cli-GwUJEapt.js → config-cli-JVGYyfYA.js} +4 -4
  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-5md67tCP.js → configure-Bqz2Hvnf.js} +14 -14
  41. package/dist/{configure-DmzM0S7L.js → configure-ryB8EvyP.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 +152 -0
  45. package/dist/control-ui/index.html +42 -0
  46. package/dist/control-ui/js/symframe-modes.js +65 -0
  47. package/dist/control-ui/js/symframe.js +139 -0
  48. package/dist/{control-ui-assets-CJQ97d4u.js → control-ui-assets-B8B9z_Ll.js} +1 -1
  49. package/dist/{cost-cli-DWiVCOCx.js → cost-cli-D-ssjcRF.js} +3 -3
  50. package/dist/{cron-cli-BNBs3zue.js → cron-cli-DsGkkt1s.js} +3 -3
  51. package/dist/{cron-cli-CE9bV9Et.js → cron-cli-pZ_7Wzhj.js} +7 -7
  52. package/dist/{daemon-cli-BYiG4GOU.js → daemon-cli-BDzcfcu_.js} +11 -11
  53. package/dist/{daemon-cli-DDqeG2nd.js → daemon-cli-dbAPTgGm.js} +2 -2
  54. package/dist/daemon-cli.js +9 -1
  55. package/dist/{daemon-runtime-DlQla_dA.js → daemon-runtime-CKn0wmCk.js} +10 -10
  56. package/dist/{deliver-BiWlR84Y.js → deliver-B04yNX82.js} +4 -4
  57. package/dist/{deliver-lTZLIQqf.js → deliver-CWMFmMCv.js} +2 -2
  58. package/dist/{deps-Bf9dt2UO.js → deps-CdibsPMx.js} +1 -1
  59. package/dist/{devices-cli-Bhr6jGtH.js → devices-cli-BIZbo_Pt.js} +6 -6
  60. package/dist/{devices-cli-BJ3rVWOw.js → devices-cli-CIAuYH4P.js} +2 -2
  61. package/dist/{diagnostics-DlZODdRf.js → diagnostics-CYkqD5lP.js} +5 -5
  62. package/dist/{directory-cli-Bm5QYEo-.js → directory-cli-giqTe8Yg.js} +3 -3
  63. package/dist/{dm-policy-shared-CeFt0nch.js → dm-policy-shared-B61_yf6G.js} +1 -1
  64. package/dist/{dns-cli-CubLq4j9.js → dns-cli-Dssz4RqF.js} +3 -3
  65. package/dist/{docs-cli-PS8m1er7.js → docs-cli-Ct1STieY.js} +1 -1
  66. package/dist/{doctor-completion-k0HiL05o.js → doctor-completion-Bk55g4MP.js} +1 -1
  67. package/dist/{doctor-completion-BpUGRguQ.js → doctor-completion-eh7aImCx.js} +2 -2
  68. package/dist/{doctor-config-flow-C52W1uUK.js → doctor-config-flow-ljVnQJjo.js} +9 -9
  69. package/dist/entry.js +1 -1
  70. package/dist/{exec-approvals-cli-CzvIqBUd.js → exec-approvals-cli-B2UY9dZC.js} +13 -13
  71. package/dist/{exec-approvals-cli-Cau1vPQI.js → exec-approvals-cli-BiXeyPPz.js} +4 -4
  72. package/dist/extensionAPI.js +2 -2
  73. package/dist/{file-lock-BVUYnlQv.js → file-lock-2AecMjCa.js} +8 -8
  74. package/dist/{fs-safe-BdejYjW8.js → fs-safe-B0Is-oLk.js} +6 -6
  75. package/dist/{gateway-cli-DgmGygc6.js → gateway-cli-BGMVOW2G.js} +16 -16
  76. package/dist/{gateway-cli-D1d5YAt0.js → gateway-cli-BwPy7u0B.js} +98 -98
  77. package/dist/{gateway-rpc-BTGT1SuZ.js → gateway-rpc-DmFOiGIJ.js} +1 -1
  78. package/dist/{gateway-rpc-Kv0-8W2E.js → gateway-rpc-DpRnrv_i.js} +1 -1
  79. package/dist/{glass-ui-ws-BH9WH_VN.js → glass-ui-ws-CwOiILiY.js} +67 -67
  80. package/dist/{glass-ui-ws-Dl45d7eU.js → glass-ui-ws-Z-W33_mF.js} +13 -13
  81. package/dist/{health-DpE9GWGn.js → health-Bc1wmAO5.js} +4 -4
  82. package/dist/{health-znS85U-F.js → health-Dkwuq8ta.js} +1 -1
  83. package/dist/{hooks-cli-Cb9BzCOY.js → hooks-cli-Bn6x6Jnj.js} +7 -7
  84. package/dist/{hooks-cli-D7xxbEwI.js → hooks-cli-DOjHV2fF.js} +59 -59
  85. package/dist/{image-ops-L70xVnpG.js → image-ops-BzCBIakN.js} +10 -10
  86. package/dist/index.js +52 -52
  87. package/dist/{inspect-CGKsaVZ4.js → inspect-DzYUb_Dl.js} +4 -4
  88. package/dist/{install-safe-path-B2JrFspY.js → install-safe-path-BrpA09f2.js} +11 -11
  89. package/dist/{installs-D890uIIW.js → installs-bnDlOSq2.js} +10 -10
  90. package/dist/{internal-DVCddhhN.js → internal-csqU78gW.js} +9 -9
  91. package/dist/{lifecycle-core-wFwnK_mD.js → lifecycle-core-cSR_xiIO.js} +5 -5
  92. package/dist/llm-slug-generator.js +4 -4
  93. package/dist/{local-roots-CgDCgCuM.js → local-roots-2Jb79HZ8.js} +1 -1
  94. package/dist/{logs-cli-LiAjkog2.js → logs-cli-CJLJ745C.js} +3 -3
  95. package/dist/{logs-cli-DvIVuW0d.js → logs-cli-CYFlhj51.js} +7 -7
  96. package/dist/{manager-V4UCf0Av.js → manager-BHddoe4T.js} +1 -1
  97. package/dist/{manager-CceVgXHV.js → manager-DH00nlW8.js} +1 -1
  98. package/dist/{manager-CoCX7L5u.js → manager-DuWp0CTD.js} +15 -15
  99. package/dist/{manager-Cv4xI8sP.js → manager-F0-SHT1B.js} +1 -1
  100. package/dist/{memory-A2D5e8dL.js → memory-C02Znuee.js} +2 -2
  101. package/dist/{memory-cli-1zjVJITN.js → memory-cli-083UJtVJ.js} +2 -2
  102. package/dist/{memory-cli-D8Z_5-Nz.js → memory-cli-BnBKckEk.js} +12 -12
  103. package/dist/{memory-B067LTL9.js → memory-fFc7GGPZ.js} +5 -5
  104. package/dist/{model-MUMSB_7d.js → model-Cwbcw-km.js} +1 -1
  105. package/dist/{model-auth-1EAQvYRv.js → model-auth-_C07_3Yr.js} +2 -2
  106. package/dist/{model-catalog-IWi6-nY9.js → model-catalog-BWurV7gl.js} +3 -3
  107. package/dist/{model-picker-Cf6UgQEh.js → model-picker-Dpkr5xBW.js} +5 -5
  108. package/dist/{model-selection-7wdmO-Iw.js → model-selection-CCTzD29o.js} +1 -1
  109. package/dist/{models-BYev6YAG.js → models-Bh_frCup.js} +3 -3
  110. package/dist/{models-cli-Fa5r1QYP.js → models-cli-BhBu4Dwm.js} +9 -9
  111. package/dist/{models-cli-C979SN3Z.js → models-cli-DVdb_TUS.js} +55 -55
  112. package/dist/{models-config-B5Xxy-c-.js → models-config-DlXge3Sd.js} +8 -8
  113. package/dist/{node-cli-DGybtex_.js → node-cli-B0ePfMUr.js} +27 -27
  114. package/dist/{node-cli-Cv7x1gGu.js → node-cli-CBW_ECu_.js} +1 -1
  115. package/dist/{node-service-BH08wY5j.js → node-service-Cc18m-uk.js} +1 -1
  116. package/dist/{nodes-cli-DaHOBbd4.js → nodes-cli-CJ0gxF5n.js} +3 -3
  117. package/dist/{nodes-cli-C-mEw2av.js → nodes-cli-L0gy-26E.js} +10 -10
  118. package/dist/{nodes-screen-De9ma6e1.js → nodes-screen-Cp5QP3ET.js} +4 -4
  119. package/dist/{npm-registry-spec-DTqn-NXZ.js → npm-registry-spec-C-muP97-.js} +9 -9
  120. package/dist/{onboard-D-m6WTZl.js → onboard-BSxqEQfo.js} +3 -3
  121. package/dist/{onboard-CotuAZi6.js → onboard-D6GZ2t-L.js} +15 -15
  122. package/dist/{onboard-channels-Z-Jkrk5-.js → onboard-channels-BkR3MKMp.js} +1 -1
  123. package/dist/{onboard-channels-DSyynpou.js → onboard-channels-DVS9vciR.js} +4 -4
  124. package/dist/{onboard-custom-BcRYreNG.js → onboard-custom-DnDrvxSg.js} +3 -3
  125. package/dist/{onboard-helpers-CLXJ8zp0.js → onboard-helpers-CJlheOSJ.js} +8 -8
  126. package/dist/{onboard-helpers-Dhr98nj8.js → onboard-helpers-t7tI9KSA.js} +1 -1
  127. package/dist/{onboard-hooks-2SCajRKc.js → onboard-hooks-D9jHwImb.js} +1 -1
  128. package/dist/{onboard-remote-BYBai0w3.js → onboard-remote-CVZ8l58S.js} +1 -1
  129. package/dist/{onboard-remote-DZdMxd1Q.js → onboard-remote-DH3bPYbE.js} +1 -1
  130. package/dist/{onboard-skills-2SUv-W7i.js → onboard-skills-Bjf7kWvg.js} +1 -1
  131. package/dist/{onboard-skills-BxJlS1Bk.js → onboard-skills-MgcaLiE6.js} +3 -3
  132. package/dist/{onboarding-BckHLQMV.js → onboarding-CrCGoZ4H.js} +7 -7
  133. package/dist/{onboarding-BnoGiOh3.js → onboarding-D-mzwQ_f.js} +12 -12
  134. package/dist/{onboarding.finalize-CbH_ShIW.js → onboarding.finalize-BYzduVFA.js} +9 -9
  135. package/dist/{onboarding.finalize-g86Q4433.js → onboarding.finalize-DBFL76p0.js} +31 -31
  136. package/dist/{onboarding.gateway-config-CEXjbEM0.js → onboarding.gateway-config-BCDgsFl8.js} +8 -8
  137. package/dist/{onboarding.gateway-config-sNSeEykB.js → onboarding.gateway-config-xWUSbtoY.js} +3 -3
  138. package/dist/{openai-model-default-BkuuK-Di.js → openai-model-default-De-UAjwg.js} +2 -2
  139. package/dist/{pairing-cli-Rsae0KnN.js → pairing-cli-CBMMCNnx.js} +5 -5
  140. package/dist/{pairing-store-BNhJOnWn.js → pairing-store-Be-ZQK87.js} +1 -1
  141. package/dist/{pairing-token-Dcy37-4s.js → pairing-token-B703A1U3.js} +7 -7
  142. package/dist/{paths-DObzwe08.js → paths-BWqg8NZT.js} +1 -1
  143. package/dist/{pi-auth-json-Db8XJVGL.js → pi-auth-json-D-vdh-nY.js} +6 -6
  144. package/dist/{pi-embedded-B9rtlNMc.js → pi-embedded-DGnpyHm-.js} +50 -7
  145. package/dist/{pi-embedded-helpers-D-OFjhdI.js → pi-embedded-helpers-j1JrlsI0.js} +6 -6
  146. package/dist/{pi-tools.policy-H2t-Xkfc.js → pi-tools.policy-CvAqjEH9.js} +3 -3
  147. package/dist/{plugin-auto-enable-DJBhDIMq.js → plugin-auto-enable-BXSJTxI7.js} +1 -1
  148. package/dist/{plugin-registry-CS4WgHbu.js → plugin-registry-B74FBx4U.js} +1 -1
  149. package/dist/{plugin-registry-AsC9gydF.js → plugin-registry-KP94aK4z.js} +3 -3
  150. package/dist/plugin-sdk/agents/tools/browser-tool.schema.d.ts +1 -1
  151. package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +5 -1
  152. package/dist/plugin-sdk/infra/symframe-broadcast.d.ts +7 -2
  153. package/dist/{plugins-cli-CbByGz8z.js → plugins-cli-B4ljapU5.js} +54 -54
  154. package/dist/{plugins-cli-BY42hyHP.js → plugins-cli-Cmf3kRf5.js} +7 -7
  155. package/dist/{ports-r7LBic2V.js → ports-Bi3V_3n9.js} +1 -1
  156. package/dist/{ports-gxLM5ahL.js → ports-CB_Iu83U.js} +2 -2
  157. package/dist/{program-P9F1DxBa.js → program-CGuYYumL.js} +12 -12
  158. package/dist/{program-context-CiyK6MfV.js → program-context-BzqGUxMS.js} +40 -40
  159. package/dist/{prompt-select-styled-DaNQ_GgB.js → prompt-select-styled-BVkRteee.js} +38 -38
  160. package/dist/{prompt-select-styled-B2ah467m.js → prompt-select-styled-b752FPLG.js} +7 -7
  161. package/dist/{provider-auth-helpers-Bgb_Bfp9.js → provider-auth-helpers-BKveYcEH.js} +1 -1
  162. package/dist/{provider-auth-helpers-D2FDvwT5.js → provider-auth-helpers-C6GjAO-s.js} +6 -6
  163. package/dist/{push-apns-va-DRu4U.js → push-apns-CbbWM63o.js} +4 -4
  164. package/dist/{push-apns-DnSCjFu7.js → push-apns-HNg0rTkI.js} +1 -1
  165. package/dist/{pw-ai-BiBvIJzd.js → pw-ai-CP5pn3eU.js} +7 -7
  166. package/dist/{pw-ai-DY_6l11g.js → pw-ai-DLsdzdgc.js} +1 -1
  167. package/dist/{qmd-manager-C8-M4Pru.js → qmd-manager-Dxyue7B1.js} +19 -19
  168. package/dist/{qr-cli-1sCVaPcF.js → qr-cli-DHw6muwK.js} +3 -3
  169. package/dist/{register.agent-BuEcmVg0.js → register.agent-DbPYGG3u.js} +12 -12
  170. package/dist/{register.agent-BqdQ0s30.js → register.agent-DhS2lmWo.js} +67 -67
  171. package/dist/{register.configure-YDKJ-KQg.js → register.configure-B0M15y31.js} +14 -14
  172. package/dist/{register.configure-Dhwi-4FG.js → register.configure-ChjzXxh8.js} +70 -70
  173. package/dist/{register.maintenance-BiGvpEj-.js → register.maintenance-bzLNOqch.js} +13 -13
  174. package/dist/{register.maintenance-iMjNw9uy.js → register.maintenance-frHWf6Xs.js} +67 -67
  175. package/dist/{register.message-BIuLbESM.js → register.message-Bfukmte_.js} +7 -7
  176. package/dist/{register.message-Ao_b9s2g.js → register.message-DWB4eVII.js} +47 -47
  177. package/dist/{register.onboard-ymhSAezZ.js → register.onboard-4P8ud4Sw.js} +25 -25
  178. package/dist/{register.onboard-C4vIASed.js → register.onboard-CDsSVoFI.js} +6 -6
  179. package/dist/{register.setup-D-Jt2e1d.js → register.setup-Bp8rYeRx.js} +6 -6
  180. package/dist/{register.setup-CKs9mqtD.js → register.setup-D0I7sEGc.js} +28 -28
  181. package/dist/{register.status-health-sessions-U-azRmpb.js → register.status-health-sessions-69Gigo_H.js} +41 -41
  182. package/dist/{register.status-health-sessions-BY9hMD1s.js → register.status-health-sessions-DE2db_Uo.js} +8 -8
  183. package/dist/{register.subclis-Cibmeapc.js → register.subclis-QXO75pUm.js} +20 -20
  184. package/dist/{replies-CbXXjn9X.js → replies-B_3j7R_Q.js} +1 -1
  185. package/dist/{reply-prefix-BFNeXT65.js → reply-prefix-CtZtkTJK.js} +1 -1
  186. package/dist/{resolve-route-C1IIA6kH.js → resolve-route-Du0VftVs.js} +1 -1
  187. package/dist/{routes-ivqbutvM.js → routes-BwTUoI5h.js} +10 -10
  188. package/dist/{rpc-BnAKPQDB.js → rpc-BBtNUyxN.js} +1 -1
  189. package/dist/{rpc-DjqFrbOc.js → rpc-DTqyJZKO.js} +1 -1
  190. package/dist/{run-main-BhEQjKtM.js → run-main-MD8Z8ydF.js} +20 -20
  191. package/dist/{sandbox-BkznAPKO.js → sandbox-CZGTCone.js} +18 -18
  192. package/dist/{sandbox-cli-Bb9cBtBH.js → sandbox-cli-DEtGT_4y.js} +13 -13
  193. package/dist/{security-cli-CS-ZT1LE.js → security-cli-DZ-6QDRB.js} +3 -3
  194. package/dist/{security-cli-JKsf9SIu.js → security-cli-iJpHPABF.js} +29 -29
  195. package/dist/{send-B0jHSNMF.js → send-CxjvucMO.js} +7 -7
  196. package/dist/{server-context-ChcbJgNo.js → server-context-DXdk410X.js} +5 -5
  197. package/dist/{server-methods-B2tykucj.js → server-methods-DHWxmfIu.js} +67 -61
  198. package/dist/{server-methods-CWxr5b-w.js → server-methods-DTkVQH8Q.js} +18 -12
  199. package/dist/{server-node-events-ClDEcUTJ.js → server-node-events-C0smPxrR.js} +8 -8
  200. package/dist/{server-node-events-BKqszk_a.js → server-node-events-DHSiqnRS.js} +48 -48
  201. package/dist/{service-e6MzlLCd.js → service-CRZoXO_n.js} +15 -15
  202. package/dist/{session-dirs-C9E2G0yZ.js → session-dirs-a00Ad2SO.js} +2 -2
  203. package/dist/{session-utils-Cs1jlD-q.js → session-utils-CJhcRx3E.js} +14 -14
  204. package/dist/{sessions-Dxf5Kjig.js → sessions-BCc3THTm.js} +10 -10
  205. package/dist/{shared-1xPo9ygd.js → shared-C39SiDDJ.js} +1 -1
  206. package/dist/{shared-COtpr3Ad.js → shared-Dh-O8nRd.js} +3 -3
  207. package/dist/{skill-commands-DDGGlq68.js → skill-commands-DWvXs3lz.js} +4 -4
  208. package/dist/{skill-scanner-BCgVcIwi.js → skill-scanner-CIlHPszT.js} +5 -5
  209. package/dist/{skills-BwDmcZdt.js → skills-CYcBtLGH.js} +4 -4
  210. package/dist/{skills-cli-B-7TY-vS.js → skills-cli-CD9s3cgm.js} +7 -7
  211. package/dist/{skills-install-Dwzsjoc8.js → skills-install-BTa9IuQ6.js} +3 -3
  212. package/dist/{skills-remote-bz71Bstn.js → skills-remote-BcRQTDsZ.js} +3 -3
  213. package/dist/{skills-status-BKX1PjCc.js → skills-status-DLnCHUZ2.js} +1 -1
  214. package/dist/{sqlite-Cod7C5ba.js → sqlite-BpogPlQW.js} +5 -5
  215. package/dist/{status-ojZB_Lrf.js → status-BEZotN01.js} +5 -5
  216. package/dist/{status-DPGFZPpp.js → status-DUbs9rVu.js} +3 -3
  217. package/dist/{status-DHBVIMyL.js → status-ISN-LC9F.js} +23 -23
  218. package/dist/{status-K1k4g3Ai.js → status-OTYFx93W.js} +1 -1
  219. package/dist/{status.update-DGJi0OLl.js → status.update-CKfyV6zw.js} +3 -3
  220. package/dist/{subagent-registry-BOt7g9hn.js → subagent-registry-CVhLz4p3.js} +43 -8
  221. package/dist/{symframe-cli-CrUtJw_7.js → symframe-cli-BSAQ05fb.js} +22 -6
  222. package/dist/{symframe-cli-CX3dINPw.js → symframe-cli-CPE5nxuJ.js} +28 -12
  223. package/dist/{symi-root-BQ0IpoW2.js → symi-root-DeCVdZB4.js} +2 -2
  224. package/dist/{synthesis-Bc2QkGvt.js → synthesis-C1mZnGqD.js} +2 -2
  225. package/dist/{synthesis-yl24Ovw4.js → synthesis-CDPVZw2P.js} +4 -4
  226. package/dist/{synthesis-DmqicCsT.js → synthesis-DkHCk0El.js} +45 -45
  227. package/dist/{synthesis-BIQLrbys.js → synthesis-RhT991Ni.js} +6 -6
  228. package/dist/{system-cli-CvN-Wq9U.js → system-cli-Dy6_0Qp7.js} +3 -3
  229. package/dist/{system-cli-DUHzCGfK.js → system-cli-nWJwLo85.js} +7 -7
  230. package/dist/{systemd-CUIM0n5P.js → systemd-CsoVnIbM.js} +5 -5
  231. package/dist/{systemd-hints-CsrzMCTD.js → systemd-hints-QISwLlFU.js} +6 -6
  232. package/dist/{systemd-linger-BzYk7A6M.js → systemd-linger-BnhuRdbt.js} +1 -1
  233. package/dist/{tui-DCqVZ6sC.js → tui-ZL7IGA7l.js} +7 -7
  234. package/dist/{tui-cli-DqvgN5ng.js → tui-cli-B-DKpOxE.js} +3 -3
  235. package/dist/{tui-cli-CI-P3sei.js → tui-cli-CEpMtmhP.js} +19 -19
  236. package/dist/{tui-BxgdImL_.js → tui-h57L-YTX.js} +2 -2
  237. package/dist/{unified-runner-BV5TdNFv.js → unified-runner-Cppo8O8z.js} +57 -14
  238. package/dist/{unified-runner-CznU7Ad0.js → unified-runner-CsadjpQa.js} +139 -104
  239. package/dist/{update-yYduAjKd.js → update-Cb0Fmxic.js} +3 -3
  240. package/dist/{update-check-BCL_K7kx.js → update-check-u6Jgr1cz.js} +5 -5
  241. package/dist/{update-cli-DBoIBDNe.js → update-cli-48-Nah-Y.js} +77 -77
  242. package/dist/{update-cli-Dn6QQZLd.js → update-cli-D9g9s187.js} +14 -14
  243. package/dist/{update-runner-BLV8SI96.js → update-runner-G2YgEATs.js} +15 -15
  244. package/dist/{webhooks-cli-D5k-Y2A8.js → webhooks-cli-DjUITimx.js} +4 -4
  245. package/dist/{with-timeout-DPR4A2dx.js → with-timeout-CLrF-Yr_.js} +1 -1
  246. package/dist/{workspace-dirs-jKFQf7of.js → workspace-dirs-DCICLTHx.js} +1 -1
  247. package/dist/{wsl-CglTdtlb.js → wsl-DTi7eX-V.js} +2 -2
  248. package/extensions/memory-core/package.json +1 -1
  249. package/extensions/msteams/CHANGELOG.md +6 -0
  250. package/extensions/msteams/package.json +1 -1
  251. package/extensions/open-prose/package.json +1 -1
  252. package/extensions/outlook/package.json +1 -1
  253. package/extensions/slack/package.json +1 -1
  254. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Qt as getPrimaryCommand, tn as hasHelpOrVersion } from "./entry.js";
3
- import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-Cibmeapc.js";
3
+ import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-QXO75pUm.js";
4
4
 
5
5
  //#region src/cli/program/command-registry.ts
6
6
  var command_registry_exports = /* @__PURE__ */ __exportAll({
@@ -22,7 +22,7 @@ const coreEntries = [
22
22
  hasSubcommands: false
23
23
  }],
24
24
  register: async ({ program }) => {
25
- (await import("./register.setup-D-Jt2e1d.js")).registerSetupCommand(program);
25
+ (await import("./register.setup-Bp8rYeRx.js")).registerSetupCommand(program);
26
26
  }
27
27
  },
28
28
  {
@@ -32,7 +32,7 @@ const coreEntries = [
32
32
  hasSubcommands: false
33
33
  }],
34
34
  register: async ({ program }) => {
35
- (await import("./register.onboard-C4vIASed.js")).registerOnboardCommand(program);
35
+ (await import("./register.onboard-CDsSVoFI.js")).registerOnboardCommand(program);
36
36
  }
37
37
  },
38
38
  {
@@ -42,7 +42,7 @@ const coreEntries = [
42
42
  hasSubcommands: false
43
43
  }],
44
44
  register: async ({ program }) => {
45
- (await import("./register.configure-YDKJ-KQg.js")).registerConfigureCommand(program);
45
+ (await import("./register.configure-B0M15y31.js")).registerConfigureCommand(program);
46
46
  }
47
47
  },
48
48
  {
@@ -52,7 +52,7 @@ const coreEntries = [
52
52
  hasSubcommands: true
53
53
  }],
54
54
  register: async ({ program }) => {
55
- (await import("./config-cli-BgHYqFH1.js")).registerConfigCli(program);
55
+ (await import("./config-cli-9a5qBcdo.js")).registerConfigCli(program);
56
56
  }
57
57
  },
58
58
  {
@@ -79,7 +79,7 @@ const coreEntries = [
79
79
  }
80
80
  ],
81
81
  register: async ({ program }) => {
82
- (await import("./register.maintenance-BiGvpEj-.js")).registerMaintenanceCommands(program);
82
+ (await import("./register.maintenance-bzLNOqch.js")).registerMaintenanceCommands(program);
83
83
  }
84
84
  },
85
85
  {
@@ -89,7 +89,7 @@ const coreEntries = [
89
89
  hasSubcommands: true
90
90
  }],
91
91
  register: async ({ program, ctx }) => {
92
- (await import("./register.message-BIuLbESM.js")).registerMessageCommands(program, ctx);
92
+ (await import("./register.message-Bfukmte_.js")).registerMessageCommands(program, ctx);
93
93
  }
94
94
  },
95
95
  {
@@ -99,7 +99,7 @@ const coreEntries = [
99
99
  hasSubcommands: true
100
100
  }],
101
101
  register: async ({ program }) => {
102
- (await import("./memory-cli-1zjVJITN.js").then((n) => n.t)).registerMemoryCli(program);
102
+ (await import("./memory-cli-083UJtVJ.js").then((n) => n.t)).registerMemoryCli(program);
103
103
  }
104
104
  },
105
105
  {
@@ -113,7 +113,7 @@ const coreEntries = [
113
113
  hasSubcommands: true
114
114
  }],
115
115
  register: async ({ program, ctx }) => {
116
- (await import("./register.agent-BuEcmVg0.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
116
+ (await import("./register.agent-DbPYGG3u.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
117
117
  }
118
118
  },
119
119
  {
@@ -135,7 +135,7 @@ const coreEntries = [
135
135
  }
136
136
  ],
137
137
  register: async ({ program }) => {
138
- (await import("./register.status-health-sessions-BY9hMD1s.js")).registerStatusHealthSessionsCommands(program);
138
+ (await import("./register.status-health-sessions-DE2db_Uo.js")).registerStatusHealthSessionsCommands(program);
139
139
  }
140
140
  },
141
141
  {
@@ -145,7 +145,7 @@ const coreEntries = [
145
145
  hasSubcommands: true
146
146
  }],
147
147
  register: async ({ program }) => {
148
- (await import("./browser-cli-C5VVk6C9.js")).registerBrowserCli(program);
148
+ (await import("./browser-cli-CcCYZtag.js")).registerBrowserCli(program);
149
149
  }
150
150
  }
151
151
  ];
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { d as getActivePluginRegistry } from "./registry-Sbac4a4z.js";
3
3
  import { c as escapeRegExp } from "./utils-CTPsqyE_.js";
4
- import { C as DEFAULT_MODEL, m as resolveConfiguredModelRef, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
4
+ import { C as DEFAULT_MODEL, m as resolveConfiguredModelRef, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
5
5
  import { n as listChannelDocks } from "./dock-hF45sewN.js";
6
6
  import { i as listThinkingLevels } from "./thinking-COroyVA5.js";
7
7
  import { t as isCommandFlagEnabled } from "./commands-DUzLGgEZ.js";
@@ -2,10 +2,10 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
3
3
  import { f as pathExists } from "./utils-CTPsqyE_.js";
4
4
  import { i as routeLogsToStderr } from "./subsystem-CHbO_DkH.js";
5
- import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-CiyK6MfV.js";
5
+ import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-BzqGUxMS.js";
6
6
  import path from "node:path";
7
7
  import os from "node:os";
8
- import fs from "node:fs/promises";
8
+ import fsPromises from "node:fs/promises";
9
9
  import { Option } from "commander";
10
10
 
11
11
  //#region src/cli/completion-cli.ts
@@ -62,11 +62,11 @@ function getCompletionScript(shell, program) {
62
62
  }
63
63
  async function writeCompletionCache(params) {
64
64
  const cacheDir = resolveCompletionCacheDir();
65
- await fs.mkdir(cacheDir, { recursive: true });
65
+ await fsPromises.mkdir(cacheDir, { recursive: true });
66
66
  for (const shell of params.shells) {
67
67
  const script = getCompletionScript(shell, params.program);
68
68
  const targetPath = resolveCompletionCachePath(shell, params.binName);
69
- await fs.writeFile(targetPath, script, "utf-8");
69
+ await fsPromises.writeFile(targetPath, script, "utf-8");
70
70
  }
71
71
  }
72
72
  function formatCompletionSourceLine(shell, binName, cachePath) {
@@ -124,7 +124,7 @@ async function isCompletionInstalled(shell, binName = "symi") {
124
124
  if (!await pathExists(profilePath)) return false;
125
125
  const cachePathCandidate = resolveCompletionCachePath(shell, binName);
126
126
  const cachedPath = await pathExists(cachePathCandidate) ? cachePathCandidate : null;
127
- return (await fs.readFile(profilePath, "utf-8")).split("\n").some((line) => isCompletionProfileHeader(line) || isCompletionProfileLine(line, binName, cachedPath));
127
+ return (await fsPromises.readFile(profilePath, "utf-8")).split("\n").some((line) => isCompletionProfileHeader(line) || isCompletionProfileLine(line, binName, cachedPath));
128
128
  }
129
129
  /**
130
130
  * Check if the profile uses the slow dynamic completion pattern.
@@ -134,7 +134,7 @@ async function usesSlowDynamicCompletion(shell, binName = "symi") {
134
134
  const profilePath = getShellProfilePath(shell);
135
135
  if (!await pathExists(profilePath)) return false;
136
136
  const cachePath = resolveCompletionCachePath(shell, binName);
137
- const lines = (await fs.readFile(profilePath, "utf-8")).split("\n");
137
+ const lines = (await fsPromises.readFile(profilePath, "utf-8")).split("\n");
138
138
  for (const line of lines) if (isSlowDynamicCompletionLine(line, binName) && !line.includes(cachePath)) return true;
139
139
  return false;
140
140
  }
@@ -183,7 +183,7 @@ async function installCompletion(shell, yes, binName = "symi") {
183
183
  } else if (shell === "bash") {
184
184
  profilePath = path.join(home, ".bashrc");
185
185
  try {
186
- await fs.access(profilePath);
186
+ await fsPromises.access(profilePath);
187
187
  } catch {
188
188
  profilePath = path.join(home, ".bash_profile");
189
189
  }
@@ -197,13 +197,13 @@ async function installCompletion(shell, yes, binName = "symi") {
197
197
  }
198
198
  try {
199
199
  try {
200
- await fs.access(profilePath);
200
+ await fsPromises.access(profilePath);
201
201
  } catch {
202
202
  if (!yes) console.warn(`Profile not found at ${profilePath}. Created a new one.`);
203
- await fs.mkdir(path.dirname(profilePath), { recursive: true });
204
- await fs.writeFile(profilePath, "", "utf-8");
203
+ await fsPromises.mkdir(path.dirname(profilePath), { recursive: true });
204
+ await fsPromises.writeFile(profilePath, "", "utf-8");
205
205
  }
206
- const update = updateCompletionProfile(await fs.readFile(profilePath, "utf-8"), binName, cachePath, sourceLine);
206
+ const update = updateCompletionProfile(await fsPromises.readFile(profilePath, "utf-8"), binName, cachePath, sourceLine);
207
207
  if (!update.changed) {
208
208
  if (!yes) console.log(`Completion already installed in ${profilePath}`);
209
209
  return;
@@ -212,7 +212,7 @@ async function installCompletion(shell, yes, binName = "symi") {
212
212
  const action = update.hadExisting ? "Updating" : "Installing";
213
213
  console.log(`${action} completion in ${profilePath}...`);
214
214
  }
215
- await fs.writeFile(profilePath, update.next, "utf-8");
215
+ await fsPromises.writeFile(profilePath, update.next, "utf-8");
216
216
  if (!yes) console.log(`Completion installed. Restart your shell or run: source ${profilePath}`);
217
217
  } catch (err) {
218
218
  console.error(`Failed to install completion: ${err}`);
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Mt as pathExists, l as routeLogsToStderr, yt as resolveStateDir } from "./entry.js";
3
- import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-Cibmeapc.js";
4
- import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-CLm8TAH3.js";
3
+ import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-QXO75pUm.js";
4
+ import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-DBbzZvh6.js";
5
5
  import { t as getProgramContext } from "./program-context-B_0V80zV.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -3,8 +3,8 @@ import { t as CHANNEL_IDS } from "./registry-Sbac4a4z.js";
3
3
  import { _ as resolveStateDir, a as resolveCanonicalConfigPath, b as resolveRequiredHomeDir, c as resolveDefaultConfigCandidates, d as resolveIsNixMode, f as resolveLegacyStateDir, g as resolveOAuthPath, h as resolveOAuthDir, i as isNixMode, l as resolveGatewayLockDir, m as resolveNewStateDir, n as DEFAULT_GATEWAY_PORT, o as resolveConfigPath, p as resolveLegacyStateDirs, r as STATE_DIR, s as resolveConfigPathCandidate, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-By0XjHBk.js";
4
4
  import { S as isPlainObject$1, h as resolveUserPath, p as resolveConfigDir, u as isRecord } from "./utils-CTPsqyE_.js";
5
5
  import { o as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-DUSb7CCb.js";
6
- import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
7
- import { S as DEFAULT_CONTEXT_TOKENS, d as parseModelRef } from "./model-selection-7wdmO-Iw.js";
6
+ import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
7
+ import { S as DEFAULT_CONTEXT_TOKENS, d as parseModelRef } from "./model-selection-CCTzD29o.js";
8
8
  import { a as shouldDeferShellEnvFallback, i as resolveShellEnvFallbackTimeoutMs, o as shouldEnableShellEnvFallback, r as loadShellEnvFallback } from "./shell-env-Dc3iU7HK.js";
9
9
  import { d as resolveEnableState, f as resolveMemorySlotDecision, g as normalizeEnvVarKey, h as isDangerousHostEnvVarName, n as loadPluginManifestRegistry, u as normalizePluginsConfig } from "./manifest-registry-D1MLZEjS.js";
10
10
  import { i as isPathInside } from "./legacy-names-BQ9vKISY.js";
@@ -201,7 +201,7 @@ async function runConfigUnset(opts) {
201
201
  }
202
202
  function registerConfigCli(program) {
203
203
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
204
- const { configureCommandFromSectionsArg } = await import("./configure-DmzM0S7L.js").then((n) => n.t);
204
+ const { configureCommandFromSectionsArg } = await import("./configure-ryB8EvyP.js").then((n) => n.t);
205
205
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
206
206
  });
207
207
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -4,9 +4,9 @@ import { v as shortenHomePath } 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 "./exec-DuYbft0z.js";
7
- import "./agent-scope-DOrZjOnW.js";
8
- import "./model-selection-7wdmO-Iw.js";
9
- import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
7
+ import "./agent-scope-Bnsyyeci.js";
8
+ import "./model-selection-CCTzD29o.js";
9
+ import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
10
10
  import "./boolean-CbZoNRMn.js";
11
11
  import "./env-BRnPI9sO.js";
12
12
  import "./shell-env-Dc3iU7HK.js";
@@ -206,7 +206,7 @@ async function runConfigUnset(opts) {
206
206
  }
207
207
  function registerConfigCli(program) {
208
208
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
209
- const { configureCommandFromSectionsArg } = await import("./configure-5md67tCP.js").then((n) => n.t);
209
+ const { configureCommandFromSectionsArg } = await import("./configure-Bqz2Hvnf.js").then((n) => n.t);
210
210
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
211
211
  });
212
212
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -4,14 +4,14 @@ import { v as shortenHomePath } from "./utils-CTPsqyE_.js";
4
4
  import "./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 { o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
7
+ import "./agent-scope-Bnsyyeci.js";
8
+ import "./model-selection-CCTzD29o.js";
9
+ import { o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
10
10
  import "./boolean-CbZoNRMn.js";
11
11
  import "./env-BRnPI9sO.js";
12
12
  import "./shell-env-Dc3iU7HK.js";
13
13
  import "./manifest-registry-D1MLZEjS.js";
14
- import "./sessions-Dxf5Kjig.js";
14
+ import "./sessions-BCc3THTm.js";
15
15
  import "./dock-hF45sewN.js";
16
16
  import "./message-channel-DgjXWzf-.js";
17
17
  import "./plugins-CF5skkHh.js";
@@ -20,8 +20,8 @@ import { c as shouldMigrateStateFromPath } from "./argv-D6PT4jl6.js";
20
20
  import "./catalog-BptA-dUv.js";
21
21
  import "./prompt-style-olk5zI5k.js";
22
22
  import "./note-D9FXI2qW.js";
23
- import "./plugin-auto-enable-DJBhDIMq.js";
24
- import { t as loadAndMaybeMigrateDoctorConfig } from "./doctor-config-flow-C52W1uUK.js";
23
+ import "./plugin-auto-enable-BXSJTxI7.js";
24
+ import { t as loadAndMaybeMigrateDoctorConfig } from "./doctor-config-flow-ljVnQJjo.js";
25
25
 
26
26
  //#region src/cli/program/config-guard.ts
27
27
  const ALLOWED_INVALID_COMMANDS = new Set([
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
2
- import { o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
2
+ import { o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
3
3
 
4
4
  //#region src/commands/config-validation.ts
5
5
  async function requireValidConfigSnapshot(runtime) {
@@ -2,9 +2,9 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-By0XjHBk.js";
3
3
  import { h as resolveUserPath, v as shortenHomePath } from "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
- import { b as ensureAuthProfileStore } from "./auth-profiles-Ce7R_25e.js";
5
+ import { b as ensureAuthProfileStore } from "./auth-profiles-D5nYBj_Z.js";
6
6
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
7
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
7
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
8
8
  import { a as findTailscaleBinary } from "./tailscale-DpKBMIvx.js";
9
9
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-CF5skkHh.js";
10
10
  import { n as withProgress } from "./progress-swt2y17x.js";
@@ -12,22 +12,22 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
12
12
  import { t as note$1 } from "./note-D9FXI2qW.js";
13
13
  import { t as WizardCancelledError } from "./prompts-CNzp9M83.js";
14
14
  import { t as createClackPrompter } from "./clack-prompter-BpcKjPIh.js";
15
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-DSyynpou.js";
16
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DlQla_dA.js";
17
- import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-CLXJ8zp0.js";
18
- import { t as resolveGatewayService } from "./service-e6MzlLCd.js";
19
- import { r as healthCommand } from "./health-DpE9GWGn.js";
20
- import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CJQ97d4u.js";
15
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-DVS9vciR.js";
16
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CKn0wmCk.js";
17
+ import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-CJlheOSJ.js";
18
+ import { t as resolveGatewayService } from "./service-CRZoXO_n.js";
19
+ import { r as healthCommand } from "./health-Bc1wmAO5.js";
20
+ import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B8B9z_Ll.js";
21
21
  import { n as logConfigUpdated } from "./logging-DDnP1BTp.js";
22
22
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-BAFfYZeR.js";
23
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-CUvx59kv.js";
24
- import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-Cf6UgQEh.js";
25
- import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-BzYk7A6M.js";
26
- import { a as promptCustomApiConfig } from "./onboard-custom-BcRYreNG.js";
23
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-DKRHawfp.js";
24
+ import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-Dpkr5xBW.js";
25
+ import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-BnhuRdbt.js";
26
+ import { a as promptCustomApiConfig } from "./onboard-custom-DnDrvxSg.js";
27
27
  import { i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-C_NtZ3JP.js";
28
28
  import { t as formatHealthCheckFailure } from "./health-format-Bxg84_f4.js";
29
- import { n as promptRemoteGatewayConfig } from "./onboard-remote-BYBai0w3.js";
30
- import { n as setupSkills } from "./onboard-skills-BxJlS1Bk.js";
29
+ import { n as promptRemoteGatewayConfig } from "./onboard-remote-CVZ8l58S.js";
30
+ import { n as setupSkills } from "./onboard-skills-MgcaLiE6.js";
31
31
  import { confirm, intro, outro, select, text } from "@clack/prompts";
32
32
 
33
33
  //#region src/commands/configure.shared.ts
@@ -10,22 +10,22 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
10
10
  import { t as note$1 } from "./note-BIAQpZxi.js";
11
11
  import { t as WizardCancelledError } from "./prompts-D4yOwSll.js";
12
12
  import { t as createClackPrompter } from "./clack-prompter-BMQT37oC.js";
13
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-Z-Jkrk5-.js";
13
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-BkR3MKMp.js";
14
14
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-AkgOtHR6.js";
15
- import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-Dhr98nj8.js";
15
+ import { a as ensureWorkspaceAndSessions, b as waitForGatewayReachable, g as resolveControlUiLinks, h as randomToken, m as probeGatewayReachable, n as applyWizardMetadata, p as printWizardHeader, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as summarizeExistingConfig, y as validateGatewayPasswordInput } from "./onboard-helpers-t7tI9KSA.js";
16
16
  import { t as resolveGatewayService } from "./service-DYpU1ajf.js";
17
- import { r as healthCommand } from "./health-znS85U-F.js";
17
+ import { r as healthCommand } from "./health-Dkwuq8ta.js";
18
18
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Dnz69KRU.js";
19
19
  import { n as logConfigUpdated } from "./logging-Ev3fNJEG.js";
20
20
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-D6A5uuj3.js";
21
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice--DymOp5O.js";
21
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-5SLfZiQ7.js";
22
22
  import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-DvP8ViSf.js";
23
23
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-CctFkWNE.js";
24
24
  import { a as promptCustomApiConfig } from "./onboard-custom-CfKvdcJ5.js";
25
25
  import { i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-qGjACkoi.js";
26
26
  import { t as formatHealthCheckFailure } from "./health-format-6tfMqkNX.js";
27
- import { n as promptRemoteGatewayConfig } from "./onboard-remote-DZdMxd1Q.js";
28
- import { n as setupSkills } from "./onboard-skills-2SUv-W7i.js";
27
+ import { n as promptRemoteGatewayConfig } from "./onboard-remote-DH3bPYbE.js";
28
+ import { n as setupSkills } from "./onboard-skills-Bjf7kWvg.js";
29
29
  import { confirm, intro, outro, select, text } from "@clack/prompts";
30
30
 
31
31
  //#region src/commands/configure.shared.ts
@@ -2,10 +2,10 @@ import "./registry-Sbac4a4z.js";
2
2
  import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
5
- import { l as parseEmbedding, r as cosineSimilarity } from "./internal-DVCddhhN.js";
5
+ import { l as parseEmbedding, r as cosineSimilarity } from "./internal-csqU78gW.js";
6
6
  import crypto 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/memory/consolidate.ts
11
11
  const log = createSubsystemLogger("memory/consolidate");
@@ -346,7 +346,7 @@ async function stagePromote(params) {
346
346
  };
347
347
  const now = params.now ?? Date.now();
348
348
  const memoryDir = path.join(params.workspaceDir, "memory");
349
- await fs.mkdir(memoryDir, { recursive: true }).catch(() => {});
349
+ await fsPromises.mkdir(memoryDir, { recursive: true }).catch(() => {});
350
350
  const corePath = path.join(memoryDir, "symi-core.md");
351
351
  const beliefsPath = path.join(memoryDir, "symi-beliefs.md");
352
352
  params.db.prepare(`UPDATE chunks SET promoted_to = NULL WHERE promoted_to = ?`).run(SYMI_CORE_PATH);
@@ -386,7 +386,7 @@ async function stagePromote(params) {
386
386
  sections: sectionLines,
387
387
  now
388
388
  });
389
- await fs.writeFile(corePath, symiCoreContent, "utf-8");
389
+ await fsPromises.writeFile(corePath, symiCoreContent, "utf-8");
390
390
  const merged = mergeBeliefs({
391
391
  existing: await readExistingBeliefs(beliefsPath),
392
392
  fresh: params.synthesizedBeliefs ?? [],
@@ -396,7 +396,7 @@ async function stagePromote(params) {
396
396
  beliefs: merged,
397
397
  now
398
398
  });
399
- await fs.writeFile(beliefsPath, symiBeliefsContent, "utf-8");
399
+ await fsPromises.writeFile(beliefsPath, symiBeliefsContent, "utf-8");
400
400
  log.debug("consolidate.promote", {
401
401
  promoted,
402
402
  sections: CORE_SECTIONS.length,
@@ -596,7 +596,7 @@ function mergeBeliefs(params) {
596
596
  return [...byHash.values()].toSorted((a, b) => b.confidence - a.confidence).slice(0, params.cap);
597
597
  }
598
598
  async function readExistingBeliefs(filePath) {
599
- const content = await fs.readFile(filePath, "utf-8").catch(() => "");
599
+ const content = await fsPromises.readFile(filePath, "utf-8").catch(() => "");
600
600
  if (!content) return [];
601
601
  const out = [];
602
602
  for (const rawLine of content.split("\n")) {
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { i as loadConfig } from "./config-B4jkreCN.js";
4
- import { x as ensureChromeExtensionRelayServer } from "./chrome-DJChpTwP.js";
5
- import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-ChcbJgNo.js";
3
+ import { i as loadConfig } from "./config-BngIfn5l.js";
4
+ import { x as ensureChromeExtensionRelayServer } from "./chrome-38OnGyuN.js";
5
+ import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-DXdk410X.js";
6
6
 
7
7
  //#region src/browser/server-lifecycle.ts
8
8
  async function ensureExtensionRelayForProfiles(params) {
@@ -80,7 +80,7 @@ async function stopBrowserControlService() {
80
80
  });
81
81
  state = null;
82
82
  try {
83
- await (await import("./pw-ai-BiBvIJzd.js")).closePlaywrightBrowserConnection();
83
+ await (await import("./pw-ai-CP5pn3eU.js")).closePlaywrightBrowserConnection();
84
84
  } catch {}
85
85
  }
86
86
 
@@ -909,6 +909,158 @@ body {
909
909
  line-height: 1.4;
910
910
  }
911
911
 
912
+ /* ── Stage D (3.5.26) mode chips + per-mode layout ───────────────── */
913
+ .symframe-modes {
914
+ display: flex;
915
+ align-items: center;
916
+ gap: 6px;
917
+ margin-top: 6px;
918
+ }
919
+ .mode-chip {
920
+ width: 10px;
921
+ height: 10px;
922
+ border-radius: 50%;
923
+ border: 1px solid rgba(0, 212, 255, 0.32);
924
+ background: transparent;
925
+ padding: 0;
926
+ cursor: pointer;
927
+ transition:
928
+ background 0.2s ease,
929
+ border-color 0.2s ease,
930
+ transform 0.15s ease;
931
+ flex-shrink: 0;
932
+ }
933
+ .mode-chip:hover {
934
+ border-color: var(--accent-cyan);
935
+ background: rgba(0, 212, 255, 0.15);
936
+ transform: scale(1.15);
937
+ }
938
+ .mode-chip.active {
939
+ background: var(--accent-cyan);
940
+ border-color: var(--accent-cyan);
941
+ box-shadow: 0 0 6px rgba(0, 212, 255, 0.5);
942
+ }
943
+ .mode-auto {
944
+ margin-left: auto;
945
+ padding: 2px 8px;
946
+ font-family: var(--font-mono);
947
+ font-size: 8px;
948
+ font-weight: 700;
949
+ letter-spacing: 0.12em;
950
+ color: var(--accent-cyan);
951
+ background: rgba(0, 212, 255, 0.08);
952
+ border: 1px solid rgba(0, 212, 255, 0.32);
953
+ border-radius: 8px;
954
+ cursor: pointer;
955
+ transition:
956
+ background 0.15s ease,
957
+ color 0.15s ease;
958
+ }
959
+ .mode-auto:hover {
960
+ background: rgba(0, 212, 255, 0.2);
961
+ color: var(--text);
962
+ }
963
+
964
+ /* ── Per-mode layout overrides ───────────────────────────────── */
965
+ /* Default (ambient): inherits the base .symframe grid above —
966
+ auto / 1fr / auto rows. No override needed. */
967
+
968
+ /* Focus mode: hide AWAITING; dim substrate to a soft texture; the
969
+ foreground card takes the visual stage. If a focusedId is set, the
970
+ matching card gets a cyan halo + others fade out. */
971
+ .symframe[data-mode="focus"] {
972
+ grid-template-rows: auto 1fr 0;
973
+ }
974
+ .symframe[data-mode="focus"] .symframe-awaiting {
975
+ display: none;
976
+ }
977
+ .symframe[data-mode="focus"] .symframe-substrate {
978
+ opacity: 0.2;
979
+ pointer-events: none;
980
+ filter: blur(2px);
981
+ transition:
982
+ opacity 0.4s ease,
983
+ filter 0.4s ease;
984
+ }
985
+ /* When focusedId is set, dim non-matching cards. */
986
+ .symframe[data-mode="focus"][data-focus-id] .symframe-card-dynamic {
987
+ opacity: 0.25;
988
+ transition: opacity 0.4s ease;
989
+ }
990
+ .symframe[data-mode="focus"][data-focus-id] .symframe-card-dynamic:hover {
991
+ opacity: 0.6;
992
+ }
993
+ /* The focused card gets a halo and stays sharp. Selector is built
994
+ dynamically by symframe.js via the [data-focus-id] attribute and
995
+ the card's own [data-card-id]; CSS can't directly match across
996
+ them, so we use a generic "the card whose id matches" pattern via
997
+ :has() (when supported) plus a fallback class added by JS. */
998
+ .symframe[data-mode="focus"] .symframe-card-focused {
999
+ opacity: 1 !important;
1000
+ box-shadow:
1001
+ 0 0 24px rgba(0, 212, 255, 0.35),
1002
+ inset 0 1px 0 rgba(255, 255, 255, 0.06),
1003
+ 0 4px 12px rgba(0, 0, 0, 0.25);
1004
+ border-color: var(--accent-cyan) !important;
1005
+ transform: scale(1.02);
1006
+ transform-origin: center;
1007
+ transition:
1008
+ box-shadow 0.4s ease,
1009
+ border-color 0.4s ease,
1010
+ transform 0.4s ease;
1011
+ }
1012
+
1013
+ /* Awaiting mode: footer dominant; cards collapse to title strips;
1014
+ substrate dims to a status band. */
1015
+ .symframe[data-mode="awaiting"] {
1016
+ grid-template-rows: auto minmax(60px, 1fr) 4fr;
1017
+ }
1018
+ .symframe[data-mode="awaiting"] .symframe-substrate {
1019
+ opacity: 0.35;
1020
+ }
1021
+ .symframe[data-mode="awaiting"] .symframe-card-dynamic {
1022
+ max-height: 38px;
1023
+ overflow: hidden;
1024
+ transition:
1025
+ max-height 0.4s ease,
1026
+ opacity 0.4s ease;
1027
+ }
1028
+ .symframe[data-mode="awaiting"] .symframe-card-dynamic .symframe-card-body,
1029
+ .symframe[data-mode="awaiting"] .symframe-card-dynamic .symframe-card-actions {
1030
+ display: none;
1031
+ }
1032
+ .symframe[data-mode="awaiting"] .symframe-awaiting {
1033
+ max-height: none;
1034
+ background: rgba(0, 212, 255, 0.04);
1035
+ border-radius: 10px;
1036
+ margin-top: 8px;
1037
+ }
1038
+ .symframe[data-mode="awaiting"] .awaiting-list {
1039
+ max-height: none;
1040
+ }
1041
+
1042
+ /* Quiet mode: only the substrate breathes. Cards + AWAITING hidden.
1043
+ This is the "deep think" or "nothing to surface" posture. */
1044
+ .symframe[data-mode="quiet"] {
1045
+ grid-template-rows: auto 1fr;
1046
+ }
1047
+ .symframe[data-mode="quiet"] .symframe-cards,
1048
+ .symframe[data-mode="quiet"] .symframe-awaiting {
1049
+ display: none;
1050
+ }
1051
+
1052
+ /* Reduced-motion: drop the per-mode transitions. The data-mode
1053
+ attribute still flips; just no animated handoff between modes. */
1054
+ @media (prefers-reduced-motion: reduce) {
1055
+ .symframe[data-mode="focus"] .symframe-substrate,
1056
+ .symframe[data-mode="focus"][data-focus-id] .symframe-card-dynamic,
1057
+ .symframe[data-mode="focus"] .symframe-card-focused,
1058
+ .symframe[data-mode="awaiting"] .symframe-substrate,
1059
+ .symframe[data-mode="awaiting"] .symframe-card-dynamic {
1060
+ transition: none;
1061
+ }
1062
+ }
1063
+
912
1064
  /* The stack — substrate + cards share a single grid cell so they
913
1065
  overlap on the z-axis. Cards on top (z:1) with backdrop-filter let
914
1066
  the substrate (z:0) show through.
@@ -202,6 +202,47 @@
202
202
  <span class="reasoning-live-dot" id="reasoning-live-dot"></span>
203
203
  <span class="symframe-count" id="symframe-count"></span>
204
204
  </div>
205
+ <!-- Stage D (3.5.26): mode selector chips. Agent picks via -->
206
+ <!-- display_artifact setMode; user can override by clicking a chip. -->
207
+ <!-- The AUTO pill appears only while userOverride is active; click -->
208
+ <!-- it to release control back to the agent. -->
209
+ <div class="symframe-modes" id="symframe-modes" role="tablist" aria-label="Panel mode">
210
+ <button
211
+ type="button"
212
+ class="mode-chip"
213
+ data-mode="ambient"
214
+ role="tab"
215
+ title="Ambient — substrate + cards + awaiting visible"
216
+ aria-label="Ambient mode"
217
+ ></button>
218
+ <button
219
+ type="button"
220
+ class="mode-chip"
221
+ data-mode="focus"
222
+ role="tab"
223
+ title="Focus — one card centered, substrate dim, footer hidden"
224
+ aria-label="Focus mode"
225
+ ></button>
226
+ <button
227
+ type="button"
228
+ class="mode-chip"
229
+ data-mode="awaiting"
230
+ role="tab"
231
+ title="Awaiting — footer prominent, cards collapsed"
232
+ aria-label="Awaiting mode"
233
+ ></button>
234
+ <button
235
+ type="button"
236
+ class="mode-chip"
237
+ data-mode="quiet"
238
+ role="tab"
239
+ title="Quiet — substrate only, cards + footer hidden"
240
+ aria-label="Quiet mode"
241
+ ></button>
242
+ <button type="button" class="mode-auto" id="mode-auto" hidden title="Release to agent">
243
+ AUTO
244
+ </button>
245
+ </div>
205
246
  <div class="symframe-sub">window into the agent's mind</div>
206
247
  </div>
207
248
  <div class="symframe-stack">
@@ -987,5 +1028,6 @@
987
1028
  <script src="js/symframe.js"></script>
988
1029
  <script src="js/symframe-substrate.js"></script>
989
1030
  <script src="js/symframe-awaiting.js"></script>
1031
+ <script src="js/symframe-modes.js"></script>
990
1032
  </body>
991
1033
  </html>