autohand-cli 0.9.0 → 0.9.2

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 (455) hide show
  1. package/README.md +118 -76
  2. package/dist/AgentRegistry-BBQRODQC.cjs +18 -0
  3. package/dist/AgentRegistry-JBXZUPML.js +18 -0
  4. package/dist/{CommunitySkillsCache-ZEQWP6YM.js → CommunitySkillsCache-CI7UN2DX.js} +2 -2
  5. package/dist/CommunitySkillsCache-XTQ6RMTA.cjs +8 -0
  6. package/dist/{HookManager-CWLTFKWO.js → HookManager-BELBPQQI.js} +1 -1
  7. package/dist/{HookManager-TMAJQU4S.cjs → HookManager-ZL2CLAJW.cjs} +2 -2
  8. package/dist/{ImportWizard-MQXEED2U.cjs → ImportWizard-U6CIJREW.cjs} +13 -13
  9. package/dist/{ImportWizard-QBKQEXDW.js → ImportWizard-VJFSWSUQ.js} +4 -4
  10. package/dist/LearnAdvisor-LAURA3IB.cjs +9 -0
  11. package/dist/LearnAdvisor-RFOBXFG7.js +9 -0
  12. package/dist/MemoryManager-3A2VRPF2.js +9 -0
  13. package/dist/MemoryManager-UOEQZIDC.cjs +9 -0
  14. package/dist/{NVIDIAProvider-2HR737UE.js → NVIDIAProvider-AFNJNWJM.js} +1 -1
  15. package/dist/NVIDIAProvider-L5GTYRCQ.cjs +14 -0
  16. package/dist/{PermissionManager-KMYILJ4Z.js → PermissionManager-N2LDSOYF.js} +3 -3
  17. package/dist/PermissionManager-ZNURIEYR.cjs +11 -0
  18. package/dist/ProviderFactory-3BFS65V7.cjs +13 -0
  19. package/dist/{ProviderFactory-HFPRVQ25.js → ProviderFactory-XUT6BSGB.js} +4 -2
  20. package/dist/SessionManager-LGPQIA57.cjs +10 -0
  21. package/dist/{SessionManager-PNBTJJTQ.js → SessionManager-OR4KDDDS.js} +2 -2
  22. package/dist/{SkillsRegistry-4RRD5GMX.js → SkillsRegistry-IL3GWROU.js} +2 -2
  23. package/dist/SkillsRegistry-PM34DQNA.cjs +9 -0
  24. package/dist/SubAgent-2WG4QQB5.cjs +13 -0
  25. package/dist/SubAgent-ICGN23TQ.js +13 -0
  26. package/dist/{SyncApiClient-LRPFNCKJ.js → SyncApiClient-G3FM65IV.js} +1 -1
  27. package/dist/SyncApiClient-ODBDECOG.cjs +11 -0
  28. package/dist/{about-BW3PDZUU.js → about-OYVGQMJJ.js} +5 -4
  29. package/dist/about-U2BH7HDR.cjs +15 -0
  30. package/dist/{acp-VHEL7BOW.js → acp-JWHGXZL5.js} +207 -102
  31. package/dist/{acp-EOETGAHC.cjs → acp-S37JOBCS.cjs} +226 -121
  32. package/dist/actionExecutor-2QEPMELQ.cjs +28 -0
  33. package/dist/actionExecutor-6NCCORRB.js +28 -0
  34. package/dist/add-dir-KFUHSIR2.cjs +11 -0
  35. package/dist/{add-dir-VFX7QT4E.js → add-dir-MM2BM2Z2.js} +2 -2
  36. package/dist/agent-DUIYLIVN.js +132 -0
  37. package/dist/agent-YYEHGDAK.cjs +132 -0
  38. package/dist/agents-GBGG4CW7.cjs +19 -0
  39. package/dist/agents-ZH34C72F.js +19 -0
  40. package/dist/agents-new-ERXLS7SB.cjs +17 -0
  41. package/dist/agents-new-EVTGPTA4.js +17 -0
  42. package/dist/{autoSkill-EFMK6WU6.js → autoSkill-HEWKJ5JV.js} +2 -2
  43. package/dist/autoSkill-YL6PN6AV.cjs +20 -0
  44. package/dist/automode-4BJ7FNPL.cjs +10 -0
  45. package/dist/{automode-BMYSRM34.js → automode-S4U7A7Q2.js} +2 -2
  46. package/dist/chrome-45ZXHL5N.cjs +22 -0
  47. package/dist/{chrome-NHJ44WUN.js → chrome-BBSRVG6S.js} +2 -2
  48. package/dist/chrome-IFVZRHAT.cjs +50 -0
  49. package/dist/chrome-MYE6DNA2.js +22 -0
  50. package/dist/chunk-24CEJYEG.cjs +579 -0
  51. package/dist/{chunk-47PHDKNW.cjs → chunk-255GIVM2.cjs} +6 -6
  52. package/dist/{chunk-DIZTWFVR.cjs → chunk-2BDSR2OW.cjs} +238 -61
  53. package/dist/{chunk-BL2UC7HC.js → chunk-2BPIR7LA.js} +121 -4
  54. package/dist/{chunk-BQ22N3TX.cjs → chunk-2NY7OHBF.cjs} +47 -27
  55. package/dist/chunk-2WUNHTXL.js +303 -0
  56. package/dist/{chunk-HQWQZML5.cjs → chunk-34B6ZO6W.cjs} +124 -7
  57. package/dist/{chunk-5JTTM5SC.js → chunk-3BJN7GAH.js} +1 -1
  58. package/dist/{chunk-4256YRCO.cjs → chunk-3CAXECWJ.cjs} +30 -17
  59. package/dist/{chunk-KNTUI4TZ.cjs → chunk-3CBYUBZC.cjs} +5 -5
  60. package/dist/chunk-3DF3GZQ7.js +277 -0
  61. package/dist/{chunk-E26KKI46.cjs → chunk-3JURXAL6.cjs} +61 -8
  62. package/dist/{chunk-MOJ7ADW4.cjs → chunk-3KWAP2Y3.cjs} +88 -9
  63. package/dist/{chunk-OHWMWKJQ.js → chunk-3MCK6UBL.js} +1 -1
  64. package/dist/{chunk-5VHP6HDQ.js → chunk-3TH7IK4M.js} +62 -9
  65. package/dist/{chunk-ACDQGA4Z.js → chunk-3V77OB3W.js} +7 -72
  66. package/dist/{chunk-HS4USDND.cjs → chunk-3Y5UEK7K.cjs} +4 -4
  67. package/dist/{chunk-XV2HXRHX.js → chunk-4GPPSBEZ.js} +3 -3
  68. package/dist/chunk-5CMBAJ6K.js +377 -0
  69. package/dist/{chunk-MO4KP6XS.cjs → chunk-5YRXFBYZ.cjs} +35 -6
  70. package/dist/chunk-5ZNYX4VH.cjs +71 -0
  71. package/dist/chunk-6AC2TT26.js +156 -0
  72. package/dist/{chunk-UGFVM77J.cjs → chunk-6EIQ6A6U.cjs} +2 -2
  73. package/dist/{chunk-SWCQM52V.js → chunk-6HSEDXVF.js} +4 -4
  74. package/dist/{chunk-QQ7PANOP.js → chunk-6NUXK62F.js} +1 -1
  75. package/dist/{chunk-5CMYEM3R.cjs → chunk-6TGCAPYH.cjs} +62 -9
  76. package/dist/{chunk-NMQ47RCG.js → chunk-6W3SZCSP.js} +1 -1
  77. package/dist/{chunk-VRMZO6TB.js → chunk-73LV3DDZ.js} +7 -6
  78. package/dist/{chunk-3GUEUCZK.js → chunk-7BGGLIQF.js} +85 -1
  79. package/dist/{chunk-RBHANOYY.js → chunk-7DJJGKM6.js} +47 -3
  80. package/dist/{chunk-LQBONA55.cjs → chunk-7EEK7CRR.cjs} +85 -1
  81. package/dist/chunk-7TO3PDMV.cjs +324 -0
  82. package/dist/chunk-7UU22RSH.cjs +277 -0
  83. package/dist/{chunk-E6GFD7VR.cjs → chunk-A3GAM6FM.cjs} +11 -11
  84. package/dist/{chunk-DEQVRSV5.cjs → chunk-A7DJU75T.cjs} +8 -8
  85. package/dist/{chunk-DPSIGY6L.cjs → chunk-AAAO4ERQ.cjs} +9 -9
  86. package/dist/{chunk-FQAVGSPW.js → chunk-AAJLMP57.js} +2 -2
  87. package/dist/chunk-ABR756QN.js +529 -0
  88. package/dist/{chunk-JYKPWK5O.js → chunk-APFGDIPD.js} +3 -1
  89. package/dist/{chunk-Y3M2DABP.js → chunk-APQYRMYL.js} +4 -4
  90. package/dist/{chunk-Q2IL4DDI.cjs → chunk-AZKOIF2G.cjs} +62 -19
  91. package/dist/{chunk-MXVIDIC6.cjs → chunk-AZLHUPNC.cjs} +2 -2
  92. package/dist/chunk-B55VCYSQ.cjs +30 -0
  93. package/dist/{chunk-WZV6UVPY.js → chunk-BLQUMSM3.js} +1 -1
  94. package/dist/{chunk-PHJO5YAL.cjs → chunk-BXKPX6K4.cjs} +9 -9
  95. package/dist/{chunk-3KLSNNRW.cjs → chunk-C66FN2LP.cjs} +4 -4
  96. package/dist/{chunk-OV3PVUYN.js → chunk-CH7KUFAS.js} +9 -9
  97. package/dist/{chunk-CWINVFRI.cjs → chunk-CILSXOPI.cjs} +17 -17
  98. package/dist/{chunk-3UT7R3XV.js → chunk-CM24K6ZT.js} +145 -12
  99. package/dist/chunk-CMEZ42F2.cjs +303 -0
  100. package/dist/{chunk-46C73ZKK.cjs → chunk-CNQKIWIS.cjs} +152 -19
  101. package/dist/{chunk-5JFTY3VU.js → chunk-CSTUTDTH.js} +2 -1
  102. package/dist/{chunk-REMGR23V.cjs → chunk-CSUGNNJY.cjs} +10 -4
  103. package/dist/{chunk-TBOLJDUG.js → chunk-D6HB3H3L.js} +31 -11
  104. package/dist/{chunk-OM24WXEE.js → chunk-D7AYKVKW.js} +2 -2
  105. package/dist/{chunk-6GUODJKM.cjs → chunk-DLCXWOWT.cjs} +23 -23
  106. package/dist/{chunk-CH2J4PVE.cjs → chunk-DMM2BKSV.cjs} +121 -28
  107. package/dist/{chunk-M4KNC5BQ.js → chunk-DW3DPV77.js} +1 -1
  108. package/dist/chunk-ECQD2QC3.cjs +33 -0
  109. package/dist/{chunk-UEIXJG45.js → chunk-EEYOS3UC.js} +116 -80
  110. package/dist/{chunk-7HPWMALN.js → chunk-EF2EN5CR.js} +2 -2
  111. package/dist/{chunk-7LWQCE4Y.cjs → chunk-EFXFURDY.cjs} +192 -58
  112. package/dist/chunk-EK34UZPB.cjs +40 -0
  113. package/dist/{chunk-7JLT2VNW.cjs → chunk-FJR6EZLO.cjs} +9666 -7201
  114. package/dist/{chunk-GZ6DV2UG.js → chunk-FPO7YNPQ.js} +1 -1
  115. package/dist/{chunk-O64I2GYI.js → chunk-FS4I6BNR.js} +1 -1
  116. package/dist/{chunk-MX75JYIY.js → chunk-FSJ2MNOC.js} +3 -3
  117. package/dist/{chunk-7RFJB75Y.js → chunk-GEHZMC4G.js} +11 -8
  118. package/dist/{chunk-UWFG2R2I.cjs → chunk-GO6C2RAR.cjs} +36 -9
  119. package/dist/{chunk-WGLBC5AY.cjs → chunk-GSMR6V36.cjs} +4 -4
  120. package/dist/{chunk-Z3XSSF7B.js → chunk-GSZWATME.js} +1 -1
  121. package/dist/{chunk-7MU7LWF3.cjs → chunk-GYLGCR6F.cjs} +5 -5
  122. package/dist/{chunk-O6TQP7U7.cjs → chunk-H3OOWNYQ.cjs} +3 -3
  123. package/dist/{chunk-2QL6MNXG.js → chunk-H65446XW.js} +115 -20
  124. package/dist/chunk-H7HXRRHK.js +324 -0
  125. package/dist/{chunk-ZZ63NW7A.cjs → chunk-HN2JTDN5.cjs} +17 -17
  126. package/dist/{chunk-AOKCI722.cjs → chunk-HNXUZ5OY.cjs} +2 -2
  127. package/dist/{chunk-AUYSIEVV.cjs → chunk-HOYT3E65.cjs} +3 -3
  128. package/dist/{chunk-DMRXF5DU.js → chunk-HTPY5ESD.js} +3 -3
  129. package/dist/chunk-HTU4W3GB.js +183 -0
  130. package/dist/{chunk-3DDL2E55.cjs → chunk-HVLWH2AF.cjs} +10 -10
  131. package/dist/{chunk-HSCUPEA4.cjs → chunk-HZTEU4W5.cjs} +74 -105
  132. package/dist/{chunk-XGMI6IYB.cjs → chunk-I5T7LPFP.cjs} +7 -7
  133. package/dist/{chunk-XIVFAD2L.js → chunk-IB5CJXE7.js} +173 -12
  134. package/dist/chunk-INNXFLDR.cjs +388 -0
  135. package/dist/{chunk-75EDROHL.cjs → chunk-JFLEP3T7.cjs} +10 -10
  136. package/dist/chunk-JJGDOBFL.js +40 -0
  137. package/dist/{chunk-VBOFPU5M.cjs → chunk-JM3ZTQUK.cjs} +13 -9
  138. package/dist/{chunk-HJIXWGQZ.js → chunk-JSU46T6K.js} +1 -1
  139. package/dist/{chunk-AT7OWLY5.js → chunk-K6WN6BT4.js} +1 -1
  140. package/dist/{chunk-LN7D3EJZ.js → chunk-KA2U6MY2.js} +4 -3
  141. package/dist/{chunk-3S563FNF.cjs → chunk-KIQH3SMT.cjs} +34 -31
  142. package/dist/{chunk-BWF4VDYE.js → chunk-KPRXHIE2.js} +54 -85
  143. package/dist/{chunk-Z4LIPMPM.js → chunk-L6OH44HL.js} +13 -9
  144. package/dist/{chunk-A7HHCIDQ.js → chunk-LIO3RX2Z.js} +2 -2
  145. package/dist/{chunk-DLP436GI.js → chunk-LOSXLH7P.js} +110 -17
  146. package/dist/{chunk-IEXKKKOF.cjs → chunk-LSOR72PB.cjs} +23 -23
  147. package/dist/{chunk-IAGCRVJ3.js → chunk-MA3AVDCC.js} +55 -12
  148. package/dist/{chunk-B5CGDNMR.js → chunk-ME3S2WIR.js} +3 -3
  149. package/dist/{chunk-HKYZSUQ5.js → chunk-NC2I2M4P.js} +4 -4
  150. package/dist/{chunk-GBMDFWJX.cjs → chunk-NC4A4LVC.cjs} +13 -13
  151. package/dist/{chunk-E46DJH5S.js → chunk-NGEK5FCJ.js} +176 -3
  152. package/dist/{chunk-TQ33WBY5.cjs → chunk-NHWHEW7M.cjs} +2 -1
  153. package/dist/{chunk-62RTC3XX.js → chunk-NKW6CHXQ.js} +1 -1
  154. package/dist/{chunk-3PXKRVCW.js → chunk-NOWCRKP2.js} +10 -4
  155. package/dist/{chunk-HXJEGMGB.js → chunk-NUB2LMB6.js} +2 -2
  156. package/dist/chunk-NVATU4V6.cjs +44 -0
  157. package/dist/chunk-O246MKIW.cjs +267 -0
  158. package/dist/{chunk-QCHIDZBA.js → chunk-OGFWL2PS.js} +1 -1
  159. package/dist/{chunk-JJ4KA7HK.cjs → chunk-ONNGAR6W.cjs} +415 -551
  160. package/dist/{chunk-TKKN34TV.js → chunk-OOFR6A62.js} +33 -4
  161. package/dist/{chunk-6NVAK6CK.js → chunk-OZ7FHO7J.js} +2 -2
  162. package/dist/{chunk-2CGE7ZV3.cjs → chunk-P5EWGUI2.cjs} +201 -28
  163. package/dist/{chunk-GGLKUENP.js → chunk-P6BQJPAI.js} +191 -14
  164. package/dist/{chunk-TWQDAUZU.js → chunk-PG2JIU5M.js} +60 -7
  165. package/dist/chunk-PI27G2ED.cjs +377 -0
  166. package/dist/{chunk-YV63VW4K.js → chunk-PI7LRPL6.js} +1 -1
  167. package/dist/{chunk-TXPSTCG7.cjs → chunk-PMPEC5HN.cjs} +18 -15
  168. package/dist/{chunk-ROLA6EFO.cjs → chunk-PYUP7AKY.cjs} +14 -14
  169. package/dist/{chunk-BFQDQRDE.js → chunk-QC5Z3ZT5.js} +2 -2
  170. package/dist/chunk-QDO4L2A7.cjs +156 -0
  171. package/dist/{chunk-LFDPTJYF.cjs → chunk-QDXRI5AM.cjs} +1 -1
  172. package/dist/{chunk-3LJJG5YY.cjs → chunk-QLZOMZO5.cjs} +4 -3
  173. package/dist/chunk-QVXMSQOG.js +430 -0
  174. package/dist/{chunk-ZHJ7JGME.cjs → chunk-R4UKBKDY.cjs} +11 -11
  175. package/dist/{chunk-IGMPWJ2I.cjs → chunk-R75AWII3.cjs} +118 -23
  176. package/dist/{chunk-VGEV44V2.cjs → chunk-RD5PLUIX.cjs} +191 -30
  177. package/dist/{chunk-I24CWKKK.js → chunk-RGB34CV5.js} +3 -3
  178. package/dist/{chunk-CHI52KFR.cjs → chunk-RJCZLFHE.cjs} +246 -39
  179. package/dist/{chunk-D2OSPLYC.cjs → chunk-RKWNM2BJ.cjs} +2 -2
  180. package/dist/{chunk-FGT6KK6T.js → chunk-RMVONICR.js} +3 -3
  181. package/dist/{chunk-Q6AC3PHY.cjs → chunk-RPSYRJL7.cjs} +10 -4
  182. package/dist/chunk-RS2E32YB.js +71 -0
  183. package/dist/chunk-RWKU2X7O.js +388 -0
  184. package/dist/chunk-RZLEGVMH.cjs +565 -0
  185. package/dist/{chunk-5F6ZKSHO.js → chunk-S2L3Y677.js} +1 -1
  186. package/dist/{chunk-ARBEHFCG.js → chunk-S7KVUIOS.js} +1 -1
  187. package/dist/{chunk-AC7DZ6SK.cjs → chunk-SACJJ6NO.cjs} +5 -3
  188. package/dist/{chunk-IKUMVBCW.cjs → chunk-SD3NTC7D.cjs} +48 -4
  189. package/dist/{chunk-CBFH2J3O.js → chunk-SJQU2ZFR.js} +246 -39
  190. package/dist/{chunk-GWO66KBI.js → chunk-SKAQKQFF.js} +12 -2
  191. package/dist/chunk-T4DXP5OP.js +30 -0
  192. package/dist/{chunk-CFFE4VA3.js → chunk-T6FTB6K2.js} +1 -1
  193. package/dist/{chunk-U4C3HW6P.js → chunk-T6N6GRFT.js} +13 -10
  194. package/dist/{chunk-D6GZBSOX.js → chunk-TJFKA6A7.js} +82 -3
  195. package/dist/{chunk-2HOLOHVK.js → chunk-TJZUPS4Z.js} +163 -299
  196. package/dist/{chunk-RBZ7AFX7.cjs → chunk-TLKHZ425.cjs} +2 -2
  197. package/dist/{chunk-J2K57QM7.cjs → chunk-TQ24NLXO.cjs} +6 -6
  198. package/dist/{chunk-LUMV3DB2.js → chunk-TWBAU46X.js} +1 -1
  199. package/dist/{chunk-OPNI6O7F.cjs → chunk-TZB5XADL.cjs} +4 -4
  200. package/dist/{chunk-6HH236FV.cjs → chunk-UAYXZXWU.cjs} +4 -4
  201. package/dist/{chunk-MPULXVC4.cjs → chunk-UKBFNBDO.cjs} +11 -11
  202. package/dist/chunk-UMJYX5KD.js +565 -0
  203. package/dist/chunk-USKYTHDL.cjs +235 -0
  204. package/dist/chunk-V4HGZSKQ.cjs +183 -0
  205. package/dist/{chunk-MQESBFBZ.cjs → chunk-VAJUSZMC.cjs} +21 -20
  206. package/dist/{chunk-PQLKJCIE.js → chunk-VGQG4NBJ.js} +2 -2
  207. package/dist/chunk-VLUIVJ3J.js +235 -0
  208. package/dist/chunk-VOBINVMV.cjs +430 -0
  209. package/dist/{chunk-L4F7SUYL.js → chunk-VSHKKCSH.js} +16 -5
  210. package/dist/{chunk-LDJQ5QHG.cjs → chunk-VSZU3MGA.cjs} +28 -17
  211. package/dist/{chunk-YFXTE422.cjs → chunk-VWHAUB77.cjs} +8 -3
  212. package/dist/{chunk-EZJHLOWP.js → chunk-VXGYFX45.js} +20 -7
  213. package/dist/{chunk-JIMSII7R.js → chunk-WH6YUQDB.js} +193 -59
  214. package/dist/{chunk-VKBIE6I6.js → chunk-WQ6TD55V.js} +2 -2
  215. package/dist/{chunk-ZR46OJNZ.js → chunk-WQWECXTY.js} +3 -3
  216. package/dist/{chunk-SOLBYSLY.cjs → chunk-WVDJUJH6.cjs} +2 -2
  217. package/dist/{chunk-QKP772OZ.js → chunk-X24VIVDZ.js} +963 -103
  218. package/dist/{chunk-37M5UM6I.js → chunk-X4NRTLXD.js} +7 -1
  219. package/dist/chunk-X53SHYCG.js +27 -0
  220. package/dist/{chunk-PUD76XQT.cjs → chunk-XB2Z4ZAK.cjs} +5 -5
  221. package/dist/chunk-Y47OJGLB.cjs +27 -0
  222. package/dist/{chunk-WRTXCQ3V.cjs → chunk-Y4MN27V3.cjs} +1080 -220
  223. package/dist/{chunk-ZK6HOR62.js → chunk-YEHFYZFU.js} +7 -2
  224. package/dist/{chunk-FFBDRUO5.cjs → chunk-YICIUY23.cjs} +1 -1
  225. package/dist/{chunk-PDHT7LQS.cjs → chunk-YMXYC777.cjs} +3 -3
  226. package/dist/{chunk-TJNBASFD.cjs → chunk-Z3GRWK6O.cjs} +8 -8
  227. package/dist/{chunk-JP3YHTQ2.cjs → chunk-Z5GG2KSL.cjs} +4 -4
  228. package/dist/{chunk-ZPD2AO3U.js → chunk-ZER7DYQK.js} +2 -2
  229. package/dist/{chunk-UXLW45ZE.cjs → chunk-ZFDXZEZJ.cjs} +25 -90
  230. package/dist/chunk-ZFV4HJA6.js +579 -0
  231. package/dist/chunk-ZHMYTI5D.cjs +529 -0
  232. package/dist/{chunk-CCVMREXI.js → chunk-ZLR2TFBC.js} +35 -8
  233. package/dist/{chunk-J5ADZN6V.cjs → chunk-ZTWNU5QZ.cjs} +20 -20
  234. package/dist/chunk-ZUYYHKQA.js +44 -0
  235. package/dist/{chunk-AUFNACED.js → chunk-ZVLVLDYN.js} +9086 -6621
  236. package/dist/clear-AJGXD2BB.cjs +12 -0
  237. package/dist/{clear-OFLFQ3MR.js → clear-HAHDSWKW.js} +3 -3
  238. package/dist/communityInstaller-IRR6M3N6.cjs +22 -0
  239. package/dist/{communityInstaller-COB2KTOW.js → communityInstaller-OLKEUGMX.js} +6 -6
  240. package/dist/completion-G7Z436TF.cjs +17 -0
  241. package/dist/{completion-PT4VM2H2.js → completion-ZS3AXJ6A.js} +5 -5
  242. package/dist/{config-R4O7GBTY.js → config-OWYAQPCX.js} +5 -3
  243. package/dist/config-W2BHT2QE.cjs +22 -0
  244. package/dist/{constants-HVCHVQAF.js → constants-AS6K67AA.js} +5 -3
  245. package/dist/constants-B4W5BT7F.cjs +23 -0
  246. package/dist/{export-3PK3VFCE.js → export-5HIU3KMD.js} +5 -5
  247. package/dist/export-GFD32UY2.cjs +15 -0
  248. package/dist/{extractSessionMemories-A2JX5WJ2.js → extractSessionMemories-K6ZVAW2F.js} +1 -1
  249. package/dist/{extractSessionMemories-XL3MS37F.cjs → extractSessionMemories-LLOIJR5U.cjs} +2 -2
  250. package/dist/feature-KP74CZ3F.cjs +14 -0
  251. package/dist/feature-OPNVMB2E.js +14 -0
  252. package/dist/features-LT55MURX.cjs +24 -0
  253. package/dist/features-ZDIU26WX.js +24 -0
  254. package/dist/feedback-7WTJFQ6S.js +18 -0
  255. package/dist/feedback-CEOJ3453.cjs +18 -0
  256. package/dist/go-2CY5SZNR.js +16 -0
  257. package/dist/go-O2CSQON4.cjs +16 -0
  258. package/dist/goal-DL2N2AWT.cjs +16 -0
  259. package/dist/goal-IJS7VZSG.js +16 -0
  260. package/dist/help-RNOGDEBA.cjs +12 -0
  261. package/dist/{help-X3OAZ3CY.js → help-TCWD2IRH.js} +2 -2
  262. package/dist/{history-YKFPHBJN.js → history-ATOR5OQV.js} +2 -2
  263. package/dist/history-UUSGX2AL.cjs +14 -0
  264. package/dist/{hooks-7TA4PIIB.js → hooks-R3Z5QKUP.js} +6 -6
  265. package/dist/hooks-RWM5UY67.cjs +18 -0
  266. package/dist/{i18n-2KBUU7XL.js → i18n-4QI4TD4I.js} +1 -1
  267. package/dist/i18n-MFAEU5RV.cjs +33 -0
  268. package/dist/ide-6PBTCCUQ.js +15 -0
  269. package/dist/ide-UE3G7NMQ.cjs +15 -0
  270. package/dist/{import-I7T4ZHYL.cjs → import-2IG76KAN.cjs} +6 -4
  271. package/dist/{import-JWPYKXCZ.js → import-E47QL4DW.js} +2 -2
  272. package/dist/import-NQDNBFUL.cjs +10 -0
  273. package/dist/{import-4CHYLS4K.js → import-VQIHGJWS.js} +6 -4
  274. package/dist/index.cjs +512 -305
  275. package/dist/index.d.cts +40 -0
  276. package/dist/index.d.ts +40 -0
  277. package/dist/index.js +402 -195
  278. package/dist/init-DX3RDGDT.cjs +10 -0
  279. package/dist/{init-262MWZV4.js → init-Q54OAAFZ.js} +2 -2
  280. package/dist/{inputPrompt-YGBHDUEP.js → inputPrompt-V2VBDRM7.js} +3 -3
  281. package/dist/inputPrompt-WVGVWAHS.cjs +90 -0
  282. package/dist/language-I6KXAOXD.js +23 -0
  283. package/dist/language-XMIVOH5E.cjs +23 -0
  284. package/dist/learn-JPVVGTKU.js +23 -0
  285. package/dist/learn-NLSHI2MZ.cjs +23 -0
  286. package/dist/login-NABQYLYC.cjs +28 -0
  287. package/dist/login-XPOVFSWN.js +28 -0
  288. package/dist/logout-HNHCGB4Q.js +25 -0
  289. package/dist/logout-SKGDXJSW.cjs +25 -0
  290. package/dist/{mcp-5O6PUL4G.js → mcp-EN73YFGZ.js} +8 -6
  291. package/dist/mcp-TADZCPJQ.cjs +22 -0
  292. package/dist/{mcp-install-P6DHES7V.cjs → mcp-install-2GKWWBAS.cjs} +15 -13
  293. package/dist/{mcp-install-6XWXLFVY.js → mcp-install-3TBTVSHW.js} +10 -8
  294. package/dist/memory-GRXFTDIN.cjs +10 -0
  295. package/dist/{memory-Q54CESNM.js → memory-K2P3CDCH.js} +2 -2
  296. package/dist/{model-6AJ77PJG.js → model-DEG22OWA.js} +2 -2
  297. package/dist/model-OSD74T7Z.cjs +10 -0
  298. package/dist/new-4NWBOATU.cjs +12 -0
  299. package/dist/{new-ZXHEWC2S.js → new-KJAP2MB6.js} +3 -3
  300. package/dist/onboarding-2U5WE2OA.js +39 -0
  301. package/dist/onboarding-5DZFCO5Q.cjs +39 -0
  302. package/dist/permissions-KY5I6YQ3.cjs +10 -0
  303. package/dist/{permissions-YHJMVA6L.js → permissions-TKYON7PP.js} +2 -2
  304. package/dist/{plan-YYUAXPTL.js → plan-DYHHLZSS.js} +1 -1
  305. package/dist/plan-PYKP652W.cjs +13 -0
  306. package/dist/quit-GSKJL42O.js +14 -0
  307. package/dist/quit-TQSRTBUT.cjs +14 -0
  308. package/dist/{registry-34GL6BNJ.js → registry-EZ4V4TUQ.js} +1339 -1
  309. package/dist/{registry-V24W7YK6.cjs → registry-LCWYI4IB.cjs} +1378 -40
  310. package/dist/resume-4VWJXARX.cjs +17 -0
  311. package/dist/resume-TLHWWWFN.js +17 -0
  312. package/dist/{review-QHP2KP4Q.js → review-CSK4IYTO.js} +1 -1
  313. package/dist/review-XLJEUH5K.cjs +9 -0
  314. package/dist/{rpc-S3DGW6KV.js → rpc-3DLQBDWU.js} +301 -130
  315. package/dist/{rpc-NPS3PU4O.cjs → rpc-O36WUU3L.cjs} +399 -228
  316. package/dist/search-DSX2CY4A.cjs +22 -0
  317. package/dist/search-I3QUDUQL.js +22 -0
  318. package/dist/sessionBranching-DVNOUWJT.cjs +19 -0
  319. package/dist/sessionBranching-FKV4CR36.js +19 -0
  320. package/dist/sessions-3JUOT3ED.cjs +10 -0
  321. package/dist/{sessions-IYAXMK23.js → sessions-VWMDIPOS.js} +2 -2
  322. package/dist/settings-FT2LZZUV.js +45 -0
  323. package/dist/settings-RL4KNWHB.cjs +45 -0
  324. package/dist/setup-HQEJVOYT.js +32 -0
  325. package/dist/setup-MN54LKOL.cjs +32 -0
  326. package/dist/share-BUAFZNBX.cjs +17 -0
  327. package/dist/share-CGB6MAVJ.js +17 -0
  328. package/dist/skills/builtin/code-reviewer/SKILL.md +64 -0
  329. package/dist/skills/builtin/goal-writer/SKILL.md +124 -0
  330. package/dist/{skills-VWOMV3CR.js → skills-7DKR3HRZ.js} +8 -8
  331. package/dist/{skills-MVIZNHT4.js → skills-BBBENOEY.js} +9 -9
  332. package/dist/skills-OQM7IHAF.cjs +29 -0
  333. package/dist/{skills-GGMZOVIE.cjs → skills-RA2PKL63.cjs} +10 -10
  334. package/dist/{skills-install-VTAMCNNY.cjs → skills-install-D7K476SL.cjs} +16 -16
  335. package/dist/{skills-install-QBA5RCV6.js → skills-install-T4SOKJSL.js} +9 -9
  336. package/dist/skills-new-S33NGEU3.js +18 -0
  337. package/dist/skills-new-UVYH53MD.cjs +18 -0
  338. package/dist/slashCommands-MWOUDSQP.js +111 -0
  339. package/dist/slashCommands-XASURUTV.cjs +111 -0
  340. package/dist/squad-PIIYDFVH.cjs +15 -0
  341. package/dist/squad-VHYOVEJP.js +15 -0
  342. package/dist/status-GHFTXQBL.js +25 -0
  343. package/dist/status-WXMIJIU3.cjs +25 -0
  344. package/dist/statusline-2K7AC6ZQ.js +21 -0
  345. package/dist/statusline-GROI4HOC.cjs +21 -0
  346. package/dist/sync-254WF6JI.cjs +42 -0
  347. package/dist/sync-2DIZN4EH.cjs +24 -0
  348. package/dist/{sync-7BILIQHP.js → sync-J6I2ZUKQ.js} +6 -4
  349. package/dist/{sync-7OKF6636.js → sync-Z3LVSEEV.js} +8 -5
  350. package/dist/{teammate-J6PHGL23.cjs → teammate-EXR76PEQ.cjs} +9 -8
  351. package/dist/{teammate-GZQSCIMS.js → teammate-K4DAOFEQ.js} +8 -7
  352. package/dist/templates-ARG2VRWW.cjs +11 -0
  353. package/dist/templates-UGVZV3KJ.js +11 -0
  354. package/dist/theme-MVQDSU47.js +23 -0
  355. package/dist/theme-QAKEYWJG.cjs +23 -0
  356. package/dist/ui/questionModal.cjs +6 -6
  357. package/dist/ui/questionModal.js +5 -5
  358. package/dist/{undo-SZEHLX7X.js → undo-5AU47JHF.js} +2 -2
  359. package/dist/undo-ME6WKUXZ.cjs +10 -0
  360. package/dist/usage-QTKO2YMD.js +25 -0
  361. package/dist/usage-TYNJKVER.cjs +25 -0
  362. package/package.json +10 -4
  363. package/dist/AgentRegistry-EGBDIUAK.cjs +0 -10
  364. package/dist/AgentRegistry-XPWSVO3Q.js +0 -10
  365. package/dist/CommunitySkillsCache-2OIUV227.cjs +0 -8
  366. package/dist/LearnAdvisor-46FG2XIP.js +0 -9
  367. package/dist/LearnAdvisor-XBRDNAGH.cjs +0 -9
  368. package/dist/MemoryManager-34L4YOKA.cjs +0 -8
  369. package/dist/MemoryManager-WJMLPWGU.js +0 -8
  370. package/dist/NVIDIAProvider-MVTL62PR.cjs +0 -14
  371. package/dist/PermissionManager-5OOJ7FAT.cjs +0 -11
  372. package/dist/ProviderFactory-C3YPXTDD.cjs +0 -11
  373. package/dist/SessionManager-WAPTFMDO.cjs +0 -10
  374. package/dist/SkillsRegistry-7AJP74GJ.cjs +0 -9
  375. package/dist/SubAgent-FDIH3DXB.js +0 -11
  376. package/dist/SubAgent-HVL2ICVZ.cjs +0 -11
  377. package/dist/SyncApiClient-VMBOLQ6H.cjs +0 -11
  378. package/dist/about-FCAX37YC.cjs +0 -14
  379. package/dist/actionExecutor-33I47NZS.js +0 -24
  380. package/dist/actionExecutor-4YBMR3YH.cjs +0 -24
  381. package/dist/add-dir-7SS6KSH5.cjs +0 -11
  382. package/dist/agent-DMRUFU4M.cjs +0 -116
  383. package/dist/agent-WCJEYQJT.js +0 -116
  384. package/dist/agents-CHROO3VU.cjs +0 -17
  385. package/dist/agents-UVDUL65K.js +0 -17
  386. package/dist/agents-new-AUBWSOXP.js +0 -17
  387. package/dist/agents-new-Y562WC47.cjs +0 -17
  388. package/dist/autoSkill-YOLLFTP2.cjs +0 -20
  389. package/dist/automode-DBLKTTKD.cjs +0 -10
  390. package/dist/chrome-ATC4OO5I.cjs +0 -20
  391. package/dist/chrome-O62WXV7F.js +0 -20
  392. package/dist/chrome-XHJLCO4M.cjs +0 -50
  393. package/dist/chunk-6XVVIY54.cjs +0 -256
  394. package/dist/chunk-AU6JAGZJ.cjs +0 -231
  395. package/dist/chunk-N6O3XUZ2.cjs +0 -23
  396. package/dist/chunk-VDWJMWDF.js +0 -256
  397. package/dist/clear-33TWQ2ES.cjs +0 -12
  398. package/dist/communityInstaller-TWMGPSYM.cjs +0 -22
  399. package/dist/completion-IIZMHXYP.cjs +0 -17
  400. package/dist/config-KL6WU7R2.cjs +0 -20
  401. package/dist/constants-RLMJ5D5P.cjs +0 -21
  402. package/dist/export-WLGNWEMJ.cjs +0 -15
  403. package/dist/feedback-G635NCLJ.js +0 -18
  404. package/dist/feedback-LLMK3TZH.cjs +0 -18
  405. package/dist/help-BAXLP2M2.cjs +0 -12
  406. package/dist/history-6HOJSEMT.cjs +0 -14
  407. package/dist/hooks-XVFU67T2.cjs +0 -18
  408. package/dist/i18n-MUJMKTFM.cjs +0 -33
  409. package/dist/ide-CCQ33PGC.cjs +0 -15
  410. package/dist/ide-VLVFBZ5F.js +0 -15
  411. package/dist/import-J46F54JY.cjs +0 -10
  412. package/dist/init-EE5Y7RBL.cjs +0 -10
  413. package/dist/inputPrompt-IIFKCX5Q.cjs +0 -90
  414. package/dist/language-CVLPB7OV.js +0 -21
  415. package/dist/language-ZTWFHUSV.cjs +0 -21
  416. package/dist/learn-PON7I5QS.js +0 -23
  417. package/dist/learn-XLRSVNA3.cjs +0 -23
  418. package/dist/login-223QTGBG.cjs +0 -26
  419. package/dist/login-6IKTBUBY.js +0 -26
  420. package/dist/logout-RN2AG6SI.js +0 -23
  421. package/dist/logout-U3M4FFX7.cjs +0 -23
  422. package/dist/mcp-NUQ76QQB.cjs +0 -20
  423. package/dist/memory-CYMDQ2YC.cjs +0 -10
  424. package/dist/model-IDRCKDML.cjs +0 -10
  425. package/dist/new-7LEWOUF2.cjs +0 -12
  426. package/dist/onboarding-FXX7YHSJ.cjs +0 -35
  427. package/dist/onboarding-JYNMK6NI.js +0 -35
  428. package/dist/permissions-YBNSANIA.cjs +0 -10
  429. package/dist/plan-XEJMOT55.cjs +0 -13
  430. package/dist/quit-B43SJ6E4.cjs +0 -10
  431. package/dist/quit-GWTNHQSP.js +0 -10
  432. package/dist/resume-DYVOQN5L.cjs +0 -16
  433. package/dist/resume-M25UQKOX.js +0 -16
  434. package/dist/review-UWHWQHCB.cjs +0 -9
  435. package/dist/search-CPX4PWHP.js +0 -20
  436. package/dist/search-VUF3M4N3.cjs +0 -20
  437. package/dist/sessions-JODKER5D.cjs +0 -10
  438. package/dist/settings-55BNW6BF.js +0 -33
  439. package/dist/settings-BKTS7OMC.cjs +0 -33
  440. package/dist/setup-IRC5HQG2.js +0 -29
  441. package/dist/setup-MMQ7TWOP.cjs +0 -29
  442. package/dist/share-6JRQECAH.cjs +0 -17
  443. package/dist/share-YM5MJKMO.js +0 -17
  444. package/dist/skills-LWSOKOSH.cjs +0 -29
  445. package/dist/skills-new-GPL46YV2.js +0 -18
  446. package/dist/skills-new-L5BEZN5V.cjs +0 -18
  447. package/dist/slashCommands-FBPCIWM5.cjs +0 -95
  448. package/dist/slashCommands-FCWY5DXW.js +0 -95
  449. package/dist/status-3B5SDZPL.js +0 -17
  450. package/dist/status-TTGRF6NC.cjs +0 -17
  451. package/dist/sync-77CXVVTK.cjs +0 -21
  452. package/dist/sync-EH4K5U3N.cjs +0 -40
  453. package/dist/theme-64BYGJ57.cjs +0 -21
  454. package/dist/theme-YJE6HEON.js +0 -21
  455. package/dist/undo-PRTEGL2J.cjs +0 -10
