autohand-cli 0.8.2 → 0.9.0

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 (551) hide show
  1. package/README.md +173 -74
  2. package/dist/AgentRegistry-EGBDIUAK.cjs +10 -0
  3. package/dist/{AgentRegistry-7LDL5HJH.js → AgentRegistry-XPWSVO3Q.js} +3 -3
  4. package/dist/{AutomodeManager-MWLKGPZK.js → AutomodeManager-APLLPEYJ.js} +32 -18
  5. package/dist/{AutomodeManager-NYIZNODK.cjs → AutomodeManager-MPSXT2RH.cjs} +38 -24
  6. package/dist/CommunitySkillsCache-2OIUV227.cjs +8 -0
  7. package/dist/CommunitySkillsCache-ZEQWP6YM.js +8 -0
  8. package/dist/GitHubRegistryFetcher-CYJLF2XL.cjs +7 -0
  9. package/dist/{GitHubRegistryFetcher-6JQ5JEDZ.js → GitHubRegistryFetcher-J2BWPXJF.js} +2 -2
  10. package/dist/HookManager-CWLTFKWO.js +7 -0
  11. package/dist/HookManager-TMAJQU4S.cjs +7 -0
  12. package/dist/{ImportWizard-35YBJ4AM.cjs → ImportWizard-MQXEED2U.cjs} +41 -17
  13. package/dist/{ImportWizard-XH7CINCH.js → ImportWizard-QBKQEXDW.js} +35 -11
  14. package/dist/LearnAdvisor-46FG2XIP.js +9 -0
  15. package/dist/LearnAdvisor-XBRDNAGH.cjs +9 -0
  16. package/dist/McpClientManager-BNSKLHIN.cjs +8 -0
  17. package/dist/{McpClientManager-7RM6YT35.js → McpClientManager-SL35BR24.js} +2 -2
  18. package/dist/MemoryManager-34L4YOKA.cjs +8 -0
  19. package/dist/MemoryManager-WJMLPWGU.js +8 -0
  20. package/dist/NVIDIAProvider-2HR737UE.js +14 -0
  21. package/dist/NVIDIAProvider-MVTL62PR.cjs +14 -0
  22. package/dist/PermissionManager-5OOJ7FAT.cjs +11 -0
  23. package/dist/{PermissionManager-ATUV34LQ.js → PermissionManager-KMYILJ4Z.js} +4 -4
  24. package/dist/{ProjectProfiler-ZDWR2ODG.cjs → ProjectProfiler-CDAE7ECW.cjs} +2 -1
  25. package/dist/{ProjectProfiler-UMJJSOCE.js → ProjectProfiler-NZTJDRHD.js} +2 -1
  26. package/dist/ProviderFactory-C3YPXTDD.cjs +11 -0
  27. package/dist/ProviderFactory-HFPRVQ25.js +11 -0
  28. package/dist/SessionManager-PNBTJJTQ.js +10 -0
  29. package/dist/SessionManager-WAPTFMDO.cjs +10 -0
  30. package/dist/SkillsRegistry-4RRD5GMX.js +9 -0
  31. package/dist/SkillsRegistry-7AJP74GJ.cjs +9 -0
  32. package/dist/SubAgent-FDIH3DXB.js +11 -0
  33. package/dist/SubAgent-HVL2ICVZ.cjs +11 -0
  34. package/dist/{SyncApiClient-LVIO4C2S.js → SyncApiClient-LRPFNCKJ.js} +2 -2
  35. package/dist/SyncApiClient-VMBOLQ6H.cjs +11 -0
  36. package/dist/about-BW3PDZUU.js +14 -0
  37. package/dist/about-FCAX37YC.cjs +14 -0
  38. package/dist/acp-EOETGAHC.cjs +1517 -0
  39. package/dist/acp-VHEL7BOW.js +1517 -0
  40. package/dist/actionExecutor-33I47NZS.js +24 -0
  41. package/dist/actionExecutor-4YBMR3YH.cjs +24 -0
  42. package/dist/add-dir-7SS6KSH5.cjs +11 -0
  43. package/dist/add-dir-VFX7QT4E.js +11 -0
  44. package/dist/agent-DMRUFU4M.cjs +116 -0
  45. package/dist/agent-WCJEYQJT.js +116 -0
  46. package/dist/agents/builtin/code-cleaner.md +1 -1
  47. package/dist/agents/builtin/docs-writer.md +1 -1
  48. package/dist/agents/builtin/researcher.md +2 -2
  49. package/dist/agents/builtin/reviewer.md +1 -1
  50. package/dist/agents/builtin/tester.md +1 -1
  51. package/dist/agents/builtin/todo-resolver.md +1 -1
  52. package/dist/agents-CHROO3VU.cjs +17 -0
  53. package/dist/agents-UVDUL65K.js +17 -0
  54. package/dist/agents-new-AUBWSOXP.js +17 -0
  55. package/dist/agents-new-Y562WC47.cjs +17 -0
  56. package/dist/{autoSkill-6TGBTEQD.js → autoSkill-EFMK6WU6.js} +3 -3
  57. package/dist/autoSkill-YOLLFTP2.cjs +20 -0
  58. package/dist/automode-BMYSRM34.js +10 -0
  59. package/dist/automode-DBLKTTKD.cjs +10 -0
  60. package/dist/browserToolBridge-BXRQB4B4.cjs +58 -0
  61. package/dist/browserToolBridge-F5N66PE7.js +58 -0
  62. package/dist/{cc-7LEIJ3KF.js → cc-AYEP2CA3.js} +1 -1
  63. package/dist/{cc-Q5MM4AWC.cjs → cc-S2QLQFBR.cjs} +1 -1
  64. package/dist/chrome-ATC4OO5I.cjs +20 -0
  65. package/dist/chrome-NHJ44WUN.js +50 -0
  66. package/dist/chrome-O62WXV7F.js +20 -0
  67. package/dist/chrome-XHJLCO4M.cjs +50 -0
  68. package/dist/chromeSkill-53TH55PM.js +105 -0
  69. package/dist/chromeSkill-THW7N4IY.cjs +105 -0
  70. package/dist/{chunk-HOAHWIQ5.cjs → chunk-2CGE7ZV3.cjs} +26 -26
  71. package/dist/chunk-2H5O745H.js +63 -0
  72. package/dist/chunk-2HOLOHVK.js +2219 -0
  73. package/dist/{chunk-3PDTTAKJ.js → chunk-2QL6MNXG.js} +15 -8
  74. package/dist/{chunk-PGRH5Q77.cjs → chunk-2VHB43IX.cjs} +35 -6
  75. package/dist/{chunk-VG34MG2U.js → chunk-37M5UM6I.js} +9 -6
  76. package/dist/{chunk-6HYLHBQG.cjs → chunk-3DDL2E55.cjs} +20 -16
  77. package/dist/chunk-3EDDDZS2.cjs +5 -0
  78. package/dist/{chunk-6OYHF6MF.js → chunk-3GUEUCZK.js} +28 -4
  79. package/dist/{chunk-N254NRHT.cjs → chunk-3HT76LNN.cjs} +9 -2
  80. package/dist/{chunk-DVUHHH3B.cjs → chunk-3KLSNNRW.cjs} +4 -4
  81. package/dist/chunk-3LJJG5YY.cjs +387 -0
  82. package/dist/chunk-3OF56EMA.cjs +197 -0
  83. package/dist/chunk-3PXKRVCW.js +108 -0
  84. package/dist/{chunk-IKGWDOGU.cjs → chunk-3S563FNF.cjs} +160 -79
  85. package/dist/chunk-3UT7R3XV.js +663 -0
  86. package/dist/chunk-4256YRCO.cjs +80 -0
  87. package/dist/chunk-46C73ZKK.cjs +663 -0
  88. package/dist/chunk-46MTALKD.js +44 -0
  89. package/dist/{chunk-AEJH23FO.cjs → chunk-47PHDKNW.cjs} +6 -6
  90. package/dist/chunk-4LMUDS2K.js +124 -0
  91. package/dist/{chunk-HLHTG5ZU.cjs → chunk-5CMYEM3R.cjs} +14 -12
  92. package/dist/{chunk-MBBY4ZIK.js → chunk-5F6ZKSHO.js} +4 -1
  93. package/dist/chunk-5JFTY3VU.js +74 -0
  94. package/dist/chunk-5JTTM5SC.js +59 -0
  95. package/dist/{chunk-IETRBBMP.cjs → chunk-5K3CDSWZ.cjs} +108 -31
  96. package/dist/{chunk-GJH7XMSK.js → chunk-5VHP6HDQ.js} +8 -6
  97. package/dist/{chunk-6ZCULLCA.js → chunk-62RTC3XX.js} +1 -1
  98. package/dist/{chunk-MSED7RH2.cjs → chunk-6GUODJKM.cjs} +112 -41
  99. package/dist/{chunk-47CKWKEX.cjs → chunk-6HH236FV.cjs} +9 -4
  100. package/dist/{chunk-WHE2SWHU.js → chunk-6NVAK6CK.js} +2 -2
  101. package/dist/chunk-6R25D2H5.js +121 -0
  102. package/dist/{chunk-3PCTTUNW.cjs → chunk-6XVVIY54.cjs} +55 -25
  103. package/dist/{chunk-3L53OA4E.cjs → chunk-75EDROHL.cjs} +10 -10
  104. package/dist/{chunk-G4CAKI3V.js → chunk-7HPWMALN.js} +7 -2
  105. package/dist/chunk-7JLT2VNW.cjs +18963 -0
  106. package/dist/chunk-7LWQCE4Y.cjs +987 -0
  107. package/dist/{chunk-OLSBBZW6.cjs → chunk-7MU7LWF3.cjs} +5 -5
  108. package/dist/{chunk-HLQV64Y5.js → chunk-7RFJB75Y.js} +140 -59
  109. package/dist/{chunk-X2MSVKDV.js → chunk-A7HHCIDQ.js} +2 -2
  110. package/dist/{chunk-SKYG33B2.cjs → chunk-AC7DZ6SK.cjs} +3 -3
  111. package/dist/{chunk-XX2ZO7DS.js → chunk-ACDQGA4Z.js} +90 -16
  112. package/dist/{chunk-CZXGCVTR.cjs → chunk-AOKCI722.cjs} +2 -2
  113. package/dist/chunk-ARBEHFCG.js +715 -0
  114. package/dist/{chunk-OOKY3HPZ.js → chunk-AT7OWLY5.js} +50 -9
  115. package/dist/chunk-AU6JAGZJ.cjs +231 -0
  116. package/dist/chunk-AUFNACED.js +18963 -0
  117. package/dist/{chunk-CDBPBM2K.cjs → chunk-AUYSIEVV.cjs} +3 -3
  118. package/dist/chunk-B4HSNOIH.cjs +354 -0
  119. package/dist/{chunk-EGMZDTSL.js → chunk-B5CGDNMR.js} +10 -2
  120. package/dist/{chunk-34M3HWLR.js → chunk-BFQDQRDE.js} +2 -2
  121. package/dist/{chunk-2AA5MFES.js → chunk-BL2UC7HC.js} +8 -5
  122. package/dist/{chunk-LNMYK2F5.cjs → chunk-BQ22N3TX.cjs} +56 -41
  123. package/dist/chunk-BQU3HAE7.js +21 -0
  124. package/dist/chunk-BWF4VDYE.js +3897 -0
  125. package/dist/chunk-BYE7RQFZ.cjs +121 -0
  126. package/dist/{chunk-APIXPPMT.js → chunk-CBFH2J3O.js} +855 -33
  127. package/dist/chunk-CCVMREXI.js +420 -0
  128. package/dist/chunk-CFAWTLSC.js +13 -0
  129. package/dist/{chunk-G27PQQFD.js → chunk-CFFE4VA3.js} +1 -1
  130. package/dist/{chunk-ZYQMLKOK.cjs → chunk-CH2J4PVE.cjs} +212 -70
  131. package/dist/{chunk-7BTSG4ME.cjs → chunk-CHI52KFR.cjs} +855 -33
  132. package/dist/{chunk-DJDE4DTT.cjs → chunk-CWINVFRI.cjs} +25 -19
  133. package/dist/{chunk-HXGBSJL5.cjs → chunk-D2OSPLYC.cjs} +2 -2
  134. package/dist/{chunk-GBHDROGL.js → chunk-D6GZBSOX.js} +16 -4
  135. package/dist/{chunk-CNBKZEX5.cjs → chunk-DA7NBAJK.cjs} +49 -17
  136. package/dist/chunk-DEQVRSV5.cjs +866 -0
  137. package/dist/{chunk-RGR6ME5J.cjs → chunk-DI57A4BX.cjs} +25 -28
  138. package/dist/{chunk-WM5PAOTQ.cjs → chunk-DIZTWFVR.cjs} +1649 -484
  139. package/dist/{chunk-YZXUDM5X.js → chunk-DLP436GI.js} +204 -62
  140. package/dist/{chunk-OHUZKDGX.js → chunk-DMRXF5DU.js} +3 -3
  141. package/dist/{chunk-U46VYPLR.cjs → chunk-DPSIGY6L.cjs} +9 -9
  142. package/dist/{chunk-DN573ME7.cjs → chunk-DRWDEHE5.cjs} +4 -4
  143. package/dist/{chunk-SEKD5FH3.cjs → chunk-E26KKI46.cjs} +5 -2
  144. package/dist/{chunk-J4Q7XR3G.js → chunk-E46DJH5S.js} +3 -3
  145. package/dist/{chunk-Q7XSCYND.cjs → chunk-E6GFD7VR.cjs} +49 -26
  146. package/dist/chunk-ES2HJQ4N.js +37 -0
  147. package/dist/chunk-EZJHLOWP.js +80 -0
  148. package/dist/chunk-FFBDRUO5.cjs +59 -0
  149. package/dist/{chunk-AYSFIUFW.js → chunk-FGT6KK6T.js} +38 -15
  150. package/dist/{chunk-SAHBLB3E.js → chunk-FP46B4X3.js} +208 -3
  151. package/dist/{chunk-DSPQEHDT.js → chunk-FQAVGSPW.js} +2 -2
  152. package/dist/chunk-FQVG6ZHF.js +197 -0
  153. package/dist/chunk-GBMDFWJX.cjs +152 -0
  154. package/dist/{chunk-DRE2RXBZ.js → chunk-GGLKUENP.js} +1605 -440
  155. package/dist/{chunk-S52YW5ZQ.js → chunk-GNBBIAMD.js} +16 -19
  156. package/dist/{chunk-MYISNQH4.js → chunk-GWO66KBI.js} +1 -1
  157. package/dist/chunk-GWY26SUD.cjs +63 -0
  158. package/dist/{chunk-YGN4CQIP.js → chunk-GZ6DV2UG.js} +1 -1
  159. package/dist/{chunk-EZMINVLU.js → chunk-H4D2Q2AL.js} +5 -2
  160. package/dist/chunk-HDK2EHVH.cjs +570 -0
  161. package/dist/chunk-HJIXWGQZ.js +139 -0
  162. package/dist/{chunk-6RF7UKUS.js → chunk-HKYZSUQ5.js} +48 -47
  163. package/dist/{chunk-LQGVEP3E.js → chunk-HQUSEWT4.js} +45 -13
  164. package/dist/{chunk-HTLINWX6.cjs → chunk-HQWQZML5.cjs} +16 -13
  165. package/dist/{chunk-DVZOENQ7.cjs → chunk-HS4USDND.cjs} +9 -4
  166. package/dist/chunk-HSCUPEA4.cjs +3897 -0
  167. package/dist/{chunk-JCLYQ2JC.js → chunk-HXJEGMGB.js} +12 -6
  168. package/dist/{chunk-LJFUXC56.cjs → chunk-HXQREVTA.cjs} +9 -6
  169. package/dist/{chunk-SCXX4LW5.js → chunk-I24CWKKK.js} +15 -8
  170. package/dist/chunk-IAGCRVJ3.js +355 -0
  171. package/dist/chunk-IEXKKKOF.cjs +92 -0
  172. package/dist/{chunk-5IXII4HX.cjs → chunk-IGMPWJ2I.cjs} +19 -12
  173. package/dist/chunk-IKUMVBCW.cjs +33 -0
  174. package/dist/{chunk-XTB6VJVQ.cjs → chunk-J2K57QM7.cjs} +6 -6
  175. package/dist/{chunk-O4IF4NJT.cjs → chunk-J5ADZN6V.cjs} +57 -56
  176. package/dist/chunk-J5HE6CUM.cjs +124 -0
  177. package/dist/{chunk-JS7IPR7P.js → chunk-JAQO6XDB.js} +31 -2
  178. package/dist/chunk-JIMSII7R.js +987 -0
  179. package/dist/chunk-JJ4KA7HK.cjs +2219 -0
  180. package/dist/chunk-JMN3GZU6.js +570 -0
  181. package/dist/{chunk-X5VSP65C.cjs → chunk-JP3YHTQ2.cjs} +4 -4
  182. package/dist/{chunk-SKV2F3NM.js → chunk-JYKPWK5O.js} +1 -1
  183. package/dist/{chunk-NNPAM4HC.cjs → chunk-KNTUI4TZ.cjs} +12 -6
  184. package/dist/{chunk-HIVRCQS2.js → chunk-L4F7SUYL.js} +56 -25
  185. package/dist/{chunk-C5IJIM2V.cjs → chunk-LDJQ5QHG.cjs} +68 -37
  186. package/dist/{chunk-ULQ6MDSJ.cjs → chunk-LFDPTJYF.cjs} +43 -35
  187. package/dist/chunk-LJD7KR3L.cjs +44 -0
  188. package/dist/chunk-LN7D3EJZ.js +387 -0
  189. package/dist/{chunk-643VRA5S.cjs → chunk-LQBONA55.cjs} +32 -8
  190. package/dist/{chunk-NCC6ETZS.js → chunk-LUMV3DB2.js} +41 -33
  191. package/dist/chunk-M4KNC5BQ.js +78 -0
  192. package/dist/chunk-MO4KP6XS.cjs +229 -0
  193. package/dist/{chunk-BVKXEQVG.cjs → chunk-MOJ7ADW4.cjs} +22 -10
  194. package/dist/chunk-MPULXVC4.cjs +715 -0
  195. package/dist/{chunk-X5YJ34FZ.cjs → chunk-MQESBFBZ.cjs} +46 -23
  196. package/dist/chunk-MUNUUFU7.cjs +21 -0
  197. package/dist/{chunk-X3WS5LDG.js → chunk-MX75JYIY.js} +7 -5
  198. package/dist/chunk-MXVIDIC6.cjs +139 -0
  199. package/dist/{chunk-3K2ESU53.cjs → chunk-N6O3XUZ2.cjs} +2 -2
  200. package/dist/{chunk-IVM5F2AE.js → chunk-NBGOIFKP.js} +265 -18
  201. package/dist/{chunk-SLQAYV3W.js → chunk-NMQ47RCG.js} +8 -2
  202. package/dist/{chunk-JYTDYJVW.js → chunk-O64I2GYI.js} +1 -1
  203. package/dist/{chunk-IFFXSTOM.cjs → chunk-O6TQP7U7.cjs} +3 -3
  204. package/dist/{chunk-AYS2ASM7.js → chunk-OHWMWKJQ.js} +1 -1
  205. package/dist/{chunk-N23UAW4I.js → chunk-OM24WXEE.js} +7 -2
  206. package/dist/{chunk-MAKMSQMQ.cjs → chunk-OPNI6O7F.cjs} +8 -6
  207. package/dist/chunk-OR67YXQK.cjs +13 -0
  208. package/dist/{chunk-QOXPOR5D.js → chunk-OV3PVUYN.js} +115 -44
  209. package/dist/{chunk-TNZRZQ7Q.js → chunk-PB7W7R72.js} +3 -78
  210. package/dist/chunk-PCM3N3CL.cjs +37 -0
  211. package/dist/{chunk-A4IJHHV7.cjs → chunk-PDHT7LQS.cjs} +52 -11
  212. package/dist/{chunk-LA7H35XM.cjs → chunk-PHJO5YAL.cjs} +9 -9
  213. package/dist/{chunk-KPELYZ6L.js → chunk-PQLKJCIE.js} +2 -2
  214. package/dist/chunk-PUD76XQT.cjs +78 -0
  215. package/dist/chunk-Q2IL4DDI.cjs +355 -0
  216. package/dist/{chunk-WPVWQSL7.cjs → chunk-Q6AC3PHY.cjs} +16 -13
  217. package/dist/{chunk-XRZEUWKF.js → chunk-QCHIDZBA.js} +1 -1
  218. package/dist/{chunk-IQ5RXU6O.js → chunk-QEGOB6QV.js} +1 -1
  219. package/dist/{chunk-JSBRDJBE.js → chunk-QGM4M3NI.js} +8 -1
  220. package/dist/chunk-QKP772OZ.js +4291 -0
  221. package/dist/chunk-QQ7PANOP.js +59 -0
  222. package/dist/{chunk-YHD6TUIR.cjs → chunk-QW2RW2GY.cjs} +2 -0
  223. package/dist/chunk-RAKO7UN7.js +114 -0
  224. package/dist/chunk-RBHANOYY.js +33 -0
  225. package/dist/chunk-RBZ7AFX7.cjs +29 -0
  226. package/dist/{chunk-TXSDBGKX.cjs → chunk-REMGR23V.cjs} +46 -49
  227. package/dist/chunk-ROLA6EFO.cjs +85 -0
  228. package/dist/{chunk-TBEGGJNC.cjs → chunk-SOLBYSLY.cjs} +33 -16
  229. package/dist/{chunk-FKSDEWDH.js → chunk-SWCQM52V.js} +68 -25
  230. package/dist/{chunk-H5SWOLG6.js → chunk-TBOLJDUG.js} +39 -24
  231. package/dist/chunk-TH26BQJG.js +101 -0
  232. package/dist/{chunk-245KJE5Y.cjs → chunk-TJNBASFD.cjs} +14 -6
  233. package/dist/chunk-TKKN34TV.js +229 -0
  234. package/dist/chunk-TQ33WBY5.cjs +74 -0
  235. package/dist/{chunk-EGFT4PGW.js → chunk-TWQDAUZU.js} +5 -2
  236. package/dist/{chunk-OGV4WJ5L.cjs → chunk-TXPSTCG7.cjs} +74 -59
  237. package/dist/{chunk-CAMZTXV6.js → chunk-U4C3HW6P.js} +67 -52
  238. package/dist/{chunk-5P2NXKP3.js → chunk-UEIXJG45.js} +104 -76
  239. package/dist/{chunk-22D2CNTP.cjs → chunk-UGFVM77J.cjs} +5 -2
  240. package/dist/chunk-UOQECODR.js +34 -0
  241. package/dist/chunk-UR27UDTB.js +354 -0
  242. package/dist/chunk-UWFG2R2I.cjs +420 -0
  243. package/dist/{chunk-Y72HH2TF.cjs → chunk-UXLW45ZE.cjs} +102 -28
  244. package/dist/{chunk-FPHU2ES6.cjs → chunk-VBOFPU5M.cjs} +6 -0
  245. package/dist/{chunk-JX3DFKBI.js → chunk-VDWJMWDF.js} +54 -24
  246. package/dist/{chunk-LENHP55G.cjs → chunk-VGEV44V2.cjs} +1076 -158
  247. package/dist/{chunk-33RSHBDH.js → chunk-VKBIE6I6.js} +38 -7
  248. package/dist/{chunk-CWMZKFTT.js → chunk-VRMZO6TB.js} +31 -8
  249. package/dist/chunk-VUGOOGHB.js +400 -0
  250. package/dist/chunk-WBU4Q4GS.cjs +400 -0
  251. package/dist/chunk-WGLBC5AY.cjs +59 -0
  252. package/dist/{chunk-KWXVKLQ5.cjs → chunk-WGNMOVMT.cjs} +7 -82
  253. package/dist/{chunk-RKJTGGMU.cjs → chunk-WKRDBCP2.cjs} +221 -16
  254. package/dist/chunk-WRTXCQ3V.cjs +4291 -0
  255. package/dist/chunk-WTB7AFL6.cjs +101 -0
  256. package/dist/{chunk-NDMIPTV4.js → chunk-WZV6UVPY.js} +8 -3
  257. package/dist/chunk-XF2WIKHR.cjs +34 -0
  258. package/dist/{chunk-L3WAH3EM.cjs → chunk-XGMI6IYB.cjs} +46 -15
  259. package/dist/{chunk-FW774QXH.js → chunk-XIVFAD2L.js} +1048 -130
  260. package/dist/chunk-XV2HXRHX.js +85 -0
  261. package/dist/{chunk-72FKPBT5.js → chunk-Y3M2DABP.js} +16 -12
  262. package/dist/{chunk-QNGEW5TC.js → chunk-YV63VW4K.js} +1 -1
  263. package/dist/{chunk-UJ2JSM6H.js → chunk-YVQI26H4.js} +2 -0
  264. package/dist/{chunk-RD5XAJR2.cjs → chunk-YWTIXHU6.cjs} +266 -19
  265. package/dist/chunk-YZWE7XSM.js +5 -0
  266. package/dist/{chunk-I5IW3T2Y.js → chunk-Z3XSSF7B.js} +32 -15
  267. package/dist/{chunk-6UJMCWRY.js → chunk-Z4LIPMPM.js} +6 -0
  268. package/dist/chunk-ZASDSY7P.cjs +114 -0
  269. package/dist/{chunk-R33VKSH5.cjs → chunk-ZHJ7JGME.cjs} +11 -11
  270. package/dist/chunk-ZPD2AO3U.js +866 -0
  271. package/dist/{chunk-7UOUW76C.js → chunk-ZQAT5VT5.js} +101 -24
  272. package/dist/chunk-ZR46OJNZ.js +152 -0
  273. package/dist/{chunk-G3V4SFET.cjs → chunk-ZZ63NW7A.cjs} +78 -35
  274. package/dist/clear-33TWQ2ES.cjs +12 -0
  275. package/dist/clear-OFLFQ3MR.js +12 -0
  276. package/dist/{communityInstaller-6KCFN7YZ.js → communityInstaller-COB2KTOW.js} +9 -6
  277. package/dist/communityInstaller-TWMGPSYM.cjs +22 -0
  278. package/dist/completion-IIZMHXYP.cjs +17 -0
  279. package/dist/completion-PT4VM2H2.js +17 -0
  280. package/dist/config-KL6WU7R2.cjs +20 -0
  281. package/dist/{config-ZN66VXPS.js → config-R4O7GBTY.js} +7 -5
  282. package/dist/{constants-UFM5B232.js → constants-HVCHVQAF.js} +2 -2
  283. package/dist/constants-RLMJ5D5P.cjs +21 -0
  284. package/dist/{defaultHooks-RCXPHF4M.cjs → defaultHooks-2V2CQL63.cjs} +26 -11
  285. package/dist/{defaultHooks-RDRMER3Z.js → defaultHooks-TMHDU3FS.js} +26 -11
  286. package/dist/export-3PK3VFCE.js +15 -0
  287. package/dist/export-WLGNWEMJ.cjs +15 -0
  288. package/dist/{extractSessionMemories-V7K42ZHW.js → extractSessionMemories-A2JX5WJ2.js} +1 -1
  289. package/dist/{extractSessionMemories-SDW2MVBQ.cjs → extractSessionMemories-XL3MS37F.cjs} +1 -1
  290. package/dist/feedback-G635NCLJ.js +18 -0
  291. package/dist/feedback-LLMK3TZH.cjs +18 -0
  292. package/dist/fffSearchProvider-2YCNKOYD.js +412 -0
  293. package/dist/fffSearchProvider-W6627E2V.cjs +412 -0
  294. package/dist/filesystem-L6DQKGWK.js +11 -0
  295. package/dist/filesystem-PGUPCMVK.cjs +11 -0
  296. package/dist/{formatters-6K7QVWQL.cjs → formatters-53XTCNGQ.cjs} +1 -1
  297. package/dist/{formatters-DQHO5I36.js → formatters-T6KV4BPP.js} +1 -1
  298. package/dist/help-BAXLP2M2.cjs +12 -0
  299. package/dist/{help-2BLR7L43.js → help-X3OAZ3CY.js} +3 -3
  300. package/dist/history-6HOJSEMT.cjs +14 -0
  301. package/dist/{history-5FZ3M2AK.js → history-YKFPHBJN.js} +3 -3
  302. package/dist/hooks-7TA4PIIB.js +18 -0
  303. package/dist/hooks-XVFU67T2.cjs +18 -0
  304. package/dist/{i18n-K7QOWIBH.js → i18n-2KBUU7XL.js} +2 -2
  305. package/dist/i18n-MUJMKTFM.cjs +33 -0
  306. package/dist/ide-CCQ33PGC.cjs +15 -0
  307. package/dist/ide-VLVFBZ5F.js +15 -0
  308. package/dist/immediateCommandRouter-MTEHZXQX.js +15 -0
  309. package/dist/immediateCommandRouter-ROXU3MWT.cjs +15 -0
  310. package/dist/{import-UXM3VK7B.js → import-4CHYLS4K.js} +4 -4
  311. package/dist/{import-QEME3E4T.cjs → import-I7T4ZHYL.cjs} +4 -4
  312. package/dist/import-J46F54JY.cjs +10 -0
  313. package/dist/import-JWPYKXCZ.js +10 -0
  314. package/dist/index.cjs +747 -22356
  315. package/dist/index.d.cts +93 -0
  316. package/dist/index.d.ts +93 -0
  317. package/dist/index.js +786 -22395
  318. package/dist/init-262MWZV4.js +10 -0
  319. package/dist/init-EE5Y7RBL.cjs +10 -0
  320. package/dist/inkMode-VUE6ZDLD.cjs +7 -0
  321. package/dist/inkMode-WBNFOSAT.js +7 -0
  322. package/dist/inputPrompt-IIFKCX5Q.cjs +90 -0
  323. package/dist/inputPrompt-YGBHDUEP.js +90 -0
  324. package/dist/language-CVLPB7OV.js +21 -0
  325. package/dist/language-ZTWFHUSV.cjs +21 -0
  326. package/dist/learn-PON7I5QS.js +23 -0
  327. package/dist/learn-XLRSVNA3.cjs +23 -0
  328. package/dist/{lint-D5UOJWIK.cjs → lint-4NDGCSCL.cjs} +1 -1
  329. package/dist/{lint-NJPZWVN2.js → lint-FZ7ZJUB3.js} +1 -1
  330. package/dist/login-223QTGBG.cjs +26 -0
  331. package/dist/login-6IKTBUBY.js +26 -0
  332. package/dist/logout-RN2AG6SI.js +23 -0
  333. package/dist/logout-U3M4FFX7.cjs +23 -0
  334. package/dist/mcp-5O6PUL4G.js +20 -0
  335. package/dist/mcp-NUQ76QQB.cjs +20 -0
  336. package/dist/{mcp-install-VESN42PI.js → mcp-install-6XWXLFVY.js} +18 -11
  337. package/dist/{mcp-install-G27HSS3Z.cjs → mcp-install-P6DHES7V.cjs} +22 -15
  338. package/dist/memory-CYMDQ2YC.cjs +10 -0
  339. package/dist/memory-Q54CESNM.js +10 -0
  340. package/dist/{message-ZJ5AYAMT.cjs → message-4OKO775J.cjs} +1 -1
  341. package/dist/{message-JUBOK2VU.js → message-X3LOAAM7.js} +1 -1
  342. package/dist/model-6AJ77PJG.js +10 -0
  343. package/dist/model-IDRCKDML.cjs +10 -0
  344. package/dist/new-7LEWOUF2.cjs +12 -0
  345. package/dist/new-ZXHEWC2S.js +12 -0
  346. package/dist/onboarding-FXX7YHSJ.cjs +35 -0
  347. package/dist/onboarding-JYNMK6NI.js +35 -0
  348. package/dist/{patch-MOD7QC3D.cjs → patch-DJ2GPFST.cjs} +1 -1
  349. package/dist/{patch-5F6VBIT3.js → patch-NIJWIRHS.js} +1 -1
  350. package/dist/permissions-YBNSANIA.cjs +10 -0
  351. package/dist/permissions-YHJMVA6L.js +10 -0
  352. package/dist/plan-XEJMOT55.cjs +13 -0
  353. package/dist/plan-YYUAXPTL.js +13 -0
  354. package/dist/pr-review-CW6J7P62.cjs +9 -0
  355. package/dist/pr-review-YZSBQVT2.js +9 -0
  356. package/dist/quit-B43SJ6E4.cjs +10 -0
  357. package/dist/quit-GWTNHQSP.js +10 -0
  358. package/dist/rawMode-6W5AXAKI.cjs +7 -0
  359. package/dist/rawMode-GFNLXQPU.js +7 -0
  360. package/dist/{registry-KWZGYJC2.js → registry-34GL6BNJ.js} +30 -45
  361. package/dist/{registry-YN4FQPOO.cjs → registry-V24W7YK6.cjs} +66 -81
  362. package/dist/repeat-P4FAPE3Y.cjs +17 -0
  363. package/dist/repeat-RALE6AUO.js +17 -0
  364. package/dist/resume-DYVOQN5L.cjs +16 -0
  365. package/dist/resume-M25UQKOX.js +16 -0
  366. package/dist/review-QHP2KP4Q.js +9 -0
  367. package/dist/review-UWHWQHCB.cjs +9 -0
  368. package/dist/ripgrep-67SCU2BA.cjs +9 -0
  369. package/dist/ripgrep-VHJQQ55W.js +9 -0
  370. package/dist/rpc-NPS3PU4O.cjs +3730 -0
  371. package/dist/rpc-S3DGW6KV.js +3730 -0
  372. package/dist/search-CPX4PWHP.js +20 -0
  373. package/dist/search-VUF3M4N3.cjs +20 -0
  374. package/dist/{session-BSU2L5UI.cjs → session-LXKC4X5Q.cjs} +1 -1
  375. package/dist/{session-SZMRN5KG.js → session-NMMO4QOL.js} +1 -1
  376. package/dist/sessions-IYAXMK23.js +10 -0
  377. package/dist/sessions-JODKER5D.cjs +10 -0
  378. package/dist/settings-55BNW6BF.js +33 -0
  379. package/dist/settings-BKTS7OMC.cjs +33 -0
  380. package/dist/setup-IRC5HQG2.js +29 -0
  381. package/dist/setup-MMQ7TWOP.cjs +29 -0
  382. package/dist/share-6JRQECAH.cjs +17 -0
  383. package/dist/share-YM5MJKMO.js +17 -0
  384. package/dist/{skills-FYY6F2WV.cjs → skills-GGMZOVIE.cjs} +14 -11
  385. package/dist/skills-LWSOKOSH.cjs +29 -0
  386. package/dist/{skills-6OL4OSGA.js → skills-MVIZNHT4.js} +13 -10
  387. package/dist/skills-VWOMV3CR.js +29 -0
  388. package/dist/{skills-install-6CSWC24P.js → skills-install-QBA5RCV6.js} +22 -71
  389. package/dist/{skills-install-O3LZ2ETC.cjs → skills-install-VTAMCNNY.cjs} +35 -84
  390. package/dist/skills-new-GPL46YV2.js +18 -0
  391. package/dist/skills-new-L5BEZN5V.cjs +18 -0
  392. package/dist/slashCommands-FBPCIWM5.cjs +95 -0
  393. package/dist/slashCommands-FCWY5DXW.js +95 -0
  394. package/dist/status-3B5SDZPL.js +17 -0
  395. package/dist/status-TTGRF6NC.cjs +17 -0
  396. package/dist/summarizer-DGPHE5IQ.js +17 -0
  397. package/dist/summarizer-JNXLUAQG.cjs +17 -0
  398. package/dist/sync-77CXVVTK.cjs +21 -0
  399. package/dist/{sync-KWX67OUN.js → sync-7BILIQHP.js} +4 -4
  400. package/dist/sync-7OKF6636.js +21 -0
  401. package/dist/sync-EH4K5U3N.cjs +40 -0
  402. package/dist/{tasks-5FPBIFLC.js → tasks-R5MBGAQ6.js} +1 -1
  403. package/dist/{tasks-TXGKGNH6.cjs → tasks-V4WB3MFR.cjs} +1 -1
  404. package/dist/{team-5YXP3JGR.js → team-JESCHGWB.js} +1 -1
  405. package/dist/{team-IIWEZKNR.cjs → team-VQQKWGZB.cjs} +1 -1
  406. package/dist/{teammate-L6EZQ3I2.js → teammate-GZQSCIMS.js} +29 -8
  407. package/dist/{teammate-2KMKJXAM.cjs → teammate-J6PHGL23.cjs} +30 -9
  408. package/dist/theme-64BYGJ57.cjs +21 -0
  409. package/dist/theme-YJE6HEON.js +21 -0
  410. package/dist/tools-3PPTTKFV.js +9 -0
  411. package/dist/tools-THIQA7WC.cjs +9 -0
  412. package/dist/ui/questionModal.cjs +9 -6
  413. package/dist/ui/questionModal.js +8 -5
  414. package/dist/undo-PRTEGL2J.cjs +10 -0
  415. package/dist/undo-SZEHLX7X.js +10 -0
  416. package/dist/{update-TVAJMMBC.js → update-53WMKYVS.js} +1 -1
  417. package/dist/{update-Z6BIIQDC.cjs → update-NV6QRYY7.cjs} +1 -1
  418. package/dist/web-3BA2WV37.cjs +37 -0
  419. package/dist/web-6FYGBX5K.js +37 -0
  420. package/dist/workspaceSafety-MDJGHK6D.cjs +9 -0
  421. package/dist/workspaceSafety-XOUMUBVB.js +9 -0
  422. package/dist/yolo-GF2YD7ZI.js +9 -0
  423. package/dist/yolo-OGDA7HNC.cjs +9 -0
  424. package/dist/yoloMode-3DJDA75U.cjs +17 -0
  425. package/dist/yoloMode-4JOOSU26.js +17 -0
  426. package/package.json +46 -49
  427. package/dist/AgentRegistry-NQCLWABO.cjs +0 -10
  428. package/dist/CommunitySkillsCache-6QPRMTJO.js +0 -8
  429. package/dist/CommunitySkillsCache-GTQMOCCO.cjs +0 -8
  430. package/dist/GitHubRegistryFetcher-S7QFUEKV.cjs +0 -7
  431. package/dist/HookManager-Q2KYMCP4.cjs +0 -7
  432. package/dist/HookManager-TTP4Y6DC.js +0 -7
  433. package/dist/LearnAdvisor-A4Q5PPBI.js +0 -9
  434. package/dist/LearnAdvisor-GASQD7HT.cjs +0 -9
  435. package/dist/McpClientManager-RKD7C6OY.cjs +0 -8
  436. package/dist/MemoryManager-GUNLRP5S.js +0 -8
  437. package/dist/MemoryManager-TNSGKDKX.cjs +0 -8
  438. package/dist/PermissionManager-KMN53FJP.cjs +0 -11
  439. package/dist/ProviderFactory-MR5B23QJ.js +0 -9
  440. package/dist/ProviderFactory-VFGCJJX6.cjs +0 -9
  441. package/dist/SessionManager-FEUAU3ZJ.cjs +0 -10
  442. package/dist/SessionManager-IKWAK2PI.js +0 -10
  443. package/dist/SkillsRegistry-KPQFTRIT.cjs +0 -9
  444. package/dist/SkillsRegistry-XJSKPDF2.js +0 -9
  445. package/dist/SubAgent-NYH6GWQ3.js +0 -11
  446. package/dist/SubAgent-PZKBDUBA.cjs +0 -11
  447. package/dist/SyncApiClient-ZNYMT36M.cjs +0 -11
  448. package/dist/about-HHTF2YFL.js +0 -12
  449. package/dist/about-JGRVNNQC.cjs +0 -12
  450. package/dist/actionExecutor-U6IBN2TU.cjs +0 -19
  451. package/dist/actionExecutor-XT5FW3W6.js +0 -19
  452. package/dist/add-dir-247K3XRY.js +0 -10
  453. package/dist/add-dir-GS4DXKKH.cjs +0 -10
  454. package/dist/agents-R6ZEFTVR.cjs +0 -12
  455. package/dist/agents-WJPQWQF2.js +0 -12
  456. package/dist/agents-new-HKVEIBDJ.js +0 -14
  457. package/dist/agents-new-X6GTHIO6.cjs +0 -14
  458. package/dist/autoSkill-H4T6VVDA.cjs +0 -20
  459. package/dist/automode-BC6NVECO.js +0 -10
  460. package/dist/automode-WN2RSOGW.cjs +0 -10
  461. package/dist/chunk-33A755XB.cjs +0 -168
  462. package/dist/chunk-3OTU3RS3.cjs +0 -1607
  463. package/dist/chunk-4PKF7WPD.js +0 -100
  464. package/dist/chunk-ALYU6VTM.js +0 -105
  465. package/dist/chunk-AS6RTLN7.cjs +0 -203
  466. package/dist/chunk-BWN2CLLM.cjs +0 -298
  467. package/dist/chunk-HQ7YZKXE.js +0 -168
  468. package/dist/chunk-HVKOZ2VP.cjs +0 -115
  469. package/dist/chunk-J6QET7EF.cjs +0 -454
  470. package/dist/chunk-LWUJFGOZ.js +0 -115
  471. package/dist/chunk-P47WPOXN.js +0 -298
  472. package/dist/chunk-PRRCJFU3.cjs +0 -85
  473. package/dist/chunk-RO6WYEWH.js +0 -454
  474. package/dist/chunk-SYVYLZZF.cjs +0 -24
  475. package/dist/chunk-T73IDKDF.js +0 -111
  476. package/dist/chunk-YRLYSQEQ.cjs +0 -105
  477. package/dist/chunk-ZQE72E6W.cjs +0 -100
  478. package/dist/chunk-ZVY2XD6T.js +0 -1607
  479. package/dist/clear-UO4MNWZW.cjs +0 -12
  480. package/dist/clear-ZJ5NYP6E.js +0 -12
  481. package/dist/communityInstaller-PVSOFDZD.cjs +0 -19
  482. package/dist/completion-MMF2PN2H.js +0 -14
  483. package/dist/completion-UI5WKHXI.cjs +0 -14
  484. package/dist/config-E7RINK4R.cjs +0 -18
  485. package/dist/constants-6CPCJ3DY.cjs +0 -21
  486. package/dist/export-N4XIVDSL.cjs +0 -12
  487. package/dist/export-W22L4D5C.js +0 -12
  488. package/dist/feedback-DR6ADSNE.cjs +0 -15
  489. package/dist/feedback-FEEAP4QW.js +0 -15
  490. package/dist/filesystem-3SGCW2BF.js +0 -10
  491. package/dist/filesystem-MCFXJQ6R.cjs +0 -10
  492. package/dist/help-AQHGTS7P.cjs +0 -12
  493. package/dist/history-NIUDRMKA.cjs +0 -14
  494. package/dist/hooks-2EY4IPKV.js +0 -13
  495. package/dist/hooks-LJVORRIG.cjs +0 -13
  496. package/dist/i18n-ARDG2SMC.cjs +0 -33
  497. package/dist/ide-GFW6IJHD.js +0 -12
  498. package/dist/ide-N2ZNSSB3.cjs +0 -12
  499. package/dist/import-DFVN3KNZ.js +0 -10
  500. package/dist/import-ZS6DPGU5.cjs +0 -10
  501. package/dist/init-PY75HA3S.cjs +0 -10
  502. package/dist/init-QNMWLAVY.js +0 -10
  503. package/dist/language-5UE4G2BT.cjs +0 -18
  504. package/dist/language-UXMHEZUJ.js +0 -18
  505. package/dist/learn-HJ3FLNZC.cjs +0 -20
  506. package/dist/learn-MVYS3RU5.js +0 -20
  507. package/dist/localProjectPermissions-N77HA3XK.js +0 -18
  508. package/dist/localProjectPermissions-UFSMNTBJ.cjs +0 -18
  509. package/dist/login-DSE7H63A.js +0 -20
  510. package/dist/login-V3MEWPKN.cjs +0 -20
  511. package/dist/logout-BMVCLKKW.js +0 -18
  512. package/dist/logout-XEG7FHOZ.cjs +0 -18
  513. package/dist/mcp-PYUR4PHO.js +0 -18
  514. package/dist/mcp-SG6JFLGC.cjs +0 -18
  515. package/dist/memory-4ZMMEZ2Z.js +0 -10
  516. package/dist/memory-QSGMVVGH.cjs +0 -10
  517. package/dist/model-NANLBZ4Z.cjs +0 -10
  518. package/dist/model-ZXNV4AF7.js +0 -10
  519. package/dist/new-5QJY5JP2.js +0 -12
  520. package/dist/new-PMMG55UX.cjs +0 -12
  521. package/dist/permissions-LECTCJ4H.cjs +0 -13
  522. package/dist/permissions-VP5VGIBL.js +0 -13
  523. package/dist/plan-G5CEKJI4.js +0 -11
  524. package/dist/plan-QKOHE3LH.cjs +0 -11
  525. package/dist/quit-BKOOPHU5.cjs +0 -10
  526. package/dist/quit-FVFNYACP.js +0 -10
  527. package/dist/resume-EXFQSQPH.js +0 -13
  528. package/dist/resume-PP2IQM5S.cjs +0 -13
  529. package/dist/search-C56FBN67.cjs +0 -17
  530. package/dist/search-XGZDYBF4.js +0 -17
  531. package/dist/sessions-54KI3F2Q.js +0 -10
  532. package/dist/sessions-DDTSPNVW.cjs +0 -10
  533. package/dist/settings-BDO37TTO.cjs +0 -30
  534. package/dist/settings-FHRDFPLK.js +0 -30
  535. package/dist/share-IERCTBGN.cjs +0 -14
  536. package/dist/share-TGROUE6R.js +0 -14
  537. package/dist/skills-OM4IGBAA.cjs +0 -26
  538. package/dist/skills-S3GRN323.js +0 -26
  539. package/dist/skills-new-ALD2PTHN.js +0 -15
  540. package/dist/skills-new-PWLKK7GW.cjs +0 -15
  541. package/dist/slashCommands-L4ZD33LJ.js +0 -75
  542. package/dist/slashCommands-YY2VUUDF.cjs +0 -75
  543. package/dist/status-3PC5XWSS.cjs +0 -11
  544. package/dist/status-KCLVOYPD.js +0 -11
  545. package/dist/sync-6SDWG5RK.js +0 -18
  546. package/dist/sync-7JMZVEQD.cjs +0 -40
  547. package/dist/sync-WHURZL3U.cjs +0 -18
  548. package/dist/theme-BE5A4FPN.cjs +0 -18
  549. package/dist/theme-YMFCQP7J.js +0 -18
  550. package/dist/undo-KZHUUZTD.cjs +0 -10
  551. package/dist/undo-NEIEHQVX.js +0 -10
