@dylanpiercey/work 0.0.116 → 0.0.117

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 (252) hide show
  1. package/bin/work.mjs +7 -29
  2. package/dist/{_BHPrqqev.js → _4-M1FiLt.js} +79 -79
  3. package/dist/{_CEKO5mam.js → _BBnpIqz1.js} +39 -39
  4. package/dist/_DHnrMF7e.js +2 -0
  5. package/dist/{_CmheBYWi.js → _b8Fct3kh.js} +15 -16
  6. package/dist/index.mjs +457 -488
  7. package/dist/public/assets/{_DN-QtD1c.js → _-Z8UOkRe.js} +1 -1
  8. package/dist/public/assets/_-Z8UOkRe.js.br +0 -0
  9. package/dist/public/assets/{_DwnEEAN3.js → _18MJzEZM.js} +1 -1
  10. package/dist/public/assets/_18MJzEZM.js.br +0 -0
  11. package/dist/public/assets/{_DZMpOq_k2.js → _6WLgQe1U2.js} +1 -1
  12. package/dist/public/assets/_6WLgQe1U2.js.br +0 -0
  13. package/dist/public/assets/{_BoLijUVS.js → _7MvaMNIr.js} +1 -1
  14. package/dist/public/assets/_7MvaMNIr.js.br +0 -0
  15. package/dist/public/assets/{_Cy6vUvOf.js → _9m5DBxeF.js} +1 -1
  16. package/dist/public/assets/_9m5DBxeF.js.br +0 -0
  17. package/dist/public/assets/{_CMtRRt5X2.js → _B9EjUGkg2.js} +1 -1
  18. package/dist/public/assets/_B9EjUGkg2.js.br +0 -0
  19. package/dist/public/assets/{_BFDzSRUb.js → _BBji3Y6b.js} +1 -1
  20. package/dist/public/assets/_BBji3Y6b.js.br +0 -0
  21. package/dist/public/assets/{_DmHNNuUl2.js → _BD7DcChF2.js} +1 -1
  22. package/dist/public/assets/_BD7DcChF2.js.br +0 -0
  23. package/dist/public/assets/{_CfRbL_Ta2.js → _BK807sss2.js} +1 -1
  24. package/dist/public/assets/_BK807sss2.js.br +0 -0
  25. package/dist/public/assets/{_R6H7Mgwp.js → _BRsp-Ky6.js} +1 -1
  26. package/dist/public/assets/_BRsp-Ky6.js.br +0 -0
  27. package/dist/public/assets/{_DCM_uGbe.js → _BSES323S.js} +1 -1
  28. package/dist/public/assets/_BSES323S.js.br +0 -0
  29. package/dist/public/assets/{_CSBn-Hvt2.js → _BTgPFRhu2.js} +1 -1
  30. package/dist/public/assets/_BTgPFRhu2.js.br +0 -0
  31. package/dist/public/assets/{_ChrrA5fF.js → _BUfH9de1.js} +1 -1
  32. package/dist/public/assets/_BUfH9de1.js.br +0 -0
  33. package/dist/public/assets/{_CTlZ1Lkv2.js → _BWPyMgyP2.js} +1 -1
  34. package/dist/public/assets/_BWPyMgyP2.js.br +0 -0
  35. package/dist/public/assets/{_BYis3bU3.js → _BZO0Y-8B.js} +1 -1
  36. package/dist/public/assets/_BZO0Y-8B.js.br +0 -0
  37. package/dist/public/assets/{_DvlwodnH2.js → _B_vKus4A2.js} +1 -1
  38. package/dist/public/assets/_B_vKus4A2.js.br +0 -0
  39. package/dist/public/assets/{_CmwkZmX02.js → _BdCj3x0L2.js} +1 -1
  40. package/dist/public/assets/_BdCj3x0L2.js.br +0 -0
  41. package/dist/public/assets/{_Cj0z289t.js → _BdVI9Fdo.js} +1 -1
  42. package/dist/public/assets/_BdVI9Fdo.js.br +0 -0
  43. package/dist/public/assets/{_C2NMRiCh.js → _BmgHXWoi.js} +1 -1
  44. package/dist/public/assets/_BmgHXWoi.js.br +0 -0
  45. package/dist/public/assets/{_BZou6DQD.js → _BqGtsnPj.js} +1 -1
  46. package/dist/public/assets/_BqGtsnPj.js.br +0 -0
  47. package/dist/public/assets/{_JMdaap6W.js → _BrtordPT.js} +21 -21
  48. package/dist/public/assets/_BrtordPT.js.br +0 -0
  49. package/dist/public/assets/{_-3KGdeyo.js → _BybHWkEd.js} +1 -1
  50. package/dist/public/assets/_BybHWkEd.js.br +0 -0
  51. package/dist/public/assets/{_2AY1cevg.js → _BzVV11vP.js} +1 -1
  52. package/dist/public/assets/_BzVV11vP.js.br +0 -0
  53. package/dist/public/assets/{_yu6_Donv2.js → _C52Kc8e02.js} +1 -1
  54. package/dist/public/assets/_C52Kc8e02.js.br +0 -0
  55. package/dist/public/assets/{_BaJXK68-.js → _C8S11_GE.js} +1 -1
  56. package/dist/public/assets/_C8S11_GE.js.br +0 -0
  57. package/dist/public/assets/{_BshAqMBd2.js → _C8tBcmDQ2.js} +1 -1
  58. package/dist/public/assets/_C8tBcmDQ2.js.br +0 -0
  59. package/dist/public/assets/{_BE2qRsPs.js → _C9uj0n8L.js} +1 -1
  60. package/dist/public/assets/_C9uj0n8L.js.br +0 -0
  61. package/dist/public/assets/{_CbbUwTEJ.js → _CBhJbYqJ.js} +1 -1
  62. package/dist/public/assets/_CBhJbYqJ.js.br +0 -0
  63. package/dist/public/assets/{_BY4vFN-X.js → _CD2VZxgc.js} +1 -1
  64. package/dist/public/assets/_CD2VZxgc.js.br +0 -0
  65. package/dist/public/assets/{_BvXxAv4T.js → _CD9LUiA1.js} +1 -1
  66. package/dist/public/assets/_CD9LUiA1.js.br +0 -0
  67. package/dist/public/assets/{_Df3c1-mC.js → _CGfW8lhA.js} +1 -1
  68. package/dist/public/assets/_CGfW8lhA.js.br +0 -0
  69. package/dist/public/assets/{_DbphB3_Y.js → _CH6beBRd.js} +1 -1
  70. package/dist/public/assets/_CH6beBRd.js.br +0 -0
  71. package/dist/public/assets/{_BqkNbZMs.js → _CK_oq_Zy.js} +1 -1
  72. package/dist/public/assets/_CK_oq_Zy.js.br +0 -0
  73. package/dist/public/assets/{_ClccdQK9.js → _CKsCeryF.js} +1 -1
  74. package/dist/public/assets/_CKsCeryF.js.br +0 -0
  75. package/dist/public/assets/{_Da_nvZ5y.js → _CN6zO7Nx.js} +1 -1
  76. package/dist/public/assets/_CN6zO7Nx.js.br +0 -0
  77. package/dist/public/assets/{_BlLpqMok.js → _CT_4aU9v.js} +1 -1
  78. package/dist/public/assets/_CT_4aU9v.js.br +0 -0
  79. package/dist/public/assets/{_CDwswGat.js → _Cc0zTPig.js} +1 -1
  80. package/dist/public/assets/_Cc0zTPig.js.br +0 -0
  81. package/dist/public/assets/{_DJfRmyos.js → _CkvKurj3.js} +1 -1
  82. package/dist/public/assets/_CkvKurj3.js.br +0 -0
  83. package/dist/public/assets/{_BomcrPR22.js → _CqCBTa4i2.js} +1 -1
  84. package/dist/public/assets/_CqCBTa4i2.js.br +0 -0
  85. package/dist/public/assets/{_B4Nu-wag.js → _CxAIftOa.js} +1 -1
  86. package/dist/public/assets/_CxAIftOa.js.br +0 -0
  87. package/dist/public/assets/{_BbXYlhz_2.js → _Cxc4x3kp2.js} +1 -1
  88. package/dist/public/assets/_Cxc4x3kp2.js.br +0 -0
  89. package/dist/public/assets/{_DzazkU0O.js → _D-lWfj_d.js} +1 -1
  90. package/dist/public/assets/_D-lWfj_d.js.br +0 -0
  91. package/dist/public/assets/{_zGSRZWQr.js → _D1v40D0_.js} +1 -1
  92. package/dist/public/assets/_D1v40D0_.js.br +0 -0
  93. package/dist/public/assets/{_chJ5r2KH2.js → _D2CBcmy92.js} +1 -1
  94. package/dist/public/assets/_D2CBcmy92.js.br +0 -0
  95. package/dist/public/assets/{_B5uwAcaB.js → _DANBCOm8.js} +1 -1
  96. package/dist/public/assets/_DANBCOm8.js.br +0 -0
  97. package/dist/public/assets/{_BzAD6TBo.js → _DFxITRGV.js} +6 -6
  98. package/dist/public/assets/_DFxITRGV.js.br +0 -0
  99. package/dist/public/assets/{_bNejHwcl2.js → _DIcIfpSi2.js} +1 -1
  100. package/dist/public/assets/_DIcIfpSi2.js.br +0 -0
  101. package/dist/public/assets/{_Ddq_uzCH2.js → _DIiQj1WK2.js} +1 -1
  102. package/dist/public/assets/_DIiQj1WK2.js.br +0 -0
  103. package/dist/public/assets/{_BhTLJW2Y.js → _DJF1Yq0V.js} +1 -1
  104. package/dist/public/assets/_DJF1Yq0V.js.br +0 -0
  105. package/dist/public/assets/{_D5BeGelx.js → _DMyeY0fg.js} +1 -1
  106. package/dist/public/assets/_DMyeY0fg.js.br +0 -0
  107. package/dist/public/assets/{_p7Nk6TN_.js → _DPYxtc2v.js} +1 -1
  108. package/dist/public/assets/_DPYxtc2v.js.br +0 -0
  109. package/dist/public/assets/{_C6_jrqyQ2.js → _DY5rDZr62.js} +1 -1
  110. package/dist/public/assets/_DY5rDZr62.js.br +0 -0
  111. package/dist/public/assets/{_BynYlMA5.js → _DZBUwVb4.js} +1 -1
  112. package/dist/public/assets/_DZBUwVb4.js.br +0 -0
  113. package/dist/public/assets/{_DM1EXBbo.js → _DcQSDUkF.js} +1 -1
  114. package/dist/public/assets/_DcQSDUkF.js.br +0 -0
  115. package/dist/public/assets/{_BB3PfRLa2.js → _Ddhg8pUf2.js} +1 -1
  116. package/dist/public/assets/_Ddhg8pUf2.js.br +0 -0
  117. package/dist/public/assets/{_Bp0PawFO.js → _Dev6jrQa.js} +1 -1
  118. package/dist/public/assets/_Dev6jrQa.js.br +0 -0
  119. package/dist/public/assets/{_C9TtAENI.js → _DmOEoBSj.js} +1 -1
  120. package/dist/public/assets/{_BK6OZyLT2.js → _DoJIySsK2.js} +1 -1
  121. package/dist/public/assets/_DoJIySsK2.js.br +0 -0
  122. package/dist/public/assets/{_DAcB8FCB.js → _Ds-nHHU4.js} +1 -1
  123. package/dist/public/assets/_Ds-nHHU4.js.br +0 -0
  124. package/dist/public/assets/{_BVkMt2PY2.js → _Dza3l03i2.js} +1 -1
  125. package/dist/public/assets/_Dza3l03i2.js.br +0 -0
  126. package/dist/public/assets/{_CXKoguEA.js → _E92w3rhc.js} +1 -1
  127. package/dist/public/assets/_E92w3rhc.js.br +0 -0
  128. package/dist/public/assets/{_mbrwXzyQ.js → _KIdOm5wV.js} +1 -1
  129. package/dist/public/assets/_KIdOm5wV.js.br +0 -0
  130. package/dist/public/assets/{_DAHhUiki.js → _KkA9wgSQ.js} +1 -1
  131. package/dist/public/assets/_KkA9wgSQ.js.br +0 -0
  132. package/dist/public/assets/{_BSIklgtS.js → _Qnv2YVI1.js} +1 -1
  133. package/dist/public/assets/_Qnv2YVI1.js.br +0 -0
  134. package/dist/public/assets/{_CASdx3AE.js → _RD4UJVHf.js} +1 -1
  135. package/dist/public/assets/_RD4UJVHf.js.br +0 -0
  136. package/dist/public/assets/{_Rwpt_eYd.js → _Rw9EiWl4.js} +1 -1
  137. package/dist/public/assets/_Rw9EiWl4.js.br +0 -0
  138. package/dist/public/assets/{_B0e3Ak7A.js → _VPFo3zSh.js} +1 -1
  139. package/dist/public/assets/_VPFo3zSh.js.br +0 -0
  140. package/dist/public/assets/{_B_qJHbwz.js → _Yb5xKwv4.js} +1 -1
  141. package/dist/public/assets/_Yb5xKwv4.js.br +0 -0
  142. package/dist/public/assets/{_C5GxdpIx.js → _bwdm3qFa.js} +1 -1
  143. package/dist/public/assets/_bwdm3qFa.js.br +0 -0
  144. package/dist/public/assets/{_CXfVimxX2.js → _ghie1-zD2.js} +1 -1
  145. package/dist/public/assets/{_DB_C0F-Z2.js → _nKN2u-0c2.js} +1 -1
  146. package/dist/public/assets/_nKN2u-0c2.js.br +0 -0
  147. package/dist/public/assets/{_Dz1I8UR4.js → _qR1knnaE.js} +1 -1
  148. package/dist/public/assets/_qR1knnaE.js.br +0 -0
  149. package/dist/public/assets/{_BNuVdL222.js → _snEbm2Ar2.js} +1 -1
  150. package/dist/public/assets/_snEbm2Ar2.js.br +0 -0
  151. package/dist/public/assets/{_Ht8V87dw2.js → _tGNZxau42.js} +1 -1
  152. package/dist/public/assets/{_BbZSZ8_I2.js → _tejT-pAf2.js} +1 -1
  153. package/dist/public/assets/_tejT-pAf2.js.br +0 -0
  154. package/dist/public/assets/{_NlAtY9z9.js → _ulYs8wvn.js} +1 -1
  155. package/dist/public/assets/_ulYs8wvn.js.br +0 -0
  156. package/dist/public/assets/app-page-DuEXAcnI.css +1 -0
  157. package/dist/public/assets/app-page-DuEXAcnI.css.br +0 -0
  158. package/dist/public/assets/diff-view-BK4TD-oL.css +1 -0
  159. package/dist/public/assets/diff-view-BK4TD-oL.css.br +0 -0
  160. package/dist/public/assets/new-gddPZdgU.js +1 -0
  161. package/dist/public/assets/settings-gddPZdgU.js +1 -0
  162. package/dist/public/assets/w-gddPZdgU.js +1 -0
  163. package/dist/public/assets/w._-E2EHSRw5.js +1 -0
  164. package/dist/public/assets/w._-gddPZdgU.js +1 -0
  165. package/lib/setup/doctor.d.mts +0 -2
  166. package/lib/setup/doctor.mjs +2 -2
  167. package/lib/usage/format.d.mts +2 -0
  168. package/lib/usage/format.mjs +22 -0
  169. package/package.json +1 -1
  170. package/dist/_BBEL67Rf.js +0 -2
  171. package/dist/public/assets/_-3KGdeyo.js.br +0 -0
  172. package/dist/public/assets/_2AY1cevg.js.br +0 -0
  173. package/dist/public/assets/_B0e3Ak7A.js.br +0 -0
  174. package/dist/public/assets/_B4Nu-wag.js.br +0 -0
  175. package/dist/public/assets/_B5uwAcaB.js.br +0 -0
  176. package/dist/public/assets/_BB3PfRLa2.js.br +0 -0
  177. package/dist/public/assets/_BE2qRsPs.js.br +0 -0
  178. package/dist/public/assets/_BFDzSRUb.js.br +0 -0
  179. package/dist/public/assets/_BK6OZyLT2.js.br +0 -0
  180. package/dist/public/assets/_BNuVdL222.js.br +0 -0
  181. package/dist/public/assets/_BSIklgtS.js.br +0 -0
  182. package/dist/public/assets/_BVkMt2PY2.js.br +0 -0
  183. package/dist/public/assets/_BY4vFN-X.js.br +0 -0
  184. package/dist/public/assets/_BYis3bU3.js.br +0 -0
  185. package/dist/public/assets/_BZou6DQD.js.br +0 -0
  186. package/dist/public/assets/_B_qJHbwz.js.br +0 -0
  187. package/dist/public/assets/_BaJXK68-.js.br +0 -0
  188. package/dist/public/assets/_BbXYlhz_2.js.br +0 -0
  189. package/dist/public/assets/_BbZSZ8_I2.js.br +0 -0
  190. package/dist/public/assets/_BhTLJW2Y.js.br +0 -0
  191. package/dist/public/assets/_BlLpqMok.js.br +0 -0
  192. package/dist/public/assets/_BoLijUVS.js.br +0 -0
  193. package/dist/public/assets/_BomcrPR22.js.br +0 -0
  194. package/dist/public/assets/_Bp0PawFO.js.br +0 -0
  195. package/dist/public/assets/_BqkNbZMs.js.br +0 -0
  196. package/dist/public/assets/_BshAqMBd2.js.br +0 -0
  197. package/dist/public/assets/_BvXxAv4T.js.br +0 -0
  198. package/dist/public/assets/_BynYlMA5.js.br +0 -0
  199. package/dist/public/assets/_BzAD6TBo.js.br +0 -0
  200. package/dist/public/assets/_C2NMRiCh.js.br +0 -0
  201. package/dist/public/assets/_C5GxdpIx.js.br +0 -0
  202. package/dist/public/assets/_C6_jrqyQ2.js.br +0 -0
  203. package/dist/public/assets/_CASdx3AE.js.br +0 -0
  204. package/dist/public/assets/_CDwswGat.js.br +0 -0
  205. package/dist/public/assets/_CMtRRt5X2.js.br +0 -0
  206. package/dist/public/assets/_CSBn-Hvt2.js.br +0 -0
  207. package/dist/public/assets/_CTlZ1Lkv2.js.br +0 -0
  208. package/dist/public/assets/_CXKoguEA.js.br +0 -0
  209. package/dist/public/assets/_CbbUwTEJ.js.br +0 -0
  210. package/dist/public/assets/_CfRbL_Ta2.js.br +0 -0
  211. package/dist/public/assets/_ChrrA5fF.js.br +0 -0
  212. package/dist/public/assets/_Cj0z289t.js.br +0 -0
  213. package/dist/public/assets/_ClccdQK9.js.br +0 -0
  214. package/dist/public/assets/_CmwkZmX02.js.br +0 -0
  215. package/dist/public/assets/_Cy6vUvOf.js.br +0 -0
  216. package/dist/public/assets/_D5BeGelx.js.br +0 -0
  217. package/dist/public/assets/_DAHhUiki.js.br +0 -0
  218. package/dist/public/assets/_DAcB8FCB.js.br +0 -0
  219. package/dist/public/assets/_DB_C0F-Z2.js.br +0 -0
  220. package/dist/public/assets/_DCM_uGbe.js.br +0 -0
  221. package/dist/public/assets/_DJfRmyos.js.br +0 -0
  222. package/dist/public/assets/_DM1EXBbo.js.br +0 -0
  223. package/dist/public/assets/_DN-QtD1c.js.br +0 -0
  224. package/dist/public/assets/_DZMpOq_k2.js.br +0 -0
  225. package/dist/public/assets/_Da_nvZ5y.js.br +0 -0
  226. package/dist/public/assets/_DbphB3_Y.js.br +0 -0
  227. package/dist/public/assets/_Ddq_uzCH2.js.br +0 -0
  228. package/dist/public/assets/_Df3c1-mC.js.br +0 -0
  229. package/dist/public/assets/_DmHNNuUl2.js.br +0 -0
  230. package/dist/public/assets/_DvlwodnH2.js.br +0 -0
  231. package/dist/public/assets/_DwnEEAN3.js.br +0 -0
  232. package/dist/public/assets/_Dz1I8UR4.js.br +0 -0
  233. package/dist/public/assets/_DzazkU0O.js.br +0 -0
  234. package/dist/public/assets/_JMdaap6W.js.br +0 -0
  235. package/dist/public/assets/_NlAtY9z9.js.br +0 -0
  236. package/dist/public/assets/_R6H7Mgwp.js.br +0 -0
  237. package/dist/public/assets/_Rwpt_eYd.js.br +0 -0
  238. package/dist/public/assets/_bNejHwcl2.js.br +0 -0
  239. package/dist/public/assets/_chJ5r2KH2.js.br +0 -0
  240. package/dist/public/assets/_mbrwXzyQ.js.br +0 -0
  241. package/dist/public/assets/_p7Nk6TN_.js.br +0 -0
  242. package/dist/public/assets/_yu6_Donv2.js.br +0 -0
  243. package/dist/public/assets/_zGSRZWQr.js.br +0 -0
  244. package/dist/public/assets/app-page-xZ7ggaFZ.css +0 -1
  245. package/dist/public/assets/app-page-xZ7ggaFZ.css.br +0 -0
  246. package/dist/public/assets/diff-view-COEkSsJh.css +0 -1
  247. package/dist/public/assets/diff-view-COEkSsJh.css.br +0 -0
  248. package/dist/public/assets/new-B4TVUCf9.js +0 -1
  249. package/dist/public/assets/settings-B4TVUCf9.js +0 -1
  250. package/dist/public/assets/w-B4TVUCf9.js +0 -1
  251. package/dist/public/assets/w._-B4TVUCf9.js +0 -1
  252. package/dist/public/assets/w._-CJLLzbFK.js +0 -1
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM, r as __exportAll, t as __commonJSMin } from "./_BMI-E3GI.js";
2
- import { $ as setSetting, A as setScrapedPhase, B as saveSubscription, C as agentBadge, D as agentMeta, E as agentLabel, F as manifest, G as agentChoices, H as subscribe, I as normalizeAccent, J as enabledAgents, K as allPrefs, L as setInstance, M as ACCENT_RE, N as getInstance, O as clearAgentPhase, P as iconSvg, Q as setPref, R as deleteSubscription, S as blankRow, T as agentFromCommand, U as subscriberCount, V as publish, W as subscriberJoins, X as preferredAgent, Y as getSetting, Z as setDisabledAgents, _ as tmuxName, _t as run, a as ensureTmuxServer, at as which, b as readHookPayload, c as killWorkspaceSessions, ct as agentById, d as newSessionArgs, dt as db, et as discoverAgents, ft as get, g as sessionStates, gt as git, h as sendToSession, ht as gh, i as disposeSessions, it as setupPath, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as toolById, m as renameSession, mt as TMUX_SOCKET, n as clearTmuxStarted, nt as ghKnownHosts, o as getSession, ot as DEFAULT_GITHUB_HOST, p as panePids, pt as workspacePath, q as disabledAgents, r as createSession, rt as miseVersions, s as killSession, st as TOOLS, t as cleanEnv, tt as doctor, u as markTmuxStarted, ut as all, v as tmuxWasStarted, vt as tmux, w as agentFamily, x as reportsWorking, y as AGENTS, yt as config, z as pushPublicKey } from "./_CmheBYWi.js";
3
- import { $ as _content, A as repoLabel, At as attrTag, B as phase, C as sideNavOpen, Ct as _serialize_if, D as icon_xmark_default, Dt as _to_text, E as toast_default, Et as _template, H as $global, I as iconBtnRow, J as _attr_or, K as _attr_input_value, L as iconBtnXs, M as setPrimaryHost, Mt as withPageAssets, N as btnLg, Nt as writeScope, O as icon_base_default, Ot as _trailers, P as btnSm, Q as _attrs_partial, R as inputLg, S as setWorkspaceTab, St as _serialize_guard, T as workspaceTab, Tt as _subscribe, U as _attr, V as tone, W as _attr_class, X as _attr_style, Y as _attr_select_value, Z as _attrs, _t as _scope_id, at as _escape, bt as _script, c as icon_arrow_up_default, ct as _for_of, d as iconBtn$2, dt as _html, et as _content_resume, f as row, ft as _id, gt as _resume_branch, ht as _resume, i as icon_sidebar_default, it as _el_resume, j as repoWebUrl$1, jt as forOf, k as parseRepoUrl, kt as _var, l as icon_back_default, lt as _hoist, mt as _peek_scope_id, n as findIconBtn, o as rankRepos, ot as _existing_scope, p as sectionCount$1, pt as _if, q as _attr_option_value, r as findInput, rt as _el_read_error, s as icon_search_default, st as _flush_head, t as icon_arrow_down_default, tt as _dynamic_tag, u as icon_refresh_default, ut as _hoist_read_error, v as ignoredSsoOrgs, vt as _scope_reason, w as theme, wt as _set_serialize_reason, x as setTheme, xt as _sep, yt as _scope_with_id, z as metaTrunc } from "./_CEKO5mam.js";
2
+ import { $ as setSetting, A as setScrapedPhase, B as saveSubscription, C as agentBadge, D as agentMeta, E as agentLabel, F as manifest, G as agentChoices, H as subscribe, I as normalizeAccent, J as enabledAgents, K as allPrefs, L as setInstance, M as ACCENT_RE, N as getInstance, O as clearAgentPhase, P as iconSvg, Q as setPref, R as deleteSubscription, S as blankRow, T as agentFromCommand, U as subscriberCount, V as publish, W as subscriberJoins, X as preferredAgent, Y as getSetting, Z as setDisabledAgents, _ as tmuxName, _t as run, a as ensureTmuxServer, at as which, b as readHookPayload, c as killWorkspaceSessions, ct as agentById, d as newSessionArgs, dt as db, et as discoverAgents, ft as get, g as sessionStates, gt as git, h as sendToSession, ht as gh, i as disposeSessions, it as setupPath, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as toolById, m as renameSession, mt as TMUX_SOCKET, n as clearTmuxStarted, nt as ghKnownHosts, o as getSession, ot as DEFAULT_GITHUB_HOST, p as panePids, pt as workspacePath, q as disabledAgents, r as createSession, rt as miseVersions, s as killSession, st as TOOLS, t as cleanEnv, tt as doctor, u as markTmuxStarted, ut as all, v as tmuxWasStarted, vt as tmux, w as agentFamily, x as reportsWorking, y as AGENTS, yt as config, z as pushPublicKey } from "./_b8Fct3kh.js";
3
+ import { $ as _content, A as repoLabel, At as attrTag, B as phase, C as sideNavOpen, Ct as _serialize_if, D as icon_xmark_default, Dt as _to_text, E as toast_default, Et as _template, H as $global, I as iconBtnRow, J as _attr_or, K as _attr_input_value, L as iconBtnXs, M as setPrimaryHost, Mt as withPageAssets, N as btnLg, Nt as writeScope, O as icon_base_default, Ot as _trailers, P as btnSm, Q as _attrs_partial, R as inputLg, S as setWorkspaceTab, St as _serialize_guard, T as workspaceTab, Tt as _subscribe, U as _attr, V as tone, W as _attr_class, X as _attr_style, Y as _attr_select_value, Z as _attrs, _t as _scope_id, at as _escape, bt as _script, c as icon_arrow_up_default, ct as _for_of, d as iconBtn$2, dt as _html, et as _content_resume, f as row, ft as _id, gt as _resume_branch, ht as _resume, i as icon_sidebar_default, it as _el_resume, j as repoWebUrl$1, jt as forOf, k as parseRepoUrl, kt as _var, l as icon_back_default, lt as _hoist, mt as _peek_scope_id, n as findIconBtn, o as rankRepos, ot as _existing_scope, p as sectionCount$1, pt as _if, q as _attr_option_value, r as findInput, rt as _el_read_error, s as icon_search_default, st as _flush_head, t as icon_arrow_down_default, tt as _dynamic_tag, u as icon_refresh_default, ut as _hoist_read_error, v as ignoredSsoOrgs, vt as _scope_reason, w as theme, wt as _set_serialize_reason, x as setTheme, xt as _sep, yt as _scope_with_id, z as metaTrunc } from "./_BBnpIqz1.js";
4
4
  import fs from "node:fs";