@@ -0,0 +1,565 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+
4
+
5
+ var _chunkV4HGZSKQcjs = require('./chunk-V4HGZSKQ.cjs');
6
+
7
+
8
+ var _chunk3JURXAL6cjs = require('./chunk-3JURXAL6.cjs');
9
+
10
+ // src/goals/GoalManager.ts
11
+ var _crypto = require('crypto'); var _crypto2 = _interopRequireDefault(_crypto);
12
+ var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsextra);
13
+ var _path = require('path'); var _path2 = _interopRequireDefault(_path);
14
+
15
+ // src/goals/queueBlockParser.ts
16
+ function parseQueueBlockItems(input) {
17
+ const lines = input.split(/\r?\n/);
18
+ const items = [];
19
+ for (let i = 0; i < lines.length; i++) {
20
+ const trimmed = lines[i].trim();
21
+ const bracket = trimmed.match(/^\[(\d+)\]\s+(.+)$/);
22
+ const numbered = trimmed.match(/^(\d+)[.)]\s+(.+)$/);
23
+ const match = _nullishCoalesce(bracket, () => ( numbered));
24
+ if (!match) continue;
25
+ items.push({
26
+ marker: match[1],
27
+ objectiveInput: match[2].trim(),
28
+ lineIndex: i
29
+ });
30
+ }
31
+ return items.length > 1 ? items : null;
32
+ }
33
+
34
+ // src/goals/GoalManager.ts
35
+ var GOAL_STATE_FILE = "goals.local.json";
36
+ var MAX_OBJECTIVE_LENGTH = 8e4;
37
+ var GoalManager = class {
38
+ constructor(workspaceRoot) {
39
+ this.workspaceRoot = workspaceRoot;
40
+ }
41
+
42
+ async getSnapshot() {
43
+ const snapshot = await this.readSnapshot();
44
+ const goal = snapshot.goal ? this.withLiveElapsed(snapshot.goal) : null;
45
+ return { ...snapshot, goal };
46
+ }
47
+ async listTemplates() {
48
+ return _chunkV4HGZSKQcjs.listGoalTemplateMetadata.call(void 0, this.workspaceRoot);
49
+ }
50
+ async resolveObjective(input) {
51
+ const resolution = await _chunkV4HGZSKQcjs.resolveGoalTemplateInvocation.call(void 0, input, this.workspaceRoot);
52
+ if (resolution.ok) {
53
+ return {
54
+ ok: true,
55
+ input: { objective: resolution.template.objective },
56
+ template: resolution.template.name,
57
+ templateFlags: resolution.template.flags,
58
+ templateArgs: resolution.template.args
59
+ };
60
+ }
61
+ if ("notTemplate" in resolution) return { ok: true, input: { objective: input } };
62
+ return { ok: false, message: resolution.error };
63
+ }
64
+ async createGoal(input, opts = {}) {
65
+ const snapshot = await this.readSnapshot();
66
+ const validation = validateGoalInput(input);
67
+ if (validation) return result(snapshot, false, validation);
68
+ if (snapshot.goal && snapshot.goal.status !== "complete" && !opts.replace) {
69
+ return result(snapshot, false, "A goal already exists. Clear it, complete it, or queue the new objective before replacing it.");
70
+ }
71
+ const now = Date.now();
72
+ const goal = {
73
+ goalId: _crypto2.default.randomUUID(),
74
+ objective: input.objective.trim(),
75
+ status: "active",
76
+ tokenBudget: input.tokenBudget,
77
+ timeBudgetSeconds: input.timeBudgetSeconds,
78
+ minTokensBeforeWrapUp: input.minTokensBeforeWrapUp,
79
+ minTimeSecondsBeforeWrapUp: input.minTimeSecondsBeforeWrapUp,
80
+ tokensUsed: 0,
81
+ timeUsedSeconds: 0,
82
+ createdAt: now,
83
+ updatedAt: now
84
+ };
85
+ const next = { ...snapshot, goal, updatedAt: now };
86
+ await this.writeSnapshot(next);
87
+ return result(next, true, _optionalChain([snapshot, 'access', _ => _.goal, 'optionalAccess', _2 => _2.status]) === "complete" ? "Goal created; replaced completed goal." : "Goal created.");
88
+ }
89
+ async createOrQueueGoal(input) {
90
+ const snapshot = await this.readSnapshot();
91
+ const current = snapshot.goal ? this.withLiveElapsed(snapshot.goal) : null;
92
+ if (current && current.status !== "complete" && current.status !== "budgetLimited") {
93
+ return this.enqueueGoal(input);
94
+ }
95
+ return this.createGoal(input);
96
+ }
97
+ async updateGoal(input) {
98
+ const snapshot = await this.readSnapshot();
99
+ const current = snapshot.goal ? this.withLiveElapsed(snapshot.goal) : null;
100
+ if (!current) return result(snapshot, false, "No goal exists to update.");
101
+ let next = { ...current };
102
+ const changes = [];
103
+ if (input.objective !== void 0) {
104
+ const objective = input.objective.trim();
105
+ if (!objective) return result(snapshot, false, "objective must be non-empty.");
106
+ if (objective.length > MAX_OBJECTIVE_LENGTH) return result(snapshot, false, `objective is too long (max ${MAX_OBJECTIVE_LENGTH} characters).`);
107
+ next = { ...next, objective };
108
+ changes.push("objective");
109
+ }
110
+ const budgetError = applyOptionalPositiveInteger(input.tokenBudget, (value) => {
111
+ next = { ...next, tokenBudget: value };
112
+ changes.push("token budget");
113
+ });
114
+ if (budgetError) return result(snapshot, false, budgetError);
115
+ const timeBudgetError = applyOptionalPositiveInteger(input.timeBudgetSeconds, (value) => {
116
+ next = { ...next, timeBudgetSeconds: value };
117
+ changes.push("time budget");
118
+ });
119
+ if (timeBudgetError) return result(snapshot, false, timeBudgetError);
120
+ const minTokensError = applyOptionalPositiveInteger(input.minTokensBeforeWrapUp, (value) => {
121
+ next = { ...next, minTokensBeforeWrapUp: value };
122
+ changes.push("token floor");
123
+ });
124
+ if (minTokensError) return result(snapshot, false, minTokensError);
125
+ const minTimeError = applyOptionalPositiveInteger(input.minTimeSecondsBeforeWrapUp, (value) => {
126
+ next = { ...next, minTimeSecondsBeforeWrapUp: value };
127
+ changes.push("time floor");
128
+ });
129
+ if (minTimeError) return result(snapshot, false, minTimeError);
130
+ const floorError = validateFloors(next);
131
+ if (floorError) return result(snapshot, false, floorError);
132
+ if (input.status !== void 0) {
133
+ if (!["active", "paused", "complete", "budgetLimited"].includes(input.status)) {
134
+ return result(snapshot, false, "status must be active, paused, complete, or budgetLimited.");
135
+ }
136
+ if (input.status === "complete" && !floorMet(next)) {
137
+ return result(snapshot, false, "Completion floor is not met yet. Keep working, raise the floor, or clear the goal if the user explicitly wants to stop.");
138
+ }
139
+ next = transitionStatus(next, input.status);
140
+ changes.push(`status ${input.status}`);
141
+ }
142
+ if (next.status === "active" && budgetLimitReason(next)) {
143
+ return result(snapshot, false, "Cannot resume: budget is exhausted. Raise the budget or clear the goal before resuming.");
144
+ }
145
+ if (changes.length === 0) return result(snapshot, false, "No goal updates were provided.");
146
+ if (next.status === "complete") {
147
+ if (current.status === "complete") return result({ ...snapshot, goal: current }, false, "Goal is already complete.");
148
+ const completedGoal = buildCompletedGoal(next, Date.now());
149
+ const completedRun = appendCompletedGoal(snapshot.completed, completedGoal);
150
+ const nextQueued = snapshot.queue[0];
151
+ if (nextQueued) {
152
+ const started = await this.startQueuedGoalFromSnapshot({
153
+ ...snapshot,
154
+ goal: next,
155
+ completed: completedRun
156
+ }, nextQueued);
157
+ if (!started.ok) return started;
158
+ return {
159
+ ...started,
160
+ message: "Goal completed. Started next queued goal.",
161
+ completed: completedGoal,
162
+ completedRun
163
+ };
164
+ }
165
+ next = { ...next, updatedAt: Date.now() };
166
+ const updated2 = {
167
+ ...snapshot,
168
+ goal: next,
169
+ completed: completedRun,
170
+ updatedAt: next.updatedAt
171
+ };
172
+ await this.writeSnapshot(updated2);
173
+ return result(updated2, true, formatAllCompleteMessage(completedRun), {
174
+ completed: completedGoal,
175
+ completedRun
176
+ });
177
+ }
178
+ next = { ...next, updatedAt: Date.now() };
179
+ const updated = { ...snapshot, goal: next, updatedAt: next.updatedAt };
180
+ await this.writeSnapshot(updated);
181
+ return result(updated, true, `Goal updated: ${changes.join(", ")}.`);
182
+ }
183
+ async clearGoal() {
184
+ const snapshot = await this.readSnapshot();
185
+ const next = { ...snapshot, goal: null, updatedAt: Date.now() };
186
+ await this.writeSnapshot(next);
187
+ return result(next, true, snapshot.goal ? "Goal cleared." : "No goal was set.");
188
+ }
189
+ async enqueueGoal(input) {
190
+ const snapshot = await this.readSnapshot();
191
+ const validation = validateGoalInput(input);
192
+ if (validation) return result(snapshot, false, validation);
193
+ const queued = buildQueuedGoal(input);
194
+ const next = { ...snapshot, queue: [...snapshot.queue, queued], updatedAt: Date.now() };
195
+ await this.writeSnapshot(next);
196
+ return { ...result(next, true, "Queued goal."), queued: [queued] };
197
+ }
198
+ async enqueueGoalBlock(input, source) {
199
+ const snapshot = await this.readSnapshot();
200
+ const items = parseQueueBlockItems(input);
201
+ if (!items) return this.enqueueResolvedGoalInput(input, source);
202
+ const queued = [];
203
+ for (const item of items) {
204
+ const resolved = await this.resolveObjective(item.objectiveInput);
205
+ if (!resolved.ok) return result(snapshot, false, `Queue item ${item.marker} could not be resolved: ${resolved.message}`);
206
+ const validation = validateGoalInput(resolved.input);
207
+ if (validation) return result(snapshot, false, `Queue item ${item.marker}: ${validation}`);
208
+ queued.push(buildQueuedGoal({
209
+ ...resolved.input,
210
+ source,
211
+ template: resolved.template,
212
+ templateFlags: resolved.templateFlags,
213
+ templateArgs: resolved.templateArgs
214
+ }));
215
+ }
216
+ const next = { ...snapshot, queue: [...snapshot.queue, ...queued], updatedAt: Date.now() };
217
+ await this.writeSnapshot(next);
218
+ return { ...result(next, true, `Queued ${queued.length} goals.`), queued };
219
+ }
220
+ async enqueueResolvedGoalInput(input, source) {
221
+ const resolved = await this.resolveObjective(input);
222
+ if (!resolved.ok) {
223
+ const snapshot = await this.readSnapshot();
224
+ return result(snapshot, false, resolved.message);
225
+ }
226
+ return this.enqueueGoal({
227
+ ...resolved.input,
228
+ source,
229
+ template: resolved.template,
230
+ templateFlags: resolved.templateFlags,
231
+ templateArgs: resolved.templateArgs
232
+ });
233
+ }
234
+ async startQueuedGoal() {
235
+ const snapshot = await this.readSnapshot();
236
+ const current = snapshot.goal ? this.withLiveElapsed(snapshot.goal) : null;
237
+ if (current && current.status !== "complete" && current.status !== "budgetLimited") {
238
+ return result({ ...snapshot, goal: current }, false, "A non-terminal goal is already active. The queued goal was left in the queue.");
239
+ }
240
+ const nextQueued = snapshot.queue[0];
241
+ if (!nextQueued) return result({ ...snapshot, goal: current }, false, "No queued goals.");
242
+ const snapshotWithTerminalHistory = current && (current.status === "complete" || current.status === "budgetLimited") ? {
243
+ ...snapshot,
244
+ goal: current,
245
+ completed: appendCompletedGoal(snapshot.completed, buildCompletedGoal(current, Date.now()))
246
+ } : { ...snapshot, goal: current };
247
+ return this.startQueuedGoalFromSnapshot(snapshotWithTerminalHistory, nextQueued);
248
+ }
249
+ async startQueuedGoalFromSnapshot(snapshot, nextQueued) {
250
+ let objective = nextQueued.objective;
251
+ if (nextQueued.template) {
252
+ const resolved = await _chunkV4HGZSKQcjs.resolveGoalTemplateByName.call(void 0, this.workspaceRoot, nextQueued.template, _nullishCoalesce(nextQueued.templateFlags, () => ( {})), _nullishCoalesce(nextQueued.templateArgs, () => ( "")));
253
+ if (!resolved.ok) return result(snapshot, false, "notTemplate" in resolved ? `Unknown goal template '${nextQueued.template}'.` : resolved.error);
254
+ objective = resolved.template.objective;
255
+ }
256
+ const now = Date.now();
257
+ const goal = {
258
+ goalId: _crypto2.default.randomUUID(),
259
+ objective,
260
+ status: "active",
261
+ tokenBudget: nextQueued.tokenBudget,
262
+ timeBudgetSeconds: nextQueued.timeBudgetSeconds,
263
+ minTokensBeforeWrapUp: nextQueued.minTokensBeforeWrapUp,
264
+ minTimeSecondsBeforeWrapUp: nextQueued.minTimeSecondsBeforeWrapUp,
265
+ tokensUsed: 0,
266
+ timeUsedSeconds: 0,
267
+ createdAt: now,
268
+ updatedAt: now
269
+ };
270
+ const updated = { ...snapshot, goal, queue: snapshot.queue.slice(1), updatedAt: now };
271
+ await this.writeSnapshot(updated);
272
+ return { ...result(updated, true, "Started queued goal."), started: nextQueued, dequeued: nextQueued };
273
+ }
274
+ async dequeueGoal(audit) {
275
+ const snapshot = await this.readSnapshot();
276
+ if (!_optionalChain([audit, 'optionalAccess', _3 => _3.rationale, 'optionalAccess', _4 => _4.trim, 'call', _5 => _5()]) || !_optionalChain([audit, 'access', _6 => _6.authority, 'optionalAccess', _7 => _7.trim, 'call', _8 => _8()])) {
277
+ return result(snapshot, false, "rationale and authority are required to dequeue a queued goal.");
278
+ }
279
+ const dequeued = snapshot.queue[0];
280
+ if (!dequeued) return result(snapshot, false, "No queued goals.");
281
+ const next = { ...snapshot, queue: snapshot.queue.slice(1), updatedAt: Date.now() };
282
+ await this.writeSnapshot(next);
283
+ return { ...result(next, true, "Dequeued goal."), dequeued };
284
+ }
285
+ async removeQueuedGoal(queueId) {
286
+ const snapshot = await this.readSnapshot();
287
+ const removed = snapshot.queue.find((item) => item.queueId === queueId);
288
+ if (!removed) return result(snapshot, false, `No queued goal found with id ${queueId}.`);
289
+ const next = { ...snapshot, queue: snapshot.queue.filter((item) => item.queueId !== queueId), updatedAt: Date.now() };
290
+ await this.writeSnapshot(next);
291
+ return { ...result(next, true, "Removed queued goal."), removed };
292
+ }
293
+ async recordTurnUsage(input) {
294
+ const snapshot = await this.readSnapshot();
295
+ if (!snapshot.goal) return result(snapshot, true, "No active goal.");
296
+ let goal = this.withLiveElapsed(snapshot.goal);
297
+ goal = {
298
+ ...goal,
299
+ tokensUsed: goal.tokensUsed + Math.max(0, Math.floor(_nullishCoalesce(input.tokensUsed, () => ( 0)))),
300
+ updatedAt: Date.now()
301
+ };
302
+ const limitReason = budgetLimitReason(goal);
303
+ if (limitReason) {
304
+ goal = transitionStatus(goal, "budgetLimited");
305
+ }
306
+ const next = { ...snapshot, goal, updatedAt: goal.updatedAt };
307
+ await this.writeSnapshot(next);
308
+ return result(next, true, limitReason ? `Goal budget limited: ${limitReason}.` : "Goal usage recorded.");
309
+ }
310
+ formatSnapshot(snapshot) {
311
+ const lines = [];
312
+ if (!snapshot.goal) {
313
+ lines.push("No goal is currently set.");
314
+ } else {
315
+ const goal = snapshot.goal;
316
+ lines.push(`Goal ${goal.goalId}`);
317
+ lines.push(`Status: ${goal.status}`);
318
+ lines.push(`Objective: ${goal.objective}`);
319
+ lines.push(`Elapsed: ${formatDuration(goal.timeUsedSeconds)}`);
320
+ lines.push(`Tokens: ${goal.tokensUsed}${goal.tokenBudget ? ` / ${goal.tokenBudget}` : ""}`);
321
+ if (goal.timeBudgetSeconds) lines.push(`Time budget: ${formatDuration(goal.timeBudgetSeconds)}`);
322
+ if (goal.minTokensBeforeWrapUp) lines.push(`Token floor: ${goal.minTokensBeforeWrapUp}`);
323
+ if (goal.minTimeSecondsBeforeWrapUp) lines.push(`Time floor: ${formatDuration(goal.minTimeSecondsBeforeWrapUp)}`);
324
+ }
325
+ if (snapshot.queue.length > 0) {
326
+ lines.push("");
327
+ lines.push(`Queued goals (${snapshot.queue.length}):`);
328
+ snapshot.queue.forEach((item, index) => {
329
+ lines.push(`${index + 1}. [${item.queueId}] ${truncate(item.objective, 120)}`);
330
+ });
331
+ }
332
+ if (snapshot.completed.length > 0) {
333
+ lines.push("");
334
+ lines.push(formatCompletedSummary(snapshot.completed));
335
+ }
336
+ return lines.join("\n");
337
+ }
338
+ async readSnapshot() {
339
+ const filePath = this.statePath();
340
+ if (!await _fsextra2.default.pathExists(filePath)) {
341
+ return emptySnapshot();
342
+ }
343
+ try {
344
+ const raw = await _fsextra2.default.readJson(filePath);
345
+ return normalizeSnapshot(raw);
346
+ } catch (e) {
347
+ return emptySnapshot();
348
+ }
349
+ }
350
+ async writeSnapshot(snapshot) {
351
+ await _fsextra2.default.ensureDir(_path2.default.dirname(this.statePath()));
352
+ await _fsextra2.default.writeJson(this.statePath(), snapshot, { spaces: 2 });
353
+ }
354
+ statePath() {
355
+ return _path2.default.join(this.workspaceRoot, _chunk3JURXAL6cjs.PROJECT_DIR_NAME, GOAL_STATE_FILE);
356
+ }
357
+ withLiveElapsed(goal) {
358
+ if (goal.status !== "active") return goal;
359
+ const elapsedDelta = Math.max(0, Math.floor((Date.now() - goal.updatedAt) / 1e3));
360
+ return { ...goal, timeUsedSeconds: goal.timeUsedSeconds + elapsedDelta };
361
+ }
362
+ };
363
+ function emptySnapshot() {
364
+ return { version: 1, goal: null, queue: [], completed: [], updatedAt: Date.now() };
365
+ }
366
+ function normalizeSnapshot(raw) {
367
+ return {
368
+ version: 1,
369
+ goal: normalizeGoal(raw.goal),
370
+ queue: Array.isArray(raw.queue) ? raw.queue.map(normalizeQueuedGoal).filter((item) => Boolean(item)) : [],
371
+ completed: Array.isArray(raw.completed) ? raw.completed.map(normalizeCompletedGoal).filter((item) => Boolean(item)) : [],
372
+ updatedAt: typeof raw.updatedAt === "number" ? raw.updatedAt : Date.now()
373
+ };
374
+ }
375
+ function normalizeGoal(value) {
376
+ if (!value || typeof value !== "object") return null;
377
+ const raw = value;
378
+ if (typeof raw.goalId !== "string" || typeof raw.objective !== "string" || !isGoalStatus(raw.status)) return null;
379
+ return {
380
+ goalId: raw.goalId,
381
+ objective: raw.objective,
382
+ status: raw.status,
383
+ tokenBudget: positiveInteger(raw.tokenBudget),
384
+ timeBudgetSeconds: positiveInteger(raw.timeBudgetSeconds),
385
+ minTokensBeforeWrapUp: positiveInteger(raw.minTokensBeforeWrapUp),
386
+ minTimeSecondsBeforeWrapUp: positiveInteger(raw.minTimeSecondsBeforeWrapUp),
387
+ tokensUsed: _nullishCoalesce(positiveInteger(raw.tokensUsed), () => ( 0)),
388
+ timeUsedSeconds: _nullishCoalesce(positiveInteger(raw.timeUsedSeconds), () => ( 0)),
389
+ createdAt: typeof raw.createdAt === "number" ? raw.createdAt : Date.now(),
390
+ updatedAt: typeof raw.updatedAt === "number" ? raw.updatedAt : Date.now()
391
+ };
392
+ }
393
+ function normalizeQueuedGoal(value) {
394
+ if (!value || typeof value !== "object") return null;
395
+ const raw = value;
396
+ if (typeof raw.queueId !== "string" || typeof raw.objective !== "string") return null;
397
+ return {
398
+ queueId: raw.queueId,
399
+ objective: raw.objective,
400
+ tokenBudget: positiveInteger(raw.tokenBudget),
401
+ timeBudgetSeconds: positiveInteger(raw.timeBudgetSeconds),
402
+ minTokensBeforeWrapUp: positiveInteger(raw.minTokensBeforeWrapUp),
403
+ minTimeSecondsBeforeWrapUp: positiveInteger(raw.minTimeSecondsBeforeWrapUp),
404
+ source: raw.source === "command" || raw.source === "tool" || raw.source === "rpc" || raw.source === "cli" ? raw.source : "tool",
405
+ template: typeof raw.template === "string" ? raw.template : void 0,
406
+ templateFlags: isStringRecord(raw.templateFlags) ? raw.templateFlags : void 0,
407
+ templateArgs: typeof raw.templateArgs === "string" ? raw.templateArgs : void 0,
408
+ createdAt: typeof raw.createdAt === "number" ? raw.createdAt : Date.now()
409
+ };
410
+ }
411
+ function normalizeCompletedGoal(value) {
412
+ if (!value || typeof value !== "object") return null;
413
+ const raw = value;
414
+ if (typeof raw.goalId !== "string" || typeof raw.objective !== "string") return null;
415
+ if (raw.status !== "complete" && raw.status !== "budgetLimited") return null;
416
+ return {
417
+ goalId: raw.goalId,
418
+ objective: raw.objective,
419
+ status: raw.status,
420
+ tokensUsed: _nullishCoalesce(positiveInteger(raw.tokensUsed), () => ( 0)),
421
+ timeUsedSeconds: _nullishCoalesce(positiveInteger(raw.timeUsedSeconds), () => ( 0)),
422
+ createdAt: typeof raw.createdAt === "number" ? raw.createdAt : Date.now(),
423
+ completedAt: typeof raw.completedAt === "number" ? raw.completedAt : Date.now()
424
+ };
425
+ }
426
+ function buildQueuedGoal(input) {
427
+ return {
428
+ queueId: `q-${Date.now()}-${_crypto2.default.randomUUID().slice(0, 8)}`,
429
+ objective: input.objective.trim(),
430
+ tokenBudget: input.tokenBudget,
431
+ timeBudgetSeconds: input.timeBudgetSeconds,
432
+ minTokensBeforeWrapUp: input.minTokensBeforeWrapUp,
433
+ minTimeSecondsBeforeWrapUp: input.minTimeSecondsBeforeWrapUp,
434
+ source: input.source,
435
+ template: input.template,
436
+ templateFlags: input.templateFlags,
437
+ templateArgs: input.templateArgs,
438
+ createdAt: Date.now()
439
+ };
440
+ }
441
+ function buildCompletedGoal(goal, completedAt) {
442
+ return {
443
+ goalId: goal.goalId,
444
+ objective: goal.objective,
445
+ status: goal.status === "budgetLimited" ? "budgetLimited" : "complete",
446
+ tokensUsed: goal.tokensUsed,
447
+ timeUsedSeconds: goal.timeUsedSeconds,
448
+ createdAt: goal.createdAt,
449
+ completedAt
450
+ };
451
+ }
452
+ function appendCompletedGoal(completed, goal) {
453
+ if (completed.some((item) => item.goalId === goal.goalId)) return completed;
454
+ return [...completed, goal];
455
+ }
456
+ function validateGoalInput(input) {
457
+ const objective = input.objective.trim();
458
+ if (!objective) return "objective must be non-empty.";
459
+ if (objective.length > MAX_OBJECTIVE_LENGTH) return `objective is too long (max ${MAX_OBJECTIVE_LENGTH} characters).`;
460
+ for (const [name, value] of [
461
+ ["tokenBudget", input.tokenBudget],
462
+ ["timeBudgetSeconds", input.timeBudgetSeconds],
463
+ ["minTokensBeforeWrapUp", input.minTokensBeforeWrapUp],
464
+ ["minTimeSecondsBeforeWrapUp", input.minTimeSecondsBeforeWrapUp]
465
+ ]) {
466
+ if (value !== void 0 && (!Number.isInteger(value) || value <= 0)) return `${name} must be a positive integer.`;
467
+ }
468
+ return validateFloors(input);
469
+ }
470
+ function validateFloors(input) {
471
+ if (input.tokenBudget !== void 0 && input.minTokensBeforeWrapUp !== void 0 && input.minTokensBeforeWrapUp > input.tokenBudget) {
472
+ return "minTokensBeforeWrapUp cannot be greater than tokenBudget.";
473
+ }
474
+ if (input.timeBudgetSeconds !== void 0 && input.minTimeSecondsBeforeWrapUp !== void 0 && input.minTimeSecondsBeforeWrapUp > input.timeBudgetSeconds) {
475
+ return "minTimeSecondsBeforeWrapUp cannot be greater than timeBudgetSeconds.";
476
+ }
477
+ return null;
478
+ }
479
+ function transitionStatus(goal, status) {
480
+ const now = Date.now();
481
+ if (goal.status === "active" && status !== "active") {
482
+ const elapsedDelta = Math.max(0, Math.floor((now - goal.updatedAt) / 1e3));
483
+ return { ...goal, status, timeUsedSeconds: goal.timeUsedSeconds + elapsedDelta, updatedAt: now };
484
+ }
485
+ if (goal.status !== "active" && status === "active") {
486
+ return { ...goal, status, updatedAt: now };
487
+ }
488
+ return { ...goal, status, updatedAt: now };
489
+ }
490
+ function budgetLimitReason(goal) {
491
+ if (goal.tokenBudget !== void 0 && goal.tokensUsed >= goal.tokenBudget) return "tokenBudget";
492
+ if (goal.timeBudgetSeconds !== void 0 && goal.timeUsedSeconds >= goal.timeBudgetSeconds) return "timeBudget";
493
+ return null;
494
+ }
495
+ function applyOptionalPositiveInteger(value, apply) {
496
+ if (value === void 0) return null;
497
+ if (value === null) {
498
+ apply(void 0);
499
+ return null;
500
+ }
501
+ if (!Number.isInteger(value) || value <= 0) return "budget and floor values must be positive integers or null.";
502
+ apply(value);
503
+ return null;
504
+ }
505
+ function result(snapshot, ok, message, extras = {}) {
506
+ const goal = snapshot.goal;
507
+ return {
508
+ ok,
509
+ goal,
510
+ queue: snapshot.queue,
511
+ message,
512
+ telemetry: goal ? {
513
+ timeRemainingSeconds: goal.timeBudgetSeconds !== void 0 ? Math.max(0, goal.timeBudgetSeconds - goal.timeUsedSeconds) : void 0,
514
+ tokensRemaining: goal.tokenBudget !== void 0 ? Math.max(0, goal.tokenBudget - goal.tokensUsed) : void 0,
515
+ completionFloorMet: floorMet(goal)
516
+ } : void 0,
517
+ ...extras
518
+ };
519
+ }
520
+ function floorMet(goal) {
521
+ const tokenMet = goal.minTokensBeforeWrapUp === void 0 || goal.tokensUsed >= goal.minTokensBeforeWrapUp;
522
+ const timeMet = goal.minTimeSecondsBeforeWrapUp === void 0 || goal.timeUsedSeconds >= goal.minTimeSecondsBeforeWrapUp;
523
+ return tokenMet && timeMet;
524
+ }
525
+ function positiveInteger(value) {
526
+ return typeof value === "number" && Number.isInteger(value) && value >= 0 ? value : void 0;
527
+ }
528
+ function isGoalStatus(value) {
529
+ return value === "active" || value === "paused" || value === "budgetLimited" || value === "complete";
530
+ }
531
+ function isStringRecord(value) {
532
+ if (!value || typeof value !== "object" || Array.isArray(value)) return false;
533
+ return Object.values(value).every((entry) => typeof entry === "string");
534
+ }
535
+ function truncate(value, max) {
536
+ return value.length > max ? `${value.slice(0, max - 3)}...` : value;
537
+ }
538
+ function formatAllCompleteMessage(completedRun) {
539
+ return [
540
+ "All queued goals are complete.",
541
+ "",
542
+ formatCompletedSummary(completedRun)
543
+ ].join("\n");
544
+ }
545
+ function formatCompletedSummary(completedRun) {
546
+ return [
547
+ `Completed goals this session (${completedRun.length}):`,
548
+ ...completedRun.map((item, index) => `${index + 1}. ${truncate(item.objective, 120)}`)
549
+ ].join("\n");
550
+ }
551
+ function formatDuration(seconds) {
552
+ const whole = Math.max(0, Math.floor(seconds));
553
+ const minutes = Math.floor(whole / 60);
554
+ const secs = whole % 60;
555
+ return minutes > 0 ? `${minutes}m ${secs}s` : `${secs}s`;
556
+ }
557
+
558
+
559
+
560
+ exports.GoalManager = GoalManager;
561
+ /**
562
+ * @license
563
+ * Copyright 2025 Autohand AI LLC
564
+ * SPDX-License-Identifier: Apache-2.0
565
+ */
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AUTOHAND_HOME
3
- } from "./chunk-TWQDAUZU.js";
3
+ } from "./chunk-PG2JIU5M.js";
4
4
 