@@ -1,12 +1,74 @@
1
1
  import {
2
2
  GitIgnoreParser
3
- } from "./chunk-EZMINVLU.js";
3
+ } from "./chunk-H4D2Q2AL.js";
4
+ import {
5
+ resolveRipgrepCommand
6
+ } from "./chunk-UOQECODR.js";
4
7
 
5
8
  // src/actions/filesystem.ts
6
9
  import fs from "fs-extra";
7
10
  import path from "path";
8
11
  import { spawnSync } from "child_process";
9
12
  import { applyPatch as applyUnifiedPatch } from "diff";
13
+
14
+ // src/utils/patchValidator.ts
15
+ function validateAndFixPatch(patch) {
16
+ const lines = patch.split("\n");
17
+ const result = [];
18
+ let i = 0;
19
+ while (i < lines.length) {
20
+ const line = lines[i];
21
+ const hunkMatch = line.match(/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/);
22
+ if (hunkMatch) {
23
+ i++;
24
+ const hunkLines = [];
25
+ while (i < lines.length) {
26
+ const nextLine = lines[i];
27
+ if (nextLine.match(/^@@ /) || nextLine.match(/^(---|\+\+\+|Index:|diff\s)/) || nextLine === "===================================================================") {
28
+ break;
29
+ }
30
+ hunkLines.push(nextLine);
31
+ i++;
32
+ }
33
+ let oldCount = 0;
34
+ let newCount = 0;
35
+ for (const hunkLine of hunkLines) {
36
+ if (hunkLine.length === 0) continue;
37
+ const firstChar = hunkLine[0];
38
+ if (firstChar === "-") {
39
+ oldCount++;
40
+ } else if (firstChar === "+") {
41
+ newCount++;
42
+ } else if (firstChar === " " || firstChar === " ") {
43
+ oldCount++;
44
+ newCount++;
45
+ } else if (firstChar === "\\") {
46
+ } else {
47
+ oldCount++;
48
+ newCount++;
49
+ }
50
+ }
51
+ const oldStart = hunkMatch[1];
52
+ const newStart = hunkMatch[3];
53
+ let correctedHeader;
54
+ if (oldCount === 0) {
55
+ correctedHeader = `@@ -${parseInt(oldStart) + 1} +${newStart},${newCount} @@`;
56
+ } else if (newCount === 0) {
57
+ correctedHeader = `@@ -${oldStart},${oldCount} +${parseInt(newStart) + 1} @@`;
58
+ } else {
59
+ correctedHeader = `@@ -${oldStart},${oldCount} +${newStart},${newCount} @@`;
60
+ }
61
+ result.push(correctedHeader);
62
+ result.push(...hunkLines);
63
+ } else {
64
+ result.push(line);
65
+ i++;
66
+ }
67
+ }
68
+ return result.join("\n");
69
+ }
70
+
71
+ // src/actions/filesystem.ts
10
72
  var FILE_LIMITS = {
11
73
  /** Maximum file size for read operations (10MB) */
12
74
  MAX_READ_SIZE: 10 * 1024 * 1024,
@@ -20,16 +82,18 @@ var FILE_LIMITS = {
20
82
  MAX_UNDO_STACK: 100
21
83
  };
22
84
  var FileActionManager = class {
85
+ undoStack = [];
86
+ workspaceRoot;
87
+ additionalDirs;
88
+ // Preview mode state
89
+ previewMode = false;
90
+ pendingChanges = [];
91
+ batchId = null;
92
+ changeCounter = 0;
93
+ onBatchChange = null;
94
+ currentToolId = "";
95
+ currentToolName = "";
23
96
  constructor(workspaceRoot, additionalDirs = []) {
24
- this.undoStack = [];
25
- // Preview mode state
26
- this.previewMode = false;
27
- this.pendingChanges = [];
28
- this.batchId = null;
29
- this.changeCounter = 0;
30
- this.onBatchChange = null;
31
- this.currentToolId = "";
32
- this.currentToolName = "";
33
97
  const resolvedRoot = path.resolve(workspaceRoot);
34
98
  try {
35
99
  this.workspaceRoot = fs.realpathSync(resolvedRoot);
@@ -186,6 +250,14 @@ var FileActionManager = class {
186
250
  get root() {
187
251
  return this.workspaceRoot;
188
252
  }
253
+ setWorkspaceRoot(workspaceRoot) {
254
+ const resolvedRoot = path.resolve(workspaceRoot);
255
+ try {
256
+ this.workspaceRoot = fs.realpathSync(resolvedRoot);
257
+ } catch {
258
+ this.workspaceRoot = resolvedRoot;
259
+ }
260
+ }
189
261
  async readFile(target) {
190
262
  const filePath = this.resolvePath(target);
191
263
  const exists = await fs.pathExists(filePath);
@@ -235,7 +307,8 @@ var FileActionManager = class {
235
307
  async applyPatch(target, patch, description) {
236
308
  const filePath = this.resolvePath(target);
237
309
  const current = await this.readFileSafe(target);
238
- const updated = applyUnifiedPatch(current, patch);
310
+ const fixedPatch = validateAndFixPatch(patch);
311
+ const updated = applyUnifiedPatch(current, fixedPatch);
239
312
  if (updated === false) {
240
313
  throw new Error(`Failed to apply patch to ${target}`);
241
314
  }
@@ -261,7 +334,7 @@ var FileActionManager = class {
261
334
  }
262
335
  search(query, relativePath) {
263
336
  const searchDir = this.resolvePath(relativePath ?? ".");
264
- const rgResult = spawnSync("rg", [
337
+ const rgResult = spawnSync(resolveRipgrepCommand(), [
265
338
  "--line-number",
266
339
  "--color",
267
340
  "never",
@@ -443,18 +516,7 @@ var FileActionManager = class {
443
516
  resolvePath(target) {
444
517
  const normalized = path.isAbsolute(target) ? target : path.join(this.workspaceRoot, target);
445
518
  const resolved = path.resolve(normalized);
446
- let realPath;
447
- try {
448
- realPath = fs.realpathSync(resolved);
449
- } catch {
450
- const parentDir = path.dirname(resolved);
451
- try {
452
- const realParent = fs.realpathSync(parentDir);
453
- realPath = path.join(realParent, path.basename(resolved));
454
- } catch {
455
- realPath = resolved;
456
- }
457
- }
519
+ const realPath = this.resolveRealPathOrAncestor(resolved);
458
520
  const allAllowedRoots = [this.workspaceRoot, ...this.additionalDirs];
459
521
  for (const allowedRoot of allAllowedRoots) {
460
522
  let realRoot;
@@ -471,6 +533,21 @@ var FileActionManager = class {
471
533
  const allowedDirsList = allAllowedRoots.join(", ");
472
534
  throw new Error(`Path ${target} escapes the allowed directories: ${allowedDirsList}`);
473
535
  }
536
+ resolveRealPathOrAncestor(resolvedPath) {
537
+ let probe = resolvedPath;
538
+ while (true) {
539
+ try {
540
+ const realProbe = fs.realpathSync(probe);
541
+ return probe === resolvedPath ? realProbe : path.join(realProbe, path.relative(probe, resolvedPath));
542
+ } catch {
543
+ const parent = path.dirname(probe);
544
+ if (parent === probe) {
545
+ return resolvedPath;
546
+ }
547
+ probe = parent;
548
+ }
549
+ }
550
+ }
474
551
  walkFallback(query, baseDir) {
475
552
  const hits = [];
476
553
  const stack = [baseDir];
@@ -0,0 +1,152 @@
1
+ import {
2
+ buildChromeOpenUrl,
3
+ createBrowserHandoff,
4
+ detectExtensionProfile,
5
+ ensureNativeHostInstalled,
6
+ getManifestTarget,
7
+ hasActiveHandoff,
8
+ openChromeContinuation
9
+ } from "./chunk-ARBEHFCG.js";
10
+ import {
11
+ showModal
12
+ } from "./chunk-DLP436GI.js";
13
+ import {
14
+ saveConfig
15
+ } from "./chunk-3UT7R3XV.js";
16
+
17
+ // src/commands/chrome.ts
18
+ import chalk from "chalk";
19
+ import fs from "fs-extra";
20
+ var metadata = {
21
+ command: "/chrome",
22
+ description: "continue the current session in the Autohand Chrome extension",
23
+ implemented: true
24
+ };
25
+ async function withModalPause(ctx, fn) {
26
+ await ctx.onBeforeModal?.();
27
+ try {
28
+ return await fn();
29
+ } finally {
30
+ await ctx.onAfterModal?.();
31
+ }
32
+ }
33
+ async function chrome(ctx, args = []) {
34
+ const subcommand = args[0]?.toLowerCase();
35
+ if (subcommand === "disconnect") {
36
+ if (!ctx.config) return "Config not available.";
37
+ const chromeConfig = ctx.config.chrome ?? {};
38
+ chromeConfig.enabledByDefault = false;
39
+ ctx.config.chrome = chromeConfig;
40
+ await saveConfig(ctx.config);
41
+ return `${chalk.green("\u2713")} Browser bridge disconnected and disabled.`;
42
+ }
43
+ const currentSession = ctx.sessionManager.getCurrentSession();
44
+ const sessionId = currentSession?.metadata.sessionId;
45
+ if (!sessionId) {
46
+ return "No active session. Start a task first, then run /chrome.";
47
+ }
48
+ const extensionId = ctx.config?.chrome?.extensionId;
49
+ const nativeHostInstalled = await fs.pathExists(getManifestTarget("chrome").manifestPath);
50
+ let extensionDetected = false;
51
+ if (extensionId) {
52
+ extensionDetected = await detectExtensionProfile(extensionId) !== null;
53
+ }
54
+ const nativeHostReady = ensureNativeHostInstalled({ extensionId }).catch(() => {
55
+ });
56
+ const activeHandoff = await hasActiveHandoff();
57
+ let connectionLabel;
58
+ if (activeHandoff) {
59
+ connectionLabel = chalk.green("Handoff pending");
60
+ } else if (nativeHostInstalled && extensionDetected) {
61
+ connectionLabel = chalk.green("Extension ready");
62
+ } else if (nativeHostInstalled) {
63
+ connectionLabel = chalk.yellow("Native host installed");
64
+ } else {
65
+ connectionLabel = chalk.red("Not installed");
66
+ }
67
+ const statusLabel = nativeHostInstalled ? "Ready" : "Disabled";
68
+ const extLabel = nativeHostInstalled ? extensionDetected ? chalk.green("Installed") : chalk.yellow("Native host only") : chalk.red("Not installed");
69
+ let selected = null;
70
+ let isReshow = false;
71
+ while (true) {
72
+ const enabledByDefault = ctx.config?.chrome?.enabledByDefault ? "Yes" : "No";
73
+ const options = [
74
+ { label: "Open in Chrome", value: "open", description: "Hand off session and open browser" },
75
+ { label: "Manage permissions", value: "permissions", description: "Open extension settings page" },
76
+ { label: "Reconnect extension", value: "reconnect", description: "Reinstall native messaging host" },
77
+ { label: `Enabled by default: ${enabledByDefault}`, value: "toggle", description: "Start browser bridge with the CLI" }
78
+ ];
79
+ const title = [
80
+ chalk.yellow.bold("Autohand in Chrome (Beta)"),
81
+ "",
82
+ "Autohand in Chrome works with the extension to control your browser",
83
+ "from the CLI. Navigate, fill forms, capture screenshots, and debug.",
84
+ "",
85
+ `Connection: ${connectionLabel}`,
86
+ `Status: ${statusLabel}`,
87
+ `Extension: ${extLabel}`,
88
+ "",
89
+ `Usage: ${chalk.yellow("autohand --chrome")} or ${chalk.yellow("autohand --no-chrome")}`,
90
+ "",
91
+ "Site-level permissions are inherited from the Chrome extension.",
92
+ `Learn more: ${chalk.gray("https://autohand.ai/docs/chrome")}`
93
+ ].join("\n");
94
+ if (isReshow) {
95
+ const titleLines = title.split("\n").length;
96
+ const optionLines = options.length * 2;
97
+ const chrome2 = 1;
98
+ const totalLines = titleLines + optionLines + chrome2 + 3;
99
+ process.stdout.write(`\x1B[${totalLines}A\x1B[0J`);
100
+ }
101
+ selected = await withModalPause(
102
+ ctx,
103
+ () => showModal({ title, options, initialIndex: isReshow ? 3 : void 0 })
104
+ );
105
+ if (!selected) return null;
106
+ if (selected.value === "toggle" && ctx.config) {
107
+ const chromeConfig = ctx.config.chrome ?? {};
108
+ chromeConfig.enabledByDefault = !chromeConfig.enabledByDefault;
109
+ ctx.config.chrome = chromeConfig;
110
+ await saveConfig(ctx.config);
111
+ isReshow = true;
112
+ continue;
113
+ }
114
+ break;
115
+ }
116
+ switch (selected.value) {
117
+ case "open": {
118
+ await nativeHostReady;
119
+ await createBrowserHandoff({
120
+ sessionId,
121
+ workspaceRoot: ctx.workspaceRoot,
122
+ extensionId,
123
+ installUrl: ctx.config?.chrome?.installUrl
124
+ });
125
+ await openChromeContinuation(
126
+ buildChromeOpenUrl({ installUrl: ctx.config?.chrome?.installUrl }),
127
+ ctx.config?.chrome?.browser ?? "auto",
128
+ { userDataDir: ctx.config?.chrome?.userDataDir, profileDirectory: ctx.config?.chrome?.profileDirectory }
129
+ );
130
+ return `${chalk.green("\u2713")} Opened Chrome. Side panel ${chalk.gray("(Cmd+E)")} to continue.
131
+ Session: ${chalk.gray(sessionId)}`;
132
+ }
133
+ case "permissions": {
134
+ return "Open the Chrome extension options page to manage permissions.";
135
+ }
136
+ case "reconnect": {
137
+ await nativeHostReady;
138
+ return `${chalk.green("\u2713")} Native messaging host reinstalled. Open the Chrome side panel manually if needed.`;
139
+ }
140
+ }
141
+ return null;
142
+ }
143
+
144
+ export {
145
+ metadata,
146
+ chrome
147
+ };
148
+ /**
149
+ * @license
150
+ * Copyright 2026 Autohand AI LLC
151
+ * SPDX-License-Identifier: Apache-2.0
152
+ */
@@ -1,16 +1,16 @@
1
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
2
 
3
- var _chunkTXSDBGKXcjs = require('./chunk-TXSDBGKX.cjs');
3
+ var _chunk7MU7LWF3cjs = require('./chunk-7MU7LWF3.cjs');
4
4
 
5
5
 
6
- var _chunkOLSBBZW6cjs = require('./chunk-OLSBBZW6.cjs');
6
+ var _chunkREMGR23Vcjs = require('./chunk-REMGR23V.cjs');
7
7
 
8
8
 
9
9
 
10
- var _chunkSEKD5FH3cjs = require('./chunk-SEKD5FH3.cjs');
10
+ var _chunkE26KKI46cjs = require('./chunk-E26KKI46.cjs');
11
11
 
12
12
 
13
- var _chunk7BTSG4MEcjs = require('./chunk-7BTSG4ME.cjs');
13
+ var _chunkCHI52KFRcjs = require('./chunk-CHI52KFR.cjs');
14
14
 
15
15
  // src/commands/feedback.ts
16
16
  var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsextra);
@@ -18,14 +18,14 @@ var _os = require('os'); var _os2 = _interopRequireDefault(_os);
18
18
  var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
19
19
  var metadata = {
20
20
  command: "/feedback",
21
- description: _chunk7BTSG4MEcjs.t.call(void 0, "commands.feedback.description"),
21
+ description: _chunkCHI52KFRcjs.t.call(void 0, "commands.feedback.description"),
22
22
  implemented: true
23
23
  };
24
24
  var DEFAULT_API_BASE_URL = "https://api.autohand.ai";
25
25
  var API_TIMEOUT = 1e4;
26
26
  var COOLDOWN_MAX_SUBMISSIONS = 5;
27
27
  var COOLDOWN_WINDOW_MS = 60 * 60 * 1e3;
28
- var COOLDOWN_STATE_PATH = `${_chunkSEKD5FH3cjs.AUTOHAND_PATHS.feedback}/cooldown.json`;
28
+ var COOLDOWN_STATE_PATH = `${_chunkE26KKI46cjs.AUTOHAND_PATHS.feedback}/cooldown.json`;
29
29
  async function checkCooldown() {
30
30
  try {
31
31
  if (!await _fsextra2.default.pathExists(COOLDOWN_STATE_PATH)) {
@@ -56,7 +56,7 @@ async function recordSubmission() {
56
56
  const windowStart = now - COOLDOWN_WINDOW_MS;
57
57
  state.submissions = state.submissions.filter((ts) => ts > windowStart);
58
58
  state.submissions.push(now);
59
- await _fsextra2.default.ensureDir(_chunkSEKD5FH3cjs.AUTOHAND_PATHS.feedback);
59
+ await _fsextra2.default.ensureDir(_chunkE26KKI46cjs.AUTOHAND_PATHS.feedback);
60
60
  await _fsextra2.default.writeJson(COOLDOWN_STATE_PATH, state, { spaces: 2 });
61
61
  } catch (e2) {
62
62
  }
@@ -68,18 +68,18 @@ async function feedback(_ctx) {
68
68
  console.log(_chalk2.default.gray(`Please wait ${cooldown.waitMinutes} minute${cooldown.waitMinutes === 1 ? "" : "s"} before submitting again.`));
69
69
  return null;
70
70
  }
71
- const ratingAnswer = await _chunkOLSBBZW6cjs.safePrompt.call(void 0, [
71
+ const ratingAnswer = await _chunk7MU7LWF3cjs.safePrompt.call(void 0, [
72
72
  {
73
73
  type: "select",
74
74
  name: "rating",
75
75
  message: "How would you rate your experience?",
76
76
  choices: [
77
- { name: "5", message: "5 - Excellent" },
78
- { name: "4", message: "4 - Good" },
79
- { name: "3", message: "3 - Okay" },
80
- { name: "2", message: "2 - Poor" },
81
- { name: "1", message: "1 - Very Poor" },
82
- { name: "skip", message: "s - Skip rating" }
77
+ { name: "5", message: "Excellent" },
78
+ { name: "4", message: "Good" },
79
+ { name: "3", message: "Okay" },
80
+ { name: "2", message: "Poor" },
81
+ { name: "1", message: "Very Poor" },
82
+ { name: "skip", message: "Skip rating" }
83
83
  ]
84
84
  }
85
85
  ]);
@@ -87,43 +87,83 @@ async function feedback(_ctx) {
87
87
  console.log(_chalk2.default.gray("Feedback discarded."));
88
88
  return null;
89
89
  }
90
- const textAnswer = await _chunkOLSBBZW6cjs.safePrompt.call(void 0, [
91
- {
92
- type: "input",
93
- name: "feedback",
94
- message: "What worked? What broke? (optional)"
95
- }
96
- ]);
97
- if (!textAnswer) {
98
- console.log(_chalk2.default.gray("Feedback discarded."));
90
+ if (ratingAnswer.rating === "skip") {
91
+ console.log(_chalk2.default.gray("Feedback skipped."));
99
92
  return null;
100
93
  }
101
- const npsScore = ratingAnswer.rating === "skip" ? 0 : parseInt(ratingAnswer.rating, 10);
102
- const freeformFeedback = _optionalChain([textAnswer, 'access', _ => _.feedback, 'optionalAccess', _2 => _2.trim, 'call', _3 => _3()]) || void 0;
94
+ const npsScore = parseInt(ratingAnswer.rating, 10);
95
+ let reason;
96
+ let improvement;
97
+ let recommend;
98
+ if (npsScore >= 4) {
99
+ const reasonAnswer = await _chunk7MU7LWF3cjs.safePrompt.call(void 0, [
100
+ {
101
+ type: "input",
102
+ name: "reason",
103
+ message: "What do you like most about Autohand? (optional, press Enter to skip)"
104
+ }
105
+ ]);
106
+ if (!reasonAnswer) {
107
+ console.log(_chalk2.default.gray("Feedback discarded."));
108
+ return null;
109
+ }
110
+ reason = _optionalChain([reasonAnswer, 'access', _ => _.reason, 'optionalAccess', _2 => _2.trim, 'call', _3 => _3()]) || void 0;
111
+ const recommendAnswer = await _chunk7MU7LWF3cjs.safePrompt.call(void 0, [
112
+ {
113
+ type: "select",
114
+ name: "recommend",
115
+ message: "Would you recommend Autohand to a colleague?",
116
+ choices: [
117
+ { name: "yes", message: "Yes" },
118
+ { name: "no", message: "No" }
119
+ ]
120
+ }
121
+ ]);
122
+ if (!recommendAnswer) {
123
+ console.log(_chalk2.default.gray("Feedback discarded."));
124
+ return null;
125
+ }
126
+ recommend = recommendAnswer.recommend === "yes";
127
+ } else {
128
+ const improvementAnswer = await _chunk7MU7LWF3cjs.safePrompt.call(void 0, [
129
+ {
130
+ type: "input",
131
+ name: "improvement",
132
+ message: "What could we do better? (optional, press Enter to skip)"
133
+ }
134
+ ]);
135
+ if (!improvementAnswer) {
136
+ console.log(_chalk2.default.gray("Feedback discarded."));
137
+ return null;
138
+ }
139
+ improvement = _optionalChain([improvementAnswer, 'access', _4 => _4.improvement, 'optionalAccess', _5 => _5.trim, 'call', _6 => _6()]) || void 0;
140
+ }
103
141
  const now = (/* @__PURE__ */ new Date()).toISOString();
104
142
  const runtimeError = getLastRuntimeError();
105
143
  const deviceId = await getDeviceId();
106
144
  const payload = {
107
145
  npsScore,
146
+ recommend,
147
+ reason,
148
+ improvement,
108
149
  triggerType: "manual",
109
150
  timestamp: now,
110
151
  deviceId,
111
- cliVersion: _chunkTXSDBGKXcjs.package_default.version,
152
+ cliVersion: _chunkREMGR23Vcjs.package_default.version,
112
153
  platform: process.platform,
113
154
  osVersion: _os2.default.release(),
114
155
  nodeVersion: process.version,
115
- freeformFeedback,
116
156
  env: {
117
157
  platform: `${process.platform}-${process.arch}`,
118
158
  node: process.version,
119
- bun: _optionalChain([process, 'access', _4 => _4.versions, 'optionalAccess', _5 => _5.bun]),
159
+ bun: _optionalChain([process, 'access', _7 => _7.versions, 'optionalAccess', _8 => _8.bun]),
120
160
  cwd: process.cwd(),
121
161
  shell: process.env.SHELL
122
162
  },
123
163
  runtimeError: runtimeError ? formatError(runtimeError) : null
124
164
  };
125
165
  try {
126
- const feedbackPath = _chunkSEKD5FH3cjs.AUTOHAND_FILES.feedbackLog;
166
+ const feedbackPath = _chunkE26KKI46cjs.AUTOHAND_FILES.feedbackLog;
127
167
  await _fsextra2.default.ensureFile(feedbackPath);
128
168
  await _fsextra2.default.appendFile(feedbackPath, JSON.stringify(payload) + "\n", "utf8");
129
169
  } catch (e3) {
@@ -132,7 +172,7 @@ async function feedback(_ctx) {
132
172
  const apiBaseUrl = getFeedbackApiBaseUrl(_ctx);
133
173
  const response = await sendFeedbackToApi(payload, apiBaseUrl);
134
174
  if (response.success) {
135
- console.log(_chalk2.default.green(_chunk7BTSG4MEcjs.t.call(void 0, "commands.feedback.success")));
175
+ console.log(_chalk2.default.green(_chunkCHI52KFRcjs.t.call(void 0, "commands.feedback.success")));
136
176
  } else {
137
177
  if (/rate limit/i.test(_nullishCoalesce(response.error, () => ( "")))) {
138
178
  console.log(_chalk2.default.yellow("Feedback saved locally (rate limited, will retry later)."));
@@ -153,11 +193,11 @@ async function sendFeedbackToApi(payload, apiBaseUrl) {
153
193
  const controller = new AbortController();
154
194
  const timeoutId = setTimeout(() => controller.abort(), API_TIMEOUT);
155
195
  try {
156
- const response = await fetch(`${apiBaseUrl}/v1/feedback`, {
196
+ const response = await fetch(getFeedbackSubmitUrl(apiBaseUrl), {
157
197
  method: "POST",
158
198
  headers: {
159
199
  "Content-Type": "application/json",
160
- "X-CLI-Version": _chunkTXSDBGKXcjs.package_default.version,
200
+ "X-CLI-Version": _chunkREMGR23Vcjs.package_default.version,
161
201
  "X-Device-ID": payload.deviceId
162
202
  },
163
203
  body: JSON.stringify(payload),
@@ -179,7 +219,10 @@ async function sendFeedbackToApi(payload, apiBaseUrl) {
179
219
  }
180
220
  }
181
221
  function getFeedbackApiBaseUrl(ctx) {
182
- return _optionalChain([process, 'access', _6 => _6.env, 'access', _7 => _7.AUTOHAND_API_URL, 'optionalAccess', _8 => _8.trim, 'call', _9 => _9()]) || _optionalChain([ctx, 'access', _10 => _10.config, 'optionalAccess', _11 => _11.api, 'optionalAccess', _12 => _12.baseUrl, 'optionalAccess', _13 => _13.trim, 'call', _14 => _14()]) || DEFAULT_API_BASE_URL;
222
+ return _optionalChain([process, 'access', _9 => _9.env, 'access', _10 => _10.AUTOHAND_API_URL, 'optionalAccess', _11 => _11.trim, 'call', _12 => _12()]) || _optionalChain([ctx, 'access', _13 => _13.config, 'optionalAccess', _14 => _14.api, 'optionalAccess', _15 => _15.baseUrl, 'optionalAccess', _16 => _16.trim, 'call', _17 => _17()]) || DEFAULT_API_BASE_URL;
223
+ }
224
+ function getFeedbackSubmitUrl(apiBaseUrl) {
225
+ return `${apiBaseUrl.replace(/\/+$/, "")}/v1/feedback`;
183
226
  }
184
227
  function formatFeedbackApiError(status, rawBody) {
185
228
  const body = (_nullishCoalesce(rawBody, () => ( ""))).replace(/\s+/g, " ").trim();
@@ -212,7 +255,7 @@ function truncateFeedbackError(text, max = 220) {
212
255
  return `${text.slice(0, Math.max(0, max - 1))}\u2026`;
213
256
  }
214
257
  async function getDeviceId() {
215
- const deviceIdPath = `${_chunkSEKD5FH3cjs.AUTOHAND_PATHS.feedback}/.device-id`;
258
+ const deviceIdPath = `${_chunkE26KKI46cjs.AUTOHAND_PATHS.feedback}/.device-id`;
216
259
  try {
217
260
  if (await _fsextra2.default.pathExists(deviceIdPath)) {
218
261
  return (await _fsextra2.default.readFile(deviceIdPath, "utf8")).trim();
@@ -221,7 +264,7 @@ async function getDeviceId() {
221
264
  }
222
265
  const deviceId = `anon_${Date.now().toString(36)}_${Math.random().toString(36).slice(2, 10)}`;
223
266
  try {
224
- await _fsextra2.default.ensureDir(_chunkSEKD5FH3cjs.AUTOHAND_PATHS.feedback);
267
+ await _fsextra2.default.ensureDir(_chunkE26KKI46cjs.AUTOHAND_PATHS.feedback);
225
268
  await _fsextra2.default.writeFile(deviceIdPath, deviceId);
226
269
  } catch (e6) {
227
270
  }
@@ -0,0 +1,12 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkHS4USDNDcjs = require('./chunk-HS4USDND.cjs');
5
+ require('./chunk-DA7NBAJK.cjs');
6
+ require('./chunk-YFXTE422.cjs');
7
+ require('./chunk-CHI52KFR.cjs');
8
+ require('./chunk-3HT76LNN.cjs');
9
+
10
+
11
+
12
+ exports.clearConversation = _chunkHS4USDNDcjs.clearConversation; exports.metadata = _chunkHS4USDNDcjs.metadata;
@@ -0,0 +1,12 @@
1
+ import {
2
+ clearConversation,
3
+ metadata
4
+ } from "./chunk-7HPWMALN.js";
5
+ import "./chunk-HQUSEWT4.js";
6
+ import "./chunk-ZK6HOR62.js";
7
+ import "./chunk-CBFH2J3O.js";
8
+ import "./chunk-QGM4M3NI.js";
9
+ export {
10
+ clearConversation,
11
+ metadata
12
+ };
@@ -4,12 +4,15 @@ import {
4
4
  injectGeneratedMetadata,
5
5
  injectLearnMetadata,
6
6
  installSkillWithSecurity
7
- } from "./chunk-OHUZKDGX.js";
8
- import "./chunk-YZXUDM5X.js";
9
- import "./chunk-SLQAYV3W.js";
10
- import "./chunk-EGFT4PGW.js";
11
- import "./chunk-APIXPPMT.js";
12
- import "./chunk-JSBRDJBE.js";
7
+ } from "./chunk-DMRXF5DU.js";
8
+ import "./chunk-DLP436GI.js";
9
+ import "./chunk-NMQ47RCG.js";
10
+ import "./chunk-5JFTY3VU.js";
11
+ import "./chunk-NBGOIFKP.js";
12
+ import "./chunk-JAQO6XDB.js";
13
+ import "./chunk-TWQDAUZU.js";
14
+ import "./chunk-CBFH2J3O.js";
15
+ import "./chunk-QGM4M3NI.js";
13
16
  export {
14
17
  computeProjectHash,
15
18
  fetchRegistryWithFallback,
@@ -0,0 +1,22 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+ var _chunkZHJ7JGMEcjs = require('./chunk-ZHJ7JGME.cjs');
8
+ require('./chunk-CH2J4PVE.cjs');
9
+ require('./chunk-KNTUI4TZ.cjs');
10
+ require('./chunk-TQ33WBY5.cjs');
11
+ require('./chunk-YWTIXHU6.cjs');
12
+ require('./chunk-2VHB43IX.cjs');
13
+ require('./chunk-E26KKI46.cjs');
14
+ require('./chunk-CHI52KFR.cjs');
15
+ require('./chunk-3HT76LNN.cjs');
16
+
17
+
18
+
19
+
20
+
21
+
22
+ exports.computeProjectHash = _chunkZHJ7JGMEcjs.computeProjectHash; exports.fetchRegistryWithFallback = _chunkZHJ7JGMEcjs.fetchRegistryWithFallback; exports.injectGeneratedMetadata = _chunkZHJ7JGMEcjs.injectGeneratedMetadata; exports.injectLearnMetadata = _chunkZHJ7JGMEcjs.injectLearnMetadata; exports.installSkillWithSecurity = _chunkZHJ7JGMEcjs.installSkillWithSecurity;
@@ -0,0 +1,17 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+ var _chunkAC7DZ6SKcjs = require('./chunk-AC7DZ6SK.cjs');
6
+ require('./chunk-CH2J4PVE.cjs');
7
+ require('./chunk-KNTUI4TZ.cjs');
8
+ require('./chunk-TQ33WBY5.cjs');
9
+ require('./chunk-YWTIXHU6.cjs');
10
+ require('./chunk-2VHB43IX.cjs');
11
+ require('./chunk-CHI52KFR.cjs');
12
+ require('./chunk-3HT76LNN.cjs');
13
+
14
+
15
+
16
+
17
+ exports.execute = _chunkAC7DZ6SKcjs.execute; exports.metadata = _chunkAC7DZ6SKcjs.metadata; exports.runCompletionCommand = _chunkAC7DZ6SKcjs.runCompletionCommand;
@@ -0,0 +1,17 @@
1
+ import {
2
+ execute,
3
+ metadata,
4
+ runCompletionCommand
5
+ } from "./chunk-JYKPWK5O.js";
6
+ import "./chunk-DLP436GI.js";
7
+ import "./chunk-NMQ47RCG.js";
8
+ import "./chunk-5JFTY3VU.js";
9
+ import "./chunk-NBGOIFKP.js";
10
+ import "./chunk-JAQO6XDB.js";
11
+ import "./chunk-CBFH2J3O.js";
12
+ import "./chunk-QGM4M3NI.js";
13
+ export {
14
+ execute,
15
+ metadata,
16
+ runCompletionCommand
17
+ };