5
5
  import { createServer } from "node:http";
6
6
  import path from "node:path";
@@ -1921,6 +1921,11 @@ var branches = swr(3e5, async (fullName) => {
1921
1921
  //#endregion
1922
1922
  //#region src/server/procs.ts
1923
1923
  var darwin = process.platform === "darwin";
1924
+ /** Is `cwd` the workspace root or somewhere under it? The trailing slash is
1925
+ * the whole point: a sibling `…/work-2` must not read as inside `…/work`. */
1926
+ function inside(cwd, root) {
1927
+ return cwd === root || cwd.startsWith(root + "/");
1928
+ }
1924
1929
  /** Listening TCP ports attributed to workspaces by the owning process's cwd. */
1925
1930
  async function portsByWorkspace(paths) {
1926
1931
  const result = /* @__PURE__ */ new Map();
@@ -1929,7 +1934,7 @@ async function portsByWorkspace(paths) {
1929
1934
  for (const info of ports) {
1930
1935
  const cwd = cwds.get(info.pid);
1931
1936
  if (!cwd) continue;
1932
- for (const [wsId, wsPath] of canonical) if (cwd === wsPath || cwd.startsWith(wsPath + "/")) {
1937
+ for (const [wsId, wsPath] of canonical) if (inside(cwd, wsPath)) {
1933
1938
  const list = result.get(wsId) || [];
1934
1939
  list.push(info);
1935
1940
  result.set(wsId, list);
@@ -1949,7 +1954,7 @@ async function workspaceProcs(wsPath) {
1949
1954
  for (const { port, pid } of ports) portsByPid.set(pid, [...portsByPid.get(pid) || [], port]);
1950
1955
  const procs = [];
1951
1956
  for (const [pid, cwd] of cwds) {
1952
- if (cwd !== wsPath && !cwd.startsWith(wsPath + "/")) continue;
1957
+ if (!inside(cwd, wsPath)) continue;
1953
1958
  const parts = await procArgs(pid);
1954
1959
  if (!parts.length) continue;
1955
1960
  const cmd = parts[0].split("/").pop() || parts[0];
@@ -1975,10 +1980,7 @@ async function killWorkspaceProcs(wsPath) {
1975
1980
  async function killWorkspaceProc(pid, wsPaths) {
1976
1981
  const cwd = await readCwd(pid);
1977
1982
  if (!cwd) return false;
1978
- if (!wsPaths.some((p) => {
1979
- const root = realPath(p);
1980
- return cwd === root || cwd.startsWith(root + "/");
1981
- })) return false;
1983
+ if (!wsPaths.some((p) => inside(cwd, realPath(p)))) return false;
1982
1984
  try {
1983
1985
  process.kill(pid, "SIGTERM");
1984
1986
  } catch {
@@ -2146,10 +2148,10 @@ function getWorkspace(id) {
2146
2148
  const ws = get("SELECT * FROM workspaces WHERE id = ?", id);
2147
2149
  return ws && hydrate(ws);
2148
2150
  }
2151
+ var home$1 = os.homedir();
2149
2152
  function hydrate(ws) {
2150
- const home = os.homedir();
2151
2153
  ws.repos = all("SELECT full_name, worktree, base_branch, default_branch FROM repos WHERE workspace_id = ? ORDER BY worktree", ws.id);
2152
- ws.display_path = ws.path.startsWith(home) ? `~${ws.path.slice(home.length)}` : ws.path;
2154
+ ws.display_path = ws.path.startsWith(home$1) ? `~${ws.path.slice(home$1.length)}` : ws.path;
2153
2155
  return ws;
2154
2156
  }
2155
2157
  async function createWorkspace(name, repos) {
@@ -2599,12 +2601,7 @@ async function pruneLaneBranch(workspaceId, fullName, lane, headOid) {
2599
2601
  if (!ws.repos.some((r) => r.full_name === fullName)) return false;
2600
2602
  return withRepoLock(fullName, async () => {
2601
2603
  const bare = barePath(fullName);
2602
- const local = await git([
2603
- "rev-parse",
2604
- "--verify",
2605
- `refs/heads/${lane}`
2606
- ], bare).catch(() => "");
2607
- if (!local || local !== headOid) return false;
2604
+ if (await revParse(bare, `refs/heads/${lane}`) !== headOid) return false;
2608
2605
  return git([
2609
2606
  "branch",
2610
2607
  "-D",
@@ -3317,14 +3314,13 @@ async function refreshPrsBatch(targets, force = false) {
3317
3314
  if (upstream) names.add(splitRepo(upstream).name);
3318
3315
  byHost.set(host, names);
3319
3316
  }
3320
- const branchesAll = [...new Set(wanted.map((t) => t.branch))];
3321
- const results = await Promise.all([...byHost].map(([host, names]) => searchPrs(host, [...names], branchesAll).catch((err) => {
3317
+ const branches = [...new Set(wanted.map((t) => t.branch))];
3318
+ const results = await Promise.all([...byHost].map(([host, names]) => searchPrs(host, [...names], branches).catch((err) => {
3322
3319
  if (byHost.size === 1) throw err;
3323
3320
  return null;
3324
3321
  })));
3325
3322
  const nodes = results.flatMap((r) => r ?? []);
3326
3323
  const failedHosts = new Set([...byHost.keys()].filter((_, i) => results[i] === null));
3327
- const branches = [...new Set(wanted.map((t) => t.branch))];
3328
3324
  for (const target of wanted) {
3329
3325
  if (failedHosts.has(splitRepo(target.fullName).host)) continue;
3330
3326
  const foreign = branches.filter((b) => b !== target.branch);
@@ -3518,15 +3514,12 @@ async function statusForAllFresh() {
3518
3514
  /** RSS here is the Node + Marko baseline (~80 MB empty, ~115 MB loaded),
3519
3515
  * not a leak and not worth chasing — young-gen flags do not move it. */
3520
3516
  async function computeStatus() {
3521
- const workspaces = listWorkspaces().filter((ws) => ws.status === "active");
3517
+ const everyWorkspace = listWorkspaces();
3518
+ const workspaces = everyWorkspace.filter((ws) => ws.status === "active");
3522
3519
  const paths = new Map(workspaces.map((ws) => [ws.id, ws.path]));
3523
3520
  const [ports, states] = await Promise.all([portsByWorkspace(paths), sessionStates()]);
3524
- const allBranches = listWorkspaces().map((w) => ({
3525
- id: w.id,
3526
- branch: w.branch
3527
- }));
3528
3521
  const entries = await Promise.all(workspaces.map(async (ws) => {
3529
- const foreign = allBranches.filter((w) => w.id !== ws.id).map((w) => w.branch);
3522
+ const foreign = everyWorkspace.filter((w) => w.id !== ws.id).map((w) => w.branch);
3530
3523
  const statuses = await Promise.all(ws.repos.map((repo) => repoStatus(ws, repo, foreign)));
3531
3524
  return [ws.id, {
3532
3525
  ports: ports.get(ws.id) || [],
@@ -3789,6 +3782,23 @@ async function api$7(url, init) {
3789
3782
  return data;
3790
3783
  }
3791
3784
  //#endregion
3785
+ //#region lib/usage/format.mjs
3786
+ /** Percent, with a decimal only where rounding would lie: 99.6% must not
3787
+ * read as a spent 100%, and 0.4% must not read as an untouched 0%. */
3788
+ function pctText(pct) {
3789
+ const rounded = Math.round(pct);
3790
+ return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
3791
+ }
3792
+ /** Coarse span — minutes, then hours, then days. Used for "resets in" and
3793
+ * "n old", where a precise figure would imply freshness it doesn't have. */
3794
+ function duration(ms) {
3795
+ const m = Math.round(ms / 6e4);
3796
+ if (m < 60) return `${m}m`;
3797
+ const h = Math.round(m / 60);
3798
+ if (h < 48) return `${h}h`;
3799
+ return `${Math.round(h / 24)}d`;
3800
+ }
3801
+ //#endregion
3792
3802
  //#region src/client/usage.ts
3793
3803
  var cached$1 = null;
3794
3804
  function lastUsage$1() {
@@ -3932,28 +3942,28 @@ function applyInstance(inst) {
3932
3942
  }
3933
3943
  //#endregion
3934
3944
  //#region src/tags/settings-page.css.ts
3935
- var content$2 = "_cd _bp _bq";
3936
- var agentGrid = "_ch _bA";
3937
- var toolGrid = "_cr _bA";
3938
- var themeSeg = "_cG _6";
3939
- var swatches = "_cO _6";
3945
+ var content$2 = "_cb _bo _bp";
3946
+ var agentGrid = "_cf _bz";
3947
+ var toolGrid = "_cp _bz";
3948
+ var themeSeg = "_cE _5";
3949
+ var swatches = "_cM _5";
3940
3950
  //#endregion
3941
3951
  //#region src/tags/page-head.marko
3942
3952
  var page_head_default = _template("r", (input) => {
3943
3953
  const $scope0_reason = _scope_reason(), $sg__input_backHref__OR__input_onBack__OR__input_meta__OR__input_actions = _serialize_guard($scope0_reason, 3), $sg__input_meta = _serialize_guard($scope0_reason, 6), $sg__input_actions = _serialize_guard($scope0_reason, 7), $si__input_backHref__OR__input_onBack = _serialize_if($scope0_reason, 1), $si__input_meta = _serialize_if($scope0_reason, 6), $si__input_actions = _serialize_if($scope0_reason, 7);
3944
3954
  const $scope0_id = _scope_id();
3945
- _html(`<header${_attr_class("_br")}>`);
3955
+ _html(`<header${_attr_class("_bq")}>`);
3946
3956
  _if(() => {
3947
3957
  if (input.backHref) {
3948
3958
  const $scope1_id = _scope_id();
3949
- _html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_cV"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3959
+ _html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_cT"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3950
3960
  icon_back_default({ size: 16 });
3951
3961
  _html(`</a>${_el_resume($scope1_id, "a", _serialize_guard($scope0_reason, 0))}`);
3952
3962
  _serialize_if($scope0_reason, 2) && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 0) && _scope_with_id($scope0_id) });
3953
3963
  return 0;
3954
3964
  } else if (input.onBack) {
3955
3965
  const $scope2_id = _scope_id();
3956
- _html(`<button${_attr_class([iconBtnRow, "_cV"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3966
+ _html(`<button${_attr_class([iconBtnRow, "_cT"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3957
3967
  icon_back_default({ size: 16 });
3958
3968
  _html(`</button>${_el_resume($scope2_id, "a")}`);
3959
3969
  _script($scope2_id, "r0");
@@ -3961,11 +3971,11 @@ var page_head_default = _template("r", (input) => {
3961
3971
  return 1;
3962
3972
  }
3963
3973
  }, $scope0_id, "b", _serialize_guard($scope0_reason, 2), _serialize_guard($scope0_reason, 1), $sg__input_backHref__OR__input_onBack__OR__input_meta__OR__input_actions, 0, 1);
3964
- _html(`<div${_attr_class("_bt")}><h1${_attr("id", input.titleId)}${_attr_class("_bs")}>${_escape(input.title)}${_el_resume($scope0_id, "e", _serialize_guard($scope0_reason, 5))}</h1>${_el_resume($scope0_id, "d", _serialize_guard($scope0_reason, 4))}`);
3974
+ _html(`<div${_attr_class("_bs")}><h1${_attr("id", input.titleId)}${_attr_class("_br")}>${_escape(input.title)}${_el_resume($scope0_id, "e", _serialize_guard($scope0_reason, 5))}</h1>${_el_resume($scope0_id, "d", _serialize_guard($scope0_reason, 4))}`);
3965
3975
  _if(() => {
3966
3976
  if (input.meta) {
3967
3977
  const $scope3_id = _scope_id();
3968
- _html(`<p${_attr_class("_bu")}>`);
3978
+ _html(`<p${_attr_class("_bt")}>`);
3969
3979
  _dynamic_tag($scope3_id, "b", input.meta, {}, 0, 0, $sg__input_meta);
3970
3980
  _html("</p>");
3971
3981
  $si__input_meta && writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
@@ -3976,7 +3986,7 @@ var page_head_default = _template("r", (input) => {
3976
3986
  _if(() => {
3977
3987
  if (input.actions) {
3978
3988
  const $scope4_id = _scope_id();
3979
- _html(`<div${_attr_class("_bv")}>`);
3989
+ _html(`<div${_attr_class("_bu")}>`);
3980
3990
  _dynamic_tag($scope4_id, "b", input.actions, {}, 0, 0, $sg__input_actions);
3981
3991
  _html("</div>");
3982
3992
  $si__input_actions && writeScope($scope4_id, { _: _scope_with_id($scope0_id) });
@@ -4044,10 +4054,10 @@ var icon_agent_default = _template("G", (input) => {
4044
4054
  n: $badge__closures
4045
4055
  });
4046
4056
  });
4047
- var usageNote = "_dw _S";
4057
+ var usageNote = "_e6 _R";
4048
4058
  //#endregion
4049
4059
  //#region src/tags/icons/icon-warning.marko
4050
- var icon_warning_default = _template("kb", (input) => {
4060
+ var icon_warning_default = _template("jb", (input) => {
4051
4061
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
4052
4062
  const $scope0_id = _scope_id();
4053
4063
  _set_serialize_reason({
@@ -4064,17 +4074,6 @@ var icon_warning_default = _template("kb", (input) => {
4064
4074
  });
4065
4075
  //#endregion
4066
4076
  //#region src/tags/usage-meters.marko
4067
- function duration(ms) {
4068
- const m = Math.round(ms / 6e4);
4069
- if (m < 60) return `${m}m`;
4070
- const h = Math.round(m / 60);
4071
- if (h < 48) return `${h}h`;
4072
- return `${Math.round(h / 24)}d`;
4073
- }
4074
- function pctText$1(pct) {
4075
- const rounded = Math.round(pct);
4076
- return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
4077
- }
4078
4077
  function resetLabel(iso, stale) {
4079
4078
  if (!iso) return null;
4080
4079
  const ms = new Date(iso).getTime() - Date.now();
@@ -4085,11 +4084,11 @@ var usage_meters_default = _template("D", (input) => {
4085
4084
  const $scope0_reason = _scope_reason(), $sg__input_agent__OR__input_hideName = _serialize_guard($scope0_reason, 0), $sg__input_agent = _serialize_guard($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 1), $sg__input_hideName = _serialize_guard($scope0_reason, 2), $si__input_agent__OR__input_hideName = _serialize_if($scope0_reason, 0);
4086
4085
  const $scope0_id = _scope_id();
4087
4086
  const agent = input.agent;
4088
- _html(`<div${_attr_class(["_dq", { ["_dr"]: input.hideName }])}><div${_attr_class("_ds")}>`);
4087
+ _html(`<div${_attr_class(["_e0", { ["_e1"]: input.hideName }])}><div${_attr_class("_e2")}>`);
4089
4088
  _if(() => {
4090
4089
  if (!input.hideName) {
4091
4090
  const $scope1_id = _scope_id();
4092
- _html(`<strong${_attr_class("_dL")}>${_escape(agent.agent)}${_el_resume($scope1_id, "b", $sg__input_agent)}</strong>`);
4091
+ _html(`<strong${_attr_class("_fk")}>${_escape(agent.agent)}${_el_resume($scope1_id, "b", $sg__input_agent)}</strong>`);
4093
4092
  $si__input_agent__OR__input_hideName && writeScope($scope1_id, { _: $si__input_agent && _scope_with_id($scope0_id) });
4094
4093
  return 0;
4095
4094
  }
@@ -4097,7 +4096,7 @@ var usage_meters_default = _template("D", (input) => {
4097
4096
  _if(() => {
4098
4097
  if (agent.plan && agent.plan.toLowerCase() !== agent.agent.toLowerCase()) {
4099
4098
  const $scope2_id = _scope_id();
4100
- _html(`<span${_attr_class("_dt")}>${_escape(agent.plan.replace(/^default_/, "").replaceAll("_", " "))}${_el_resume($scope2_id, "b", $sg__input_agent)}</span>`);
4099
+ _html(`<span${_attr_class("_e3")}>${_escape(agent.plan.replace(/^default_/, "").replaceAll("_", " "))}${_el_resume($scope2_id, "b", $sg__input_agent)}</span>`);
4101
4100
  $si__input_agent && writeScope($scope2_id, { _: _scope_with_id($scope0_id) });
4102
4101
  return 0;
4103
4102
  }
@@ -4105,21 +4104,21 @@ var usage_meters_default = _template("D", (input) => {
4105
4104
  _if(() => {
4106
4105
  if (agent.stale_seconds != null) {
4107
4106
  const $scope3_id = _scope_id();
4108
- _html(`<span${_attr_class("_du")}${_attr("title", `${agent.note || "provider unreachable"}. Last cached numbers, ${duration(agent.stale_seconds * 1e3)} old`)}>`);
4107
+ _html(`<span${_attr_class("_e4")}${_attr("title", `${agent.note || "provider unreachable"}. Last cached numbers, ${duration(agent.stale_seconds * 1e3)} old`)}>`);
4109
4108
  icon_warning_default({ size: 12 });
4110
4109
  _html(` ${_sep($sg__input_agent)}${_escape(duration(agent.stale_seconds * 1e3))}${_el_resume($scope3_id, "c", $sg__input_agent)} old</span>${_el_resume($scope3_id, "a", $sg__input_agent)}`);
4111
4110
  $si__input_agent && writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
4112
4111
  return 0;
4113
4112
  }
4114
4113
  }, $scope0_id, "e", $sg__input_agent, $sg__input_agent, $sg__input_agent__OR__input_hideName, 0, 1);
4115
- _html(`</div><div${_attr_class(["_dv", { ["_dM"]: agent.stale_seconds != null }])}>`);
4114
+ _html(`</div><div${_attr_class(["_e5", { ["_fl"]: agent.stale_seconds != null }])}>`);
4116
4115
  _for_of(agent.windows || [], (win) => {
4117
4116
  const $scope4_id = _scope_id();
4118
- const pct = pctText$1(win.used_percent);
4117
+ const pct = pctText(win.used_percent);
4119
4118
  const label = resetLabel(win.resets_at, agent.stale_seconds != null);
4120
- const fillClass = win.used_percent >= 90 ? "_dE" : win.used_percent >= 70 ? "_dD" : win.used_percent >= 40 ? "_dC" : "_dB";
4121
- const pctClass = win.used_percent >= 90 ? "_dJ" : win.used_percent >= 70 ? "_dI" : win.used_percent >= 40 ? "_dH" : "_dG";
4122
- _html(`<div${_attr_class("_dx")}${_attr("title", `${win.window}: ${pct} used${win.resets_at ? `, resets ${new Date(win.resets_at).toLocaleString()}` : ""}`)}><span${_attr_class("_dy")}>${_escape(win.window)}${_el_resume($scope4_id, "c", $sg__input_agent)}</span><span${_attr_class("_dz")}><span${_attr_class(["_dA", fillClass])}${_attr_style(`width:${Math.min(100, Math.max(2, win.used_percent))}%`)}></span>${_el_resume($scope4_id, "e", $sg__input_agent)}</span><span${_attr_class(["_dF", pctClass])}>${_escape(pct)}${_el_resume($scope4_id, "g", $sg__input_agent)}</span>${_el_resume($scope4_id, "f", $sg__input_agent)}<span${_attr_class("_dK")}>`);
4119
+ const fillClass = win.used_percent >= 90 ? "_fd" : win.used_percent >= 70 ? "_fc" : win.used_percent >= 40 ? "_fb" : "_fa";
4120
+ const pctClass = win.used_percent >= 90 ? "_fi" : win.used_percent >= 70 ? "_fh" : win.used_percent >= 40 ? "_fg" : "_ff";
4121
+ _html(`<div${_attr_class("_e7")}${_attr("title", `${win.window}: ${pct} used${win.resets_at ? `, resets ${new Date(win.resets_at).toLocaleString()}` : ""}`)}><span${_attr_class("_e8")}>${_escape(win.window)}${_el_resume($scope4_id, "c", $sg__input_agent)}</span><span${_attr_class("_e9")}><span${_attr_class(["_e_", fillClass])}${_attr_style(`width:${Math.min(100, Math.max(2, win.used_percent))}%`)}></span>${_el_resume($scope4_id, "e", $sg__input_agent)}</span><span${_attr_class(["_fe", pctClass])}>${_escape(pct)}${_el_resume($scope4_id, "g", $sg__input_agent)}</span>${_el_resume($scope4_id, "f", $sg__input_agent)}<span${_attr_class("_fj")}>`);
4123
4122
  _if(() => {
4124
4123
  if (label) {
4125
4124
  const $scope6_id = _scope_id();
@@ -4198,14 +4197,14 @@ var sso_auth_default = _template("z", (input) => {
4198
4197
  localCode = null;
4199
4198
  }
4200
4199
  }, "z0", $scope0_id);
4201
- _html(`<div${_attr_class("_de")}>`);
4200
+ _html(`<div${_attr_class("_eO")}>`);
4202
4201
  _if(() => {
4203
4202
  if (input.items.length) {
4204
4203
  const $scope1_id = _scope_id();
4205
- _html(`<p${_attr_class("_dp")}>GitHub CLI needs org SSO for ${_sep($sg__input_items)}${_escape(input.items.map((s) => s.org).join(", "))}${_el_resume($scope1_id, "b", $sg__input_items)}.</p><ul${_attr_class("_df")}>`);
4204
+ _html(`<p${_attr_class("_eZ")}>GitHub CLI needs org SSO for ${_sep($sg__input_items)}${_escape(input.items.map((s) => s.org).join(", "))}${_el_resume($scope1_id, "b", $sg__input_items)}.</p><ul${_attr_class("_eP")}>`);
4206
4205
  _for_of(input.items, (s) => {
4207
4206
  const $scope2_id = _scope_id();
4208
- _html(`<li${_attr_class("_dg")}>${_escape(s.org)}${_el_resume($scope2_id, "b", $sg__input_items)}<button type=button${_attr_class("_dh")}${_attr("title", `Skip ${s.org}`)}${_attr("aria-label", `Skip ${s.org}`)}${_attr("disabled", busy)}>`);
4207
+ _html(`<li${_attr_class("_eQ")}>${_escape(s.org)}${_el_resume($scope2_id, "b", $sg__input_items)}<button type=button${_attr_class("_eR")}${_attr("title", `Skip ${s.org}`)}${_attr("aria-label", `Skip ${s.org}`)}${_attr("disabled", busy)}>`);
4209
4208
  icon_xmark_default({ size: 11 });
4210
4209
  _html(`</button>${_el_resume($scope2_id, "c")}</li>`);
4211
4210
  _script($scope2_id, "z1");
@@ -4214,17 +4213,17 @@ var sso_auth_default = _template("z", (input) => {
4214
4213
  _: _scope_with_id($scope1_id)
4215
4214
  }));
4216
4215
  }, "org", $scope1_id, "c", $sg__input_items, $sg__input_items, $sg__input_items, "</ul>", 1);
4217
- _html(`<div${_attr_class("_di")}>`);
4216
+ _html(`<div${_attr_class("_eS")}>`);
4218
4217
  _if(() => {
4219
4218
  if (busy && authCode$2) {
4220
4219
  const $scope5_id = _scope_id();
4221
- _html(`<span${_attr_class("_dj")}><span${_attr_class("_F")}></span> Enter code <strong${_attr_class("_dk")}>${_escape(authCode$2)}${_el_resume($scope5_id, "d")}</strong> at <a${_attr("href", `https://${host}/login/device`)}${_attr_class("_dl")}>${_escape(host)}${_el_resume($scope5_id, "f", _serialize_guard($scope0_reason, 3))}/login/device</a>${_el_resume($scope5_id, "e")}</span>`);
4220
+ _html(`<span${_attr_class("_eT")}><span${_attr_class("_E")}></span> Enter code <strong${_attr_class("_eU")}>${_escape(authCode$2)}${_el_resume($scope5_id, "d")}</strong> at <a${_attr("href", `https://${host}/login/device`)}${_attr_class("_eV")}>${_escape(host)}${_el_resume($scope5_id, "f", _serialize_guard($scope0_reason, 3))}/login/device</a>${_el_resume($scope5_id, "e")}</span>`);
4222
4221
  _script($scope5_id, "z2");
4223
4222
  _subscribe($authCode__closures, _subscribe($si__input_items_0_host && $host__closures, writeScope($scope5_id, {})));
4224
4223
  return 0;
4225
4224
  } else if (busy) {
4226
4225
  const $scope8_id = _scope_id();
4227
- _html(`<span${_attr_class("_dj")}><span${_attr_class("_F")}></span>Starting GitHub re-authorization…</span>`);
4226
+ _html(`<span${_attr_class("_eT")}><span${_attr_class("_E")}></span>Starting GitHub re-authorization…</span>`);
4228
4227
  writeScope($scope8_id, {});
4229
4228
  return 1;
4230
4229
  } else {
@@ -4238,7 +4237,7 @@ var sso_auth_default = _template("z", (input) => {
4238
4237
  _if(() => {
4239
4238
  if (localError) {
4240
4239
  const $scope6_id = _scope_id();
4241
- _html(`<p${_attr_class("_dp")}>${_escape(localError)}${_el_resume($scope6_id, "b")}</p>`);
4240
+ _html(`<p${_attr_class("_eZ")}>${_escape(localError)}${_el_resume($scope6_id, "b")}</p>`);
4242
4241
  _subscribe($localError__closures, writeScope($scope6_id, {}));
4243
4242
  return 0;
4244
4243
  }
@@ -4250,10 +4249,10 @@ var sso_auth_default = _template("z", (input) => {
4250
4249
  _if(() => {
4251
4250
  if (skipped$1.length) {
4252
4251
  const $scope3_id = _scope_id();
4253
- _html(`<p${_attr_class("_dm")}>Skipped SSO for `);
4252
+ _html(`<p${_attr_class("_eW")}>Skipped SSO for `);
4254
4253
  _for_of(skipped$1, (s) => {
4255
4254
  const $scope4_id = _scope_id();
4256
- _html(`<span${_attr_class("_dn")}>${_escape(s.org)}${_el_resume($scope4_id, "b", $sg__input_skipped)}<button type=button${_attr_class("_do")}${_attr("title", `Show ${s.org} again`)}>(undo)</button>${_el_resume($scope4_id, "c")}</span>`);
4255
+ _html(`<span${_attr_class("_eX")}>${_escape(s.org)}${_el_resume($scope4_id, "b", $sg__input_skipped)}<button type=button${_attr_class("_eY")}${_attr("title", `Show ${s.org} again`)}>(undo)</button>${_el_resume($scope4_id, "c")}</span>`);
4257
4256
  _script($scope4_id, "z4");
4258
4257
  writeScope($scope4_id, {
4259
4258
  f: s?.org,
@@ -4290,7 +4289,7 @@ var sso_auth_default = _template("z", (input) => {
4290
4289
  });
4291
4290
  //#endregion
4292
4291
  //#region src/tags/icons/icon-plus.marko
4293
- var icon_plus_default = _template("db", (input) => {
4292
+ var icon_plus_default = _template("cb", (input) => {
4294
4293
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
4295
4294
  const $scope0_id = _scope_id();
4296
4295
  _set_serialize_reason({
@@ -4328,7 +4327,7 @@ var modal_view_default = _template("p", (input) => {
4328
4327
  const { label, class: inputClass, open: _open, openChange: _openChange, dismissable: _dismissable, content, footer, closedby: _closedby, onCancel: _onCancel, onClose: _onClose, "aria-label": inputAriaLabel, "aria-labelledby": inputLabelledBy, ...htmlInput } = input;
4329
4328
  const dismissable = input.dismissable !== false;
4330
4329
  let open = input.open;
4331
- _html(`<dialog${_attr_class(["_fu", inputClass])}${_attr("aria-labelledby", inputLabelledBy)}${inputLabelledBy ? _attr("aria-label", inputAriaLabel) : _attr("aria-label", inputAriaLabel || label)} closedby=${dismissable ? "any" : "none"}${_attrs_partial({
4330
+ _html(`<dialog${_attr_class(["_gv", inputClass])}${_attr("aria-labelledby", inputLabelledBy)}${inputLabelledBy ? _attr("aria-label", inputAriaLabel) : _attr("aria-label", inputAriaLabel || label)} closedby=${dismissable ? "any" : "none"}${_attrs_partial({
4332
4331
  ...htmlInput,
4333
4332
  open: null
4334
4333
  }, {
@@ -4338,20 +4337,20 @@ var modal_view_default = _template("p", (input) => {
4338
4337
  closedby: 1,
4339
4338
  "on-cancel": 1,
4340
4339
  "on-close": 1
4341
- }, "a", $scope0_id, "dialog")}><div${_attr_class("_fv")}>`);
4340
+ }, "a", $scope0_id, "dialog")}><div${_attr_class("_gw")}>`);
4342
4341
  _dynamic_tag($scope0_id, "c", content, {}, 0, 0, _serialize_guard($scope0_reason, 6));
4343
4342
  _html("</div>");
4344
4343
  _if(() => {
4345
4344
  if (footer) {
4346
4345
  const $scope1_id = _scope_id();
4347
- _html(`<form method=dialog${_attr_class("_fw")}>`);
4346
+ _html(`<form method=dialog${_attr_class("_gx")}>`);
4348
4347
  _dynamic_tag($scope1_id, "b", footer.content, {}, 0, 0, _serialize_guard($scope0_reason, 7));
4349
4348
  _html("</form>");
4350
4349
  $si__input_openChange__OR__input_footer && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 7) && _scope_with_id($scope0_id) });
4351
4350
  return 0;
4352
4351
  } else if (input.openChange) {
4353
4352
  const $scope2_id = _scope_id();
4354
- _html(`<form method=dialog${_attr_class("_fw")}>`);
4353
+ _html(`<form method=dialog${_attr_class("_gx")}>`);
4355
4354
  dialog_close_default({
4356
4355
  class: ["_o", "_p"],
4357
4356
  content: _content("p0", () => {
@@ -4410,14 +4409,14 @@ var prompt_dialog_default = _template("s", (input) => {
4410
4409
  const $childScope = _peek_scope_id();
4411
4410
  modal_view_default({
4412
4411
  label: input.label,
4413
- class: "_dc",
4412
+ class: "_eM",
4414
4413
  open: input.open,
4415
4414
  openChange: input.openChange,
4416
4415
  "aria-labelledby": titleId,
4417
4416
  footer: attrTag({ content: _content_resume("s5", () => {
4418
4417
  _scope_reason();
4419
4418
  const $scope1_id = _scope_id();
4420
- _html(`<button type=button${_attr_class(["_o", "_p"])}${_attr("disabled", !value.trim())}>${_escape(input.submitLabel || "OK")}${_el_resume($scope1_id, "b", _serialize_guard($scope0_reason, 4))}</button>${_el_resume($scope1_id, "a")}<div${_attr_class("_y")}></div>`);
4419
+ _html(`<button type=button${_attr_class(["_o", "_p"])}${_attr("disabled", !value.trim())}>${_escape(input.submitLabel || "OK")}${_el_resume($scope1_id, "b", _serialize_guard($scope0_reason, 4))}</button>${_el_resume($scope1_id, "a")}<div${_attr_class("_x")}></div>`);
4421
4420
  dialog_close_default({
4422
4421
  class: "_o",
4423
4422
  content: _content("s2", () => {
@@ -4433,7 +4432,7 @@ var prompt_dialog_default = _template("s", (input) => {
4433
4432
  content: _content("s6", () => {
4434
4433
  _scope_reason();
4435
4434
  const $scope2_id = _scope_id();
4436
- _html(`<h2${_attr_class("_dd")}${_attr("id", titleId)}>${_escape(input.label)}${_el_resume($scope2_id, "b", $sg__input_label)}</h2><input${_attr_input_value($scope2_id, "c", value, _resume((_new_value) => {
4435
+ _html(`<h2${_attr_class("_eN")}${_attr("id", titleId)}>${_escape(input.label)}${_el_resume($scope2_id, "b", $sg__input_label)}</h2><input${_attr_input_value($scope2_id, "c", value, _resume((_new_value) => {
4437
4436
  value = _new_value;
4438
4437
  }, "s0", $scope2_id))}${_attr("placeholder", input.placeholder)}>${_el_resume($scope2_id, "c")}`);
4439
4438
  _script($scope2_id, "s4");
@@ -4815,7 +4814,7 @@ var settings_page_default = _template("v", (input) => {
4815
4814
  const githubId = _id();
4816
4815
  const machineId = _id();
4817
4816
  const skillsId = _id();
4818
- _html(`<div${_attr_class("_bn")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bo")}><div${_attr_class(content$2)}>`);
4817
+ _html(`<div${_attr_class("_bm")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bn")}><div${_attr_class(content$2)}>`);
4819
4818
  _set_serialize_reason({
4820
4819
  0: _serialize_guard($scope0_reason, 4),
4821
4820
  1: $sg__input_backHref__OR__input_onExit,
@@ -4839,12 +4838,12 @@ var settings_page_default = _template("v", (input) => {
4839
4838
  return 0;
4840
4839
  } else if (setup.ready) {
4841
4840
  const $scope67_id = _scope_id();
4842
- _html(`<span${_attr_class("_cf")}>Ready</span>. Tools, GitHub, and an agent are all in place.`);
4841
+ _html(`<span${_attr_class("_cd")}>Ready</span>. Tools, GitHub, and an agent are all in place.`);
4843
4842
  writeScope($scope67_id, {});
4844
4843
  return 1;
4845
4844
  } else {
4846
4845
  const $scope6_id = _scope_id();
4847
- _html(`<span${_attr_class("_cg")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope6_id, "b")}.`);
4846
+ _html(`<span${_attr_class("_ce")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope6_id, "b")}.`);
4848
4847
  _subscribe($setup_missing__closures, writeScope($scope6_id, {}));
4849
4848
  return 2;
4850
4849
  }
@@ -4860,7 +4859,7 @@ var settings_page_default = _template("v", (input) => {
4860
4859
  const $childScope = _peek_scope_id();
4861
4860
  icon_refresh_default({
4862
4861
  size: 14,
4863
- class: refreshing && "_E"
4862
+ class: refreshing && "_D"
4864
4863
  });
4865
4864
  _html(`</button>${_el_resume($scope10_id, "a")}`);
4866
4865
  _script($scope10_id, "v36");
@@ -4894,16 +4893,16 @@ var settings_page_default = _template("v", (input) => {
4894
4893
  _if(() => {
4895
4894
  if (selfUpdatePending || selfUpdating) {
4896
4895
  const $scope45_id = _scope_id();
4897
- _html(`<div${_attr_class("_cK")} role=status><div${_attr_class("_cL")}>`);
4896
+ _html(`<div${_attr_class("_cI")} role=status><div${_attr_class("_cJ")}>`);
4898
4897
  _if(() => {
4899
4898
  if (selfUpdating) {
4900
4899
  const $scope68_id = _scope_id();
4901
- _html(`<span${_attr_class("_cM")}><span${_attr_class("_F")}></span> Updating work…</span><span${_attr_class("_cN")}>The app restarts and reloads when it is done.</span>`);
4900
+ _html(`<span${_attr_class("_cK")}><span${_attr_class("_E")}></span> Updating work…</span><span${_attr_class("_cL")}>The app restarts and reloads when it is done.</span>`);
4902
4901
  writeScope($scope68_id, {});
4903
4902
  return 0;
4904
4903
  } else {
4905
4904
  const $scope46_id = _scope_id();
4906
- _html(`<span${_attr_class("_cM")}>Update available</span><span${_attr_class("_cN")}>v<!>${_escape(self.version)}${_el_resume($scope46_id, "c")} → v<!>${_escape(self.latest)}${_el_resume($scope46_id, "d")}</span>`);
4905
+ _html(`<span${_attr_class("_cK")}>Update available</span><span${_attr_class("_cL")}>v<!>${_escape(self.version)}${_el_resume($scope46_id, "c")} → v<!>${_escape(self.latest)}${_el_resume($scope46_id, "d")}</span>`);
4907
4906
  _subscribe($self_version__closures, _subscribe($self_latest__closures, writeScope($scope46_id, {})));
4908
4907
  return 1;
4909
4908
  }
@@ -4922,11 +4921,11 @@ var settings_page_default = _template("v", (input) => {
4922
4921
  return 0;
4923
4922
  }
4924
4923
  }, $scope0_id, "f", 1, 1, 1, 0, 1);
4925
- _html(`<section${_attr_class("_bx")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_by")}><h2${_attr("id", agentsId)}${_attr_class("_bM")}>Agents</h2><div${_attr_class("_y")}></div><label${_attr_class("_cj")}><span${_attr_class("_S")}>Default</span><span${_attr_class("_m")}>`);
4924
+ _html(`<section${_attr_class("_bw")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_bx")}><h2${_attr("id", agentsId)}${_attr_class("_bK")}>Agents</h2><div${_attr_class("_x")}></div><label${_attr_class("_ch")}><span${_attr_class("_R")}>Default</span><span${_attr_class("_m")}>`);
4926
4925
  _attr_select_value($scope0_id, "n", input.preferred, _resume(function(v) {
4927
4926
  setPreferred(v);
4928
4927
  }, "v2", $scope0_id), () => {
4929
- _html(`<select${_attr_class(["_n", "_ck"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
4928
+ _html(`<select${_attr_class(["_n", "_ci"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
4930
4929
  _for_of(input.agents.filter((a) => a !== "shell"), (id) => {
4931
4930
  const $scope69_id = _scope_id();
4932
4931
  _html(`<option${_attr_option_value(id)}>${_escape(agentLabel(id))}${_el_resume($scope69_id, "b", $sg__input_agents)}</option>${_el_resume($scope69_id, "a", $sg__input_agents)}`);
@@ -4938,7 +4937,7 @@ var settings_page_default = _template("v", (input) => {
4938
4937
  const $childScope3 = _peek_scope_id();
4939
4938
  icon_refresh_default({
4940
4939
  size: 14,
4941
- class: usageRefreshing && "_E"
4940
+ class: usageRefreshing && "_D"
4942
4941
  });
4943
4942
  _html(`</button>${_el_resume($scope0_id, "o")}</div><ul${_attr_class(agentGrid)}>`);
4944
4943
  _for_of(families, (a) => {
@@ -4947,18 +4946,18 @@ var settings_page_default = _template("v", (input) => {
4947
4946
  const rows = lone ? [] : a.instances;
4948
4947
  const loneAccounts = lone && lone.enabled ? accountsFor(lone.id) : [];
4949
4948
  const extraAccounts = a.installed ? strayAccountsFor(a) : [];
4950
- _html(`<li${_attr_class(["_bC", "_ci"])}><div${_attr_class(["_cl", { ["_co"]: lone && !lone.enabled }])}>`);
4949
+ _html(`<li${_attr_class(["_bB", "_cg"])}><div${_attr_class(["_cj", { ["_cm"]: lone && !lone.enabled }])}>`);
4951
4950
  _set_serialize_reason(12);
4952
4951
  const $childScope4 = _peek_scope_id();
4953
4952
  icon_agent_default({
4954
4953
  agent: a.id,
4955
4954
  size: 18
4956
4955
  });
4957
- _html(`<div${_attr_class("_bD")}><span${_attr_class("_bF")}><span${_attr_class("_bE")}>${_escape(a.label)}${_el_resume($scope1_id, "g")}</span>`);
4956
+ _html(`<div${_attr_class("_bC")}><span${_attr_class("_bE")}><span${_attr_class("_bD")}>${_escape(a.label)}${_el_resume($scope1_id, "g")}</span>`);
4958
4957
  _if(() => {
4959
4958
  if (lone && input.preferred === lone.id) {
4960
4959
  const $scope70_id = _scope_id();
4961
- _html(`<span${_attr_class(["_I", tone.accent])}>default</span>`);
4960
+ _html(`<span${_attr_class(["_H", tone.accent])}>default</span>`);
4962
4961
  writeScope($scope70_id, {});
4963
4962
  return 0;
4964
4963
  }
@@ -4967,12 +4966,12 @@ var settings_page_default = _template("v", (input) => {
4967
4966
  _if(() => {
4968
4967
  if (active.has(a.id)) {
4969
4968
  const $scope11_id = _scope_id();
4970
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope11_id, "c")}</span>`);
4969
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope11_id, "c")}</span>`);
4971
4970
  _subscribe($active__closures, writeScope($scope11_id, {}));
4972
4971
  return 0;
4973
4972
  } else if (!a.installed) {
4974
4973
  const $scope71_id = _scope_id();
4975
- _html(`<span${_attr_class("_bG")}>Not installed</span>`);
4974
+ _html(`<span${_attr_class("_bF")}>Not installed</span>`);
4976
4975
  writeScope($scope71_id, {});
4977
4976
  return 1;
4978
4977
  }
@@ -4991,8 +4990,8 @@ var settings_page_default = _template("v", (input) => {
4991
4990
  if (lone) {
4992
4991
  const $scope63_id = _scope_id();
4993
4992
  _html(`<button${_attr_class([
4994
- "_I",
4995
- "_K",
4993
+ "_H",
4994
+ "_J",
4996
4995
  { [tone.ok]: lone.enabled }
4997
4996
  ])} role=switch aria-checked=${lone.enabled ? "true" : "false"} title=${lone.enabled ? "\"Shown in session pickers. Hide it\"" : "\"Hidden from session pickers. Show it\""}>${lone.enabled ? "on" : "off"}${_el_resume($scope63_id, "b")}</button>${_el_resume($scope63_id, "a")}`);
4998
4997
  _script($scope63_id, "v42");
@@ -5004,29 +5003,29 @@ var settings_page_default = _template("v", (input) => {
5004
5003
  _if(() => {
5005
5004
  if (rows.length || loneAccounts.length || extraAccounts.length) {
5006
5005
  const $scope2_id = _scope_id();
5007
- _html(`<ul${_attr_class("_cq")}>`);
5006
+ _html(`<ul${_attr_class("_co")}>`);
5008
5007
  _for_of(rows, (inst) => {
5009
5008
  const $scope3_id = _scope_id();
5010
5009
  const accounts = inst.enabled ? accountsFor(inst.id) : [];
5011
- _html(`<li${_attr_class("_cm")}><div${_attr_class(["_cn", { ["_co"]: !inst.enabled }])}>`);
5010
+ _html(`<li${_attr_class("_ck")}><div${_attr_class(["_cl", { ["_cm"]: !inst.enabled }])}>`);
5012
5011
  _set_serialize_reason(12);
5013
5012
  const $childScope5 = _peek_scope_id();
5014
5013
  icon_agent_default({
5015
5014
  agent: inst.id,
5016
5015
  size: 15
5017
5016
  });
5018
- _html(`<span${_attr_class(["_cp", "_x"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
5017
+ _html(`<span${_attr_class(["_cn", "_w"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
5019
5018
  _if(() => {
5020
5019
  if (input.preferred === inst.id) {
5021
5020
  const $scope72_id = _scope_id();
5022
- _html(`<span${_attr_class(["_I", tone.accent])}>default</span>`);
5021
+ _html(`<span${_attr_class(["_H", tone.accent])}>default</span>`);
5023
5022
  writeScope($scope72_id, {});
5024
5023
  return 0;
5025
5024
  }
5026
5025
  }, $scope3_id, "f", 1, 1, 1, 0, 1);
5027
- _html(`<span${_attr_class("_y")}></span><button${_attr_class([
5028
- "_I",
5029
- "_K",
5026
+ _html(`<span${_attr_class("_x")}></span><button${_attr_class([
5027
+ "_H",
5028
+ "_J",
5030
5029
  { [tone.ok]: inst.enabled }
5031
5030
  ])} role=switch aria-checked=${inst.enabled ? "true" : "false"} title=${inst.enabled ? "\"Shown in session pickers. Hide it\"" : "\"Hidden from session pickers. Show it\""}>${inst.enabled ? "on" : "off"}${_el_resume($scope3_id, "i")}</button>${_el_resume($scope3_id, "h")}</div>${_el_resume($scope3_id, "b")}`);
5032
5031
  _for_of(accounts, (u) => {
@@ -5090,7 +5089,7 @@ var settings_page_default = _template("v", (input) => {
5090
5089
  }, "id", $scope0_id, "r", 1, 1, 1, 0, 1);
5091
5090
  _for_of(otherUsage, (u) => {
5092
5091
  const $scope76_id = _scope_id();
5093
- _html(`<li${_attr_class(["_bC", "_ci"])}>`);
5092
+ _html(`<li${_attr_class(["_bB", "_cg"])}>`);
5094
5093
  _set_serialize_reason(6);
5095
5094
  const $childScope9 = _peek_scope_id();
5096
5095
  usage_meters_default({ agent: u });
@@ -5101,17 +5100,17 @@ var settings_page_default = _template("v", (input) => {
5101
5100
  _if(() => {
5102
5101
  if (!usage && families.length) {
5103
5102
  const $scope77_id = _scope_id();
5104
- _html(`<p${_attr_class("_bI")}><span${_attr_class("_F")}></span> Loading usage…</p>`);
5103
+ _html(`<p${_attr_class("_bH")}><span${_attr_class("_E")}></span> Loading usage…</p>`);
5105
5104
  writeScope($scope77_id, {});
5106
5105
  return 0;
5107
5106
  } else if (usage?.error) {
5108
5107
  const $scope7_id = _scope_id();
5109
- _html(`<p${_attr_class("_bI")}>${_escape(usage.error)}${_el_resume($scope7_id, "b")}</p>`);
5108
+ _html(`<p${_attr_class("_bH")}>${_escape(usage.error)}${_el_resume($scope7_id, "b")}</p>`);
5110
5109
  writeScope($scope7_id, {});
5111
5110
  return 1;
5112
5111
  }
5113
5112
  }, $scope0_id, "t", 1, 1, 1, 0, 1);
5114
- _html(`</section><section${_attr_class("_bx")}${_attr("aria-labelledby", githubId)}><div${_attr_class("_by")}><h2${_attr("id", githubId)}${_attr_class("_bM")}>GitHub</h2></div><ul${_attr_class("_bA")}>`);
5113
+ _html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", githubId)}><div${_attr_class("_bx")}><h2${_attr("id", githubId)}${_attr_class("_bK")}>GitHub</h2></div><ul${_attr_class("_bz")}>`);
5115
5114
  _for_of(setup?.github || [], (h) => {
5116
5115
  const $scope12_id = _scope_id();
5117
5116
  const $for_content4__h_host__closures = /* @__PURE__ */ new Set();
@@ -5125,11 +5124,11 @@ var settings_page_default = _template("v", (input) => {
5125
5124
  const skippedSso = (() => {
5126
5125
  return (h.sso || []).filter((s) => ignoredSso.has(s.org));
5127
5126
  })();
5128
- _html(`<li${_attr_class(["_bC", "_cA"])}><div${_attr_class("_cB")}><div${_attr_class("_bD")}><span${_attr_class("_bF")}><span${_attr_class(["_bE", "_x"])}>${_escape(h.host)}${_el_resume($scope12_id, "f")}</span>`);
5127
+ _html(`<li${_attr_class(["_bB", "_cy"])}><div${_attr_class("_cz")}><div${_attr_class("_bC")}><span${_attr_class("_bE")}><span${_attr_class(["_bD", "_w"])}>${_escape(h.host)}${_el_resume($scope12_id, "f")}</span>`);
5129
5128
  _if(() => {
5130
5129
  if (h.isEnterprise) {
5131
5130
  const $scope80_id = _scope_id();
5132
- _html(`<span${_attr_class("_I")}>Enterprise</span>`);
5131
+ _html(`<span${_attr_class("_H")}>Enterprise</span>`);
5133
5132
  writeScope($scope80_id, {});
5134
5133
  return 0;
5135
5134
  }
@@ -5138,22 +5137,22 @@ var settings_page_default = _template("v", (input) => {
5138
5137
  _if(() => {
5139
5138
  if (active.has(h.host) && authCodes.has(h.host)) {
5140
5139
  const $scope32_id = _scope_id();
5141
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span> Enter code <strong${_attr_class("_cy")}>${_escape(authCodes.get(h.host))}${_el_resume($scope32_id, "d")}</strong> at <a${_attr("href", `https://${h.host}/login/device`)} target=_blank rel=noopener${_attr_class("_cz")}>${_escape(h.host)}${_el_resume($scope32_id, "f")}/login/device</a>${_el_resume($scope32_id, "e")}</span>`);
5140
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span> Enter code <strong${_attr_class("_cw")}>${_escape(authCodes.get(h.host))}${_el_resume($scope32_id, "d")}</strong> at <a${_attr("href", `https://${h.host}/login/device`)} target=_blank rel=noopener${_attr_class("_cx")}>${_escape(h.host)}${_el_resume($scope32_id, "f")}/login/device</a>${_el_resume($scope32_id, "e")}</span>`);
5142
5141
  _subscribe($authCodes__closures, writeScope($scope32_id, { Ces: 1 }));
5143
5142
  return 0;
5144
5143
  } else if (active.has(h.host)) {
5145
5144
  const $scope13_id = _scope_id();
5146
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.host) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
5145
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.host) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
5147
5146
  _subscribe($active__closures, writeScope($scope13_id, { Ceq: 1 }));
5148
5147
  return 1;
5149
5148
  } else if (h.authed) {
5150
5149
  const $scope78_id = _scope_id();
5151
- _html(`<span${_attr_class("_bG")}>Signed in<!>${h.user ? ` as ${_escape(`${_to_text(h.user)}`)}` : ""}${_el_resume($scope78_id, "b")}</span>`);
5150
+ _html(`<span${_attr_class("_bF")}>Signed in<!>${h.user ? ` as ${_escape(`${_to_text(h.user)}`)}` : ""}${_el_resume($scope78_id, "b")}</span>`);
5152
5151
  writeScope($scope78_id, {});
5153
5152
  return 2;
5154
5153
  } else {
5155
5154
  const $scope79_id = _scope_id();
5156
- _html(`<span${_attr_class("_bG")}>${_escape(h.error || "Not signed in")}${_el_resume($scope79_id, "b")}</span>`);
5155
+ _html(`<span${_attr_class("_bF")}>${_escape(h.error || "Not signed in")}${_el_resume($scope79_id, "b")}</span>`);
5157
5156
  writeScope($scope79_id, {});
5158
5157
  return 3;
5159
5158
  }
@@ -5184,9 +5183,9 @@ var settings_page_default = _template("v", (input) => {
5184
5183
  if (h.isEnterprise) {
5185
5184
  const $scope35_id = _scope_id();
5186
5185
  _html(`<button${_attr_class([
5187
- "_bH",
5186
+ "_bG",
5187
+ "_1",
5188
5188
  "_2",
5189
- "_3",
5190
5189
  { ["_q"]: confirmingRemove === h.host }
5191
5190
  ])}${confirmingRemove === h.host ? _attr("title", `Forget ${h.host}? (gh stays signed in)`) : _attr("title", `Forget ${h.host}`)}>`);
5192
5191
  _if(() => {
@@ -5260,7 +5259,7 @@ var settings_page_default = _template("v", (input) => {
5260
5259
  _if(() => {
5261
5260
  if (setup && !setup.github.length) {
5262
5261
  const $scope83_id = _scope_id();
5263
- _html(`<p${_attr_class("_bI")}>Install the GitHub CLI below to sign in.</p>`);
5262
+ _html(`<p${_attr_class("_bH")}>Install the GitHub CLI below to sign in.</p>`);
5264
5263
  writeScope($scope83_id, {});
5265
5264
  return 0;
5266
5265
  }
@@ -5268,20 +5267,20 @@ var settings_page_default = _template("v", (input) => {
5268
5267
  _if(() => {
5269
5268
  if (setup) {
5270
5269
  const $scope43_id = _scope_id();
5271
- _html(`<form${_attr_class("_cx")}><label${_attr_class("_W")}>`);
5270
+ _html(`<form${_attr_class("_cv")}><label${_attr_class("_V")}>`);
5272
5271
  icon_plus_default({
5273
5272
  size: 14,
5274
- class: "_X"
5273
+ class: "_W"
5275
5274
  });
5276
5275
  _html(`<input${_attr_input_value($scope43_id, "d", hostInput, _resume((_new_hostInput) => {
5277
5276
  hostInput = _new_hostInput;
5278
- }, "v3", $scope43_id))}${_attr_class([inputLg, "_Y"])} type=text placeholder="Add a GitHub Enterprise host, e.g. github.example.com" aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false>${_el_resume($scope43_id, "d")}</label><button${_attr_class(btnSm)} type=submit${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add host"}${_el_resume($scope43_id, "f")}</button>${_el_resume($scope43_id, "e")}</form>${_el_resume($scope43_id, "a")}`);
5277
+ }, "v3", $scope43_id))}${_attr_class([inputLg, "_X"])} type=text placeholder="Add a GitHub Enterprise host, e.g. github.example.com" aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false>${_el_resume($scope43_id, "d")}</label><button${_attr_class(btnSm)} type=submit${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add host"}${_el_resume($scope43_id, "f")}</button>${_el_resume($scope43_id, "e")}</form>${_el_resume($scope43_id, "a")}`);
5279
5278
  _script($scope43_id, "v47");
5280
5279
  writeScope($scope43_id, {});
5281
5280
  return 0;
5282
5281
  }
5283
5282
  }, $scope0_id, "z", 1, 1, 1, 0, 1);
5284
- _html(`</section><section${_attr_class("_bx")}${_attr("aria-labelledby", machineId)}><div${_attr_class("_by")}><h2${_attr("id", machineId)}${_attr_class("_bM")}>Machine</h2>`);
5283
+ _html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", machineId)}><div${_attr_class("_bx")}><h2${_attr("id", machineId)}${_attr_class("_bK")}>Machine</h2>`);
5285
5284
  _if(() => {
5286
5285
  if (missingCount) {
5287
5286
  const $scope64_id = _scope_id();
@@ -5298,7 +5297,7 @@ var settings_page_default = _template("v", (input) => {
5298
5297
  return 0;
5299
5298
  }
5300
5299
  }, $scope0_id, "a4", 1, 1, 1, 0, 1);
5301
- _html(`<div${_attr_class("_y")}></div>`);
5300
+ _html(`<div${_attr_class("_x")}></div>`);
5302
5301
  _if(() => {
5303
5302
  if (outdatedIds.length > 1) {
5304
5303
  const $scope15_id = _scope_id();
@@ -5321,7 +5320,7 @@ var settings_page_default = _template("v", (input) => {
5321
5320
  _if(() => {
5322
5321
  if (setup && !setup.mise.installed) {
5323
5322
  const $scope17_id = _scope_id();
5324
- _html(`<p${_attr_class("_bI")}>mise is not installed. It provides every tool below. <button${_attr_class(btnSm)}${_attr("disabled", active.has("mise"))}>${active.has("mise") ? "Installing…" : "Install mise"}${_el_resume($scope17_id, "c")}</button>${_el_resume($scope17_id, "b")}</p>`);
5323
+ _html(`<p${_attr_class("_bH")}>mise is not installed. It provides every tool below. <button${_attr_class(btnSm)}${_attr("disabled", active.has("mise"))}>${active.has("mise") ? "Installing…" : "Install mise"}${_el_resume($scope17_id, "c")}</button>${_el_resume($scope17_id, "b")}</p>`);
5325
5324
  _script($scope17_id, "v50");
5326
5325
  writeScope($scope17_id, {});
5327
5326
  return 0;
@@ -5331,16 +5330,16 @@ var settings_page_default = _template("v", (input) => {
5331
5330
  _if(() => {
5332
5331
  if (self) {
5333
5332
  const $scope48_id = _scope_id();
5334
- _html(`<li${_attr_class(row)}><span${_attr_class(["_ct", "_x"])}>work</span>`);
5333
+ _html(`<li${_attr_class(row)}><span${_attr_class(["_cr", "_w"])}>work</span>`);
5335
5334
  _if(() => {
5336
5335
  if (selfUpdating) {
5337
5336
  const $scope84_id = _scope_id();
5338
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span>Updating — the app restarts and reloads when it is done…</span>`);
5337
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span>Updating — the app restarts and reloads when it is done…</span>`);
5339
5338
  writeScope($scope84_id, {});
5340
5339
  return 0;
5341
5340
  } else {
5342
5341
  const $scope49_id = _scope_id();
5343
- _html(`<span${_attr_class(["_x", metaTrunc])} title="Running version">v<!>${_escape(self.version)}${_el_resume($scope49_id, "b")}</span>`);
5342
+ _html(`<span${_attr_class(["_w", metaTrunc])} title="Running version">v<!>${_escape(self.version)}${_el_resume($scope49_id, "b")}</span>`);
5344
5343
  _if(() => {
5345
5344
  if (self.install === "source") {
5346
5345
  const $scope85_id = _scope_id();
@@ -5349,7 +5348,7 @@ var settings_page_default = _template("v", (input) => {
5349
5348
  return 0;
5350
5349
  } else if (self.latest && self.latest !== self.version) {
5351
5350
  const $scope50_id = _scope_id();
5352
- _html(`<button${_attr_class([btnSm, "_cv"])}${_attr("title", `Update work to v${self.latest} and restart`)}>`);
5351
+ _html(`<button${_attr_class([btnSm, "_ct"])}${_attr("title", `Update work to v${self.latest} and restart`)}>`);
5353
5352
  icon_arrow_up_default({ size: 12 });
5354
5353
  _html(` <!>${_escape(self.latest)}${_el_resume($scope50_id, "c")}</button>${_el_resume($scope50_id, "a")}`);
5355
5354
  _script($scope50_id, "v51");
@@ -5369,11 +5368,11 @@ var settings_page_default = _template("v", (input) => {
5369
5368
  return 1;
5370
5369
  }
5371
5370
  }, $scope48_id, "c");
5372
- _html(`<span${_attr_class("_y")}></span>`);
5371
+ _html(`<span${_attr_class("_x")}></span>`);
5373
5372
  _if(() => {
5374
5373
  if (!selfUpdating) {
5375
5374
  const $scope87_id = _scope_id();
5376
- _html(`<span${_attr_class("_I")}>app</span>`);
5375
+ _html(`<span${_attr_class("_H")}>app</span>`);
5377
5376
  writeScope($scope87_id, {});
5378
5377
  return 0;
5379
5378
  }
@@ -5390,11 +5389,11 @@ var settings_page_default = _template("v", (input) => {
5390
5389
  const $for_content5__t_path__closures = /* @__PURE__ */ new Set();
5391
5390
  const $for_content5__t_latest__closures = /* @__PURE__ */ new Set();
5392
5391
  const $for_content5__t_id__closures = /* @__PURE__ */ new Set();
5393
- _html(`<li${_attr_class([row, { ["_cs"]: !t.installed }])}><span${_attr_class(["_ct", "_x"])}>${_escape(t.label)}${_el_resume($scope18_id, "c")}</span>`);
5392
+ _html(`<li${_attr_class([row, { ["_cq"]: !t.installed }])}><span${_attr_class(["_cr", "_w"])}>${_escape(t.label)}${_el_resume($scope18_id, "c")}</span>`);
5394
5393
  _if(() => {
5395
5394
  if (active.has(t.id)) {
5396
5395
  const $scope19_id = _scope_id();
5397
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope19_id, "c")}</span>`);
5396
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope19_id, "c")}</span>`);
5398
5397
  _subscribe($active__closures, writeScope($scope19_id, { Ceq: 3 }));
5399
5398
  return 0;
5400
5399
  } else if (t.installed) {
@@ -5402,13 +5401,13 @@ var settings_page_default = _template("v", (input) => {
5402
5401
  _if(() => {
5403
5402
  if (t.version) {
5404
5403
  const $scope40_id = _scope_id();
5405
- _html(`<button${_attr_class(["_cu", "_x"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope40_id, "b")}</button>${_el_resume($scope40_id, "a")}`);
5404
+ _html(`<button${_attr_class(["_cs", "_w"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope40_id, "b")}</button>${_el_resume($scope40_id, "a")}`);
5406
5405
  _script($scope40_id, "v52");
5407
5406
  _subscribe($for_content5__t_path__closures, _subscribe($for_content5__t_version__closures, _subscribe($for_content5__t_label__closures, writeScope($scope40_id, { Cu: 1 }))));
5408
5407
  return 0;
5409
5408
  } else {
5410
5409
  const $scope88_id = _scope_id();
5411
- _html(`<span${_attr_class([metaTrunc, "_x"])}${_attr("title", t.path)}>${_escape(t.path)}${_el_resume($scope88_id, "b")}</span>${_el_resume($scope88_id, "a")}`);
5410
+ _html(`<span${_attr_class([metaTrunc, "_w"])}${_attr("title", t.path)}>${_escape(t.path)}${_el_resume($scope88_id, "b")}</span>${_el_resume($scope88_id, "a")}`);
5412
5411
  _subscribe($for_content5__t_path__closures, writeScope($scope88_id, { Cx: 1 }));
5413
5412
  return 1;
5414
5413
  }
@@ -5416,7 +5415,7 @@ var settings_page_default = _template("v", (input) => {
5416
5415
  _if(() => {
5417
5416
  if (outdated(t)) {
5418
5417
  const $scope58_id = _scope_id();
5419
- _html(`<button${_attr_class([btnSm, "_cv"])}${_attr("title", `Update to v${t.latest}`)}>`);
5418
+ _html(`<button${_attr_class([btnSm, "_ct"])}${_attr("title", `Update to v${t.latest}`)}>`);
5420
5419
  icon_arrow_up_default({ size: 12 });
5421
5420
  _html(` <!>${_escape(t.latest)}${_el_resume($scope58_id, "c")}</button>${_el_resume($scope58_id, "a")}`);
5422
5421
  _script($scope58_id, "v53");
@@ -5438,14 +5437,14 @@ var settings_page_default = _template("v", (input) => {
5438
5437
  return 3;
5439
5438
  }
5440
5439
  }, $scope18_id, "d");
5441
- _html(`<span${_attr_class("_y")}></span>`);
5440
+ _html(`<span${_attr_class("_x")}></span>`);
5442
5441
  _if(() => {
5443
5442
  if (!active.has(t.id)) {
5444
5443
  const $scope36_id = _scope_id();
5445
5444
  _if(() => {
5446
5445
  if (t.required) {
5447
5446
  const $scope91_id = _scope_id();
5448
- _html(`<span${_attr_class("_I")}>required</span>`);
5447
+ _html(`<span${_attr_class("_H")}>required</span>`);
5449
5448
  writeScope($scope91_id, {});
5450
5449
  return 0;
5451
5450
  }
@@ -5461,8 +5460,8 @@ var settings_page_default = _template("v", (input) => {
5461
5460
  const $scope37_id = _scope_id();
5462
5461
  _html(`<button${_attr_class([
5463
5462
  iconBtnXs,
5463
+ "_1",
5464
5464
  "_2",
5465
- "_3",
5466
5465
  { ["_q"]: confirmingRemove === t.id }
5467
5466
  ])}${confirmingRemove === t.id ? _attr("title", `Remove ${t.label}?`) : _attr("title", `Remove ${t.label}`)}>`);
5468
5467
  _if(() => {
@@ -5509,28 +5508,28 @@ var settings_page_default = _template("v", (input) => {
5509
5508
  _if(() => {
5510
5509
  if (setup && setup.mise.installed) {
5511
5510
  const $scope20_id = _scope_id();
5512
- _html(`<div><label${_attr_class("_W")}>`);
5511
+ _html(`<div><label${_attr_class("_V")}>`);
5513
5512
  icon_search_default({
5514
5513
  size: 14,
5515
- class: "_X"
5514
+ class: "_W"
5516
5515
  });
5517
- _html(`<input${_attr_input_value($scope20_id, "c", query, search)}${_attr_class([inputLg, "_Y"])} type=text placeholder="Add a tool from the mise registry…" aria-label="Search the mise registry" autocomplete=off>${_el_resume($scope20_id, "c")}</label>`);
5516
+ _html(`<input${_attr_input_value($scope20_id, "c", query, search)}${_attr_class([inputLg, "_X"])} type=text placeholder="Add a tool from the mise registry…" aria-label="Search the mise registry" autocomplete=off>${_el_resume($scope20_id, "c")}</label>`);
5518
5517
  _if(() => {
5519
5518
  if (hits && hits.length) {
5520
5519
  const $scope21_id = _scope_id();
5521
- _html(`<ul${_attr_class([toolGrid, "_cw"])}>`);
5520
+ _html(`<ul${_attr_class([toolGrid, "_cu"])}>`);
5522
5521
  _for_of(hits, (h) => {
5523
5522
  const $scope22_id = _scope_id();
5524
- _html(`<li${_attr_class(row)}><div${_attr_class("_bD")}><span${_attr_class(["_ct", "_x"])}>${_escape(h.name)}${_el_resume($scope22_id, "d")}</span>`);
5523
+ _html(`<li${_attr_class(row)}><div${_attr_class("_bC")}><span${_attr_class(["_cr", "_w"])}>${_escape(h.name)}${_el_resume($scope22_id, "d")}</span>`);
5525
5524
  _if(() => {
5526
5525
  if (active.has(h.name)) {
5527
5526
  const $scope23_id = _scope_id();
5528
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope23_id, "c")}</span>`);
5527
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope23_id, "c")}</span>`);
5529
5528
  _subscribe($active__closures, writeScope($scope23_id, { Ceq: 5 }));
5530
5529
  return 0;
5531
5530
  } else if (h.description) {
5532
5531
  const $scope94_id = _scope_id();
5533
- _html(`<span${_attr_class("_bG")}${_attr("title", h.description)}>${_escape(h.description)}${_el_resume($scope94_id, "b")}</span>${_el_resume($scope94_id, "a")}`);
5532
+ _html(`<span${_attr_class("_bF")}${_attr("title", h.description)}>${_escape(h.description)}${_el_resume($scope94_id, "b")}</span>${_el_resume($scope94_id, "a")}`);
5534
5533
  writeScope($scope94_id, {});
5535
5534
  return 1;
5536
5535
  }
@@ -5542,7 +5541,7 @@ var settings_page_default = _template("v", (input) => {
5542
5541
  _if(() => {
5543
5542
  if (h.installed) {
5544
5543
  const $scope95_id = _scope_id();
5545
- _html(`<span${_attr_class("_I")}>installed</span>`);
5544
+ _html(`<span${_attr_class("_H")}>installed</span>`);
5546
5545
  writeScope($scope95_id, {});
5547
5546
  return 0;
5548
5547
  } else {
@@ -5569,7 +5568,7 @@ var settings_page_default = _template("v", (input) => {
5569
5568
  return 0;
5570
5569
  } else if (hits && !searching) {
5571
5570
  const $scope44_id = _scope_id();
5572
- _html(`<p${_attr_class("_bI")}>No tools match "<!>${_escape(query)}${_el_resume($scope44_id, "b")}".</p>`);
5571
+ _html(`<p${_attr_class("_bH")}>No tools match "<!>${_escape(query)}${_el_resume($scope44_id, "b")}".</p>`);
5573
5572
  _subscribe($query__closures, writeScope($scope44_id, {}));
5574
5573
  return 1;
5575
5574
  }
@@ -5580,7 +5579,7 @@ var settings_page_default = _template("v", (input) => {
5580
5579
  return 0;
5581
5580
  }
5582
5581
  }, $scope0_id, "ac", 1, 1, 1, 0, 1);
5583
- _html(`</section><section${_attr_class("_bx")}${_attr("aria-labelledby", skillsId)}><div${_attr_class("_by")}><h2${_attr("id", skillsId)}${_attr_class("_bM")}>Skills</h2>`);
5582
+ _html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", skillsId)}><div${_attr_class("_bx")}><h2${_attr("id", skillsId)}${_attr_class("_bK")}>Skills</h2>`);
5584
5583
  _if(() => {
5585
5584
  if (skills?.global.length) {
5586
5585
  const $scope52_id = _scope_id();
@@ -5593,30 +5592,30 @@ var settings_page_default = _template("v", (input) => {
5593
5592
  _if(() => {
5594
5593
  if (skills && !skills.agents.length) {
5595
5594
  const $scope96_id = _scope_id();
5596
- _html(`<p${_attr_class("_bI")}>No agent CLIs are installed, so a skill would have nowhere to go.</p>`);
5595
+ _html(`<p${_attr_class("_bH")}>No agent CLIs are installed, so a skill would have nowhere to go.</p>`);
5597
5596
  writeScope($scope96_id, {});
5598
5597
  return 0;
5599
5598
  } else if (skills && !skills.available) {
5600
5599
  const $scope24_id = _scope_id();
5601
- _html(`<p${_attr_class("_bI")}>The skills CLI is not installed, so these can be listed but not changed. <button${_attr_class(btnSm)}${_attr("disabled", active.has("skills"))}>${active.has("skills") ? "Installing…" : "Install it"}${_el_resume($scope24_id, "c")}</button>${_el_resume($scope24_id, "b")}</p>`);
5600
+ _html(`<p${_attr_class("_bH")}>The skills CLI is not installed, so these can be listed but not changed. <button${_attr_class(btnSm)}${_attr("disabled", active.has("skills"))}>${active.has("skills") ? "Installing…" : "Install it"}${_el_resume($scope24_id, "c")}</button>${_el_resume($scope24_id, "b")}</p>`);
5602
5601
  _script($scope24_id, "v58");
5603
5602
  writeScope($scope24_id, {});
5604
5603
  return 1;
5605
5604
  }
5606
5605
  }, $scope0_id, "ah", 1, 1, 1, 0, 1);
5607
- _html(`<ul${_attr_class("_bA")}>`);
5606
+ _html(`<ul${_attr_class("_bz")}>`);
5608
5607
  _for_of(skills?.global || [], (s) => {
5609
5608
  const $scope25_id = _scope_id();
5610
- _html(`<li${_attr_class("_bC")}><div${_attr_class("_bD")}><span${_attr_class(["_bE", "_x"])}>${_escape(s.name)}${_el_resume($scope25_id, "d")}</span>`);
5609
+ _html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(s.name)}${_el_resume($scope25_id, "d")}</span>`);
5611
5610
  _if(() => {
5612
5611
  if (active.has(s.id)) {
5613
5612
  const $scope26_id = _scope_id();
5614
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(s.id) || "Starting…")}${_el_resume($scope26_id, "c")}</span>`);
5613
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(s.id) || "Starting…")}${_el_resume($scope26_id, "c")}</span>`);
5615
5614
  _subscribe($active__closures, writeScope($scope26_id, { Ceq: 6 }));
5616
5615
  return 0;
5617
5616
  } else if (s.description) {
5618
5617
  const $scope97_id = _scope_id();
5619
- _html(`<span${_attr_class("_bG")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope97_id, "b")}</span>${_el_resume($scope97_id, "a")}`);
5618
+ _html(`<span${_attr_class("_bF")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope97_id, "b")}</span>${_el_resume($scope97_id, "a")}`);
5620
5619
  writeScope($scope97_id, {});
5621
5620
  return 1;
5622
5621
  }
@@ -5624,17 +5623,17 @@ var settings_page_default = _template("v", (input) => {
5624
5623
  _if(() => {
5625
5624
  if (s.sourceUrl) {
5626
5625
  const $scope98_id = _scope_id();
5627
- _html(`<a${_attr_class(["_bG", "_cU"])}${_attr("href", s.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${s.source} on GitHub`)}>${_escape(s.source)}${_el_resume($scope98_id, "b")}</a>${_el_resume($scope98_id, "a")}`);
5626
+ _html(`<a${_attr_class(["_bF", "_cS"])}${_attr("href", s.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${s.source} on GitHub`)}>${_escape(s.source)}${_el_resume($scope98_id, "b")}</a>${_el_resume($scope98_id, "a")}`);
5628
5627
  writeScope($scope98_id, {});
5629
5628
  return 0;
5630
5629
  } else if (s.source) {
5631
5630
  const $scope99_id = _scope_id();
5632
- _html(`<span${_attr_class("_bG")}>${_escape(s.source)}${_el_resume($scope99_id, "b")}</span>`);
5631
+ _html(`<span${_attr_class("_bF")}>${_escape(s.source)}${_el_resume($scope99_id, "b")}</span>`);
5633
5632
  writeScope($scope99_id, {});
5634
5633
  return 1;
5635
5634
  } else {
5636
5635
  const $scope101_id = _scope_id();
5637
- _html(`<span${_attr_class(["_bG", "_w"])} title="Not installed from a source, so it cannot be updated">local only</span>`);
5636
+ _html(`<span${_attr_class(["_bF", "_v"])} title="Not installed from a source, so it cannot be updated">local only</span>`);
5638
5637
  writeScope($scope101_id, {});
5639
5638
  return 2;
5640
5639
  }
@@ -5643,7 +5642,7 @@ var settings_page_default = _template("v", (input) => {
5643
5642
  _if(() => {
5644
5643
  if (skills && s.agents.length < skills.agents.length) {
5645
5644
  const $scope100_id = _scope_id();
5646
- _html(`<span${_attr_class("_bF")}><span${_attr_class("_I")}${_attr("title", `Only installed for ${s.agents.map(agentLabel).join(", ")}`)}>${_escape(s.agents.map(agentLabel).join(", "))}${_el_resume($scope100_id, "c")} only</span>${_el_resume($scope100_id, "b")}</span>`);
5645
+ _html(`<span${_attr_class("_bE")}><span${_attr_class("_H")}${_attr("title", `Only installed for ${s.agents.map(agentLabel).join(", ")}`)}>${_escape(s.agents.map(agentLabel).join(", "))}${_el_resume($scope100_id, "c")} only</span>${_el_resume($scope100_id, "b")}</span>`);
5647
5646
  writeScope($scope100_id, {});
5648
5647
  return 0;
5649
5648
  }
@@ -5662,8 +5661,8 @@ var settings_page_default = _template("v", (input) => {
5662
5661
  }, $scope55_id, "a", 1, 1, 1, 0, 1);
5663
5662
  _html(`<button${_attr_class([
5664
5663
  iconBtnXs,
5664
+ "_1",
5665
5665
  "_2",
5666
- "_3",
5667
5666
  { ["_q"]: confirmingSkill === s.id }
5668
5667
  ])}${confirmingSkill === s.id ? _attr("title", `Remove ${s.name}?`) : _attr("title", `Remove ${s.name}`)}>`);
5669
5668
  _if(() => {
@@ -5697,7 +5696,7 @@ var settings_page_default = _template("v", (input) => {
5697
5696
  _if(() => {
5698
5697
  if (skills && !skills.global.length) {
5699
5698
  const $scope104_id = _scope_id();
5700
- _html(`<p${_attr_class("_bI")}>No skills installed. Search below, or paste an owner/repo.</p>`);
5699
+ _html(`<p${_attr_class("_bH")}>No skills installed. Search below, or paste an owner/repo.</p>`);
5701
5700
  writeScope($scope104_id, {});
5702
5701
  return 0;
5703
5702
  }
@@ -5705,20 +5704,20 @@ var settings_page_default = _template("v", (input) => {
5705
5704
  _if(() => {
5706
5705
  if (skills?.available && skills.agents.length) {
5707
5706
  const $scope27_id = _scope_id();
5708
- _html(`<div><label${_attr_class("_W")}>`);
5707
+ _html(`<div><label${_attr_class("_V")}>`);
5709
5708
  icon_search_default({
5710
5709
  size: 14,
5711
- class: "_X"
5710
+ class: "_W"
5712
5711
  });
5713
- _html(`<input${_attr_input_value($scope27_id, "c", skillQuery, searchSkills)}${_attr_class([inputLg, "_Y"])} type=text placeholder="Search skills, or paste owner/repo…" aria-label="Search for a skill" autocomplete=off spellcheck=false>${_el_resume($scope27_id, "c")}</label><ul${_attr_class([toolGrid, "_cw"])}${_attr("hidden", !skillQuery.trim())}>`);
5712
+ _html(`<input${_attr_input_value($scope27_id, "c", skillQuery, searchSkills)}${_attr_class([inputLg, "_X"])} type=text placeholder="Search skills, or paste owner/repo…" aria-label="Search for a skill" autocomplete=off spellcheck=false>${_el_resume($scope27_id, "c")}</label><ul${_attr_class([toolGrid, "_cu"])}${_attr("hidden", !skillQuery.trim())}>`);
5714
5713
  _if(() => {
5715
5714
  if (looksLikeSource(skillQuery)) {
5716
5715
  const $scope28_id = _scope_id();
5717
- _html(`<li${_attr_class(row)}><div${_attr_class("_bD")}><span${_attr_class(["_ct", "_x"])}>${_escape(skillQuery.trim())}${_el_resume($scope28_id, "d")}</span>`);
5716
+ _html(`<li${_attr_class(row)}><div${_attr_class("_bC")}><span${_attr_class(["_cr", "_w"])}>${_escape(skillQuery.trim())}${_el_resume($scope28_id, "d")}</span>`);
5718
5717
  _if(() => {
5719
5718
  if (active.has(skillQuery.trim())) {
5720
5719
  const $scope29_id = _scope_id();
5721
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(skillQuery.trim()) || "Starting…")}${_el_resume($scope29_id, "c")}</span>`);
5720
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(skillQuery.trim()) || "Starting…")}${_el_resume($scope29_id, "c")}</span>`);
5722
5721
  _subscribe($skillQuery__closures, _subscribe($active__closures, writeScope($scope29_id, {
5723
5722
  Ceq: 8,
5724
5723
  Cfa: 1
@@ -5726,7 +5725,7 @@ var settings_page_default = _template("v", (input) => {
5726
5725
  return 0;
5727
5726
  } else {
5728
5727
  const $scope105_id = _scope_id();
5729
- _html(`<span${_attr_class("_bG")}>Add straight from this source</span>`);
5728
+ _html(`<span${_attr_class("_bF")}>Add straight from this source</span>`);
5730
5729
  writeScope($scope105_id, {});
5731
5730
  return 1;
5732
5731
  }
@@ -5749,16 +5748,16 @@ var settings_page_default = _template("v", (input) => {
5749
5748
  _for_of(skillHits || [], (h) => {
5750
5749
  const $scope30_id = _scope_id();
5751
5750
  const $for_content8__h_installs__closures = /* @__PURE__ */ new Set();
5752
- _html(`<li${_attr_class(row)}><div${_attr_class("_bD")}><span${_attr_class(["_ct", "_x"])}>${_escape(h.name)}${_el_resume($scope30_id, "d")}</span>`);
5751
+ _html(`<li${_attr_class(row)}><div${_attr_class("_bC")}><span${_attr_class(["_cr", "_w"])}>${_escape(h.name)}${_el_resume($scope30_id, "d")}</span>`);
5753
5752
  _if(() => {
5754
5753
  if (active.has(h.skillId)) {
5755
5754
  const $scope31_id = _scope_id();
5756
- _html(`<span${_attr_class("_ce")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.skillId) || "Starting…")}${_el_resume($scope31_id, "c")}</span>`);
5755
+ _html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.skillId) || "Starting…")}${_el_resume($scope31_id, "c")}</span>`);
5757
5756
  _subscribe($active__closures, writeScope($scope31_id, { Ceq: 10 }));
5758
5757
  return 0;
5759
5758
  } else {
5760
5759
  const $scope106_id = _scope_id();
5761
- _html(`<span${_attr_class("_bG")}${_attr("title", h.source)}>${_escape(h.source)}${_el_resume($scope106_id, "b")}</span>${_el_resume($scope106_id, "a")}`);
5760
+ _html(`<span${_attr_class("_bF")}${_attr("title", h.source)}>${_escape(h.source)}${_el_resume($scope106_id, "b")}</span>${_el_resume($scope106_id, "a")}`);
5762
5761
  writeScope($scope106_id, {});
5763
5762
  return 1;
5764
5763
  }
@@ -5770,7 +5769,7 @@ var settings_page_default = _template("v", (input) => {
5770
5769
  _if(() => {
5771
5770
  if (h.installs) {
5772
5771
  const $scope107_id = _scope_id();
5773
- _html(`<span${_attr_class(["_I", "_J"])}${_attr("title", `${h.installs} installs`)}>${_escape(skillInstalls(h.installs))}${_el_resume($scope107_id, "b")}</span>${_el_resume($scope107_id, "a")}`);
5772
+ _html(`<span${_attr_class(["_H", "_I"])}${_attr("title", `${h.installs} installs`)}>${_escape(skillInstalls(h.installs))}${_el_resume($scope107_id, "b")}</span>${_el_resume($scope107_id, "a")}`);
5774
5773
  _subscribe($for_content8__h_installs__closures, writeScope($scope107_id, {}));
5775
5774
  return 0;
5776
5775
  }
@@ -5778,7 +5777,7 @@ var settings_page_default = _template("v", (input) => {
5778
5777
  _if(() => {
5779
5778
  if (h.installed) {
5780
5779
  const $scope108_id = _scope_id();
5781
- _html(`<span${_attr_class("_I")}>installed</span>`);
5780
+ _html(`<span${_attr_class("_H")}>installed</span>`);
5782
5781
  writeScope($scope108_id, {});
5783
5782
  return 0;
5784
5783
  } else {
@@ -5807,7 +5806,7 @@ var settings_page_default = _template("v", (input) => {
5807
5806
  _if(() => {
5808
5807
  if (skillHits && !skillHits.length && !skillSearching && !looksLikeSource(skillQuery)) {
5809
5808
  const $scope54_id = _scope_id();
5810
- _html(`<p${_attr_class("_bI")}>No skills match "<!>${_escape(skillQuery)}${_el_resume($scope54_id, "b")}".</p>`);
5809
+ _html(`<p${_attr_class("_bH")}>No skills match "<!>${_escape(skillQuery)}${_el_resume($scope54_id, "b")}".</p>`);
5811
5810
  _subscribe($skillQuery__closures, writeScope($scope54_id, { Cfa: 2 }));
5812
5811
  return 0;
5813
5812
  }
@@ -5832,37 +5831,37 @@ var settings_page_default = _template("v", (input) => {
5832
5831
  label: "Dark"
5833
5832
  }
5834
5833
  ];
5835
- _html(`</section><section${_attr_class("_bx")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_by")}><h2${_attr("id", appearanceId)}${_attr_class("_bM")}>Appearance</h2></div><div${_attr_class(["_bC", "_cC"])}><label${_attr_class("_cD")}><span${_attr_class("_cE")}>Name</span><input${_attr_input_value($scope0_id, "ar", input.instance.name, _resume(function(v) {
5834
+ _html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_bx")}><h2${_attr("id", appearanceId)}${_attr_class("_bK")}>Appearance</h2></div><div${_attr_class(["_bB", "_cA"])}><label${_attr_class("_cB")}><span${_attr_class("_cC")}>Name</span><input${_attr_input_value($scope0_id, "ar", input.instance.name, _resume(function(v) {
5836
5835
  setInstance({ name: v });
5837
- }, "v4", $scope0_id))}${_attr_class(["_U", "_cF"])} type=text placeholder="Tab title" maxlength=32 autocomplete=off spellcheck=false>${_el_resume($scope0_id, "ar")}</label><div${_attr_class("_cD")}><span${_attr_class("_cE")}>Theme</span><span${_attr_class("_cH")}><span${_attr_class(themeSeg)} role=radiogroup aria-label="Color theme">`);
5836
+ }, "v4", $scope0_id))}${_attr_class(["_T", "_cD"])} type=text placeholder="Tab title" maxlength=32 autocomplete=off spellcheck=false>${_el_resume($scope0_id, "ar")}</label><div${_attr_class("_cB")}><span${_attr_class("_cC")}>Theme</span><span${_attr_class("_cF")}><span${_attr_class(themeSeg)} role=radiogroup aria-label="Color theme">`);
5838
5837
  _for_of(themeOpts, (opt) => {
5839
5838
  const $scope51_id = _scope_id();
5840
- _html(`<button type=button${_attr_class(["_8", { ["_7"]: themeMode === opt.id }])} role=radio aria-checked=${themeMode === opt.id ? "true" : "false"}>${_escape(opt.label)}</button>${_el_resume($scope51_id, "a")}`);
5839
+ _html(`<button type=button${_attr_class(["_7", { ["_6"]: themeMode === opt.id }])} role=radio aria-checked=${themeMode === opt.id ? "true" : "false"}>${_escape(opt.label)}</button>${_el_resume($scope51_id, "a")}`);
5841
5840
  _script($scope51_id, "v64");
5842
5841
  writeScope($scope51_id, {
5843
5842
  e: opt?.id,
5844
5843
  _: _scope_with_id($scope0_id)
5845
5844
  });
5846
5845
  }, "id", $scope0_id, "av", 1, 0, 1, 0, 1);
5847
- _html(`</span><span${_attr_class(["_m", "_cI"])}>`);
5846
+ _html(`</span><span${_attr_class(["_m", "_cG"])}>`);
5848
5847
  _attr_select_value($scope0_id, "ax", themeMode, _resume(function(v) {
5849
5848
  setThemeMode(v);
5850
5849
  }, "v5", $scope0_id), () => {
5851
- _html(`<select${_attr_class(["_n", "_cJ"])} aria-label="Color theme">`);
5850
+ _html(`<select${_attr_class(["_n", "_cH"])} aria-label="Color theme">`);
5852
5851
  forOf(themeOpts, (opt) => {
5853
5852
  _scope_id();
5854
5853
  _html(`<option${_attr_option_value(opt.id)}>${_escape(opt.label)}</option>`);
5855
5854
  });
5856
5855
  _html("</select>");
5857
5856
  });
5858
- _html(`${_el_resume($scope0_id, "ax")}</span></span></div><div${_attr_class("_cD")}><span${_attr_class("_cE")}>Accent</span><span${_attr_class(swatches)} role=radiogroup aria-label="Accent colour"><button type=button${_attr_class([
5857
+ _html(`${_el_resume($scope0_id, "ax")}</span></span></div><div${_attr_class("_cB")}><span${_attr_class("_cC")}>Accent</span><span${_attr_class(swatches)} role=radiogroup aria-label="Accent colour"><button type=button${_attr_class([
5858
+ "_cN",
5859
5859
  "_cP",
5860
- "_cR",
5861
- { ["_cQ"]: !input.instance.accent }
5860
+ { ["_cO"]: !input.instance.accent }
5862
5861
  ])} role=radio aria-checked=${!input.instance.accent ? "true" : "false"} title="Default (blue)" aria-label="Default (blue)"></button>${_el_resume($scope0_id, "b1")}`);
5863
5862
  _for_of(ACCENT_PRESETS, (p) => {
5864
5863
  const $scope4_id = _scope_id();
5865
- _html(`<button type=button${_attr_class(["_cP", { ["_cQ"]: input.instance.accent === p.value }])}${_attr_style(`--swatch:${p.value}`)} role=radio aria-checked=${input.instance.accent === p.value ? "true" : "false"}${_attr("title", p.name)}${_attr("aria-label", p.name)}></button>${_el_resume($scope4_id, "a")}`);
5864
+ _html(`<button type=button${_attr_class(["_cN", { ["_cO"]: input.instance.accent === p.value }])}${_attr_style(`--swatch:${p.value}`)} role=radio aria-checked=${input.instance.accent === p.value ? "true" : "false"}${_attr("title", p.name)}${_attr("aria-label", p.name)}></button>${_el_resume($scope4_id, "a")}`);
5866
5865
  _script($scope4_id, "v65");
5867
5866
  writeScope($scope4_id, {
5868
5867
  d: p?.value,
@@ -5871,12 +5870,12 @@ var settings_page_default = _template("v", (input) => {
5871
5870
  }, "value", $scope0_id, "b2", $sg__input_instance_accent, 0, 1, 0, 1);
5872
5871
  const customOn = !!input.instance.accent && !ACCENT_PRESETS.some((p) => p.value === input.instance.accent);
5873
5872
  _html(`<label${_attr_class([
5874
- "_cP",
5875
- "_cS",
5876
- { ["_cQ"]: customOn }
5873
+ "_cN",
5874
+ "_cQ",
5875
+ { ["_cO"]: customOn }
5877
5876
  ])}${customOn ? _attr_style(`--swatch:${input.instance.accent}`) : ""} title="Custom colour"><input${_attr_input_value($scope0_id, "b4", input.instance.accent || "#3556d8", _resume(function(v) {
5878
5877
  setInstance({ accent: v });
5879
- }, "v6", $scope0_id))}${_attr_class("_cT")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "b4")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "b3", $sg__input_instance_accent)}</span></div></div></section></div></div></div>`);
5878
+ }, "v6", $scope0_id))}${_attr_class("_cR")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "b4")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "b3", $sg__input_instance_accent)}</span></div></div></section></div></div></div>`);
5880
5879
  _if(() => {
5881
5880
  if (versionPick) {
5882
5881
  const $scope38_id = _scope_id();
@@ -6004,12 +6003,12 @@ var settings_page_default = _template("v", (input) => {
6004
6003
  });
6005
6004
  //#endregion
6006
6005
  //#region src/tags/new-workspace.css.ts
6007
- var content$1 = "_bN _bp";
6008
- var section$1 = "_bR _bx";
6009
- var curBase = "_bW _T _S";
6010
- var archived = "_b1 _bx";
6011
- var archivedHint = "_b2 _S";
6012
- var archivedCard = "_b3 _bC";
6006
+ var content$1 = "_bL _bo";
6007
+ var section$1 = "_bP _bw";
6008
+ var curBase = "_bU _S _R";
6009
+ var archived = "_bZ _bw";
6010
+ var archivedHint = "_b0 _R";
6011
+ var archivedCard = "_b1 _bB";
6013
6012
  //#endregion
6014
6013
  //#region src/tags/icons/icon-check.marko
6015
6014
  var icon_check_default = _template("P", (input) => {
@@ -6044,7 +6043,7 @@ var icon_branch_default = _template("O", (input) => {
6044
6043
  });
6045
6044
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
6046
6045
  });
6047
- var resultBranch = "_c3 _Z _j";
6046
+ var resultBranch = "_c1 _Y _j";
6048
6047
  //#endregion
6049
6048
  //#region src/tags/branch-pick.marko
6050
6049
  var branch_pick_default = _template("d", (input) => {
@@ -6057,11 +6056,11 @@ var branch_pick_default = _template("d", (input) => {
6057
6056
  let branchFilter = "";
6058
6057
  let reloadTick = 0;
6059
6058
  let refreshing = false;
6060
- _html(`<div${_attr_class("_c5")}>`);
6059
+ _html(`<div${_attr_class("_c3")}>`);
6061
6060
  _if(() => {
6062
6061
  {
6063
6062
  const $scope4_id = _scope_id();
6064
- _html(`<p${_attr_class("_bI")}><span${_attr_class("_F")}></span> Loading branches…</p>`);
6063
+ _html(`<p${_attr_class("_bH")}><span${_attr_class("_E")}></span> Loading branches…</p>`);
6065
6064
  writeScope($scope4_id, {});
6066
6065
  return 0;
6067
6066
  }
@@ -6139,11 +6138,11 @@ var repo_picker_default = _template("t", (input) => {
6139
6138
  const ignored = new Set(prefs$1?.ignoredSsoOrgs?.() ?? []);
6140
6139
  return (catalog?.sso || []).filter((s) => !ignored.has(s.org));
6141
6140
  })();
6142
- _html(`<div${_attr_class("_cW")}>`);
6141
+ _html(`<div${_attr_class("_cU")}>`);
6143
6142
  _if(() => {
6144
6143
  if (ssoPending.length) {
6145
6144
  const $scope7_id = _scope_id();
6146
- _html(`<div${_attr_class("_cX")}>`);
6145
+ _html(`<div${_attr_class("_cV")}>`);
6147
6146
  _set_serialize_reason(154);
6148
6147
  const $childScope = _peek_scope_id();
6149
6148
  sso_auth_default({
@@ -6160,29 +6159,29 @@ var repo_picker_default = _template("t", (input) => {
6160
6159
  return 0;
6161
6160
  }
6162
6161
  }, $scope0_id, "b", 1, 1, 1, 0, 1);
6163
- _html(`<label${_attr_class("_W")}>`);
6162
+ _html(`<label${_attr_class("_V")}>`);
6164
6163
  icon_search_default({
6165
6164
  size: 14,
6166
- class: "_X"
6165
+ class: "_W"
6167
6166
  });
6168
6167
  _html(`<input${_attr_input_value($scope0_id, "e", filter, _resume(function(v) {
6169
6168
  filter = v;
6170
6169
  highlight = 0;
6171
6170
  pasteWillFork = false;
6172
- }, "t0", $scope0_id))}${_attr_class([inputLg, "_Y"])} placeholder="Add a repo…" aria-label="Add a repo"${_attr("disabled", input.disabled)}>${_el_resume($scope0_id, "e")}</label>`);
6171
+ }, "t0", $scope0_id))}${_attr_class([inputLg, "_X"])} placeholder="Add a repo…" aria-label="Add a repo"${_attr("disabled", input.disabled)}>${_el_resume($scope0_id, "e")}</label>`);
6173
6172
  _if(() => {
6174
6173
  if (pasted) {
6175
6174
  const $scope1_id = _scope_id();
6176
- _html(`<ul${_attr_class("_cY")}><li><div${_attr_class(["_c0", "_cZ"])}><button${_attr_class("_c1")}${pasteWillFork ? _attr("title", `Fork ${pasted} to your account and add the fork`) : _attr("title", `Add ${pasted} as-is (pushes go to that repo)`)}>`);
6175
+ _html(`<ul${_attr_class("_cW")}><li><div${_attr_class(["_cY", "_cX"])}><button${_attr_class("_cZ")}${pasteWillFork ? _attr("title", `Fork ${pasted} to your account and add the fork`) : _attr("title", `Add ${pasted} as-is (pushes go to that repo)`)}>`);
6177
6176
  icon_plus_default({
6178
6177
  size: 12,
6179
- class: "_c7"
6178
+ class: "_c5"
6180
6179
  });
6181
- _html(`<span${_attr_class("_c8")}>${_escape(repoLabel(pasted))}${_el_resume($scope1_id, "f")}</span></button>${_el_resume($scope1_id, "c")}`);
6180
+ _html(`<span${_attr_class("_c6")}>${_escape(repoLabel(pasted))}${_el_resume($scope1_id, "f")}</span></button>${_el_resume($scope1_id, "c")}`);
6182
6181
  _if(() => {
6183
6182
  if (pastedForkable) {
6184
6183
  const $scope8_id = _scope_id();
6185
- _html(`<button${_attr_class(["_c4", { ["_c2"]: pasteWillFork }])}${pasteWillFork ? " title=\"Will fork to your account; click to clone as-is instead\"" : _attr("title", `Fork ${pasted} to your account and clone the fork`)} aria-pressed=${pasteWillFork ? "true" : "false"}>`);
6184
+ _html(`<button${_attr_class(["_c2", { ["_c0"]: pasteWillFork }])}${pasteWillFork ? " title=\"Will fork to your account; click to clone as-is instead\"" : _attr("title", `Fork ${pasted} to your account and clone the fork`)} aria-pressed=${pasteWillFork ? "true" : "false"}>`);
6186
6185
  _if(() => {
6187
6186
  if (pasteWillFork) {
6188
6187
  const $scope10_id = _scope_id();
@@ -6202,7 +6201,7 @@ var repo_picker_default = _template("t", (input) => {
6202
6201
  return 0;
6203
6202
  }
6204
6203
  }, $scope1_id, "g", 1, 1, 1, 0, 1);
6205
- _html(`<button${_attr_class([resultBranch, { ["_c2"]: branchesFor === pasted }])}${_attr("title", `Pick a base branch for ${pasted}`)}${_attr("aria-label", `Pick a base branch for ${pasted}`)}>`);
6204
+ _html(`<button${_attr_class([resultBranch, { ["_c0"]: branchesFor === pasted }])}${_attr("title", `Pick a base branch for ${pasted}`)}${_attr("aria-label", `Pick a base branch for ${pasted}`)}>`);
6206
6205
  icon_branch_default({ size: 12 });
6207
6206
  _html(`</button>${_el_resume($scope1_id, "h")}</div>`);
6208
6207
  _if(() => {
@@ -6229,7 +6228,7 @@ var repo_picker_default = _template("t", (input) => {
6229
6228
  return 0;
6230
6229
  } else if (filter && !catalog) {
6231
6230
  const $scope9_id = _scope_id();
6232
- _html(`<p${_attr_class("_bI")}>Loading repos…</p>`);
6231
+ _html(`<p${_attr_class("_bH")}>Loading repos…</p>`);
6233
6232
  writeScope($scope9_id, {});
6234
6233
  return 1;
6235
6234
  }
@@ -6237,15 +6236,15 @@ var repo_picker_default = _template("t", (input) => {
6237
6236
  _if(() => {
6238
6237
  if (results.length) {
6239
6238
  const $scope3_id = _scope_id();
6240
- _html(`<ul${_attr_class("_cY")}>`);
6239
+ _html(`<ul${_attr_class("_cW")}>`);
6241
6240
  _for_of(results, (repo, i) => {
6242
6241
  const $scope4_id = _scope_id();
6243
- _html(`<li><div${_attr_class(["_c0", { ["_cZ"]: i === highlight }])}><button${_attr_class("_c1")}>`);
6242
+ _html(`<li><div${_attr_class(["_cY", { ["_cX"]: i === highlight }])}><button${_attr_class("_cZ")}>`);
6244
6243
  icon_plus_default({
6245
6244
  size: 12,
6246
- class: "_c7"
6245
+ class: "_c5"
6247
6246
  });
6248
- _html(`<span${_attr_class("_c8")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope4_id, "e")}</span></button>${_el_resume($scope4_id, "b")}<button${_attr_class([resultBranch, { ["_c2"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>`);
6247
+ _html(`<span${_attr_class("_c6")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope4_id, "e")}</span></button>${_el_resume($scope4_id, "b")}<button${_attr_class([resultBranch, { ["_c0"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>`);
6249
6248
  icon_branch_default({ size: 12 });
6250
6249
  _html(`</button>${_el_resume($scope4_id, "f")}</div>${_el_resume($scope4_id, "a")}`);
6251
6250
  _if(() => {
@@ -6280,7 +6279,7 @@ var repo_picker_default = _template("t", (input) => {
6280
6279
  return 0;
6281
6280
  } else if (filter && catalog && !pasted) {
6282
6281
  const $scope6_id = _scope_id();
6283
- _html(`<p${_attr_class("_bI")}>No repos match "<!>${_escape(filter)}${_el_resume($scope6_id, "b")}". Paste a clone URL to add any repo.</p>`);
6282
+ _html(`<p${_attr_class("_bH")}>No repos match "<!>${_escape(filter)}${_el_resume($scope6_id, "b")}". Paste a clone URL to add any repo.</p>`);
6284
6283
  writeScope($scope6_id, {});
6285
6284
  return 1;
6286
6285
  }
@@ -6421,7 +6420,7 @@ var new_workspace_default = _template("q", (input) => {
6421
6420
  }
6422
6421
  }, "q6", $scope0_id);
6423
6422
  const titleId = _id();
6424
- _html(`<div${_attr_class("_bn")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bo")}><div${_attr_class(content$1)}>`);
6423
+ _html(`<div${_attr_class("_bm")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bn")}><div${_attr_class(content$1)}>`);
6425
6424
  _set_serialize_reason({
6426
6425
  0: _serialize_guard($scope0_reason, 2),
6427
6426
  1: $sg__input_backHref__OR__input_onExit,
@@ -6460,23 +6459,23 @@ var new_workspace_default = _template("q", (input) => {
6460
6459
  return 0;
6461
6460
  }
6462
6461
  }, $scope0_id, "e", 1, 1, 1, 0, 1);
6463
- _html(`<label${_attr_class("_bQ")}><span${_attr_class("_bM")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
6462
+ _html(`<label${_attr_class("_bO")}><span${_attr_class("_bK")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
6464
6463
  name = _new_name;
6465
- }, "q0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class(section$1)}><div${_attr_class("_bS")}><h2${_attr_class("_bM")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
6464
+ }, "q0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class(section$1)}><div${_attr_class("_bQ")}><h2${_attr_class("_bK")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
6466
6465
  _set_serialize_reason(1);
6467
6466
  const $childScope2 = _peek_scope_id();
6468
6467
  icon_refresh_default({
6469
6468
  size: 14,
6470
- class: catalogRefreshing && "_E"
6469
+ class: catalogRefreshing && "_D"
6471
6470
  });
6472
- _html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_bT")}>`);
6471
+ _html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_bR")}>`);
6473
6472
  _for_of(selected, (repo) => {
6474
6473
  const $scope2_id = _scope_id();
6475
- _html(`<li><div${_attr_class(row)}><span${_attr_class("_bU")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope2_id, "c")}</span>`);
6474
+ _html(`<li><div${_attr_class(row)}><span${_attr_class("_bS")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope2_id, "c")}</span>`);
6476
6475
  _if(() => {
6477
6476
  if (repo.fork !== void 0) {
6478
6477
  const $scope3_id = _scope_id();
6479
- _html(`<button${_attr_class(["_bX", { ["_bV"]: repo.fork }])}${repo.fork ? _attr("title", `${repo.fullName} will be forked to your account; click to clone as-is instead`) : _attr("title", `Fork ${repo.fullName} to your account and clone the fork`)} aria-pressed=${repo.fork ? "true" : "false"}${_attr("disabled", busy)}>`);
6478
+ _html(`<button${_attr_class(["_bV", { ["_bT"]: repo.fork }])}${repo.fork ? _attr("title", `${repo.fullName} will be forked to your account; click to clone as-is instead`) : _attr("title", `Fork ${repo.fullName} to your account and clone the fork`)} aria-pressed=${repo.fork ? "true" : "false"}${_attr("disabled", busy)}>`);
6480
6479
  _if(() => {
6481
6480
  if (repo.fork) {
6482
6481
  const $scope12_id = _scope_id();
@@ -6498,11 +6497,11 @@ var new_workspace_default = _template("q", (input) => {
6498
6497
  }, $scope2_id, "d", 1, 1, 1, 0, 1);
6499
6498
  _html(`<button${_attr_class([
6500
6499
  curBase,
6501
- "_x",
6502
- { ["_bV"]: branchesFor === repo.fullName }
6500
+ "_w",
6501
+ { ["_bT"]: branchesFor === repo.fullName }
6503
6502
  ])}${_attr("title", `Change base branch for ${repo.fullName}`)}${_attr("aria-label", `Change base branch for ${repo.fullName}`)}${_attr("disabled", busy)}>`);
6504
6503
  icon_branch_default({ size: 12 });
6505
- _html(`<!>${repo.baseBranch ? ` ${_escape(`${_to_text(repo.baseBranch)}`)}` : ""}${_el_resume($scope2_id, "g")}</button>${_el_resume($scope2_id, "e")}<button${_attr_class([iconBtnXs, "_2"])}${_attr("title", `Remove ${repo.fullName}`)}${_attr("disabled", busy)}>`);
6504
+ _html(`<!>${repo.baseBranch ? ` ${_escape(`${_to_text(repo.baseBranch)}`)}` : ""}${_el_resume($scope2_id, "g")}</button>${_el_resume($scope2_id, "e")}<button${_attr_class([iconBtnXs, "_1"])}${_attr("title", `Remove ${repo.fullName}`)}${_attr("disabled", busy)}>`);
6506
6505
  icon_xmark_default({ size: 12 });
6507
6506
  _html(`</button>${_el_resume($scope2_id, "h")}</div>`);
6508
6507
  _if(() => {
@@ -6535,7 +6534,7 @@ var new_workspace_default = _template("q", (input) => {
6535
6534
  _if(() => {
6536
6535
  if (!selected.length) {
6537
6536
  const $scope14_id = _scope_id();
6538
- _html(`<li${_attr_class("_bI")}>No repos yet. Search below to add one, or create it empty.</li>`);
6537
+ _html(`<li${_attr_class("_bH")}>No repos yet. Search below to add one, or create it empty.</li>`);
6539
6538
  writeScope($scope14_id, {});
6540
6539
  return 0;
6541
6540
  }
@@ -6560,19 +6559,19 @@ var new_workspace_default = _template("q", (input) => {
6560
6559
  _if(() => {
6561
6560
  if (busy && steps$1.length) {
6562
6561
  const $scope9_id = _scope_id();
6563
- _html(`<ul${_attr_class("_bY")}>`);
6562
+ _html(`<ul${_attr_class("_bW")}>`);
6564
6563
  _for_of(steps$1, (step$1, i) => {
6565
6564
  const $scope10_id = _scope_id();
6566
- _html(`<li${_attr_class(["_b4", { ["_bZ"]: i === steps$1.length - 1 }])}>`);
6565
+ _html(`<li${_attr_class(["_b2", { ["_bX"]: i === steps$1.length - 1 }])}>`);
6567
6566
  _if(() => {
6568
6567
  if (i === steps$1.length - 1) {
6569
6568
  const $scope15_id = _scope_id();
6570
- _html(`<span${_attr_class("_F")}></span>`);
6569
+ _html(`<span${_attr_class("_E")}></span>`);
6571
6570
  writeScope($scope15_id, {});
6572
6571
  return 0;
6573
6572
  } else {
6574
6573
  const $scope16_id = _scope_id();
6575
- _html(`<span${_attr_class("_b0")}>`);
6574
+ _html(`<span${_attr_class("_bY")}>`);
6576
6575
  icon_check_default({ size: 14 });
6577
6576
  _html("</span>");
6578
6577
  writeScope($scope16_id, {});
@@ -6586,7 +6585,7 @@ var new_workspace_default = _template("q", (input) => {
6586
6585
  return 0;
6587
6586
  }
6588
6587
  }, $scope0_id, "s", 1, 1, 1, 0, 1);
6589
- _html(`<div${_attr_class("_bO")}>`);
6588
+ _html(`<div${_attr_class("_bM")}>`);
6590
6589
  _if(() => {
6591
6590
  if (input.onExit || busy) {
6592
6591
  const $scope1_id = _scope_id();
@@ -6599,19 +6598,19 @@ var new_workspace_default = _template("q", (input) => {
6599
6598
  _html(`<button type=button${_attr_class([
6600
6599
  btnLg,
6601
6600
  "_p",
6602
- "_bP"
6601
+ "_bN"
6603
6602
  ])}${_attr("disabled", busy || !!restoring || !name.trim())}>${busy ? "Creating…" : "Create workspace"}${_el_resume($scope0_id, "w")}</button>${_el_resume($scope0_id, "v")}</div>`);
6604
6603
  _if(() => {
6605
6604
  if (archived$1.length) {
6606
6605
  const $scope4_id = _scope_id();
6607
- _html(`<section${_attr_class(archived)}><div${_attr_class("_bS")}><h2${_attr_class("_bM")}>Archived</h2><span${_attr_class(sectionCount$1)}>${_escape(archived$1.length)}${_el_resume($scope4_id, "e", $sg__input_workspaces)}</span></div><p${_attr_class(archivedHint)}>Restore an archived workspace instead of creating a new one.</p><ul${_attr_class("_bA")}>`);
6606
+ _html(`<section${_attr_class(archived)}><div${_attr_class("_bQ")}><h2${_attr_class("_bK")}>Archived</h2><span${_attr_class(sectionCount$1)}>${_escape(archived$1.length)}${_el_resume($scope4_id, "e", $sg__input_workspaces)}</span></div><p${_attr_class(archivedHint)}>Restore an archived workspace instead of creating a new one.</p><ul${_attr_class("_bz")}>`);
6608
6607
  _for_of(archived$1, (ws) => {
6609
6608
  const $scope5_id = _scope_id();
6610
- _html(`<li${_attr_class(archivedCard)}><div${_attr_class("_bD")}><span${_attr_class("_bE")}>${_escape(ws.name)}${_el_resume($scope5_id, "d", $sg__input_workspaces)}</span><span${_attr_class([metaTrunc, "_x"])}${_attr("title", ws.display_path || ws.path)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope5_id, "f", $sg__input_workspaces)}</span>${_el_resume($scope5_id, "e", $sg__input_workspaces)}</div><button type=button${_attr_class(btnLg)}${_attr("disabled", busy || !!restoring)}>`);
6609
+ _html(`<li${_attr_class(archivedCard)}><div${_attr_class("_bC")}><span${_attr_class("_bD")}>${_escape(ws.name)}${_el_resume($scope5_id, "d", $sg__input_workspaces)}</span><span${_attr_class([metaTrunc, "_w"])}${_attr("title", ws.display_path || ws.path)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope5_id, "f", $sg__input_workspaces)}</span>${_el_resume($scope5_id, "e", $sg__input_workspaces)}</div><button type=button${_attr_class(btnLg)}${_attr("disabled", busy || !!restoring)}>`);
6611
6610
  _if(() => {
6612
6611
  if (restoring === ws.id) {
6613
6612
  const $scope17_id = _scope_id();
6614
- _html(`<span${_attr_class("_F")}></span> Restoring…`);
6613
+ _html(`<span${_attr_class("_E")}></span> Restoring…`);
6615
6614
  writeScope($scope17_id, {});
6616
6615
  return 0;
6617
6616
  } else {
@@ -6713,29 +6712,8 @@ function vapidKey(base64) {
6713
6712
  const raw = atob(padded.replace(/-/g, "+").replace(/_/g, "/"));
6714
6713
  return Uint8Array.from(raw, (c) => c.charCodeAt(0));
6715
6714
  }
6716
- //#endregion
6717
- //#region src/client/status.ts
6718
- /** Workspace activity dot from its polled status counts. */
6719
- function phaseOf(status) {
6720
- return status?.working ? "working" : status?.waiting ? "waiting" : status?.agents ? "idle" : "off";
6721
- }
6722
- /** Session activity dot from its own state. */
6723
- function sessionPhase(state) {
6724
- return state?.phase === "working" ? "working" : state?.phase === "waiting" ? "waiting" : state?.alive ? "idle" : "off";
6725
- }
6726
- /**
6727
- * What a session is *running*, which is not always what it was started as: a
6728
- * shell someone typed `claude` into is a claude session as far as the reader
6729
- * is concerned. Only shells are reinterpreted — an agent kind stays itself
6730
- * even while it shells out, so the icon doesn't flicker mid-command.
6731
- */
6732
- function activeAgent(session) {
6733
- if (session.agent !== "shell") return session.agent;
6734
- const command = session.state?.command?.trim();
6735
- return command && agentFromCommand(command) || session.agent;
6736
- }
6737
- var iconBtn$1 = "_eC _j";
6738
- var navToggle = "_eH _j";
6715
+ var iconBtn$1 = "_db _j";
6716
+ var navToggle = "_dg _j";
6739
6717
  _template("N", (input) => {
6740
6718
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6741
6719
  const $scope0_id = _scope_id();
@@ -6753,7 +6731,7 @@ _template("N", (input) => {
6753
6731
  });
6754
6732
  //#endregion
6755
6733
  //#region src/tags/icons/icon-settings.marko
6756
- var icon_settings_default = _template("gb", (input) => {
6734
+ var icon_settings_default = _template("fb", (input) => {
6757
6735
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6758
6736
  const $scope0_id = _scope_id();
6759
6737
  _set_serialize_reason({
@@ -6778,12 +6756,33 @@ var ARM_MS = 3500;
6778
6756
  function disarmLater(fn) {
6779
6757
  return setTimeout(fn, ARM_MS);
6780
6758
  }
6781
- var railBtn = "_gr _j";
6782
- var rowIcon = "_gA _Z _j";
6783
- var close = "_gB _Z _j _2";
6759
+ var railBtn = "_fJ _j";
6760
+ var rowIcon = "_fS _Y _j";
6761
+ var close = "_fT _Y _j _1";
6784
6762
  //#endregion
6785
6763
  //#region src/styles/session-pop.css.ts
6786
- var sessionPop = "_gn _4";
6764
+ var sessionPop = "_fs _3";
6765
+ //#endregion
6766
+ //#region src/client/status.ts
6767
+ /** Workspace activity dot from its polled status counts. */
6768
+ function phaseOf(status) {
6769
+ return status?.working ? "working" : status?.waiting ? "waiting" : status?.agents ? "idle" : "off";
6770
+ }
6771
+ /** Session activity dot from its own state. */
6772
+ function sessionPhase(state) {
6773
+ return state?.phase === "working" ? "working" : state?.phase === "waiting" ? "waiting" : state?.alive ? "idle" : "off";
6774
+ }
6775
+ /**
6776
+ * What a session is *running*, which is not always what it was started as: a
6777
+ * shell someone typed `claude` into is a claude session as far as the reader
6778
+ * is concerned. Only shells are reinterpreted — an agent kind stays itself
6779
+ * even while it shells out, so the icon doesn't flicker mid-command.
6780
+ */
6781
+ function activeAgent(session) {
6782
+ if (session.agent !== "shell") return session.agent;
6783
+ const command = session.state?.command?.trim();
6784
+ return command && agentFromCommand(command) || session.agent;
6785
+ }
6787
6786
  //#endregion
6788
6787
  //#region src/tags/icons/icon-diff.marko
6789
6788
  var icon_diff_default = _template("V", (input) => {
@@ -6803,7 +6802,7 @@ var icon_diff_default = _template("V", (input) => {
6803
6802
  });
6804
6803
  //#endregion
6805
6804
  //#region src/tags/icons/icon-manage.marko
6806
- var icon_manage_default = _template("cb", (input) => {
6805
+ var icon_manage_default = _template("bb", (input) => {
6807
6806
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6808
6807
  const $scope0_id = _scope_id();
6809
6808
  _set_serialize_reason({
@@ -6820,10 +6819,6 @@ var icon_manage_default = _template("cb", (input) => {
6820
6819
  });
6821
6820
  //#endregion
6822
6821
  //#region src/tags/usage-pcts.marko
6823
- function pctText(pct) {
6824
- const rounded = Math.round(pct);
6825
- return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
6826
- }
6827
6822
  var usage_pcts_default = _template("E", (input) => {
6828
6823
  const $scope0_reason = _scope_reason(), $sg__input_agent = _serialize_guard($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 1), $sg__input_agent__OR__input_class = _serialize_guard($scope0_reason, 0), $si__input_agent__OR__input_class = _serialize_if($scope0_reason, 0);
6829
6824
  const $scope0_id = _scope_id();
@@ -6833,22 +6828,22 @@ var usage_pcts_default = _template("E", (input) => {
6833
6828
  if (windows.length) {
6834
6829
  const $scope1_id = _scope_id();
6835
6830
  _html(`<span${_attr_class([
6836
- "_fo",
6831
+ "_fm",
6837
6832
  input.class,
6838
- { ["_fp"]: agent.stale_seconds != null }
6833
+ { ["_fn"]: agent.stale_seconds != null }
6839
6834
  ])}${agent.stale_seconds != null ? _attr("title", `${agent.note || "provider unreachable"}; last cached numbers`) : " title=\"Plan usage\""}>`);
6840
6835
  _for_of(windows, (win$1, i) => {
6841
6836
  const $scope2_id = _scope_id();
6842
- _html(`<span${_attr_class("_fq")}>`);
6837
+ _html(`<span${_attr_class("_fo")}>`);
6843
6838
  _if(() => {
6844
6839
  if (i) {
6845
6840
  const $scope3_id = _scope_id();
6846
- _html(`<span${_attr_class("_ft")} aria-hidden=true>·</span>`);
6841
+ _html(`<span${_attr_class("_fr")} aria-hidden=true>·</span>`);
6847
6842
  $si__input_agent && writeScope($scope3_id, {});
6848
6843
  return 0;
6849
6844
  }
6850
6845
  }, $scope2_id, "b", $sg__input_agent, $sg__input_agent, $sg__input_agent, 0, 1);
6851
- _html(`<span${_attr_class("_fr")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_fs", win$1.used_percent >= 90 ? "_dJ" : win$1.used_percent >= 70 ? "_dI" : win$1.used_percent >= 40 ? "_dH" : "_dG"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
6846
+ _html(`<span${_attr_class("_fp")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_fq", win$1.used_percent >= 90 ? "_fi" : win$1.used_percent >= 70 ? "_fh" : win$1.used_percent >= 40 ? "_fg" : "_ff"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
6852
6847
  $si__input_agent && writeScope($scope2_id, {});
6853
6848
  }, "window", $scope1_id, "a", $sg__input_agent, $sg__input_agent__OR__input_class, $sg__input_agent, "</span>", 1);
6854
6849
  $si__input_agent__OR__input_class && writeScope($scope1_id, { _: _scope_with_id($scope0_id) });
@@ -6879,12 +6874,12 @@ var icon_edit_default = _template("X", (input) => {
6879
6874
  });
6880
6875
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
6881
6876
  });
6882
- var prChip = "_ht _s _hs";
6883
- var portChip = "_hu _s _hs";
6877
+ var prChip = "_hr _s _hq";
6878
+ var portChip = "_hs _s _hq";
6884
6879
  var prState = {
6885
- open: "_hy",
6886
- merged: "_hz",
6887
- closed: "_hA"
6880
+ open: "_hw",
6881
+ merged: "_hx",
6882
+ closed: "_hy"
6888
6883
  };
6889
6884
  //#endregion
6890
6885
  //#region src/tags/side-nav-chips.marko
@@ -6956,7 +6951,7 @@ var side_nav_chips_default = _template("w", (input) => {
6956
6951
  const name = repo.full_name.split("/").at(-1);
6957
6952
  return repos.some((r) => r.full_name !== repo.full_name && r.full_name.split("/").at(-1) === name) ? repoLabel(repo.full_name) : name;
6958
6953
  }, "w4", $scope1_id);
6959
- _html(`<div${_attr_class("_hr")}>`);
6954
+ _html(`<div${_attr_class("_hp")}>`);
6960
6955
  _for_of(repos, (repo) => {
6961
6956
  const $scope2_id = _scope_id();
6962
6957
  const $for_content__repo_worktree__closures = /* @__PURE__ */ new Set();
@@ -6967,16 +6962,16 @@ var side_nav_chips_default = _template("w", (input) => {
6967
6962
  "_s",
6968
6963
  prChip,
6969
6964
  {
6970
- ["_u"]: open && !pr.isDraft,
6971
- ["_v"]: open && pr.isDraft,
6965
+ ["_t"]: open && !pr.isDraft,
6966
+ ["_u"]: open && pr.isDraft,
6972
6967
  [prState.merged]: pr.state === "MERGED",
6973
6968
  [prState.closed]: pr.state === "CLOSED"
6974
6969
  }
6975
- ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_hv", { ["_hC"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c")}#<!>${_escape(pr.number)}${_el_resume($scope3_id, "d")}</a>${_el_resume($scope3_id, "b")}`);
6970
+ ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_ht", { ["_hA"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c")}#<!>${_escape(pr.number)}${_el_resume($scope3_id, "d")}</a>${_el_resume($scope3_id, "b")}`);
6976
6971
  _if(() => {
6977
6972
  if (open) {
6978
6973
  const $scope4_id = _scope_id();
6979
- _html(`<a${_attr_class(["_hv", "_hw"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
6974
+ _html(`<a${_attr_class(["_ht", "_hu"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
6980
6975
  icon_diff_default({ size: 12 });
6981
6976
  _html(`</a>${_el_resume($scope4_id, "a")}`);
6982
6977
  _subscribe($for_content__repo_worktree__closures, _subscribe($si__input_workspaceId && $input_workspaceId__closures, writeScope($scope4_id, {})));
@@ -6984,9 +6979,9 @@ var side_nav_chips_default = _template("w", (input) => {
6984
6979
  } else {
6985
6980
  const $scope6_id = _scope_id();
6986
6981
  _html(`<button type=button${_attr_class([
6987
- "_hv",
6988
- "_hw",
6989
- "_hx"
6982
+ "_ht",
6983
+ "_hu",
6984
+ "_hv"
6990
6985
  ])}${_attr("title", `Dismiss #${pr.number}`)}>`);
6991
6986
  icon_xmark_default({ size: 12 });
6992
6987
  _html(`</button>${_el_resume($scope6_id, "a")}`);
@@ -7007,10 +7002,10 @@ var side_nav_chips_default = _template("w", (input) => {
7007
7002
  }, "full_name", $scope1_id, "b");
7008
7003
  _for_of(ports, (p) => {
7009
7004
  const $scope5_id = _scope_id();
7010
- _html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_hv", "_hB"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:<!>${_escape(p.port)}${_el_resume($scope5_id, "c")}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
7005
+ _html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_ht", "_hz"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:<!>${_escape(p.port)}${_el_resume($scope5_id, "c")}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
7006
+ "_ht",
7007
+ "_hu",
7011
7008
  "_hv",
7012
- "_hw",
7013
- "_hx",
7014
7009
  { ["_q"]: armedPid === p.pid }
7015
7010
  ])}${armedPid === p.pid ? " title=Kill?" : _attr("title", `Kill ${p.cmd} (pid ${p.pid})`)}>`);
7016
7011
  icon_xmark_default({ size: 12 });
@@ -7106,10 +7101,10 @@ var side_nav_item_default = _template("x", (input) => {
7106
7101
  _if(() => {
7107
7102
  if (input.rail) {
7108
7103
  const $scope2_id = _scope_id();
7109
- _html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_gp"]: input.current }])}${_attr("title", ws$1.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 27))}<span${_attr_class([
7110
- "_z",
7104
+ _html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_fH"]: input.current }])}${_attr("title", ws$1.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 27))}<span${_attr_class([
7105
+ "_y",
7111
7106
  phase[dot],
7112
- "_gs"
7107
+ "_fK"
7113
7108
  ])}></span>${_el_resume($scope2_id, "c", $sg__input_workspaceId__OR__input_status)}</a>${_el_resume($scope2_id, "a", _serialize_guard($scope0_reason, 3))}`);
7114
7109
  _serialize_if($scope0_reason, 18) && _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($si__input_index && $input_index__closures, _subscribe($si__input_current && $input_current__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })))));
7115
7110
  return 0;
@@ -7117,15 +7112,15 @@ var side_nav_item_default = _template("x", (input) => {
7117
7112
  const $scope3_id = _scope_id();
7118
7113
  const sessions$1 = input.sessions || [];
7119
7114
  const phaseLabel = dot === "working" ? "Working" : dot === "waiting" ? "Needs input" : dot === "idle" ? "Idle" : "Not running";
7120
- _html(`<section${_attr_class(["_gu", {
7121
- ["_gp"]: input.current,
7122
- ["_5"]: input.current,
7123
- ["_gv"]: input.railPop,
7124
- ["_gt"]: input.page
7125
- }])}><div${_attr_class("_gw")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class("_gx")}><span${_attr_class([
7126
- "_z",
7115
+ _html(`<section${_attr_class(["_fM", {
7116
+ ["_fH"]: input.current,
7117
+ ["_4"]: input.current,
7118
+ ["_fN"]: input.railPop,
7119
+ ["_fL"]: input.page
7120
+ }])}><div${_attr_class("_fO")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class("_fP")}><span${_attr_class([
7121
+ "_y",
7127
7122
  phase[dot],
7128
- "_gK"
7123
+ "_f2"
7129
7124
  ])}${_attr("title", phaseLabel)}></span>${_el_resume($scope3_id, "d", $sg__input_workspaceId__OR__input_status)}`);
7130
7125
  _if(() => {
7131
7126
  if (sessions$1.length === 1) {
@@ -7138,7 +7133,7 @@ var side_nav_item_default = _template("x", (input) => {
7138
7133
  icon_agent_default({
7139
7134
  agent: activeAgent(sessions$1[0]),
7140
7135
  size: 12,
7141
- class: "_gC"
7136
+ class: "_fU"
7142
7137
  });
7143
7138
  $si__input_sessions && writeScope($scope14_id, {
7144
7139
  _: _scope_with_id($scope3_id),
@@ -7148,16 +7143,16 @@ var side_nav_item_default = _template("x", (input) => {
7148
7143
  }
7149
7144
  }, $scope3_id, "e", $sg__input_sessions, $sg__input_sessions);
7150
7145
  const metaText = sessions$1.length === 0 ? phaseLabel : sessions$1.length === 1 ? sessions$1[0].title || "" : `${sessions$1.length} sessions`;
7151
- _html(`<span${_attr_class("_gD")}><span${_attr_class("_gE")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
7146
+ _html(`<span${_attr_class("_fV")}><span${_attr_class("_fW")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
7152
7147
  _if(() => {
7153
7148
  if (input.page && metaText) {
7154
7149
  const $scope16_id = _scope_id();
7155
- _html(`<span${_attr_class("_gI")}>${_escape(metaText)}${_el_resume($scope16_id, "b", _serialize_guard($scope0_reason, 7))}</span>`);
7150
+ _html(`<span${_attr_class("_f0")}>${_escape(metaText)}${_el_resume($scope16_id, "b", _serialize_guard($scope0_reason, 7))}</span>`);
7156
7151
  $si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope16_id, { _: _serialize_if($scope0_reason, 7) && _scope_with_id($scope3_id) });
7157
7152
  return 0;
7158
7153
  } else if (sessions$1.length === 1 && sessions$1[0].title) {
7159
7154
  const $scope15_id = _scope_id();
7160
- _html(`<span${_attr_class("_gF")}>${_escape(sessions$1[0].title)}${_el_resume($scope15_id, "b", $sg__input_sessions)}</span>`);
7155
+ _html(`<span${_attr_class("_fX")}>${_escape(sessions$1[0].title)}${_el_resume($scope15_id, "b", $sg__input_sessions)}</span>`);
7161
7156
  $si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope15_id, { _: $si__input_sessions && _scope_with_id($scope3_id) });
7162
7157
  return 1;
7163
7158
  }
@@ -7167,10 +7162,10 @@ var side_nav_item_default = _template("x", (input) => {
7167
7162
  if (input.page) {
7168
7163
  const $scope4_id = _scope_id();
7169
7164
  _html(`<span${_attr_class([
7170
- "_I",
7171
- "_R",
7172
- "_K",
7173
- "_gJ"
7165
+ "_H",
7166
+ "_Q",
7167
+ "_J",
7168
+ "_f1"
7174
7169
  ])}>${input.current ? "Open" : ""}${_el_resume($scope4_id, "b", _serialize_guard($scope0_reason, 21))}</span>`);
7175
7170
  $si__input_current__OR__input_page__OR__input_rail__OR__input_workspaces__OR__input_workspaceId && _subscribe($si__input_current && $input_current__closures, writeScope($scope4_id, {
7176
7171
  _: _scope_with_id($scope3_id),
@@ -7183,7 +7178,7 @@ var side_nav_item_default = _template("x", (input) => {
7183
7178
  _if(() => {
7184
7179
  if (!input.page) {
7185
7180
  const $scope5_id = _scope_id();
7186
- _html(`<div${_attr_class("_gy")}>`);
7181
+ _html(`<div${_attr_class("_fQ")}>`);
7187
7182
  _if(() => {
7188
7183
  if (input.onNewSession) {
7189
7184
  const $scope6_id = _scope_id();
@@ -7197,7 +7192,7 @@ var side_nav_item_default = _template("x", (input) => {
7197
7192
  _html(`</button>${_el_resume($scope6_id, "a")}<div${_attr("id", newPopId)} popover=auto${_attr_class(sessionPop)}>`);
7198
7193
  _for_of([], (agent) => {
7199
7194
  const $scope7_id = _scope_id();
7200
- _html(`<button${_attr_class("_go")}>`);
7195
+ _html(`<button${_attr_class("_ft")}>`);
7201
7196
  _set_serialize_reason(12);
7202
7197
  const $childScope2 = _peek_scope_id();
7203
7198
  icon_agent_default({
@@ -7232,7 +7227,7 @@ var side_nav_item_default = _template("x", (input) => {
7232
7227
  return 0;
7233
7228
  }
7234
7229
  }, $scope5_id, "c", $sg__input_onReview, $sg__input_onReview, $sg__input_onNewSession__OR__input_onReview, 0, 1);
7235
- _html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_gq"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
7230
+ _html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_fI"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
7236
7231
  icon_manage_default({ size: 12 });
7237
7232
  _html(`</a>${_el_resume($scope5_id, "d", _serialize_guard($scope0_reason, 8))}</div>`);
7238
7233
  _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($si__input_managing && $input_managing__closures, _subscribe($si__input_onReview && $input_onReview__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, writeScope($scope5_id, {
@@ -7242,7 +7237,7 @@ var side_nav_item_default = _template("x", (input) => {
7242
7237
  return 0;
7243
7238
  }
7244
7239
  }, $scope3_id, "k", $sg__input_page, $sg__input_page, 1, 0, 1);
7245
- _html(`</div><div${_attr_class("_gP")}>`);
7240
+ _html(`</div><div${_attr_class("_f7")}>`);
7246
7241
  _if(() => {
7247
7242
  if (sessions$1.length === 1 && openPlan) {
7248
7243
  const $scope11_id = _scope_id();
@@ -7250,7 +7245,7 @@ var side_nav_item_default = _template("x", (input) => {
7250
7245
  const $childScope3 = _peek_scope_id();
7251
7246
  usage_pcts_default({
7252
7247
  agent: openPlan,
7253
- class: "_gG"
7248
+ class: "_fY"
7254
7249
  });
7255
7250
  _subscribe($openPlan__closures, writeScope($scope11_id, {
7256
7251
  a: _existing_scope($childScope3),
@@ -7261,14 +7256,14 @@ var side_nav_item_default = _template("x", (input) => {
7261
7256
  }, $scope3_id, "m");
7262
7257
  _for_of(sessions$1.length > 1 ? sessions$1 : [], (s) => {
7263
7258
  const $scope8_id = _scope_id();
7264
- _html(`<div${_attr_class(["_gz", { ["_gp"]: s.id === input.currentTab }])}>`);
7259
+ _html(`<div${_attr_class(["_fR", { ["_fH"]: s.id === input.currentTab }])}>`);
7265
7260
  _if(() => {
7266
7261
  if (renamingId === s.id) {
7267
7262
  const $scope10_id = _scope_id();
7268
7263
  _html(`<span${_attr_class([
7269
- "_z",
7264
+ "_y",
7270
7265
  phase[sessionPhase(s.state)],
7271
- "_gN"
7266
+ "_f5"
7272
7267
  ])}></span>${_el_resume($scope10_id, "a", $sg__input_sessions)}`);
7273
7268
  _set_serialize_reason({
7274
7269
  1: $sg__input_sessions,
@@ -7278,17 +7273,17 @@ var side_nav_item_default = _template("x", (input) => {
7278
7273
  icon_agent_default({
7279
7274
  agent: activeAgent(s),
7280
7275
  size: 13,
7281
- class: "_gR"
7276
+ class: "_f9"
7282
7277
  });
7283
7278
  _html(`<input${_attr_input_value($scope10_id, "c", renameValue, _resume((_new_renameValue) => {
7284
7279
  renameValue = _new_renameValue;
7285
- }, "x0", $scope10_id))}${_attr_class(["_U", "_gO"])} aria-label="Session name">${_el_resume($scope10_id, "c")}`);
7280
+ }, "x0", $scope10_id))}${_attr_class(["_T", "_f6"])} aria-label="Session name">${_el_resume($scope10_id, "c")}`);
7286
7281
  _script($scope10_id, "x5");
7287
7282
  _subscribe($renameValue__closures, writeScope($scope10_id, { b: $si__input_sessions && _existing_scope($childScope4) }));
7288
7283
  return 0;
7289
7284
  } else {
7290
7285
  const $scope9_id = _scope_id();
7291
- _html(`<a${_attr("href", `/w/${ws$1.id}?s=${s.id}`)}${_attr_class("_gQ")}><span${_attr_class(["_z", phase[sessionPhase(s.state)]])}></span>${_el_resume($scope9_id, "b", $sg__input_sessions)}`);
7286
+ _html(`<a${_attr("href", `/w/${ws$1.id}?s=${s.id}`)}${_attr_class("_f8")}><span${_attr_class(["_y", phase[sessionPhase(s.state)]])}></span>${_el_resume($scope9_id, "b", $sg__input_sessions)}`);
7292
7287
  _set_serialize_reason({
7293
7288
  1: $sg__input_sessions,
7294
7289
  2: $sg__input_sessions
@@ -7297,9 +7292,9 @@ var side_nav_item_default = _template("x", (input) => {
7297
7292
  icon_agent_default({
7298
7293
  agent: activeAgent(s),
7299
7294
  size: 13,
7300
- class: "_gR"
7295
+ class: "_f9"
7301
7296
  });
7302
- _html(`<span${_attr_class("_gL")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope9_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope9_id, "a", _serialize_guard($scope0_reason, 6))}<div${_attr_class("_gM")}><button${_attr_class(rowIcon)} title="Rename session">`);
7297
+ _html(`<span${_attr_class("_f3")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope9_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope9_id, "a", _serialize_guard($scope0_reason, 6))}<div${_attr_class("_f4")}><button${_attr_class(rowIcon)} title="Rename session">`);
7303
7298
  icon_edit_default({ size: 12 });
7304
7299
  _html(`</button>${_el_resume($scope9_id, "g")}<button${_attr_class([close, { ["_q"]: armedKill === s.id }])} title=${armedKill === s.id ? "Close?" : "\"Close session\""}>`);
7305
7300
  icon_xmark_default({ size: 12 });
@@ -7311,7 +7306,7 @@ var side_nav_item_default = _template("x", (input) => {
7311
7306
  const $childScope6 = _peek_scope_id();
7312
7307
  usage_pcts_default({
7313
7308
  agent: openPlan,
7314
- class: "_gH"
7309
+ class: "_fZ"
7315
7310
  });
7316
7311
  _subscribe($openPlan__closures, writeScope($scope12_id, {
7317
7312
  a: _existing_scope($childScope6),
@@ -7440,7 +7435,7 @@ var icon_folder_plus_default = _template("$", (input) => {
7440
7435
  });
7441
7436
  //#endregion
7442
7437
  //#region src/tags/icons/icon-sidebar-collapse.marko
7443
- var icon_sidebar_collapse_default = _template("hb", (input) => {
7438
+ var icon_sidebar_collapse_default = _template("gb", (input) => {
7444
7439
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
7445
7440
  const $scope0_id = _scope_id();
7446
7441
  _set_serialize_reason({
@@ -7501,40 +7496,39 @@ var side_nav_default = _template("y", (input) => {
7501
7496
  const itemIds = input.allWorkspaces?.length ? input.allWorkspaces.filter((w) => w.status === "active").map((w) => w.id) : [ws.id];
7502
7497
  const workspaces = input.allWorkspaces || [ws];
7503
7498
  const allStatus = input.allStatus || {};
7504
- allStatus[ws.id];
7505
7499
  const isPage = view === "nav";
7506
7500
  const backHref = `/w/${ws.id}`;
7507
7501
  const iconSrc = `/api/instance/icon${input.instanceAccent ? `?v=${input.instanceAccent.slice(1)}` : ""}`;
7508
7502
  const otherIds = itemIds.filter((id) => id !== ws.id);
7509
7503
  const listIds = isPage ? [ws.id, ...otherIds] : itemIds;
7510
- _html(`<aside${_attr_class(["_eG", {
7511
- ["_eE"]: !navOpen,
7512
- ["_eF"]: isPage
7504
+ _html(`<aside${_attr_class(["_df", {
7505
+ ["_dd"]: !navOpen,
7506
+ ["_de"]: isPage
7513
7507
  }])}${_attr("hidden", view === "diff")}>`);
7514
7508
  _if(() => {
7515
7509
  if (isPage) {
7516
7510
  const $scope1_id = _scope_id();
7517
- _html(`<header${_attr_class("_eJ")}><div${_attr_class("_eS")}>`);
7511
+ _html(`<header${_attr_class("_di")}><div${_attr_class("_dr")}>`);
7518
7512
  _if(() => {
7519
7513
  if (input.instanceName) {
7520
7514
  const $scope2_id = _scope_id();
7521
- _html(`<div${_attr_class("_eP")} title="This work server (Settings → Appearance)"><img${_attr_class("_eQ")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_eR")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
7515
+ _html(`<div${_attr_class("_do")} title="This work server (Settings → Appearance)"><img${_attr_class("_dp")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_dq")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
7522
7516
  _subscribe($si__input_instanceAccent && $iconSrc__closures, _subscribe($si__input_instanceName && $input_instanceName__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })));
7523
7517
  return 0;
7524
7518
  }
7525
7519
  }, $scope1_id, "c", $sg__input_instanceName, $sg__input_instanceName, 1, 0, 1);
7526
- _html(`<h1${_attr_class("_eK")}>Workspaces</h1></div><div${_attr_class("_eL")}>`);
7520
+ _html(`<h1${_attr_class("_dj")}>Workspaces</h1></div><div${_attr_class("_dk")}>`);
7527
7521
  _if(() => {}, $scope1_id, "f", 1, 1, 1, 0, 1);
7528
7522
  _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([
7529
7523
  iconBtn$1,
7530
- "_eM",
7531
- { ["_eB"]: view === "settings" }
7524
+ "_dl",
7525
+ { ["_da"]: view === "settings" }
7532
7526
  ])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
7533
7527
  icon_settings_default({ size: 16 });
7534
7528
  _if(() => {
7535
7529
  if (input.setupReady === false) {
7536
7530
  const $scope12_id = _scope_id();
7537
- _html(`<span${_attr_class(["_z", "_eD"])} title="Machine setup incomplete"></span>`);
7531
+ _html(`<span${_attr_class(["_y", "_dc"])} title="Machine setup incomplete"></span>`);
7538
7532
  $si__input_setupReady && writeScope($scope12_id, {});
7539
7533
  return 0;
7540
7534
  }
@@ -7547,18 +7541,18 @@ var side_nav_default = _template("y", (input) => {
7547
7541
  _if(() => {
7548
7542
  if (!isPage && input.instanceName) {
7549
7543
  const $scope3_id = _scope_id();
7550
- _html(`<div${_attr_class("_eP")} title="This work server (Settings → Appearance)"><img${_attr_class("_eQ")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_eR")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
7544
+ _html(`<div${_attr_class("_do")} title="This work server (Settings → Appearance)"><img${_attr_class("_dp")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_dq")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
7551
7545
  writeScope($scope3_id, {});
7552
7546
  return 0;
7553
7547
  }
7554
7548
  }, $scope0_id, "c", 1, 1, 1, 0, 1);
7555
- _html(`<div${_attr_class("_eT")}>`);
7549
+ _html(`<div${_attr_class("_ds")}>`);
7556
7550
  _for_of(listIds, (wsId) => {
7557
7551
  const $scope4_id = _scope_id();
7558
7552
  _if(() => {
7559
7553
  if (isPage && wsId === ws.id) {
7560
7554
  const $scope13_id = _scope_id();
7561
- _html(`<h2${_attr_class(["_bM", "_eN"])}>Current</h2>`);
7555
+ _html(`<h2${_attr_class(["_bK", "_dm"])}>Current</h2>`);
7562
7556
  writeScope($scope13_id, {});
7563
7557
  return 0;
7564
7558
  }
@@ -7566,7 +7560,7 @@ var side_nav_default = _template("y", (input) => {
7566
7560
  _if(() => {
7567
7561
  if (isPage && wsId !== ws.id && wsId === otherIds[0]) {
7568
7562
  const $scope14_id = _scope_id();
7569
- _html(`<h2${_attr_class(["_bM", "_eN"])}>Other workspaces</h2>`);
7563
+ _html(`<h2${_attr_class(["_bK", "_dm"])}>Other workspaces</h2>`);
7570
7564
  writeScope($scope14_id, {});
7571
7565
  return 0;
7572
7566
  }
@@ -7650,7 +7644,7 @@ var side_nav_default = _template("y", (input) => {
7650
7644
  railHover = null;
7651
7645
  }, 150);
7652
7646
  }, "y6", $scope5_id);
7653
- _html(`<div${_attr_class("_eU")}>`);
7647
+ _html(`<div${_attr_class("_dt")}>`);
7654
7648
  _for_of(itemIds, (wsId, i) => {
7655
7649
  const $scope6_id = _scope_id();
7656
7650
  _html("<span>");
@@ -7704,7 +7698,7 @@ var side_nav_default = _template("y", (input) => {
7704
7698
  if (railHover) {
7705
7699
  const $scope7_id = _scope_id();
7706
7700
  const hoverId = railHover.id;
7707
- _html(`<div${_attr_class(["_4", "_eX"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
7701
+ _html(`<div${_attr_class(["_3", "_dw"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
7708
7702
  _set_serialize_reason({
7709
7703
  0: 1,
7710
7704
  1: 1,
@@ -7771,9 +7765,9 @@ var side_nav_default = _template("y", (input) => {
7771
7765
  _subscribe($si__input_allStatus && $allStatus__closures, _subscribe($si__input_workspace__OR__input_allWorkspaces && $workspaces__closures, _subscribe($view__closures, _subscribe($si__input_tab__OR__input_tabChange && $tab__closures, _subscribe($si__input_workspace && $ws_id__closures, _subscribe($si__input_onCloseSession && $input_onCloseSession__closures, _subscribe($si__input_onRenameSession && $input_onRenameSession__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_onReviewOther && $input_onReviewOther__closures, _subscribe($si__input_onReviewOpened && $input_onReviewOpened__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, _subscribe($si__input_agents && $input_agents__closures, writeScope($scope7_id, {
7772
7766
  d: hoverId,
7773
7767
  b: _existing_scope($childScope3),
7774
- Cb5: $si__input_workspace && 1,
7775
- Cbd: $si__input_workspace__OR__input_allWorkspaces && 1,
7776
- Cbe: $si__input_allStatus && 1
7768
+ Cb4: $si__input_workspace && 1,
7769
+ Cbc: $si__input_workspace__OR__input_allWorkspaces && 1,
7770
+ Cbd: $si__input_allStatus && 1
7777
7771
  })))))))))))));
7778
7772
  return 0;
7779
7773
  }
@@ -7789,7 +7783,7 @@ var side_nav_default = _template("y", (input) => {
7789
7783
  return 0;
7790
7784
  }
7791
7785
  }, $scope0_id, "e");
7792
- _html(`<div${_attr_class("_eV")}>`);
7786
+ _html(`<div${_attr_class("_du")}>`);
7793
7787
  _if(() => {
7794
7788
  if (isPage) {
7795
7789
  const $scope9_id = _scope_id();
@@ -7797,7 +7791,7 @@ var side_nav_default = _template("y", (input) => {
7797
7791
  "_o",
7798
7792
  "_p",
7799
7793
  btnLg,
7800
- "_eO"
7794
+ "_dn"
7801
7795
  ])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
7802
7796
  icon_folder_plus_default({ size: 16 });
7803
7797
  _html(` New workspace</a>${_el_resume($scope9_id, "a")}`);
@@ -7819,19 +7813,19 @@ var side_nav_default = _template("y", (input) => {
7819
7813
  return 1;
7820
7814
  }
7821
7815
  }, $scope8_id, "a", 1, 1, 1, "</button>", 1);
7822
- _html(`<div${_attr_class(["_y", "_eW"])}></div>`);
7816
+ _html(`<div${_attr_class(["_x", "_dv"])}></div>`);
7823
7817
  _if(() => {}, $scope8_id, "c", 1, 1, 1, 0, 1);
7824
- _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn$1, { ["_eB"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
7818
+ _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn$1, { ["_da"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
7825
7819
  icon_settings_default({ size: 15 });
7826
7820
  _if(() => {
7827
7821
  if (input.setupReady === false) {
7828
7822
  const $scope17_id = _scope_id();
7829
- _html(`<span${_attr_class(["_z", "_eD"])} title="Machine setup incomplete"></span>`);
7823
+ _html(`<span${_attr_class(["_y", "_dc"])} title="Machine setup incomplete"></span>`);
7830
7824
  $si__input_setupReady && writeScope($scope17_id, {});
7831
7825
  return 0;
7832
7826
  }
7833
7827
  }, $scope8_id, "f", $sg__input_setupReady, $sg__input_setupReady, 1, 0, 1);
7834
- _html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn$1, { ["_eB"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
7828
+ _html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn$1, { ["_da"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
7835
7829
  icon_folder_plus_default({ size: 16 });
7836
7830
  _html(`</a>${_el_resume($scope8_id, "g")}`);
7837
7831
  _script($scope8_id, "y15");
@@ -7872,36 +7866,36 @@ var side_nav_default = _template("y", (input) => {
7872
7866
  ai: itemIds,
7873
7867
  ak: workspaces,
7874
7868
  al: allStatus,
7875
- an: isPage,
7876
- aq: backHref,
7877
- ar: iconSrc,
7878
- as: otherIds,
7879
- au: otherIds?.[0],
7869
+ am: isPage,
7870
+ ap: backHref,
7871
+ aq: iconSrc,
7872
+ ar: otherIds,
7873
+ at: otherIds?.[0],
7880
7874
  ab: input.viewChange || void 0,
7881
- aw: $si__input_instanceName && $input_instanceName__closures,
7882
- bh: $si__input_instanceAccent && $iconSrc__closures,
7883
- b9: $notifyOn__closures,
7884
- b5: $si__input_workspace && $ws_id__closures,
7885
- bd: $si__input_workspace__OR__input_allWorkspaces && $workspaces__closures,
7886
- be: $si__input_allStatus && $allStatus__closures,
7887
- ay: $si__input_agents && $input_agents__closures,
7888
- az: $si__input_onNewSession && $input_onNewSession__closures,
7889
- b0: $si__input_onReviewOpened && $input_onReviewOpened__closures,
7890
- b1: $si__input_onReviewOther && $input_onReviewOther__closures,
7891
- b2: $si__input_sessions && $input_sessions__closures,
7892
- b3: $si__input_onRenameSession && $input_onRenameSession__closures,
7893
- b4: $si__input_onCloseSession && $input_onCloseSession__closures,
7894
- b6: $si__input_tab__OR__input_tabChange && $tab__closures,
7895
- b7: $view__closures
7875
+ av: $si__input_instanceName && $input_instanceName__closures,
7876
+ bg: $si__input_instanceAccent && $iconSrc__closures,
7877
+ b8: $notifyOn__closures,
7878
+ b4: $si__input_workspace && $ws_id__closures,
7879
+ bc: $si__input_workspace__OR__input_allWorkspaces && $workspaces__closures,
7880
+ bd: $si__input_allStatus && $allStatus__closures,
7881
+ ax: $si__input_agents && $input_agents__closures,
7882
+ ay: $si__input_onNewSession && $input_onNewSession__closures,
7883
+ az: $si__input_onReviewOpened && $input_onReviewOpened__closures,
7884
+ b0: $si__input_onReviewOther && $input_onReviewOther__closures,
7885
+ b1: $si__input_sessions && $input_sessions__closures,
7886
+ b2: $si__input_onRenameSession && $input_onRenameSession__closures,
7887
+ b3: $si__input_onCloseSession && $input_onCloseSession__closures,
7888
+ b5: $si__input_tab__OR__input_tabChange && $tab__closures,
7889
+ b6: $view__closures
7896
7890
  });
7897
7891
  _resume_branch($scope0_id);
7898
7892
  });
7899
- var iconBtn = "_0 _j";
7900
- var sectionCount = "_bz _I _J";
7901
- var content = "_dN _bp";
7902
- var pageMeta = "_dO _bu";
7903
- var pathMeta = "_dR _x";
7904
- var dangerHint = "_dX _S";
7893
+ var iconBtn = "_Z _j";
7894
+ var sectionCount = "_by _H _I";
7895
+ var content = "_ea _bo";
7896
+ var pageMeta = "_eb _bt";
7897
+ var pathMeta = "_ee _w";
7898
+ var dangerHint = "_ek _R";
7905
7899
  //#endregion
7906
7900
  //#region src/tags/manage-workspace.marko
7907
7901
  var api$2;
@@ -8032,7 +8026,7 @@ var manage_workspace_default = _template("o", (input) => {
8032
8026
  setTimeout(() => loadProcs(void 0), 500);
8033
8027
  }, "o7", $scope0_id);
8034
8028
  const titleId = _id();
8035
- _html(`<div${_attr_class("_bn")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bo")}><div${_attr_class(content)}>`);
8029
+ _html(`<div${_attr_class("_bm")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bn")}><div${_attr_class(content)}>`);
8036
8030
  _set_serialize_reason(30);
8037
8031
  const $childScope = _peek_scope_id();
8038
8032
  page_head_default({
@@ -8045,16 +8039,16 @@ var manage_workspace_default = _template("o", (input) => {
8045
8039
  meta: attrTag({ content: _content_resume("o13", () => {
8046
8040
  _scope_reason();
8047
8041
  const $scope13_id = _scope_id();
8048
- _html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_dP")}>${_escape(ws.name)}${_el_resume($scope13_id, "c")}</span>`);
8042
+ _html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_ec")}>${_escape(ws.name)}${_el_resume($scope13_id, "c")}</span>`);
8049
8043
  _if(() => {
8050
8044
  if (ws.status !== "active") {
8051
8045
  const $scope17_id = _scope_id();
8052
- _html(`<span${_attr_class(["_I", "_K"])}>Archived</span>`);
8046
+ _html(`<span${_attr_class(["_H", "_J"])}>Archived</span>`);
8053
8047
  writeScope($scope17_id, {});
8054
8048
  return 0;
8055
8049
  }
8056
8050
  }, $scope13_id, "d", 1, 1, 1, 0, 1);
8057
- _html(`<span${_attr_class("_dQ")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope13_id, "g")}</span></span>${_el_resume($scope13_id, "a")}`);
8051
+ _html(`<span${_attr_class("_ed")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope13_id, "g")}</span></span>${_el_resume($scope13_id, "a")}`);
8058
8052
  _subscribe($ws_status__closures, _subscribe($ws_name__closures, _subscribe($ws_path__closures, _subscribe($ws_display_path__closures, writeScope($scope13_id, { _: _scope_with_id($scope0_id) })))));
8059
8053
  _resume_branch($scope13_id);
8060
8054
  }, $scope0_id) })
@@ -8082,26 +8076,26 @@ var manage_workspace_default = _template("o", (input) => {
8082
8076
  _if(() => {
8083
8077
  if (pendingAction && actionStep) {
8084
8078
  const $scope11_id = _scope_id();
8085
- _html(`<p${_attr_class("_bw")}><span${_attr_class("_F")}></span><!>${_escape(actionStep)}${_el_resume($scope11_id, "c")}</p>`);
8079
+ _html(`<p${_attr_class("_bv")}><span${_attr_class("_E")}></span><!>${_escape(actionStep)}${_el_resume($scope11_id, "c")}</p>`);
8086
8080
  writeScope($scope11_id, {});
8087
8081
  return 0;
8088
8082
  }
8089
8083
  }, $scope0_id, "f", 1, 1, 1, 0, 1);
8090
- _html(`<section${_attr_class("_bx")}><div${_attr_class("_by")}><h2${_attr_class("_bM")}>Repos</h2><span${_attr_class(sectionCount)}>${_escape(ws.repos.length)}${_el_resume($scope0_id, "k")}</span><div${_attr_class("_y")}></div><button${_attr_class(iconBtn)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
8084
+ _html(`<section${_attr_class("_bw")}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Repos</h2><span${_attr_class(sectionCount)}>${_escape(ws.repos.length)}${_el_resume($scope0_id, "k")}</span><div${_attr_class("_x")}></div><button${_attr_class(iconBtn)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
8091
8085
  _set_serialize_reason(1);
8092
8086
  const $childScope2 = _peek_scope_id();
8093
8087
  icon_refresh_default({
8094
8088
  size: 14,
8095
- class: catalogRefreshing && "_E"
8089
+ class: catalogRefreshing && "_D"
8096
8090
  });
8097
- _html(`</button>${_el_resume($scope0_id, "m")}</div><ul${_attr_class("_bA")}>`);
8091
+ _html(`</button>${_el_resume($scope0_id, "m")}</div><ul${_attr_class("_bz")}>`);
8098
8092
  _for_of(ws.repos, (row) => {
8099
8093
  const $scope1_id = _scope_id();
8100
- _html(`<li${_attr_class("_bC")}><div${_attr_class("_bD")}><span${_attr_class(["_bE", "_x"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bF")}><a${_attr_class(["_bG", "_dT"])}${_attr("href", repoWebUrl$1(row.full_name))} target=_blank rel=noopener${_attr("title", `Open ${row.full_name} on GitHub`)}>${_escape(repoLabel(row.full_name))}${_el_resume($scope1_id, "g")}</a>${_el_resume($scope1_id, "f")}`);
8094
+ _html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bE")}><a${_attr_class(["_bF", "_eg"])}${_attr("href", repoWebUrl$1(row.full_name))} target=_blank rel=noopener${_attr("title", `Open ${row.full_name} on GitHub`)}>${_escape(repoLabel(row.full_name))}${_el_resume($scope1_id, "g")}</a>${_el_resume($scope1_id, "f")}`);
8101
8095
  _if(() => {
8102
8096
  if (row.base_branch !== row.default_branch) {
8103
8097
  const $scope18_id = _scope_id();
8104
- _html(`<span${_attr_class(["_I", "_x"])} title="Base branch">`);
8098
+ _html(`<span${_attr_class(["_H", "_w"])} title="Base branch">`);
8105
8099
  icon_branch_default({ size: 12 });
8106
8100
  _html(` <!>${_escape(row.base_branch)}${_el_resume($scope18_id, "c")}</span>`);
8107
8101
  writeScope($scope18_id, {});
@@ -8112,15 +8106,15 @@ var manage_workspace_default = _template("o", (input) => {
8112
8106
  _if(() => {
8113
8107
  if (busy.has(row.full_name)) {
8114
8108
  const $scope19_id = _scope_id();
8115
- _html(`<span${_attr_class("_F")}></span>`);
8109
+ _html(`<span${_attr_class("_E")}></span>`);
8116
8110
  writeScope($scope19_id, {});
8117
8111
  return 0;
8118
8112
  } else {
8119
8113
  const $scope10_id = _scope_id();
8120
8114
  _html(`<button${_attr_class([
8121
- "_bH",
8115
+ "_bG",
8116
+ "_1",
8122
8117
  "_2",
8123
- "_3",
8124
8118
  { ["_q"]: confirmingRemove === row.full_name }
8125
8119
  ])}${confirmingRemove === row.full_name ? _attr("title", `Remove ${row.worktree}/? Uncommitted changes are lost.`) : _attr("title", `Remove ${row.worktree}/`)}>`);
8126
8120
  _if(() => {
@@ -8151,19 +8145,19 @@ var manage_workspace_default = _template("o", (input) => {
8151
8145
  }, "full_name", $scope0_id, "p", 1, 1, 1, 0, 1);
8152
8146
  _for_of([...busy].filter((n) => !inWorkspace.has(n)), (name) => {
8153
8147
  const $scope22_id = _scope_id();
8154
- _html(`<li${_attr_class(["_bC", "_bB"])}><span${_attr_class("_F")}></span><div${_attr_class("_bD")}><span${_attr_class("_bG")}>Adding <!>${_escape(name)}${_el_resume($scope22_id, "e")}…</span></div></li>`);
8148
+ _html(`<li${_attr_class(["_bB", "_bA"])}><span${_attr_class("_E")}></span><div${_attr_class("_bC")}><span${_attr_class("_bF")}>Adding <!>${_escape(name)}${_el_resume($scope22_id, "e")}…</span></div></li>`);
8155
8149
  writeScope($scope22_id, {});
8156
8150
  }, (n) => n, $scope0_id, "q", 1, 1, 1, 0, 1);
8157
8151
  _html("</ul>");
8158
8152
  _if(() => {
8159
8153
  if (!ws.repos.length && !busy.size) {
8160
8154
  const $scope23_id = _scope_id();
8161
- _html(`<p${_attr_class("_bI")}>No repos yet. Search below to add one.</p>`);
8155
+ _html(`<p${_attr_class("_bH")}>No repos yet. Search below to add one.</p>`);
8162
8156
  writeScope($scope23_id, {});
8163
8157
  return 0;
8164
8158
  }
8165
8159
  }, $scope0_id, "r", 1, 1, 1, 0, 1);
8166
- _html(`<div${_attr_class("_dS")}>`);
8160
+ _html(`<div${_attr_class("_ef")}>`);
8167
8161
  const $childScope3 = _peek_scope_id();
8168
8162
  let refreshCatalog = repo_picker_default({
8169
8163
  exclude: inWorkspace,
@@ -8184,7 +8178,7 @@ var manage_workspace_default = _template("o", (input) => {
8184
8178
  _if(() => {
8185
8179
  if (wsSkills.length || repoSkills.length) {
8186
8180
  const $scope2_id = _scope_id();
8187
- _html(`<section${_attr_class("_bx")}><div${_attr_class("_by")}><h2${_attr_class("_bM")}>Skills</h2>`);
8181
+ _html(`<section${_attr_class("_bw")}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Skills</h2>`);
8188
8182
  _if(() => {
8189
8183
  if (wsSkills.length) {
8190
8184
  const $scope24_id = _scope_id();
@@ -8193,23 +8187,23 @@ var manage_workspace_default = _template("o", (input) => {
8193
8187
  return 0;
8194
8188
  }
8195
8189
  }, $scope2_id, "d", 1, 1, 1, 0, 1);
8196
- _html(`</div><ul${_attr_class("_bA")}>`);
8190
+ _html(`</div><ul${_attr_class("_bz")}>`);
8197
8191
  _for_of(wsSkills, (s) => {
8198
8192
  const $scope3_id = _scope_id();
8199
- _html(`<li${_attr_class("_bC")}><div${_attr_class("_bD")}><span${_attr_class(["_bE", "_x"])}>${_escape(s.name)}${_el_resume($scope3_id, "d")}</span><span${_attr_class("_bF")}>`);
8193
+ _html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(s.name)}${_el_resume($scope3_id, "d")}</span><span${_attr_class("_bE")}>`);
8200
8194
  _if(() => {
8201
8195
  if (s.broken) {
8202
8196
  const $scope25_id = _scope_id();
8203
8197
  _html(`<span${_attr_class([
8204
- "_I",
8205
- "_K",
8198
+ "_H",
8199
+ "_J",
8206
8200
  tone.danger
8207
8201
  ])}${_attr("title", `Points into ${s.worktree || "a repo"} that is no longer here`)}>broken link</span>${_el_resume($scope25_id, "a")}`);
8208
8202
  writeScope($scope25_id, {});
8209
8203
  return 0;
8210
8204
  } else if (s.worktree) {
8211
8205
  const $scope26_id = _scope_id();
8212
- _html(`<span${_attr_class(["_I", "_x"])}>from <!>${_escape(s.worktree)}${_el_resume($scope26_id, "b")}/</span>`);
8206
+ _html(`<span${_attr_class(["_H", "_w"])}>from <!>${_escape(s.worktree)}${_el_resume($scope26_id, "b")}/</span>`);
8213
8207
  writeScope($scope26_id, {});
8214
8208
  return 1;
8215
8209
  }
@@ -8217,7 +8211,7 @@ var manage_workspace_default = _template("o", (input) => {
8217
8211
  _if(() => {
8218
8212
  if (s.shadows === "global") {
8219
8213
  const $scope30_id = _scope_id();
8220
- _html(`<span${_attr_class("_I")} title="Used instead of the system skill of the same name">overrides system</span>`);
8214
+ _html(`<span${_attr_class("_H")} title="Used instead of the system skill of the same name">overrides system</span>`);
8221
8215
  writeScope($scope30_id, {});
8222
8216
  return 0;
8223
8217
  }
@@ -8225,7 +8219,7 @@ var manage_workspace_default = _template("o", (input) => {
8225
8219
  _if(() => {
8226
8220
  if (skills && s.agents.length < skills.agents.length) {
8227
8221
  const $scope27_id = _scope_id();
8228
- _html(`<span${_attr_class("_I")}${_attr("title", `Only for ${s.agents.map(agentLabel).join(", ")}`)}>${_escape(s.agents.map(agentLabel).join(", "))}${_el_resume($scope27_id, "b")} only</span>${_el_resume($scope27_id, "a")}`);
8222
+ _html(`<span${_attr_class("_H")}${_attr("title", `Only for ${s.agents.map(agentLabel).join(", ")}`)}>${_escape(s.agents.map(agentLabel).join(", "))}${_el_resume($scope27_id, "b")} only</span>${_el_resume($scope27_id, "a")}`);
8229
8223
  writeScope($scope27_id, {});
8230
8224
  return 0;
8231
8225
  }
@@ -8234,7 +8228,7 @@ var manage_workspace_default = _template("o", (input) => {
8234
8228
  _if(() => {
8235
8229
  if (s.description) {
8236
8230
  const $scope28_id = _scope_id();
8237
- _html(`<span${_attr_class("_bG")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope28_id, "b")}</span>${_el_resume($scope28_id, "a")}`);
8231
+ _html(`<span${_attr_class("_bF")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope28_id, "b")}</span>${_el_resume($scope28_id, "a")}`);
8238
8232
  writeScope($scope28_id, {});
8239
8233
  return 0;
8240
8234
  }
@@ -8242,7 +8236,7 @@ var manage_workspace_default = _template("o", (input) => {
8242
8236
  _if(() => {
8243
8237
  if (s.sourceUrl) {
8244
8238
  const $scope29_id = _scope_id();
8245
- _html(`<a${_attr_class(["_bG", "_dT"])}${_attr("href", s.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${s.source} on GitHub`)}>${_escape(s.source)}${_el_resume($scope29_id, "b")}</a>${_el_resume($scope29_id, "a")}`);
8239
+ _html(`<a${_attr_class(["_bF", "_eg"])}${_attr("href", s.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${s.source} on GitHub`)}>${_escape(s.source)}${_el_resume($scope29_id, "b")}</a>${_el_resume($scope29_id, "a")}`);
8246
8240
  writeScope($scope29_id, {});
8247
8241
  return 0;
8248
8242
  }
@@ -8251,15 +8245,15 @@ var manage_workspace_default = _template("o", (input) => {
8251
8245
  _if(() => {
8252
8246
  if (busy.has(s.id)) {
8253
8247
  const $scope31_id = _scope_id();
8254
- _html(`<span${_attr_class("_F")}></span>`);
8248
+ _html(`<span${_attr_class("_E")}></span>`);
8255
8249
  writeScope($scope31_id, {});
8256
8250
  return 0;
8257
8251
  } else {
8258
8252
  const $scope12_id = _scope_id();
8259
8253
  _html(`<button${_attr_class([
8260
- "_bH",
8254
+ "_bG",
8255
+ "_1",
8261
8256
  "_2",
8262
- "_3",
8263
8257
  { ["_q"]: confirmingSkill === s.id }
8264
8258
  ])}${confirmingSkill === s.id ? _attr("title", `Remove ${s.name} from this workspace?`) : s.linked ? _attr("title", `Stop using ${s.name} here`) : _attr("title", `Remove ${s.name}`)}>`);
8265
8259
  _if(() => {
@@ -8295,14 +8289,14 @@ var manage_workspace_default = _template("o", (input) => {
8295
8289
  _if(() => {
8296
8290
  if (repoSkills.length) {
8297
8291
  const $scope4_id = _scope_id();
8298
- _html(`<ul${_attr_class("_bA")}>`);
8292
+ _html(`<ul${_attr_class("_bz")}>`);
8299
8293
  _for_of(repoSkills, (s) => {
8300
8294
  const $scope5_id = _scope_id();
8301
- _html(`<li${_attr_class("_bC")}><div${_attr_class("_bD")}><span${_attr_class(["_bE", "_x"])}>${_escape(s.name)}${_el_resume($scope5_id, "d")}</span><span${_attr_class("_bF")}><span${_attr_class(["_bG", "_x"])}>${_escape(s.worktree)}${_el_resume($scope5_id, "g")}/</span>`);
8295
+ _html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(s.name)}${_el_resume($scope5_id, "d")}</span><span${_attr_class("_bE")}><span${_attr_class(["_bF", "_w"])}>${_escape(s.worktree)}${_el_resume($scope5_id, "g")}/</span>`);
8302
8296
  _if(() => {
8303
8297
  if (s.shadows) {
8304
8298
  const $scope34_id = _scope_id();
8305
- _html(`<span${_attr_class("_I")}${_attr("title", `A ${s.shadows} skill of the same name already exists`)}>name taken</span>${_el_resume($scope34_id, "a")}`);
8299
+ _html(`<span${_attr_class("_H")}${_attr("title", `A ${s.shadows} skill of the same name already exists`)}>name taken</span>${_el_resume($scope34_id, "a")}`);
8306
8300
  writeScope($scope34_id, {});
8307
8301
  return 0;
8308
8302
  }
@@ -8311,7 +8305,7 @@ var manage_workspace_default = _template("o", (input) => {
8311
8305
  _if(() => {
8312
8306
  if (s.description) {
8313
8307
  const $scope35_id = _scope_id();
8314
- _html(`<span${_attr_class("_bG")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope35_id, "b")}</span>${_el_resume($scope35_id, "a")}`);
8308
+ _html(`<span${_attr_class("_bF")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope35_id, "b")}</span>${_el_resume($scope35_id, "a")}`);
8315
8309
  writeScope($scope35_id, {});
8316
8310
  return 0;
8317
8311
  }
@@ -8320,7 +8314,7 @@ var manage_workspace_default = _template("o", (input) => {
8320
8314
  _if(() => {
8321
8315
  if (busy.has(s.id)) {
8322
8316
  const $scope36_id = _scope_id();
8323
- _html(`<span${_attr_class("_F")}></span>`);
8317
+ _html(`<span${_attr_class("_E")}></span>`);
8324
8318
  writeScope($scope36_id, {});
8325
8319
  return 0;
8326
8320
  } else if (!s.shadows) {
@@ -8354,17 +8348,17 @@ var manage_workspace_default = _template("o", (input) => {
8354
8348
  _if(() => {
8355
8349
  if (running.length) {
8356
8350
  const $scope15_id = _scope_id();
8357
- _html(`<section${_attr_class("_bx")}><div${_attr_class("_by")}><h2${_attr_class("_bM")}>Running</h2><span${_attr_class(sectionCount)}>${_escape(running.length)}${_el_resume($scope15_id, "e")}</span></div><ul${_attr_class("_bA")}>`);
8351
+ _html(`<section${_attr_class("_bw")}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Running</h2><span${_attr_class(sectionCount)}>${_escape(running.length)}${_el_resume($scope15_id, "e")}</span></div><ul${_attr_class("_bz")}>`);
8358
8352
  _for_of(running, (p) => {
8359
8353
  const $scope16_id = _scope_id();
8360
- _html(`<li${_attr_class("_bC")}><div${_attr_class("_bD")}${_attr("title", p.args)}><span${_attr_class(["_bE", "_x"])}>${_escape(p.cmd)}${_el_resume($scope16_id, "d")}</span>`);
8354
+ _html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}${_attr("title", p.args)}><span${_attr_class(["_bD", "_w"])}>${_escape(p.cmd)}${_el_resume($scope16_id, "d")}</span>`);
8361
8355
  _if(() => {
8362
8356
  if (p.ports.length) {
8363
8357
  const $scope37_id = _scope_id();
8364
- _html(`<span${_attr_class("_bF")}>`);
8358
+ _html(`<span${_attr_class("_bE")}>`);
8365
8359
  _for_of(p.ports, (port) => {
8366
8360
  const $scope38_id = _scope_id();
8367
- _html(`<button${_attr_class(["_s", "_dU"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope38_id, "b")}</button>${_el_resume($scope38_id, "a")}`);
8361
+ _html(`<button${_attr_class(["_s", "_eh"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope38_id, "b")}</button>${_el_resume($scope38_id, "a")}`);
8368
8362
  _script($scope38_id, "o19");
8369
8363
  writeScope($scope38_id, { d: port });
8370
8364
  }, (x) => String(x), $scope37_id, "a", 1, 1, 1, "</span>", 1);
@@ -8372,7 +8366,7 @@ var manage_workspace_default = _template("o", (input) => {
8372
8366
  return 0;
8373
8367
  }
8374
8368
  }, $scope16_id, "e", 1, 1, 1, 0, 1);
8375
- _html(`</div>${_el_resume($scope16_id, "b")}<button${_attr_class(["_bH", "_2"])} type=button${_attr("title", `Kill process ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>`);
8369
+ _html(`</div>${_el_resume($scope16_id, "b")}<button${_attr_class(["_bG", "_1"])} type=button${_attr("title", `Kill process ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>`);
8376
8370
  icon_xmark_default({ size: 14 });
8377
8371
  _html(`</button>${_el_resume($scope16_id, "f")}</li>`);
8378
8372
  _script($scope16_id, "o20");
@@ -8386,7 +8380,7 @@ var manage_workspace_default = _template("o", (input) => {
8386
8380
  return 0;
8387
8381
  }
8388
8382
  }, $scope0_id, "w", 1, 1, 1, 0, 1);
8389
- _html(`<section${_attr_class(["_bx", "_dV"])}><div${_attr_class("_by")}><h2${_attr_class("_bM")}>Workspace</h2></div><div${_attr_class("_dW")}>`);
8383
+ _html(`<section${_attr_class(["_bw", "_ei"])}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Workspace</h2></div><div${_attr_class("_ej")}>`);
8390
8384
  _if(() => {
8391
8385
  if (ws.status === "active") {
8392
8386
  const $scope8_id = _scope_id();
@@ -8500,19 +8494,19 @@ var term_find_default = _template("A", (input) => {
8500
8494
  const canStep = hasQuery && open;
8501
8495
  const keybar = input.placement === "keybar";
8502
8496
  _html(`<div${_attr_class([
8503
- "_fH",
8504
- keybar ? "_fJ" : "_fI",
8505
- !open && "_fL"
8506
- ])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_fC", keybar ? "_fK" : "_fE"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
8497
+ "_fA",
8498
+ keybar ? "_fC" : "_fB",
8499
+ !open && "_fE"
8500
+ ])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_fv", keybar ? "_fD" : "_fx"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
8507
8501
  if (!open) return;
8508
8502
  query = v;
8509
8503
  live.query = v;
8510
8504
  run(0);
8511
- }, "A0", $scope0_id))}${_attr_class([findInput, keybar && "_fM"])} type=search enterkeyhint=search autocomplete=off tabindex=${open ? "0" : "-1"} placeholder="Find in terminal" aria-label="Find in terminal">${_el_resume($scope0_id, "c")}<button type=button${_attr_class([findIconBtn, keybar && "_fN"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
8505
+ }, "A0", $scope0_id))}${_attr_class([findInput, keybar && "_fF"])} type=search enterkeyhint=search autocomplete=off tabindex=${open ? "0" : "-1"} placeholder="Find in terminal" aria-label="Find in terminal">${_el_resume($scope0_id, "c")}<button type=button${_attr_class([findIconBtn, keybar && "_fG"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
8512
8506
  icon_arrow_up_default({ size: 14 });
8513
- _html(`</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_fN"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
8507
+ _html(`</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_fG"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
8514
8508
  icon_arrow_down_default({ size: 14 });
8515
- _html(`</button>${_el_resume($scope0_id, "f")}<button type=button${_attr_class([findIconBtn, keybar && "_fN"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
8509
+ _html(`</button>${_el_resume($scope0_id, "f")}<button type=button${_attr_class([findIconBtn, keybar && "_fG"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
8516
8510
  icon_xmark_default({ size: 14 });
8517
8511
  _html(`</button>${_el_resume($scope0_id, "h")}</div>${_el_resume($scope0_id, "b", _serialize_guard($scope0_reason, 2))}</div>${_el_resume($scope0_id, "a")}`);
8518
8512
  _script($scope0_id, "A4");
@@ -8540,7 +8534,7 @@ var term_find_default = _template("A", (input) => {
8540
8534
  });
8541
8535
  _resume_branch($scope0_id);
8542
8536
  });
8543
- _template("lb", (input) => {
8537
+ _template("kb", (input) => {
8544
8538
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
8545
8539
  const $scope0_id = _scope_id();
8546
8540
  _set_serialize_reason({
@@ -8570,7 +8564,7 @@ _template("W", (input) => {
8570
8564
  });
8571
8565
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
8572
8566
  });
8573
- _template("bb", (input) => {
8567
+ _template("ab", (input) => {
8574
8568
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
8575
8569
  const $scope0_id = _scope_id();
8576
8570
  _set_serialize_reason({
@@ -8645,7 +8639,7 @@ _template("Y", (input) => {
8645
8639
  });
8646
8640
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
8647
8641
  });
8648
- _template("jb", (input) => {
8642
+ _template("ib", (input) => {
8649
8643
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
8650
8644
  const $scope0_id = _scope_id();
8651
8645
  _set_serialize_reason({
@@ -8846,7 +8840,7 @@ var term_default = _template("B", (input) => {
8846
8840
  trapOpen = true;
8847
8841
  }
8848
8842
  }, "B14", $scope0_id);
8849
- _html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_dY")}><div${_attr_class("_dZ")}></div>${_el_resume($scope0_id, "b")}`);
8843
+ _html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_dx")}><div${_attr_class("_dy")}></div>${_el_resume($scope0_id, "b")}`);
8850
8844
  _if(() => {
8851
8845
  if (findOpen) {
8852
8846
  const $scope12_id = _scope_id();
@@ -8873,7 +8867,7 @@ var term_default = _template("B", (input) => {
8873
8867
  _if(() => {
8874
8868
  if (uploading) {
8875
8869
  const $scope19_id = _scope_id();
8876
- _html(`<div${_attr_class("_d5")}>uploading…</div>`);
8870
+ _html(`<div${_attr_class("_dE")}>uploading…</div>`);
8877
8871
  writeScope($scope19_id, {});
8878
8872
  return 0;
8879
8873
  }
@@ -8881,7 +8875,7 @@ var term_default = _template("B", (input) => {
8881
8875
  _if(() => {
8882
8876
  if (copiedFlash) {
8883
8877
  const $scope20_id = _scope_id();
8884
- _html(`<div${_attr_class("_d4")}>Copied</div>`);
8878
+ _html(`<div${_attr_class("_dD")}>Copied</div>`);
8885
8879
  writeScope($scope20_id, {});
8886
8880
  return 0;
8887
8881
  }
@@ -8890,7 +8884,7 @@ var term_default = _template("B", (input) => {
8890
8884
  _if(() => {
8891
8885
  if (trapOpen) {
8892
8886
  const $scope11_id = _scope_id();
8893
- _html(`<div${_attr_class("_d6")}><div${_attr_class("_d7")}><p${_attr_class("_eA")}>Long-press the field below and choose Paste</p><input placeholder="Paste here…">${_el_resume($scope11_id, "d")}<button${_attr_class("_o")}>Cancel</button>${_el_resume($scope11_id, "e")}</div>${_el_resume($scope11_id, "b")}</div>${_el_resume($scope11_id, "a")}`);
8887
+ _html(`<div${_attr_class("_dF")}><div${_attr_class("_dG")}><p${_attr_class("_d_")}>Long-press the field below and choose Paste</p><input placeholder="Paste here…">${_el_resume($scope11_id, "d")}<button${_attr_class("_o")}>Cancel</button>${_el_resume($scope11_id, "e")}</div>${_el_resume($scope11_id, "b")}</div>${_el_resume($scope11_id, "a")}`);
8894
8888
  _script($scope11_id, "B25");
8895
8889
  _script($scope11_id, "B26");
8896
8890
  writeScope($scope11_id, {});
@@ -8994,7 +8988,7 @@ var work_view_default = _template("F", (input) => {
8994
8988
  let DiffView = null;
8995
8989
  const loadDiffView = _resume(() => {
8996
8990
  if (DiffView) return;
8997
- import("./_BHPrqqev.js").then((m) => {
8991
+ import("./_4-M1FiLt.js").then((m) => {
8998
8992
  DiffView = m.default;
8999
8993
  });
9000
8994
  }, "F6", $scope0_id);
@@ -9182,10 +9176,10 @@ var work_view_default = _template("F", (input) => {
9182
9176
  toggleDiff();
9183
9177
  }
9184
9178
  }, "F21", $scope0_id);
9185
- _html(`<div${_attr_class(["_b7", {
9186
- ["_b5"]: view === "nav",
9187
- ["_b6"]: !input.active
9188
- }])}><div${_attr_class("_b8")}>`);
9179
+ _html(`<div${_attr_class(["_b5", {
9180
+ ["_b3"]: view === "nav",
9181
+ ["_b4"]: !input.active
9182
+ }])}><div${_attr_class("_b6")}>`);
9189
9183
  _set_serialize_reason({
9190
9184
  0: _serialize_guard($scope0_reason, 0),
9191
9185
  1: 1,
@@ -9254,7 +9248,7 @@ var work_view_default = _template("F", (input) => {
9254
9248
  });
9255
9249
  }, "F30", $scope0_id)
9256
9250
  });
9257
- _html(`</div><div${_attr_class("_b9")}>`);
9251
+ _html(`</div><div${_attr_class("_b7")}>`);
9258
9252
  _if(() => {
9259
9253
  if (error) {
9260
9254
  const $scope8_id = _scope_id();
@@ -9277,7 +9271,7 @@ var work_view_default = _template("F", (input) => {
9277
9271
  _if(() => {
9278
9272
  if (diffMounted && DiffView) {
9279
9273
  const $scope1_id = _scope_id();
9280
- _html(`<div${_attr_class("_b_")}${_attr_or("data-live", view === "diff", "")}${_attr("inert", view !== "diff")}>`);
9274
+ _html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "diff", "")}${_attr("inert", view !== "diff")}>`);
9281
9275
  _dynamic_tag($scope1_id, "b", DiffView, {
9282
9276
  workspaceId: ws.id,
9283
9277
  workspaceBranch: ws.branch,
@@ -9317,7 +9311,7 @@ var work_view_default = _template("F", (input) => {
9317
9311
  _if(() => {
9318
9312
  if (manageMounted) {
9319
9313
  const $scope2_id = _scope_id();
9320
- _html(`<div${_attr_class("_b_")}${_attr_or("data-live", view === "manage", "")}${_attr("inert", view !== "manage")}>`);
9314
+ _html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "manage", "")}${_attr("inert", view !== "manage")}>`);
9321
9315
  _set_serialize_reason(_serialize_guard($scope0_reason, 16));
9322
9316
  const $childScope2 = _peek_scope_id();
9323
9317
  manage_workspace_default({
@@ -9340,7 +9334,7 @@ var work_view_default = _template("F", (input) => {
9340
9334
  _if(() => {
9341
9335
  if (settingsMounted) {
9342
9336
  const $scope3_id = _scope_id();
9343
- _html(`<div${_attr_class("_b_")}${_attr_or("data-live", view === "settings", "")}${_attr("inert", view !== "settings")}>`);
9337
+ _html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "settings", "")}${_attr("inert", view !== "settings")}>`);
9344
9338
  _set_serialize_reason({
9345
9339
  0: _serialize_guard($scope0_reason, 1),
9346
9340
  1: $sg__input_workspace,
@@ -9381,7 +9375,7 @@ var work_view_default = _template("F", (input) => {
9381
9375
  _if(() => {
9382
9376
  if (newMounted) {
9383
9377
  const $scope4_id = _scope_id();
9384
- _html(`<div${_attr_class("_b_")}${_attr_or("data-live", view === "new", "")}${_attr("inert", view !== "new")}>`);
9378
+ _html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "new", "")}${_attr("inert", view !== "new")}>`);
9385
9379
  _set_serialize_reason({
9386
9380
  0: 1,
9387
9381
  1: $sg__input_allWorkspaces,
@@ -9408,13 +9402,13 @@ var work_view_default = _template("F", (input) => {
9408
9402
  return 0;
9409
9403
  }
9410
9404
  }, $scope0_id, "i", 1, 1, 1, 0, 1);
9411
- _html(`<div${_attr_class(["_cb", { ["_ca"]: view !== "term" }])}>`);
9405
+ _html(`<div${_attr_class(["_b_", { ["_b9"]: view !== "term" }])}>`);
9412
9406
  _if(() => {
9413
9407
  if (shownSessions) {
9414
9408
  const $scope5_id = _scope_id();
9415
9409
  _for_of(input.active ? shownSessions : shownSessions.filter((x) => x.id === curTab), (s) => {
9416
9410
  const $scope6_id = _scope_id();
9417
- _html(`<div${_attr_class("_cc")}${_attr_or("data-live", s.id === curTab, "")}${_attr("inert", s.id !== curTab)}>`);
9411
+ _html(`<div${_attr_class("_ca")}${_attr_or("data-live", s.id === curTab, "")}${_attr("inert", s.id !== curTab)}>`);
9418
9412
  _set_serialize_reason({
9419
9413
  0: 1,
9420
9414
  1: 1,
@@ -9474,7 +9468,7 @@ var work_view_default = _template("F", (input) => {
9474
9468
  _if(() => {
9475
9469
  if (!shownSessions.length && view === "term") {
9476
9470
  const $scope7_id = _scope_id();
9477
- _html(`<div${_attr_class("_bJ")}><span>No sessions in this workspace.</span><button${_attr_class(["_o", "_p"])}${_attr("disabled", spawning)}>${spawning ? "Starting…" : `Start ${_escape(`${input.preferred || "shell"}`)}`}${_el_resume($scope7_id, "c")}</button>${_el_resume($scope7_id, "b")}</div>`);
9471
+ _html(`<div${_attr_class("_bI")}><span>No sessions in this workspace.</span><button${_attr_class(["_o", "_p"])}${_attr("disabled", spawning)}>${spawning ? "Starting…" : `Start ${_escape(`${input.preferred || "shell"}`)}`}${_el_resume($scope7_id, "c")}</button>${_el_resume($scope7_id, "b")}</div>`);
9478
9472
  _script($scope7_id, "F50");
9479
9473
  _subscribe($spawning__closures, _subscribe($si__input_preferred && $input_preferred__closures, writeScope($scope7_id, {})));
9480
9474
  return 0;
@@ -9484,7 +9478,7 @@ var work_view_default = _template("F", (input) => {
9484
9478
  return 0;
9485
9479
  } else {
9486
9480
  const $scope10_id = _scope_id();
9487
- _html(`<p${_attr_class("_bJ")}>Loading sessions…</p>`);
9481
+ _html(`<p${_attr_class("_bI")}>Loading sessions…</p>`);
9488
9482
  writeScope($scope10_id, {});
9489
9483
  return 1;
9490
9484
  }
@@ -10001,7 +9995,7 @@ var app_page_default = _template("b", (input) => {
10001
9995
  });
10002
9996
  //#endregion
10003
9997
  //#region src/routes/_app/new/+page.marko
10004
- var _page_default$4 = _template("nb", (input) => {
9998
+ var _page_default$4 = _template("mb", (input) => {
10005
9999
  _scope_reason();
10006
10000
  _scope_id();
10007
10001
  app_page_default({ initial: {
@@ -10043,7 +10037,7 @@ var GET$24 = Run.GET(async (_ctx, next) => {
10043
10037
  });
10044
10038
  //#endregion
10045
10039
  //#region src/routes/_app/settings/+page.marko
10046
- var _page_default$3 = _template("ob", (input) => {
10040
+ var _page_default$3 = _template("nb", (input) => {
10047
10041
  _scope_reason();
10048
10042
  _scope_id();
10049
10043
  app_page_default({ initial: {
@@ -10080,7 +10074,7 @@ function head3(context) {
10080
10074
  }
10081
10075
  //#endregion
10082
10076
  //#region src/routes/_app/w/$id/+page.marko
10083
- var _page_default$2 = _template("pb", (input) => {
10077
+ var _page_default$2 = _template("ob", (input) => {
10084
10078
  _scope_reason();
10085
10079
  _scope_id();
10086
10080
  const $global$3 = $global();
@@ -10118,7 +10112,7 @@ function head4(context) {
10118
10112
  }
10119
10113
  //#endregion
10120
10114
  //#region src/routes/_app/w/$id/manage/+page.marko
10121
- var _page_default$1 = _template("qb", (input) => {
10115
+ var _page_default$1 = _template("pb", (input) => {
10122
10116
  _scope_reason();
10123
10117
  _scope_id();
10124
10118
  app_page_default({ initial: {
@@ -10154,7 +10148,7 @@ function head5(context) {
10154
10148
  }
10155
10149
  //#endregion
10156
10150
  //#region src/routes/_app/w/$id/review/+page.marko
10157
- var _page_default = _template("rb", (input) => {
10151
+ var _page_default = _template("qb", (input) => {
10158
10152
  _scope_reason();
10159
10153
  _scope_id();
10160
10154
  const $global$1 = $global();
@@ -12373,7 +12367,7 @@ async function prDiff(dir, repo, pr, ctx) {
12373
12367
  const baseRef = `origin/${pr.baseRefName}`;
12374
12368
  const head = await git(["rev-parse", headRef], dir).catch(() => "") || pr.headRefOid || "";
12375
12369
  const baseSha = await git(["rev-parse", baseRef], dir).catch(() => "");
12376
- if (!head || !baseSha) return {
12370
+ const base = {
12377
12371
  id: `${repo.worktree}#${pr.number}`,
12378
12372
  worktree: repo.worktree,
12379
12373
  full_name: repo.full_name,
@@ -12383,7 +12377,10 @@ async function prDiff(dir, repo, pr, ctx) {
12383
12377
  head,
12384
12378
  baseSha,
12385
12379
  pr: prMeta(pr),
12386
- localHead: ctx.localHead,
12380
+ localHead: ctx.localHead
12381
+ };
12382
+ if (!head || !baseSha) return {
12383
+ ...base,
12387
12384
  baseMissing: true,
12388
12385
  files: []
12389
12386
  };
@@ -12396,16 +12393,7 @@ async function prDiff(dir, repo, pr, ctx) {
12396
12393
  const files = await collectFiles(dir, contained ? head : mergeBase || baseRef, head, ctx.scope);
12397
12394
  const githubDrift = !!pr.headRefOid && head !== pr.headRefOid;
12398
12395
  return {
12399
- id: `${repo.worktree}#${pr.number}`,
12400
- worktree: repo.worktree,
12401
- full_name: repo.full_name,
12402
- base: pr.baseRefName,
12403
- default_branch: repo.default_branch,
12404
- branch: ctx.branch,
12405
- head,
12406
- baseSha,
12407
- pr: prMeta(pr),
12408
- localHead: ctx.localHead,
12396
+ ...base,
12409
12397
  ...githubDrift && { githubDrift: true },
12410
12398
  ...contained && { contained: true },
12411
12399
  files
@@ -12479,33 +12467,20 @@ function prMeta(pr) {
12479
12467
  async function collectFiles(dir, oldRev, newRev, scope) {
12480
12468
  if (scope === "dirty") oldRev = newRev;
12481
12469
  const uncommitted = scope !== "committed";
12482
- const nameArgs = uncommitted ? [
12483
- "diff",
12484
- "--name-status",
12485
- "-z",
12486
- "--no-renames",
12487
- oldRev
12488
- ] : [
12470
+ const revs = uncommitted ? [oldRev] : [oldRev, newRev];
12471
+ const nameArgs = [
12489
12472
  "diff",
12490
12473
  "--name-status",
12491
12474
  "-z",
12492
12475
  "--no-renames",
12493
- oldRev,
12494
- newRev
12476
+ ...revs
12495
12477
  ];
12496
- const numArgs = uncommitted ? [
12497
- "diff",
12498
- "--numstat",
12499
- "-z",
12500
- "--no-renames",
12501
- oldRev
12502
- ] : [
12478
+ const numArgs = [
12503
12479
  "diff",
12504
12480
  "--numstat",
12505
12481
  "-z",
12506
12482
  "--no-renames",
12507
- oldRev,
12508
- newRev
12483
+ ...revs
12509
12484
  ];
12510
12485
  const [nameStatus, numstat, untracked, dirtyNames] = await Promise.all([
12511
12486
  git(nameArgs, dir).catch(() => ""),
@@ -12524,15 +12499,16 @@ async function collectFiles(dir, oldRev, newRev, scope) {
12524
12499
  "HEAD"
12525
12500
  ], dir).catch(() => "") : Promise.resolve("")
12526
12501
  ]);
12502
+ const untrackedPaths = untracked.split("\0").filter(Boolean);
12527
12503
  const dirtyPaths = new Set(dirtyNames.split("\0").filter(Boolean));
12528
- for (const file of untracked.split("\0")) if (file) dirtyPaths.add(file);
12504
+ for (const file of untrackedPaths) dirtyPaths.add(file);
12529
12505
  const entries = [];
12530
12506
  const parts = nameStatus.split("\0").filter(Boolean);
12531
12507
  for (let i = 0; i + 1 < parts.length; i += 2) entries.push({
12532
12508
  path: parts[i + 1],
12533
12509
  status: parts[i]
12534
12510
  });
12535
- for (const file of untracked.split("\0").filter(Boolean)) entries.push({
12511
+ for (const file of untrackedPaths) entries.push({
12536
12512
  path: file,
12537
12513
  status: "A"
12538
12514
  });
@@ -12635,16 +12611,18 @@ function fromBlobs(filePath, status, old, neu) {
12635
12611
  if (old !== void 0) result.old = old;
12636
12612
  if (neu !== void 0) result.new = neu;
12637
12613
  }
12638
- if (result.old?.includes("\0") || result.new?.includes("\0")) {
12639
- result.binary = true;
12640
- result.old = null;
12641
- result.new = null;
12614
+ return withoutUnrenderable(result);
12615
+ }
12616
+ /** A binary or over-size file ships as flags with no content: the client
12617
+ * renders the reason, and shipping the bytes anyway is what made a diff of
12618
+ * one large asset megabytes of JSON. */
12619
+ function withoutUnrenderable(file) {
12620
+ if (file.old?.includes("\0") || file.new?.includes("\0")) file.binary = true;
12621
+ if (file.binary || file.tooLarge) {
12622
+ file.old = null;
12623
+ file.new = null;
12642
12624
  }
12643
- if (result.tooLarge) {
12644
- result.old = null;
12645
- result.new = null;
12646
- }
12647
- return result;
12625
+ return file;
12648
12626
  }
12649
12627
  async function loadWorktreeFile(dir, filePath, status, old) {
12650
12628
  const result = {
@@ -12662,16 +12640,7 @@ async function loadWorktreeFile(dir, filePath, status, old) {
12662
12640
  if ((await fsp.stat(full)).size > MAX_FILE_BYTES) result.tooLarge = true;
12663
12641
  else result.new = await fsp.readFile(full, "utf8");
12664
12642
  } catch {}
12665
- if (result.old?.includes("\0") || result.new?.includes("\0")) {
12666
- result.binary = true;
12667
- result.old = null;
12668
- result.new = null;
12669
- }
12670
- if (result.tooLarge) {
12671
- result.old = null;
12672
- result.new = null;
12673
- }
12674
- return result;
12643
+ return withoutUnrenderable(result);
12675
12644
  }
12676
12645
  //#endregion
12677
12646
  //#region src/routes/api/workspaces/$id/diff/+handler.ts
@@ -17994,4 +17963,4 @@ server.listen(port, () => {
17994
17963
  //#endregion
17995
17964
  export {};
17996
17965
 
17997
- ;var __MARKO_MANIFEST__={"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-xZ7ggaFZ.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-xZ7ggaFZ.css\"",">"],"defer":[2,"/assets/new-B4TVUCf9.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-B4TVUCf9.js\"","></script>",2,"modulepreload#/assets/_JMdaap6W.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_JMdaap6W.js\"",">"]},"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-xZ7ggaFZ.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-xZ7ggaFZ.css\"",">"],"defer":[2,"/assets/settings-B4TVUCf9.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-B4TVUCf9.js\"","></script>",2,"modulepreload#/assets/_JMdaap6W.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_JMdaap6W.js\"",">"]},"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-xZ7ggaFZ.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-xZ7ggaFZ.css\"",">"],"defer":[2,"/assets/w._-B4TVUCf9.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-B4TVUCf9.js\"","></script>",2,"modulepreload#/assets/_JMdaap6W.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_JMdaap6W.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-xZ7ggaFZ.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-xZ7ggaFZ.css\"",">"],"defer":[2,"/assets/w-B4TVUCf9.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-B4TVUCf9.js\"","></script>",2,"modulepreload#/assets/_JMdaap6W.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_JMdaap6W.js\"",">"]},"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-xZ7ggaFZ.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-xZ7ggaFZ.css\"",">"],"defer":[2,"/assets/w._-CJLLzbFK.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-CJLLzbFK.js\"","></script>",2,"modulepreload#/assets/_JMdaap6W.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_JMdaap6W.js\"",">"]}};
17966
+ ;var __MARKO_MANIFEST__={"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/w._-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/new-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/w._-E2EHSRw5.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-E2EHSRw5.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/settings-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/w-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]}};