@dylanpiercey/work 0.2.16 → 0.2.18

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 (519) hide show
  1. package/README.md +16 -2
  2. package/bin/cli/README.md +34 -0
  3. package/bin/cli/_progress.mjs +68 -0
  4. package/bin/cli/_repo.mjs +32 -0
  5. package/bin/cli/_target.mjs +49 -0
  6. package/bin/cli/agent.mjs +153 -0
  7. package/bin/cli/branches.mjs +79 -0
  8. package/bin/cli/config.mjs +175 -0
  9. package/bin/cli/host.mjs +142 -0
  10. package/bin/cli/lsp.mjs +117 -0
  11. package/bin/cli/notify.mjs +53 -0
  12. package/bin/cli/open.mjs +37 -0
  13. package/bin/cli/repo.mjs +98 -0
  14. package/bin/cli/session.mjs +167 -0
  15. package/bin/cli/skill.mjs +99 -0
  16. package/bin/cli/stack.mjs +51 -0
  17. package/bin/cli/status.mjs +86 -0
  18. package/bin/cli/topic.mjs +585 -0
  19. package/bin/cli/workspace.mjs +184 -0
  20. package/bin/work.mjs +405 -82
  21. package/dist/_BAJGOEa1.js +168 -0
  22. package/dist/{_cZI5p-2V.js → _BlLEM8du.js} +80 -48
  23. package/dist/_t9VsALwo.js +2 -0
  24. package/dist/index.mjs +3548 -2613
  25. package/dist/public/assets/{_BwIqXHWp.js → _10dZ1R0m.js} +1 -1
  26. package/dist/public/assets/_10dZ1R0m.js.br +0 -0
  27. package/dist/public/assets/_1EPD0XJG.js +1 -0
  28. package/dist/public/assets/_1jA3fFvQ.js +1 -0
  29. package/dist/public/assets/{_BtCVvK2k.js → _4Sj6a8Ya.js} +1 -1
  30. package/dist/public/assets/_4Sj6a8Ya.js.br +0 -0
  31. package/dist/public/assets/{_Hu1xz4Lu.js → _5tN48iuJ.js} +1 -1
  32. package/dist/public/assets/_5tN48iuJ.js.br +0 -0
  33. package/dist/public/assets/{_gIdf7Xw5.js → _8_DzkMgB.js} +1 -1
  34. package/dist/public/assets/_8_DzkMgB.js.br +0 -0
  35. package/dist/public/assets/{_DSw-4lX2.js → _9JG-F3GR.js} +1 -1
  36. package/dist/public/assets/_9JG-F3GR.js.br +0 -0
  37. package/dist/public/assets/_9KUM3Nch.js +2 -0
  38. package/dist/public/assets/_9KUM3Nch.js.br +0 -0
  39. package/dist/public/assets/{_BAZwH6Ve.js → _B-H6ABVZ.js} +1 -1
  40. package/dist/public/assets/_B-H6ABVZ.js.br +0 -0
  41. package/dist/public/assets/{_CNramc89.js → _B-iOtMg6.js} +1 -1
  42. package/dist/public/assets/_B-iOtMg6.js.br +0 -0
  43. package/dist/public/assets/{_DYH0eCbn.js → _B0FhzjB2.js} +1 -1
  44. package/dist/public/assets/_B0FhzjB2.js.br +0 -0
  45. package/dist/public/assets/{_BdIL1kV4.js → _B26gPL08.js} +1 -1
  46. package/dist/public/assets/_B26gPL08.js.br +0 -0
  47. package/dist/public/assets/{_BMrsOtya.js → _B2DHvTZR.js} +1 -1
  48. package/dist/public/assets/{_BCuTz32B.js → _B3Z1kRpD.js} +1 -1
  49. package/dist/public/assets/_B3Z1kRpD.js.br +0 -0
  50. package/dist/public/assets/{_G9Zy20B_.js → _B3sH8Usv.js} +1 -1
  51. package/dist/public/assets/_B3sH8Usv.js.br +0 -0
  52. package/dist/public/assets/_B42hLH2K.js +1 -0
  53. package/dist/public/assets/{_HlShuyJR.js → _B4hn3NNW.js} +1 -1
  54. package/dist/public/assets/_B4hn3NNW.js.br +0 -0
  55. package/dist/public/assets/{_o-w-GRlW.js → _B5NleRC6.js} +1 -1
  56. package/dist/public/assets/_B5NleRC6.js.br +0 -0
  57. package/dist/public/assets/_B5fRGxPQ.js +1 -0
  58. package/dist/public/assets/_B5fRGxPQ.js.br +0 -0
  59. package/dist/public/assets/_B65yR5Ej.js +1 -0
  60. package/dist/public/assets/_B6Sh9WEH.js +1 -0
  61. package/dist/public/assets/{_C1gXJmH-.js → _B6VtVybz.js} +1 -1
  62. package/dist/public/assets/_B6VtVybz.js.br +0 -0
  63. package/dist/public/assets/_B7rJ4n9b.js +1 -0
  64. package/dist/public/assets/_B8M-AD29.js +1 -0
  65. package/dist/public/assets/{_B4jkmqvY.js → _B8joFpf1.js} +1 -1
  66. package/dist/public/assets/_B8joFpf1.js.br +0 -0
  67. package/dist/public/assets/_B9nA-Uh1.js +1 -0
  68. package/dist/public/assets/_B9nA-Uh1.js.br +0 -0
  69. package/dist/public/assets/_BA6X_Aj6.js +1 -0
  70. package/dist/public/assets/_BBFJV2Bx.js +1 -0
  71. package/dist/public/assets/_BCW5GFMW.js +1 -0
  72. package/dist/public/assets/{_DDDY02_q.js → _BD1SQU0V.js} +1 -1
  73. package/dist/public/assets/_BD1SQU0V.js.br +0 -0
  74. package/dist/public/assets/_BEpd9Y1R.js +1 -0
  75. package/dist/public/assets/_BEy7R4W_.js +1 -0
  76. package/dist/public/assets/_BFGJOHQb.js +1 -0
  77. package/dist/public/assets/{_CkOLwn-O.js → _BI45WgW9.js} +1 -1
  78. package/dist/public/assets/_BI45WgW9.js.br +0 -0
  79. package/dist/public/assets/_BIKvQKWe.js +1 -0
  80. package/dist/public/assets/_BIPnL2aI.js +1 -0
  81. package/dist/public/assets/{_qiP5PaTJ.js → _BIUaA4Nl.js} +1 -1
  82. package/dist/public/assets/_BIUaA4Nl.js.br +0 -0
  83. package/dist/public/assets/{_D4JoXfrO.js → _BJpBnuvv.js} +1 -1
  84. package/dist/public/assets/_BJpBnuvv.js.br +0 -0
  85. package/dist/public/assets/{_D5-Xbg1R.js → _BLeLpnYL.js} +1 -1
  86. package/dist/public/assets/_BLeLpnYL.js.br +0 -0
  87. package/dist/public/assets/_BMb5ANTv.js +1 -0
  88. package/dist/public/assets/{_DYUAPXDQ.js → _BSRsPQTe.js} +1 -1
  89. package/dist/public/assets/_BSRsPQTe.js.br +0 -0
  90. package/dist/public/assets/_BVuerXin.js +6 -0
  91. package/dist/public/assets/_BVuerXin.js.br +0 -0
  92. package/dist/public/assets/_BWV8aSlZ.js +1 -0
  93. package/dist/public/assets/{_C7n1c5sG.js → _BXHggM8M.js} +1 -1
  94. package/dist/public/assets/_BXHggM8M.js.br +0 -0
  95. package/dist/public/assets/{_DSUWiRRK.js → _BXPUZfKX.js} +1 -1
  96. package/dist/public/assets/_BXPUZfKX.js.br +0 -0
  97. package/dist/public/assets/_BYebhygn.js +1 -0
  98. package/dist/public/assets/_BZgCxd-U.js +1 -0
  99. package/dist/public/assets/_BZgCxd-U.js.br +0 -0
  100. package/dist/public/assets/_B_W51WxU.js +1 -0
  101. package/dist/public/assets/_B_jFFNyT.js +1 -0
  102. package/dist/public/assets/_Ba9OQzPV.js +1 -0
  103. package/dist/public/assets/_Ba9OQzPV.js.br +0 -0
  104. package/dist/public/assets/_BayiY7GU.js +1 -0
  105. package/dist/public/assets/_BcDMeS82.js +1 -0
  106. package/dist/public/assets/_BdD1sZp_.js +1 -0
  107. package/dist/public/assets/_Bg_WwlL2.js +1 -0
  108. package/dist/public/assets/_BhHzv4g0.js +1 -0
  109. package/dist/public/assets/_BjEinMEe.js +1 -0
  110. package/dist/public/assets/_BjEinMEe.js.br +0 -0
  111. package/dist/public/assets/{_Bfa3k3Hb.js → _BkGAUdMd.js} +1 -1
  112. package/dist/public/assets/_BkGAUdMd.js.br +0 -0
  113. package/dist/public/assets/{_5fKzV_xm.js → _BkHLXMjq.js} +1 -1
  114. package/dist/public/assets/_BkHLXMjq.js.br +0 -0
  115. package/dist/public/assets/_BmSWsZvV.js +1 -0
  116. package/dist/public/assets/{_C4lapxL9.js → _Bn6y2_ex.js} +1 -1
  117. package/dist/public/assets/_Bn6y2_ex.js.br +0 -0
  118. package/dist/public/assets/_Bp2gqUaf.js +1 -0
  119. package/dist/public/assets/_Bs6oYKkD.js +1 -0
  120. package/dist/public/assets/{_BA4Iu42n.js → _Bs_MPTBZ.js} +1 -1
  121. package/dist/public/assets/_Bs_MPTBZ.js.br +0 -0
  122. package/dist/public/assets/_Bt13j1ev.js +1 -0
  123. package/dist/public/assets/{_B015R9rm.js → _Bt4cxzaP.js} +1 -1
  124. package/dist/public/assets/_BwlnYt-t.js +1 -0
  125. package/dist/public/assets/_Bx9aUXTG.js +1 -0
  126. package/dist/public/assets/{_DRfZHwBJ.js → _BxKDE6Ct.js} +1 -1
  127. package/dist/public/assets/_BxKDE6Ct.js.br +0 -0
  128. package/dist/public/assets/_BymFDqKj.js +1 -0
  129. package/dist/public/assets/{_BBbmRU3k.js → _C-z8Ntse.js} +1 -1
  130. package/dist/public/assets/_C-z8Ntse.js.br +0 -0
  131. package/dist/public/assets/_C0XUbqWe.js +1 -0
  132. package/dist/public/assets/_C1upDwBv.js +1 -0
  133. package/dist/public/assets/_C3f4huqn.js +1 -0
  134. package/dist/public/assets/{_DVOLp04e.js → _C46o3wQ8.js} +1 -1
  135. package/dist/public/assets/_C46o3wQ8.js.br +0 -0
  136. package/dist/public/assets/_C4_3qKLX.js +1 -0
  137. package/dist/public/assets/_C7tG4xwv.js +1 -0
  138. package/dist/public/assets/_C8LciIOa.js +1 -0
  139. package/dist/public/assets/{_Bl5WXdoB.js → _C9k00otG.js} +1 -1
  140. package/dist/public/assets/_C9k00otG.js.br +0 -0
  141. package/dist/public/assets/_CBG92pZO.js +1 -0
  142. package/dist/public/assets/_CBfI2lSr.js +1 -0
  143. package/dist/public/assets/{_CQIzzFRZ.js → _CFKwHn62.js} +1 -1
  144. package/dist/public/assets/_CFKwHn62.js.br +0 -0
  145. package/dist/public/assets/_CHDvRNgn.js +1 -0
  146. package/dist/public/assets/{_CLaHO3fE.js → _CIDjLk1A.js} +1 -1
  147. package/dist/public/assets/_CIDjLk1A.js.br +0 -0
  148. package/dist/public/assets/{_CBcx1kOh.js → _CLV83hY7.js} +1 -1
  149. package/dist/public/assets/_CLV83hY7.js.br +0 -0
  150. package/dist/public/assets/_CO8ZosDU.js +1 -0
  151. package/dist/public/assets/{_D9_2hMWP.js → _CPqT91JX.js} +1 -1
  152. package/dist/public/assets/_CPqT91JX.js.br +0 -0
  153. package/dist/public/assets/_CRZ03hrO.js +1 -0
  154. package/dist/public/assets/_CUKvJRmi.js +1 -0
  155. package/dist/public/assets/_CU_FKEsy.js +1 -0
  156. package/dist/public/assets/{_CVxQyHtq.js → _CUxBk_RE.js} +1 -1
  157. package/dist/public/assets/_CUxBk_RE.js.br +0 -0
  158. package/dist/public/assets/_CW_vyZfo.js +1 -0
  159. package/dist/public/assets/{_Dy3vjhI9.js → _CX5VOdNU.js} +1 -1
  160. package/dist/public/assets/_CX5VOdNU.js.br +0 -0
  161. package/dist/public/assets/{_CfM615kO.js → _CYcgwayF.js} +1 -1
  162. package/dist/public/assets/_CYcgwayF.js.br +0 -0
  163. package/dist/public/assets/{_hvh7Kn8G.js → _CZsqsL_m.js} +1 -1
  164. package/dist/public/assets/_CZsqsL_m.js.br +0 -0
  165. package/dist/public/assets/_C_a8QggH.js +1 -0
  166. package/dist/public/assets/_C_ymFHNL.js +1 -0
  167. package/dist/public/assets/_CaU4irFc.js +1 -0
  168. package/dist/public/assets/_Cb3fSi2R.js +1 -0
  169. package/dist/public/assets/{_x9gsUMHG.js → _CcINcTUt.js} +1 -1
  170. package/dist/public/assets/_CcINcTUt.js.br +0 -0
  171. package/dist/public/assets/{_Bfh0n3cD.js → _CcflXOTj.js} +1 -1
  172. package/dist/public/assets/_CcflXOTj.js.br +0 -0
  173. package/dist/public/assets/{_BjiY-VzO.js → _Cfts4mFJ.js} +1 -1
  174. package/dist/public/assets/_Cfts4mFJ.js.br +0 -0
  175. package/dist/public/assets/{_YRsH_Jn5.js → _ClHeQc6g.js} +1 -1
  176. package/dist/public/assets/_ClHeQc6g.js.br +0 -0
  177. package/dist/public/assets/_CnSlVcEh.js +1 -0
  178. package/dist/public/assets/_Co71-HWR.js +1 -0
  179. package/dist/public/assets/_CpEeHKyF.js +1 -0
  180. package/dist/public/assets/{_Cxhfb-mP.js → _CpVeIwQ4.js} +1 -1
  181. package/dist/public/assets/_CpVeIwQ4.js.br +0 -0
  182. package/dist/public/assets/{_BO_dGrB_.js → _Cq4DpL3R.js} +1 -1
  183. package/dist/public/assets/_Cq4DpL3R.js.br +0 -0
  184. package/dist/public/assets/_CvxsvMFa.js +1 -0
  185. package/dist/public/assets/{_aY3LCTY6.js → _Cwdn40Q2.js} +1 -1
  186. package/dist/public/assets/_Cwdn40Q2.js.br +0 -0
  187. package/dist/public/assets/_CzN0wC_5.js +16 -0
  188. package/dist/public/assets/_CzN0wC_5.js.br +0 -0
  189. package/dist/public/assets/_D3ieGLoq.js +1 -0
  190. package/dist/public/assets/_D4wF26fk.js +1 -0
  191. package/dist/public/assets/_D9a9nY1Q.js +1 -0
  192. package/dist/public/assets/{_CPakGo19.js → _DB7_Yora.js} +1 -1
  193. package/dist/public/assets/_DB7_Yora.js.br +0 -0
  194. package/dist/public/assets/{_CHWlI8eM.js → _DDWIDZyP.js} +1 -1
  195. package/dist/public/assets/_DDWIDZyP.js.br +0 -0
  196. package/dist/public/assets/{_C634i9Iw.js → _DG3L8-RO.js} +1 -1
  197. package/dist/public/assets/_DG3L8-RO.js.br +0 -0
  198. package/dist/public/assets/{_D5woWAW8.js → _DGRgLaG-.js} +1 -1
  199. package/dist/public/assets/_DGRgLaG-.js.br +0 -0
  200. package/dist/public/assets/{_DW7N6KAK.js → _DG_QOtsx.js} +1 -1
  201. package/dist/public/assets/_DG_QOtsx.js.br +0 -0
  202. package/dist/public/assets/{_B5aDrGbO.js → _DHYIZWev.js} +11 -11
  203. package/dist/public/assets/_DHYIZWev.js.br +0 -0
  204. package/dist/public/assets/{_8n8ba3Xr.js → _DJwY_zBh.js} +1 -1
  205. package/dist/public/assets/_DJwY_zBh.js.br +0 -0
  206. package/dist/public/assets/{_DLbIAQvl.js → _DKlB-yMq.js} +1 -1
  207. package/dist/public/assets/_DKlB-yMq.js.br +0 -0
  208. package/dist/public/assets/{_CrJYhl4C.js → _DMCVOg7x.js} +1 -1
  209. package/dist/public/assets/_DMCVOg7x.js.br +0 -0
  210. package/dist/public/assets/_DMXnrdYy.js +1 -0
  211. package/dist/public/assets/_DMXnrdYy.js.br +0 -0
  212. package/dist/public/assets/{_CvHnOFNG.js → _DNrRZhO7.js} +1 -1
  213. package/dist/public/assets/_DNrRZhO7.js.br +0 -0
  214. package/dist/public/assets/_DPdb5l-Z.js +1 -0
  215. package/dist/public/assets/{_Brgs9TFt.js → _DRpsUHP5.js} +1 -1
  216. package/dist/public/assets/_DRpsUHP5.js.br +0 -0
  217. package/dist/public/assets/{_CJDXsoZG.js → _DUH5o_iN.js} +1 -1
  218. package/dist/public/assets/_DUH5o_iN.js.br +0 -0
  219. package/dist/public/assets/{_B-Kvhca4.js → _DUmYv8Kf.js} +1 -1
  220. package/dist/public/assets/_DUmYv8Kf.js.br +0 -0
  221. package/dist/public/assets/{_vGfofQqO.js → _DXvsvUmJ.js} +1 -1
  222. package/dist/public/assets/_DXvsvUmJ.js.br +0 -0
  223. package/dist/public/assets/{_Cbsfq4Xq.js → _DYxQeog7.js} +1 -1
  224. package/dist/public/assets/_DYxQeog7.js.br +0 -0
  225. package/dist/public/assets/_DZIDdpeW.js +1 -0
  226. package/dist/public/assets/{_BzlH6kTq.js → _DZqoQxTm.js} +1 -1
  227. package/dist/public/assets/_DZqoQxTm.js.br +0 -0
  228. package/dist/public/assets/_D_4RJnk0.js +2 -0
  229. package/dist/public/assets/_D_4RJnk0.js.br +0 -0
  230. package/dist/public/assets/_DclJXqwW.js +1 -0
  231. package/dist/public/assets/_Debmjz1c.js +1 -0
  232. package/dist/public/assets/_DeiCZCO_.js +1 -0
  233. package/dist/public/assets/{_DO4kss9P.js → _Df-N1G_n.js} +1 -1
  234. package/dist/public/assets/_Df-N1G_n.js.br +0 -0
  235. package/dist/public/assets/_Df_3rEok.js +86 -0
  236. package/dist/public/assets/_Df_3rEok.js.br +0 -0
  237. package/dist/public/assets/{_C94vR51w.js → _Dh9434oc.js} +1 -1
  238. package/dist/public/assets/{_9nMouJiN.js → _DjYscMjF.js} +1 -1
  239. package/dist/public/assets/_DjYscMjF.js.br +0 -0
  240. package/dist/public/assets/{_De1k3VnO.js → _Dku55Ypt.js} +1 -1
  241. package/dist/public/assets/_Dku55Ypt.js.br +0 -0
  242. package/dist/public/assets/_Dm8TVkBX.js +1 -0
  243. package/dist/public/assets/_DnUBW0Qq.js +1 -0
  244. package/dist/public/assets/_DoOPrRIy.js +1 -0
  245. package/dist/public/assets/_DqJvxlYV.js +1 -0
  246. package/dist/public/assets/_Drle66GA.js +1 -0
  247. package/dist/public/assets/_DtrvrAfl.js +1 -0
  248. package/dist/public/assets/{_P2VZNfpY.js → _DwTaEsY5.js} +1 -1
  249. package/dist/public/assets/_DwTaEsY5.js.br +0 -0
  250. package/dist/public/assets/_Dypj9l-z.js +1 -0
  251. package/dist/public/assets/_DyvwMfCp.js +1 -0
  252. package/dist/public/assets/{_oGfeAy8g.js → _GK8r-gEu.js} +1 -1
  253. package/dist/public/assets/_GK8r-gEu.js.br +0 -0
  254. package/dist/public/assets/{_Dt7EUvlj.js → _HpxvfbM2.js} +1 -1
  255. package/dist/public/assets/_HpxvfbM2.js.br +0 -0
  256. package/dist/public/assets/{_DGB38_-Q.js → _RudCGuBM.js} +1 -1
  257. package/dist/public/assets/_RudCGuBM.js.br +0 -0
  258. package/dist/public/assets/_UbfI3k4y.js +1 -0
  259. package/dist/public/assets/{_BpLGw_gQ.js → _WOU8TCkO.js} +1 -1
  260. package/dist/public/assets/_WOU8TCkO.js.br +0 -0
  261. package/dist/public/assets/{_qf-8mlHT.js → _XWw1j8vS.js} +1 -1
  262. package/dist/public/assets/_XWw1j8vS.js.br +0 -0
  263. package/dist/public/assets/{_DVeUDVeu.js → _YDyNvOET.js} +1 -1
  264. package/dist/public/assets/_YDyNvOET.js.br +0 -0
  265. package/dist/public/assets/{_CQzhv_mX.js → _f8D86HXZ.js} +1 -1
  266. package/dist/public/assets/_f8D86HXZ.js.br +0 -0
  267. package/dist/public/assets/{_IIk2IzWK.js → _hbXd8Ogo.js} +1 -1
  268. package/dist/public/assets/_hbXd8Ogo.js.br +0 -0
  269. package/dist/public/assets/{_rkCbTrLW.js → _i6YkSowH.js} +1 -1
  270. package/dist/public/assets/_i6YkSowH.js.br +0 -0
  271. package/dist/public/assets/_k1ciacDf.js +1 -0
  272. package/dist/public/assets/_k6nXIP-i.js +1 -0
  273. package/dist/public/assets/_keX09TNx.js +1 -0
  274. package/dist/public/assets/{_Gjew_pmJ.js → _l9xpLTP_.js} +1 -1
  275. package/dist/public/assets/_l9xpLTP_.js.br +0 -0
  276. package/dist/public/assets/_n9Rb26YX.js +1 -0
  277. package/dist/public/assets/{_DVevGBhv.js → _o8mJsMHw.js} +1 -1
  278. package/dist/public/assets/_o8mJsMHw.js.br +0 -0
  279. package/dist/public/assets/{_DoIAcib0.js → _oVsjszGq.js} +1 -1
  280. package/dist/public/assets/_oVsjszGq.js.br +0 -0
  281. package/dist/public/assets/_pM8W420Q.js +1 -0
  282. package/dist/public/assets/{_Df1iTAvl.js → _rv9KtZHz.js} +1 -1
  283. package/dist/public/assets/_rv9KtZHz.js.br +0 -0
  284. package/dist/public/assets/{_CzuoYQDG.js → _sSKEak2x.js} +1 -1
  285. package/dist/public/assets/_sSKEak2x.js.br +0 -0
  286. package/dist/public/assets/_tJgkkxOD.js +1 -0
  287. package/dist/public/assets/_tJgkkxOD.js.br +0 -0
  288. package/dist/public/assets/_uP3LGOtV.js +1 -0
  289. package/dist/public/assets/{_DuaMWtx-.js → _vG7bXn-C.js} +1 -1
  290. package/dist/public/assets/_vG7bXn-C.js.br +0 -0
  291. package/dist/public/assets/{_DkvRY2VF.js → _vHqiFYsh.js} +1 -1
  292. package/dist/public/assets/_vHqiFYsh.js.br +0 -0
  293. package/dist/public/assets/_vXJ7nP0d.js +1 -0
  294. package/dist/public/assets/{_BcWxCrBn.js → _w-MAJku6.js} +1 -1
  295. package/dist/public/assets/_wvhU__5f.js +1 -0
  296. package/dist/public/assets/_xFMpRp_e.js +1 -0
  297. package/dist/public/assets/_yXimF5vw.js +1 -0
  298. package/dist/public/assets/files-view-BennlUmP.js +2 -0
  299. package/dist/public/assets/manage-workspace-CaESLJdc.js +2 -0
  300. package/dist/public/assets/new-BNH4m99d.js +1 -0
  301. package/dist/public/assets/new-workspace-CwiZjHNn.js +2 -0
  302. package/dist/public/assets/review-view-BdbMyVt7.js +2 -0
  303. package/dist/public/assets/settings-BNH4m99d.js +1 -0
  304. package/dist/public/assets/settings-page-CU3aC70Q.js +2 -0
  305. package/dist/public/assets/styles-ctr-Sxsj.css +1 -0
  306. package/dist/public/assets/styles-ctr-Sxsj.css.br +0 -0
  307. package/dist/public/assets/w-BNH4m99d.js +1 -0
  308. package/dist/public/assets/w._-BNH4m99d.js +1 -0
  309. package/dist/public/assets/w._-CLYxMMR4.js +1 -0
  310. package/dist/public/assets/w._-_w8eUYMy.js +1 -0
  311. package/dist/public/sw.js +11 -4
  312. package/dist/public/sw.js.br +0 -0
  313. package/lib/ports/url.d.mts +20 -0
  314. package/lib/ports/url.mjs +80 -0
  315. package/lib/setup/firewall.d.mts +5 -1
  316. package/lib/setup/firewall.mjs +23 -4
  317. package/package.json +1 -1
  318. package/dist/_Bhsm2MDa.js +0 -2
  319. package/dist/_Bktr58J-.js +0 -167
  320. package/dist/public/assets/_-LGAXy6L.js +0 -1
  321. package/dist/public/assets/_1fMDVNSL.js +0 -1
  322. package/dist/public/assets/_4MxLuDH4.js +0 -1
  323. package/dist/public/assets/_5fKzV_xm.js.br +0 -0
  324. package/dist/public/assets/_6uAQn-KZ.js +0 -1
  325. package/dist/public/assets/_6yZQC8Sj.js +0 -1
  326. package/dist/public/assets/_8JhYgpHe.js +0 -1
  327. package/dist/public/assets/_8n8ba3Xr.js.br +0 -0
  328. package/dist/public/assets/_9nMouJiN.js.br +0 -0
  329. package/dist/public/assets/_B-Kvhca4.js.br +0 -0
  330. package/dist/public/assets/_B4jkmqvY.js.br +0 -0
  331. package/dist/public/assets/_B5aDrGbO.js.br +0 -0
  332. package/dist/public/assets/_B71hDPcu.js +0 -1
  333. package/dist/public/assets/_B7XpTOeJ.js +0 -1
  334. package/dist/public/assets/_BA4Iu42n.js.br +0 -0
  335. package/dist/public/assets/_BAZwH6Ve.js.br +0 -0
  336. package/dist/public/assets/_BBZdAtMC.js +0 -1
  337. package/dist/public/assets/_BBbmRU3k.js.br +0 -0
  338. package/dist/public/assets/_BCuTz32B.js.br +0 -0
  339. package/dist/public/assets/_BFZ4oi5n.js +0 -1
  340. package/dist/public/assets/_BGd-I5rD.js +0 -1
  341. package/dist/public/assets/_BHp0OMqQ.js +0 -1
  342. package/dist/public/assets/_BO_dGrB_.js.br +0 -0
  343. package/dist/public/assets/_BOloI1-O.js +0 -1
  344. package/dist/public/assets/_BPD5OqbS.js +0 -1
  345. package/dist/public/assets/_BXZtuyZh.js +0 -1
  346. package/dist/public/assets/_B_aWrUZM.js +0 -1
  347. package/dist/public/assets/_B_wTYBYf.js +0 -1
  348. package/dist/public/assets/_Bbqj4oLG.js +0 -1
  349. package/dist/public/assets/_BdIL1kV4.js.br +0 -0
  350. package/dist/public/assets/_Bfa3k3Hb.js.br +0 -0
  351. package/dist/public/assets/_Bfh0n3cD.js.br +0 -0
  352. package/dist/public/assets/_BjiY-VzO.js.br +0 -0
  353. package/dist/public/assets/_Bl5WXdoB.js.br +0 -0
  354. package/dist/public/assets/_BnsBjEIT.js +0 -1
  355. package/dist/public/assets/_BnsBjEIT.js.br +0 -0
  356. package/dist/public/assets/_BpL0bstc.js +0 -2
  357. package/dist/public/assets/_BpL0bstc.js.br +0 -0
  358. package/dist/public/assets/_BpLGw_gQ.js.br +0 -0
  359. package/dist/public/assets/_BqiRi4qy.js +0 -1
  360. package/dist/public/assets/_Brgs9TFt.js.br +0 -0
  361. package/dist/public/assets/_BtCVvK2k.js.br +0 -0
  362. package/dist/public/assets/_BtEgXsuK.js +0 -1
  363. package/dist/public/assets/_BtEgXsuK.js.br +0 -0
  364. package/dist/public/assets/_BtN42R2m.js +0 -1
  365. package/dist/public/assets/_Bv9d1C-N.js +0 -1
  366. package/dist/public/assets/_BwIqXHWp.js.br +0 -0
  367. package/dist/public/assets/_BwvpgNRf.js +0 -1
  368. package/dist/public/assets/_Bx9nWm8r.js +0 -1
  369. package/dist/public/assets/_Bx9nWm8r.js.br +0 -0
  370. package/dist/public/assets/_BybJoj1B.js +0 -1
  371. package/dist/public/assets/_Bync_PH8.js +0 -1
  372. package/dist/public/assets/_Bync_PH8.js.br +0 -0
  373. package/dist/public/assets/_BzlH6kTq.js.br +0 -0
  374. package/dist/public/assets/_C1gXJmH-.js.br +0 -0
  375. package/dist/public/assets/_C24Yukj9.js +0 -1
  376. package/dist/public/assets/_C4lapxL9.js.br +0 -0
  377. package/dist/public/assets/_C634i9Iw.js.br +0 -0
  378. package/dist/public/assets/_C7n1c5sG.js.br +0 -0
  379. package/dist/public/assets/_CBMRDyF5.js +0 -1
  380. package/dist/public/assets/_CBcx1kOh.js.br +0 -0
  381. package/dist/public/assets/_CDLK6m8H.js +0 -1
  382. package/dist/public/assets/_CGmPVd6x.js +0 -1
  383. package/dist/public/assets/_CHWlI8eM.js.br +0 -0
  384. package/dist/public/assets/_CIiNyABw.js +0 -1
  385. package/dist/public/assets/_CJDXsoZG.js.br +0 -0
  386. package/dist/public/assets/_CKpKOqv6.js +0 -1
  387. package/dist/public/assets/_CLaHO3fE.js.br +0 -0
  388. package/dist/public/assets/_CMbRT0RN.js +0 -1
  389. package/dist/public/assets/_CNiymwwH.js +0 -1
  390. package/dist/public/assets/_CNramc89.js.br +0 -0
  391. package/dist/public/assets/_COjSvk7K.js +0 -1
  392. package/dist/public/assets/_CPakGo19.js.br +0 -0
  393. package/dist/public/assets/_CQIzzFRZ.js.br +0 -0
  394. package/dist/public/assets/_CQzhv_mX.js.br +0 -0
  395. package/dist/public/assets/_CRfRDlj2.js +0 -1
  396. package/dist/public/assets/_CSp3_AhQ.js +0 -1
  397. package/dist/public/assets/_CU-yRMtu.js +0 -6
  398. package/dist/public/assets/_CU-yRMtu.js.br +0 -0
  399. package/dist/public/assets/_CUPj7ARi.js +0 -1
  400. package/dist/public/assets/_CVBq_iEC.js +0 -1
  401. package/dist/public/assets/_CVxQyHtq.js.br +0 -0
  402. package/dist/public/assets/_CYEdfiVK.js +0 -1
  403. package/dist/public/assets/_CYNWm9iq.js +0 -1
  404. package/dist/public/assets/_Ca-c93LZ.js +0 -1
  405. package/dist/public/assets/_Ca4BTBEZ.js +0 -1
  406. package/dist/public/assets/_Ca4BTBEZ.js.br +0 -0
  407. package/dist/public/assets/_CbWILCnD.js +0 -1
  408. package/dist/public/assets/_Cbjd3Q9T.js +0 -2
  409. package/dist/public/assets/_Cbjd3Q9T.js.br +0 -0
  410. package/dist/public/assets/_Cbsfq4Xq.js.br +0 -0
  411. package/dist/public/assets/_CfM615kO.js.br +0 -0
  412. package/dist/public/assets/_Cfge4b__.js +0 -1
  413. package/dist/public/assets/_Cg7H9vg0.js +0 -1
  414. package/dist/public/assets/_CkOLwn-O.js.br +0 -0
  415. package/dist/public/assets/_ClJiup1H.js +0 -1
  416. package/dist/public/assets/_CpU9EtMF.js +0 -1
  417. package/dist/public/assets/_CpU9EtMF.js.br +0 -0
  418. package/dist/public/assets/_Cq8bC13s.js +0 -1
  419. package/dist/public/assets/_CrJYhl4C.js.br +0 -0
  420. package/dist/public/assets/_CvHnOFNG.js.br +0 -0
  421. package/dist/public/assets/_Cxhfb-mP.js.br +0 -0
  422. package/dist/public/assets/_CzSlKec6.js +0 -1
  423. package/dist/public/assets/_CzuoYQDG.js.br +0 -0
  424. package/dist/public/assets/_D4JoXfrO.js.br +0 -0
  425. package/dist/public/assets/_D5-Xbg1R.js.br +0 -0
  426. package/dist/public/assets/_D5woWAW8.js.br +0 -0
  427. package/dist/public/assets/_D99Wlj0O.js +0 -1
  428. package/dist/public/assets/_D9_2hMWP.js.br +0 -0
  429. package/dist/public/assets/_DC_EInc4.js +0 -1
  430. package/dist/public/assets/_DCgPMOAm.js +0 -1
  431. package/dist/public/assets/_DDDY02_q.js.br +0 -0
  432. package/dist/public/assets/_DDuN0b6I.js +0 -1
  433. package/dist/public/assets/_DEm5vgv_.js +0 -1
  434. package/dist/public/assets/_DFBqmRUc.js +0 -1
  435. package/dist/public/assets/_DGB38_-Q.js.br +0 -0
  436. package/dist/public/assets/_DHwe--xJ.js +0 -1
  437. package/dist/public/assets/_DK_ROILU.js +0 -1
  438. package/dist/public/assets/_DLUV6ZQ4.js +0 -1
  439. package/dist/public/assets/_DLbIAQvl.js.br +0 -0
  440. package/dist/public/assets/_DMWoxRSc.js +0 -16
  441. package/dist/public/assets/_DMWoxRSc.js.br +0 -0
  442. package/dist/public/assets/_DNekcg31.js +0 -1
  443. package/dist/public/assets/_DO4kss9P.js.br +0 -0
  444. package/dist/public/assets/_DOpQqgoi.js +0 -1
  445. package/dist/public/assets/_DRDoh9gX.js +0 -1
  446. package/dist/public/assets/_DRfZHwBJ.js.br +0 -0
  447. package/dist/public/assets/_DSUWiRRK.js.br +0 -0
  448. package/dist/public/assets/_DSw-4lX2.js.br +0 -0
  449. package/dist/public/assets/_DUQz9QdQ.js +0 -1
  450. package/dist/public/assets/_DUb2rGXm.js +0 -1
  451. package/dist/public/assets/_DUb2rGXm.js.br +0 -0
  452. package/dist/public/assets/_DVOLp04e.js.br +0 -0
  453. package/dist/public/assets/_DVeUDVeu.js.br +0 -0
  454. package/dist/public/assets/_DVevGBhv.js.br +0 -0
  455. package/dist/public/assets/_DW7N6KAK.js.br +0 -0
  456. package/dist/public/assets/_DXn7VNFu.js +0 -1
  457. package/dist/public/assets/_DYH0eCbn.js.br +0 -0
  458. package/dist/public/assets/_DYUAPXDQ.js.br +0 -0
  459. package/dist/public/assets/_DbODstMe.js +0 -1
  460. package/dist/public/assets/_Dc7kGfRQ.js +0 -1
  461. package/dist/public/assets/_De1k3VnO.js.br +0 -0
  462. package/dist/public/assets/_Df1iTAvl.js.br +0 -0
  463. package/dist/public/assets/_DgYlRNTv.js +0 -1
  464. package/dist/public/assets/_DjQSx1cs.js +0 -1
  465. package/dist/public/assets/_DkvRY2VF.js.br +0 -0
  466. package/dist/public/assets/_DoIAcib0.js.br +0 -0
  467. package/dist/public/assets/_Dt7EUvlj.js.br +0 -0
  468. package/dist/public/assets/_DuaMWtx-.js.br +0 -0
  469. package/dist/public/assets/_Dy3vjhI9.js.br +0 -0
  470. package/dist/public/assets/_G9Zy20B_.js.br +0 -0
  471. package/dist/public/assets/_Gjew_pmJ.js.br +0 -0
  472. package/dist/public/assets/_HCEgTdm1.js +0 -1
  473. package/dist/public/assets/_Hak9GZSq.js +0 -1
  474. package/dist/public/assets/_HlShuyJR.js.br +0 -0
  475. package/dist/public/assets/_Hu1xz4Lu.js.br +0 -0
  476. package/dist/public/assets/_IIk2IzWK.js.br +0 -0
  477. package/dist/public/assets/_JCQQIgqJ.js +0 -1
  478. package/dist/public/assets/_LzgGPkGH.js +0 -1
  479. package/dist/public/assets/_N96Oqzt6.js +0 -1
  480. package/dist/public/assets/_OSMLzC7w.js +0 -1
  481. package/dist/public/assets/_P2VZNfpY.js.br +0 -0
  482. package/dist/public/assets/_Tj4gwE2h.js +0 -1
  483. package/dist/public/assets/_UgBaqmVR.js +0 -1
  484. package/dist/public/assets/_VV8USAwR.js +0 -1
  485. package/dist/public/assets/_XWoqVB1l.js +0 -1
  486. package/dist/public/assets/_YRsH_Jn5.js.br +0 -0
  487. package/dist/public/assets/_aY3LCTY6.js.br +0 -0
  488. package/dist/public/assets/_b3iaRNRr.js +0 -1
  489. package/dist/public/assets/_cKcWLQPj.js +0 -1
  490. package/dist/public/assets/_cVTJMvgA.js +0 -1
  491. package/dist/public/assets/_fTrEfQgl.js +0 -1
  492. package/dist/public/assets/_gIdf7Xw5.js.br +0 -0
  493. package/dist/public/assets/_hlPeODrN.js +0 -1
  494. package/dist/public/assets/_hvh7Kn8G.js.br +0 -0
  495. package/dist/public/assets/_joWx_YVF.js +0 -1
  496. package/dist/public/assets/_k1dlXWES.js +0 -1
  497. package/dist/public/assets/_kPqXo7z9.js +0 -86
  498. package/dist/public/assets/_kPqXo7z9.js.br +0 -0
  499. package/dist/public/assets/_o-w-GRlW.js.br +0 -0
  500. package/dist/public/assets/_oGfeAy8g.js.br +0 -0
  501. package/dist/public/assets/_qf-8mlHT.js.br +0 -0
  502. package/dist/public/assets/_qiP5PaTJ.js.br +0 -0
  503. package/dist/public/assets/_rkCbTrLW.js.br +0 -0
  504. package/dist/public/assets/_vGfofQqO.js.br +0 -0
  505. package/dist/public/assets/_x9gsUMHG.js.br +0 -0
  506. package/dist/public/assets/_xh9Gonv9.js +0 -1
  507. package/dist/public/assets/files-view-BAyLKvRK.js +0 -2
  508. package/dist/public/assets/manage-workspace-B2x5MV3x.js +0 -2
  509. package/dist/public/assets/new-BYYj4BqJ.js +0 -1
  510. package/dist/public/assets/new-workspace-Der44YSz.js +0 -2
  511. package/dist/public/assets/review-view-DKfw2IXZ.js +0 -2
  512. package/dist/public/assets/settings-BYYj4BqJ.js +0 -1
  513. package/dist/public/assets/settings-page-C2QJm3t_.js +0 -2
  514. package/dist/public/assets/styles-Dh_Zl9g6.css +0 -1
  515. package/dist/public/assets/styles-Dh_Zl9g6.css.br +0 -0
  516. package/dist/public/assets/w-BYYj4BqJ.js +0 -1
  517. package/dist/public/assets/w._-BYYj4BqJ.js +0 -1
  518. package/dist/public/assets/w._-DiowwH3T.js +0 -1
  519. package/dist/public/assets/w._-jtiTmGZc.js +0 -1