5
5
  // src/skills/CommunitySkillsCache.ts
6
6
  import fs from "fs-extra";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AUTOHAND_HOME
3
- } from "./chunk-TWQDAUZU.js";
3
+ } from "./chunk-PG2JIU5M.js";
4
4
 
5
5
  // src/browser/chrome.ts
6
6
  import crypto from "crypto";
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
2
 
3
- var _chunkCH2J4PVEcjs = require('./chunk-CH2J4PVE.cjs');
3
+ var _chunkDMM2BKSVcjs = require('./chunk-DMM2BKSV.cjs');
4
4
 
5
5
  // src/commands/completion.ts
6
6
  var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
@@ -14,6 +14,7 @@ var DEFAULT_CONFIG = {
14
14
  commands: ["autohand"],
15
15
  slashCommands: [
16
16
  "/quit",
17
+ "/exit",
17
18
  "/model",
18
19
  "/session",
19
20
  "/sessions",
@@ -50,6 +51,7 @@ var DEFAULT_CONFIG = {
50
51
  { flag: "--temperature", description: "Sampling temperature" },
51
52
  { flag: "--unrestricted", description: "Skip all approval prompts" },
52
53
  { flag: "--restricted", description: "Block all dangerous operations" },
54
+ { flag: "--no-idle-logout", description: "Keep authenticated idle sessions alive" },
53
55
  { flag: "--help", description: "Show help" },
54
56
  { flag: "--version", description: "Show version" }
55
57
  ]
@@ -311,7 +313,7 @@ async function execute(args) {
311
313
  { label: "Zsh", value: "zsh" },
312
314
  { label: "Fish", value: "fish" }
313
315
  ];
314
- const shellResult = await _chunkCH2J4PVEcjs.showModal.call(void 0, {
316
+ const shellResult = await _chunkDMM2BKSVcjs.showModal.call(void 0, {
315
317
  title: "Select your shell:",
316
318
  options: shellOptions,
317
319
  initialIndex: shellOptions.findIndex((o) => o.value === (detected || "bash"))
@@ -327,7 +329,7 @@ async function execute(args) {
327
329
  { label: "Install completion to default location", value: "install" },
328
330
  { label: "Show installation instructions", value: "instructions" }
329
331
  ];
330
- const actionResult = await _chunkCH2J4PVEcjs.showModal.call(void 0, {
332
+ const actionResult = await _chunkDMM2BKSVcjs.showModal.call(void 0, {
331
333
  title: "What would you like to do?",
332
334
  options: actionOptions
333
335
  });