@@ -0,0 +1,99 @@
1
+ // `work skill`: the machine's skills — what every agent CLI here can see —
2
+ // as Settings → Skills lists, adds, updates and removes them.
3
+ import { follow } from "./_progress.mjs";
4
+
5
+ function printList(snap) {
6
+ const rows = snap.global || [];
7
+ if (!snap.available)
8
+ console.log(
9
+ "the skills CLI is not installed, so skills can be listed but not added (work setup installs it)",
10
+ );
11
+ if (!rows.length) return console.log("no skills installed");
12
+ const w = Math.max(4, ...rows.map((s) => s.id.length));
13
+ for (const s of rows) {
14
+ const from = s.source ? ` ${s.source}` : "";
15
+ const broken = s.broken ? " (broken link)" : "";
16
+ console.log(`${s.id.padEnd(w)}${from}${broken}`);
17
+ if (s.description) console.log(`${"".padEnd(w)} ${s.description}`);
18
+ }
19
+ }
20
+
21
+ /** One skill action through the route Settings uses, its progress (the
22
+ * skills CLI's own output) on stderr; the machine's skills after it. */
23
+ function act(ctx, body, op) {
24
+ return follow(ctx, op, () => ctx.api.post("/api/skills", body));
25
+ }
26
+
27
+ /** @type {Array<{name: string, summary: string, help: string, run: (ctx: any) => Promise<void>}>} */
28
+ export const commands = [
29
+ {
30
+ name: "skill",
31
+ summary: "machine skills: list | add | rm | update",
32
+ help: `work skill [list]
33
+ The skills every agent CLI on this machine can see (Settings → Skills):
34
+ each one's id, where it came from, and what it does.
35
+ work skill add <source> [--skill <name>]
36
+ Add skills from a source the skills CLI understands (owner/repo, a git
37
+ URL, a path): every skill it ships, or the one --skill names.
38
+ work skill rm <id>
39
+ Remove an installed skill.
40
+ work skill update [<id>]
41
+ Update one skill from its source, or every skill that has one.`,
42
+ async run(ctx) {
43
+ const [verb = "list", arg] = ctx.parse(["--skill"]);
44
+ if (verb === "list") {
45
+ const snap = await ctx.api.get("/api/skills");
46
+ return ctx.out(snap.global || [], () => printList(snap));
47
+ }
48
+ if (verb === "add") {
49
+ if (!arg) ctx.die("name the source: work skill add <owner/repo|url>");
50
+ const skill = ctx.args.includes("--skill")
51
+ ? ctx.flag("--skill")
52
+ : undefined;
53
+ const snap = await act(
54
+ ctx,
55
+ { action: "add", source: arg, skill },
56
+ `skills:${skill ? `${arg}#${skill}` : arg}`,
57
+ );
58
+ return ctx.out(snap.global || [], () =>
59
+ console.log(
60
+ `added ${skill ?? "the skills of"} ${skill ? "from " : ""}${arg}`,
61
+ ),
62
+ );
63
+ }
64
+ if (verb === "rm" || verb === "remove") {
65
+ if (!arg) ctx.die("name the skill: work skill rm <id>");
66
+ const snap = await act(
67
+ ctx,
68
+ { action: "remove", id: arg },
69
+ `skills:${arg}`,
70
+ );
71
+ return ctx.out(snap.global || [], () => console.log(`removed ${arg}`));
72
+ }
73
+ if (verb === "update") {
74
+ let ids = arg ? [arg] : [];
75
+ if (!arg) {
76
+ const snap = await ctx.api.get("/api/skills");
77
+ ids = (snap.global || [])
78
+ .filter((s) => s.source && s.source !== "local")
79
+ .map((s) => s.id);
80
+ if (!ids.length) {
81
+ ctx.out([], () =>
82
+ console.log("no skill has a source to update from"),
83
+ );
84
+ return;
85
+ }
86
+ }
87
+ let snap = null;
88
+ for (const id of ids) {
89
+ process.stderr.write(` updating ${id}\n`);
90
+ snap = await act(ctx, { action: "update", id }, `skills:${id}`);
91
+ }
92
+ return ctx.out(snap?.global || [], () =>
93
+ console.log(`updated ${ids.join(", ")}`),
94
+ );
95
+ }
96
+ ctx.die(`no skill verb ${verb} (list, add, rm, update)`);
97
+ },
98
+ },
99
+ ];
@@ -0,0 +1,51 @@
1
+ // `work stack`: how to stack branches here, with this workspace's branch
2
+ // in place. Kept out of the workspace AGENTS.md, which every session reads
3
+ // whole: stacking is for when the user asks, and the recipe was a quarter
4
+ // of that file.
5
+
6
+ function recipe(branch) {
7
+ return `Stacking ${branch}
8
+
9
+ Stack only when the user asks, or when a change of several hundred lines
10
+ splits into parts each worth merging alone; never a layer per commit.
11
+
12
+ - The working branch (${branch}) stays the top; cut layers below it, bottom
13
+ first, as ${branch}-<layer>:
14
+ gh stack init --base <base> <layers…> ${branch}
15
+ (after \`gh stack unstack --local\` if a stack exists).
16
+ - Never check a layer out. Edit one by \`git commit --fixup <sha>\` on the
17
+ top, then:
18
+ GIT_SEQUENCE_EDITOR=: git rebase -i --autosquash --update-refs origin/<base>
19
+ - \`gh stack sync\` / \`gh stack rebase\` switch branches: run them in topic
20
+ worktrees only. Leave the local <base> gh-stack keeps as trunk.
21
+ - Merge a layer with \`gh stack merge <pr> --squash\` or on the web
22
+ (\`gh pr merge\` refuses it), then, on the top:
23
+ old=$(git rev-parse origin/${branch})
24
+ git fetch
25
+ git branch -f <layer> origin/<layer> # for each remaining layer
26
+ git branch -D <merged-layer>
27
+ git rebase --onto origin/${branch} $old
28
+ - Once the top merges: \`gh stack unstack --local\`.
29
+ - Link a layer for review as [<layer>](/w/<id>/review?section=<repo>@<layer>);
30
+ \`work branches\` lists every layer with its link.`;
31
+ }
32
+
33
+ export const commands = [
34
+ {
35
+ name: "stack",
36
+ summary: "how to stack branches in this workspace (prints the recipe)",
37
+ help: `work stack [id|name]
38
+ Prints how to stack branches with gh-stack here, with the workspace's
39
+ branch filled in: when to, cutting layers, editing one without checking
40
+ it out, merging a layer and rebasing the rest.`,
41
+ async run(ctx) {
42
+ let branch = "<workspace-branch>";
43
+ try {
44
+ if (ctx.positional[0] || process.env.WORK_SESSION_ID) {
45
+ branch = (await ctx.resolveWorkspace(ctx.positional[0])).ws.branch;
46
+ }
47
+ } catch {}
48
+ ctx.out({ branch, recipe: recipe(branch) }, (d) => console.log(d.recipe));
49
+ },
50
+ },
51
+ ];
@@ -0,0 +1,86 @@
1
+ // `work status`: the machine and the service in one look — how the server
2
+ // runs (its own config, not the unit file's), the agents, language servers
3
+ // and skills, what `work doctor` would say is missing, and the settings
4
+ // changed from their defaults. One request each, side by side.
5
+ import { shown } from "./config.mjs";
6
+
7
+ export const commands = [
8
+ {
9
+ name: "status",
10
+ summary: "the service, agents, languages, skills and changed settings",
11
+ help: `work status [--json]
12
+ one snapshot of this machine's work: version, address and names it
13
+ answers to, direct connections, data and work root, agents (installed,
14
+ switched off, the default), language servers, skills, what is missing
15
+ (work doctor), and the settings changed from their defaults`,
16
+ async run(ctx) {
17
+ const [server, settings, agents, lsp, skills, setup] = await Promise.all([
18
+ ctx.api.get("/api/config"),
19
+ ctx.api.get("/api/settings/values"),
20
+ ctx.api.get("/api/settings"),
21
+ ctx.api.get("/api/lsp"),
22
+ ctx.api.get("/api/skills"),
23
+ ctx.api.get("/api/setup"),
24
+ ]);
25
+ const snapshot = {
26
+ version: server.version,
27
+ server,
28
+ agents: {
29
+ default: agents.preferredAgent,
30
+ enabled: agents.agents,
31
+ disabled: agents.disabledAgents,
32
+ installable: (setup.agents || [])
33
+ .filter((a) => !a.installed)
34
+ .map((a) => a.id),
35
+ },
36
+ languages: {
37
+ on: lsp.on,
38
+ installed: lsp.servers.filter((s) => s.installed).map((s) => s.id),
39
+ off: lsp.servers.filter((s) => !s.enabled).map((s) => s.id),
40
+ },
41
+ skills: [...(skills.global || [])].map((s) => s.id ?? s.name ?? s),
42
+ doctor: { ready: setup.ready, missing: setup.missing },
43
+ settings: settings.filter((e) => !e.isDefault),
44
+ };
45
+ ctx.out(snapshot, (s) => {
46
+ const sv = s.server;
47
+ const list = (xs) => (xs.length ? xs.join(", ") : "none");
48
+ const rows = [
49
+ ["work", `${s.version} on ${sv.listen}:${sv.port}`],
50
+ [
51
+ "names",
52
+ sv.allowedHosts.length
53
+ ? `${sv.allowedHosts.join(", ")} (ports as ${sv.portHosts === "dash" ? "<port>-<name>" : "<port>.<name>"})`
54
+ : "this machine's own",
55
+ ],
56
+ ["proxies", list(sv.trustedProxies)],
57
+ ["direct", sv.rtc.on ? `on, UDP ${sv.rtc.port}` : "off"],
58
+ ["root", sv.workRoot],
59
+ ["data", sv.dataDir],
60
+ [
61
+ "agents",
62
+ `${list(s.agents.enabled)}; default ${s.agents.default}${s.agents.disabled.length ? `; off: ${s.agents.disabled.join(", ")}` : ""}`,
63
+ ],
64
+ [
65
+ "languages",
66
+ `${s.languages.on ? "on" : "off"}; installed: ${list(s.languages.installed)}${s.languages.off.length ? `; off: ${s.languages.off.join(", ")}` : ""}`,
67
+ ],
68
+ ["skills", list(s.skills)],
69
+ [
70
+ "machine",
71
+ s.doctor.ready
72
+ ? "ready"
73
+ : `not ready: ${list(s.doctor.missing)} (work doctor)`,
74
+ ],
75
+ [
76
+ "settings",
77
+ s.settings.length
78
+ ? s.settings.map((e) => `${e.key}=${shown(e.value)}`).join(", ")
79
+ : "all at their defaults (work config list)",
80
+ ],
81
+ ];
82
+ for (const [k, v] of rows) console.log(`${ctx.pad(k, 10)} ${v}`);
83
+ });
84
+ },
85
+ },
86
+ ];